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
310
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
550
NFTを取り巻く技術要素とAWS利活用 / Technology and AWS of NFT
rmanzoku
0
920
NFTを中心とした新しいゲームの形 / The new approach of gaming with NFT
rmanzoku
0
420
NFTへの招待 / Invitation to NFT
rmanzoku
0
1.5k
Stringをどうにかする / Managing Solidity String
rmanzoku
0
1.3k
ブロックチェーン時代の認証 / Authentication in the Blockchain Era
rmanzoku
8
3.1k
ERC-721をかぞえて / Enumerate ERC-721
rmanzoku
3
8.3k
AWS上で動く世界No.1ブロックチェーンゲーム / No1 Blockchain Game on AWS
rmanzoku
1
3k
ブロックチェーンゲームMyCryptoHeroesの作り方 / Architecture of My Crypto Heroes
rmanzoku
2
4.8k
Other Decks in Programming
See All in Programming
primeNumberでのRBS導入の現在 && RBS::Traceでinline RBSを拡充してみた
mnmandahalf
0
260
tsconfigのオプションで変わる型世界
keisukeikeda
1
130
Reactive Thinking with Signals, Resource API, and httpResource @Devm.io Angular 20 Launch Party
manfredsteyer
PRO
0
130
推論された型の移植性エラーTS2742に挑む
teamlab
PRO
0
150
CQRS/ESのクラスとシステムフロー ~ RailsでフルスクラッチでCQRSESを組んで みたことから得た学び~
suzukimar
0
190
DevTalks 25 - Create your own AI-infused Java apps with ease
kdubois
2
120
テスト分析入門/Test Analysis Tutorial
goyoki
12
2.7k
【TSkaigi 2025】これは型破り?型安全? 真実はいつもひとつ!(じゃないかもしれない)TypeScript クイズ〜〜〜〜!!!!!
kimitashoichi
1
300
クラシルリワードにおける iOSアプリ開発の取り組み
funzin
1
810
Passkeys for Java Developers
ynojima
1
240
技術的負債と戦略的に戦わざるを得ない場合のオブザーバビリティ活用術 / Leveraging Observability When Strategically Dealing with Technical Debt
yoshiyoshifujii
0
160
Babylon.js 8.0のアプデ情報を 軽率にキャッチアップ / catch-up-babylonjs-8
drumath2237
0
110
Featured
See All Featured
Being A Developer After 40
akosma
91
590k
Visualization
eitanlees
146
16k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.8k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.6k
Docker and Python
trallard
44
3.4k
Adopting Sorbet at Scale
ufuk
76
9.4k
The World Runs on Bad Software
bkeepers
PRO
68
11k
The Cult of Friendly URLs
andyhume
78
6.4k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
228
22k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
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 !!