Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
MCH+ Hackathon #1
Search
Ryo Manzoku
August 09, 2019
Programming
0
300
MCH+ Hackathon #1
Ryo Manzoku
August 09, 2019
Tweet
Share
More Decks by Ryo Manzoku
See All by Ryo Manzoku
ブロックチェーンゲーム開発におけるチェーンの選び方 / How to select a blockchain for BCG
rmanzoku
0
540
NFTを取り巻く技術要素とAWS利活用 / Technology and AWS of NFT
rmanzoku
0
910
NFTを中心とした新しいゲームの形 / The new approach of gaming with NFT
rmanzoku
0
410
NFTへの招待 / Invitation to NFT
rmanzoku
0
1.5k
Stringをどうにかする / Managing Solidity String
rmanzoku
0
1.3k
ブロックチェーン時代の認証 / Authentication in the Blockchain Era
rmanzoku
8
3k
ERC-721をかぞえて / Enumerate ERC-721
rmanzoku
3
8k
AWS上で動く世界No.1ブロックチェーンゲーム / No1 Blockchain Game on AWS
rmanzoku
1
2.9k
ブロックチェーンゲームMyCryptoHeroesの作り方 / Architecture of My Crypto Heroes
rmanzoku
2
4.8k
Other Decks in Programming
See All in Programming
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
Simple組み合わせ村から大都会Railsにやってきた俺は / Coming to Rails from the Simple
moznion
3
2.1k
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
150
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
210
テストコードのガイドライン 〜作成から運用まで〜
riku929hr
7
1.4k
chibiccをCILに移植した結果 (NGK2025S版)
kekyo
PRO
0
130
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1.2k
functionalなアプローチで動的要素を排除する
ryopeko
1
210
快速入門可觀測性
blueswen
0
500
ATDDで素早く安定した デリバリを実現しよう!
tonnsama
1
1.9k
AHC041解説
terryu16
0
400
return文におけるstd::moveについて
onihusube
1
1.4k
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Adopting Sorbet at Scale
ufuk
74
9.2k
Producing Creativity
orderedlist
PRO
343
39k
Writing Fast Ruby
sferik
628
61k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
127
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
4 Signs Your Business is Dying
shpigford
182
22k
How to train your dragon (web standard)
notwaldorf
89
5.8k
Mobile First: as difficult as doing things right
swwweet
222
9k
Being A Developer After 40
akosma
89
590k
Transcript
Hackathon #1 ٕज़ใ 2019-08-10 MCH+ Hackathon #1 double jump.tokyoגࣜձࣾ ϦʔυΤϯδχΞ
ຬ ྄
• My Crypto HeroesΛ͍ͬͯΔਓʁ • ERC-721ΛࣗͰൃߦͨ͜͠ͱͷ͋Δਓʁ • ϚΠΫϦͷAPIΛ৮ͬͨ͜ͱͷ͋Δਓʁ • MCH+ͷAPIΛ৮ͬͨ͜ͱͷ͋Δਓʁ
࣭
ʹ͍ͭͯ
• ʮήʔϜʹ͔͚͓ͨ࣌ؒۚɺ͋ͳͨͷࢿ࢈ͱͳΔੈ քʯͷ֦େΛࢦͯ͠ • NFT͕ήʔϜͱήʔϜΛඈͼӽ͑Δੈք؍ͷ࣮ݱʹΉ͚ͯ • MyCryptoHeroesͷϊϋΛϑϨʔϜϫʔΫͱͯ͠ఏڙ͢Δϒ ϩοΫνΣʔϯήʔϜ։ൃࢧԉϓϩάϥϜ MCH+ͱ
• ϒϩοΫνΣʔϯήʔϜͷಛͱͯ͠ʮೋ࣍ྲྀ௨ࢢʯͱʮෳ αʔϏεؒͰͷ൚༻ੑʯ͕ॏཁͰ͋Δ • ෳ༻్͕͋Δ͜ͱͰͦͷσδλϧΞηοτͷՁ͕͋Δ • ݱࡏʮೋ࣍ྲྀ௨ࢢʯͱͯ͠ͷ໘͕େ͖͍ • ʮෳαʔϏεؒͰͷ൚༻ੑʯ͕͋Δ͜ͱͰɺσδλϧΞηο τͷՁ૬ޮՌͰ্͕͍ͬͯ͘
ͳͥMCH+ΛਐΊΔͷ͔
ʮMCH+ʯ͕ఏڙ͢ΔࢧԉϓϩάϥϜ ։ൃࢧԉ ΤίγεςϜ ߏஙࢧԉ ϑΝΠφϯε ࢧԉ ਓࡐҭࢧԉ ϒϩοΫνΣʔϯήʔϜͷ։ൃϊϋ͕ͳͯ͘ɺ ظؒͰຊ֨తͳϒϩοΫνΣʔϯήʔϜΛ ։ൃ͢Δ͜ͱ͕Ͱ͖ΔΑ͏ʹ
• ϒϩοΫνΣʔϯʹΑΓσδλϧΞηοτͷʮॴ༗ใʯͱ ʮৡʯΛѻ͏͜ͱ͕Ͱ͖Δ • σδλϧΞηοτΛݸਓ͕ʮॴ༗ʯՄೳ • σδλϧΞηοτΛॴ༗ऀ͕ʮৡʯՄೳ • ʮॴ༗ʯͰ͖Δ͜ͱͰαʔϏεʹͱΒΘΕͣʮෳαʔϏεؒ Ͱͷ൚༻ੑʯΛ࣋ͯΔ
• ʮৡʯͰ͖Δ͜ͱͰʮೋ࣍ྲྀ௨ࢢʯ͕ੜ·ΕΔ ϒϩοΫνΣʔϯʹΑΔΤίϊϛʔ
• ϒϩοΫνΣʔϯͰաڈͷใͷվ͟ΜࠔͰෆՄٯ • ݱ࣮ੈքʹ͓͚Δ࣌ؒͷྲྀΕͱಉ͡ • ϒϩοΫνΣʔϯͰॴ༗ใ͕͋Δ͜ͱͰݸਓͷࣗ༝ʹѻ͑Δ • ݱ࣮ੈքʹ͓͚ΔϞϊͷॴ༗ͱಉ͡ • αʔϏεఏڙऀʹΑΔཧ͕ࠔʹͳΔ
• ϒϩοΫνΣʔϯʹΑͬͯΠϯλʔωοτݱ࣮ੈքʹ͍ۙͮͨ ϒϩοΫνΣʔϯ ʰϦΞϧʱ
• ήʔϜΞΠςϜΛϒϩοΫνΣʔϯʹΑͬͯʮॴ༗ʯ • ࣗͷͷͰ͋Δͱ͍͏طଘήʔϜʹͳ͍ମݧ • σδλϧΞηοτͷϢʔβʔؒৡ • Ϣʔβʔओ࠵ͷاըϓϨθϯτɺॳ৺ऀ༑ਓͷϓϨθϯτ • σδλϧΞηοτͷՁ
• σδλϧΞηοτऔҾॴʹΑΔࣗ༝ͳऔҾ σδλϧΞηοτΤίϊϛʔ
Non-Fungile Token
• CryptoKittiesͷϦϦʔεΛൽΓʹσδλϧΞηοτʹ͍ͭͯΓ ্͕ΓΛݟ͍ͤͯΔ • CryptoKittiesνʔϜʹΑͬͯNon-Fungible TokenʢNFTʣඇସੑ τʔΫϯͱ͍͏֓೦͕ੜΈग़͞Εͨ • NFTͷ༷ͱͯ͠ERC-721͕ࡦఆ͞Εɺ࣮༻Խ͞Εͨ •
NFTΞΠίϯ࡞ͬͨͷͰΈΜͳͬͯͶʂ NFTͷొ
ඇସੑͱʁ • ྔΛѻ͏τʔΫϯ → ସτʔΫϯ • ௨՟ͳͲ1ͭ1ͭͷՁͷಉ͡ͷΛѻ͏ • ʮ1ສԁࡳԿຕ͋ͬͯ1ຕ1ຕಉ͡ՁΛ࣋ͭʯ •
ERC-20 / ERC-777 / ERC-1155 ૉࡐ: https://www.photock.jp • ࣭Λѻ͏τʔΫϯ → ඇସτʔΫϯ (NFT) • 1ͭ1ͭͷՁ͕ҧ͏ϞϊΛڞ௨ʹѻ͏ • ʮೣೣͰɺ͏ͪͷϛέͱ͓ྡͷλϚҧ͏ʯ • ERC-721 / ERC-1155
• EthereumͰNFTΛ࣮ݱ͢Δݱ࣮తͳඪ४༷ • ʮॴ༗ใʯʮৡʯʮৡݖͷҠৡʯΛنఆ͍ͯ͠Δ • ඪ४༷Ͱ͋ΔͨΊɺERC-721Λ࠾༻ͨ͠ήʔϜɺαʔϏεɺ औҾॴͰՃ։ൃແ͠Ͱར༻Ͱ͖ΔΑ͏ʹͳΔ • ERC-721Λ࣮ͨ͠ =
NFT ͱͳΔΘ͚Ͱͳ͍͜ͱΛҙ • ͦͷՁMetadataʹΑΓࢀরͰ͖Δ ERC-721ͱ
ERC-721ʹΑΔΤίγεςϜ NFTΛදࣔ NFTऔҾॴ ERC-721Λ࣮ NFTήʔϜ
• BlockpunkࣾʹΑΔݶఆ൛ϏσΦτʔΫϯ • ΠϕϯτࢀՃऀͷͨΊͷه೦τʔΫϯ ଟ༷ͳ֦͕ΓΛ࣋ͭNFT/ERC-721
• σδλϧΞηοτͷՁΛࢀর͢Δػೳͱͯ͠ɺERC-721 Metadata͕نఆ͞Ε͍ͯΔʢEIP-1047ʹͯఏҊʣ • Ethereum্ʹσδλϧΞηοτʹؔ͢ΔϝλใΛࢀরͰ͖Δ URLΛॻ͖ࠐΈ͜ͱ͕Ͱ͖Δ • NFTऔҾॴWalletMetadataΛ௨ͯ͠σδλϧΞηοτͷใ Λࢀর͍ͯ͠Δ •
σδλϧΞηοτͷՁMetadataΛ௨ͯ͠ࢀর͞Ε͍ͯΔ ERC-721 Metadataͱ
• Hero: ӡӦ͘͠ࢢ͔Βߪೖ͢ΔɻΫΤετPvPʹར༻ ͢Δ • Extension: ΫΤετΫϦΞ࣌͘͠ࢢ͔Βߪೖ͢ΔɻHero ʹඋͤ͞ΫΤετPvPʹར༻͢Δ • LandSector:
ӡӦ͘͠ࢢ͔Βߪೖ͢ΔήʔϜࠃՈͷ Φʔφʔɻ্ҐऀKingͱͳΓϢʔβʔΛಋ͘ MyCryptoHeroesͷNFT
ERC721ΛͬͨHero / Extension / LandSectorͷEthereum্ͷ Asset Ethereum্Ͱͷॴ༗ใΛӡӦॴ༗ͷGatewayίϯτϥΫτʹ ༬͚Δ͜ͱͰɺCryptoWorldʢήʔϜʣͰར༻ՄೳʹͳΔ ʢLandSectorྫ֎ʣ MetadataΛؚΉήʔϜͷใҰ෦ެ։APIΛ௨ͯ͠ࢀরͰ͖
Δ MyCryptoHeroesͰͷERC-721
MyCryptoHeroesͷߏཁૉ &UIFSFVN 6TFS ϢʔβʔECDSAॺ໊༻ͷൿີ伴ͱ ରʹͳΔΞυϨεΛॴ༗ ήʔϜࢿ࢈ɺEthereum্Λਖ਼ͱͯ͠ཧ ॴ༗ใɺϢʔβʔͷΞυϨεʹ͋Δ ॴ༗ใΛ֬ೝ ήʔϜࢿ࢈Λ༻͍ͯήʔϜͰ༡Ϳ ࢿ࢈ΛҭͯΔ
MyCryotoHeroesͰ ɾήʔϜࢿ࢈Λͬͨ༡ͼͷఏڙ ɾETHʹΑΓήʔϜ௨՟Λൢച ɾ৽͍͠ήʔϜࢿ࢈ͷ༩ɺൢച ɾήʔϜࢿ࢈ΞʔτΛ༩
ϢʔβʔήʔϜʹUserIDΛ͍࣋ͬͯΔ UserIDͱEthereumΞυϨεΛඥ͚ͮͯཧ͍ͯ͠Δ EthereumΞυϨεΛެ։͢ΔػೳʹΑΓɺ༗ޮͳϢʔβʔ EthereumΞυϨε͔ΒϢʔβʔใΛऔಘͰ͖Δ MyCryptoHeroes͓͞Β͍
• Ethereum্ͰσδλϧΞηοτΛѻ͏߹ʹσϑΝΫτͱͳΓ ͭͭ͋ΔNFTͱ͍͏֓೦ͱ • ੈքʹ1ͭͰ͋ΔσδλϧΞηοτNFTͱϒϩοΫνΣʔϯʹΑ Δʮॴ༗ʯ૬ੑ͕Α͍ • ମݧͨ͜͠ͱͷ͋Δਓʹ͔͠Θ͔Βͳ͍ʮॴ༗ײʯ • طଘͷήʔϜʹΕͳ͍ڧͳମݧ
• NFTͷՁօͰߴΊ͍͖͍ͯͨ NFT͕࣠ͱͳΔੈք
Hackathon
• ERC-721Ͱنఆ͞Ε͍ͯΔMetadataΛMCH+Ͱ֦ு͢Δͷ • MetadataΛ௨ͯ͠σδλϧΞηοτͷՁΛ֬ೝ͍ͯ͠Δ • σδλϧΞηοτͷՁɺൃߦऀ͚ͩͰͳ͘୭ͰొͰ ͖Δ͖ • Ձɺϝλσʔλެ։伴҉߸ͷॺ໊ʹΑΓ୭͕ొ͔ͨ͠Λ อূ
• ΞηοτՁͷΦʔϓϯԽΛ࣮ݱ ֦ுϝλσʔλ
• https://explorer.mch.plus • NFTΛͬͨήʔϜ/αʔϏε։ൃऀͷͨΊͷNFT Explorer • Hackathonʹͯα൛ެ։ʂ • ֦ுϝλσʔλΛWebͰ؆୯ʹొɺ֬ೝͰ͖Δ •
ઈࢍ։ൃதɻػೳืूதʂ NFT Explorer
• NFTʹ୭ͰՁΛొͰ͖Δ͜ͱʹΑΓ • ྫ͑ࣗ࡞ήʔϜͷύϥϝʔλΛMCHͷώʔϩʔʹ༩Ͱ͖Δ • NFTʹࢥ͍ग़ͷϝοηʔδΛॻ͖ࠐΊΔ • MCH+ͱͯ͠ɺϚΠΫϦΞηοτΛελʔλʔʹͯ͠ήʔϜ Λ࡞ͬͯΒ͍͍ͨ •
কདྷతʹϚΠΫϦMCH+ͷҰ෦ʹ ֦ுϝλσʔλʹΑΔૂ͍
• MCH+API • https://docs.mch.plus/ • MCH+Ͱఏڙ͢ΔAPIυΩϡϝϯτ • MCH API •
https://my-crypto-heroes.gitbook.io/mch-api/ • ϚΠΫϦେͷσʔλΛΦϑνΣʔϯͰཧ͍ͯ͠ΔͨΊ ͦͷσʔλΞΫηε͢ΔͨΊͷAPIυΩϡϝϯτ ֤छAPIϦϯΫ
• CryptoSpells Metadata • https://cryptospells.jp/metadata/card/9ܻID.json • CryptoSpellsͷMetadataͰ͢ʂ ֤छAPIϦϯΫ
RE-BUILDING THE FUTURE OF GAMING WITH BLOCKCHAIN TECHNOLOGY !!