Altermatic是一个替换框架,它在运行时自动改变游戏中的资产,通过用户定制选项实现动态和高度可配置的替换!Altermatic使用JSON配置文件,它既快速又
!!!重要通知!!!
在一些问题之后,我已经暂时暂停了我的《幻兽帕鲁》mod的几乎所有公开发布,以帮助缓解上述问题。如果你想了解最新情况并获得最新版本,你可以加入我们上面链接的Discord!抱歉给您带来不便!
>>什么是Altermatic?<<
Altermatic是一个替换器框架,它在运行时自动改变游戏中的资产,通过用户定制选项实现动态和高度可配置的替换器。Altermatic使用JSON配置文件,这些文件对于修改者和用户来说都既快速又简单地制作和定制被修改的内容。Altermatic最常见的用法是用新型号替换pals,实现性别二态性,给幸运的pals独特的特征/纹理,或者只是给他们酷酷的眼镜。你也可以添加其他替换模块,如果它们没有覆盖基本游戏资产,那么你可以在Altermatic的JSON配置文件中定义它们,现在可以在游戏中看到它们!~
>>自我推销<<
乞讨捐款真的不是我喜欢的事情,但是,嘿,如果我从来不这样做,那么没有人会知道,这意味着我会有更少的资源来做这些模块!如果你有兴趣支持我的工作,并希望看到更频繁的更新,请考虑在SubscribeStar上为我的工作捐款!-https://subscribestar.adult/michaelpstanich(Altermatic是100%免费的,从不付费,但订户确实可以在Discord上获得特殊角色以及与其他一些项目相关的其他好处!)如果你不能在经济上支持,那也没关系!我感谢我得到的任何帮助,无论是给出反馈和错误报告,还是只是发送一条友好的信息!
>>注意事项<<UniPalUI集成从0.4 DEV版本开始,Altermatic现在需要UniPalUI来实现UI和输入功能。Altermatic to函数不需要UniPalUI,但是如果你想自定义设置,改变字符的网格交换,并体验其他未来的UI添加,你需要安装UniPalUI!(UniPalUI链接-
https://www.nexusmods.com/palworld/mods/1894/)
Mod正在开发中Altermatic仍处于早期开发阶段,您可能会在某些地方遇到一些奇怪的情况。如果您对添加什么或如何改进Altermatic有任何建议,请告诉我;我需要知道修改者/用户想从这个替换框架中看到什么!(留下建议和报告bug的最佳场所是我们的不和谐——破碎的聊天框——
https://discord.gg/h3vB7S4FEw)
>>潜在问题/故障点<<-目前Altermatic使用一些内部函数和捕获方法来检测产卵并尝试替换事物。然而,这些函数有可能存在我们不知道的错误,这些错误“可能”在非常特定的场景中导致不一致的结果。
>>已知的不兼容性<<-OK框架:当安装“One of a Kind”时,有时需要比Altermatic更长的时间来替换资产,这会导致纹理/模型损坏或更改恢复。建议将您的OK框架替换程序转换为Altermatic,然后卸载OK框架以防止冲突。(通过JSON配置进行转换很容易,不需要任何重新打包)
-骷髅替换者:一些mod可能会用与基础游戏不兼容的骷髅资产替换整个骷髅资产。在这些罕见的情况下(没有人应该更换完整的骨架,只有添加骨头),它可能会破坏动画!这是因为当用不兼容的骨架替换完整的骨架时,他们还需要替换动画资产,但是Altermatic无法替换动画。建议避免这些替代品,因为它们对游戏版本不安全,可能会破坏内部游戏系统。
-多个“默认”替换器:Altermatic无法更改资产文件路径,这意味着具有相同文件路径的资产自然会相互覆盖。这并不是真的与Altermatic不兼容,只是虚幻引擎5的工作方式。在这些替换程序在文件路径中冲突的情况下,它们需要用不冲突的文件路径重新打包。
>>功能列表<<<>游戏版安全设计-采用自定义系统设计,在游戏更新之间不太可能中断
-没有基础游戏资产被Altermatic取代,确保其保持稳定
-使用内部游戏系统来识别伙伴/NPC/资产,这意味着当新的伙伴/NPC/资产被添加时,只要Altermatic有效,它就可以取代他们!
<>JSON配置加载-易于编辑和读取替换者的JSON配置文件
-任何非默认替代品均无需重新包装
-易于与朋友/关注者分享和使用!
<>骨骼补片置换
-替换任何Pal/NPC模型(玩家替换支持将在未来版本中推出!)
-在运行时交换,因此您可以将Altermatic与默认替换器一起使用,以实现最大程度的定制!
-用“MatReplace”替换特定材质/纹理,无需创建自定义模型
-通过定义“性别”允许性别二态性
-通过将“IsRarePal”设置为“True”,用单独的网格更改幸运伙伴
-通过定义“SkinName”将游戏中的皮肤替换为您自己的皮肤
-包括一个Pal/NPC的多个网格,Altermatic将随机选择一个使用!
-用于随机选择的最佳匹配系统,该系统考虑了各种要求,以找到要使用的最佳替代品
-设置所需和首选特征,以便具有特征的朋友可以通过“ReqTrait”和“PrefTrait”拥有独特的视觉效果
-动态应用变形目标,以允许使用“变形目标”的每次交换进一步变化!
–Project Sugar Cake(SCake)集成,可扩展性别支持、唤醒变形支持和性能节省!
<>使用UniPalUI的游戏内UI和键绑定-按“Shift+O”重新滚动查看角色的SkelMeshSwap(计划实现完整的UI)
(计划推出更多替换功能!)
>>给改装者的建议<<Altermatic没有任何硬编码的方面或路径!这意味着Altermatic可以从JSON中定义的任何路径获取模型,这包括基本游戏和修改的资产!为了获得最佳体验,在为Altermatic制作替换包时,将您的网格分成“mods/yourpackname/”,这样它们就不会与其他替换包冲突。如果你想做一个OK兼容的替代品,你仍然可以把它们分成各自的文件夹,在OK Framework DT中定义参数,然后在下载的同时配置一个Altermatic JSON配置文件。这样,用户可以将该包与OK框架或Altermatic一起使用!(另外,请打包带或不带IO Store的版本,以便Steam和Xbox/Gamepass玩家都可以享受您的包!)
>>如何安装Altermatic<<
-下载Altermatic和UniPalUI,然后解压存档并从您的平台的文件夹内,复制'LogicMods'和'~mods'文件夹到“[《幻兽帕鲁》安装]/Pal/Content/Paks”
-在“~mods”文件夹中,输入“SwapJSON”文件夹并运行“__Create_Load_List__.bat”文件以自动填充加载列表(您需要在任何时候安装新的altermatic.json文件)
[+如果.bat文件无法运行或显示“拒绝访问”,您可以尝试将整个SwapJSON文件夹移动到桌面,运行.bat文件,然后将其放回桌面。记住检查它是否真的用.json名称填充了_LoadList.json。如果仍然失败,您只需在.json文件名中输入您手动安装到_LoadList.json中的每个替代JSON配置的JSON文件名,以JSON格式(例如“MeshReplace1”、“MeshReplace2”、“”、“”等,使用https://jsoneditoronline.org/帮助格式化)。]
-安装正确版本的UE4SS(最新版本与更新的《幻兽帕鲁》)-https://github.com/UE4SS-RE/RE-UE4SS(注意:稳定版本3.0.1似乎已停止工作,您将需要使用最新的实验版本,直到新的稳定版本可用-
https://github.com/UE4SS-RE/RE-UE4SS/releases/tag/experimental-latest)
[+确保在UE4SS安装中,在“mods”文件夹中,打开“mod.txt”并确保“BPModLoaderMod”设置为1]
[+如果您的游戏在安装UE4SS后开始崩溃,请打开UE4SS安装中的UE4SS-settings.ini文件并将“bUseObjectArrayCache”设置为false]
[可选的,有点]
-要使Altermatic执行任何操作,您需要安装替换包及其关联的.json配置文件或创建您自己的JSON配置。
-每次安装新的JSON配置时,请记住运行“__Create_Load_List__.bat”文件!(如果.bat文件无法运行,您可以在_LoadList.json文件中手动输入要在游戏中加载的动画的.json文件名)
>>如何制作JSON配置<<在国防部的档案中是“altermatic-metadata.txt”文件,它定义了Altermatic可用的不同参数,JSON模板可以在“JSON_Templates”文件夹中找到。您可以使用这些来更好地了解Altermatic的能力以及如何实现您的梦想替代品!
让我们设置一个非常简单的例子,让我们用游戏中的眼镜皮肤替换所有的Cattiva(创造性地命名为Skin001 X.x)
首先,创建一个新的json文件,我们将其命名为“AllGlassesCattiva.json”(您可以创建一个空的。txt/text文件,只需更改文件扩展名)。创建后,在任何文本编辑器中打开它,我们将输入以下内容...(以“{”开头)
{
"PackName":"示例眼镜猫替换器",
“SkelMeshSwap”:[
{
“性别”:“男”
},
{
"CharacterID":"PinkCat",
"SkelMeshPath":"/Game/Pal/Model/Character/Monster/PinkCat_Skin001/SK_PinkCat_Skin001",
“性别”:“女”
}
]
}
在这个JSON中,我们为Pal Cattiva(内部称为“PinkCat”)配置了2个网格替换器。
>PackName:一个可选参数,帮助人们了解json是什么,并将其引入UI实现。
>SkelMeshSwap:告诉Altermatic以下条目数组是骨骼网格(Pal/NPC模型)的替代品
>CharacterID:要替换的字符的内部名称。游戏知道Cattiva是“PinkCat”,所以我们把它放在那里是为了告诉Altermatic在它看到的任何Cattiva上尝试这个替代品。(您可以在Modding wiki-https://pwmodding.wiki/docs/game-data/monster-table上查看许多内部名称,或者通过使用FModel并找到PalParametersDatatable)
>SkelMeshPath:这是我们希望替换的骨架网格体的路径,换句话说,这是模型资产所在的内部文件路径。您可以使用FModel或询问modders来找到这些路径。(对于制作包的修改者,您可以右键单击并复制引用路径并粘贴到此处,删除“/Game”之前的任何内容,并删除重复的文件名和.uasstet扩展名(如果存在))
>性别:这是我们想要替换的性别。默认情况下,内部非PAL NPC没有性别分配,所以对于人类NPC替代品,你可以使用“无”,但是对于Pal,他们有男性和女性分配。我们创建了2个条目,每个条目一个,因此Altermatic将替换两种性别。(注意:安装了SCake后,默认情况下所有NPC都有一个性别,所以仍然建议为“淘气”的替代品设置一个性别)
现在我们已经创建了JSON,我们将其放入SwapJSON文件夹,运行__Create_Load_List__.bat来快速填充_LoadList.json(LoadList告诉Altermatic要加载什么JSON文件)。然后,一旦我们加载游戏中,你会看到所有正常的Cattiva现在都被游戏中带眼镜的皮肤取代了!
有几件事需要注意,当替换网格时,确保你只定义了为那个Pal/NPC制作的网格。由于UE5的工作方式,如果你将随机网格替换到使用不同骨架的不兼容的Pals/NPC上,它将完全破坏动画,并可能破坏视觉模型、生命框、动画、人工智能等等。人类NPC几乎普遍共享相同的骨骼,因此他们可以很容易地在彼此之间交换,然而所有的伙伴都有自己独特的骨骼,除了变体,它们将共享相同的骨骼(想想恐龙和恐龙勒克斯)
>>权限/使用权限<<
这些许可和使用权适用于与Altermatic相关的所有内容,无论是由第一方还是第三方制作。所有内容必须免费提供,没有付费墙或交换要求-无付费墙、付费早期访问、订阅要求、受限访问、高级版本等。
-不适用于创建过程中使用的源文件,这些源文件不是完整和预期功能所必需的
配置/外部文件是免费提供的,对编辑或分发没有限制-每个人都被允许讨论、定制/编辑、共享、分发/再分发、重复使用任何和所有由任何mod或用户提供的配置文件
-每个人都可以引用任何mod、包或资产中的任何资产,而不会受到限制或报复
-这也适用于任何mod或用户提供的与Altermatic交互的任何模板或文件
-无论格式/扩展/方法如何,均适用
不得故意破坏或实施恶意行为-不要故意导致用户的保存中断、用户的游戏变砖、崩溃或其他恶意行为
-未经许可,不要故意导致另一个mod停止运行或覆盖其作者信息
-在没有警告的情况下,不要包含或隐藏可能有害的内容
作为建议,请在JSON配置中合理地用描述性名称、标签和注释清楚地标记您的内容,以便人们更容易启用/禁用您的包中包含的各种模型/材料/交换。还可以考虑根据内容将您的mod分成几个JSON配置,这样人们可以快速挑选要包含的内容(这也有助于管理大量数据,并有助于负载性能,因为较小的JSON加载和处理比大型JSON快得多)。由于Altermatic的工作方式,禁用游戏中的特定交换是不可行的,因此一些用户可能需要定制json文件。请记得为他人着想,鼓励他人编辑和分享配置,以帮助每个人从你的mod中获得最佳效果!
>>问答(FAQ)<<
我可以将它与其他不是为Altermatic制造的替代品一起使用吗?
是的,但是如何取决于具体的替代品。对于使用其他框架(如OK Framework)的替换程序,您需要通过为该替换程序创建一个JSON配置文件来转换到Altermatic,如果另一个框架不兼容,则删除它。对于默认替换器(不使用替换器框架的替换器),您只能安装1个,但是您可以将它与altermatic一起使用!在这些情况下,您只需避免替换特定的CharacterID/Gender组合,以防止Altermatic替换它,或者,如果您希望Altermatic的随机选择过程中的默认替换器,请使用默认网格路径(这是首选)或不将路径设置为null(如“”)创建一个JSON条目。如果你确实使用了一个默认的替换器,你将只能在每个文件路径使用一个,因为任何冲突都会相互覆盖,如果没有修改者重新打包他们的mod来支持Altermatic,我们对此无能为力。
如果我因为不想再使用替代品而移除它,会发生什么?游戏中的角色现在会被打破吗?
回答: 一点也不!Altermatic将在加载JSON配置时记录所有路径,如果保存的角色的网格不再在列表中,那么当该角色加载到游戏中时,它将重新滚动网格,就好像它从未被保存过一样。
问题: 有些人使用自定义骨架来添加物理,Altermatic会支持这一点吗?
回答: Spring Bone已经受到支持,因为您不需要更换原始骨架(布料物理也应该可以),但对于添加的骨骼,Altermatic无法更换原始骨架并确保替代品之间的兼容性。理论上,你可以为每个文件路径使用一个替换骨架(所以每个pal或NPC一个,玩家一个),只要它们根本不改变原始骨架。不幸的是,由于虚幻引擎5处理动画和验证的方式,我们不能支持在运行时替换骨架,因为每个动画都需要为每个文件路径和骨架重新定位,这对于当前的工具来说是不可行或不可能的。在引擎的后期版本中,有在运行时重新定位的功能,所以如果《幻兽帕鲁》更新他们的引擎版本,这可能是一个功能,但会比它可能的价值更复杂。
>>想做一些替代品吗?随时联系我或与我们的不和谐互动!( https://discord.gg/h3vB7S4FEw )我们是一个因创造力而繁荣的社区,非常乐意提供帮助!<<