风玫瑰模组设置

创作者: IceBoxStudio
已更新:2026-05-24 08:53:43
178KB

关于此 MOD

风玫瑰模组设置功能在风玫瑰设置界面中新增了一个“模组”选项卡,适用于UE4SS模组。支持快捷键绑定。
Windrose Mod 设置功能需要模组作者主动向管理器注册其模组后,才能正常显示。因此,看不到其他模组的设置属于正常情况。如需与特定模组集成,请联系对应模组的作者,请求其添加支持。
风玫瑰模组设置界面需要模组作者主动向管理器注册,才能正常显示。因此,看不到其他模组的设置属于正常现象。如需其他模组接入本功能,请联系对应模组作者,请他们添加支持。

说明:本描述为中英双语版本,中文内容位于英文内容下方。
注意:此描述为双语。中文部分位于英文部分下方。

描述
R5 Mod 设置会在 Windrose 设置界面中为 UE4SS 模组增加一个“模组”选项卡。

功能
在主游戏设置界面中添加模组页面。
使用原生Windrose设置控件,支持开关、滑块、下拉菜单及按键绑定。
支持在右侧帮助面板中显示每个模组的描述。
支持通过nexus_id启用可选的Nexus Mods按钮。
包含R5ModSettingsExample示例模组,展示第三方模组如何注册与读取设置项。

面向模组作者
在此处编写 Lua 清单,即可为您的 UE4SS 模组注册设置:

Windrose\R5\Binaries\Win64\ue4ss\Mods\R5ModSettings\registrations\YourModName.lua

清单应返回一个类似这样的Lua表:

{
return {
}
    name = "你的模组名称",
    display = "模组名称",
    version = "1.0.0"
    nexus_id = "442"
    settings = { 设置 = {
        {
            key = "已启用",
            title = "已启用"
            description = "开启或关闭模组功能。"
            type = "toggle", 切换
            default = true,
        }, (此处原句只有一个右花括号“}”,无实际可翻译文本。请提供需要翻译的游戏文本内容。)
        {
            key = "倍率",
            title = "倍率",
            description = "控制该功能的强度。"
            类型 = "滑块",
            default = 1.0,
            min = 0.1
            最大 = 5.0
            step = 0.1
        },
        {
            key = "模式"
            标题 = "模式"
            description = "选择行为模式。"
            type = "dropdown", 类型 = "下拉菜单",
            default = "普通",
            options = {
                { value = "normal", label = "普通" }
                { value = "fast", label = "快速" }
            },
        },
        {
            key = "打开菜单键",
            title = "打开菜单键",
            description = "此模组使用的钥匙。"
            type = "按键绑定",
            default = { (此处为游戏UI或代码文本,需根据上下文具体内容翻译。当前仅提供“default = {”的结构保留,若为功能名称可译为“默认 = {” 或根据游戏类型保留英文字段。请提供括号内完整文本以完成翻译。)
                primary = "F8"
                secondary = "无",
            }
        }
    }, (根据上下文,这里可能是一个UI或数据结构中的结束符号,中文游戏本地化中可直接保留或替换为相应中文标点,如“}”或“},”;若为对白或系统文本中的片段,需结合前后内容调整。当前仅从文本形式看,最简洁自然的译法为保留原符号或省略。)
}

支持的设定类型:
切换
滑块
下拉菜单
按键绑定

如果存在 nexus_id,R5 Mod Settings 会为该模组添加一个“打开 Nexus Mods”按钮。
示例:
nexus_id = "xxx"
开启:
https://www.nexusmods.com/windrose/mods/xxx

读取设置
R5 Mod 设置在此处保存已写入的数值:

Windrose\R5\Binaries\Win64\ue4ss\Mods\R5ModSettings\saved\你的模组名称.lua

当清单被注册或加载时,缺失的保存值将自动从清单中的默认值初始化。
现有用户数值不会被覆盖。

原始值也已发布到 UE4SS 共享变量:

R5模组设置/你的模组名称/已启用
R5模组设置/你的模组名称/倍率
R5模组设置/你的模组名/模式
R5模组设置/你的模组名/打开菜单键/主要按键
R5Mod设置/你的模组名称/打开菜单键/次要

按键绑定值以主/次Unreal键名字符串形式保存,例如F8、SpaceBar、LeftShift、LeftMouseButton或ThumbMouseButton。
R5 Mod设置采用原生Windrose键位绑定组件进行显示。点击按键单元格将弹出原生键位绑定窗口。若新按键无冲突,玩家按下后即自动保存;若与原生或模组按键绑定冲突,则弹出窗口显示冲突警告并要求玩家确认。右键点击已绑定的按键单元格可清除该槽位为“无”。

为你的模组推荐的阅读模式:

local ModName = "你的模组名称"
local SAVED_PATH = "./ue4ss/Mods/R5ModSettings/saved/" .. ModName .. ".lua"
local SHARED_PREFIX = "R5模组设置/" .. 模组名称 .. "/"

local Config = {
    启用 = true,
    倍率 = 1.0
    模式 = "普通"
    OpenMenuKey = {
        primary = "F8"
        secondary = "无",
    }, ```
}

```lua local function 读取LUA表(路径) ```
    无法识别的文件格式
    if not f then return nil end
    local content = f:read("*all")
    f:close()
    如果内容为空或不存在,则返回空值
    if content:sub(1, 3) == "\239\187\191" then
        content = content:sub(4)
    结束
    local loader = load(content)
    如果未载入加载器,则返回空
    local ok, data = pcall(loader)
    返回成功且数据类型为“表”时返回数据,否则返回空
结束

```lua local function LoadConfig() 加载配置() ```
    local got_shared = false

    if ModRef then
        for key, old in pairs(Config) do
            if type(old) == "table" then
                local primary = ModRef:GetSharedVariable(SHARED_PREFIX .. key .. "/primary")
                local secondary = ModRef:GetSharedVariable(SHARED_PREFIX .. key .. "/secondary")
                如果主武器或副武器不为空,则
                    got_shared = true
                    Config[key].primary = primary 或 Config[key].primary
                    Config[key].secondary = secondary 或 Config[key].secondary
                结束
            否则
                local value = ModRef:GetSharedVariable(SHARED_PREFIX .. key)
                if value ~= nil then 若值不为空,则
                    got_shared = true
                    if type(value) == type(old) then
                        Config[key] = value
                    结束
                结束
            结束
        结束
    结束

    if not got_shared then → 若未获取共享内容
        local saved = read_lua_table(SAVED_PATH)
        如果已保存
            for key, value in pairs(saved) do
                if Config[key] ~= nil and type(value) == type(Config[key]) then 若配置项[key]不为空且值类型与配置项[key]一致,则
                    if type(value) == "table" then
                        Config[key].primary = value.primary 或 Config[key].primary
                        Config[key].secondary = value.secondary 或 Config[key].secondary
                    否则
                        Config[key] = value
                    结束
                结束
            结束
        结束
    结束
结束

完整的工作示例模组请参见 R5ModSettingsExample。

示例模组
此礼包内含R5模组设置示例。
它展示了:
正在写入注册清单...
正在生成默认存档值,
先读取共享变量,
回退至已保存的Lua文件,
正在检查运行时变更,
并添加一个“Nexus Mods”按钮。

示例在“模组”选项卡中显示为:
R5模组设置示例 - 0.1.0

兼容性
《风玫瑰》的UE4SS模组
其他UE4SS模组可将其用作共享设置菜单。
多人模式下,此功能主要用于本地界面与配置辅助。具体玩法模组仍由各自决定:房主、客户端或双方是否需要安装对应模组。

安装
请先安装 UE4SS。
将 R5ModSettings 文件夹放置在此处:
风玫瑰\R5\Binaries\Win64\ue4ss\Mods

可选示例模组:
将 R5ModSettingsExample 文件夹放入对应的 Mods 目录中。

错误报告
在模组页面留言或通过邮箱联系我: [email protected] 或 [email protected].

如果你喜欢我的模组,不妨请我喝杯咖啡吧!



简介
R5 Mod 设置 将在 Windrose 的游戏设置界面中新增一个“模组”标签页,用于统一管理 UE4SS 模组配置。

功能
在游戏原生设置菜单中新增模组页面。
使用 Windrose 原生设置控件来显示开关、滑动条、下拉菜单以及按键绑定。
支持右侧说明面板显示各选项的描述。
支持通过 nexus_id 自动添加 Nexus Mods 页面按钮。
包含 R5ModSettingsExample 示例模组,用于展示第三方模组如何注册与读取设置。

致模组作者
你的 UE4SS 模组可写入 Lua manifest 来注册设置。

Windrose\R5\Binaries\Win64\ue4ss\Mods\R5ModSettings\registrations\你的模组名称.lua

示例清单

```lua
return {
}
```
    name = "你的Mod名称",
    display = "你的模组名称",
    version = "1.0.0"
    nexus_id = "442"
    settings = { controls = "游戏设置" 或 "操作设定" // 注:根据游戏UI上下文,controls更常见译为“操作”或“控制”,但为符合中文玩家习惯,通常采用“操作设置”或直接“设置”作为标题。若为菜单标题,建议使用“设置”。 }
        {
            key = "已启用",
            title = "已启用",
            description = "开启或关闭模组功能。"
            type = "toggle",
            default = true,
        }, ```
        {
            key = "倍率",
            title = "倍率",
            description = "控制该功能的强度。"
            类型 = "滑块",
            default = 1.0
            最小 = 0.1,
            最大 = 5.0
            step = 0.1,
        }, (注意:您的输入似乎不完整,仅包含一个“},”符号,请提供完整的待翻译文本,我将为您进行专业游戏本地化翻译。)
        {
            key = "模式",
            title = "模式"
            description = "选择行为模式。"
            type = "dropdown",
            default = "普通",
            options = {
                { value = "normal", label = "普通" }
                { value = "fast", label = "快速" }
            }
        }
        {
            key = "打开菜单键",
            title = "打开菜单键"
            description = "本模组所使用的钥匙。"
            type = "keybind",
            default = { 默认 = { }
                primary = "F8"
                secondary = "无",
            }
        }, ```
    你的输入似乎不完整,无法识别源语言内容。 请在“文本:”后面提供需要翻译的具体内容。
}

目前支持:
切换
滑块
下拉菜单
键位绑定

如果填写了 nexus_id,管理器会为该模组添加“打开 Nexus Mods”按钮。
好的,请提供需要翻译的文本内容。
nexus_id = "xxx"
打开:
https://www.nexusmods.com/windrose/mods/xxx

读取配置
R5 Mod设置会将配置保存至:

Windrose\R5\Binaries\Win64\ue4ss\Mods\R5ModSettings\saved\YourModName.lua

当清单注册或加载时,缺失的配置项会自动用默认值补全。
已有玩家配置不会覆盖。

基础类型配置也会发布到 UE4SS 共享变量中:

R5模组设置/你的模组名称/已启用
倍数
R5模组设置/你的模组名称/模式
R5模组设置/你的模组名称/打开菜单键/主要
R5模组设置/你的模组名/打开菜单键/次要

键位绑定将保存为主键位/副键位两个Unreal键名字符串,例如F8、空格键、左Shift、左鼠标键或拇指鼠标键。
R5模组设置使用Windrose原生按键绑定界面显示。点击按键栏会弹出游戏原生按键绑定窗口;若新按键无冲突,玩家按下后直接保存;若与游戏原生或其他模组按键冲突,窗口会显示冲突提示并要求玩家确认。已绑定的按键栏右键单击可清空为“无”。

推荐做法:
基础类型优先读取 ModRef:GetSharedVariable("R5ModSettings/YourModName/Key")。
正在读取键位绑定:`ModRef:GetSharedVariable("R5ModSettings/YourModName/Key/primary")` 以及 `/secondary`。
如果读取失败,请重新读取 saved\YourModName.lua。

完整示例请参考随包附带的 R5ModSettingsExample。

示例模组
本包内含 R5ModSettingsExample。
它展示了:
正在写入注册清单……
生成默认存档配置、
优先读取共享变量
回退至已保存的Lua文件。
轮询运行时配置变化
以及添加Nexus Mods按钮。

它将在 Mods 标签页中显示为:
R5模组设置示例 - 0.1.0

兼容性
这是 Windrose 的 UE4SS 模组。
其他 UE4SS 模组可将其用作统一设置菜单。
在多人游戏中,此模组主要处理本地界面和配置读取。具体玩法模组是否需要房主、客户端或双方都安装,取决于该玩法模组本身。

安装方法
需要先安装UE4SS。
将 R5ModSettings 文件夹放入:
风玫瑰\R5\Binaries\Win64\ue4ss\模组

可选示例模组:
将 R5ModSettingsExample 文件夹一并放入 Mods 目录中。

Bug 反馈
在模组页面发布问题,或通过邮箱联系我们 [email protected] / [email protected] 联系我。

使用 Xmod 解锁 Windrose:风启之旅 的全部潜力 — 今天就探索这些顶级 MOD!