Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in milliseconds.
『城とドラゴン』(アソビズム)のバトルルール・画面構成を忠実に再現し、独自要素として フル3D の戦場と切り替え可能な視点 を加えたブラウザゲーム。スマートフォン(横向き推奨)/PC 両対応。
| 要素 | 実装 |
|---|---|
| 制限時間 | 3分。上部中央にタイマー、左右に自城/敵城 HP バー |
| コスト | 開始 30。回復速度は残り時間で加速 — 1/6秒 → (2:00) 1/5秒 → (1:00) 1/4秒 → (0:30) 1/3秒 |
| 手札 | 剣士(∞召喚)+ランダム 7 体。各キャラに召喚数制限、大型は 2 体まで |
| 召喚 | キャラを選び、自陣の青いマスをタップ。重ね出し可 |
| 砦 | 3 つが斜めに配置。HP を削り 砦占拠キャラ(剣士・ゴブリン・騎馬兵)の一撃で旗が立つ。占拠すると召喚ラインが前進。中央砦を持っていれば手前を取られてもラインは下がらない |
| キャラ種別 | 小型/中型/大型、進撃/迎撃、地上/飛行、対空、範囲攻撃 |
| スキル | 攻撃時に確率発動(ゴウゲキ・ブンレツ・カベツクリ・フッカツ・トツゲキ・グラグラ・ダイネッセン…) |
| 大砲 | 城から着弾点を狙って撃つ。ダメージ+吹き飛ばし(大型は飛ばない)。クールダウン 18 秒 |
| 城のドラゴン | 城が攻められ HP 70% を切ると屋根の上のドラゴンが目覚め、城前をブレスで焼く |
| 勝敗 | 完全勝利(全砦+落城)/落城勝利/点差勝利(残HP)/判定勝利(砦数)/引き分け |
- Three.js によるフル 3D。セルシェーディングでキャラ・城・砦を描画
- 視点切替: 標準(本家に近い横からの俯角)/俯瞰/自由(ドラッグ回転・ピンチズーム)
- 手札アイコンは実際の 3D モデルをレンダリングしているので、戦場と完全一致
剣士 / アーチャー / 魔法使い / ゴブリン / スライム / オーク / リザードマン / スケルトン / ワーウルフ / 騎馬兵 / ワイバーン / ゴーレム / サイクロプス / レッドドラゴン
外見はすべてプリミティブから手組みした独自デザイン(client/render/characters.ts)。頭装備・武器・体格でシルエットを差別化し、陣営は足元のリングと衣装の色味で識別。
Rendering mermaid diagram...
main.ts— HTTP エントリ。index.html/styles.css/client/**を配信client/game/— 描画に依存しない純粋ロジック(テスト・別レンダラー差し替えが容易)client/render/— Three.js。Simの状態を毎フレーム反映するだけ
- 手札タップ → 青いマスをタップで召喚(PC:
1〜8キー) - 大砲ボタン → 着弾点をタップ(PC:
C) - 右上「視点」で 3D 視点切替(PC:
V)、「速度」で ×2
client/data/units.ts の数値と client/game/sim.ts 冒頭の定数(城HP・砦HP・大砲)を編集。