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
Gl3 Blockchain x Game
Search
Jerome Coquard
May 27, 2018
Technology
1
670
Gl3 Blockchain x Game
Hi-Ether Meetup Fukuoka (2018/05/27) presentation
Jerome Coquard
May 27, 2018
Tweet
Share
Other Decks in Technology
See All in Technology
既存プロセスからの脱却と変化に適応するために必要なこと
cybozuinsideout
PRO
2
170
どう買う?Azure
kuniteru
1
190
実務への応用例から考える 変更に強いオブジェクト指向設計 / 20240324-ooc2024
bengo4com
7
5.3k
AWS アーキテクチャクイズ
yuu26
2
700
任意コード実行の原理
ffri
0
170
なんで私に登壇依頼が?! ~頼られるエンジニアになるためには~ /
mixi_engineers
PRO
2
200
プッシュ型子育てサービスを、先行プロジェクト実施自治体において開始します
govtechtokyo
0
250
Azureコストは水道代/The_47th_Tokyo_Jazug
aeonpeople
3
360
Cloud Deploy と仲良くなりたい
phaya72
1
100
オブジェクトのおしゃべり大失敗 メッセージングアンチパターン集 / messaging anti-pattern collection
ytake
0
330
あらゆる商品を扱う商品データベースを再設計した話 / product db re-architecture
rince
8
3.6k
Autify Company Deck
autifyhq
1
30k
Featured
See All Featured
Building an army of robots
kneath
300
41k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
272
12k
Building Adaptive Systems
keathley
29
1.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
1
3.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
5
1.4k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
Atom: Resistance is Futile
akmur
258
25k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
19
1.6k
Fireside Chat
paigeccino
19
2.6k
Building Applications with DynamoDB
mza
88
5.6k
Into the Great Unknown - MozCon
thekraken
10
830
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
58
14k
Transcript
Hi-Ether Fukuoka Meetup ブロックチェーン✕ゲーム 豚に教えられたこと!
自己紹介 人間版 豚版 コカー ジェローム (⇒じぇじぇ) ・日本人 ・25歳 フランス人 39歳
経歴 1999 2004 2010 2013 2016 WEB開発 エンジニア ゲームディレクター など・・・
インディーズ PS3ゲーム開発 ディレクター エンジニア エンジニア プロデューサー エンジニア CTO フランス 2006年から日本
グッドラックスリー紹介 <代表作> 事業開始:2013年5月 所在地:福岡市中央区天神3-14-31 社員数:56名 資本金・準備金:8億1,273万円(9月末) サンリオ ハウステンボス 大賀薬局、英進館 350万DL
突破 180万DL 突破 50万再生 突破
ブロックチェーン✕エンターテインメント 詳しくは: https://tokensale.luckyme.org/ https://twitter.com/LuckyMe_PR LuckyMe ・新しいソーシャルプラットホーム LuckyMe Reward System ・ブロックチェーンを活用した評価システム
ブロックチェーン✕ゲーム ×
くりぷ豚とは? ざっくり版
くりぷ豚の誕生 12月:ブロックチェーン研究開始 イーサリアムで盛り上がってるのは・・・・・・・ 1月:ブロックチェーンゲームプロトタイプ テーマ:豚 2月:正式プロジェクト化 仕様作成、チームメンバー集め、開発開始 3~4月:アプリ開発 5月:ブラウザー版開発 間もなく:サービス開始
CryptoKitties
くりぷ豚の機能 ジェネレーション0販売 ・運営が売り出す豚 ユーザー同士の売買 ・ユーザーが購入した またはお見合いで作った 豚の販売 お見合い ・新しい豚を作成 ・レアパーツの発見
トン活 ・種を売り出す 育成 ・餌をあげて、つついて、好感度アップ ・レアモーションの発見 SNS投稿 ・好きな角度、好きなモーションで 写真とって、SNSに投稿 メイン サブ
くりぷ豚の遊び方 デザイン案 ゲーム内で 出来上がり おいしそう・・・ おまけ:カツトン紹介 新しいパーツ発見して、合計3京以上の組み合わせ可能 ┗面白い組み合わせで自分の豚を目立たせる ①豚を手に入れる ②お見合い
でレアパーツ や面白い 組み合わせを 狙う ③新規豚ゲット ④豚を売りに 出して、 ETHを稼ぐ
くりぷ豚の未来 売買アプリ ARアプリ レースゲーム 育成/アバターゲーム エコシステム
くりぷ豚とは? テクニカル版
構造 スマートコントラクト 監視サービス ゲーム サーバー S3ストーレジ クライアント ツール INFURA クラウド
ノード AWS ETHEREUM
構造(言語) スマートコントラクト 監視サービス ゲーム サーバー S3ストーレジ クライアント ツール INFURA クラウド
ノード
スマートコントラクト コアコントラクト 売買オークション コントラクト トン活オークション コントラクト 遺伝子コントラクト ・運営からの販売 ・ユーザー同士の販売 ・お見合いオークション
・豚の管理 ・オーナーシップ管理 ・お見合い時の新しい遺伝子 生成アルゴリズム 売る 買う 買う 出産
クライアント ウオレット ゲーム アプリ WEBAPP NETHEREUM アプリ内 ウオレット機能 C#イーサリアム ライブラリー
など PHP, HTML5, CSS, JS
監視サービス ゲーム DB 保存ブロック+1 最新ブロック ブロックN イーサリアム イベントログ データ分析 保存ブロック:=最新ブロック
イベントログ習得 DB書き込み メ イ ン ル ー プ
取引の流れ スマートコントラクト 監視サービス ゲーム サーバー S3ストーレジ クライアント ツール INFURA クラウド
ノード ①クライアントがノー ドに取引 ②ノードがレシートを 返す(TXハッシュ) ③サーバーにハッシュ を送る ④TXをブロードキャ スト ⑤TXが承認され イベントログ発生 監視SVがキャッチ ⑥結果をDBに保存 ⑦クライアントに 反映
くりぷ豚開発振り返り 心掛けたところ
くりぷ豚のチャレンジ ・法律を守る ・賭博罪・賭場開帳図利罪 ・2号仮想通貨 ⇒キックオフ前から弁護士と相談しながら進みました ・ブロックチェーンエンジニアではなくても遊べるゲーム ・スマホアプリ ・ユーザーフレンドリーなUI.UX ⇒承認時間、ガス管理・・・ ・ユーザーの教育
⇒漫画で説明など ・これからのGL3Dappsのセキュリティ/ワークフローを作るプロジェクト ・スマートコントラクトの権限構成 ・社内アドレス管理
UX問題 ステート管理 同じアクションに2つステート: ・アプリステート(ステート〇〇交渉中)とETHステート(ステート〇〇承認済み) ・アクション実行後一定期間中、最新のステートが優先される ・一定期間こえると、ETHステートが優先 アクション ステートA ステートB 一瞬
通常ゲーム 数十秒?数分? 終わらない可能性も… ETH上 一般ユーザーが感じること: ・レスポンスの悪さ ・アクションしたかどうかの不安 例:売り出し中 例:購入 例:購入済み アクション timeout期間 ステートB交渉中 ステートB/A(取引失敗した場合) 取引が承認された場合 取引が承認されない場合 ステートA ステートA 他のアクションをロック ステートA ステートB交渉中 他のアクションをロック
スマートコントラクトの権限 ① CEO COO CFO 役割: ・コントラクト設定変更 ・他のCOアドレスの変更 役割: ・ETHを引き出す
役割: ・GEN0オークション作成(GEN0) ・作成、特定のアドレス送る(MINT) クリプトキティー方式 リスク CEO秘密鍵がばれたら/なくなったら 世界の終わりだ! COO秘密鍵が定期的にGEN0作成に使われる のでその分セキュリティが下がってる ① ②
スマートコントラクトの権限 ② CEO COO CFO くりぷ豚方式 OP GEN0作成 MINT CEO秘密鍵がばれたら/なくなったら
世界の終わりだ! ① ⇒COアドレスでヒエラルキーをなくす ⇒各COを変更するには他のCO2つが必要 2つの秘密鍵がばれない/なくならないかぎり どの状況でもリカバーできる COO秘密鍵が定期的にGEN0作成に使われる のでその分セキュリティが下がってる ② 責任(ダメージリスク) 使う頻度 ⇒OPアドレスを増やす OPが一時的にばれても ダメージが少ない
社内アドレスの管理 ・すべてのアドレスはエンジニアがもつならそもそも分けた意味は? ・COアドレスの管理責任はエンジニアがもつべき? ⇒スマートコントラクトのロール責任は会社の責任とマッチさせます 問題: ブロックチェーンの理解は人それぞれ TX_MAKE TX_SIGN TX_SEND エンジニア側
CO側 transaction.json signed_transaction.json 詳細はCONFIDENTIALがコンセプトは: ・オフラインでしか起動できない ・直接秘密鍵の入力/コピペー/保存は必 要ない ・手間がかからない トランザクション作成 トランザクションの証明 トランザクション送信
まとめ 情報がばらばらでしたのでまとめることはありませんが・・・ ・ブロックチェーンXゲームのポテンシャルを信じてます ・「イーサリアム」上の開発を楽しんでます ・ブロックチェーン技術が一般ユーザーまで広がることをくりぷ豚を通じて支援したい
ありがとうございました