EternalTDのタワー
EternalTDには、ダメージタワー1種、ウォールタワー1種、そして隣接するBasic Towerに作用するサポートタワー群があります。プレイヤーのホットバー/インベントリ内のすべてのタワーは現在のソースコードから生成されるため、以下の数値はゲーム内アイテムの説明文に表示されるものと一致します。
タワーのコストと表示マテリアル
| タワー | 基本コスト(ゴールド) | アイテムマテリアル | タワー本体に使用されるエンティティ | 属性 |
|---|---|---|---|---|
| Basic Tower | 10 | ARROW | SKELETON | 無属性 |
| Barricade | 3 | OAK_FENCE | IRON_GOLEM | 無属性 |
| Sugar Tower | 20 | SUGAR | SHEEP | 風 |
| Spyglass Tower | 20 | SPYGLASS | PHANTOM | 無属性 |
| Beam Generator | 40 | BEACON | GUARDIAN | 風 |
| Explosion Factory | 40 | TNT | CREEPER | 土 |
| Ice Box | 40 | SNOWBALL | POLAR_BEAR | 水 |
| Armor Crusher | 40 | SHIELD | PIGLIN_BRUTE | 土 |
| Obsidian Quarry | 20 | OBSIDIAN | ENDERMAN | 土 |
| Gold Mine | 100 | GOLD_ORE | VILLAGER | 無属性 |
| Napalm Dispenser | 40 | BLAZE_POWDER | BLAZE | 火 |
タワー価格のスケーリング
タワーコストは基本価格から始まり、セッション中の最初の15基まではその価格を維持します。それ以降、コードは表示価格に一定の追加料金を上乗せします:
cost + (int) (1.2 * floor(totalTowersInSession / 10))
結果は整数に切り捨てられ、そもそも追加料金が適用されるのはセッション内のタワーが15基以上になってからです。乗数が 1 ではなく 1.2 であるため、切り捨てによって刻み幅は不均等になります — 10基ごとに一律 +1 ではありません:
| セッション内のタワー数 | 追加料金 |
|---|---|
| 0〜14 | +0(完全に無効) |
| 15〜19 | +1 |
| 20〜29 | +2 |
| 30〜39 | +3 |
| 40〜49 | +4 |
| 50〜59 | +6 |
| 60〜69 | +7 |
| 70〜79 | +8 |
タワー数が15の倍数を超えるたびに、セッションは新しい追加料金をプレイヤーに通知します。
アップグレードコストは 4 × タワーの保存済みコスト です — 保存済みコストは追加料金を含まない基本価格であり、アップグレードのたびにそれ自体が4倍されていきます。タワーの売却では現在のコスト(追加料金込み)の75%が返ってきます。設置後5秒以内に売却した場合は購入価格の全額が返ります。
Basic Tower
実際にダメージを与える唯一のタワーです。
- 基本ダメージ: 1
- 基本射程: 10ブロック
- 基本攻撃速度: 1発あたり2秒(設定値であり、アイテムの説明文に表示される値)
- アップグレードでタワーのダメージが各レベルごとに倍増し、アーマーティアが変化します(革 → 鉄 → 金 → ダイヤモンド → ネザライト)。
- デフォルトでは矢を射出します。サポートタワーと組み合わせると挙動が変化します。
この飛び道具は本物の矢エンティティではありません。矢のアイテムを保持した ItemDisplay が1 tickごとにターゲットへ向けて操舵され、射程内に入った時点でダメージが手動で適用されます。現在のサーバービルドではタワー本体を構成するスケルトンが無敵かつAI無効であるため、本物の矢では命中が信頼できないからです。
タワーのスキャンループが発射するのは、内部カウンタが計算された攻撃間隔の2倍に達したときです。そのため実際の間隔は設定値の2倍になります — 基本では1発あたり2秒ではなく4秒です。同じ2倍化はビーム変換にも適用され、その5 tickの間隔は10 tickごとに発射されます。これは 0.5s base attack speed という表示行が報告している内容とまさに一致します。サポートタワーの攻撃速度ボーナスはこの間隔をスケーリングするだけで、2倍化を取り除くわけではありません。
Barricade
純粋なウォールタワーです。
- アップグレード不可。
- ゴール地点までの経路が確保できなくなる場合、敵をブロックできません(設置時に経路探索チェックが行われます)。
- 戦闘ボーナスなし。
サポートタワー
サポートタワーは射撃しません。隣接する8マスのいずれかに設置されたBasic Towerを修飾します。同じBasic Towerに対して、複数のサポートタワーの効果は累積します。
Sugar Tower(攻撃速度)
- 基本攻撃速度ボーナス: 隣接するBasic Tower 1基あたり +10%。
- アップグレードごとにさらに +10%。
Spyglass Tower(射程)
- 基本射程ボーナス: +1.5ブロック。
- アップグレードごとにさらに +1.5ブロック。
Beam Generator(変換: ビームタワー)
- Basic Towerに「ビームジェネレータ数」を追加します。
- 攻撃をビームに変換します:
- 基本攻撃速度が2秒から0.5秒に。
- 基本ダメージはタワーのダメージの1/8に低下。
- 同じターゲットに3秒間チャージし続けると、ビームは最大ダメージ倍率(3倍)に達します。
- アップグレードでビームジェネレータが追加され、ウォームアップ時間が短縮されます(
60 − 3 × (beamGenerators − 1)tick)。 - ビームは純粋に視覚的なパーティクルであり、エンティティの飛び道具はありません。
Explosion Factory(変換: AOE)
- 基本AOE範囲: 2.0ブロック。
- アップグレードごとにAOE範囲が0.5ブロック増加。
- 直接ヒットダメージは主要ターゲットには適用されません。代わりに、AOE範囲内のすべてのウェーブエンティティがタワーの処理済みAOEダメージ(基本の1/4)を受けます。
- 他のサポート効果(スロー、ファイアDOTなど)はAOEダメージ呼び出しを通じて伝播します。
Ice Box(スロー)
- ヒット時の基本スロー: 移動速度5%減少。
- アップグレードごとにさらに5%。
- スローはヒット毎に5秒間持続します。
resist属性のウェーブエンティティはスロー効果を完全に無視します。
Armor Crusher
- 基本アーマーダメージ: タワーのダメージの20%。
- アップグレードごとに10%追加。
- 合計アーマーダメージ配分は100%でキャップされます。
- ウェーブ10以降のウェーブエンティティはアーマー(
maxHealth / 80)を獲得し、削り切られるまで受信ダメージから差し引かれます。Armor Crusherはそのアーマーをより速く削ります。
Obsidian Quarry(クリティカルヒット)
- 基本クリティカル率: 5%。
- アップグレードごとにさらに5%。
- クリティカルはダメージを1.5倍にします。
- 合計クリティカル率は100%でキャップされます。
Gold Mine(バウンティ)
- 基本通貨ボーナス: 付帯するタワーが行ったキルで +10%。
- アップグレードごとにさらに10%。
Napalm Dispenser(ファイアDOT)
- 基本ファイアDOT配分: タワーのダメージの10%が時間経過の炎ダメージとして与えられます。
- アップグレードごとにさらに10%。
- ファイアDOTはアーマーを貫通し、9秒間で3 tickとして適用されます。
- DOT分は直接ヒットダメージから差し引かれるため、合計ダメージはバランスを保ちます。
- 合計ファイアDOT配分は100%でキャップされます。
タワーアップグレードの視覚効果
タワーのアーマースタンドの装備は、アップグレードレベルごとに変化します:
- レベル2 — 革のアーマー
- レベル3 — 鉄のアーマー
- レベル4 — 金のアーマー
- レベル5 — ダイヤモンドのアーマー
- レベル6 — ネザライトのアーマー
FreeMinecraftModelsがインストールされている場合、モデルもレベルごとに名前付きバリアント(stone、gold、diamond、emerald、netherite、redstone)に切り替わります。
ボーナス表示タグ
設置されたすべてのBasic Towerは、その上方に実効ステータスをリアルタイムで表示する不可視のアーマースタンドのスタックを持ちます。Damage と Attack Speed は常に表示され、残りの行はサポートタワーが実際にそのボーナスを提供している場合にのみ表示されます:
Damage、Attack Speed(常時)[Spyglass] +X range[Sugar] +X% attack speed[Beam] charge time / 0.5s base attack speed / charged beam damage[Explosion] X explosion range / X explosion damage[Ice] X% slow on attack / 5s slow duration[Crusher] X base damage to shield icon[Gold] +X% gold/kill[Glass] X% crit chance[Napalm] X% true damage fire DOT
プレイヤーツール
アクティブなセッション内で、プレイヤーは以下を入手します:
- ガイドブック(スロット0)
- 下段ホットバーのBasic TowerとBarricade(スロット1, 2)
- アップグレード、売却、次のウェーブツール(スロット6, 7, 8)
- 上段のメインインベントリ列はホットバーをミラーリングし、サポートタワー一式を保持します。すなわち、再度のガイドブック、Basic Tower、Barricade(スロット9〜11)、9種のサポートタワー(スロット12〜20)、そして再度のアップグレード、売却、次のウェーブ(スロット33〜35)です
タワーアイテムを右クリックすると、ターゲットしているグリッドマスに建設します。アップグレードまたは売却ツールを右クリックすると、ターゲットしているタワーマスに作用します。次のウェーブツールを右クリックすると、建設フェーズを早期終了します — こちらはターゲットブロックを必要としないため、どこを見ていても動作します。他のツールは、照準が何もない空に向いている場合、プレイエリア内のブロックを見るよう指示します。
ターゲティングには300ブロックのレイトレースが使用され、右クリックはプレイヤーごとに5 tickに1回へ制限されています。
タワー、アップグレード、売却のいずれかのアイテムを持っている間、アクションバーには関連する価格が継続的に表示されます(5 tickごとに更新):
- タワーアイテムを持っている場合 — そのタワーの現在のコスト(追加料金込み)が所持ゴールドの隣に表示され、購入可能なら緑、不足していれば赤になります
- アップグレードを持ってタワーを見ている場合 — そのタワーのアップグレードコストが所持ゴールドの隣に、同じ緑/赤の色分けで表示されます
- 売却を持ってタワーを見ている場合 — そのタワーの売却額だけが表示されます。この行は常に緑で、所持ゴールドの合計は表示されません。売却はコストではなく収入だからです
自分のアイテムはどうなるか
レベルに入ると、インベントリの中身、ゲームモード、飛行速度、飛行権限、飛行中かどうか、スコアボードのスナップショットが取られます。このスナップショットはインスタンスワールドへのテレポート前に取得されます。テレポートの最中は、サーバーがあなた自身の状態ではなくディメンション変更の猶予状態を報告するためです。マッチ中、あなたは無敵に設定され、飛行速度 0.3 で飛行します。
レベルを離れるとき — 勝利、敗北、クイット、/etd hub の使用、セッションの開始失敗のいずれであっても — それらはすべて復元されます。強制的にサバイバルにされるのではなく、入ったときのゲームモードに戻され、復元後はスナップショットが破棄されるため、2回目の復元でアイテムが消えることはありません。
無敵状態については、特に2点あります:
- 無敵状態はもはやスナップショットの一部ではありません。取得した値から復元されるのではなく、退出時に無条件で解除されます。取得した値がプレイヤーデータに書き込まれてしまうと、影響を受けたプレイヤーが恒久的に無敵のまま固定されかねないためです。
- スナップショットが残っていない場合(例えばマッチ中にプラグインがリロードされた場合)でも、EternalTDはマッチ状態を強制的に解除します — 無敵をオフにし、飛行速度を
0.1に戻し、クリエイティブまたはスペクテイターでない限り飛行を解除します — したがってプレイヤーが飛行状態や無敵状態のまま取り残されることはありません。