链抽象Omnichain就是把跨链规则写入智能合约
随着公链和layer2链的数量越来越多,资产和Dapp的跨链需求也开始增多,跨链桥自然是一种比较常见的解决方案,但以Zetachain为代表的Omnichain走出了一条完全不同的道路,本文将以Zetachain为例,解释Omminchain是如何把跨链规则写入智能合约从而实现跨链互操作的去中心化的。几种跨链技术方案跨链(Cross-Chain)技术的核心目标是实现不同区块链之间的互操作性(Interoperability)。互操作性是指不同的区块链系统能够相互理解和使用对方的资产(如代币、加密货币等)和数据,或者在不同的区块链平台上运行的应用能够相互交互和协作。这一目标的实现,可以极大地增强区块链生态系统的灵活性和扩展性,打破不同区块链平台之间的孤岛效应,从而促进更加广泛的应用和发展。 根据跨链消息的处理方式以及相应资产的签名授权方式的不同,可以分为以下几个技术方案:跨链桥(Cross-Chain Bridges): 跨链桥是一种使资产能够从一个区块链转移到另一个区块链的技术。它通过锁定在源链上的资产,并在目标链上发行相应的代表性资产(或等价资产)来实现这一过程。这种方式支持资...
全链上游戏2023年度总结
2023年全链游戏发展介绍全链上游戏在2023年有了非常显著的进展,日益吸引了大家的注意力。我们认为有以下几个原因,Jump Crypto 在年初明确了全链游戏这个概念的内涵和外延,使全链游戏和GameFi两个链游子赛道做出了明确的区分。ECS架构的游戏引擎在年初开始出现,使得建立链上复杂应用更加方便。Ticking Chain 的出现使得全链游戏的逻辑帧刷新率有了质的飞跃,从而制作全链游戏的类型从回合制扩展到了需要高刷新率的即时策略类。AA钱包在2023年开始普及,可以极大的提高全链游戏的操作体验,从此不用再对每一步上链操作进行签名授权。ZK技术随着ZK-Rollup的普及得到迅猛发展,帮助全链游戏从制作信息对称的游戏扩展到“非对称信息游戏”。自主世界(Autonomous Worlds)这个叙事从极客圈层开始渗出到VC圈层,主要归功于两次比较大的行业事件,第一个是5月份 ETHGlobal 和 0xPARC 以及 Lattice 举办的名为“Autonomous Worlds Hackathon”线上黑客松。另一个是11月份在伊斯坦布尔举办的名为“Autonomous Wor...

全链游戏101: 预编译合约
什么是预编译合约?预编译合约是 EVM 中用于提供更复杂库函数(通常用于加密、散列等复杂操作)的一种折衷方法,也可以理解为一种特殊的合约,这些函数不适合编写操作码。 它们适用于简单但经常调用的合约,或逻辑上固定但计算量很大的合约。 预编译合约是在使用节点客户端代码实现的,因为它们不需要 EVM,所以运行速度很快。 与使用直接在 EVM 中运行的函数相比,它对开发人员来说成本也更低。 如下代码可以看到, evm.go的合约中run函数有两个分支:第一个分支是通过预编译索引来实例化索引参数从而指定预编译合约,第二个分支是如果它不是预编译合约那evm将会被调用。// run runs the given contract and takes care of running precompiles with a fallback to the byte code interpreter. func run(evm *EVM, contract *Contract, input []byte, readOnly bool) ([]byte, error) { if contract.Cod...
<100 subscribers
链抽象Omnichain就是把跨链规则写入智能合约
随着公链和layer2链的数量越来越多,资产和Dapp的跨链需求也开始增多,跨链桥自然是一种比较常见的解决方案,但以Zetachain为代表的Omnichain走出了一条完全不同的道路,本文将以Zetachain为例,解释Omminchain是如何把跨链规则写入智能合约从而实现跨链互操作的去中心化的。几种跨链技术方案跨链(Cross-Chain)技术的核心目标是实现不同区块链之间的互操作性(Interoperability)。互操作性是指不同的区块链系统能够相互理解和使用对方的资产(如代币、加密货币等)和数据,或者在不同的区块链平台上运行的应用能够相互交互和协作。这一目标的实现,可以极大地增强区块链生态系统的灵活性和扩展性,打破不同区块链平台之间的孤岛效应,从而促进更加广泛的应用和发展。 根据跨链消息的处理方式以及相应资产的签名授权方式的不同,可以分为以下几个技术方案:跨链桥(Cross-Chain Bridges): 跨链桥是一种使资产能够从一个区块链转移到另一个区块链的技术。它通过锁定在源链上的资产,并在目标链上发行相应的代表性资产(或等价资产)来实现这一过程。这种方式支持资...
全链上游戏2023年度总结
2023年全链游戏发展介绍全链上游戏在2023年有了非常显著的进展,日益吸引了大家的注意力。我们认为有以下几个原因,Jump Crypto 在年初明确了全链游戏这个概念的内涵和外延,使全链游戏和GameFi两个链游子赛道做出了明确的区分。ECS架构的游戏引擎在年初开始出现,使得建立链上复杂应用更加方便。Ticking Chain 的出现使得全链游戏的逻辑帧刷新率有了质的飞跃,从而制作全链游戏的类型从回合制扩展到了需要高刷新率的即时策略类。AA钱包在2023年开始普及,可以极大的提高全链游戏的操作体验,从此不用再对每一步上链操作进行签名授权。ZK技术随着ZK-Rollup的普及得到迅猛发展,帮助全链游戏从制作信息对称的游戏扩展到“非对称信息游戏”。自主世界(Autonomous Worlds)这个叙事从极客圈层开始渗出到VC圈层,主要归功于两次比较大的行业事件,第一个是5月份 ETHGlobal 和 0xPARC 以及 Lattice 举办的名为“Autonomous Worlds Hackathon”线上黑客松。另一个是11月份在伊斯坦布尔举办的名为“Autonomous Wor...

全链游戏101: 预编译合约
什么是预编译合约?预编译合约是 EVM 中用于提供更复杂库函数(通常用于加密、散列等复杂操作)的一种折衷方法,也可以理解为一种特殊的合约,这些函数不适合编写操作码。 它们适用于简单但经常调用的合约,或逻辑上固定但计算量很大的合约。 预编译合约是在使用节点客户端代码实现的,因为它们不需要 EVM,所以运行速度很快。 与使用直接在 EVM 中运行的函数相比,它对开发人员来说成本也更低。 如下代码可以看到, evm.go的合约中run函数有两个分支:第一个分支是通过预编译索引来实例化索引参数从而指定预编译合约,第二个分支是如果它不是预编译合约那evm将会被调用。// run runs the given contract and takes care of running precompiles with a fallback to the byte code interpreter. func run(evm *EVM, contract *Contract, input []byte, readOnly bool) ([]byte, error) { if contract.Cod...
Share Dialog
Share Dialog
介绍
Dark Forest是一个基于以太坊区块链的去中心化策略游戏,玩家可以在游戏中采集资源、建造基地、发展科技、收集武器,与其他玩家进行战斗并争夺资源。
在Dark Forest中,每个玩家都掌握着自己的星球,并需要在星球上采集资源,建造基地和发展科技来提高自己的战斗能力。玩家可以使用资源生产建筑、科技研究和武器制造设施,以便在战斗中获得优势。
当玩家在星际空间中飞行时,他们需要通过不断的侦察和探索来发现其他星球和资源。当两个玩家同时发现同一颗星球时,他们可以选择对该星球发起进攻或者选择逃离。在进攻时,玩家需要使用自己的武器来攻击对方的基地,并夺取对方的资源。
Dark Forest的特点在于游戏完全基于区块链技术,每个玩家的星球和资源都存储在区块链上,无法被篡改或者删除。此外,Dark Forest也是一个去中心化游戏(DeGame),没有中央服务器控制游戏进程,而是由所有玩家共同维护和决策。
Dark Forest 也是首次在全链去中心化游戏中引入战争迷雾系统的游戏,得到了V神的肯定。我们将在本文深度拆解,来探讨这样一个即时策略游戏如何在全链环境中实现。不定时@DfArchon 会举办”Community Round“,感兴趣的同学也可以参加测试一下。我们从游戏类型说起,先对MMORPG和MMORTS游戏做对比:
MMO -RPG游戏:多人在线角色扮演,开放世界,游戏有始无终,游戏的乐趣在于身临其境体验故事性和元宇宙游戏世界。比如,魔兽世界。
MMO-RTS游戏:多人在线策略对抗,相对小的封闭世界,游戏一轮有始有终,游戏的乐趣在于在故事背景下的多人对抗,需要用到策略来获得资源发展然后消灭敌人。典型代表,星际争霸,魔兽争霸,一局在20-40分钟。
DF是MMORTS游戏,因为可以同时参与的人多(可达上千人),区块链TPS有限制,所以一轮(round)持续时间在10天左右,胜负以天梯得分排名为准,得分主要来自于游戏中获取的资源(PVE的自由获取和PVP的掠夺)。游戏暂停期间,用户不可与游戏合约交互。

最早只有官方举行 Official Round 的时候,需要邀请码(key)登录来参与,现在有了lobby功能,任何人都可以创建自己的round,所以就有了所谓的 community round(类似于社区举办的一场比赛)。进入主页 https://zkga.me/ ,点击 ”Create Lobby“,会进入 Lobby 设置页面,如下图

Game settings:通过更改能量/银币的恢复速度以及航行速度可以修改游戏速度。
World Size:通过修改宇宙半径来改变地图的大小。
Space Type & Biome: 选择游戏地图。
Planets:设定行星的基础参数。
Player spawn:生成玩家的参数设置。
Space junk:该游戏道具的参数设置 。
Capture zones:占领区参数设置。
Artifacts:该游戏道具的参数设置 。
Admin permissions:设置是否打开白名单玩家。
Advanced Snarks:战争迷雾参数设置。
关于 Lobby 更多的使用技巧,请参考这篇官方的解答:
https://blog.zkga.me/introducing-dark-forest-lobbies
Dark Forest 表面上看起来很复杂,但其实它的基本游戏规则很简单:行星有能量值,此能量值会随着距离的延展而衰减,行星间的跳跃就是互相攻击,攻击的胜负是以衰减后的能量值大小来判定。当然了,也已经有很多文章和视频来讲述如何玩游戏,这里不做更细致的分享。

开发者文档对游戏的开发架构做了一些框架性的解释,分别针对插件开发者,网页客户端开发者,游戏合约开发者和ZK电路开发者。

Connect to the Blockchain
游戏运行在xDai的layer2上面,也就是现在的Gnosis Chain,因为游戏在运行中需要和合约有大量交互,所以内置RPC节点。Gnosis 团队甚至为这个游戏开通了一个游戏专用节点。
Plugins
黑暗森林允许玩家通过插件系统自定义默认的网页客户端。 插件是玩家可以编写的代码片段,用于生成游戏数据的替代视图、自动化常见的游戏流程,甚至重新设计游戏皮肤。 从本质上讲,Dark Forest 允许玩家以他们喜欢的任何方式与网络客户端进行编程交互。
Mining
黑暗森林的关键机制是它的密码战争迷雾。 当第一次加入游戏时,您不知道其他玩家所在的位置。玩家必须计算哈希值才能发现宇宙中的兴趣点,例如行星和其他玩家的位置。 这些哈希值保存在浏览器的本地存储中,并被视为秘密数据。默认情况下,Dark Forest 默认 Web 客户端使用单线程 Javascript 矿工来探索宇宙,但您可以采取多种措施来提高哈希率,比如改变挖掘按钮旁边的CPU核心。 如果您尝试将内核数设置为大于您计算机的实际内核数,您的矿机性能将趋于平稳。


当玩家的矿工发现宇宙区域地图时,网页客户端会将与这些未发现区域相关的信息保存到浏览器的本地存储中。黑暗森林将数据保存到 IndexedDB。 玩家也可以通过运行一台远程服务器来充当探索位置地图的矿工。
Snarking
黑暗森林由 ZK-Snark 技术提供支持,ZK-Snark 技术是一种密码技术,可用于在不泄露函数的输入或逻辑的情况下证明函数的正确性。黑暗森林使用这种技术来验证游戏中的移动是否有效,而不会向在链上窥探的人们透露行星的位置。 这种技术(Zk-snark Proof Generation)在计算上非常昂贵! 所以该ZK-Proof将计算移到浏览器之外,需要本地运行一个Node.JS。当然了,游戏也允许使用一台远程服务器来运行这个服务。
作为一个有着极强创新性的全链游戏,Dark Forest 的发展确显得缓慢。一个可能的原因是,这是一个社区推动的项目,虽然可以保证去中心化,但也因此影响了开发效率。上次 official round是在2022年2月。Webclient更新是在2020年10月,第三方(社区)插件更新还稍微活跃一些,包括2022年7月的nightmarket(匿名交易行星坐标),2022年3月的lobby。
介绍
Dark Forest是一个基于以太坊区块链的去中心化策略游戏,玩家可以在游戏中采集资源、建造基地、发展科技、收集武器,与其他玩家进行战斗并争夺资源。
在Dark Forest中,每个玩家都掌握着自己的星球,并需要在星球上采集资源,建造基地和发展科技来提高自己的战斗能力。玩家可以使用资源生产建筑、科技研究和武器制造设施,以便在战斗中获得优势。
当玩家在星际空间中飞行时,他们需要通过不断的侦察和探索来发现其他星球和资源。当两个玩家同时发现同一颗星球时,他们可以选择对该星球发起进攻或者选择逃离。在进攻时,玩家需要使用自己的武器来攻击对方的基地,并夺取对方的资源。
Dark Forest的特点在于游戏完全基于区块链技术,每个玩家的星球和资源都存储在区块链上,无法被篡改或者删除。此外,Dark Forest也是一个去中心化游戏(DeGame),没有中央服务器控制游戏进程,而是由所有玩家共同维护和决策。
Dark Forest 也是首次在全链去中心化游戏中引入战争迷雾系统的游戏,得到了V神的肯定。我们将在本文深度拆解,来探讨这样一个即时策略游戏如何在全链环境中实现。不定时@DfArchon 会举办”Community Round“,感兴趣的同学也可以参加测试一下。我们从游戏类型说起,先对MMORPG和MMORTS游戏做对比:
MMO -RPG游戏:多人在线角色扮演,开放世界,游戏有始无终,游戏的乐趣在于身临其境体验故事性和元宇宙游戏世界。比如,魔兽世界。
MMO-RTS游戏:多人在线策略对抗,相对小的封闭世界,游戏一轮有始有终,游戏的乐趣在于在故事背景下的多人对抗,需要用到策略来获得资源发展然后消灭敌人。典型代表,星际争霸,魔兽争霸,一局在20-40分钟。
DF是MMORTS游戏,因为可以同时参与的人多(可达上千人),区块链TPS有限制,所以一轮(round)持续时间在10天左右,胜负以天梯得分排名为准,得分主要来自于游戏中获取的资源(PVE的自由获取和PVP的掠夺)。游戏暂停期间,用户不可与游戏合约交互。

最早只有官方举行 Official Round 的时候,需要邀请码(key)登录来参与,现在有了lobby功能,任何人都可以创建自己的round,所以就有了所谓的 community round(类似于社区举办的一场比赛)。进入主页 https://zkga.me/ ,点击 ”Create Lobby“,会进入 Lobby 设置页面,如下图

Game settings:通过更改能量/银币的恢复速度以及航行速度可以修改游戏速度。
World Size:通过修改宇宙半径来改变地图的大小。
Space Type & Biome: 选择游戏地图。
Planets:设定行星的基础参数。
Player spawn:生成玩家的参数设置。
Space junk:该游戏道具的参数设置 。
Capture zones:占领区参数设置。
Artifacts:该游戏道具的参数设置 。
Admin permissions:设置是否打开白名单玩家。
Advanced Snarks:战争迷雾参数设置。
关于 Lobby 更多的使用技巧,请参考这篇官方的解答:
https://blog.zkga.me/introducing-dark-forest-lobbies
Dark Forest 表面上看起来很复杂,但其实它的基本游戏规则很简单:行星有能量值,此能量值会随着距离的延展而衰减,行星间的跳跃就是互相攻击,攻击的胜负是以衰减后的能量值大小来判定。当然了,也已经有很多文章和视频来讲述如何玩游戏,这里不做更细致的分享。

开发者文档对游戏的开发架构做了一些框架性的解释,分别针对插件开发者,网页客户端开发者,游戏合约开发者和ZK电路开发者。

Connect to the Blockchain
游戏运行在xDai的layer2上面,也就是现在的Gnosis Chain,因为游戏在运行中需要和合约有大量交互,所以内置RPC节点。Gnosis 团队甚至为这个游戏开通了一个游戏专用节点。
Plugins
黑暗森林允许玩家通过插件系统自定义默认的网页客户端。 插件是玩家可以编写的代码片段,用于生成游戏数据的替代视图、自动化常见的游戏流程,甚至重新设计游戏皮肤。 从本质上讲,Dark Forest 允许玩家以他们喜欢的任何方式与网络客户端进行编程交互。
Mining
黑暗森林的关键机制是它的密码战争迷雾。 当第一次加入游戏时,您不知道其他玩家所在的位置。玩家必须计算哈希值才能发现宇宙中的兴趣点,例如行星和其他玩家的位置。 这些哈希值保存在浏览器的本地存储中,并被视为秘密数据。默认情况下,Dark Forest 默认 Web 客户端使用单线程 Javascript 矿工来探索宇宙,但您可以采取多种措施来提高哈希率,比如改变挖掘按钮旁边的CPU核心。 如果您尝试将内核数设置为大于您计算机的实际内核数,您的矿机性能将趋于平稳。


当玩家的矿工发现宇宙区域地图时,网页客户端会将与这些未发现区域相关的信息保存到浏览器的本地存储中。黑暗森林将数据保存到 IndexedDB。 玩家也可以通过运行一台远程服务器来充当探索位置地图的矿工。
Snarking
黑暗森林由 ZK-Snark 技术提供支持,ZK-Snark 技术是一种密码技术,可用于在不泄露函数的输入或逻辑的情况下证明函数的正确性。黑暗森林使用这种技术来验证游戏中的移动是否有效,而不会向在链上窥探的人们透露行星的位置。 这种技术(Zk-snark Proof Generation)在计算上非常昂贵! 所以该ZK-Proof将计算移到浏览器之外,需要本地运行一个Node.JS。当然了,游戏也允许使用一台远程服务器来运行这个服务。
作为一个有着极强创新性的全链游戏,Dark Forest 的发展确显得缓慢。一个可能的原因是,这是一个社区推动的项目,虽然可以保证去中心化,但也因此影响了开发效率。上次 official round是在2022年2月。Webclient更新是在2020年10月,第三方(社区)插件更新还稍微活跃一些,包括2022年7月的nightmarket(匿名交易行星坐标),2022年3月的lobby。
No comments yet