用于复制演员和模型的工具,用于修改游戏“塞尔达的传奇:狂野的气息”。
botw-duplicator-tools的Python项目详细描述
安装
安装python 3.6+,然后运行pip install botw-duplicator-tools
。
文档
Actorinfo_工具
对big endian(wii u)文件使用-b
。
获取输入数据
actorinfo_tool [-b] ACTORINFO_FILE get ENTRY_NAME
(例如actorinfo_tool -b ActorInfo.product.sbyml get Armor_001_Head
)
删除条目
actorinfo_tool [-b] ACTORINFO_FILE del ENTRY_NAME
重复输入
做新演员。
actorinfo_tool [-b] ACTORINFO_FILE duplicate ENTRY_TO_DUPLICATE NEW_ENTRY_NAME
在条目中编辑变量
actorinfo_tool [-b] ACTORINFO_FILE edit ENTRY_NAME VARIABLE_NAME NEW_VALUE
actorpack_工具
对big endian(wii u)文件使用-b
。
复制instSize
用于将装甲模型置于其他装甲之上
actorinfo_tool [-b] ACTORINFO_FILE copy_instsize FROM_ENTRY_NAME TO_ENTRY_NAME
actorpack_工具
对big endian(wii u)文件使用-b
。
在包中重命名文件
actorpack_tool [-b] ACTORPACK rename_file FILE_EXTENSION NEW_NAME
(例如actorpack_tool -b Enemy_Bokoblin_Junior.sbactorpack rename_file baiprog Enemy_Haha_Lol.baiprog
)
将模型和物理从一个参与者复制到另一个参与者
< >将盔甲置于不同的现有盔甲之上。对big endian(wii u)文件使用-b
。
actorpack_tool [-b] ACTORPACK copy_model FROM_ACTORPACK
复印机
用于正确复制bfres文件(也适用于位图文件)。新bfres的名称必须与原始bfres的名称长度相同。
(简单地复制粘贴bfres/bitemico文件不会对文件进行所需的内部更改)。
bfres_duplicator OLD_FILE_PATH NEW_FILE_PATH
指南
将装甲模型(和物理模型)的副本放在另一个模型上:
这个例子将Armor_001_Head
置于Armor_050_Head
之上,而Armor_002_Lower
置于Armor_050_Lower
之上。
bfres_duplicator [-b] path/to/Armor_001.sbfres path/to/Arm050Hed.sbfres
bfres_duplicator [-b] path/to/Armor_002.sbfres path/to/Arm050Lwr.sbfres
对他们的tex1和tex2也这样做。这将为您创建新文件,以便将新模型和图标放入其中。只会加载ARM050HED的头部,ARM050LWR的下部也是如此。
actorpack_tool [-b] path/to/Armor_050_Head.sbactorpack copy_model path/to/Armor_001_Head.sbactorpack
actorpack_tool [-b] path/to/Armor_050_Lower.sbactorpack copy_model path/to/Armor_002_Lower.sbactorpack
这将把装甲兵的模型和物理参数文件移到另一个actorpack中。不要按照rstbtool的说明操作。
actorpack_tool [-b] path/to/Armor_050_Head.sbactorpack rename_file bmodellist Arm050Hed
actorpack_tool [-b] path/to/Armor_050_Lower.sbactorpack rename_file bmodellist Arm050Lwr
这将重命名ActorPack中的.bmodellist文件,以便您可以安全地编辑它们。同样,不要遵循关于rstbtool的说明。
在
Armor_050_Head.sbactorpack
内,打开ModelUser/Arm050Hed.bmodellist
,并将所有出现的Armor_001
更改为Arm050Hed
。这将更改参与者将加载的bfres文件。在
Armor_050_Lower.sbactorpack
中,打开ModelUser/Arm050Lwr.bmodellist
,并将所有出现的Armor_002
更改为Arm050Lwr
。对这些文件使用leoetlino的
rstbtool
:Actor/Pack/Armor_050_Head.bactorpack
Actor/Pack/Armor_050_Lower.bactorpack
Actor/ActorLink/Armor_050_Head.bxml
Actor/ActorLink/Armor_050_Lower.bxml
通过复制现有的一个来制作一个全新的装甲:
这个例子将使一个新的护甲头从护甲头变成999头。
actorinfo_tool [-b] path/to/ActorInfo.product.sbyml duplicate Armor_001_Head Armor_999_Head
这将在actorinfo.product.sbyml中为新演员创建一个条目,并将其注册到游戏中。bfres_duplicator [-b] path/to/Armor_001.sbfres path/to/Armor_999.sbfres
对所有3个装甲部件(包括它们的tex1和tex2)以及所有相关的.sbitemico文件执行此操作。这将为您创建新文件,以便将新模型和图标放入其中。复制并粘贴
Armor_001_Head.sbactorpack
以生成新的Armor_999_Head.sbactorpack
。actorpack_tool [-b] path/to/Armor_001_Head.sbactorpack rename_file bmodellist Armor_999_Head
这将重命名actorpack中的.bmodellist文件,以便您可以安全地编辑它。不要按照rstbtool的说明操作。在
Armor_999_Head.sbactorpack
内部,将ActorLink/Armor_001_Head.bxml
重命名为Armor_999_Head.bxml
。仍然在
Armor_999_Head.sbactorpack
中,打开ModelList/Armor_001_Head.bmodellist
,并将Armor_001
的所有出现更改为Armor_999
。这将更改参与者将加载的bfres文件。如果要编辑actorpack中的任何其他文件,请确保将它们重命名为新文件,并更改对actorlink.bxml中重命名文件的引用以匹配新名称。这是因为在botw中,同名文件不能有不同的内容,即使它们位于不同的.sbactorpack中。您可以使用
actorpack_tool
的rename_file
函数轻松完成此操作。