BWIKI 全站将于 9 月 3 日(全天)进行维护,期间无法编辑任何页面或发布新的评论。
模组:野树
← 模组:目录
此页面是关于野树游戏数据格式的文档。这是面向游戏开发者的高级指南。
数据格式
您可以通过编辑Data/WildTrees素材文件以创建/编辑野树。
此素材内含一个“字符串 → 数据模型”的查询,其中:
- 键名为树的类型的唯一字符串ID。原版的野树ID为 1(橡树)、2(枫树)、3(松树)、6(沙漠棕榈)、7(蘑菇树)、8(桃花心木)、9(姜岛棕榈)、10(绿雨树一)、11(绿雨树二)、12(巨型蕨菜)、13(神秘树)。
- 值为包含如下字段的数据模型所组成的列表。
字段 | 效果 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Textures | 用于此树游戏贴图的贴图集。若列出多个贴图集,则使用第一个匹配成功的贴图集。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
SeedItemId | (可选)种子物品的限定性物品ID。若忽略此字段,则不能用种子种植此树,且 SeedOnShakeChance 会被忽略。 | ||||||||||||||||
SeedPlantable | (可选)此种子是否可以被玩家种下。若否,则只能通过地图属性自动种下此树。默认为 true。 | ||||||||||||||||
GrowthChance | (可选)树在无树肥的情况下,每天生长到下一阶段的概率,取值介于 0(从不生长)到 1(每天生长)之间。默认 0.2(20% 概率)。 | ||||||||||||||||
FertilizedGrowthChance | (可选)相当于 GrowthChance,但是在有树肥的条件下。默认为 1(100% 概率)。 | ||||||||||||||||
SeedSpreadChance | (可选)树每天向周围地块散布一个种子的概率,取值介于 0(从不)到 1(总是)之间。仅用于可以散布种子的地点(例如原版中的农场)。默认为 0.15(15% 概率)。 | ||||||||||||||||
SeedOnShakeChance | (可选)树每天产出一个摇树可获得的种子的概率,取值介于 0(从不)到 1(总是)之间。默认为 0.05(5% 概率)。 | ||||||||||||||||
SeedOnChopChance | (可选)玩家砍倒树木可能掉落种子的概率,取值介于 0(从不)到 1(总是)之间。默认为0.75(75% 概率)。 | ||||||||||||||||
DropWoodOnChop | (可选)玩家砍倒树木是否掉落木材。默认为 true。 | ||||||||||||||||
DropHardwoodOnLumberChop | (可选)玩家砍倒树木是否掉落硬木,若玩家具有伐木工人职业。默认为 true。 | ||||||||||||||||
IsLeafy | (可选)摇树或砍树时是否落叶和发出沙沙声。落叶时游戏会使用树桩贴图左侧的四个树叶贴图。默认为 true。 | ||||||||||||||||
IsLeafyInWinter | (可选)IsLeafy 是否也适用于冬季。默认为 false。 | ||||||||||||||||
GrowsInWinter | (可选)树是否可以在冬天生长(依据 GrowthChance 或 FertilizedGrowthChance)。默认为 false。 | ||||||||||||||||
IsStumpDuringWinter | (可选)树在春季是否变为树桩且在春季重新生长,例如原版的树#蘑菇树。默认为 false。 | ||||||||||||||||
AllowWoodpeckers | (可选)是否可以生成啄木鸟。默认为 true。 | ||||||||||||||||
UseAlternateSpriteWhenNotShaken UseAlternateSpriteWhenSeedReady |
(可选)当玩家当天没有摇动树时(UseAlternateSpriteWhenNotShaken)或已经结了种子时(UseAlternateSpriteWhenSeedReady)是否使用不同的贴图。若其中之一为 true,则树木贴图表必须为双倍宽度,且替代贴图位于右侧。若两个自动都为 true,则使用相同的替代贴图。默认为 false。 | ||||||||||||||||
DebrisColor | (可选)砍树时的木屑颜色。可以为下列取值之一:
默认为 12 (棕色/木色)。 | ||||||||||||||||
SeedDropItems | (可选)当使用 SeedOnShakeChance 中的规则掉落种子时的掉落物,覆盖SeedItemId 字段。若此字段为空或没有匹配项,则调用 SeedItemId 字段。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
ChopItems | (可选)树被砍倒时附加的掉落物。所有匹配成功的物品都会掉落。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
ShakeItems | 树木长成后,摇动树木产出的物品。仅适用于每天第一次摇动。所有匹配成功的物品都会掉落。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
TapItems | 此树的树液采集器产出物品。若可以产出多个物品,则选取第一个可用的。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
PlantableLocationRules | (可选)决定您可以在哪里种下种子的规则,若适用。适用第一条匹配的规则。此字段可以覆盖地点检查(例如作物只能种在农场),但是无法改变内建要求,例如作物需要土壤。
此字段为包含如下字段的数据模型所组成的列表:
| ||||||||||||||||
CustomFields | 此列表项的自定义字段。 | ||||||||||||||||
GrowsMoss | 树在温暖季节是否生长苔藓。若为 true,则树木贴图表必须为三倍宽度,最右边一列为长苔藓的树木和树桩贴图。 |
生成野树
自定义树木可以按如下两种方式添加进游戏:
- 创建地点时使用地图地块生成,即使用新的 SpawnTree: wild
<tree ID>
[growth stage on location created]
[growth stage on day-update regrowth]
地块属性。此属性必须添加到 Paths 层中 paths 地块表索引 34 的地块。 - 或按通常方式给予玩家种子(例如,通过商店、信件等)。