Skip to content
/ P2D Public

Blockchain-based donation platform Play to donate

Notifications You must be signed in to change notification settings

6uamy/P2D

Folders and files

NameName
Last commit message
Last commit date

Latest commit

07f8b7a ยท Oct 24, 2022

History

83 Commits
Jun 18, 2022
Jul 21, 2022
Jun 18, 2022
Jun 18, 2022
Jun 19, 2022
Jun 18, 2022
Oct 24, 2022

Repository files navigation

๐Ÿ† 2022-1 ์บก์Šคํ†ค ๋””์ž์ธ ๊ฒฝ์ง„๋Œ€ํšŒ ์ตœ์šฐ์ˆ˜์ƒ ์ˆ˜์ƒ

P2D (Play to Donate)

๋ธ”๋ก์ฒด์ธ ๊ธฐ๋ฐ˜ ์‹ค์‹œ๊ฐ„ ๊ธฐ๋ถ€ ํ”Œ๋žซํผ

์‹œ์—ฐ ์˜์ƒ https://youtu.be/V75_MES1wCI

P2D Scan Site P2D Scan

ํ”„๋กœ์ ํŠธ ํ๋ฆ„๋„

image

1. ๐Ÿ’ก ์†Œ๊ฐœ

  • ๊ธˆ์ „์ ์ธ ๋ถ€๋‹ด๊ฐ, ๋ถˆํˆฌ๋ช…ํ•œ ๊ธฐ๋ถ€๊ณผ์ •, ๊ธฐ๋ถ€๋‹จ์ฒด์— ๋Œ€ํ•œ ์‹ ๋ขฐ์„ฑ๋ถ€์กฑ ๋“ฑ ๋‹ค์–‘ํ•œ ์ด์œ ๋กœ ๋งŽ์€ ์‚ฌ๋žŒ๋“ค์ด ๊ธฐ๋ถ€๋ฅผ ๊บผ๋ฆฌ๊ณ  ์žˆ๋‹ค.

  • ๊ธฐ๋ถ€์˜ ์‹ ๋ขฐ์„ฑ์„ ์ œ๊ณตํ•˜๊ณ  ํˆฌ๋ช…์„ฑ์„ ํ™•๋ณดํ•˜๋ฉฐ ๊ธฐ๋ถ€์— ๋Œ€ํ•œ ๋ถˆ์‹ ์„ ํ•ด์†Œํ•ด ์˜ฌ๋ฐ”๋ฅธ ๊ธฐ๋ถ€๋ฌธํ™” ํ™•์‚ฐ์— ๊ธฐ์—ฌํ•˜๊ณ ์ž ๊ฐœ๋ฐœ์„ ์ง„ํ–‰ํ•˜๊ฒŒ ๋œ๋‹ค.

  • ๋ฉ”ํƒ€๋งˆ์Šคํฌ๋ฅผ ํ†ตํ•ด ๊ฐ„๋‹จํ•œ ๋กœ๊ทธ์ธ์„ ์ง„ํ–‰ํ•˜๊ณ , ๊ฐ„๋‹จํ•œ ๊ฒŒ์ž„์„ ํ”Œ๋ ˆ์ดํ•œ ๋’ค ๊ทธ ์ ์ˆ˜์— ๋น„๋ก€ํ•˜์—ฌ P2D ํ† ํฐ์„ ๋ฐœ๊ธ‰ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

  • ์ง€์ •๋œ ๊ธฐ๋ถ€์ฒ˜(ํŠน์ • ์ง€๊ฐ‘์ฃผ์†Œ)๋กœ๋งŒ ํ† ํฐ์„ ์ „์†กํ•  ์ˆ˜ ์žˆ๋„๋ก Smart Contract์— White List ์กฐ๊ฑด์„ ๋“ฑ๋กํ•˜์˜€๋‹ค.

  • ๊ธฐ๋ถ€๊ฐ€ ์ด๋ฃจ์–ด์ง€๋Š” ๋™์•ˆ ์ž์ฒด ๊ฐœ๋ฐœํ•œ ํŠธ๋žœ์žญ์…˜ ์Šค์บ” ์‚ฌ์ดํŠธ๋ฅผ ๋„์›Œ์ค˜ ๊ธฐ๋ถ€์˜ ํ๋ฆ„์„ ์ง์ ‘์ ์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

  • ์ดํ›„ 1ํšŒ์— ํ•œํ•˜์—ฌ ๊ธฐ๋ถ€์ฆ์„œ NFT๋ฅผ ๋ฐœ๊ธ‰ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

2. ๐Ÿ’ป Language&Tools&API

  • Remix IDE (Solidity)
  • Unity (C#)
  • Eth Scan API (Web3.js, html, JavaScript)

3. ๐Ÿ›  ๊ธฐ๋Šฅ๊ตฌํ˜„

site 3.1 P2D transaction monitoring

Web3.js์™€ JavaScript๋ฅผ ์‚ฌ์šฉํ•œ P2D ํ”Œ๋žซํผ ๋‚ด์˜ donate transaction ํ˜„ํ™ฉ์„ ์กฐํšŒ ๊ฐ€๋Šฅํ•œ ์‚ฌ์ดํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๋‹ค. Txn Hash๋ฅผ ํด๋ฆญํ•˜์—ฌ ํด๋ฆญํ•œ transaction์˜ Details ์กฐํšŒ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค.

intro 3.2 P2D main interface

Main interface์˜ Start button์„ ํ†ตํ•ด Metamask๋กœ๊ทธ์ธ์„ ํ†ตํ•˜์—ฌ ๊ฒŒ์ž„์— ์ ‘์†๊ฐ€๋Šฅํ•˜๋‹ค.

main 3.3 P2D In-game interface

Character ์ƒ๋‹จ์— metamask ๊ณ„์ • ์ฃผ์†Œ์™€ ์ขŒ์ธก ์ƒ๋‹จ์˜ ๋ณด์œ ํ•œ ํ† ํฐ์˜ ๊ฐœ์ˆ˜, ๊ฐค๋Ÿฌ๋ฆฌ ํ˜•์‹์˜In-game์„ ํ†ตํ•ด Play๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.

tokendeploy 3.4 P2D Token deploy

SmartContract๋กœ ์ž‘์„ฑํ•œ ERC-20์˜ ํ† ํฐ minting๊ณผ ๋ฐœ๊ธ‰ ํ›„์˜ transaction์กฐํšŒ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋™์ž‘์ด๋‹ค.

tokendonate 3.5 P2D Token Donate

SmartContract๋กœ ์ž‘์„ฑํ•œ ERC-20 ๊ธฐ๋ฐ˜ ํ† ํฐ์˜ Donate์™€ Donate ํ›„์˜transaction ์กฐํšŒ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋™์ž‘์ด๋‹ค. ํ•ด๋‹น Donation์˜ ์ฃผ์†Œ ์ •๋ณด๋ฅผ Whitelist์— ๋“ฑ๋ก์‹œ์ผœ
์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ์ง€๊ฐ‘ ์ฃผ์†Œ๋กœ ์ „์†กํ•˜์ง€ ๋ชปํ•˜๋„๋ก ๊ตฌํ˜„ํ•˜์˜€๋‹ค.

NFT 3.6 P2D NFT Deploy

SmartContract๋กœ ์ž‘์„ฑํ•œ ERC-721(NFT)์˜ ๋ฐœ๊ธ‰๊ณผ ๋ฐœ๊ธ‰๋œ NFT์ •๋ณด๋ฅผ Opensea(NFT๊ฑฐ๋ž˜์†Œ)์—์„œ ํ™•์ธํ•˜๋Š” ๋™์ž‘์ด๋‹ค. NFT ๋ฐœ๊ธ‰์ž๋Š” isNFT = true๋กœ ๋“ฑ๋ก์‹œ์ผœ ๊ธฐ๋ถ€์ž ๋‹น 1ํšŒ๋งŒ NFT๋ฐœ๊ธ‰์ด ๊ฐ€๋Šฅํ•˜๋„๋ก ๊ตฌํ˜„ํ•˜์˜€๋‹ค.

4.๐Ÿงฉ ๊ฒฐ๋ก 

Unity WebGL์„ ํ†ตํ•ด ๋นŒ๋“œ ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— MetaMask๋กœ ๊ฐ„๋‹จํ•œ ๋กœ๊ทธ์ธ์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ์ดํ›„ ๊ฐ„๋‹จํ•œ ์ผํšŒ์„ฑ ๊ฒŒ์ž„์„ ํ”Œ๋ ˆ์ดํ•˜๋ฉด ๊ทธ ์Šค์ฝ”์–ด์— ๋น„๋ก€ํ•ด P2D ํ† ํฐ์„ ๋ฐœ๊ธ‰ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ํ•ด๋‹น ํ† ํฐ์€ ์Šค๋งˆํŠธ ์ปจํŠธ๋ž™ํŠธ์— ๋“ฑ๋ก๋œ ํ™”์ดํŠธ ๋ฆฌ์ŠคํŠธ ์กฐ๊ฑด์— ๋”ฐ๋ผ ์ง€์ •๋œ ์ฃผ์†Œ๋กœ๋งŒ ์ „์†ก์ด ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ณธ ๊ณผ์ •์„ ํ†ตํ•ด ๊ธฐ๋ถ€๋ฅผ ์ง„ํ–‰ํ•œ ์‚ฌ์šฉ์ž๋Š” 1ํšŒ์— ํ•œํ•˜์—ฌ NFT ๊ธฐ๋ถ€์ฆ์„œ๋ฅผ ๋ฐœ๊ธ‰ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค. ๋ชจ๋“  ๊ธฐ๋ถ€ ๊ณผ์ •์„ ์ง์ ‘์ ์œผ๋กœ ํ™•์ธ ๊ฐ€๋Šฅํ•œ ํŠธ๋žœ์žญ์…˜ ๋ชจ๋‹ˆํ„ฐ๋ง ์‚ฌ์ดํŠธ ์—ญ์‹œ ๊ฐœ๋ฐœํ•˜์˜€๋‹ค. ๊ธฐ๋ถ€์— ์žˆ์–ด ํฐ ๋ฌธ์ œ๋กœ ์†๊ผฝํžˆ๊ณ  ์žˆ๋Š” โ€œ๊ฒฝ์ œ์  ์—ฌ์œ โ€, โ€œ๊ธฐ๋ถ€ ๋‹จ์ฒด์— ๋Œ€ํ•œ ์‹ ๋ขฐ์„ฑโ€, โ€œ๊ธฐ๋ถ€ ๊ณผ์ •์˜ ํˆฌ๋ช…์„ฑโ€์„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„๊ฒƒ์œผ๋กœ ๊ธฐ๋Œ€๋œ๋‹ค.