開発概要 2023/9
今後の構想は LinkPoker 事業構想 (リンク飛べます) に記しています。
founderのビジョン(2023/10) (リンク飛べます)
【開発対象概要】
プロダクト名: LinkPoker
no gambleホームゲーム特化の https://www.pokernow.club/ というプロダクトの、のリングゲームのみ(初期はトーナメント機能を作らない)を参考に(パクって)開発する
connect walletの機能をつける
USDT on Polygon Chain](要検討、EVM互換チェーンにする予定) だけでbuy-inできるようにする
入出金時に運営がガス代を負担してトランザクションを発生させる方法はないか?
レーキを取ってtreasuryに溜める設計(今後このtreasuryからユーザーに再分配させたりと、treasury起点でお金の動きを作り出していくイメージ)
【論点】
これを実装するとしたら、フロントエンドとバックエンドとインフラでそれぞれ何を使うか?
インフラは何が必要か?DB、ストレージ、サーバー、etc.
バックエンドで技術的難易度が高いロジックってありそうか?
基本的なゲームロジックはオフチェーンで処理する前提で、コントラクトには何を書き込むか?
全ての機能を自社開発するのではなく他社のSDKも要所で活用していく前提で、
どこまでは自社開発し、どんなSDKが必要か?(wallet系, OnRampクレカ決済系, native walletがなくてもガス代をswapできるもの, etc.)
今後どのようなアプローチで最適な他社SDKを探すか?
その他抜け漏れがありそうな重要論点があったら、都度洗い出す
【その後の開発を考慮した上での注意点】
ギャンブルのライセンスを取るにあたり、今後出金タイミングでのKYCを開発する必要あり
法律的に、wallet接続するバージョンとbettingせずにplayするバージョンで分け、リンクをリダイレクトする必要がありそう
【開発対象詳細】
①Top Page
正面に大きく表示: "QUICK START without wallet"ボタン→
その下に少し小さく表示: "START GAME with wallet"
右上に "Connect Wallet/Log In"ボタン(ログイン後はここにwallet/アカウント情報を表示)
https://scrapbox.io/files/64df780f11879f001cf9ec9f.png
②Connect Walletページ
過去に登録したwalletの選択
大きく表示する: 「簡単wallet」でログイン
小さめに表示する: 「既存のwallet系: metamask, wallet connect......」
etc.
Sign Upボタン
③Sign Upページ
「簡単wallet(※web3わからないユーザー向け施策。一番UXがいいwallet事業者と提携)」で新規登録 
→wallet作成してトップページに遷移
小さめの表示で "if you have your own wallet.....既存のwalletで新規登録"
→wallet署名とかして、トップページに遷移
④テーブル(QUICK STARTの方)
いきなり「テーブル選択→nicknameとstack入力」
adminはゲストが通知を送ってきたら⑤に遷移
その他のゲストはadminがゲーム開始するのを待つ
右下の「ゲーム開始ボタン」でスタート
https://scrapbox.io/files/64df7a3a228ff0001c6b4e98.png
⑤admin画面(QUICK STARTの方)
ブラインドとゲストのバイイン額を決定
https://scrapbox.io/files/64df7d0e09a87a001c628ef0.png
→この辺りの詳細設定は初期は開発不要。デフォルト設定のままプレイしてもらうプレイしてもらう
⑥admin画面(connect walletの方) ※adminはいきなりこのページに飛ぶ
ブラインド、バイイン上限下限を決定
https://scrapbox.io/files/64df7bbc7a20e2001c3904e5.png (イメージ)
⑦テーブル(connect walletの方)
「テーブル選択→nicknameとバイイン額入力」
トランザクションが走る→バイイン額が確定する
adminの人にだけ表示されている右下の「ゲーム開始ボタン」でスタート
⑧テーブル(全てのバージョン共通)
chat機能
video camera機能
voice chat機能
→事後開発でいいかもしれない
その他機能
ユーザーが万一ブラウザバックを閉じて放置してしまったら、一定時間が経った後にトランザクションを走らせて利確、walletにお金を戻してあげる、といった対策
その他エラーが生じそうな場面における対策