|
|
转自:https://www.nexusmods.com/oblivionremastered/mods/2377
用于借助UE4SS即时加载/热加载/保存配置文件的配置库。使用起来非常简单。
这是一个供MOD制作者使用的资源,并且是一些MOD的必备组件。请先安装UE4SS,然后再安装这个MOD。
安装说明
你应当已经安装了UE4SS。
将“ConfigHelper”文件夹粘贴到“../ue4ss/Mods/shared/”路径下。
你将会得到类似“../ue4ss/Mods/shared/ConfigHelper/ConfigHelper.lua”这样的文件结构。
为什么要使用这个库?
一些MOD附带配置文件,但这些文件通常是lua格式的,这意味着在你启动游戏后就无法编辑它们。
这个库主要用于在游戏内读取配置文件,我喜欢在不重启所有MOD或游戏的情况下调整数值。
MOD制作者使用说明
ConfigHelper是一个小型库,用于加载任意类型的配置文件。一旦安装,你可以从任何插件中访问配置助手。使用起来很简单。
在安装后,使用“local ConfigHelper = require("ConfigHelper")”来导入ConfigHelper。
功能:
从配置文件加载:“local MyConfig = ConfigHelper.GetConfig("ModFolderName", "ModIniName")”
保存到配置文件:“local MyConfig = ConfigHelper.SetConfig("ModFolderName", "ModIniName", "Key name", "NewValue", boolWriteIfNew)”
访问已加载的键:“local myVar = MyConfig.akey”
获取ConfigHelper的版本:“ConfigHelper.GetConfig("ModFolderName", "ModIniName")”
上述所有操作都可以在游戏运行时完成,这意味着你可以编辑配置文件并在游戏内重新加载配置!
示例:
MyMod.ini
[ThisLineWIllbeIgnored]
; This line will be ignored
-- This line will be ignored
aNumberSetting = 1.0
someString = hello
[ThisLineWIllbeIgnored]
someBool = false
-- config end
Everything here will be ignored
main.lua
local ConfigHelper = require("ConfigHelper")
local MyConfig = {}
local someFunction()
local MyModFolderName = "MyMod" -- We define our mods folder name
local MyModIni = "MyMod.ini" -- We define the config name with extension!
MyConfig = ConfigHelper.GetConfig(MyModFolderName, MyModIni)
-- We ask ConfigHelper to get our config file and pass it to MyConfig var, using MyModFolderName and MyModIni
local var1 = MyConfig.aNumberSetting
-- We read from our MyConfig var, the item we want aNumberSetting, our ini has aNumberSetting = 1.0, so var1 will also be a number with the value of 1.0
local var2 = MyConfig.someString
-- we get someString to var2 !IMPORTANT if a string is a number, it will be converted into a number, not a string!
local var3 = MyConfig.someBool -- we get someBool = false
-- You can also write data to the config file using
-- ConfigHelper.SetConfig(modName, configName, targetKey, newValue, addKeyIfNotFound)
ConfigHelper.SetConfig(MyModFolderName , MyModIni, "aNumberSetting ", 3.0, false)
end
下载地址:
|
评分
-
1
查看全部评分
-
|