Primordial Farm(初元农场)星球生态游戏开发源代码部署流程

简介: Primordial Farm(初元农场)星球生态游戏开发源代码部署流程

初元星球是由社区自治驱动的GameFi游戏平台,它可以让玩家来决定游戏未来的开发路线,以奖励、回报、享受赋予用户绝对公平的游戏权利,用户只需要按照自身设定的路线,就可以通过生态代币PMT与游戏内NFT,将玩家付出心血获得的游戏内容进行出售变现,在游戏的同时保障生活获取利益,真正实现边玩边赚,与初元星球共同创造一个真正独特且永恒的GameFi生态系统。

在游戏体验中,初元农场是一款以社交与收益为核心的成长型游戏,土地(NFT)作为开启游戏的唯一凭证,一个玩家最多可以开垦12块土地进行种植,具有6级变化,不同级别的效果有不同变化;而作为核心道具的种子则多达46种,每一种都具有不同的产出能力和成熟时间,风格多遍的46种形象(非常的VI体验),而收成合成后所以产物用户都可使用或者在商品交易所进行出售。

ERC20规范

ERC20约定了一个代币合约需要实现的接口:

contract ERC20 {
function totalSupply() constant returns (uint totalSupply); // 总发行量
function balanceOf(address _owner) constant returns (uint balance);
// 代币分发(注意, 这个只有合约的Creator 可以调用)
function transfer(address _to, uint _value) returns (bool success);
// 这里是拥有者和拥有者之间的代币转移
function transferFrom(address _from, address _to, uint _value) returns (bool success);
function approve(address _spender, uint _value) returns (bool success);
function allowance(address _owner, address _spender) constant returns (uint remaining);
event Transfer(address indexed _from, address indexed _to, uint _value);
event Approval(address indexed _owner, address indexed _spender, uint _value);
// Token信息
string public constant name = "4FunCoin";
string public constant symbol = "4FC";
uint8 public constant decimals = 18; // token的精度, 大部分都是18
}

上面的代码是一个标准的ERC20标准的代码, 规范给出了框架, 我们只需要实现相应的函数就好了, 这里给出函数说明。

接口函数说明

函数的形参是局部有效, 所以前面使用下划线, 与其他的变量区别开来. 如 _owner.

balanceOf() 查询某个地址的Token数量 , 结合mapping实现
transfer() owner 使用这个进行发送代币
transferFrom () token的所有者用来发送token
allowance() 控制代币的交易,如可交易账号及资产, 控制Token的流通
approve() 允许用户可花费的代币数;

事件函数说明

这里两个Event是重点, 事件,可以被前端js代码捕获到并进行相应的处理:

event Transfer() Token的转账事件

event Approval() 允许事件

ERC20代币合约实现

理解了上面的函数, 下面的代码,就实现了Token合约的函数填充

pragma solidity ^0.4.16;

interface tokenRecipient { function receiveApproval(address _from, uint256 _value, address _token, bytes _extraData) public; } // token的 接受者 这里声明接口, 将会在我们的ABI里

相关文章
【sgTree】自定义组件:加载el-tree树节点整棵树数据,实现增删改操作。
【sgTree】自定义组件:加载el-tree树节点整棵树数据,实现增删改操作。
|
Ubuntu Shell Python
Ubuntu学习笔记(一):pycharm设置快捷启动图标详解
这篇博客详细讲解了如何在Ubuntu 20.04系统中为PyCharm设置快捷启动图标,包括创建.desktop文件、编辑文件内容以及添加到收藏夹的步骤。
1042 0
Ubuntu学习笔记(一):pycharm设置快捷启动图标详解
|
11月前
|
vr&ar 图形学 计算机视觉
突破次元壁!新加坡国立发布GenXD:拿捏真实感3D、4D动态场景
新加坡国立大学团队发布GenXD,突破3D和4D场景生成难题。通过利用常见相机和物体运动,提出数据整理管道及大型4D数据集CamVid-30K,开发出能生成逼真3D/4D场景的框架。其多视角-时间模块分离相机与物体运动,支持条件视图生成。尽管存在数据覆盖和复杂场景处理的挑战,GenXD仍显著提升了生成效果,为虚拟现实、游戏开发等领域带来新机遇。论文链接:https://arxiv.org/abs/2411.02319。
223 11
美团面试:Redis锁如何续期?Redis锁超时,任务没完怎么办?
在40岁老架构师尼恩的读者交流群中,近期有小伙伴在面试一线互联网企业时遇到了关于Redis分布式锁过期及自动续期的问题。尼恩对此进行了系统化的梳理,介绍了两种核心解决方案:一是通过增加版本号实现乐观锁,二是利用watch dog自动续期机制。后者通过后台线程定期检查锁的状态并在必要时延长锁的过期时间,确保锁不会因超时而意外释放。尼恩还分享了详细的代码实现和原理分析,帮助读者深入理解并掌握这些技术点,以便在面试中自信应对相关问题。更多技术细节和面试准备资料可在尼恩的技术文章和《尼恩Java面试宝典》中获取。
美团面试:Redis锁如何续期?Redis锁超时,任务没完怎么办?
|
传感器 监控 物联网
什么是物联网卡
物联网卡(IoT SIM卡)是专门为物联网设备提供网络连接的SIM卡,它在物联网技术中扮演着至关重要的角色。以下是对物联网卡的详细解释:
|
关系型数据库 MySQL 数据库
MySQL 什么是意向锁?为什么要有意向锁?
【8月更文挑战第24天】MySQL 什么是意向锁?为什么要有意向锁?
1488 0
|
搜索推荐 数据安全/隐私保护
战斧指纹浏览器与IPXProxy海外代理IP配置详解
对于需要管理多个电商平台店铺的用户而言,战斧指纹浏览器提供了便捷的多账号隔离功能。跨境电商卖家要想在海外顺利的管理自己的店铺,还需要用到海外代理IP来实现IP隔离,确保店铺之间互相独立,不会受到其他店铺的牵连。下面以IPXProxy海外代理IP为例,给大家带来战斧指纹浏览器集成IPXProxy海外代理IP的详细指南。
624 0
Python实现用鼠标截图功能
Python实现用鼠标截图功能
|
SQL 存储 运维
开启 Alibaba Cloud Lens Copilot 探索之旅
Alibaba Cloud Lens Copilot 大模型助力云设施运维与运营:Alibaba Cloud Lens Copilot 采用基于通义模型的 NL2Query 技术,融合 Alibaba Cloud Lens 中的资产数据与知识图谱,分析运维场景多模态数据,实现了 Q/A 查询和应答功能,准确将自然语言翻译查询语句及时找到结果。
110243 3
|
Web App开发 监控 网络协议
HTML躬行记(3)——WebRTC视频通话
HTML躬行记(3)——WebRTC视频通话