火星链 火星链
Ctrl+D收藏火星链
首页 > SAND > 正文

KAM:深度解析全链游戏引擎MUD

作者:

时间:1900/1/1 0:00:00

游戏引擎在游戏开发中发挥着至关重要的作用。对于全链上游戏来说,同样需要一个能够帮助开发者快速部署游戏逻辑的工具。这不仅能够缩短开发周期,还为后续的迭代开发和开放生态中的互操作提供了统一的数据标准。

传统游戏引擎

游戏引擎是一种用于开发和创建电子游戏的软件框架。它包括了游戏开发所需的许多核心功能,对于传统的Web2游戏来说,一般包含如渲染引擎、音频处理、物理模拟和动画系统等。通过使用游戏引擎,开发者能够专注于游戏设计和创意,而无需从头开始构建整个技术基础设施。游戏引擎为游戏开发者提供了一个快速有效的工具,以降低开发成本和时间。

有许多知名的Web2游戏引擎,如Unity、UnrealEngine和Godot等。这些引擎不仅适用于专业开发者,也适用于独立开发者和初学者。游戏引擎具有高度可定制性,可以根据项目需求进行调整。它们通常支持跨平台开发,允许开发者为多种设备创建游戏。此外,许多引擎还提供了对虚拟现实和增强现实的支持,以满足不断发展的技术需求。游戏引擎还包含了一套丰富的工具集,可以帮助开发者轻松地创建游戏世界、角色和物品。这些工具有助于实现高效的游戏开发流程,例如可视化的场景编辑器、脚本编辑器以及动画和特效工具等。

IOST战略投资去中心化金融项目RAMP DEFI 并达成深度合作:据官方消息,IOST与Alameda Research, ParaFi Capital, Arrington XRP Capital, Torchlight Ventures, Signum Capital, Blockwater, Ruby Capital, MW Partners, LayerX Capital和MoonRock Capital等基金共同私募投资了去中心化金融项目RAMP DEFI 。除战略投资外,IOST还与RAMP DEFI达成了深度合作,将共同打造繁荣的DeFi生态。据悉,RAMP DEFI推出TVU (Total Value Unlocked) 的概念来衡量在DeFi生态中解锁出来的流动价值,即将于2周内进行公募。[2020/8/24]

全链游戏引擎

游戏引擎在游戏开发中发挥着至关重要的作用。对于全链上游戏来说,同样需要一个能够帮助开发者快速部署游戏逻辑的工具。这不仅能够缩短开发周期,还为后续的迭代开发和开放生态中的互操作提供了统一的数据标准。

在这个领域中,较为成熟的项目是由Lattice工作室开发的基于Solidity的全链游戏引擎MUD。它使开发者能够迅速将游戏逻辑部署到智能合约中,并实现合约与客户端状态的同步等功能,从而显著提高开发效率。

声音 | 哈尔滨市委:推进区块链等技术与实体经济深度融合:在25日召开的哈尔滨市委十四届七次全体会议上,哈尔滨市委提出,明年重点抓好六个方面工作,紧扣全面建成小康社会目标任务,分别为坚决打好三大攻坚战、推动经济高质量发展、统筹推进乡村全面振兴、聚力攻坚改革开放、推进新区和自贸试验区联动发展和织密扎牢民生保障网。其中,推动经济高质量发展中,要推进工业强市,大力发展数字经济,推进互联网、大数据、人工智能、区块链技术与实体经济深度融合。(黑龙江日报)[2019/12/26]

值得注意的是,目前全链上游戏除了采用Solidity编写外,StarkNet的Cairo也是一种常用的语言。然而,MUD并不能很好地兼容Cairo。因此,StarkNet生态中的两个活跃项目Realms和Briq的创始人共同开发了基于Cairo的全链上引擎Dojo。由于Dojo的核心理念与MUD相似,引发了MUD创始人Ludens的不满。但在一番争议之后,Ludens最终表示愿意协助将MUD部署到StarkNet上。

ECS架构

开发游戏引擎时遇到的最大问题是如何表示游戏对象,游戏对象可以从没有控制或交互的简单2D图像到具有控制、声音、动画和AI的异常复杂3D对象。在概念上,很容易将游戏对象理解为表示游戏中具有多个功能的实体。最开始使用面向对象变成OOP的架构,现在更为流行的是ECS架构。

动态 | 京东云与京东数科深度合作 共推区块链“上云”:7月17日消息,京东云在京宣布与京东数科达成区块链技术服务领域的深度合作。双方发布智臻链“云”建设规划,同步上线了“区块链防伪追溯”、“区块链数字存证”两款SaaS应用。[2019/7/17]

ECS通过将逻辑、数据和实体分离,提高了游戏开发的灵活性和可维护性。这种架构模式有助于降低代码复杂度,减少耦合,从而提升性能和开发效率。ECS由以下三个主要部分组成:

实体:实体是游戏世界中的基本对象,如角色、道具或场景物体等。实体本身并不包含任何数据或逻辑,而只是一个唯一标识符,用于关联组件和系统。

组件:组件用于存储实体的属性和数据。每个组件负责表示一个特定的特征或功能,例如位置、速度或生命值等。组件只包含数据,不包含任何逻辑。通过将不同的组件组合在一起,可以轻松地创建具有各种功能和特性的实体。

系统:系统负责处理游戏逻辑和行为。系统根据实体所拥有的组件来执行相应的操作。例如,一个处理移动的系统会查找具有位置和速度组件的实体,并根据其速度更新位置。系统独立于实体和组件,使得游戏逻辑更加模块化和可复用。

动态 | Adamant Capital:比特币目前处于深度积累阶段:据cryptoinsider报道,比特币基金Adamant Capital的创始合伙人Tuur Demeester与联合创始人Michiel Lescrauwaet发布了一份关于比特币当前价格行为和地位的深度报告,称比特币目前正处于深度积累阶段。该报告指出,比特币在2012年和2015年的报告里被显著低估。随着比特币从历史最高价格下跌75%,该基金认为目前是“价值投资者的特殊机会”。在这个积累阶段,该公司预计比特币的交易价格将在3000美元到6500美元之间,直到新牛市永久性地将比特币推至数万亿美元的资产类别。[2019/4/20]

ECS模式有助于解决传统面向对象编程在游戏开发中的一些问题,如继承层次过深和代码重用困难等。ECS使得游戏对象的构建更加灵活,可以通过组合不同的组件轻松创建出复杂的行为。此外,ECS还有助于优化性能,特别是在处理大量游戏对象时。许多现代游戏引擎,如Unity和Godot,已经采用了ECS作为其核心架构。

全链游戏和Web2游戏甚至常见的GameFi游戏有很大不同,比如,编程语言多采用Solidity,游戏对象的属性状态储存在智能合约中,这就导致面向对象编程完全无法使用,只能采用ECS架构。

我们来看Solidity,其实已经在不知不觉中使用过这种模式的变体。以ERC-20合约为例:ERC-20合约将每个地址的代币余额存储在一个映射中。我们可以将每个ERC-20合约视为一个具有两列的表:"地址"和"余额"。这对应于具有单个模式值的组件。表中的每行都将一个实体与一个组件值关联起来。一个地址可以在许多独立的ERC-20合约中持有余额,这对应于一个实体与许多独立的组件值关联。在当前的ERC-20参考实现中,状态和逻辑是耦合在同一个合约中的。在ECS中,我们将有一个通用的"转账系统"来处理从一个地址向另一个地址转账代币的逻辑,通过修改代币组件中存储的状态。

金色财经现场报道 中国工程院院士刘韵洁:未来网络要适应与实体经济深度融合:在Ulord公链发布会上,中国工程院院士刘韵洁表示,全球产业界正在纷纷进行未来网络的布局,我们国家发改委正在进行未来网络基础设施的工程立项。高清视频传输业务需要区块链技术支撑才能发展下去,高速网络、5G、云计算和大数据如何和区块链更好结合,还需要大量的探索和研究。[2018/5/22]

另一个例子是一个简单的视频游戏,可用的组件有"位置"和"生命值"。具有位置的实体在位置组件中有一个条目,具有生命值的实体在生命值组件中有一个条目。"移动系统"可以实现将实体从一个位置移动到另一个位置的规则。"战斗系统"可以根据涉及实体位置的规则实现战斗逻辑,并修改实体的生命值。

MUD游戏引擎

MUD是一个以太坊应用程序框架。其核心是一组合约接口和使用它们的约定。这些核心接口和库使得一系列周边工具、集成和库能够更加顺畅地进行,从而使链上应用程序的开发变得更加简洁。

MUD可以实现如下功能

目前

在合约和客户端之间进行状态同步,无需定制网络代码

通用索引器

无缝合约升级

合约共享状态

Optimistic更新

合约和系统的自动生成类型

与合约状态进行交互的查询语言

用于检查和修改合约和本地状态的数据浏览器

位打包实用工具

未来

本地模拟事务

内置支持账户抽象化

合约包管理器

MUD的框架包含8个库文件。

SOLECS是MUD的核心Solidity库,包含了链上组件、系统等的接口和参考实现。由于所有状态都存储在组件中,并且所有状态更新都在中心World合约中注册,MUD可以提供开箱即用的网络逻辑,以实现合约和客户端状态的同步。

RECS是用TypeScript实现的一种响应式ECS库。它可以独立于任何链上组件使用,但也可以与SOLECS共同使用,以便在客户端上以相同格式镜像链上状态。

Services包含了使用上述方法同步链上状态的通用索引器。

Network是智能合约和节点做状态同步的库。

基于StarkNet的Dojo在功能上和MUD非常类似,甚至可以认为是用Cairo语言把MUD重新写了一遍,所以不再具体讲解。在MUD的开发者文档中给出了一个具体的例子来教会大家如何在一天时间就能开发出一个全链游戏:Emojimon。感兴趣的朋友可以参考这篇官方教程:https://mud.dev/tutorials/emojimon/

基于MUD开发的游戏

SkyStrife

SkyStrife是一个基于MUD构建的链上游戏。游戏以快节奏的实时战略战斗为特点,展开一场争夺谁能带着“EmberCrown”逃离战场的激战。

Kamigotchi

Kamigotchi是一款具有PvP机制的多人在线角色扮演闲置游戏。您可以使用您的Kamigotchi从世界各地散布的节点中收获$KAMI。$KAMI可用于升级您的Kami并购买食物。然而,收获会消耗您的Kami的生命值,当生命值较低时,其他玩家可以使用他们的Kami猎杀您的Kami。您需要保持您的Kami充饥并仔细观察它们以获得最大产出。死亡并不是永久的,核心NFT不受影响,但这会让您付出代价——被杀死的Kami在游戏中无法再次使用,除非使用商店中的某些消耗品复活,当然这需要$KAMI。此外,您的Kami会因为这次经历而心情受挫。

MuddyForest

MuddyForest是一款完全基于链上的大型多人在线实时战略太空征服游戏,游戏中的每个动作,从运输、发送资源到占领星球等,都发生在区块链上。

文:JustinZhao

原标题:深度解析全链游戏引擎MUD

标签:KAMIKAMTAL区块链Kawakami InuAKAMARU币Data Vital区块链中的代币是什么

SAND热门资讯
ROL:比较以太坊ZK系6 个Layer 2 项目:探索 ZkEVM 的技术差异

Layer2扩展是目前行业最关键的问题之一,原先L1是由以太坊本身实现的,在以太坊区块链上运行智能合约平台,但由于以太坊的原始架构存在吞吐量限制和高昂交易手续费等问题.

1900/1/1 0:00:00
区块链:金色早报 | Bittrex:估计负债和资产都在5亿至10亿美元之间

头条▌Bittrex:估计负债和资产都在5亿至10亿美元之间根据破产追踪机构Chapter11Dockets的RandallReese分享的一份法庭文件,交易所Bittrex认为它有超过100.

1900/1/1 0:00:00
CHAT:一周 AIGC 丨白宫宣布首个 AI 监管计划,中国 AI 领域或面临美国全面投资禁令

世界经济论坛最新发布的报告显示,未来几年,因人工智能和经济增长放缓等因素,全球就业形势将受到严重冲击。全球近四分之一的工作岗位将发生变化,其中一些将被淘汰,还有一些将被创造出来.

1900/1/1 0:00:00
CRY:a16z致创业者:Web3产品服务定价策略的6个关键点

本文来自a16zCrypto,原文作者:JasonRosenthal?&?MaggieHsu,由Odaily星球日报译者Katie辜编译.

1900/1/1 0:00:00
EPE:币圈“土狗”万倍狂欢:一面暴富,一面归零

在币圈,有一类奇葩的虚拟代币项目颇受追捧,人们通常叫它“土狗”。这些项目一般团队匿名,没啥技术含量,强调草根文化,甚至会明说“代币没有价值”.

1900/1/1 0:00:00
NFT:操作指南:24个比特币生态项目和工具全盘点

自Ordinals协议将BTCNFT带火之后,BRC-20又成为了用户、CEX?争抢布局的新赛道。这些新协议的出现让一向「古板」的比特币链又重新焕发生机.

1900/1/1 0:00:00