返回项目展示
截图 1
截图 2

项目描述

NadWars|基于 Monad 的多人链上策略游戏一分钟,四个战区。建造供电网络,切断敌方线路,与队友一起赢下战局。在线体验:nadwars.arenovo.com项目源码:github.com/iwbinb/NadWars1. 项目介绍NadWars 是一款基于 Monad 的多人能源攻防策略游戏。八名玩家分成两支队伍,在四个战区同时作战,通过建设线路、占领据点、攻击敌方设施和跨区支援,在一分钟内争取更高积分。游戏也提供双人练习模式,方便快速上手。建造、攻击、修复、供电判断和胜负结算都由智能合约执行。玩家的操作会改变链上地图,对局结束后可以通过交易记录和回放查看战斗过程。项目重点利用 Monad 的两项能力:MIP-8 存储优化:把经常一起读取的地图数据放在一起,降低操作的 Gas 消耗。并行执行:让不同战区尽量独立处理各自的变化,减少多人同时行动时的数据冲突。2. 游戏怎么玩?核心规则很简单:据点有电,才能得分。每个战区包含 49 个六边形地图单元。玩家从己方能源核心出发,建设中继线路,把电力送到目标据点。占领并保持供电,就能持续获得积分。敌人可以攻击关键线路,让下游据点断电、停止得分。你则需要修复受损设施,或者绕开被摧毁的节点,重新接通电力。一场对局的基本过程是:建设线路 → 占领据点 → 进攻或防守 → 断电与恢复 → 争取更多积分。标准模式还支持跨区支援。玩家可以消耗能源,用 5 秒前往相邻战区帮助队友,但移动途中无法战斗。因此,玩家既要守住自己的线路,也要判断什么时候值得支援。一分钟结束后,合约汇总四个战区的积分,确定获胜队伍。3. NadWars 如何利用 Monad 的优势?优势一:MIP-8,让检查地图更省 Gas一次攻击可能产生连锁反应:一个中继被摧毁,后面的线路失去连接,原本得分的据点随之断电。为了判断这些变化,合约需要读取多个地图单元。这些数据放在哪里,会影响每次操作需要消耗多少 Gas。可以把链上存储理解为一本资料册。如果经常一起查阅的资料分散在很多页,就需要不断翻页;如果放在同一页,找到这一页后,就能继续查看相关内容。Monad 的 MIP-8 引入了类似的存储机制:把连续的 128 个存储槽组成一个 4 KB 的“存储页”。同一笔交易访问过某页后,继续访问页内其他数据,可以采用成本更低的热访问计价。MIP-8 官方规范NadWars 把每个战区的 49 个地图单元,以及供电和计分数据,集中放进一个对齐的存储页。这样,合约处理攻击、检查线路和重新计算供电时,就能更多地在同一页内完成数据访问,减少访问不同存储页的额外成本。后续访问仍需付费,这种热访问效果也仅限于当前交易。实测:相同操作,累计回执 Gas 降低 76.03%为了验证效果,我们对比了两种使用相同游戏规则的合约:分散布局:地图单元分散存放。集中布局:按照 MIP-8 的存储页方式组织战区数据。八个本地账户在四个战区执行了 80 次相同操作。两种实现每一步的地图、供电和积分结果都一致。本地测试环境分散布局累计 Gas集中布局累计 Gas降幅MonadTen,支持 MIP-840,926,1359,810,54376.03%Ethereum Cancun 对照16,806,34716,406,2972.38%也就是说,在这组 Monad 测试中,集中布局执行同一批操作所需的回执 Gas,降到了原来的约四分之一。这说明,**针对 Monad 调整数据布局,可以为频繁读取地图的游戏操作带来明显收益。**Ethereum 对照中的收益较小,也与 MIP-8 鼓励同页访问的机制相符。数据说明:以上是旧版四分钟规则下的本地布局对照实验,并非 MIP-8 升级前后的直接对比。76.03% 表示该组操作的累计回执 Gas 降幅,不代表所有动作或当前一分钟版本的公网费用降幅。优势二:并行执行,让四个战区减少相互等待北区玩家建造线路时,南区玩家可能正在攻击敌人。这两次操作发生在不同地图上,本来就没有必要修改同一份游戏数据。Monad 支持并行执行交易,同时保持按链上交易顺序确定最终结果。应用中的数据依赖越少,就越有机会发挥这种能力。Monad 并行执行说明NadWars 因此采用了分战区设计:每个战区分别维护地图、供电和积分。每名玩家分别维护能源、冷却时间和动作序号。普通操作主要修改当前玩家和所在战区的数据。可以把它理解为四张同时开战的棋盘:各自处理本区变化,最后汇总团队比分。这种设计减少了不同战区之间的数据冲突,为利用 Monad 的并行执行创造条件。同一战区内相互影响的操作仍按链上顺序处理,实际公网吞吐收益还需要并发测试验证。两项优化的区别是:能力解决的问题MIP-8一次操作要检查很多地图数据,怎样读得更省?并行执行多个玩家同时行动,怎样减少操作之间的数据依赖?优势三:高性能 EVM,支持连续攻防体验NadWars 需要玩家不断观察并作出反应:线路断了要修复,据点失守要反击,队友陷入劣势要考虑支援。因此,交易处理和状态反馈速度会直接影响游戏体验。Monad 将高性能执行与 EVM 兼容性结合,让项目可以使用 Solidity 和现有 EVM 钱包,实现这种频繁改变链上状态的玩法。Monad 官方介绍NadWars 还实现了受限会话授权和 Gas 代付。玩家完成必要授权后,可以减少战斗期间反复弹出钱包确认的操作。合约负责检查权限、有效期和动作序号,防止越权或重复执行。链的执行能力与这些交互设计共同服务于一个目标:让玩家把注意力放在战局上。4. 已完成的功能多人对战:八人四战区与双人练习模式。完整攻防:建造、攻击、断电、修复、跨区支援和结算。链上规则:能源、冷却、供电关系和积分由合约约束。钱包体验:EVM 钱包连接、会话授权和 Gas 代付。对局恢复:房间邀请、断线恢复、结果展示和事件回放。Monad 优化:MIP-8 存储页布局、分战区状态设计和可复现的对照测试。项目已完成八个独立浏览器钱包参与的本地完整对局,共执行 61 次成功操作,覆盖四战区攻防、供电恢复、支援和结算,各页面结果与回放一致。这场验证采用旧版四分钟规则。当前一分钟规则已通过 5 项针对时长、计分和结束边界的合约检查。以上属于本地验证,不等同于公网八名真人实测。5. 项目价值NadWars 把 Monad 的技术特点放进了玩家能够理解的场景:攻击一条线路,合约判断哪些据点断电,积分随之改变;与此同时,其他战区的玩家继续建设、进攻和支援。MIP-8 降低地图访问的成本,分战区设计为并行执行创造条件,智能合约让攻防过程和最终胜负可以验证。NadWars 希望通过一个完整、可玩的游戏,展示 Monad 对多人链上互动的实际价值。~Bill | iwbinb@gmail.com

团队成员

Bill Solo

BBill
队长

元数据

创建者Bill
创建时间2026年9月5日
状态已归档
项目 ID#389