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
320
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
430
NFTへの招待 / Invitation to NFT
rmanzoku
0
1.5k
Stringをどうにかする / Managing Solidity String
rmanzoku
0
1.3k
ブロックチェーン時代の認証 / Authentication in the Blockchain Era
rmanzoku
8
3.2k
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
TypeScriptでDXを上げろ! Hono編
yusukebe
3
860
QA x AIエコシステム段階構築作戦
osu
0
130
202507_ADKで始めるエージェント開発の基本 〜デモを通じて紹介〜(奥田りさ)
risatube
PRO
2
530
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
120
No Install CMS戦略 〜 5年先を見据えたフロントエンド開発を考える / no_install_cms
rdlabo
0
110
Jakarta EE Meets AI
ivargrimstad
0
260
「App Intent」よくわからんけどすごい!
rinngo0302
1
120
階層化自動テストで開発に機動力を
ickx
1
410
The Niche of CDK Grant オブジェクトって何者?/the-niche-of-cdk-what-isgrant-object
hassaku63
1
690
Claude Code で Astro blog を Pages から Workers へ移行してみた
codehex
0
150
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
0
740
テスト環境にCDを導入してみた
yasaigaoisi
0
100
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
530
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.9k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Statistics for Hackers
jakevdp
799
220k
Speed Design
sergeychernyshev
32
1k
It's Worth the Effort
3n
185
28k
The Cost Of JavaScript in 2023
addyosmani
51
8.6k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
A Modern Web Designer's Workflow
chriscoyier
695
190k
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 !!