为经典小游戏 Grenade Brothers 添加 AI 对手:Zig + wasm4 的单人模式实践 发布时间:2026/8/6 5:25:34 最近对一个叫Grenade Brothers的小游戏做了二次开发给它加了 AI 对手支持单人游玩。原游戏是用Zig编写、编译成WebAssembly运行在wasm4这个幻想主机fantasy console上的。画面只有 160×160 像素和四种颜色风格非常复古玩法类似简化版的排球/乒乓球两个人隔网打球球落到对方场地就得分。原作者的灵感来自游戏《A Way Out》里出现的一个街机小游戏。原版主要支持本地双人或 netplay 联机缺少单人模式所以我做了这个 fork加上了 AI。游戏简介双方隔着球网交换一个球球落到己方场地地面则对方得分跳跃击球可以加速站着击球会减速击球点越偏离角色中心横向速度越大支持本地双人和 netplay浏览器即可运行手机也能玩原版控制左玩家方向键上键跳跃右玩家ESDFR 键重置本 fork 新增内容在保留原游戏全部功能与EUPL-1.2协议的基础上增加了模式选择菜单和三种 AI 难度模式说明2 Players原版本地双人 / netplayAI Easy追踪型 AI跟着球跑反应有延迟AI Medium预测型 AI模拟球的物理轨迹进行拦截AI Hard策略型 AI会预判、试图把球打向空当并使用有力跳跃规则调整左侧始终是人类玩家方向键 / 手柄1右侧在 AI 模式下由 AI 控制先到5 分获胜结束后返回菜单菜单操作上下键移动光标X 键确认AI 设计思路简要AI 主要逻辑在 src/ai.zig 和 src/menu.zig 中。几个关键点AI 站位会刻意偏移让击球更容易把球打过网而不是纯垂直起跳加入了人类化的“噪声”反应延迟、脚步误差、跳跃时机抖动紧急情况球很低且很近会优先救球不会故意放水Hard 难度会尝试预判落点并主动寻找空当整体目标是让 AI 有层次感Easy 适合练手Medium 有一定对抗性Hard 能给有经验的玩家一些压力。如何运行依赖与原版相同Zig ≥ 0.10.1wasm4 ≥ 2.5.4Bashgit clone https://github.com/lClonazepam/Grenade_Brothers_AI.git cd Grenade_Brothers_AI make init build run写在最后这是一个纯粹的个人兴趣项目主要是想在原有优秀小游戏的基础上补上单人可玩性并实践一下简单的游戏 AI追踪 → 预测 → 简单策略。原游戏本身已经很有趣加上 AI 后一个人也能随时玩一会儿。代码量不大感兴趣的朋友可以直接看源码尤其是 src/ai.zig 部分。仓库地址 https://github.com/lClonazepam/Grenade_Brothers_AI如果你也对 wasm4、Zig 小游戏或简单游戏 AI 感兴趣欢迎交流。 相关新闻 Unity RTS游戏阵型系统优化:从卡顿到流畅的实战指南 1. 项目概述:从“能用”到“好用”的阵型进化论做RTS游戏,尤其是Unity里搞,阵型功能绝对是块硬骨头。早期版本里,你费老大劲实现了基础逻辑:框选一堆单位,右键点击地面,它们能稀稀拉拉地排成个方… 2026/8/6 5:20:34 如何快速上手Sabaki:免费优雅的围棋棋盘与SGF编辑器完整指南 如何快速上手Sabaki:免费优雅的围棋棋盘与SGF编辑器完整指南 【免费下载链接】Sabaki An elegant Go board and SGF editor for a more civilized age. 项目地址: https://gitcode.com/gh_mirrors/sa/Sabaki 想要一款专业又易用的围棋软件吗?Saba… 2026/8/6 5:20:34 Unity大文件下载优化:零GC断点续传与固定缓冲区实践 1. 项目概述与核心价值在Unity项目开发中,资源下载是一个绕不开的环节。无论是热更新资源包、动态加载的AB包,还是游戏内的视频、音频素材,动辄几百兆甚至上G的大小是家常便饭。如果你还在用UnityWebRequest或WWW的简单Get方法,遇… 2026/8/6 5:20:34 最新新闻 LabVIEW面向对象编程:从数据流到类与对象的工程实践 1. 项目概述:为什么LabVIEW开发者需要关注“类”?如果你接触LabVIEW有一段时间了,可能已经习惯了用数据流、连线、子VI(SubVI)来构建程序。你会觉得,用簇(Cluster)打包数据ÿ… 2026/8/6 6:25:47 PowerShell Universal Dashboard:无需前端技能,快速构建Web运维监控面板 1. 项目概述:为什么你需要一个基于PowerShell的Web仪表板?如果你是一个Windows系统管理员、DevOps工程师,或者任何需要频繁与PowerShell打交道的IT从业者,你可能已经厌倦了在黑色的控制台窗口里敲打命令,或者为了一个简… 2026/8/6 6:25:47 高校导师私下流传的AI论文润色清单(仅限内部分享版):7类语法陷阱+4种逻辑断层自动修复法 更多请点击: https://codechina.net 第一章:AI写论文辅助 AI写论文辅助正迅速成为科研工作者提升学术产出效率的关键工具。它并非替代人类思考,而是通过语义理解、知识检索与结构化生成能力,协助研究者完成文献综述梳理、实验描述… 2026/8/6 6:25:47 HTML5文档结构与CSS布局核心:从盒模型到响应式设计实战 1. 从零开始:网页设计的核心骨架与第一行代码聊网页设计,很多人上来就直奔CSS和JavaScript,想着怎么把页面做得花里胡哨。但干了十几年,我越来越觉得,真正决定一个网页能否“立得住”、能否被正确理解和渲染的… 2026/8/6 6:25:47 11款主流数据库设计工具深度横评:从PowerDesigner到在线工具选型指南 1. 项目概述:为什么我们需要数据库设计工具?在任何一个稍具规模的应用开发项目中,数据库设计都是那块最核心的基石。它决定了数据的组织方式、存储效率、查询性能,乃至整个系统的可扩展性和可维护性。很多开发者,尤其是… 2026/8/6 6:25:47 科目一高效备考:从死记硬背到建立驾驶思维模型的系统方法 1. 科目一考试的本质:不是背题,是建立驾驶思维模型很多人一提到驾照科目一,第一反应就是“刷题”。打开App,对着几千道题库埋头苦干,试图通过肌肉记忆和题海战术来通过考试。我见过太多学员,模拟考能考98、… 2026/8/6 6:20:47 日新闻 深入解析LimboAI C++内核:架构设计与性能优化实战 1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#… 2026/8/6 0:00:05 Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发 1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界… 2026/8/6 0:00:05 被动防火门市场前景发展趋势 被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国… 2026/8/6 0:00:05 周新闻 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经从网易云音乐下载了心爱的歌曲&am… 2026/8/5 5:03:56 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比工程导读:本文深入讨论 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 在生产工程实践中的核心落地方案。基于 分布式架构与微服务设计 视角,剖析实际痛点、架… 2026/8/5 7:15:00 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhisper,… 2026/8/5 6:23:51 月新闻 【YOLOv11模型改进系列】08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 老伙计,咖啡准备好了吗?上篇我们聊了Mosaic+MixUp的“混乱美学”,你肯定已经体会到,手动调数据增强策略就像给模型当保姆——每换一个数据集就要重新试一遍参数。 上周有个做工业质检的朋友找我… 2026/8/5 7:15:27 AI 智能电动窗帘电机高集成、低功耗 MOSFET 精准选型方案 随着 AIoT 与智能家居深度融合,智能电动窗帘电机对功率 MOSFET 提出新要求:微型化、高效率、逻辑电平驱动及静音运行。微碧半导体(VBsemi)基于先进的 Trench 和 SGT 工艺,为您提供覆盖 H桥驱动、电源管理及电机控制的完… 2026/8/4 8:25:47 AI 智能电动窗帘电机智能功率 MOSFET 完整选型方案 随着 AI 技术在智能家居中的普及(如语音控制、光线感应、场景联动),电动窗帘电机对功率 MOSFET 提出更高要求:高效率、低噪音、高集成度。微碧半导体(VBsemi)基于 SGT 及 Trench 工艺,为您提供覆… 2026/8/6 6:12:06
Unity RTS游戏阵型系统优化:从卡顿到流畅的实战指南 1. 项目概述:从“能用”到“好用”的阵型进化论做RTS游戏,尤其是Unity里搞,阵型功能绝对是块硬骨头。早期版本里,你费老大劲实现了基础逻辑:框选一堆单位,右键点击地面,它们能稀稀拉拉地排成个方… 2026/8/6 5:20:34
如何快速上手Sabaki:免费优雅的围棋棋盘与SGF编辑器完整指南 如何快速上手Sabaki:免费优雅的围棋棋盘与SGF编辑器完整指南 【免费下载链接】Sabaki An elegant Go board and SGF editor for a more civilized age. 项目地址: https://gitcode.com/gh_mirrors/sa/Sabaki 想要一款专业又易用的围棋软件吗?Saba… 2026/8/6 5:20:34
Unity大文件下载优化:零GC断点续传与固定缓冲区实践 1. 项目概述与核心价值在Unity项目开发中,资源下载是一个绕不开的环节。无论是热更新资源包、动态加载的AB包,还是游戏内的视频、音频素材,动辄几百兆甚至上G的大小是家常便饭。如果你还在用UnityWebRequest或WWW的简单Get方法,遇… 2026/8/6 5:20:34
LabVIEW面向对象编程:从数据流到类与对象的工程实践 1. 项目概述:为什么LabVIEW开发者需要关注“类”?如果你接触LabVIEW有一段时间了,可能已经习惯了用数据流、连线、子VI(SubVI)来构建程序。你会觉得,用簇(Cluster)打包数据ÿ… 2026/8/6 6:25:47
PowerShell Universal Dashboard:无需前端技能,快速构建Web运维监控面板 1. 项目概述:为什么你需要一个基于PowerShell的Web仪表板?如果你是一个Windows系统管理员、DevOps工程师,或者任何需要频繁与PowerShell打交道的IT从业者,你可能已经厌倦了在黑色的控制台窗口里敲打命令,或者为了一个简… 2026/8/6 6:25:47
高校导师私下流传的AI论文润色清单(仅限内部分享版):7类语法陷阱+4种逻辑断层自动修复法 更多请点击: https://codechina.net 第一章:AI写论文辅助 AI写论文辅助正迅速成为科研工作者提升学术产出效率的关键工具。它并非替代人类思考,而是通过语义理解、知识检索与结构化生成能力,协助研究者完成文献综述梳理、实验描述… 2026/8/6 6:25:47
HTML5文档结构与CSS布局核心:从盒模型到响应式设计实战 1. 从零开始:网页设计的核心骨架与第一行代码聊网页设计,很多人上来就直奔CSS和JavaScript,想着怎么把页面做得花里胡哨。但干了十几年,我越来越觉得,真正决定一个网页能否“立得住”、能否被正确理解和渲染的… 2026/8/6 6:25:47
11款主流数据库设计工具深度横评:从PowerDesigner到在线工具选型指南 1. 项目概述:为什么我们需要数据库设计工具?在任何一个稍具规模的应用开发项目中,数据库设计都是那块最核心的基石。它决定了数据的组织方式、存储效率、查询性能,乃至整个系统的可扩展性和可维护性。很多开发者,尤其是… 2026/8/6 6:25:47
科目一高效备考:从死记硬背到建立驾驶思维模型的系统方法 1. 科目一考试的本质:不是背题,是建立驾驶思维模型很多人一提到驾照科目一,第一反应就是“刷题”。打开App,对着几千道题库埋头苦干,试图通过肌肉记忆和题海战术来通过考试。我见过太多学员,模拟考能考98、… 2026/8/6 6:20:47
深入解析LimboAI C++内核:架构设计与性能优化实战 1. 项目概述:为什么我们需要深入LimboAI的C内核?如果你是一名使用Godot引擎的游戏开发者,尤其是对AI行为逻辑有较高要求的项目,那么LimboAI这个名字你大概率不会陌生。它作为Godot 4生态中一个备受瞩目的行为树与状态机插件&#… 2026/8/6 0:00:05
Unity 2D游戏敌人AI系统:基于PlayMaker状态机与2D Toolkit的实战开发 1. 项目概述与核心思路大家好,我是老张,一个在游戏开发一线摸爬滚打了十多年的老码农。今天咱们接着聊《空洞骑士》风格2D动作游戏的Demo制作。上一期我们搭好了基础框架,处理了角色移动和碰撞,这一期,我们要让游戏世界… 2026/8/6 0:00:05
被动防火门市场前景发展趋势 被动防火门依靠材质结构、密闭构造阻隔烟火蔓延,无需电控启动,是建筑被动消防系统核心构件,行业依托新规管控、城市更新、工业安全升级迎来稳定扩容,整体朝着合规化、专项化、低碳化、智能化方向发展。现阶段 GB12955‑2024 新版国… 2026/8/6 0:00:05
ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 ncmdumpGUI:一键解锁网易云音乐ncm文件的终极解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经从网易云音乐下载了心爱的歌曲&am… 2026/8/5 5:03:56
分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比工程导读:本文深入讨论 分布式配置中心选型实战:Nacos与Consul在创业场景下的对比 在生产工程实践中的核心落地方案。基于 分布式架构与微服务设计 视角,剖析实际痛点、架… 2026/8/5 7:15:00
MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 MoneyPrinterPlus实战指南:AI视频批量生成与自动化发布完整解决方案 【免费下载链接】MoneyPrinterPlus AI一键批量生成各类短视频,自动批量混剪短视频,自动把视频发布到抖音,快手,小红书,视频号上,赚钱从来没有这么容易过! 支持本地语音模型chatTTS,fasterwhisper,… 2026/8/5 6:23:51
【YOLOv11模型改进系列】08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 08 数据增强的终极形态:用AutoAugment让YOLOv11自己学会“什么数据最有用” 老伙计,咖啡准备好了吗?上篇我们聊了Mosaic+MixUp的“混乱美学”,你肯定已经体会到,手动调数据增强策略就像给模型当保姆——每换一个数据集就要重新试一遍参数。 上周有个做工业质检的朋友找我… 2026/8/5 7:15:27
AI 智能电动窗帘电机高集成、低功耗 MOSFET 精准选型方案 随着 AIoT 与智能家居深度融合,智能电动窗帘电机对功率 MOSFET 提出新要求:微型化、高效率、逻辑电平驱动及静音运行。微碧半导体(VBsemi)基于先进的 Trench 和 SGT 工艺,为您提供覆盖 H桥驱动、电源管理及电机控制的完… 2026/8/4 8:25:47
AI 智能电动窗帘电机智能功率 MOSFET 完整选型方案 随着 AI 技术在智能家居中的普及(如语音控制、光线感应、场景联动),电动窗帘电机对功率 MOSFET 提出更高要求:高效率、低噪音、高集成度。微碧半导体(VBsemi)基于 SGT 及 Trench 工艺,为您提供覆… 2026/8/6 6:12:06