本页目录

Craft:C 语言 + 现代 OpenGL 的简易《Minecraft》克隆

Craft · fogleman/Craft

用 C 语言和现代 OpenGL(着色器)编写的《Minecraft》风格沙盒游戏,仅数千行代码,支持 Windows、macOS 与 Linux。特性包括基于 Perlin/Simplex 噪声的地形生成、10 余种方块、植物与玻璃透明效果、静态云、昼夜循环与纹理天空穹顶,世...

益智解谜 其他 JavaScript 角色控制 游戏状态管理 初级
★ Stars 53 Forks 13 License MIT 更新 2026-09-05

国内开发环境适配

Windows
AI 推断/待核验
Linux
AI 推断/待核验
macOS
AI 推断/待核验
引擎 / 框架:其他 暂无中文教程标记 未标记站长实测
纯静态 HTML/JS 页面,理论上浏览器打开即可运行,无需编译;项目依赖 jaws.js、howler.js 等前端库,README 未给出本地部署步骤。homepage 指向 GitHub Pages,国内访问可能不稳定,是否可离线运行待核验。

中文项目介绍

BitBot 是 2013 年发布的一款实验性网页小游戏,由 Rogelio E. Cardona-Rivera 与 José D. Vélez 合作完成,以 HTML5 与 JavaScript 实现,源码托管在 GitHub 上,并可通过 GitHub Pages 直接在线游玩。它并不是靠内容量取胜的作品,体量小、目标也很明确:用一套可玩的规则,把机器人学里著名的「感知—规划—行动」(Sensing-Planning-Acting)范式翻译成玩家的操作体验。README 中作者用「procedurally rhetorical」来形容自己——意思是游戏的修辞不是说教式的,而是由规则本身产生的。

世界观和玩法说明是由一段虚构的「截获通讯」引出的。邮件双方是机械智能公司(Mechanical Intelligence)的首席科学家 R. W. Friedman 与 CEO L. L. Dreyfus,主题是「Bot 训练计划」。CEO 在信中描述了公司现役机器人的窘境:能量储备有限,感知系统和行动系统也都受限;当它们感知时无法行动,而当它们想要行动时又必须先做规划;等到真正动手的时候,它们对世界的感知已经过期了。正是为了突破这种局限,公司才设立了「Bot-in-training for Bots」项目,希望催生一种全新的智能。这段虚构邮件实际上就是玩法说明书:能量、感知、规划、执行四者之间的时序冲突,正是玩家要处理的全部难题。

在游戏里,玩家操控的正是这样一台受训中的机器人,能量有限,被困在感知、规划、行动的循环里。玩家要先在「规划模式」中用方向键为机器人安排动作,然后执行计划;但执行的那一刻,世界可能已经发生变化,你依据的旧感知未必仍然成立。玩家需要在从起点走到终点的过程中平衡剩余能量,并对世界在「现在」与「执行时」的差异做出预判。README 没有给出关卡数量、地图规模、敌人或计分等细节,这些都需要以实际运行结果为准。

核心功能

核心特性

从设计意图看,BitBot 更像一个可交互的论证:它想让人亲身体会「做一个 bot 是什么感觉」。在传统的即时操作游戏中,感知与行动几乎是同时发生的,玩家看到什么就能立刻反应;而在这里,两者之间被强行插入了一个规划阶段,并且感知数据会随时间失效。这种人为制造的「滞后」让玩家不得不像分层式/慎思式机器人架构(Hierarchical/Deliberative Paradigm)那样思考:先构建一个世界模型,再在模型上规划,最后把计划交给一个可能已经与现实脱节的执行器。作者在 README 中附上了维基百科关于机器人范式的条目链接,也说明了这款作品和 AI 与游戏研究之间的关联。

技术层面,BitBot 使用 jaws.js 这个 HTML5/JavaScript 游戏库作为主要框架,音频部分使用 howler.js,另外还引用了 Google Closure Library、jQuery、jQuery-Cookie 与 jQuery UI。这套技术栈非常有 2013 年前端游戏的时代特征:直接以 script 标签加载若干独立库,用 jQuery 处理 DOM 与 UI,用 Cookie 插件保存少量本地状态(具体保存了什么,README 未说明,待核验)。README 没有提供构建脚本、包管理配置或测试说明,仓库也没有标注 topics,因此它更接近「当年可以跑起来的静态网页」形态,工程化程度有限。

运行方面,最直接的方式是访问项目主页上的在线版本——这是一个纯浏览器游戏,无需安装客户端,跨平台能力来自浏览器本身而非原生二进制。如果想在本地运行,通常需要把仓库中的静态文件放到 HTTP 服务下访问,直接双击 index.html 可能因跨域或音频资源加载策略而失败(此点未在 README 中说明,待核验)。README 未提及 Windows、Linux、macOS 的官方适配情况,也未提供发布包或压缩包下载地址。

技术架构分析

技术要点

适合谁来玩和读?对 AI 与游戏方向的学习者来说,BitBot 可以当作讨论慎思式架构与反应式架构权衡时的一个小而具体的引子;对前端入门者来说,可以看到 2013 年一个典型 JavaScript 小游戏如何组织资源与第三方库;对教学设计者来说,它是一个「用规则讲概念」的样本。需要注意的是:项目年代久远,第三方库链接可能已失效,文档极少,玩法细节与完成度都需要实际运行确认;仓库截图链接指向的是作者个人账号下的仓库路径,说明项目可能经历过迁移,历史信息应以当前仓库为准。作品版权归 Rogelio E. Cardona-Rivera 与 José D. Vélez 所有。

开源许可证与版权说明

许可证标识:MIT。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目