AGMS2
AGMS2是一个GameMaker Studio 2工具单仓库,围绕三个部分构建:
- 可以检查和修改的本地MCP服务器
.yyp,.yy,以及.gml文件 - 一个与VS Code兼容的扩展,用于完全从编辑器编辑GMS2项目
- GML内置/技能数据包,用于文档、提示和编辑器功能
目标是让GameMaker项目在VS Code、Cursor和VSCodium等现代编辑器中感觉像是一流的代码库。
包裹
packages/mcp-server\
GameMaker项目的本地MCP服务器。它公开了项目元数据、资产读/写、构建/运行命令、搜索和房间/对象转换工具。
packages/vsc-extension\
VS代码/游标扩展,带有GMS2资源管理器、GML语言工具、MCP生命周期管理和只读Web视图。
packages/gml-skills\
提示就绪的GameMaker指南,以及扩展语法、补全、悬停和签名帮助所使用的内置函数、变量和常量。
特点
MCP服务器
- 打开a
.yyp项目和指标项目资产 - 读取脚本、对象事件、房间、宏、扩展和项目元数据
- 创建和编辑脚本、对象、房间、精灵和对象事件
- 设置对象精灵和父对象
- 重命名和删除资产
- 搜索和替换
.gml - 添加和删除房间实例
- 通过GameMaker CLI运行build/run/clean命令
- 监视项目并在文件更改时刷新内部元数据
- 发出MCP资源更改通知,以便编辑器客户端可以自动刷新
- 公开用于编辑器集成的标准化资产索引
VS代码扩展
- 自定义
gms2Explorer反映GMS2 IDE的树视图 - 直接从资源管理器打开脚本和对象事件文件
- 上下文操作:
- 创建对象 - 创建脚本 - 添加事件 - 设定角色 - 设置父级 - 删除资产
- 命令用于:
- 开放项目 - 刷新资源管理器 - 建设项目 - 运行项目 - 创建对象 - 创建脚本 - 搜索GML - 添加事件
- GML语言支持:
- TextMate语法高亮显示 - 语言配置 - 内置补全 - 资产名称填写 - 悬停文档 - 签名帮助 - 转到定义 - 轻量级诊断
- 只读网络视图:
- 房间预览 - 对象检查器
- 具有状态栏连接状态的自动MCP流程管理
GML数据/技能
- 内置函数签名和描述
- 内置常量和变量
- 面向提示的GameMaker通用系统最佳实践参考
回购布局
AGMS2/
├─ packages/
│ ├─ gml-skills/
│ ├─ mcp-server/
│ └─ vsc-extension/
├─ package.json
├─ pnpm-workspace.yaml
└─ tsconfig.base.json需求
- Node.js 20+
pnpm- 如果你想运行实际版本,请安装GameMaker Studio 2
安装
从repo根目录:
pnpm install既然扩展包有自己的依赖关系,这一点很重要。
运行MCP服务器
构建它:
pnpm --filter @agms2/mcp-server build在项目上运行它:
node packages/mcp-server/dist/index.js --project "/absolute/path/to/MyGame.yyp"可选SSE模式:
node packages/mcp-server/dist/index.js --project "/absolute/path/to/MyGame.yyp" --sse --port 3001您还可以通过创建以下内容来配置GameMaker二进制文件 gms2-mcp.config.json 在项目根目录中:
{
"gmsBinaryPath": "C:/Program Files/GameMaker/GameMaker.exe",
"buildTarget": "Windows",
"runtimePath": null,
"watchMode": true,
"logLevel": "info"
}延期也通过了 gms2.gmsBinaryPath 和 gms2.buildTarget 启动服务器时通过环境变量。
运行扩展
VS代码/光标中最快的方法
- 运行安装一次:
pnpm install- 构建MCP服务器:
pnpm --filter @agms2/mcp-server build- 构建扩展:
cd packages/vsc-extension
node ./scripts/generate-gml-assets.mjs
node ./scripts/build.mjs- 在VS Code或Cursor中打开仓库。
- 启动扩展开发主机:
- 打开“运行和调试”面板 - 选择 Run GMS2 Extension - 按 F5
- 在“扩展开发主机”窗口中:
- 跑 GMS2: Open Project - 选择一个 .yyp - 等待状态栏显示 GMS2: Connected
已安装VSIX设置
如果您正常安装扩展 .vsix,还设置:
gms2.serverPath
将其指向您构建的MCP服务器文件:
/absolute/path/to/AGMS2/packages/mcp-server/dist/index.js安装的扩展需要此功能,因为MCP服务器当前位于AGMS2存储库中,而不是打包的VSIX中。
手动命令行构建
如果你只想重建扩展包:
cd packages/vsc-extension
node ./scripts/build.mjs观看模式:
cd packages/vsc-extension
node ./scripts/build.mjs --watch出版
扩展
该扩展首先是为Open VSX设计的:
pnpm --filter agms2-vsc-extension package
pnpm --filter agms2-vsc-extension publish:ovsxVSIX的GitHub发布也是自动化的。将扩展版本插入 packages/vsc-extension/package.json 或运行以下操作之一:
pnpm release:patch
pnpm release:minor
pnpm release:major然后按 main。工作流程将构建 agms2-vsc-extension-.vsix 并发布标记为的GitHub版本 v.
市场
清单的结构使得如果需要,还可以添加VS代码市场发布路径。
重要说明
- 扩展程序预期MCP服务器的构建输出为
packages/mcp-server/dist/index.js. - 对于正常安装的VSIX,设置
gms2.serverPath明确地。 - 构建和运行命令仅在配置GameMaker可执行路径时有效。
- 目前的诊断是有意轻量级的。它们是警告,而不是完整的语义编译器。
- 在此版本中,网络视图是只读的。
文档
- MCP服务器详细信息:
- 扩展详细信息:
- GML数据/技能:
