摘要
这篇文章介绍了一款名为"Shoshin," TPS-agnostic Asynchronous 全链上策略游戏,由Topology团队开发。该游戏目前正处于测试阶段,其游戏玩法让人想起街头霸王。两个角色被放置在 2D 竞技场中,互相战斗。
Shoshin 植根于「Street Fighter」等经典街机游戏,提供战略性的面对面战斗。玩家选择英雄,参与预先定义的策略或实时选择。这是通过一种语言来促进的,该语言使玩家(甚至非程序员)能够创建动态行为。
拓扑的方法强调在加深深度的同时降低复杂性。与实时机制不同,Shoshin 引入了独特的异步游戏玩法。
总体而言,Shoshin 重新定义了玩家与人工智能的交互,超越了传统的机器学习。直接的策略控制和可访问的行为设计重塑了战斗。随着 Topology 不断完善 Shoshin,它率先采用新的区块链驱动方法解决游戏中的人工智能挑战。
文章提供了游戏教程、附录以及相关参考资料。
游戏简介:
Shoshin 初心由 Starknet 生态原生游戏开发团队 Topology 开发,目前正在测试体验阶段,目前没有接入经济模型。游戏内所有数据将存储在链上,是一款完全的链上游戏。从玩法上来看,Shoshin 类似拳皇这样的街机游戏,玩家在游戏中将扮演一个英雄角色,通过操作、策略来击打敌方英雄,从而获得胜利。游戏中一共有两种操作模式,你可以为你的角色制定好一套固定的策略来进行作战,或者自己手动根据战斗情况进行即时的反击。
团队背景:
Topology 是 StarkNet 生态原生游戏开发团队。Topology 一心想要创造基于物理知识的全链游戏。在此之前,Topology 已经陆续推出 Isaac 和 Mu-Mu 两款游戏。
技术介绍- 来自 guiltygyoza
Shoshin 是异步的。整个 Shoshin 的游戏循环是用 Cairo 0 编写的,并在 CairoVM 中运行,由 lambdaclass 的 cairo-rs 进行仿真,然后 wasm 化,以便在浏览器中运行。您可以在浏览器中完全体验 Shoshin 的忠实游戏循环,而无需触碰区块链。
作为一个架构,Shoshin 就像一台计算机。在底层,玩家创建的策略被表示为有限状态机,过渡函数由二进制表达式树表示。
作为这个生态系统的一个里程碑,Shoshin 推动了 CairoVM 的可能性。因为,Topology 团队对可验证计算的未来充满热情。制作 Shoshin 是 Topology 团队表达这种热情的方式。
最后,作为使命,Shoshin 着手解决了 AI 问题中的「Photoshop」难题。Topology 团队认为,如果完全基于链上的游戏要成为一种具有重大影响的游戏类型,它必须直面游戏设计中的真正难题。
AI 的 Photoshop 是一个棘手的问题。一些项目通过采用机器学习来解决这个问题。然而,机器学习的本质是统计性的,训练好的模型被认为是一个黑盒子,这意味着玩家无法直接看到结果行为,也无法直接编辑。Shoshin 采取了不同的方法。
在 Shoshin 中,Topology 团队希望玩家可以直接控制他们战斗策略的每一点。除此之外,Topology 团队还希望那些从未在生活中编写过计算机程序的人也能享受 Shoshin。Topology 团队需要为他们提供一个能够描述丰富动态情境行为的易于理解的语言。在理论计算机科学中有一个概念叫做科尔莫戈洛夫复杂性。对象(如一段文本)的科尔莫戈洛夫复杂性是以预定的计算机语言编写的最短计算机程序的大小,该程序将该对象作为输出生成。例如,在 BrainFuck 语言中编写的二进制排序算法的科尔莫戈洛夫复杂性非常高。用 JavaScript 呢?复杂性会大大降低。Topology 团队借用了这个概念,并表示:我们希望设计一种语言,使玩家可以用尽可能低的科尔莫戈洛夫复杂性创建 Shoshin 策略。
Topology 团队还意识到,他们不能被复制流行格斗游戏的机制所诱惑。像《街头霸王》、《铁拳》、《罪恶装备》、《龙珠斗士 Z》和《超级大乱斗》这样的游戏机制虽然很精彩,但它们诞生于优化实时游玩的设计路径。而 Shoshin 并不是实时游玩。
游戏玩法机制的设计
Shoshin 的玩法整理偏向于街机,在整场游戏中只有我方英雄和敌方英雄两个人物,在一个二维的平面赛场中进行 PK。值得一提的是,游戏给予了玩家两种操作模式。第一种是需要你根据对局情况,在游戏开始前制定好你整场游戏中英雄的每一个动作,这里包括了移动,连招,躲闪,击打等类型。并且在这些动作之前加上了相对应的触发条件,而这些条件完全由玩家自己来设计。
而第二种就与我们所玩的拳皇很相似,通过即时操作形成反馈,在游戏中取得胜利,如下图所示。
玩法心得体会
Shoshin 让我看到了跟传统游戏不一样的游戏体验,街机类游戏其实大家都不陌生,但是在与区块链的链上存储属性结合后,他出现了一种全新的玩法。其实一开始玩的时候我会认为游戏非常的简单,因为你的对手不一定是实时地在操作,可能只是别人已经制定好的策略在跟你对打,那这样的话我只需要多尝试几次打法就可以做到见招拆招。尤其是在第二种模式中,我可以根据对方的策略进行反击。一开始我基本上是百战百胜,即使有的时候失败了,我可以根据对方的策略进行调整。
但是当你游戏的难度越来越高,遇到的玩家越来越强之后,这个游戏才刚刚开始。你会想着制定一套无敌的策略,由于触发机制的类型分得非常细,几乎可以预示到游戏中每个玩家的任何一个操作,它可以对应所有战斗场景。这个时候就是脑力的比拼,如何设计一套必胜的打法变成了这个游戏的核心玩法,它再也不是那种游戏中的及时反馈能给你带来快乐的模式,而是你早上起床发现所有尝试与你较量的敌人全都死在你的刀下,这是对自己智力的认可。
游戏教程
进入游戏官网,如果你是初次进入游戏,会有一个自动化的教程,这里面基本上包含了所有的玩法教学。
主要分为两个模式 Campain 模式需要玩家在比赛开始前,在游戏右侧制定好策略,随后与其他玩家存储在链上的策略进行战斗,玩家可以通过不断改变策略来获得胜利。点击进入。
当前版本一共有两个英雄可以选择,当你使用该英雄获得战斗胜利之后,不仅可以获得积分,还能增加对应的进度。确定选择的英雄之后点击继续。
选择完英雄之后会显示当前英雄的一些技能和常用连招,这可以帮助你更好地击败对手。随后选择你的对手,这些对手的信息都是存储在链上的,如果你也选择存储在链上,只需要一次交互即可完成。
点击战斗,等待几秒钟将正式进入游戏。右侧一共有八种类型的触发条件可供你选择。
同时也有 14 个动作来完成这些条件的触发,这些动作中的最后一个代表了连招。需要注意的是,触发条件的判定从上向下,并且不会跳过某一个优先级更高的条件,简单的说,你不可能同时触发两个条件,即使在游戏中存在这样的情况。点击左边的播放按钮开始比赛。在比赛的过程中,战斗画面下方代表着目前英雄的状态以及执行的操作
触发条件如下
1. 距离
对手与你之间的距离。由于开局双方处在地图的两侧,所以会有一定的距离,需要通过移动才能进入有效的攻击距离。此外,不同技能的攻击距离也不同,需要通过条件触发来完成动作。
2. 对手行为
这里又细分成对方是在攻击,防守,躲避等。面对敌人不同的动作进行相应的技能反击,比如对方在进攻时你就可以防守,当对方进入进攻间隙的时候就可以反击。
3. 对手的愤怒值
愤怒值代表了对方是否可以使用大招,面对大招,你需要做出相应的反击。
4. 对手生命值
不同的生命值所使用的策略也是完全不同,结合技能才能有效完成一条连招带走。
5. 我的状态
在不同状态下,选择适用的动作能更好地规避伤害或者发起攻击。
6. 我的愤怒值
愤怒值满了开大。
7. 我的健康
满血可以浪一点,残血了就需要稳住。
8. 永远触发(无限制)
能选择的动作如下
1. 休息
2. 攻击
3. 上挑
4. 侧击
5. 防守
6. 前进
7. 后退
8. 前冲刺
9. 后冲刺(躲闪)
10. 跳
11. 必杀技
12. 低踢
13. 嘲讽
14. 组合技:可以选择多个技能进行排序。
如果选择的是 ARCADEMODE 模式,那就是街机模式,通过操控键盘来取得胜利。