Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ドメインについて考える #4

Open
fummicc1 opened this issue Oct 4, 2021 · 5 comments
Open

ドメインについて考える #4

fummicc1 opened this issue Oct 4, 2021 · 5 comments

Comments

@fummicc1
Copy link
Collaborator

fummicc1 commented Oct 4, 2021

  • マップが存在する(有限)

  • ブロックを使う

  • オンラインゲーム

  • プレイヤーがいる

  • NPC(おに)が1人いて、2人のプレイヤー同士で戦う

  • ルームの作成

  • ユーザー名とスコアをユーザーごとに保存したい

  • 移動は前・後ろ・右・左に動ける

  • 全てのマスは高さというデータを持っている

  • タイミングの同期をサーバーで管理する必要がある

  • 衝突したかどうかを判定する

  • 壁に(あえて)ぶつかった時には、別の選択肢の中からランダムに選ばれる

  • 進むためには、今いるマス目の高さと行きたいマス目の高さが1以下である

  • 勝つためには、鬼に捕まらないこと・相手が一つの方向にしか動けなくなるまで邪魔をすること

  • 勝利・敗北判定


ランクポイント(スコア; 試合を跨いで保存される)
ユーザー、プレイヤー名
プレーヤーの配置情報(フロントでは入力を受け取り、サーバーに通信してから帰ってきた場所に描画)
鬼の挙動
マス目の高さ(プレーヤーの移動で変化するため)

@fummicc1

This comment has been minimized.

@organic-nailer

This comment has been minimized.

@akapochi

This comment has been minimized.

@fummicc1
Copy link
Collaborator Author

fummicc1 commented Oct 4, 2021

エンティティ

ユーザー(User)

フィールド名 説明
ユーザー名 string
ポイント number これまでのバトルの合計ポイント
uid string ユーザー同士で絶対に被らない文字列

プレイヤー(Player)

フィールド名 説明
座標(x, y) (number, number) 今の位置情報(x, y < 32)
ゲーム中のポイント number 現在のゲームにおける自身のポイント
uid string ユーザーID
ユーザー名 string ゲーム画面に表示するために使用
ステータス PlayerStatus ユーザーの状態(捕まった・捕まっていない)
type PlayerStatus = "alive" | "dead"

NPC

フィールド名 説明
座標(x, y) (number, number) 今の位置情報(x, y < 32)
表示名 string ゲーム画面に表示するために使用(「鬼」など)

フィールド(Field)

フィールド名 説明
length number 辺の長さ
マス Square[][]

マス(Square)

フィールド名 説明
height number マスの高さ

Game

フィールド名 説明
バトルフィールド Field 使用しているフィールド
プレイヤーリスト Player[] ゲームに参加しているプレイヤー一覧
NPC ゲームの鬼

@akapochi
Copy link
Collaborator

akapochi commented Oct 13, 2021

Room

フィールド名 説明
割り当てられたプレイヤーたち User[] その部屋に割り当てられたユーザーたち
部屋のID uid

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants