本篇教程由作者设定未经允许禁止转载。
做整合包的时候改恐怖生物的配置,发现恐怖生物的配置真的很强,所以这里写一篇教程,教大家如何将某生物设置成可以被驯服,或是改成boss级生物。(封面是我整合包里修改过的盾斗鱼哦。)
基本配置:
name: 实体名称
creatureType: 实体种类(会影响灵魂石及生物图鉴);
groups: 实体仇恨组
loadDefault: true(加载默认配置,改配置一定要关闭此选项);
enabled: true(是否启用该实体);
spawning: {
enabled: true(是否自然生成该实体);
spawners(生成条件);
disableSubspecies: false(是否禁用变种);
dimensionIds(维度id);
dimensionListType: blacklist(可以改为whitelist,这样只会在dimensionIds下填写的数字对应维度中生成);
ignoreBiome: false(生成无视群系,测试时感觉没有生效,其实也没有必要改为true,可以直接在biometag下面填写all);
biomeTags(生成群系对应标签,不填id);
spawnWeight: 生成权重
dungeonWeight: 地牢内生成权重
spawnAreaLimit: 10(生成区域限制?未确定其用途);
spawnGroupMin: 3(单次生成最小数量);
spawnGroupMax: 6(单次生成最大数量);
spawnsInLight: false(在光照下生成);
spawnsInDark: true(在黑暗下生成);
worldDayMin: -1(当游戏天数过了几时开始生成);
despawnNatural: true(自然生成);
despawnForced: false(强制生成);
experience: 5(击杀后掉落经验数);
health: 5(最小生命值,实际会随等级或变体等机制变化);
defense: 0(韧性);
armor: 0(护甲);
speed: 32(移动速度);
damage: 1(攻击伤害);
attackSpeed: 2(攻击速度);
rangedSpeed: 1(未确定);
effectDuration: 5(负面效果持续时间);
effectAmplifier: 0(负面效果叠加);
pierce: 1(护甲穿透);
sight: 24(仇恨距离);
knockbackResistance: 0(抗性);
bagSize: 5(背包大小,驯服后装上箱子的格数);
tamingReputation驯服所需款待值(一个零食一般是一百多款待值)
eggBackColor: #112200(生物蛋纹理颜色);
eggForeColor: #998800(生物蛋layer纹理颜色);
subspecies: (生物变种);
index: 1
name: scarlet(变种名称,可以自己画贴图添加新的变种);
type: uncommon(稀有度,分四个等级,详见下方变种详解);
elements(属性,一个实体可以拥有多个属性);
diets(饮食);
peaceful: false(是否可以在和平模式生成);
summonable: false(是否可以被召唤);
tameable: false(是否可以被驯服,需要搭配 tamingReputation词条使用,boss级生物不可以被款待驯服);
mountable: false(是否可骑乘,不可以骑乘的生物就算改为true也不能骑乘);
summonCost: 2(召唤消耗的灵魂力,宠物和召唤法杖共用该词条);
dungeonLevel: 2(地牢中生成时默认等级);
drops(掉落物);
item: 掉落物品(mod注册名+物品注册名);
minAmount: 1(最小数量);
maxAmount: 16(最大数量);
chance: 1(被掉落的概率);
sizeScale: 1(实体大小,如果单独设置变种大小,变种的大小会在此词条的基础上叠加);
hitboxScale: 1(碰撞箱大小,碰撞箱本身就会跟着sizeScale的值变化)。
可添加词条:
在bagsize下面可以添加 "tamingReputation"词条,配合tameable: true可以令对应生物能够成为玩家的宠物(boss级生物不可以被零食驯服,只能通过灵魂石获取)。
eggForeColor下面可以添加"boss": true, "dungeonLevel": 1,下面添加 "bossNearbyRange": 60,加上rltweaker模组可以令某实体成为boss,并显示boss血条(灵魂石驯服的boss级生物不会显示boss血条)。
变种:
变种的配置非常容易,玩家也可以通过自己的喜好添加变种。
例如我要给风猛禽添加一个变种叫:缥缈
那我要在ventoraptor.json中进行修改
"index": 3,
"name": "xiaowu",(别问为什么name是xiaowu,我测试的时候随便打上去的)
"type": "common"(这里稀有度用common是方便测试)
然后画一个贴图用材质包添加,贴图是png后缀,并且名称一定要是:实体注册名_在name后面输的英文名,例如我刚才改的就应该是ventoraptor_xiaowu。
随后打开lang文件,添加一行
subspecies.name后面的英文.name=你想要的名称。
例如:subspecies.xiaowu.name=缥缈。
准备工作完成,打开游戏,加载资源包,随后召唤几只风猛禽。
噔噔!成功(实际上中间发生了件悲痛的事,本来贴图是全粉色的,镰刀也是改了的,但是我忘保存了,只剩这个半成品了)基于Lycanites Redux材质包改的,颜值可比原来的曲面模型高多了。
稀有度
稀有度分四个等级,分别是:
uncommon–不常见(默认都是这个)
common–常见
skins–皮肤(没啥用貌似,void类属于它,但没有生物的配置里用了skin)
rare–罕见(对应祭坛boss级–例如月光地魔)
normal-基本(对应生物本身的贴图,不可以填在配置里)
不同的稀有度会带来不同数值的属性加成,rare加成最多,common没有任何加成)。
如何使特定维度生成的某实体成为特定变种
我们以蛇龙举例子,我想要蛇龙在末地生成时变成另一个变种。
"subspecies": [
{
"index": 0,
"variants": [
{
"index": 1,
"color": "golden",
"type": "uncommon"
},
{
"index": 2,
"color": "verdant",
"type": "common"
}
]
},
{
"index": 1,
"priority": 1,
"name": "void",
"modelClass": "com.lycanitesmobs.client.model.creature.ModelRemobra",
"elements": [
"void"
],
"conditions": [
{
"type": "world",
"dimensionIds": [
1
],
"dimensionListType": "whitelist"
}
],
"variants": [
{
"index": 1,
"color": "xiaowu",
"type": "uncommon"
},
{
"index": 2,
"color": "keppel",
"type": "common"
}
]
}
],
观察上面的文本,我们可以看到多出来了 "index": 1,
"priority": 1,
"name": "void",
"modelClass": "com.lycanitesmobs.client.model.creature.ModelRemobra",
"elements": [
"void"
],
"conditions": [
{
"type": "world",
"dimensionIds": [
1
],
"dimensionListType": "whitelist"
意思是,name:void(虚空种,mod内自带三种skin分区的变种,也可以在lang文件中自己添加文本)
modelclass这个就是模型了,也可以调用其他模型。
comditions以下就是固定格式,除了dimensionlds,这个是维度id,因为我是想让蛇龙在末地生成时变成特殊变种,所以填写的是1。
至于variamts下面的,就是变种类型了,这边填的是我添加的新类型和凯波种(我们这里填写了两种变体,实际上生成的有三种,void也是变体,在末地相当于normal)
纹理的命名和原命名不太一样,原纹理为remobra.png,我们命名末地的变种就要是remobra_void.png,末地的变种的变种就是remobra_void_keppel.png。
如何添加一个boss
首先安装RLTweaker2模组,然后找到你想改的生物的json文件,在bagsize或packsize下面加上 "boss": true,一行(实际上在这个范围内添加都行,但为了方便分类,所以教程内是将这行添加在bagsize下面)随后在dungeonslevel下面添加一行"bossNearbyRange": 60,"groups":下面添加一行"boss",就可以设置这是一只boss级生物了。
仇恨组:
这一栏很简单,以怪物类为例子:
"name": "monster",(仇恨组名称)
"loadDefault": false,(这个必须禁掉)
"hunt": (会对什么仇恨组敌对)
"wary":(对什么仇恨组中立)
"flee": (惧怕什么仇恨组的生物)
"ignore": (对什么仇恨组被动,默认一般都是boss)
"default"(该仇恨组的生物对待玩家的态度,这边方便理解这么说,实际上是被动,中立,敌对,此栏的优先级小与hunt,如果hunt下面有humanoid,那么该仇恨组的生物见到你了还是会捶你一顿)
生物分组
生物分组就是creatureType,每个生物分组都会有对应的零食,鞍具以及灵魂石,新添加生物分组也会自动创建对应的三样物品,生物分组影响的是驯服所用零食,骑乘所用鞍具,灵魂石种类,生物蛋样式以及图鉴分类。
如何添加生物分组
在配置文件中的creaturetypes文件夹下创建新的json文件,例如我要创建一个叫greatbeast的分组,内部应该这么写:
{
"name": "greatbeast",
"loadDefault": false,
"spawnEggName": "greatbeastspawn"
}
然后我们准备好物品的模型文件和贴图,像这样(别问我为啥巨兽类款待没画,懒):
然后将鞍具和款待命名为分组名称,这里是greatbeast,放入材质包内,鞍具放item/saddles文件夹,款待放treats文件夹,灵魂石命名soulstone_分组名,放soulstones文件夹,生物蛋命名分组名称,layer的贴图命名为分组名称_overlay,生物蛋放sapwns文件夹
随后在语言文件中添加对应文本,再将你想要添加进分组的生物的creatureType的值改为你的生物分组,完事儿!
如何修改生物模型
假如我要把阿玛尔伽巫妖的模型改为其他生物的,我就要在amalgalich.json中这么做。
"modelClass": "com.lycanitesmobs.client.model.creature.ModelAmalgalich",
这两行是生物的模型,假如我要将阿玛尔伽巫妖的模型改为阴蛇的,那么我要把ModelAmalgalich,改为ModelShade。然后画一个贴图,命名为amalgalich.png和amalgalich.eyes(带layer纹理的生物一定要添加对应的layer纹理,如阴蛇的shade_eyes纹理,要不然生物会出现紫色块附着,用对应的模型就要添加对应生物的layer纹理)
改下sizescale模型大小和hitboxscale碰撞箱大小后,进入游戏。
效果超好!(如果要使用别的mod的模型要搭配创可贴mod,或者加载对应mod)
一些注意事项:
如果生物的配置文件出问题了此生物会被直接移除,对,是移除。
如果禁用了某生物,灵魂石还是会有概率获得此生物,并且没有对应实体,等于浪费了一个灵魂石。
修改前必须讲loaddefault改为false,要不然会被默认配置覆盖。
随意的修改可能会降低游戏体验,这里引用同为恐怖生物配置教程中写的一句话:欲握良器,必承其重......