
桌面应用游戏开发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 通过一组完全可选的外部数据库来增强排序、依赖项解析、版本警告过滤与替代推荐能力。本指南以官方用户手册《数据库》章节为主体结合仓库源码深入讲解五种外部数据库的用途、默认配置、设置面板操作方式以及如何借助 Git 集成实现数据库的下载、更新与社区协作上传帮助你最大化发挥 RimSort 的数据库价值。数据库在 RimSort 中的角色与定位RimSort 使用外部数据库来增强排序和依赖项处理等功能。这些数据库不包含在发行版中而是由社区或第三方维护的独立数据源RimSort 提供了便捷的安装和更新工具。它们完全可选——基础功能无需数据库支持即可运行但额外的数据能显著提升用户体验例如更准确的加载顺序、依赖关系提示与版本兼容性判断。所有外部数据库的配置入口统一位于文件 设置 数据库File Settings Databases。从源码结构看该设置页由 settings_dialog.py 中的_do_databases_tab构建包含五个数据库分组社区规则、Steam 创意工坊、无版本警告、使用此替代、RimWorld 版本每一组都遵循完全相同的数据源选择交互模式详见下文。统一的数据源配置模型四种来源方式每组数据库在设置面板中都提供四个单选来源与配套控件这一模式在 databases_tab_controller.py 的DatabaseSourceGroup类中被抽象为统一实现来源_SOURCE_VALUES含义激活的控件None不使用该数据库无所有子控件禁用Configured git repository通过 Git 从配置的仓库克隆仓库 URL 输入框 下载/上传按钮Configured URL通过 HTTP 下载归档包URL 输入框 下载按钮Configured file path使用本地已存在的文件本地文件路径 选择按钮界面交互逻辑如切换单选按钮后仅启用对应控件组由DatabaseSourceGroup.connect_signals/_apply_enabled_state实现其对应的五个分组实例在DatabasesTabController.__init__中注册分别绑定到Settings模型上的不同属性。五大外部数据库逐一详解社区规则数据库Community Rules Database社区规则数据库是由社区整理的 Mod 加载顺序规则合集。最佳实践是 Mod 作者在about.xml文件中添加适当的加载规则但作者可能无法及时响应社区反馈。为此RimSort 通过公开的社区驱动数据库收集带有注释的额外规则。该数据库同时兼容 RimSort 特有的加载规则例如强制排序至列表底部Force load at bottom of list。在源码中该数据库对应文件communityRules.json默认存放在应用存储目录下见 settings.py。其默认数据源为Configured URL指向 RimSort 社区维护的 Community-Rules-Database 仓库归档地址。应用场景在 rule_editor_panel.py 规则编辑器界面中会分别展示本地about.xml的loadAfter/loadBefore/incompatibilitiesWith规则与社区规则的对应列表方便对比与编辑。用户规则数据库User Rules Database用户规则数据库userRules.json是本地、用户特定的数据库用于存储用户自定义的加载顺序规则。该文件会在数据库文件夹中自动创建如不存在允许用户定义自己的 Mod 加载顺序规则并跨会话持久保存。这些规则优先于社区规则并可通过 RimSort 的规则编辑器界面进行编辑。userRules.json的实际格式可从测试数据 tests/data/dbs/userRules.json 中看到其结构包含timestamp与按 PackageId 索引的rules对象每条规则支持三类字段{ timestamp: 1715795801, rules: { test.test2: { loadAfter: { a.a: { comment: test21 load before, name: BB } }, loadBottom: { comment: It is not known., value: true } } } }其中loadBefore/loadAfter以目标 PackageId 为键值为带comment注释与name显示名称的对象loadBottom则是前述 RimSort 特有规则强制排序至列表底部的底层存储形式value: true表示启用。测试配置中用户规则文件被定位在dbs/userRules.json见 tests/conftest.py。使用此替代数据库Use This Instead Database使用此替代数据库是可选的外部数据库当检测到过时或不兼容的 Mod 时提供替代 Mod 的建议帮助用户识别更新版本或更好的替代品。该数据库的源可在设置中配置通常来自维护社区策划的 Mod 替换与更新列表的 Use This Instead 仓库。从源码看settings.py该数据库默认以Configured URL为来源下载到databases/UseThisInstead/replacements.json.gzgzip 压缩的 JSON对应设置面板中该分组专属的文件过滤器JSON Files (*.json *.json.gz)。下载完成后RimSort 会通过 use_this_instead_panel.py 的UseThisInsteadPanel以独立窗口展示为创意工坊 Mod 找到替代品的列表按替代 Mod 分组并提供订阅、取消订阅、删除等操作入口。无版本警告数据库No Version Warning Database无版本警告数据库ModIdsToFix.xml是外部数据库包含不应触发版本不匹配警告的 Mod 包 ID 列表。这对于故意不在about.xml中写入版本信息的 Mod或兼容多个游戏版本的 Mod 很有用。该数据库通过识别已知版本无关的 Mod帮助减少误报警告。其源可在设置中配置默认来自 NoVersionWarning 仓库见 settings.py。Steam 创意工坊数据库Steam Workshop DBSteam 创意工坊数据库steamDB.json主要用于提供额外的依赖项数据。这些信息通常需要通过抓取 Steam 创意工坊并下载 Mod 来解析获取而通过静态数据库用户无需实际下载 Mod 即可访问这些信息从而大幅降低依赖解析的成本。关于如何构建或更新 Steam 创意工坊数据库请参阅 数据库构建器指南。在运行时RimSort 会将该数据库的packageId映射到 Mod 名称等元数据可参考 tests/controllers/test_metadata_controller.py 对steamdb_packageid_to_name映射的断言。其默认来源同样是Configured URL指向 RimSort 维护的 Steam-Workshop-Database 仓库见 settings.py。RimWorld 版本数据库RimWorld Versions DatabaseRimWorld 版本数据库rimworld_versions.json记录了可用的 RimWorld 游戏版本及其 depot来源于第三方维护的 rimworld-versions 仓库见 settings.py。RimSort 使用它实现下载菜单下的下载 RimWorld 版本Download RimWorld Version功能让你可以从 Steam 下载指定的 RimWorld 版本。与其他数据库一样其来源可在设置面板的数据库Databases中配置。底层读取逻辑位于 version_data_service.pyVersionDataService从 JSON 中解析versions按平台win64/win32/mac/linux分组含manifest_id、版本号、状态与 DLC 映射与depotsdepot ID 查找两部分数据并提供get_available_versions(platform)与get_depot_id(item_name, platform)两个查询接口。注意若数据库未配置或未下载该服务会记录警告日志并返回空数据此时下载 RimWorld 版本功能不可用。数据库存储位置与默认配置速查所有外部数据库的默认路径、仓库与归档地址均在 settings.py 中定义。下表汇总了五种数据库的关键默认值数据库本地文件名默认路径默认来源默认仓库Steam 创意工坊数据库steamDB.json应用存储目录Configured URLRimSort/Steam-Workshop-Database社区规则数据库communityRules.json应用存储目录Configured URLRimSort/Community-Rules-Database无版本警告数据库ModIdsToFix.xml应用存储目录Configured URLemipa606/NoVersionWarning使用此替代数据库databases/UseThisInstead/replacements.json.gzConfigured URLemipa606/UseThisInsteadRimWorld 版本数据库databases/rimworld-versions/rimworld_versions.jsonConfigured URLbukforks/rimworld-versions实用提示默认来源统一为Configured URL即下载仓库main分支的 zip 归档若网络受限可将来源切换为Configured file path并选择本地已下载好的文件或切换为Configured git repository以便后续用 Git 拉取更新。在数据库设置页最下方还提供了辅助元数据数据库Aux Metadata DB删除时间限制的设置项默认-1即永不删除该数据库保存 Mod 颜色、已切换的警告状态、用户笔记等信息相关读写函数位于 aux_db_utils.py。通过 RimSort 的 Git 集成管理数据库前置条件为你的系统安装 Git。Git 集成功能用于下载/上传 Steam 创意工坊数据库steamDB.json或社区规则数据库communityRules.json便于协作与共享。配置步骤创建远程仓库或使用现有仓库。GitHub 仓库可与 RimSort 实现额外集成功能如提交 pull request、自动更新检查。在 RimSort 设置下的数据库Databases中配置仓库 URL选择Configured git repository来源并填入仓库地址。可选在 RimSort 的高级设置Advanced中配置 GitHub 账户。你需要准备 GitHub 用户名并为 RimSort 创建具有Repo权限的个人访问令牌。重要说明步骤 3 的 GitHub 身份配置仅在你希望通过 RimSort 直接向配置的 GitHub 仓库提交 pull request 时才必需。若仅需通过 Git 从公共仓库下载数据库或仅在本地修改无需此步骤。你也可以不通过 RimSort 配置直接手动在 GitHub 提交 pull request。完成数据库修改后可通过内置功能分享你的数据库改动上传到远程仓库。克隆数据库到 RimSort当来源选择为Configured git repository时点击该分组下的Download…按钮RimSort 会将远程仓库克隆到本地数据库目录。从 main_content_controller.py 的download_signals映射可以看到五种数据库共享同一下载管线系统会根据来源类型分发任务——Configured URL走 HTTP 下载归档Configured git repository走 Git 克隆_do_git_clone内部还会先检查网络连通性。Git 操作本身由 git_utils.py 中的git_clone执行支持指定checkout_branch与浅克隆depth若本地已存在该仓库会提示用户选择克隆新副本或就地强制更新现有仓库。上传数据库需要仓库写入权限在Configured git repository来源下点击Upload…按钮可把本地数据库改动推送回远程仓库。上传前 RimSort 会弹出确认对话框见 main_content_controller.py并需要对应仓库的写入权限若配置了 GitHub 令牌且目标仓库属于你的账户RimSort 可直接创建 pull request 完成协作。底层 git 操作git_pull、git_push等同样封装在 git_utils.py 中。仓库中随文档提供的两段演示视频克隆与上传流程内容已过时可能不适用于最新版 RimSort请以本文与当前界面为准。配置后的效果与验证排序增强社区规则与用户规则会作为loadBefore/loadAfter/loadBottom规则参与排序过程规则编辑界面rule_editor_panel.py会合并展示about.xml本地规则与外部规则的来源。依赖解析Steam 创意工坊数据库在无需下载 Mod 的情况下补充依赖信息配合排序时缺失依赖检查使用。版本警告过滤无版本警告数据库中的包 ID 不会再触发版本不匹配警告。替代推荐检测到过时/不兼容 Mod 时弹出使用此替代面板。版本下载RimWorld 版本数据库就绪后下载 RimWorld 版本功能可用可按平台列出可用版本含 manifest ID、状态与 DLC 映射。如果数据库下载后未生效请依次检查设置面板中该数据库的来源类型与地址是否正确、下载是否成功完成、本地文件是否存在于上表所列路径。对于 Steam 创意工坊数据库的构建与更新细节继续阅读 数据库构建器指南 即可。赞分享桌面应用游戏开发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 外部数据库机制全解析配置、数据源、Git 协作与源码实现RimSort 外部数据库机制全解析配置、数据源、Git 协作与源码实现 RimSort 依赖一组外部数据库来增强排序、依赖解析、版本提示等核心功能。本文以官桌面应用游戏开发CLIRimSort 基本用法指南初始配置、界面操作与外部元数据体系RimSort 基本用法指南初始配置、界面操作与外部元数据体系 RimSort 是一款面向 RimWorld 的开源 Mod 管理器支持 Linux、mac桌面应用游戏开发CLIRimSort 外部数据库完整指南Community Rules、User Rules、Steam DB 与依赖数据管理RimSort 外部数据库完整指南Community Rules、User Rules、Steam DB 与依赖数据管理 RimSort 是一款开源的《环世界桌面应用游戏开发CLI上一篇深入解析 ants goroutine 池scan4all 高并发扫描引擎的并发基石下一篇Aspire 中 Azure Application Insights 托管集成建模、预配与连接字符串注入实战创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考