cdfy plugin

examples

  • Module: プラグインに機能を加えるためのプラグイン
    • distributable module: 開始時にプレイヤーidの名前の Field を作りカードを配る
      • events
        • distribute(cards): プレイヤーに cards を配る
    • selectable module: カードをクリックして複数選択が出来る
      • state
        • CardState: { id, selected?, disabled? }
        • FieldState: {cardSelectLimit}
      • events
        • selectCard: 当該の CardState.selected をtrueにする
    • turnable module: ターンの概念を追加
      • state
        • {currentPlayerId}
      • events
        • setup: currentPlayerId を最初のプレイヤーに
        • next:

2023-02-10

  • todo どこまでをプロトコルにしてどこまで自由度をもたせるか
    • 自由度が大きいとプラグイン製作者はviewも作る必要がある -> 最初はテキストベースで良い?
      • 例えばナンジャモンジャが作りたいってなったら画像も用意する必要がある
        • future requestでDeck API作るか
    • 最初はトランプに限定する?

2023-02-10

  • wasmとメタ情報はどこに保存? DB?
  • wasmは数MBになる
  • fp-bindgenを試す
    • enumどうなるんだ? -> "A" | "B" のようになった

2023-02-15
UIはどうするか

  • とりあえず

rand 0.6+ panic when using wasm-bindgen · Issue #810 · rust-random/rand · GitHub
randでpanicしてた

inbox

  • 2023-02-10

    • 順番にターンが回ってくるpocを作りたい
  • future request idea

    • コンピュータ機能
    • eventでフォームを出す仕様(ナンジャモンジャとかじゃんけん用)
    • ex. 全員の解答が揃うまで await するAPI
    • 他のFieldにカードを移動させることができる tradable
    • 方向で宛先決めておいてスワイプでで渡す
  • 問題点

    • 関数の可搬性
    • Gameの肥大化
  • ⇒ Stateのみを共有

カードゲームプラットフォーム

2023-09-11

全役職大富豪
効果発動時にA使うかどうかconfirmすればasync taskいらなそう、全てはイベントハンドラとして書ける(rhaiでも)

参考文献