dapp链上合约游戏开发原理丨dapp链上合约游戏系统开发详情及源码

简介:  区块链技术是实现Web3.0的核心前提:区块链技术是一种高级数据库机制,允许在企业网络中透明地共享信息。区块链通过链式记账法,将数据存储在链式记账中,数据库则连接到一个链条中。由于数据在链条的时间上是一致的,因此无法删除或者修改,具有一致性

  Web3.0主要可以分为几块:区块链、智能合约、密码学以及分布式存储。

  区块链技术是实现Web3.0的核心前提:区块链技术是一种高级数据库机制,允许在企业网络中透明地共享信息。区块链通过链式记账法,将数据存储在链式记账中,数据库则连接到一个链条中。由于数据在链条的时间上是一致的,因此无法删除或者修改,具有一致性

  Web3.py调用部署的智能合约:

  完整代码如下:

  from base import*

  #调用deploy.py会获得contract_address

  contract_address='0x5071ad6611B322647B88ACF5CBeBCA71Bead0c6f'

  nonce=w3.eth.get_transaction_count(my_address)

  #实例化合约对象

  storage=w3.eth.contract(address=contract_address,abi=abi)

  #调用addPerson方法:

  transaction=storage.functions.addPerson('二两',28).buildTransaction({

  "chainId":chain_id,

  "from":my_address,

  "nonce":nonce

  })

  #签名

  signed_transaction=w3.eth.account.sign_transaction(transaction,private_key=private_key)

  #发送交易

  tx_hash=w3.eth.send_raw_transaction(signed_transaction.rawTransaction)

  print('add new Person to contract...')

  #等待交易完成

  tx_receipt=w3.eth.wait_for_transaction_receipt(tx_hash)

  #获得people数组中存储的值

  result=storage.functions.people(0).call()

  print(f'get person info:{result}')

  因为编译后获得的智能合约的ABI中存在addPerson与people,复制compiled_code.json中abi的内容:

  "abi":[

  {

  "inputs":[

  {

  "internalType":"string",

  "name":"_name",

  "type":"string"

  },

  {

  "internalType":"uint256",

  "name":"_age",

  "type":"uint256"

  }

  ],

  "name":"addPerson",

  "outputs":[],

  "stateMutability":"nonpayable",

  "type":"function"

  },

  {

  "inputs":[

  {

  "internalType":"uint256",

  "name":"",

  "type":"uint256"

  }

  ],

  "name":"people",

  "outputs":[

  {

  "internalType":"string",

  "name":"name",

  "type":"string"

  },

  {

  "internalType":"uint256",

  "name":"age",

  "type":"uint256"

  }

  ],

  "stateMutability":"view",

  "type":"function"

  }

  ],

  以addPerson函数为例,其type为function,name为addPerson,inputs表示调用该方法需传入的参数,也给出了type,通过abi,程序才知道当前的智能合约提供什么功能。

相关文章
|
6月前
|
区块链
关于代币合约项目系统开发DAPP模式方案【源码示例】
以下是一个简单的以太坊代币合约代码示例,它定义了一个名为 `Token` 的代币合约。在实际使用中,请确保您已获得适当的许可并遵循相关法规。
|
区块链 数据库 数据安全/隐私保护
IPPswap代币合约开发案例版丨IPPswap代币合约系统开发详细程序/规则玩法/方案介绍/源码平台
 Pledged mining refers to holding a certain amount of digital currency and locking it onto the blockchain network to obtain corresponding mining rewards.Pledge refers to locking a certain amount of digital currency in a blockchain network to prove one's support and participation in the network.
|
存储 安全 区块链
DAPP互助合约系统开发功能逻辑说明
DApp互助系统的开发指的是创建一个基于区块链技术和智能合约的去中心化应用程序(DApp),旨在通过互助和合作实现共同利益和社区发展。
|
存储 监控 算法
DAPP链上质押项目系统开发|DAPP合约模式开发案例
DAPP不依赖中心化机构也不受单一实体控制,因此DAPP可以减少中心化机构的意见干扰
dapp丨defi代币合约质押项目系统开发逻辑详细/规则说明/案例设计/步骤细节/源码程序
The smart contract liquidity mining system is a financial application system based on smart contract technology, aimed at providing liquidity and receiving rewards by injecting users' funds into the liquidity pool and locking them in the smart contract.
|
安全 区块链
BSC链盲盒游戏系统开发详情案例丨dapp链上合约盲盒游戏系统开发方案项目/逻辑规则/成熟技术/源码功能
  DApp(去中心化应用程序)盲盒游戏系统的开发涉及到在区块链上构建和运行盲盒游戏。
|
存储 安全 算法
dapp公链游戏链上合约系统开发技术详细/案例开发/方案逻辑/成熟技术
  随着区块链技术的不断发展和普及,越来越多的游戏开发商开始将区块链技术应用于游戏中。区块链游戏系统开发可以带来许多好处,例如提高游戏的安全性、透明度、公正性等,同时还可以让玩家拥有更好的游戏体
|
人工智能 区块链
DAPP智能合约游戏系统开发(哈希竞猜游戏系统开发)/DAPP链上合约游戏系统开发/详细方案/规则详情/源码案例
智能合约是在区块链上部署和运行的计算机程序,合约中的代码规定了具体的触发条件和结果。智能合约的自动执行特性与AI结合时具有独特的优势。
|
存储 区块链 编译器
DAPP链上代币发行合约去中心化项目系统开发实现技术案例及源码详情
 区块头和区块体数据也会被当作输入数据做一次Hash运算,其运算结果会被存储在下一个区块的区块头中,这样任何区块内容的修改都会反映到区块的Hash值上,而区块的Hash值又是下一个区块的输入数据,它又会被当作新区块的数据参与一次新区块的Hash运算,随着时间的推移和交易量的增加,所有的区块会通过保存前一个区块的Hash运算结果的方式组成一条链。
|
存储 人工智能 安全
区块链DAPP代币合约项目系统开发技术案例及详情/源码功能
  区块链、人工智能、数字孪生、人机交互、物联网等面向数据的新一代信息技术的演进并非偶然,而是从Web2.0向Web3.0演进的技术准备。从技术上来看,元宇宙是基于Web3.0技术体系和运作机制支撑下的可信数字化价值交互网络,是以区块链为核心的Web3.0数字新生态。