模组:动物数据
跳到导航
跳到搜索
←目录
数据格式
您可以通过编辑Data/FarmAnimals asset添加或编辑农场动物。
这包括一个“字符串 → 数据模型”查询,其中:
- 键为农场动物类型的唯一字符串ID。
- 值为包含如下字段的数据模型。
主要信息
字段 | 效果 | ||||||
---|---|---|---|---|---|---|---|
DisplayName | 用于显示动物名称的模板字符串。 | ||||||
House | 饲养该动物的建筑的建筑物ID。动物也可以被饲养在ValidOccupantTypes字段包含相应值的建筑中。 | ||||||
Gender | (可选) 这种动物可能的性别,现在只影响购买动物后显示的文字。比如"非常好!我马上送小<名字>去[他/她]的新家。". 默认为Female。
可取的值为
|
动物商店
此字段影响动物类型在玛妮的动物商店显示的方式。若动物具有可用的 PurchasePrice数值,则将在目录中自动列出。
字段 | 效果 | ||||||||
---|---|---|---|---|---|---|---|---|---|
PurchasePrice | (若不可购买,则可选) 购买该动物价格的一半(真实价格是其两倍),或取负值代表不可购买此动物。默认为-1。 | ||||||||
ShopTexture | (若不可购买,则可选) 商店中展示的动物图标的素材名称。默认为LooseSprites/Cursors或LooseSprites/Cursors2,这基于动物在已加载数据中的位置(如果动物可以购买,则不推荐使用默认值)。 | ||||||||
ShopSourceRect | (若不可购买,则可选) ShopTexture中欲绘制的像素区域,需指定为一个包括X, Y, Width和Height字段的对象。应当32像素宽、16像素高。若未设置ShopTexture则忽略。 | ||||||||
RequiredBuilding | (可选) 购买该动物所需的农场建筑。由该字段的建筑升级而来的建筑亦可饲养此动物。默认为none。 | ||||||||
UnlockCondition | (可选) 指示农场动物是否出现在商店菜单中的游戏状态查询。默认为总是解锁。 | ||||||||
ShopDisplayName | (可选) 用作商店菜单中显示名称的模板字符串。默认为DisplayName字段。 | ||||||||
ShopDescription | (可选) 用作商店菜单中信息框内“描述”的模板字符串。默认为none。 | ||||||||
ShopMissingBuildingDescription | (可选) 若RequiredBuilding还没有建造,则使用模板字符串重写samp>ShopDescription。 默认为none。 | ||||||||
AlternatePurchaseTypes | (可选) 此动物的可能变体(例如棕色、白色、蓝色是鸡的三个变种)。此字段为包含如下字段的数据模型所组成的列表:
若列出了多个模型,则返回第一个可用的动物变体。默认为none。 |
孵化
字段 | 效果 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
EggItemIds | (可选) 能够被放入孵化器或鸵鸟孵化器以孵化此动物的物品ID。若该动物的House字段不匹配当前建筑,则自动忽略此字段。默认为none。 | ||||||||||||
IncubationTime | (可选) 孵化用时。默认9000分钟。 | ||||||||||||
IncubatorParentSheetOffset | (可选) 一个偏移量。用于设置孵化器被放入蛋后的贴图。默认为1。
原版取值为:
| ||||||||||||
BirthText | (可选) 当动物成功孵化后第一次进入农舍显示的提示信息。为模板字符串。默认为“???”。 |
生长
字段 | 效果 |
---|---|
DaysToMature | (可选) 动物成年用时。默认为1。 |
CanGetPregnant | (可选) 动物是否可生育(无关乎性别)。默认为false。 |
产出
字段 | 效果 | ||||||||
---|---|---|---|---|---|---|---|---|---|
ProduceItemIds DeluxeProduceItemIds |
(可选) 成年动物产出的物品。只有当Deluxe*匹配成功时,DeluxeProduceItemIds字段才有效。两个字段都默认为none。
此字段由包含如下字段的数据模型组成:
若指定多个产出物品,则每次随机选取一个物品(若高级产品适用,则优先产出高级产品)。 | ||||||||
DaysToProduce | (可选) 物品产出间隔的天数。设为1代表每天产出。默认为1。 | ||||||||
ProduceOnMature | (可选) 动物成年当日是否可产出此物品。默认为false。 | ||||||||
FriendshipForFasterProduce | (可选) 使DaysToProduce减一所需的最小友谊值。 | ||||||||
DeluxeProduceMinimumFriendship | (可选) 产出DeluxeProduceItemId所需的最小友谊值。默认为200。 | ||||||||
DeluxeProduceCareDivisor DeluxeProduceLuckMultiplier |
(可选) 用于修饰DeluxeProduceItemId产出的数量修饰器。基于以下公式:
if happiness > 200: happiness_modifier = happiness * 1.5 else if happiness > 100: happiness_modifier = 0 else happiness_modifier = happiness - 100 ((friendship + happiness_modifier) / DeluxeProduceCareDivisor) + (daily_luck * DeluxeProduceLuckMultiplier) 特别地:
例如,某动物友谊值为102,心情值为150,则默认概率为 参见动物产出以获得更多计算信息。 | ||||||||
HarvestType | (可选) 如何收集动物产品。可用取值为:
默认为DropOvernight. | ||||||||
HarvestTool | (可选) 收集该动物产品所用工具的ID。需预先将HarvestType设为HarvestWithTool。原版能识别的工具为Milk Pail和Shears。默认为none。 | ||||||||
CanEatGoldenCrackers | (可选) 是否可以用金色动物饼干以获取双倍输出。默认为true。 |
音频 & 贴图
字段 | effect | ||||||||
---|---|---|---|---|---|---|---|---|---|
Sound | (可选) 动物(如抚摸时)叫声的声音提示ID。默认为none。 | ||||||||
BabySound | (可选) 动物婴儿期的叫声。重写Sound字段。若不指定Sound则无效。默认为none。 | ||||||||
Texture | (可选) 动物贴图集的素材名称。默认为Animals/<ID> (例如山羊的此字段为Animals/Goat)。即使您使用了下文提及的Skins字段,也必须确保此处的素材名称有效,因为默认外观会被自动认定为一种可用的皮肤。参见贴图集布局。
| ||||||||
HarvestedTexture | (可选) 若动物当前没有待收集的产品,则使用此字段的贴图以代替Texture字段(例如给绵羊剪毛后的贴图)。默认为none。 | ||||||||
BabyTexture | (可选) 动物婴儿期的贴图,重写Texture和HarvestedTexture字段。默认为none。 | ||||||||
UseFlippedRightForLeft | (可选) 当动物面向左边,是否使用它面向右边贴图的水平翻转。参见贴图集布局以获取更多信息。默认为false。 | ||||||||
SpriteWidth SpriteHeight |
(可选) 动物贴图的像素高度和宽度(不考虑游戏内的像素缩放)。默认为16。 | ||||||||
EmoteOffset | (可选) 用于动物表情的像素位移。为一个具有X和Y字段的对象。默认为0。 | ||||||||
SwimOffset | (可选) 用于游泳动物贴图的像素位移。为一个具有X和Y字段的对象。默认为"X": 0, "Y": 112。 | ||||||||
Skins | (可选) 皮肤列表。若指定该字段,则每次购入或孵化动物时都会依据Weight权重选择随机皮肤。默认的皮肤是Texture中的贴图,其权重为1。
该字段由包含如下字段的数据模型的列表组成:
| ||||||||
SleepFrame | (可选) 睡觉贴图的贴图集ID。默认为12。 | ||||||||
UseDoubleUniqueAnimationFrames | (可选) 该贴图集的“特殊”动画部分是否有2帧(默认为1帧)。参见贴图集布局以获取更多信息。默认为false。
特殊动画的贴图集索引为:
| ||||||||
ShadowWhenBaby ShadowWhenBabySwims ShadowWhenAdult ShadowWhenAdultSwims |
(可选) 在动物下方绘制的阴影。Baby字段仅适用于婴儿动物,而Adult字段仅适用于成体动物(例如,即使相应字段缺失,婴儿动物也不会自动使用来自成体动物字段的信息)。当动物游泳时,会使用Swims变体(若已设置),否则默认使用非游泳变体。
该字段由一个包含以下字段的数据模型组成:
|
玩家职业效果
字段 | 效果 |
---|---|
ProfessionForFasterProduce | (可选) 一个职业内部ID,能够将DaysToProduce减一。默认为none。 |
ProfessionForHappinessBoost | (可选) 一个职业内部ID,使和动物建立好感更容易。默认为none。 |
ProfessionForQualityBoost | (可选) 一个职业内部ID,使产生高品质产品概率更高。默认为none。 |
行为
字段 | 效果 |
---|---|
CanSwim | (可选) 农场动物被抚摸后是否可以在水里游泳。默认为false。 |
BabiesFollowAdults | (可选) 婴儿动物是否会跟随附近的成体动物。默认为false。 |
GrassEatAmount | (可选) 动物每天吃的草量。设为0会使动物无需进食。默认为2。 |
HappinessDrain | (可选) 如果当天没有抚摸动物或冬天没有加热器,所减少的心情值。默认为none。 |
SellPrice | (可选) 动物基础售价,即未经过友谊值修正的售价。默认为0。
实际售价会乘一个0.3(0心)至1.3(满心)之间的数值。 |
CustomFields | 此条目的自定义字段。 |
其他
字段 | 效果 | ||||||||
---|---|---|---|---|---|---|---|---|---|
ShowInSummitCredits | (可选) 是否在玩家达成完美后的顶峰过场动画中显示该动物。默认为false。 | ||||||||
StatToIncrementOnProduce | (可选) 当动物产出物品时,游戏统计的增量。默认为none。该字段为包含如下字段的数据模型所组成的列表:
| ||||||||
UpDownPetHitboxTileSize LeftRightPetHitboxTileSize |
(可选) 动物贴图在世界中的地块尺寸。用于抚摸动物。需形如<width> , <height> 的。当动物面朝上下时,使用UpDownPetHitboxTileSize的尺寸;当动物面朝左右时,使用LeftRightPetHitboxTileSize的尺寸。数值可以为分数(例如奶牛的宽度为1.75)。默认为1×1地块。
| ||||||||
BabyUpDownPetHitboxTileSize BabyLeftRightPetHitboxTileSize |
(可选) 当动物未成年时,这两个字段会重写UpDownPetHitboxTileSize 和LeftRightPetHitboxTileSize字段。默认为1×1地块。 |
贴图集布局
解释
每个农场动物的贴图集必须正好有4列,且至少有5-7行(依赖于数据字段)。贴图尺寸依赖于SpriteWidth和SpriteHeight字段;例如,默认的16像素贴图意味着贴图集必须正好为4 × 16 = 64像素宽。
所需的各行分别为
- 下移;
- 右移;
- 上移;
- 左移(仅当UseFlippedRightForLeft为false时可用);
- 特殊1;
- 特殊2 (仅当UseDoubleUniqueAnimationFrames为true时可用);
- 进食。
例如,默认布局(UseFlippedRightForLeft和UseDoubleUniqueAnimationFrames均为false)如下:
0(向下移动1) | 1(向下移动2) | 2(向下移动3) | 3(向下移动4) |
4(向右移动1) | 5(向右移动2) | 6(向右移动3) | 7(向右移动4) |
8(向上移动) | 9(向上移动) | 10(向上移动) | 11(向上移动) |
12(未使用) | 13(特殊下移) | 14(特殊右移) | 15(特殊上移) |
16(进食1) | 17(进食1) | 18(进食1) | 19(进食1) |
两字段均为true,则为
0(向下移动1) | 1(向下移动2) | 2(向下移动3) | 3(向下移动4) |
4(向右移动1) | 5(向右移动2) | 6(向右移动3) | 7(向右移动4) |
8(向上移动) | 9(向上移动) | 10(向上移动) | 11(向上移动) |
12(向左移动) | 13(向左移动) | 14(向左移动) | 15(向左移动) |
16(特殊下移1) | 17(特殊下移2) | 18(特殊右移1) | 19(特殊右移2) |
20(特殊上移1) | 21(特殊上移1) | 22(特殊左移1) | 23(特殊左移2) |
24(进食1) | 25(进食1) | 26(进食1) | 27(进食1) |
早于1.6原版布局
1.6版本前,按动物生活在畜棚还是鸡舍中有两个主要的贴图集布局。若您希望匹配先前版本的贴图集布局(例如升级一个早于1.6版本中的动物),则需要设置如下选项:
// 畜棚
"UseFlippedRightForLeft": true,
"UseDoubleUniqueAnimationFrames": false
// 鸡舍
"UseFlippedRightForLeft": false,
"UseDoubleUniqueAnimationFrames": true