|
|
转自:https://www.nexusmods.com/skyrimspecialedition/mods/74037
这是一款SKSE插件,可让你在游戏启动时通过配置文件向表单列表(FormList)添加表单(Form),从而减少MOD之间的冲突。它基于CommonLibSSE-NG开发,适用于《天际》SE、AE和VR版本。
如果你是普通用户而非MOD制作者,只需像安装其他SKSE插件一样安装本MOD即可。以下所有使用说明和解释均面向MOD制作者。
表单列表操纵器(FormList Manipulator)
这款SKSE插件允许你在游戏启动时通过配置文件向表单列表添加表单。
借助本MOD,你可以消除修改表单列表的MOD之间的冲突,从而无需创建兼容性补丁。这类场景包括:添加新可种植植物的MOD、添加玩具和礼物的MOD、添加新角色语音的MOD、添加战利品的MOD、添加发色和头部部件种族的MOD等。
从1.3.0版本开始,你可以使用MOD事件(Mod Events)在游戏过程中按需更新表单列表。
从1.5.0版本开始,你可以为条目添加过滤器以跳过它们。
从1.7.0版本开始,你可以使用关键词创建表单集合。
所需工具
SKSE插件地址库(Address Library for SKSE Plugins)
powerofthree的调整工具(powerofthree's Tweaks)
最新版微软Visual C++可再发行组件包(Microsoft Visual C++ Redistributable package)
配置文件
配置文件可以是任意名称,但必须是INI文件且名称以_FLM结尾。例如:Toys_FLM.ini。
或者,它们也可以是位于“FLM”目录中的任意INI文件。
配置文件按字母顺序处理:先处理Data目录下的,再处理Data\FLM目录下的。
关键字(Key):Alias(别名)、Group(组)、Collection(集合)、Filter(过滤器)、ModEvent(MOD事件)、FormList(表单列表)、Plant(植物)、BToys(男孩玩具)、GToys(女孩玩具)、HairColors(发色)、AtronachForge(元素锻造炉)、AtronachForgeSigil(带符石的元素锻造炉)、DragonbornSpiderCrafting(龙裔蜘蛛锻造)均不区分大小写。
过滤器、别名和组一旦定义,就可用于其他INI文件。
过滤器始终为可选。
基本用法
FormList = 表单列表|表单1, 表单2, *其他表单列表, #组, #集合, 等|过滤器
Remove = 表单列表|表单1, 表单2, *其他表单列表, #组, #集合, 等|过滤器
其中:
- 表单列表(FList)可以是:编辑器ID(EditorID)、表单ID~插件名(FormID~ESP)或别名(Alias)。
- 表单(Form)可以是:编辑器ID(EditorID)或表单ID~插件名(FormID~ESP)。
- 表单ID(FormID):记录ID。例如:0xD80、0x03008246、0xFE00080A或0x8246(你无需手动删除表单ID中的任何数字,插件会自动处理)。
- 插件名(ESP):带扩展名的插件名称。基础插件和DLC无需填写。例如:Unofficial Skyrim Special Edition Patch.esp(不区分大小写)。
- 编辑器ID(EditorID):表单的编辑器ID。
- 在表单列表前加星号(*)表示添加该列表的内容,而非列表本身。
- 过滤器(Filter)为可选。你可以使用已定义的过滤器,也可以当场创建新过滤器。
- 过滤器格式:条件1, 条件2, 等 或 #过滤器名称。如需了解更多过滤器格式,见下文“过滤器”部分。
若未找到表单列表,则跳过该列表。若表单已存在于表单列表中或未找到,则跳过该表单。你也可以使用过滤器在特定情况下跳过、添加或移除表单。
过滤器
Filter = 过滤器名称|条件1, 条件2, 等
其中:
条件的格式为“插件名+”(表示该插件必须启用)或“插件名-”(表示该插件必须禁用)。例如:+Vigilant.esm。
你可以使用&检查多个插件。此时,所有插件的状态(+或-)都必须匹配,条件才为真。例如:-Vigilant.esm&+Skyrim Cheat Engine.esp。
条件之间为“或”关系,即只要至少一个条件为真,过滤器就返回真。
要使用预定义的过滤器,在其名称前加#即可。
集合
Collection = 集合名称|表单类型|关键词1, -关键词2, 等|过滤器
其中:
- 表单类型(FormType):要搜索的带有关键词的表单类型。可以是(不区分大小写):Armor(护甲)、Weapon(武器)、Ammo(弹药)、MagicEffect(魔法效果)、AlchemyItem(炼金物品)、Scroll(卷轴)、Location(地点)、Ingredient(配料)、Book(书籍)、Misc(杂项)、Key(钥匙)、Soulgem(灵魂石)、Activator(激活器)、Flora(植物群)、Furniture(家具)、Race(种族)、TalkingActivator(可对话激活器)、Enchantment(附魔)、NPC(非玩家角色)、Spell(法术)。
- 关键词(Keyword):关键词的表单ID或编辑器ID。多个关键词为“与”关系,即表单必须包含所有不带减号的关键词,且不包含带减号的关键词。
- 过滤器(Filter)为可选。你可以使用已定义的过滤器,也可以当场创建新过滤器。过滤器格式:条件1, 条件2, 等 或 #过滤器名称。如需了解更多过滤器格式,见上文“过滤器”部分。
MOD事件
ModEvent = 事件名|表单列表|表单1, 表单2, *其他表单列表, #组, #集合, 等
ModEventRemove = 事件名|表单列表|表单1, 表单2, *其他表单列表, #组, #集合, 等
其中:
- 事件名(EventName):由A-Z、a-z字母组成的字符串。
- 其他参数与基本用法相同。
同一MOD事件可以有多个条目。
若事件中不包含任何有效的表单列表和表单,则跳过该事件。收到事件后,FLM会向指定的表单列表添加/移除表单,并发送一个新事件,名称为接收的事件名后加“OK”(例如:EventNameOK)(发送的字符串:EventName|已添加的表单|重复的表单,发送的值:已添加的表单)。整个过程会记录到日志中。
别名
Alias = 别名名称|表单列表1, 表单列表2, 等
别名是表单列表的集合。要使用别名,在其名称前加#即可。别名会在配置文件开头处理,与它们在文件中的位置无关。仅适用于FormList和ModEvent关键词。
组
Group = 组名称|表单1, 表单2, *其他表单列表, #集合, 等
组是表单的集合。要使用组,在其名称前加#即可。组会在配置文件开头处理(在集合和过滤器之后),与它们在文件中的位置无关。适用于FormList、ModEvent、BToys、GToys、HairColors、AtronachForge、AtronachForgeSigil关键词。组可以使用集合。
植物的简化用法
Plant = 表单1|表单2|过滤器
其中:
- 第一个表单为配料(Ingredient)/炼金物品(Alchemy Item)/激活器(Activator);
- 第二个表单为植物群(Flora)/树木(Tree)/杂项(Misc)/激活器(Activator)/容器(Container);
- 若你指定了其他类型的表单,日志中会抛出警告,但表单仍会被添加;
- 过滤器为可选。
男孩玩具的简化用法
BToys = 表单1, 表单2, *其他表单列表, #组, #集合, 等|过滤器
女孩玩具的简化用法
GToys = 表单1, 表单2, *其他表单列表, #组, #集合, 等|过滤器
发色的简化用法
HairColors = 表单1, 表单2, *其他表单列表, #组, #集合, 等|过滤器
元素锻造炉的简化用法
AtronachForge = 表单1|表单2|过滤器
其中:
- 第一个表单为配方(Recipe);
- 第二个表单为结果(Result);
- 过滤器为可选。
带符石的元素锻造炉的简化用法
AtronachForgeSigil = 表单1|表单2|过滤器
其中:
- 第一个表单为配方(Recipe);
- 第二个表单为结果(Result);
- 过滤器为可选。
龙裔蜘蛛锻造的简化用法
DragonbornSpiderCrafting = 表单1|表单2|过滤器
其中:
- 第一个表单为配方(Recipe);
- 第二个表单为结果(Result);
- 过滤器为可选。
配置文件的调试模式与验证
为减少日志输出,本插件添加了调试模式。因此,正常模式下的日志较为简洁。
若要启用调试模式以查看更多细节,请在以下任一位置创建FormListManipulator_DEBUG.ini文件:“Data”、“Data\FLM”、“Data\SKSE\Plugins”。
日志位置:“[我的文档路径]\My Games\Skyrim Special Edition\SKSE\FormListManipulator.log”。该日志包含所有已处理文件和记录的信息。
示例:
Filter = AdditionalHearthfireDollsFilter|+AdditionalHearthfireDolls.esp
Collection = Irons|Weapon|0x1E718
Collection = WarAxes|Weapon|WeapTypeWarAxe
Collection = IronWarAxes|Weapon|0x0001E718~Skyrim.esm,WeapTypeWarAxe
Collection = IronNotWarAxes|Weapon|WeapMaterialIron,-WeapTypeWarAxe
ModEvent = TestEvent|BYOHRelationshipAdoptionPlayerGiftChildMale|BYOHChefDoll
Alias = TestAlias|0x8246~HearthFires.esm,0x03008246
Group = Dolls|BYOHChefDoll,BYOHDBDoll,BYOHDragonbornDoll,BYOHJesterDoll
FormList = #TestAlias|BYOHBlacksmithDoll,BYOHDragonPriestDoll,BYOHExecutionerDoll
BToys = #Dolls
Plant = zzzCHMountainFlower01White|zzzCHTreeFloraWhiteFlowers
FormList = 0x03008246|0x807~Plantable Animals.esp,PlantableAnimalsAlbinoSpiderNest
Formlist = #TestAlias|#Dolls
Plant = ChaurusEggs|PlantableAnimalsChaurusNest
BTOYS = BYOHChefDoll,BYOHDBDoll,BYOHDragonbornDoll,BYOHJesterDoll|#AdditionalHearthfireDollsFilter
Plant = SF_BunglersBane|SF_BYOHHouseIngrdBunglersBane01|+TechnicolorAlchemy.esp
兼容性
基于CommonLibSSE-NG开发,支持SE、AE、VR版本。
支持KID。FLM会在KID完成关键词添加后开始工作。
FLM完成工作后会发送事件“FLM_SetupDone”。
对于VR版本(感谢alandtse提供支持):
需要VR Address Library 0.43.0或更高版本
需要po3tweaks VR(及其实依赖项)
需要MergeMapper(若需使用zmerge)
优势
- 易用性——使用配置文件而非插件;
- 无需为修改同一列表的MOD创建兼容性补丁;
- 即时生效且性能更佳(使用DLL而非脚本);
- 动态修改——你可以关闭游戏、修改INI文件内容,重新运行游戏后,一切都会按文件内容更新;
- 支持MOD事件,可在游戏过程中动态修改表单列表。
下载地址:
|
评分
-
1
查看全部评分
-
|