有一年,被困在家里,于是,小猫咪折腾起了Minecraft Mod
那一年的小猫,还很小,折腾起来时间和毛绒球,也很开心
如果命令过长无法在聊天框输入,可以在命令方块中执行,注意将命令中的@s改成@p或玩家名称,或者在这条命令的前面加上execute as @p run。
Mod系统
下载站点
我决定全买Fabric股了!!!
由于目前Forge, Fabric, LiteLoader, OptiFine, Bukkit(Server), SpigotMC/PaperMC(Server) 几乎都有一套系统,而且互相不兼容,因此我只考虑Fabric模组了。
当然,由于1.12.2版本过于经典了,所以特殊注明了一下,因为这个版本不被Fabric支持,所以需要另一套解决方案。
1.12.2版本
很多Mod会选择停留在一个版本进行支持,比如1.16.15或者1.12.2或者更早的版本。
OptiFine由于与各种模组加载器都不能及时提供兼容,而且不是开源模块,因此我只有在不支持Fabric的1.12.2上才会考虑OptiFine。
最新版中,OptiFine的替代方案
- Canvas Renderer
- Sodium (Phosphur | Starlight) Iris [Indium]
基础模组
Fabric Loader and Fabric API [client-side optional] [server-side optional]
模组加载器,没什么好说的。与Forge不兼容;目前与bukkit或者spigot服务器不兼容。
很多模组会依赖Fabric API。Fabric API相当于一个HAL一样的兼容层,让模组可以不依赖于具体游戏实现编写一部分的代码。要注意API是一个单独的.jar文件,需要额外下载并放入Mod文件夹中去。
CustomSkinLoader [client-side only]
可以加载自定义皮肤!
另一个选择是通过authlib-injector 实现外置登陆,并搭配支持这个的皮肤站使用。
比如Ely.By 和LittleSkin 。
当然还可以选择入正后去官网上传皮肤啦~
Sodium [client-side only]
Sodium is a rendering engine replacement for the Minecraft client
需要注意该模组重写了render部分的代码,因此不与OptiFine兼容,还可能影响某些模组运行。
为了与其他Fabric模组搭配使用,参见Indium。
Sodium Extra [client-side only]
Features that shouldn’t be in Sodium.
和Sodium的开发者CaffeineMC并不相同。最好和Reese’s Sodium Options搭配使用以改进Sodium的配置界面。
Reese’s Sodium Options [client-side only]
Replaces Sodium’s Options Screen with intention of improving UX.
参见Sodium Extra。
Indium [client-side only]
为Sodium提供了fabric-renderer-api支持。某些模组可能需要这个API才能使用,而如果同时要用Sodium的话就需要这个啦。
Lithium [client-side optional] [server-side optional]
Lithium is a modern, general-purpose optimization mod for Minecraft which works to improve a number of systems (game physics, mob AI, block ticking, etc) with the goal of not changing any vanilla mechanics.
Krypton WIP [client-side optional] [server-side optional]
Krypton is a Fabric mod that attempts to optimize the Minecraft networking stack.
Phosphor [client-side optional] [server-side optional]
强化原版光照引擎。
Hydrogen [client-side optional] [server-side optional]
主要在客户端方面降低内存使用,服务端效果可能较低。不要求搭配使用。
经常跟不上最新版呢。
Iris [client-side only]
Sodium TODO:
WorldEdit
TODO:
HUD
TODO:
ToroHealth Damage Indicators
默认设置里,hud对Mob的识别距离太远了,故调整为16。
默认不开启inWorld头顶HP条显示,需要调整mode为ALWAYS或者WHEN_HOLDING_WEAPON,并把inWorld和particle的distance改为32。
{
"watchForChanges": true,
"hud": {
"distance": 16,
"x": 4.0,
"y": 4.0,
"scale": 1.0,
"hideDelay": 20,
"anchorPoint": "TOP_LEFT",
"showEntity": true,
"showBar": true,
"showSkin": true,
"onlyWhenHurt": false
},
"bar": {
"damageNumberType": "LAST",
"friendColor": "#00ff00",
"friendColorSecondary": "#008000",
"foeColor": "#ff0000",
"foeColorSecondary": "#800000"
},
"inWorld": {
"mode": "ALWAYS",
"distance": 32.0,
"onlyWhenLookingAt": false,
"onlyWhenHurt": false
},
"particle": {
"show": true,
"damageColor": "#ff0000",
"healColor": "#00ff00",
"distance": 32
}
}
Carpet模组
TODO: Carpet系统是什么?是一个神奇的东西呢。
有不同的Carpet实现可选,每个的extension不知道能不能通用喵。我基于一个比较好的SkyBlock Mod然后整理了这个支持Fabric的Carpet Mod列表呢。
Fabric Carpet & Carpet Extra
本体,和一个extra包。
extra中有一些有用的设置项:
disablePlayerCollisionEXPERIMENTAL
carpet-autoCraftingTable
When enabled, all crafting tables will contain block entites making them immovable. This means that items will also be stored inside the crafting table.
SkyBlock
空岛生存模组。在世界类型中添加了空岛世界,效果比较好的样子。
TODO: 配置
MiniTweaks
Some small game mechanic changes, mainly for survival.
useful configs:
creeperBlockDamage<-NONEinfinityMendingStacking<-trueprotectionStacking<-truemobsDropNametag<-truenoRepairCost<-truequickHarvesting<-true: Right click crops with a hoe to harvest and replantremovableCurses<-true
Carpet Fixes
Fabric Carpet extension mod which attempts to fix as many vanilla minecraft bugs as possible!
This mod works for both Singleplayer & Multiplayer, although it only modifies server-side functionality! The mod does not fix any client-side bugs!
Useful rules:
beeDupeFix: Fixes bees duplicating while trying to load a beehive/beenest in unloaded chunks, EXPERIMENTALrailDuplicationFix: Fixes rails duplicatingpistonDupingFix: Disable TNT, carpet and part of rail dupersfallingBlockDuplicationFix: Fixes falling blocks duping using the end portal
Blanket client-tweaks
类似于Carpet Fixes,但是针对客户端。
Carpet Gamerules
An extension Mod for gnembon’s Carpet Mod that adds all vanilla gamerules to the carpet settings.
TODO:
Ledger
A world change logging tool for fabric.
JLine for Minecraft Dedicated Server
A server side fabric mod to enable command history, auto completion and syntax highlighting on the server console. Should have zero impact on the gameplay.
Rug Mod for Fabric
Extension Mod for gnembon’s fabric-carpet with some more features.
Further Reading
武器
必杀之剑
/give @p minecraft:netherite_sword{
display:{
Name:'{"text":"One-Hit Obliterator"}'
},
Enchantments:[
{id:"minecraft:fire_aspect",lvl:32767s},
{id:"minecraft:knockback",lvl:10s},
{id:"minecraft:looting",lvl:10s},
{id:"minecraft:mending",lvl:32767s},
{id:"minecraft:sharpness",lvl:32767s},
{id:"minecraft:sweeping",lvl:32767s},
{id:"minecraft:unbreaking",lvl:32767s},
],
Unbreakable:1b,
AttributeModifiers:[
{
AttributeName:"generic.attack_damage",
Name:"generic.attack_damage",
Amount:2147483647,
Operation:0,
UUID:[I;439,684,724,99,],
}
]
} 1
光之弓
/give @p minecraft:bow{
display:{
Name:'{"text":"Bow of Light"}'
},
Enchantments:[
{id:"minecraft:flame",lvl:32767s},
{id:"minecraft:infinity",lvl:1s},
{id:"minecraft:mending",lvl:32767s},
{id:"minecraft:power",lvl:32767s},
{id:"minecraft:punch",lvl:32767s},
{id:"minecraft:unbreaking",lvl:32767s},
],
Unbreakable:1b,
AttributeModifiers:[
{
AttributeName:"generic.attack_damage",
Name:"generic.attack_damage",
Amount:2147483647,
Operation:2,
UUID:[I;439,684,724,99,],
}
]
} 1
精准采集的镐子
/give @p minecraft:netherite_pickaxe{
display:{
Name:'{"text":"silk_touch pickaxe"}'
},
Enchantments:[
{id:"minecraft:efficiency",lvl:32767s},
{id:"minecraft:fortune",lvl:32767s},
{id:"minecraft:mending",lvl:32767s},
{id:"minecraft:silk_touch",lvl:1s},
{id:"minecraft:unbreaking",lvl:32767s},
],
Unbreakable:1b,
AttributeModifiers:[
{
AttributeName:"generic.attack_damage",
Name:"generic.attack_damage",
Amount:2147483647,
Operation:2,
UUID:[I;439,684,724,99,],
}
]
} 1
附:可用的附魔魔咒
https://minecraft.fandom.com/zh/wiki/%E9%99%84%E9%AD%94#.E9.AD.94.E5.92.92.E6.A6.82.E8.BF.B0
TODO
一些很好用的effect
/effect give @s minecraft:regeneration 1000000 255 true
/effect give @s minecraft:water_breathing 1000000 255 true
/effect give @s minecraft:conduit_power 1000000 255 true
/effect give @s minecraft:saturation 1000000 255 true
/effect give @s minecraft:dolphins_grace 1000000 255 true
/effect give @s minecraft:slow_falling 1000000 255 true
/effect give @s minecraft:hero_of_the_village 1000000 255 true
/effect give @s minecraft:resistance 1000000 255 true
/effect give @s minecraft:health_boost 1000000 4 true
/effect give @s minecraft:strength 1000000 1 true
/effect give @s minecraft:night_vision 1000000 255 true
/effect give @s minecraft:invisibility 1000000 255 true
/effect give @s minecraft:luck 1000000 255 true
/effect give @s minecraft:speed 1000000 2 true
/effect give @s minecraft:haste 1000000 2 true
提前清理掉落物
# 执行一次
/scoreboard objectives add lifetime dummy
# GC!
/kill @e[type=item,scores={lifetime=50..}]
# 间隔一定时间周期性执行
/scoreboard players add @e[type=item] lifetime 1
命令方块TNT大炮
/summon tnt ~ ~ ~ {Motion:[1d,1d,1d],Fuse:80s}