$30 off During Our Annual Pro Sale. View Details »

オンラインボードゲームを作りたい人生だった

 オンラインボードゲームを作りたい人生だった

NGK2023S のLT発表資料です https://ngk2022s.connpass.com/event/265837/

kokuyouwind

January 21, 2023
Tweet

More Decks by kokuyouwind

Other Decks in Programming

Transcript

  1. オンラインボードゲームを作りたい⼈⽣だった
    黒曜
    (@kokuyouwind)

    View Slide

  2. $ whoami
    黒曜 / @kokuyouwind
    普段はRails
    書いたりAWS
    弄ってる
    ボドゲ好き

    View Slide

  3. 🎲 ボードゲーム

    View Slide

  4. Board Game Arena
    https://ja.boardgamearena.com/

    View Slide

  5. 楽しい!!
    ✌('ω'
    ✌ )
    三✌('ω')
    ✌三(
    ✌'ω')

    View Slide

  6. コミュニティで開発に参加できる!
    https://boardgamearena.com/contribute

    View Slide

  7. 登録してみた

    View Slide

  8. Welcome
    メール

    View Slide

  9. Welcome
    メール

    View Slide

  10. Board Game Arena
    の開発⼿法
    SFTP
    でファイルをダウンロードして編集、アップロード
    動作確認
    デモサイト上で⾏う(
    ローカルでの動作確認は不可)
    DB
    のデータ確認はPhpMyAdmin
    経由
    技術スタック
    クローズドソースの独⾃PHP
    フレームワーク
    フロントエンドは素のHTML + Dojo Toolkit

    View Slide

  11. ( ◜◡◝ )

    View Slide

  12. 現代的な環境で
    デジタルボードゲームを作りたい…

    View Slide

  13. boardgame.io
    https://boardgame.io/

    View Slide

  14. boardgame.io
    の特徴
    ボードゲームを作るためのオープンソースフレームワーク
    JavaScript / TypeScript
    ゲームのコアロジックとUI
    を分離して記述
    ゲーム状態の更新はReducer
    経由でのみ⾏える
    UI
    はゲーム状態を元に描画のみ⾏う(React
    などを使⽤)
    マルチクライアントでの動作はフレームワークが担保
    複数ゲーム提供⽤のロビー・マッチングAPI
    も利⽤可能
    簡易的なAI
    を利⽤可能(Random / MCTS)

    View Slide

  15. デモ
    GitHub
    リポジトリ:
    Storybook:
    シングルプレイ:
    マルチプレイ:
    https://github.com/kokuyouwind/bgio-typed-storybook
    https://main--638fd3bf1574c1214b46e940.chromatic.com/
    https://tictactoe.demo.boardgame-park.com/
    https://demo.boardgame-park.com/

    View Slide

  16. 今後やってみたいこと
    とりあえずボドゲをいくつか作りたい
    トランプの「ジュビリー」「カルテット」あたり
    同⼈ボドゲの「惨劇Rooper
    」「桜降る代に決闘を」は
    画像素材がコモンズで公開されてるのでぜひ作ってみたい
    ゲーム⼀覧やマッチングの改善
    boardgame.io
    の技術情報の発信(
    ブログ記事、同⼈誌など)
    boardgame.io
    へのコントリビュートやプラグイン開発

    View Slide


  17. Board Game Arena
    のように気軽に遊べて、
    ゲーム投稿もできるプラットフォームを作りたい
    boardgame.io
    で作ったゲームをほぼそのまま投稿
    ローコード・ノーコードで制作できると最⾼
    同⼈ボードゲームにデジタル版という選択肢を作りたい
    在庫リスクや在庫切れによる機会損失がない
    気軽にお試しプレイをしてもらいやすくなる
    いろんなゲームをオンラインで遊べるようにしたい!

    View Slide

  18. オンラインボードゲームを作りたい⼈⽣だった
    プラットフォーム

    View Slide