Dark Forest的灵感来自于著名的科幻小说《三体2:黑暗森林》,其是首款 **全链上的不完全信息类 **游戏。
作为一款太空MMORTS游戏,其能同时容纳上千名玩家在随机生成的无垠宇宙中探索、建造和彼此征服,同时所有玩家的行为和状态都会更新上链,却不向他人公开。
Dark Forest想法最早的提出者及创始人是 @Gubsheep,他正巧参加完一个关于零知识证明的会议,便被刘慈欣所描绘的黑暗森林理论所折服,于是便有了一个利用零知识证明,创造一个“加密世界中的黑暗森林”的想法。
在最开始这只是一个非常实验性甚至带有些玩票性质的想法,毕竟游戏作为一个高频交互的应用,在当时乃至现在的区块链环境中都面临着巨大的挑战,更别说将刚刚萌芽的零知识证明应用到如此复杂的系统当中,谁也没曾想Dark Forest不仅实现了这个概念,同时也成为了区块链历史上的一个里程碑。
早期黑暗森林团队的主要成员由 Gubsheep、@Alan(Sir Waddles)、@Ivan 和 @Moe 构成。
团队在2020年的8月7号正式推出了游戏的第一个**测试版V0.3**,部署于以太坊的Ropsten测试网。玩家需要获得早期发放的邀请码方能参与游戏,测试版本开放一周后结算删档,根据获得积分进行排名,并对Top15名的玩家设置了1024DAI的奖池,第一名将获得256DAI的奖励。该版本在上线后没多久,就获得了V神的亲自盖章推荐。
随着社区的成长,后续也有了更多的成员和志愿者的加入,包括 @Scott Sunarto、@spencecoin.eth、@Andy 等社区成员都为Dark Forest的发展做出过许多杰出贡献。
在2020年10月2日,Dark Forest的V0.4版本 正式上线,该版本部署在了xDAI STAKE网络上,可参与的玩家数量为V0.3的两倍,同时采用了Burner Wallet(一次性钱包),并将开放时间增加至了10天。与V0.3类似,玩家需要获得邀请码方可参与,并同样设有1024DAI的奖池分配给最终排行榜的前15名玩家。
Dark Forest的**V0.5版本** 则上线于2020年的圣诞节,开放时间增加至了14天(2020/12/25 - 2021/01/08),这个版本中增加了十分重要的插件系统,同时也加入了可被探索的特殊NFT。
V0.6版本 则是Dark Forest最新的一个版本,该版本共分为了5轮,时间跨度长达9个月,增加了许多新的功能和游戏元素,并且发生非常有意思的《一段”史诗般”的故事》。
目前Dark Forest官方的V0.6版本 已经结束,且尚未公布下一轮的相关消息,根据过去版本的要求,通常会需要获得邀请码方能参与官方轮,一般有多余邀请码的玩家会在DF的官方Discord中分享,同时上一轮测试中获得过积分的玩家也会拥有一定数量的邀请码。
但除了官方轮,玩家们也可以多留意相关社区自行组织的社区轮,早期社区轮的举办对社区运维和开发能力的要求较高,主要有较有实力的社区举办,比如最早MarrowDAO的 《For Pioneer》 和dfDAO的 《新年社区轮》。
在2022年4月7日Dark Forest团队开发了相关的 Lobbies系统,能让社区快速的完成一键开服,后续包括277DAO在内的社区和个人都曾借助该系统筹办过数轮社区轮次。
而如果只是想感受下Dark Forest基本游戏操作的小伙伴,可以去dfDAO开发的Arena系统中创建一个小宇宙体验一下,或是使用ProjectSophon提供的DarkForest本地版进行体验
作为一款RTS即时战略游戏,资源是游戏展开的核心,而最核心的资源便是 天体的能量,玩家通过 传输能量 来完成对天体的 守护 与 侵占,在整个宇宙探索和占领星球过程中,获得的资源将会被 转化为积分,最终在轮次结束时根据积分评定排名和奖励。
这一节仅对游戏的界面和核心元素做简单的介绍,想了解更全面详细的内容推荐MarrowDAO的这篇《黑暗森林不完全指南》,有条件的朋友则更推荐YouTube上 Spencecoin的视频介绍。
登录界面
用户在官网进入会首先会看到的是一个非常原始的代码登录界面。
但用户只需要填对应选择的编号即可完成钱包的创建,创建好的钱包会将 私钥储存在浏览器中。
如果需要更换浏览器或电脑则需要将 私钥导出 后,在新的端上 重新导入。
游戏界面
在完成登录后,玩家便会进入到这样的初始界面中,正中央的便是玩家被随机分配至的母星。
右下角 红色框框 内则是前述提到的属性信息,下面也有关于天体类别和所有者的信息;
左上角 红色圈圈 内的则是玩家目前的积分情况;
右侧的代码Feed 则是所有行为的记录与反馈,可以看到行为是否有成功上链;
而如果将视野缩放一下,就能看到蓝色范围外布满了灰色的战争迷雾,和正在一格一格探索的游标;
到这里游戏就正式开始了,玩家可以通过按住母星,将鼠标拖动至想要占领的目标星球完成首次的能量传输。
Dark Forest是一个十分自由开放的MMO策略类游戏,而且每一轮的游戏机制都会有略微的变化,因此需要玩家自由的发挥自己的想象力,去构建游戏内或是游戏外的打法。(没错,你完全可以去各大社区里面尔虞我诈一番来获得胜利LOL)
但通常而言,在开局的最早一段时间内都属于资源的积累期,在这个阶段,玩家普遍会先安装好自己顺手的插件,然后开始扩展视野,寻找蓝色Nebula区域外的黑色区域Deep space中合适的行星作为早期据点,并不断巩固自己的据点网络,同时开始寻找神器增加实力。
有了早期的基础之后,便可根据自己的风格开展不同的战术部署,无论是向往星辰大海的探索型玩家,还是想赚点小钱的神器商人,亦或是主张斗争的侵略型玩家都有丰富的余地去施展自己的拳脚。
在这里推荐一篇由MarrowDAO成员@xiangcai.eth分享的《Dark Forest个人策略心得》,对新人玩家而言会是非常不错的参考。
而如果想要了解更大规模的战争,可以看看这场由spencecoin记录的约战,由Ner0nzz(v0.6.1排名第2) 和 0x000da (v0.6.2排名第7)两位顶尖玩家在私下约定的规则中展开的一场宇宙鏖战,同时Ner0nzz也用一篇文章从自己的视角用阐述了整场战役。
前面我们对全链上游戏的定义以及Dark Forest进行了快速的介绍,但为什么Dark Forest那么重要,一个明明看上去十分粗糙简陋的游戏,为何会成为深入加密世界或是链上游戏过程中绕不开的名字?这就需要去了解Dark Forest到底实现了什么:
全链上 Fully On-Chain, FOC
在Dark Forest之前,全链上游戏的可行性一直都处于一个概念性的假设当中,因为游戏与其他的应用不太一样,尤其是想实现多人实时在线类的游戏,其有着对网络延时极高的敏感以及高强度的交互要求。
比如MMORPG或者MOBA类,可能一个玩家一秒内就会有10个以上的操作,和普通只需要和系统交互的应用不同,这些操作的交互对象即包括了系统,还包括了正在发生交互的其他玩家,而每个操作都需要获得即时的反馈才能推进游戏的进展,这在当时平均仅有12-15TPS的以太坊网络上显然是不可能的事情。
并且要将游戏全部放至链上,也就意味着这些交互程序都需要以智能合约的形式部署,这对于游戏种类的选择以及游戏逻辑的设计都带来了极大的挑战。
而Dark Forest是第一个将这种概念性想法付诸实施的项目,其将所有的游戏规则和逻辑都以合约的形式部署至了链上,使玩家和宇宙的状态都会在任何交互发生后,实时更新在链上。因此即便时至今日,Dark Forest仍然可以称得上是整个区块链中最复杂的应用之一。
**zk-SNARK实现不完全信息博弈 **
在博弈的类型当中如果按照参与者掌握的信息程度来划分,可以被划分为完全信息博弈和不完全信息博弈,区别就是参与者是否能完全掌握彼此所有的信息,完全信息博弈中最典型的案例就是国际象棋,因为棋盘是公开的,所以参与者是在相同的信息基础上做决策;而不完全信息博弈的典型案例就是德州扑克,除了台面上公开的五张牌之外,玩家还有各自的两张底牌,这便提升了决策的挑战性。
在网络电子游戏中,不完全信息博弈最典型的元素便是 ”战争迷雾“,通过对视野的遮蔽来实现信息的不对称性。但该方法在曾经的区块链中几乎无法实现,因为一旦所有的游戏交互逻辑上链,玩家的交互内容和状态也会被更新至链上,变成透明可查的状态,因此战争迷雾也失去了意义。
但Dark Forest则首次采用零知识证明算法zkSNARK,实现了对玩家交互信息的隐藏,使区块链上的不完全信息博弈变得具有可行性,同时也丰富了zk技术的应用场景和全链上游戏的可能性。
开源全链上游戏的模式赋予了Dark Forest一种非常重要的特质,那就是**“Permissionless Interoperability 无许可的互操作性 ”**。
Dark Forest本质上是一个以太坊智能合约,像是某种协议或规则,这首先意味着其不再受到特定客户端的局限(Client Agnostic),任何有能力的人都可以用自己喜欢的视觉形态,创造一个前端客户端来调取后端合约的参数;同时,这也意味着任何的 地址 都能与其交互,无论该地址背后是人、机器人或是另外一个智能合约,这不仅扩展了游戏策略的边界,也催生出了一个繁荣的插件生态(Plugin)。
在这个生态中,玩家们自发的去组合、构建和尝试各种各样的事物与玩法,从而形成了一个有机的社区。过程中所创造的东西也完全超出了官方的预期,比如神器的交易市场、天体的交易市场、行星的赏金系统甚至是战斗AI等等,这些插件的出现增添了更多的游戏目的和玩法,也让更多类型的玩家可以参与进来。而Lobby系统的推出以及链上引擎的发展,更是连规则也得到了释放,玩家可以自由的设定宇宙规则来开展游戏。
这种开放的高组合性属性,毫无疑问的大幅拓展了游戏可能性的边界,让游戏玩家本身可以参与到游戏体验的构建当中,而不再是依赖于官方团队。
如上文所述,随着Dark Forest的发展,生态成为了其非常重要的存在,甚至可以说在核心规则/合约部署完之后,就没官方什么事儿了,正如他们自己定位的一样,他们就如同实验室里的科学家,布置好培养皿的生长环境后,就静静期待着菌群的自由发展和演化。这里会对部分有料可考的社区及插件生态做一个简单的描绘,若想全面的了解,非常建议亲身参与到整个生态中进行体验:
插件是整个Dark Forest中堪比灵魂的存在,目前仅经官方审核收录于的插件库的开源插件便达55款插件,在这里将仅做概述性的介绍。
通过使用目的我们可以大致的将插件分为3大类:
可视化:由于Dark Forest原生的游戏界面相对简洁,因此便出现了许多能帮助信息更好呈现的插件,相对常用的包括:
数据的可视化: Heat Map热力图、小地图Mini Map、能计算星球间传输时间的Voyage Time、DF Archon开发的地图导出工具Map Filter Export等
特定目标的高亮或标记:DF Archon开发的两个抱团必备插件 友善标识Peace Dove 和 高亮好友 Highlight Friends,高亮星球buff的 Hightlight Buffs等等
交易市场:只要提供不同资源交换的平台,给玩家增加了新的游戏动机,主流的包括:
自动化:这类插件使用的频率通常更高,主要通过脚本帮助玩家简化原本复杂繁琐的操作,提升执行效率:
资源相关:神器的捕获和管理两件套 Hunt Artifacts、Artifactory、银矿的一键分配Distribute Silver、一键汇集资源Centralize Resources等等
战斗相关:一键捕获周边星球 Crawl Planets、自动重复攻击Repeat Attack、一键协同攻击Simultanous Attack、甚至能直接针对玩家发起战争的Wage War等等
除了官方审核收录的开源插件外,更有大量玩家或社区自主开发的插件或客户端,由此而构建出了丰富的游戏体验和多样性的玩法,甚至有社区玩家开发一个能自己玩Dark Forest的AI。这种围绕核心宇宙规则,向下无限展开丰富血肉,有玩家自由构建游戏体验和组合工具的开放生态模式,让Dark Forest拥有了比传统中心化游戏更广阔的可能性。