Block-Reign:玩家 vs AI 网格游戏,向你学习

发布: (2025年12月27日 GMT+8 15:35)
4 分钟阅读
原文: Dev.to

Source: Dev.to

Block-Reign 封面图:一个从你学习的玩家对 AI 网格游戏

大多数游戏 AI 都是伪智能——基于模式、脚本、可预测的行为。

Block-Reign 并非如此。

它是一个轻量级的 玩家对 AI 网格对战游戏,AI 会真正从你每一局的胜负、失误中学习。无需 GPU、无需花哨的引擎——只用 Python、强化学习和持久化存储。

🕹️ Block-Reign 是什么?

Block-Reign 是一个 基于 10×10 网格的玩家对 AI 战斗游戏,使用以下技术构建:

  • Flask + HTML 作为前端
  • Python 作为游戏服务器
  • 强化学习(Q‑Learning)用于实时对战
  • DQN 用于离线高级实验

你在浏览器中玩,AI 在服务器上运行,每局结束后它都会变得更聪明。

🤖 AI 哲学

核心想法很简单:

如果 AI 只从真实对局中学习,而不是预训练数据呢?

于是 AI:

  • 从愚蠢开始
  • 只从 实际对局 中学习
  • 永久保存其知识
  • 适应 你的游戏风格

没有合成数据,没有脚本化行为——只有经验。

🧠 学习是如何进行的

运行中的服务器使用 Q‑learning AI。每局结束后:

  1. 将对局数据发送到服务器。
  2. AI 更新其 Q 表。
  3. 将进度保存到磁盘。

即使你重启服务器,AI 也会记住所有内容。
项目还提供了一个 DQN 训练器ai_trainer.py)供实验使用。

📊 当前 AI 进度

截至最近一次运行:

  • 胜率:约 59%
  • 已进行对局:78 场
  • 战绩:46 胜 / 36 负

这些统计数据 不是硬编码的;它们是通过学习得到、存储并持久化的。删除训练文件夹会让 AI 忘记一切。

🎮 游戏玩法

  • 10×10 网格
  • 方向键移动
  • 空格键射击
  • 简单机制,策略定位
  • 快速对局,即时反馈

视觉简约,行为学习最大化。

🔁 重置 AI

删除训练数据:

training/

或删除特定模型文件:

training/models/simple_ai.pkl

然后重启服务器并重新开始游戏。AI 将从零开始。

🛠️ 我为何构建它

这个项目并不追求画面或抛光。它的意义在于:

  • 理解强化学习
  • 观察 AI 有机进化
  • 在不需要大量计算资源的情况下构建自适应系统

🔗 代码仓库

https://github.com/DeveloperPuneet/Block-Reign

最后感想

Block-Reign 并不完美,但它很真实——一个 通过一次次失误获得智能 的 AI。

而这并不是终点。更狂野的策略、更犀利的玩法、更好的图形……更疯狂的东西即将到来。敬请期待 👀

有什么建议吗?在下方评论。

Back to Blog

相关文章

阅读更多 »