解读MOPN:如何设计一款
解读MOPN:如何设计一款NFT放置挖矿全链游戏?
作者:Shew Wang & 白丁,极客web3
摘要:
可能每个人都有自己设计一款游戏的冲动,闲暇时的各种脑洞如果组合到一起,能否促成一款游戏的诞生?如果让你自己设计一款全链游戏,你会怎么做?可能想着容易做起来难,如果你真的下场设计一款全链游戏,需要考虑的问题其实比想象的更多更复杂。
本文以一款名为MOPN的NFT放置挖矿游戏为例,其主要玩法是在有限的公共土地上放置NFT来赚取收益,即放置挖矿。在设计这款游戏时,游戏设计者不但要考虑为其原生Token制造销毁/通缩场景,还要思考怎么反女巫、为关键的数据指标构造合适的数学公式,以及解决全链游戏对预言机等第三方组件的依赖。
下文中,我们将从MOPN的机制设计和经济模型等多角度展开解析,帮助更多人理解Web3游戏的设计思路和全链游戏的实现路径。
MOPN游戏规则简述
作为一款Token本位的放置游戏,MOPN的核心玩法很简单:该游戏创建了一个包含近100万个地块的开放地图,玩家在开放地图上放置NFT以获取奖励。MOPN中包含4种资产:
1. MOPN的原生Token——MT(MOPN Token),
2. 用于放置NFT的地块——MOPN Land
3. 玩家放置在地块上的NFT
4. 炸掉地块上已有NFT时使用的炸弹Bomb
其中,MT Token是游戏内的核心资产,所有经济活动都与MT相关,玩家把NFT放置于某个地块后,可以根据NFT的积分权重和放置时间获得MT奖励。NFT放置挖矿产出的MT,90%会被该NFT的主人获得,5%的挖矿产出被地块的主人获得,相当于地租,5%进入该NFT所属IP的金库(比如BAYC有自己的游戏内金库)——Collection Vault中,相当于税收。
在MOPN的设计方案中,地块隶属于名为MOPN Land的NFT。MOPN LAND总供应量为10981个,每个Land覆盖地图上的91个地块,所有Land合起来覆盖了地图中全部近100万个地块。
Land的获得途径包括铸造和拍卖。玩家获取Land后,可以将其放置在地图上,激活那些处于休眠状态的地块,被Land覆盖后激活的地块才可以放置NFT。任何玩家都可以把NFT放置在某个Land下辖的地块上,但要把5%的收益分给地主(Land的所有者)。
MOPN游戏规则中比较有趣的是, 你可以用“炸弹”把你周围的异类NFT清理掉。游戏规定,以你放置NFT的地块为中心,两个地块的距离内,不能有其他IP系列的NFT(比如BAYC和胖企鹅就是彼此冲突的IP)。此时,如果你非要在这个地块放置NFT,那就要用炸弹将异类NFT清除。
最终达到的效果如下图:每个NFT周围两个地块的距离内,都是同类NFT。
总体概括,游戏的规则比较简单:把自己的NFT放置在某个地块上获取挖矿奖励,你要分一部分挖矿产出给地主,同时你要保证自己周围没有非同类NFT。
另外,MOPN为参与放置挖矿的NFT合集配备了特定的Collection Vault金库,由于MOPN是全链游戏,与NFT相关的市场数据不应依赖于预言机,所以MOPN设置了Collection Vault通过特定机制来获取NFT市场价格等场外信息(后面会提到怎么实现)。
上述规则构建起了以 MT Token为核心的经济系统,如图所示。下文中,我们将从游戏设计者的视角,对MOPN的实现方式进行简要介绍。
ERC-6551账户解析
MOPN为每个参与放置挖矿的NFT创建了ERC-6551抽象账户,而ERC-6551账户是MOPN游戏系统的核心组件,大量的业务逻辑都依赖于它来实现。
ERC-6551标准源自EIP-6551,旨在为NFT创建专属的AA钱包账户,让NFT可以像普通的以太坊用户一样拥有诸多权利。比如说,你可以为BAYC注册一个ERC-6551账户,利用该账户进行收款及链上操作。当用户转让NFT时,相应ERC-6551 账户的所有权也会被一并转移。
这么做有什么意义呢?在某游戏场景中,假设以太坊地址A拥有一个名为Bob的虚拟游戏角色,而Bob本身是以ERC-721 NFT的形式来实现的,其持有多个道具(如帽子、鞋子、武器等)以及其他资产(如金元宝),这些资产可能借ERC-20、ERC-721等形式来实现。虽然这些道具在游戏的设定中被视为属于Bob,但在底层合约的视角,上述资产关联在地址A名下。