Loading... # Ramp Labs 将 Claude Code 植入 RollerCoaster Tycoon 技术分析 # 一、新闻概述 ## 1. 标题 Ramp Labs 实验项目:让 AI 在经典游戏 RollerCoaster Tycoon 中自主管理主题公园 ## 2. 发布时间 2025 年 1 月(根据内容推断) ## 3. 来源 Ramp Labs 官方实验室 # 二、核心内容 ## 1. 事件摘要 ### A. 主要内容 Ramp Labs 完成了一项实验性项目,将 Claude Code 集成到经典游戏 RollerCoaster Tycoon 2 中,创建了一个能够自主管理主题公园的 AI 代理。该项目通过 OpenRCT2 开源实现,构建了完整的 CLI 接口和 JSON-RPC 通信层。 ### B. 核心亮点 - Claude Code 可以自主分析公园财务、游客反馈、设施状态等 100+ 数据点 - AI 能够自主决策:调整票价、雇佣员工、建设饮料摊位、修理设施 - 项目完全开源,提供完整的构建指南和技术文档 - 探索了通用 AI 代理在可视化环境中的能力边界 ## 2. 关键信息 ### A. 项目规模 - 开发时间:约 40 小时(跨越数周) - 技术栈:C++、Claude Code、JSON-RPC、libvterm - 团队配置:4 个并行的 Claude Code 实例协作开发 ### B. 涉及技术 - OpenRCT2:RollerCoaster Tycoon 2 的开源重实现 - rctctl:仿照 kubectl 设计的完整 CLI 工具 - Claude Code:Anthropic 的 AI 编程助手 - JSON-RPC:游戏与 AI 间的通信协议 ### C. 项目背景 Ramp 正在构建跨产品界面和内部运营的 AI 代理。该项目是对"通用代理"(One Agent)概念的早期探索,在玩具环境中测试 AI 的能力边界。 # 三、详细报道 ## 1. 主要内容 ### A. 为什么选择 RollerCoaster Tycoon RollerCoaster Tycoon(过山车大亨)不仅仅是一个"过山车游戏",它本质上是一个 B2B SaaS 接口的蒙特梭利教具。 **核心原因**: - 游戏完美模拟了以客户为中心的业务运营和 SaaS 驱动的数字反馈循环 - 游戏内置了丰富的监控界面和管理窗口 - 氛围匹配:Claude Code 的终端窗口带来复古未来主义感,与 Claude 的 playful 个性相得益彰 **与其他游戏对比**: - Minecraft:开放沙盒,缺乏资本主义结构 - Pokemon:主角是无法开设有限责任公司或申请信用卡的儿童 - StarCraft:包含经济、竞争和员工管理,但不够以客户为中心 ### B. Claude 能做什么(不能做什么) **Claude 擅长的领域**: 1. **游戏知识**:Claude 对 RCT 非常熟悉,对被"黑入"90 年代游戏的前提毫不在意 2. **信息收集**:擅长浏览游戏的多样化指标和可观测性功能,创建有见地的报告 3. **操作数字控制杆**:调整配置、开关设施、定价、雇佣员工、启动营销活动 4. **放置商店/平底骑乘设施**:可以可靠地放置洗手间、饮料摊位,甚至尝试旋转木马 **Claude 挣扎的领域**: 1. **路径规划与连接**:定位主干道、路由新路径、连接骑乘入口/出口 2. **过山车建设**:放置大型预制过山车需要多尺度空间推理 3. **垂直维度**:倾斜地面、地下建设、自定义过山车设计 **关键洞察**: 限制通用代理的因素是其环境的可读性和接口强度。因此,倾向于将代理视为自动化的"勤奋",而非"智能",用于运营挑战。 ### C. 技术实现细节 **项目架构**: ```mermaid graph TB Claude[Claude Code] -->|CLI Commands| rctctl[rctctl CLI] rctctl -->|JSON-RPC| RPC[RPC Layer] RPC -->|localhost:9876| Game[OpenRCT2 Game] Game -->|Terminal Display| Claude Game -->|Game State| Data[100+ Data Points] Data -->|Metrics| Claude ```  **核心组件**: 1. 新的菜单项:在游戏菜单栏中添加 Claude 入口 2. 新窗口类型:显示终端,镜像远程运行的 Claude Code 3. rctctl CLI:仿照 kubectl 模式设计的完整命令行工具 4. RPC 层:将 CLI 命令传输到游戏状态 5. 测试:集成错误报告工具 **rctctl CLI 示例**: ```bash $ rctctl map area --x 44 --y 38 Map Area -------- Anchor : (44, 38) top-left Span : 16x16 tiles X:44 45 46 47 48 49 50 51 52 53 54 Y:38 R P P P P . . E E . T 39 P P . S P S T P Q S . 40 P R S R P P . P Q S . 41 P S S S . P P P P P P ``` Legend: - R = Ride track/support(轨道/支撑) - P = Footpath(人行道) - E = Ride or park entrance(骑乘或公园入口) - T = Tree or foliage(树木或植被) - Q = Queue path(排队路径) - S = Scenery/building(场景/建筑) ## 2. 开发过程 ### A. 开发模式 团队完全不掌握 C++,采用"vibe coding"(感觉编码)方式完成整个项目。 **第一轮尝试**: - 使用 ChatGPT o3-Pro Deep Research 制定计划 - 用 Claude Code 分解为路线图 - 管理 4 个终端的 Claude Code 并行执行 - 3 小时后卡住,全部推翻重来 **第二轮尝试**: - 切换到 Codex on GPT-5.1-codex - 将任务分解为更小的块 - 使用谨慎的规划阶段 - 保持上下文在 60% 以上(编码模型性能最佳区间) ### B. 开发体验 - 不像编程,更像管理模拟游戏 - vaguely 上瘾(模糊的上瘾感) - 进展速度和焦点松散放大了每个新功能发布的奖励感 - 需要大量脑力带宽保持所有 4 个代理忙碌 **主要挫折**: - 意外使用 "revert" 一词,Codex 字面理解并运行了 git revert - 损失了 1-2 小时的进度 ### C. 质量保证 - 游戏内的 Claude 是勤奋的测试员 - 集成的错误报告工具让它直接将 bug 报告写入仓库 - 这个反馈循环对于修复帮助文本、CLI 不一致性和观察到的 bugs 非常宝贵 ## 3. 数据与事实 ### A. 开发数据 - 总投入时间:约 40 小时 - 跨度:数周 - 代理数量:4 个并行 Claude Code 实例 - 上下文管理:保持在 60% 以上 ### B. 技术指标 - CLI 命令:覆盖所有重要数据点、控制和操作 - 数据点:100+ 游戏内指标 - 通信协议:JSON-RPC over localhost:9876 - 渲染:libvterm 终端渲染 # 四、影响分析 ## 1. 行业影响 ### A. 技术趋势 - 探索了通用代理在可视化环境中的能力边界 - 验证了环境可读性是代理成功的关键因素 - 为 B2B SaaS 中的 AI 代理应用提供了实验参考 ### B. 代理设计范式 **核心教训**: 1. 环境可读性是关键 2. 编码代理是巨大助推力,但要构建"风帆" 3. 开发循环(反馈循环)至关重要 4. 经验胜过研究 ## 2. 用户影响 ### A. 开发者社区 - 提供了完整的开源实现 - 展示了 AI 辅助开发的潜力 - 证明了非专业开发者可以用 AI 完成复杂项目 ### B. AI 研究者 - 提供了 AI 能力边界的实证案例 - 展示了多模态交互的挑战 - 验证了文本-空间推理的局限性 ## 3. 技术趋势 ### A. 代理能力演进 - 当前模型正推动"通用代理"的边界 - 限制从代理能力转向安全性和集成问题 - 现在是开始在玩具环境中测试广泛范围代理的完美时机 ### B. 交互界面设计 - Claude 擅长干净、结构化的全知监控界面 - 在基于文本的游戏空间渲染中明显挣扎 - 创意的文本表示可能不切实际,最好通过"即代码"(stuff-as-code)方式解决 # 五、各方反应 ## 1. 官方回应 Ramp Labs 将该项目定位为对 AI 代理能力的探索性实验,强调: - 代理应该自动化的"勤奋"而非"智能" - 环境可读性决定代理成功与否 - 通过游戏构建对 LLM 能力的直觉理解 ## 2. 技术社区 - OpenRCT2 开源社区提供了基础实现 - kubectl 的 CLI 设计模式被借鉴 - C++ 社区的开源贡献使得项目成为可能 ## 3. 用户反馈 - 项目展示了 AI 在游戏环境中的实际应用 - 证明了非专业开发者可以用 AI 完成复杂 C++ 项目 - 为 AI 辅助编程提供了有趣的实际案例 # 六、相关链接 ## 1. 官方资源 - 项目主页:https://labs.ramp.com/rct - GitHub 仓库:https://github.com/jaysobel/OpenRCT2 - Twitch 直播:https://www.twitch.tv/ramplabs ## 2. 技术文档 - SETUP.md:完整设置指南 - CODING_AGENT.md:技术深度解析 - RCTCTL.md:完整 CLI 参考 ## 3. 招聘信息 - Ramp Labs 招聘:https://jobs.ashbyhq.com/ramp?utm_source=RampLabs # 七、快速开始指南 ## 1. 前置要求 - macOS(Sonoma 或更新版本)+ Xcode - CMake 3.24+ 和 Ninja - RollerCoaster Tycoon 2(Steam 购买) - libvterm:`brew install libvterm pkg-config` ## 2. 构建步骤 ```bash # 克隆分支 git clone -b claude https://github.com/jaysobel/OpenRCT2.git cd OpenRCT2 # 配置 cmake -S . -B build -G Ninja -DOPENRCT2_PREFER_STATIC=ON # 构建所有内容(游戏 + CLI 工具 + 终端) cmake --build build --target agent_bundle -j8 # 运行 ./build/OpenRCT2.app/Contents/MacOS/OpenRCT2 ``` ## 3. 编译产物 agent_bundle 目标编译: - OpenRCT2:嵌入终端窗口的游戏本体 - rctctl:Claude 用于通过 JSON-RPC 控制游戏的 CLI 工具 - Sprite 资产:图形和 UI 元素 *** ## 参考资料 1. [AI Plays Rollercoaster Tycoon - Ramp Labs](https://labs.ramp.com/rct) 2. [OpenRCT2 Claude Fork - GitHub](https://github.com/jaysobel/OpenRCT2) 最后修改:2026 年 01 月 18 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏