mcpField
S
se-dev

se-dev

github.com/cometworks开发1070 次安装5 天前更新
代码仓库

关于 se-dev

se-dev 是 Space Engineers 1 开发技能套件的入口与导航,面向脚本、模组和插件开发者。它概述各类扩展方式及对应技能,并按开发目标指向编写或游戏代码参考资源。

主要功能

  1. 01概览脚本、模组与插件开发
  2. 02按目标选择对应技能
  3. 03区分客户端与专用服务器插件流程
  4. 04列出游戏代码与手册参考技能
  5. 05介绍 Graphify 图谱文档入口

适用场景

  1. 01判断应使用哪种游戏扩展方式
  2. 02为模组或插件任务挑选技能组合
  3. 03查找客户端或服务器端代码参考

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/cometworks/skills --skill se-dev

安装后在 Claude Code 中输入/se-dev确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

graphify-check.sh
graphify-prepare.sh
GraphifyCheck.bat
GraphifyPrepare.bat
GraphifyPrepare.md
GraphifyUsage.md

详细介绍

SE Dev — Space Engineers 开发概览

仅适用于 Space Engineers 版本 1。

se-dev-* 技能的入口和目录。先阅读本文了解整体情况,然后打开任务所需的具体技能。本文本身不会执行搜索或构建,而是引导你使用相应技能。

扩展游戏的三种方式

层级内容运行方式语言限制技能
游戏内脚本Programmable Block (PB) 中的代码沙盒运行,由游戏编译C# 6.0,PB API 白名单se-dev-script
Mod世界/服务器内容和脚本,Steam 创意工坊沙盒运行,由游戏编译C# 7.3,Mod API 白名单se-dev-mod
插件使用 Harmony 修补游戏的原生 DLL无沙盒,完整 .NET无限制(latestMinor)se-dev-plugin

脚本和 Mod 受 API 白名单限制,并在游戏沙盒内运行。插件运行原生代码,不受沙盒限制——可以执行任何操作,因此插件必须开源,并在发布前经过审核。

插件的运行位置:客户端与服务器

插件面向游戏客户端、专用服务器,或两者(共享代码)。

游戏客户端专用服务器Torch(旧版)
加载器PulsarMagnetarTorch
注册表PluginHubMagnetarHubtorchapi.net
管理 UI游戏内配置对话框Quasar(远程控制平面)Torch WPF UI
技能se-dev-plugin(ClientPlugin)se-dev-plugin(ServerPlugin)+ se-dev-plugin-sdkse-dev-torch
  • Pulsar — 游戏客户端的插件和 Mod 加载器。它从 PluginHub 列出并加载插件。客户端插件会在玩家的机器上从源代码编译。
  • Magnetar — 专用服务器的插件加载器(Pulsar 的硬分叉)。它从 MagnetarHub 列出并加载服务器插件。服务器插件通过 Magnetar 的 PluginSdk 声明其配置。
  • Quasar — 带有 Web UI 的控制平面,用于管理 Magnetar 实例。它从 MagnetarHub 列出兼容 Magnetar 的服务器插件,并允许管理员远程配置这些插件;配置 UI 使用各插件通过 PluginSdk 声明的布局。
  • Torch — 较早推出、独立的专用服务器托管程序,采用自有插件模型。**Torch 插件与 Magnetar 不兼容,反之亦然。**相关内容仅由 se-dev-torch / se-dev-torch-book 技能覆盖,这些技能用于维护现有 Torch 插件。

技能一览

编写技能(编写脚本、模组、插件)
  • se-dev-script — 游戏内(Programmable Block)脚本开发。搜索 PB 脚本示例。
  • se-dev-mod — 模组开发。搜索模组代码示例;Mod API 白名单。
  • se-dev-plugin — 客户端和服务端插件开发(Harmony 补丁、转译器、预加载器)。从 PluginHub(客户端)和 MagnetarHub(服务端)搜索插件源代码。
  • se-dev-plugin-guide — 代码相关的开发指南:使用哪个模板、在哪里了解游戏、使用 Pulsar/Magnetar 进行本地测试、玩家的 PC 有哪些差异、Hub 清单 XML、如何提交到各 Hub,以及如何与编码 Agent 协作。
  • se-dev-plugin-review — 根据清单固定的版本审核 PluginHub、MagnetarHub 和 QuasarHub PR;生成简洁、可直接粘贴的审核结果,但批准仍由人工维护者决定。
  • se-dev-plugin-sdk — Magnetar 的 PluginSdk 手册:声明服务端配置变量、Quasar 渲染的 UI 布局、服务端聊天命令、服务端生命周期(保存/重新加载/退出/重启)、路径解析和与环境无关的日志记录。与 se-dev-plugin 一起用于服务端插件。(位于 Magnetar 仓库中。)
  • se-dev-torch — Torch 插件开发(旧版服务端宿主)。仅适用于 Torch;与 Magnetar 不兼容。
Graphify 图(按需读取)
  • GraphifyPrepare.md — 各子技能如何构建自己的子技能专属 graphify-out/。准备流程会在 Python 3.12 上安装 Graphify,并启用快速的原生 Rust Leiden 聚类后端;当该后端可用时(Linux/Windows 上使用 uv),会自动构建图——即使是游戏/服务端语料,聚类也只需约 1-2 分钟。如果无法部署快速后端,Graphify 仍为可选项,只有通过 SE_DEV_GRAPHIFY=1 选择启用时才会构建(较慢的单核回退方案会额外耗时约 10-30 分钟;准备流程会报告此情况)。SE_DEV_GRAPHIFY=0 可完全禁用它。还介绍了用于检测不可用(未聚类)图的健康检查,以及清理并重建流程。
  • GraphifyUsage.md — 如何查询现有图(query/explain/path/affected)、大图加载上限,以及查询测试脚本。

这两份文档按需时获取:除非用户明确需要 Graphify 图,否则完全跳过,以免额外工具污染正常工作时的上下文。

参考技能(阅读/搜索游戏内部实现)
  • se-dev-game-code — 搜索游戏客户端的反编译 C# 代码:了解内部运作方式,以及要调用或修补的确切代码。建议与客户端 Mod/插件开发搭配使用。
  • se-dev-game-book(私有,如已安装)— 游戏客户端内部运作手册,按子系统整理,每种类型各有一个页面。遇到关于游戏如何实现某项功能或哪些类型参与其中的问题时,请先阅读,再搜索代码。
  • se-dev-server-code — 搜索专用服务器的反编译 C# 代码:了解内部运作方式,以及要调用或修补的确切代码。与服务器端 Mod/插件开发搭配使用。
  • se-dev-server-book(私有,如已安装)— 专用服务器内部运作手册,明确标出仅限服务器的部分。遇到关于服务器如何实现某项功能的问题时,请先阅读,再搜索代码。

*-book 手册(se-dev-game-book、se-dev-server-book、se-dev-torch-book)是私有/内部资料,单独分发,不属于此公开仓库。已安装时,遇到任何关于游戏运作方式的问题,请先阅读这些手册,再搜索代码;若未安装,*-code 技能也能回答这些问题,并且是唯一的参考资料。手册并非权威来源:若两者存在冲突,以反编译源代码为准。

如何选择

  • Programmable Block 脚本? → 使用 se-dev-script + se-dev-game-code 查询 API 详情(如已安装,请先阅读 se-dev-game-book)。
  • Steam 创意工坊 Mod? → 根据需要使用 se-dev-mod + se-dev-game-code / se-dev-server-code(如已安装,请先阅读对应的 *-book)。
  • 客户端插件? → 使用 se-dev-plugin + se-dev-game-code(如已安装,请先阅读 se-dev-game-book)。
  • 服务器插件(Magnetar)? → 使用 se-dev-plugin + se-dev-plugin-sdk + se-dev-server-code(如已安装,请先阅读 se-dev-server-book)。
  • 启动、测试或发布插件,或有开发者流程方面的问题? → 使用 se-dev-plugin-guide。
  • PluginHub / MagnetarHub / QuasarHub 审核? → 使用 se-dev-plugin-review + 适用的托管平台/代码参考资料。
  • 维护 Torch 插件? → 使用 se-dev-torch + se-dev-torch-book(以及 se-dev-server-code)。
  • 需要了解游戏如何实现 X? → 如已安装,请先阅读 *-book,再用 *-code 确认具体细节;否则仅使用 *-code。

大多数不简单的任务都需要搭配一个创作技能和一个参考技能:用前者进行开发,用后者查询游戏内部实现。

插件模板

  • se-client-plugin-template — 仅限客户端的插件。
  • se-server-plugin-template — 客户端 + Magnetar 服务器插件(ClientPlugin、ServerPlugin、Shared)。对于 Torch 插件,请基于模板的 last-torch-compatible 标签,而不是 main。

通用建议

  • 如果你正在使用的任何分区剩余磁盘空间低于 10GB,请停止并发出警告。
  • 避免使用较长的超时。留意完成任务所耗费的实际时间。
  • 为避免浪费时间,请使用监控脚本频繁轮询进度,例如每隔几秒轮询一次。
  • 监控时不要进行推理,只需读取输出,并在出现相关事件时作出响应。
  • 始终立即收集所有证据(日志、核心转储、回溯),因为日志轮转和核心转储清理可能会将其删除。
  • 操作系统临时文件夹(如 /tmp 或 %TEMP%)中的内容可能不会在重启后保留,因此不要在其中存放之后可能需要取回的重要内容。
  • 在 Linux 上,/tmp 文件夹可能会占用内存(tmpfs),因此不要在其中存放大文件。
  • 如果需要深入规划或遇到棘手的问题/故障,请咨询 Fable 或 Astra 子 Agent。

备注

评论

支持 Markdown