토큰 채굴
10

블록체인 자산이라고도 하는 토큰은 블록체인에서 가상 항목의 ID를 나타내는 데 사용됩니다.

게임 아이템이 블록체인에 있을 때, 그들의 정체성은 변하기 안 되고 투명하며 손상되지 않아 그 가치가 더 가시적입니다.

가상 아이템의 토큰화 및 관리는 엔진 플랫폼의 핵심 기능입니다.

토큰 데이터

Enjin 플랫폼을 사용하여 만들 수 있는 두 가지 토큰 유형이 있습니다.

펑거 가능한 토큰 (FT):

전통적인 통화와 암호 화폐는 풍요로울 수 있습니다. 동일하고 상호 교환 가능하며 나눌 수 있습니다. 통화가 표준 지불 방법으로 작동하려면 곰팡이가 필수적입니다.

펑어할 수 있는 토큰에는 고유한 일련 번호 나 기록이 없습니다. 다음 것과 구별할 수 있는 것은 없습니다. 예를 들어$ 5 지폐는 정확히 동일하며 동일한 값을 보유합니다. 한 개의 펑거 가능한 토큰의 절반은 다른 토큰의 2 분의 2와 같습니다.

펑어할 수 있는 토큰은 통화, 보상 포인트, 할인 및 프로모션 자료와 같은 고유 ID가 필요하지 않은 모든 항목에 유용합니다.

비곰팡이 토큰 (NFT):

비풍화 토큰은 고유한 자산입니다.

비균성 토큰은 나눌 수 없으며 Enjin Wallet에 개별 데이터가 있는 별도의 토큰으로 저장됩니다. 그러나 비곰팡이 토큰이 항상 100 % 고유하지는 않습니다. 예를 들어 토큰 집합은 동일한 이름, 설명 및 이미지를 공유할 수 있지만 고유하고 구별되는 속성(ID, 기록 및 메타데이터)을 보유한 경우에도 비울 수 있습니다.

비풍화 토큰은 식별, 인증서, 수집품, 게임 캐릭터 와 같은 모든 자산에 적합합니다.

각 토큰에 연결할 수 있는 두 가지 유형의 데이터가 있습니다.

  • 블록체인 데이터는 이더리움 네트워크에 영구적으로 커밋됩니다. ID, 설정 및 ENJ 지원 값을 포함하여 토큰의 정의 속성은 토큰에 대한 수요에 큰 영향을 줄 수 있습니다. 따라서 이 데이터의 대부분은 블록 체인에 커밋된 후에는 변경할 수 없습니다. 이전 데이터를 새 데이터로 대체하여 일부 토큰 설정을 업데이트할 수 있지만 이전 토큰 설정은 블록 체인의 트랜잭션 기록에서 볼 수 있는 레코드상태로 유지됩니다.
  • 메타데이터는 사용자가 게임 이나 앱 및 토큰을 볼 수있는 다른 플랫폼에서 볼 수있는 사람이 읽을 수있는 정보입니다. 이 데이터는 언제든지 업데이트할 수 있습니다.

블록체인 데이터: 변경 가능

이 데이터는 언제든지 새 설정으로 편집하고 교체할 수 있습니다.

이름: 블록 체인에 커밋 될 이름입니다.

메타데이터 URI
메타데이터 작업 섹션을 참조하십시오.
메타데이터 URI를 사용하면 이미지를 포함하여 항목의 속성을 설명하는 JSON이 포함된 URL을 추가할 수 있습니다.

양도
상품을 거래할 수 있는지, 또는 소유자에게 구속되는지(예: 거래 불가능한 경우)를 결정합니다.

  • 영구: 항목은 항상 다른 사람과 거래 할 수 있습니다. 이 설정은 토큰에 커밋된 후에는 변경할 수 없습니다.
  • 바인딩: 항목은 항상 항목의 소유자에 바인딩됩니다.
  • 임시: 아이템은 현재 거래 할 수 있지만 작성자는 향후 날짜에 거래 할 수 없게 만들 수 있습니다.

전송피설정: 값

ENJ를 사용하는 경우 값을 10^18로 곱하여 소수점 18을 포함합니다. 처음 환승 수수료를 설정하면 해당 설정이 청구할 수 있는 최대 수수료가 됩니다. 그러나 언제든지 전송 수수료를 낮출 수 있으며, 이 시점에서 처음 설정한 금액으로 다시 올릴 수 있습니다.

블록체인 데이터: 영구 데이터

totalSupply: 이것은 당신이 세계에 존재하고자하는 항목의 얼마나 많은입니다. 이 제한은
위에서 사용하는 공급 모델에 따라 파손 또는 의미 다른 것들. 예를 들어,
붕괴 공급 유형을 사용하여 초기 공급은 총 항목 수를 나타냅니다.
원래 실행 중에 존재했습니다. 가장 이해하기 쉬운 것은 고정되어 사용자에게
한 번에 존재이 종류의 "이 많은"항목이 될 수 있습니다.

initialReserve: 초기 만들기 작업의 일환으로 민트에 미리 지불하려는 항목의 수입니다. 채굴 아이템은 이 잔액에서 소진될 때까지 공제됩니다. 당신은 해야 해요
생성시 하나 이상의 항목을 지불합니다. 초기 예약을 사용하면 생성 시 총 공급에 대한 모든 ENJ를 지출하지 않고도 항목을 만들 수 있습니다.

전송요금설정: 유형

사용자가 만드는 모든 피어 투 피어 거래에 대해 전송 수수료를 부과할 수 있습니다. 이를 통해 게임을 둘러싼 경제수익을 창출하고 커뮤니티 내에서 흥미로운 새로운 사회적 역학을 육성하여 수익을 창출할 수 있습니다.

  • 없음: 이 항목이 손을 변경할 때 양도 수수료가 부과되지 않습니다.
  • Per_Crypto_Item: 이는 ENJ의 자산당 양도 수수료를 의미하며, 이는 전송되는 자산 수에 따라 누적됩니다. 예를 들어, Apple에 항목당 0.1 ENJ 전송 수수료가 있고 사용자 Simon이 10개의 사과를 user1에 보내는 경우, Simon은 사과 자산의 작성자에게 이동하는 거래에 대해 ENJ 1이 부과됩니다.
  • Per_Transfer: 이는 ENJ에서 송금당 환승 수수료를 말합니다. 예를 들어, Apple이 전송당 0.1 ENJ 수수료를 가지고 있고 Simon이 10개의 사과를 user1에 보내는 경우, Simon은 사과 자산의 작성자에게 이동하는 거래에 대해 0.1 ENJ가 부과됩니다.
  • Ratio_Cut: ratio_cut 사용하려면 곰팡이 자산만 허용됩니다. 총 항목의 % 컷은 발신자가 총 가격을 지불하면서 작성자의 총 항목에서 뺍니다. 예를 들어, 10% 비율 인하(0.1)로 500개의 사과를 양도하면 수령인은 450개의 사과와 작성자를 받게 되며, 보낸 사람이 거래에 대해 총 500개의 사과를 지불합니다.
  • Ratio_Extra: ratio_extra 사용하려면 곰팡이 자산만 허용됩니다. 모든 것의 상단에 부과되는 세금. 예를 들어, 500개의 사과를 10% 비율로 추가로 전송하면 사용자는 500개의 사과를 받고 작성자는 50개의 사과를 받게 되며 발신자는 거래에 대해 총 550개의 사과를 지불합니다.

전송피설정:
전송 수수료로 사용할 토큰의 토큰 ID입니다. 사용자가 Enjin Coin에서 귀하에게 돈을 지불하려면 0을 사용하십시오.

멜트값
생성하는 항목의 단위당 사용할 ENJ의 양입니다. 최소한의 것을 사용해야 합니다.
초기 예약에서 만드는 수에 따라 항목을 백업하는 ENJ금액(최소 비용은 레이블 옆에 나열됨). 일반적으로 한 가지 유형의 항목이 많을수록 항목 단위당 필요한 ENJ가 줄어듭니다.

공급모델: 이것은 항목 풀이 채굴 및 용융과 관련하여 어떻게 행동하는지입니다.

현재 공급 유형은 다음과 같습니다.

  • 고정: 한 번에 최대 총 공급 수의 품목을 사용할 수 있습니다.
  • 설정 테이블: 언제든지 총 공급을 편집할 수 있습니다.
  • 무한: 당신은 총 공급을 초과, 당신이 원하는만큼 항목을 박하 할 수 있습니다.
  • 붕괴: 일단 녹으면 물건을 다시 채굴 할 수 없습니다.

멜트피레이
이는 플레이어가 아이템을 녹일 때 받게 되는 ENJ의 현재 백분율입니다. 나머지 ENJ는 크리에이터에게 돌아갑니다.

비재미
항목이 비 풍화 또는 곰팡이인지, 진실또는 거짓인지 여부.

토큰 채굴

이제 템플릿을 만들고 메타데이터를 정의했기 때문에 첫 번째 토큰 일괄 처리를 마이닝할 차례입니다.

펑거가능한 토큰(FT)과 비곰팡이 토큰(NFT)을 채굴하는 요청은 약간 다릅니다.

토큰 유형의 일괄 처리를 여러 주소로 조폐하거나 단일 주소로 민트처리할 수 있습니다.

Fungible 토큰의 공급은 기본적으로 토큰 데이터 내의 수량 필드로 표현되며, 공급이 별도의 토큰 ID의 수량으로 표시되는 비Fungible 토큰과는 달리 기본적으로 표시됩니다.

따라서 단일 트랜잭션에서 여러 NFT를 래무치해야 하는 경우 각 개별 항목에 대해 수신 이더리움 주소를 지정해야 합니다. 또한 트랜잭션과 부하가 트랜잭션으로 인해 트랜잭션이 실패할 수 있으므로 단일 트랜잭션에서 100개 이상의 NFT를 조폐하지 않는 것이 좋습니다.

FT는 동일한 제한이 없으며 무제한 Fungible 토큰을 이더리움 주소로 박하 할 수 있습니다. 그러나 한 거래에서 100개 이상의 다른 이더리움 주소로 곰팡이 토큰을 채굴하지 않는 것이 좋습니다. 네트워크 과부하로 인해 트랜잭션이 실패할 수 있습니다.

다음은 2개의 서로 다른 토큰 유형인 FT와 NFT 간의 동일한 요청입니다.

펑비 토큰:

그래프QL
mutation MintFungibleItems($identityId: Int!, $appId: Int!, $tokenId: String!) {
 transaction: CreateEnjinRequest(
   identity_id: $identityId
   appId: $appId
   type: MINT
   mint_token_data: {
     token_id: $tokenId
     recipient_address_array: [
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_2"
     ]
     value_array: [
       5
       3
     ]
   }
 ) {
   id
   encodedData
 }
}

이 요청은 "WALLET_ADDRESS_1"에 5 배 항목을 박하하고 "WALLET_ADDRESS_2"3 배 항목을 박하 것입니다. <inline-code><inline-code> 당신은 항목의</inline-code> 초기 예비까지</inline-code> 민트 수 있습니다.

비곰팡이 토큰:

그래프QL
mutation MintNonFungibleItems($identityId: Int!, $appId: Int!, $tokenId: String!) {
 transaction: CreateEnjinRequest(
   identityId: $identityId
   appId: $appId
   type: MINT
   mint_token_data: {
     token_id: $tokenId
     token_index: "0"
     recipient_address_array: [
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_1"
       "WALLET_ADDRESS_2"
       "WALLET_ADDRESS_2"
       "WALLET_ADDRESS_2"
     ]
   }
 ) {
   id
   encodedData
 }
}

이 요청은 "WALLET_ADDRESS_1"에 5 배 항목을 박하하고 "WALLET_ADDRESS_2"3 배 항목을 박하 것입니다.

성공적인 요청이 완료되면 지갑의 요청 섹션에서 거래를 수락하고 서명해야 합니다.

보류 중인 트랜잭션 취소

지갑 데몬이 되돌릴 필요가 없는 매개 변수를 가진 거래에 대해 불평하는 경우 다음 돌연변이를 사용하여 트랜잭션을 되돌릴 수 있습니다.

그래프QL
mutation CancelTransaction($id: Int) {
 transaction: UpdateEnjinRequest(id: $id state: CANCELED_USER) {
   id
   title
   state
 }
}

토큰 템플릿 만들기

토큰 템플릿에는 블록 체인에 커밋 될 핵심, 불변토큰 데이터가 포함되어 있습니다.

항목을 만들려면 원하는 항목 속성으로 요청을 해야 합니다. 여기는
예:

그래프QL
mutation CreateToken(
 $identityId: Int
 $name: String
 $totalSupply: Int
 $initialReserve: Int
) {
 transaction: CreateEnjinRequest(
   identityId: $identityId
   appId: $appId
   type: CREATE
   create_token_data: {
     name: $name
     totalSupply: $totalSupply
     initialReserve: $initialReserve
     supplyModel: FIXED
     meltValue: "15000000000000000000"
     meltFeeRatio: 1250
     transferable: PERMANENT
     transferFeeSettings: {
       type: PER_TRANSFER
       token_id: "0"
       value: "1000000000000000000"
     }
     nonFungible: false
   }
 ) {
   id
   encodedData
 }
}

성공적인 요청이 완료되면 지갑의 요청 섹션에서 거래를 수락하고 서명해야 합니다.

토큰 ID 찾기

토큰 ID는 블록 체인에 커밋된 후에 토큰 템플릿에 부여된 영구 ID입니다.

따라서 토큰 템플릿이 만들어지면 템플릿 내에서 정의한 토큰을 MINT에 토큰 ID를 찾아야 합니다.
자산의 토큰 ID를 찾을 수 있는 방법에는 여러 가지가 있습니다.

  • EnjinX를통해 확인한 후 해당 항목으로 거래에서 토큰 ID를 찾을 수 있습니다. "이벤트 로그" 탭을 클릭하면 16개의 고유 숫자를 확인할 수 있습니다.
  • 다음 쿼리를 사용하여 신뢰할 수 있는 클라우드에서 에셋을 검색할 수 있습니다.
그래프QL
query Tokens($name: String, $page: Int, $perPage: Int) {
 tokens: EnjinTokens(
   name: $name
   pagination: { page: $page, limit: $perPage }
 ) {
   id
   name
   creator
   meltValue
   meltFeeRatio
   meltFeeMaxRatio
   supplyModel
   totalSupply
   circulatingSupply
   reserve
   transferable
   nonFungible
   blockHeight
   markedForDelete
   availableToMint
   itemURI
 }
}

마지막으로 Enjin 패널을 사용하는 경우 새로 만든 자산을 채굴할 때 패널에서 토큰 ID를 볼 수도 있습니다.

토큰 ID

참고: 먼저 블록 체인에서 확인되고 긁어 질 때까지 기다려야합니다.

자산 메타데이터 만들기

토큰 템플릿을 만들어 토큰의 블록 체인 데이터를 정의한 후에는 공개 읽기 액세스 권한이 있는 어딘가에 호스팅되는 .json 파일에 저장된 메타데이터를 추가할 수 있습니다.

메타데이터에 관해서는 다음과 같은 요구 사항을 유의하십시오.

  1. 링크(메타데이터 및 이미지 모두)는 로봇이 공개적으로 액세스할 수 있어야 합니다.
  2. uri는 요청된 파일에 적절하게 설정해야 합니다.
  3. 이미지는 유효한 이미지 파일이어야 합니다(이미지가 표시되어야 합니다).
  4. JSON은 JSON RFC 표준을 준수해야 하며, 어쨌든 준수하지 않으면 로드되지 않습니다.

기술적으로 항목 메타데이터는 선택 사항입니다. 게임에 이미지 및 사용자 지정 항목 속성을 표시하려는 경우 자산이 더욱 독특해질 수 있습니다. 엔진 지갑 및 기타 엔진 서비스는 설정한 메타데이터를 기반으로 자산을 표시합니다.

이름(블록체인 항목 이름 대신 표시됨), 설명 및 다음 예제와 같은 이미지에 대한 링크를 포함할 수 있습니다.

JSON
{
 "name": "item_name",
 "description": "Description line 1.\nDescription line 2.",
 "image": "/image.jpg"
}

이 파일을 .json 파일로 저장해야 합니다. 공개 읽기 액세스와 함께 업로드된 .json 파일이 있으면 항목 URI(균일한 리소스 식별자)를 설정하도록 요청할 수 있습니다.

파일을 호스팅하는 데 익숙하지 않은 경우 자세한 내용은 이 가이드를 참조하십시오.

다음 돌연변이는 자산에 항목 URI를 설정합니다:

그래프QL
mutation SetItemUri($identityId: Int!, $itemUriData: SetItemUriInput!) {
 CreateEnjinRequest(identity_id: $identityId, type: SET_ITEM_URI, set_item_uri_data: $itemUriData) {
   id
   encodedData
   state
 }
}

Advanced Users: The URI value allows for ID substitution by clients. If the string {id} exists in any URI, clients must replace this with the actual token ID in hexadecimal form. This allows for large number of tokens to use the same on-chain string by defining a URI once, for a large collection of tokens.

Example of such a URI: <inline-code>https://token-cdn-domain/{id}.json would be replaced with https://token-cdn-domain/780000000000001e000000000000000000000000000000000000000000000000.json<inline-code>, if the client is referring to token ID <inline-code>780000000000001e000000000000000000000000000000000000000000000000<inline-code>.

자세한 내용은 ERC-1155 표준 설명서의 메타데이터 섹션을 참조하십시오.

성공적인 요청이 완료되면 지갑의 요청 섹션에서 거래를 수락하고 서명해야 합니다.

이전
다음
이 페이지에서