ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

RimSort 基础使用指南:从初始设置到外部元数据与排序规则的完整实战手册

RimSort 基础使用指南:从初始设置到外部元数据与排序规则的完整实战手册 桌面应用游戏开发CLI【免费下载链接】RimSortRimSort is an open source mod manager for the video game RimWorld. There is support for Linux, Mac, and Windows, built from the ground up to be a reliable, community-managed alternative to RimPy Mod Manager.项目地址https://gitcode.com/gh_mirrors/ri/RimSort点击查看免费下载本文围绕 RimSort 官方《Базовое использование基础使用》文档展开系统讲解从首次启动的初始设置、主菜单栏操作、设置面板最低必需配置到外部元数据SteamDB 与规则数据库的完整知识体系并结合仓库源码app/views/menu_bar.py、app/views/settings_dialog.py、app/models/metadata/metadata_structure.py 等深入解析菜单结构、标签页组成、排序规则loadTop/loadBottom/isFramework的底层实现。读完本文你将掌握 RimSort 的基本操作流程、关键配置项的含义与作用以及如何利用外部元数据让排序与依赖解析更准确。RimSort 是一款面向 RimWorld 的开源模组管理器支持 Linux、macOS 与 Windows定位是社区维护的 RimPy Mod Manager 替代方案。本文是 RimSort 官方用户指南的“基础使用”章节覆盖从“能跑起来”到“跑得聪明”的全过程先完成最小必需配置再理解主窗口各面板最后借助外部元数据数据库让排序、依赖与兼容性警告发挥最大价值。初始设置Первоначальная настройка首次启动 RimSort 时程序默认会引导你完成两件核心事项配置游戏路径——即指向 RimWorld 的安装目录与配置目录安装 SteamCMD——用于访问 Steam Workshop 相关的下载与更新功能。此外启动时还可能询问一些关键设置的偏好例如是否启用 Steam 集成Steam Integration。除这些引导项外其余设置均采用默认值你可以随时通过设置面板Settings Panel自由调整。从源码实现看设置面板由 SettingsDialog 承载它是一个模态对话框setWindowModality(Qt.WindowModality.ApplicationModal)底部提供Reset to Defaults重置默认、Cancel取消、OK三个全局按钮其中 Reset to Defaults 可一键将全部设置恢复为出厂默认值。这意味着“初始设置”并不是一次性绑定——即便首次配置有误也可以在之后随时回到设置面板修正。主菜单栏Главное меню主菜单栏的位置取决于操作系统与桌面环境在大多数 Linux 与 Windows 环境下它是主窗口顶部的菜单条在 macOS 及部分桌面环境下它会合并进系统的全局菜单栏。菜单栏同时显示当前运行的RimSort 版本号并通过多个下拉菜单隐藏大量附加选项。从 menu_bar.py 的_create_menu_bar()可以看到完整菜单结构菜单核心功能File文件打开、追加、保存、导入、导出模组列表上传日志Mod List History快捷打开各目录设置与退出Edit编辑剪贴板操作Rule EditorIgnore JSON Editor重置警告开关重置模组颜色自动添加翻译View视图显示翻译状态Download下载下载指定 RimWorld 版本添加 Git/压缩包模组浏览 Workshop更新 Workshop/Git 模组GitHub Mods校验游戏文件Instances实例当前实例子菜单备份、恢复、克隆、创建、删除实例Textures纹理优化纹理todds删除 .dds 纹理Update更新检查更新、启动时检查更新存在RIMSORT_DISABLE_UPDATER环境变量时不显示Help帮助RimSort Wiki、GitHub合并模组列表File → Append Mod List…若要将一个已保存的模组列表与当前活动列表合并使用File → Append Mod List…快捷键CtrlAltO见 menu_bar.py。所选文件中尚未出现在活动列表里的模组会被追加到列表末尾而已存在的模组则保持不变——这是快速合并他人分享列表或备份列表的常用手段。其他高频入口File → Open Mod List…CtrlO载入模组列表文件替换当前列表File → Save Mod List As…CtrlShiftS将当前列表另存为文件File → Import从 Rentry.co、Workshop 合集、存档文件导入模组列表File → Export导出到剪贴板或 Rentry.coFile → Upload Log上传 RimSort.log、RimSort.old.log、RimWorld Player.log、Player-prev.log日志上传子菜单File → Open...快捷打开 RimSort / RimWorld 的根目录、配置目录、日志目录、本地模组目录、Steam 模组目录。需要注意的是在 macOS 上Settings…与Exit会被移入应用菜单AppName而不是 File 菜单内见 menu_bar.py这与 macOS 的全局菜单惯例保持一致。设置面板Панель настроек从主菜单File → Settings…快捷键Ctrl,即可进入设置面板。这是一个多标签页对话框每个标签页都有清晰的命名。从 settings_dialog.py 的_init_tabs()可以看到当前共有 9 个标签页Locations位置—— 游戏、配置、Steam 模组、本地模组、实例目录Game Launch游戏启动—— RimWorld 启动方式与启动参数Databases数据库—— 外部元数据数据库的管理Sorting排序—— 排序算法与相关选项DB Builder数据库构建器—— 构建 SteamDB 的工具Internal Tools内部工具External Tools外部工具Appearance外观—— 主题与界面观感Advanced高级—— 高级选项。最低必需设置Минимально необходимые настройки官方文档明确至少需要设置以下三个路径其余操作才能正常工作路径含义设置面板位置Locations 标签页RimWorld 安装目录游戏本体所在位置Game locationRimWorld 配置目录游戏的 Config 文件夹Config location本地模组目录手动放置的本地模组Local mods location除这三个路径外其余设置对基础操作而言都是可选的但某些功能可能无法工作。例如不设置 Steam 模组目录则无法管理 Workshop 下载的模组不设置实例目录则多实例功能不可用。从源码看Locations 标签页按顺序布局了 Game location、Config location、Steam mods location、Local mods location、Instance folder location 五个区域并贴心地在输入框占位符中给出了各平台的参考路径settings_dialog.py游戏位置C:\Program Files (x86)\Steam\steamapps\common\RimWorld配置位置C:\Users\UserName\AppData\LocalLow\Ludeon Studios\RimWorld by Ludeon Studios\ConfigSteam 模组位置仅 Steam 用户C:\Program Files (x86)\Steam\steamapps\workshop\content\294100本地模组位置C:\Program Files (x86)\Steam\steamapps\common\Rimworld\Mods每个区域都配有Open…打开、Choose…浏览选择、Clear…清除按钮标签页底部还提供Clear All Locations清空所有位置与Autodetect自动检测两个批量操作按钮。其中 Steam 模组位置区域还内嵌了Enable Steam client integration启用 Steam 客户端集成复选框这正是首次启动时询问的“Steam 集成”选项。主窗口操作按钮主窗口main_window.py在 Main Content 标签页底部提供 6 个核心操作按钮按顺序为Refresh刷新、Clear清空、Restore恢复、Sort排序、Save保存、Run启动游戏。这是日常操作的主战场排序前先 Refresh 获取最新模组状态Sort 应用排序规则Save 将顺序写入 RimWorld 配置Run 直接启动游戏。模组信息面板Панель информации о моде主窗口左侧是模组信息面板Mod info panel当在模组列表中选择某个模组时它会展示该模组的一般信息包括如果找到的话预览图片。这是快速查看模组简介、作者、版本、依赖关系等元数据的地方也是判断模组是否“正常”的第一入口。模组列表与警告Списки модов模组列表是主界面的核心区域。RimSort 会基于以下信息自动生成错误/警告提示标注在对应模组上依赖是否存在dependency presence—— 缺少依赖会给出警告不兼容性incompatibilities—— 存在冲突模组时提示加载顺序规则load rules—— 违反排序规则时提示潜在更新potential updates—— 检测到新版本时提示。这些警告的计算依赖于外部元数据与本地About.xml的综合解析由 metadata_controller.py 驱动最终呈现为列表中的彩色标签与状态图标。外部元数据Внешние метаданныеRimSort 的核心能力之一是使用外部元数据来增强功能。这些元数据提供了单个模组About.xml之外的信息并且被设计成高度可扩展、可分享——社区可以不断补充和传播。需要注意的是RimSort 的官方发布包中并不包含这些外部元数据。它们是可选但强烈推荐使用的数据库获取与安装方式详见《Базы данных数据库》。除了下文详述的 Steam Workshop 数据库与规则数据库外RimSort 还支持其他可选元数据库包括Use This Instead—— 为过时或不兼容的模组提供替代模组建议No Version Warning—— 标记已知版本无关的模组避免版本警告RimWorld Versions—— 供 Download RimWorld下载 RimWorld 版本功能使用。这些数据库均可在设置面板的Databases标签页中配置。Steam Workshop 元数据steamDB.jsonsteamDB.json存储的是从Steam WebAPI Steamworks API查询到的元数据其数据模式schema沿用了 Paladin 的 RimPy Mod Manager 数据库db.json定义的结构。该数据库可通过 SteamDB Builder 自行构建也可以直接下载社区维护好的成品。为什么需要它依赖元数据模组作者会在 Steam 上声明对 DLC 和其他模组的依赖。理想情况下这些信息应完整存在于正确的About.xml中但当作者没有做到时SteamDB 可以补全可用数据。本地元数据补充部分本地元数据如PackageId、gameVersions取自模组的About.xml。一份完整的数据库让用户即使尚未下载某些模组也能查出它们的依赖关系。列表导入的映射桥梁当导入的模组列表包含本地尚未拥有的模组时只有依赖 SteamDB 才能完成PackageId → PublishedFileId的映射查找。这正是“导入他人列表”场景下 SteamDB 不可替代的原因。规则元数据Community Rules Database 与 User RulesRimSort 使用两个外部规则数据库数据库文件用途userRules.json用户个人的加载顺序规则面向个人使用communityRules.json社区驱动的规则库面向公开分享两者功能完全相同且都使用与 Paladin 的 RimPy Mod Manager DatabasecommunityRules.json兼容的 schema。从 constants.py 可以看到RimSort 在数据库构建时对这些规则键采用“不递归”的保留策略确保loadBefore、loadAfter、loadTop、loadBottom等键不被错误剪枝。由于两个数据库都是纯文本文件可以直接手动修改但官方强烈推荐使用 RimSort 内置的 Редактор правил规则编辑器 来编辑其中定义的规则以避免格式错误。为什么需要规则数据库模组作者对冲突与不兼容问题的响应往往不够及时。规则数据库让社区能够定义“大多数人公认必须遵守”的额外排序规则。传统上 Paladin 通过 RimPy Community Mod Manager Database 分发这些规则而RimSort 选择了 git 作为分发途径——规则以 git 仓库形式持续更新用户可通过数据库功能一键拉取。以下规则类型由 RimSort 识别并应用loadAfter与loadBefore在…之后/之前加载这是 RimWorld 原生的排序规则通常定义在模组的About.xml中。loadAfter表示当前模组必须在指定模组之后加载loadBefore则相反。RimSort 会将其解析为依赖图deps_graph中的有向边loadAfter生成“当前模组 → 依赖模组”的边loadBefore生成“目标模组 → 当前模组”的边见 metadata_structure.py。loadBottom强制置底Tier 3最初由 Paladin 在 RimPy Community Mod Manager Database 的 community rules 中定义。带有此规则的模组在排序时会被强制放到列表最底部。RimSort 会从外部元数据中为这类模组打上标签将其视为“tier 3 mod”第 3 级模组排在所有未打此标签的模组之后。源码中rules.load_last为真时该模组即被加入tier_three_mods集合metadata_structure.py。loadTop强制置顶Tier 1与loadBottom相反强制模组排在列表最前面。RimSort 将其标记为“tier 1 mod”第 1 级模组排在所有未打此标签的模组之前。这是一个RimSort 原创的自定义规则。源码中rules.load_first为真且模组不在内置 Tier 0 集合中时该模组会被加入tier_one_mods集合metadata_structure.py而 metadata_factory.py 展示了规则文件中的loadTop/loadBottom字段如何被翻译为内部统一的load_first/load_last标志。排序算法最终依据 tier 划分决定层级顺序Tier 1 在前、普通模组居中、Tier 3 在后。isFramework框架模组WIP 实验性框架模组framework mod指扩展其他模组、但自身单独使用时不提供实际内容的模组。这也是 RimSort 原创的自定义规则目前标注为WIP进行中。典型例子包括Universum、Vanilla Expanded Framework、XMLExtensions 等。RimSort 会给带此规则的模组打上标签当这些模组**没有被其他模组依赖“被引用”**时显示一条警告——因为“没有人用它那么单独使用一个框架模组没有意义”。从实现角度看CompiledDependencyData中同时维护了正向依赖图deps_graph与反向依赖图rev_deps_graphmetadata_structure.py框架模组的“被引用”检查正是依托反向依赖图来判断是否有其他模组指向它。规则编辑指引如需为具体模组添加自定义加载顺序规则例如强制某模组置顶/置底、声明与某模组不兼容请使用 RimSort 内置的规则编辑器该工具提供可视化界面避免手写 JSON 出错。小结RimSort 的基础使用流程可以概括为一条清晰的主线初始设置首次启动时配置游戏/配置/本地模组三个路径并按需安装 SteamCMD、决定是否启用 Steam 集成熟悉主窗口左侧模组信息面板看详情中间模组列表看警告底部工具栏完成 刷新→排序→保存→运行 的日常循环配置外部元数据在设置面板 Databases 标签页中获取steamDB.json与规则数据库让依赖解析、警告提示与排序规则发挥全部能力理解规则体系loadAfter/loadBefore是 RimWorld 原生规则loadTop/loadBottom是强制置顶/置底的层级规则Tier 1 / Tier 3isFramework用于识别框架模组并提示“无人依赖”。完成以上步骤后RimSort 就能为你提供可靠的模组排序、依赖解析与兼容性警告。更深入的数据库构建、规则编辑、排序算法细节请继续阅读数据库、SteamDB 构建器、规则编辑器与排序算法等章节。赞分享桌面应用游戏开发CLI【免费下载链接】RimSortRimSort is an open source mod manager for the video game RimWorld. There is support for Linux, Mac, and Windows, built from the ground up to be a reliable, community-managed alternative to RimPy Mod Manager.项目地址https://gitcode.com/gh_mirrors/ri/RimSort点击查看免费下载相关推荐DLSS Swapper 上手指南3步把游戏里的DLSS版本握在手里DLSS Swapper 上手指南3步把游戏里的DLSS版本握在手里 倒计时开始、帧数还稳稳停在140一进粒子密集的开场镜头却一下掉到40多画面开始掉帧、桌面应用游戏开发CLIAzerothCore WotLK 协议级 E2E 回归测试实战指南e2e 套件架构、隔离模型与用例编写AzerothCore WotLK 协议级 E2E 回归测试实战指南e2e 套件架构、隔离模型与用例编写 本指南以 e2e/README.md https:/桌面应用游戏开发CLIApache Pulsar 基于 Docker 部署集群从容器网络到元数据初始化的完整实战指南Apache Pulsar 基于 Docker 部署集群从容器网络到元数据初始化的完整实战指南 Apache Pulsar 集群由 ZooKeeper集群协消息队列后端流处理上一篇Deep-Live-Cam 实时换脸实战5 步在自己电脑上跑通 AI 人脸交换下一篇GitHub Copilot CLI 系统提示词深度解析GPT-5 mini 驱动的终端编程智能体架构与运作机制创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表