不到一天,打造自己的 Llama NPC

科技   2024-08-13 22:02   广东  


作者:txohyeah

审阅:outprog

来源:内容公会 - 新闻

排版:AyamGoreng



参与 Llama Land,打造自己的 Llama NPC,攫取平台的红利 


Llama NPC 的红利


放在开篇,先来讲下我们为什么要开发 Llama NPC!


Llama Land 的流量


这点其实是依托于 Llama Land 的平台获得的红利,为自己的项目导入 Llama Land 的流量。就好像自己发的朋友圈的视频,能看到的只有自己的几个朋友,但是当视频发抖音的时候就有可能被抖音的用户看到。就好像 Llama Lottery NPC 中接入的 Llama Lottery 项目。仅仅 3 天时间,就有近 100 人参与,而参与人次更是已经超过了 200。项目的作者仅仅就发了一个推特,没有做过其他任何推广。对了,题外话,该推特还有幸得到了 Sam 等大佬的转载。


高效的开发体验


在已有项目的基础上,仅仅接入一个 Llama NPC 所需要的开发时间不会超过半天。并且对于项目的验证阶段,甚至等于省去了前端开发、部署等工作,就可以完成自己项目的 MVP 验证。


官方 Quest 奖励


现在官方还对于 Llama Land 平台生态的开发者发布了包括开发 Llama World,Llama NPC,The Best use of Llama coin 在内的 3 个任务,一共提供了 1000 AR 的高额奖励。


接下来我们就来介绍下 Llama Land,这个基于 AO 和 AI 的平台。



什么是 Llama Land 游戏


Llama Land 是一款前沿的大型多人在线(MMO)游戏,它以 AI 技术为核心,构建于先进的 AO 平台之上。这是一款全链游戏,所有的游戏数据与代码都被永久地存储在 Arweave 区块链上。另外,游戏具有超强的可扩展性。基于 Reality Protocol,任何人都可以在 Llama Land 中创建自己的 NPC,甚至是子世界。因此,相较于称之为游戏,我更倾向于把它当作是元宇宙的一次实践。


Reality Protocol 是开发 Llama Land 的底层协议,现在已经完全开源。


Reality Protocal 文档与开源代码:

https://github.com/elliotsayes/Reality/blob/main/docs/Reality.md




一些简单玩法介绍


截至本文撰写的时间。游戏已经允许了前一万名玩家进入游戏,并且开放了新的二万二千个排队的名额。每天可以通过登录来完成每日任务获取一个随机的 Llama coin 奖励。在排队的小伙伴也可以通过每12小时进行一次 Claim,获得 5 Llama coin 的奖励。最重磅的莫过于与 Llama King 进行对话来获取 Llama coin 的奖励,每次对话需要 0.025 个 wAR,每次奖励会按照你提供的 prompt 进行分级。最高有 100 Llama coin 的奖励。其中对 prompt 的分级就是依赖于运行在 AO 上的 AI 进程实现的。



另外,还有越来越多玩家自定义的 NPC,也可以与他们互动,相信玩法会越来越丰富。比如,Arweave 生态的老牌 swap 应用,已经提供了 Permaswap Llama,可以直接通过该 NPC 在上面换取 Llama coin。也有 Llama Lottery NPC,已经有超过 200 人次参与。



友情链接:


通过跨链桥获取 wAR:https://aox.arweave.dev/#/beta



Llama Land 强大的扩展性


简单介绍游戏之后,我们接下来进入今天的主题。首先,我们先来介绍下 Llama Land 强大的扩展性。


  1. Llama Land 强大扩展性的基础是 AO,Llama Land 游戏的设计逻辑也是遵循了 Actor Model。正是因为这个超并行计算机的支持,才让这种扩展性成为了可能。


  2. Llama Land 可以支持构建自己的世界。只需要通过画图软件 Tile,画出一个自己心仪的地图。然后再通过一个 AO 进程加载一个实现 Reality Protocal 的 lua 文件(也可以直接加载官方提供的模板 lua 文件),轻轻松松几分钟就可以构建一个自定义的地图。


  3. Llama Land 可以支持玩家自己添加自定义的 NPC。后面会更详细的介绍这块内容。



如何构建自己的 Llama NPC


准备工作


因为 Llama NPC 本质上就是一个 AO Process,因此创建一个 AO Process 是必须的。另外,由于需要移动 NPC,监听一些事件等需求,因此我们需要创建一个支持定时任务的 AO Process。另外,为了业务的方便,我们可以创建带有 sqlite 的 AO Process(这点可选)。



注册自己的 Llama NPC



Action = "Reality.EntityCreate" 这个 Action 就是注册自己 NPC 的句柄。如果自己创建了,那么在执行就会更新这个 NPC。


Data 里面存在很多的字段,具体含义如下:


  • Type 可以是 Avatar、Hidden、Unknow。


  • Avatar 是一个 user 或者是一个 AO Process。


  • Hidden 是一个不可见的实体,比如可以用作地图上的传送点。


  • Unknow 则会忽略该实体。


  • DisplayName 是显示在 Llama NPC 上的名字。


  • SkinNumber 可选的皮肤。有 0~9 一共 10 个数字可选,分别对应 10 种不同的 Llama 皮肤。另外,目前已经支持通过 Arweave 上的 txId,以后 Llama Land 可以容纳下更多玩家的创意了。例如,PlayerSpriteTxId = '0WFjH89wzK8XAA1aLPzBBEUQ1uKpQe9Oz_pj8x1Wxpc' 是官方提供的一个新的皮肤。


  • Interaction 是交互方式,包含 4 种交互方式。


  • Default(默认):当点击 Llama NPC 的时候会像点击它的玩家发送一条消息。


  • Warp:用作传送点,传送到其他地图。


  • Schema:允许玩家基于表单的方式,向 Llama NPC 发送一条消息。


  • SchemaExternalForm:允许玩家基于表单的方式,向指定的一个进程发送一条消息。这个特性就非常有用了,可以把玩家自己开发的各种应用集成到 Llama Land 中。文中提到的 Permaswap NPC 以及 Llama Lottery NPC 均是基于这个特性完成的。


Llama NPC 的移动以及自定义交互


如果 Llama NPC 被注册到地图中以后,长时间没有交互信息,那么 Llama NPC 就会从地图中下线。如果你想要让自己的 Llama NPC 在地图上持续存在,一般有两种方式:


1. 定时发送 Action 为 Reality.EntityFix 的消息,适用于 Llama NPC 需要固定某个位置的场景。



2. 让 Llama NPC 不断的在一个小范围内移动。个人更推荐这个方法,因为当地图上玩家很多的时候,可能会把自己的 Llama NPC 挡住,不断的移动可以避免玩家无法点中自己的 Llama NPC。



SchemaExternalForm 交互模式


1. 点击 Llama NPC 的时候会去匹配 Process 中加载的 Action 为 SchemaExternal 的 Handler。

2. 接下去需要向点击 Llama NPC 的玩家发送一条消息 —— Tags。


3. 发送消息的格式需要符合对应的格式,以下是这种交互下的参数解释与代码示例。(示例代码中 Lottery = {...} 的部分)

  • ActionName 是动作的唯一标识符。一个模式(Schema)中可以声明多个动作。


  • TitleDescription 是按照上面 Permaswap NPC 的截图,那么 Title 就是 Swap for some $llama coins ? 剩下的那一大段就是Description ,这两个字段主要为了向玩家说明这个交互的作用。


  • Target 这次交互是让玩家向这个 Target Process 发送一条消息。


  • Schema 字段是可选的。如果没有定义,该动作将被禁用。


  • Tags 是必需的,并定义了该动作接受的标签结构。


  • Data 定义了该动作接受的消息中的 JSON 数据结构,如果适用的话。


  • Result 定义了回复消息数据中 JSON 数据的预期格式。


  • 我们看个例子,注意 Tags 需要的是一个 JSON 对应的字符串。



注意:当整数字段具有 comment 属性时,该属性会被用来乘以值后再发送。用于将整数金额转换为基本单位的数量。


到这里已经介绍的差不多了,大家快来构建自己的 Llama NPC 吧!




免责声明:本文不代表 PermaDAO 的观点或立场。PermaDAO 不提供投资建议,亦不为任何项目背书。请读者遵守所在国法律,合规进行 Web3 活动。



“捉虫”有奖:在本文发现错字、病句、描述有误,点我报告,可得激励。


PermaDAO 官网:https://permadao.com

PermaDAO 登船:https://onboard.permadao.com


PermaDAO 社区由 everVision 发起

Forward Research(Arweave 官方) 赞助



该文章仅作为观点陈述,不作为任何投资建议。

李大狗LDG
面向「炫酷」编程
 最新文章