作者:Gametaverse
一般来说,游戏是基于循环的系统(loop-based)。游戏循环是一个不断重复的过程,通常包含处理用户输入、更新游戏状态和渲染游戏世界这几个步骤。这个循环在游戏运行期间持续进行,通常每秒运行数十次到数百次,以保持游戏世界的流畅性。
然而,区块链的架构是基于推送(push-based)的。区块链是一个分布式的数据库,它通过网络中的节点共享和存储信息。当一个节点产生一个新的交易(如转账、合约调用等)时,这个交易会被推送到网络中,其他的节点收到这个交易后会验证它并将它添加到区块链中。这是一个被动的过程,节点不会主动去查找新的交易,而是等待网络中的其他节点发送新的交易。因此,区块链的架构被称为是基于推送的。
因此,在全链游戏中实现一个带有时钟周期的循环系统就变得非常重要。毕竟在所谓的“自治世界”中,我们都希望一些NPC或者虚拟环境是可以自动的随时间演化,而不是跟随被推送到区块链的交易输入被动演化。
Bicc币交所早期投资人王小彬:如何在安全前提下实现高速处理是区块链底层公链突破重点之一:金色财经现场报道,“2020 Cointelegraph中文大湾区·国际区块链周”8月5日-7日在深圳举行。Bicc币交所早期投资人&CWV主链基金会管理人王小彬跨洋连线“公链下一轮,CWV2.0如何回答”,他表示,如何在安全的前提下实现高速处理是区块链底层公链突破的重点之一。CWV2.0相对传统公链在速度方面优势非常明显,因为采用了VRF(随机验证方法)共识,CWV2.0在运行过程中,通过随机函数确保出块节点的公平性和去中心化控制,同时在块高度上实现PBFT容错能力,使得VRF的主链更加稳定,在账本层面可以很好地实现快速出块。[2020/8/7]
@therealbytes 开发了一个基于OP Stack的概念验证型滴答链(带有时钟周期的链),它运行了一个自动滴答的康威生命游戏实现,我们下面来了解他到底是如何实现的。
声音 | 中国市场学会理事张锐:无论Libra命运如何 Facebook都是大赢家:7月18日,中国市场学会理事、经济学教授张锐发表文章《无论Libra命运如何,Facebook都是大赢家》。文章指出,由于Libra锚定了银行存款、政府债券以及一篮子货币,完全可以量度商品的价值,同时可以充当商品交换的媒介,并作为标的进入公众财富的储藏范畴。因此,即便是Libra不能获得全球性法定货币的身份,但它完全能够以数字货币的身份像比特币那样在商品与服务流通领域长袖善舞,而且庞大的用户群体为其创造的价值空间一定比任何一种数字货币要广阔宽泛得多。不仅如此,Libra还可像微信和支付宝那样打开数字金融与数字社会的入口,从而将Facebook带入新的商业模式。[2019/7/18]
为保持翻译的简单,我们把 tick 直译成“滴答”,意思就是“循环时钟周期”。
Ticking-Optimism 是一个基于Optimism Bedrock rollup架构的“滴答区块链”的概念验证实现。
现场 | 降维安全CTO:交易所应该如何保护数字资产:12月16日,由ChainUP主办,节点资本等联合主办的“Future BlockChain”全球行活动在韩国举办。降维安全CTO在会议中表示,交易所主要面临Hacker、恶意量化团队、恶意用户、恶意项目方这些外部攻击。具体到黑客攻击有以下四点:DoS勒索、Web渗透/APT社会工程学攻击以及利用区块链项目自身的漏洞进行攻击。据降维安全统计,交易所应用(不涉及期货合约)风险,共有5大类,14个子类,68个风险点。他表示:专业的事情应该交给专业的人做,选择专业的交易所系统和专业的安全服务商,非常重要。[2018/12/16]
在滴答链中,有一个特殊的智能合约叫做“滴答合约”,每个区块都会被协议自动调用。这允许其他智能合约在特定的时间或间隔自动触发,无需用户发送交易。
Optimism的新的模块化rollup架构,Optimism Bedrock,引入了一种新的交易类型叫做“存款交易”(Deposit Transaction)。与常规交易不同,存款交易:
英国央行希望了解实时总结算服务如何与分布式账本技术进行交互:据英国央行的声明显示:英国央行正在进行一项概念验证,并希望了解实时总结算服务(RTGS)如何与分布式账本技术进行交互。2017年5月时,英国央行曾发布了RTGS蓝图,表示新服务将提供“多样化和灵活的结算模式”,随后,央行宣布要开发一种与区块链技术兼容的支付服务,但在最近的声明中,英国央行拒绝了要将业务迁移至分布式账本的提议。[2018/3/29]
- 来自 Layer 1 的区块。
- 不需要签名验证。
- 在L1上购买L2的gas,所以L2的gas是不可退还的。
在原始的Bedrock中,存款交易用于两件事:
- 执行直接发送到L1的交易。
- 在每个区块中为预先部署的L2合约设置L1属性(编号、时间戳、哈希等)。
在后一种情况下,交易由rollup节点创建。它不支付gas,使用的gas不会从gas池中扣除。
韩国政府召开紧急会议 讨论如何遏制加密货币投机:首尔12月13日电 韩国政府周三召集了相关部委的紧急会议,讨论如何在当地投资者日益担忧财务损失的情况下遏制加密货币投机。会议汇集了司法部,财政部,科学部和ICT部,金融服务委员会,韩国通信委员会,公平贸易委员会和国家税务局的高级官员。比特币和以太坊等加密货币近年来迅速普及。韩国是世界上最大的比特币交易所之一,约有100万人拥有最知名的数字货币。[2017/12/13]
Ticking-Optimism修改了rollup节点,也创建了一个“滴答交易”(tick transaction),工作方式相同,但不是设置L1属性,而是在预先部署到地址0x42000000000000000000000000000000000000A0的合约中调用tick()函数。这个合约可以通过设置其目标变量来调用另一个合约。
为了说明滴答链的威力,想象一个区块链上的游戏,其中多个NPC(非玩家角色)在地图上移动。没有滴答链,我们有两种主要的设计方法:
- 懒更新(Lazy updating)。在客户端,NPC似乎连续移动,但它们的位置只有在用户发送与它们互动的交易时才在链上更新。然后,合约根据其最后的链上更新和自那时起经过的区块数计算NPC的新位置。
- 手动滴答(Manual ticking)。我们定义一个更新函数,设置地图上每个NPC的位置,并有一个外部帐户定期调用它。
使用滴答链,解决方案与手动滴答相似,但滴答合约会自动调用更新函数,而不是手动调用。
使用滴答链的“自动滴答”而不是手动滴答的优点是:
- 更新由协议保证。
- 更新将在块中的所有交易之前执行,不能被前置,因为它是协议本身的一部分。
- 更新交易不参与常规的gas市场。
然而,自动滴答需要一个定制的区块链。如果更新率相同,手动和自动滴答对节点的计算资源需求相同。另一方面,懒更新通常更便宜,因为链上更新更小、更少。
此外,随着需要更新的状态增长,滴答交易的计算成本也增加。这给开发者带来了额外的压力,要求他们设计他们的应用程序,确保成本永远不会超过链所能支持的。
尽管有这些巨大的缺点,自动滴答对于某些类型的应用程序比懒更新更合适。
1. 状态始终明确地在链上并且是最新的
滴答使智能合约能够以恒定的成本访问一个动态状态,该状态使用开放形式的表达式更新。
状态(在上面的例子中,是NPC的位置)总是可以在链上以恒定的、相对较低的gas成本读取。但是计算当前状态的成本会随着自上次更新以来的区块数增加时,gas成本增加的也比较多。
如果我们正在更新一个以恒定速度移动的实体的位置,我们可以从其最后设置的位置和自更新以来的区块数计算出它应该在任何给定的区块中的位置。这个操作的成本不会随着更新之间的区块数增长。
另一方面,如果我们更新的状态是像康威的生命游戏(或三体重力模拟)这样的东西,更新的成本与自上次更新以来的步骤数成线性增长。这是一个问题,因为它可以增长到超过用户愿意支付的或链所能支持的。
2. 客户端的作用不同
使用懒更新,更新逻辑需要在智能合约和客户端中都实现。使用滴答,只需要在区块链上实现,客户端可以简单地对链上事件做出反应。
3. 代码更简单,更容易审核
懒更新使开发者将他们的更新逻辑分散在许多函数和智能合约中,每个函数只在执行某些交易时触发。相比之下,滴答方法只需要一个保证定期触发的更新函数。后者使得更容易维护状态的一致性和完整性。
此外,每次添加一个新的懒更新状态(例如,一个新类型的NPC)时,所有更新函数可能都需要修改以考虑它。这使得代码库更复杂,更容易出问题。
4. 用户不支付更新成本
懒更新的成本通常变化很大,用户可以制定他们的交易,使大部分更新的负担落在其他人身上。使用滴答,所有操作的成本都相对稳定,不容易受到MEV攻击。
我构建了一个滴答链的演示,运行一个交互式版本的康威的生命游戏。链已经修改,包括在执行引擎中的细胞自动机逻辑,使其更高效,允许比作为智能合约字节码实现的更大的游戏板。
演示的源代码:https://github.com/therealbytes/ticking-conway
演示视频:https://www.youtube.com/watch?v=za12aa5FS6E&list=PL_97Yn8lCzTI_P_4vO1HEXA9k6gF6lawF&index=11
金色财经
企业专栏
阅读更多
Web3活动
Techub Info
区块律动BlockBeats
金色财经 善欧巴
金色早8点
比推 Bitpush News
TaxDAO
SeeDAO见道
WJB
白话区块链
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。