ニュースニュース

開発ログ

2026年10月25日

Line Tower: エンジンを生んだ迷路

DESIGN記事 #19
Line Tower:深宇宙の4つのレーン。それぞれ建設者の色で彩られている
Line Tower:深宇宙の4つのレーン。それぞれ建設者の色で彩られている

Line Tower Wars は、最も多く遊ばれているWarcraft IIIマップの一つで、ルールは単純です。各建設者は1つのレーンを持ち、タワーで迷路を作ってクリーパーが渡るのに時間がかかるようにし、クリーパーを隣の建設者のレーンへ送ります。送るたびに、収入が永続的に増えます。クリーパーを通してしまった者は命を失います。最大12人の建設者が、Steam経由のオンラインでも、コンピューターのプレイヤー相手でも遊べます。

保護されたマップを読む

参照元はLine Tower Wars: Reforged 12.1bです。マップのスクリプトは34,580行あり、保護されています。名前は暗号化され、領域やユニットはコードの中で作られ、テキストはスキルのツールチップに隠されています。10月9日の作業は、その文字列テーブルを再構築し、スクリプトを一行ずつ注釈し、オブジェクトデータと照らし合わせることでした。マップが設定しているものと、ゲームの標準の値を分けたのです。コードがそれ自身のツールチップと矛盾する場合は、Line Towerはツールチップに従います。コンテンツはマップのデータから直接生成され、どこが一致し、どこがまだ一致しないかを、一行ずつ説明するドキュメントがあります。

マップからは、レーンと迷路、建設者、ショップとその在庫、送り、収入、ライフとリサイクル、研究とStart Tech、すべてのタワーとクリーパーの特徴、技術ディスク、修飾子、コンピューターのプレイヤー、レーティング、スキンが生まれました。マップは信頼できないデータとして扱われます。空のフォルダーにコピーされ、そこから何も実行しない抽出ツールによって読まれます。

エンジンが生まれた日

Line Towerは、1週間で始まった3本目のゲームで、ゼロから始まらなかった最初のゲームです。Castle Survivorsのコア、つまりそのルールではないものすべては、同じ日に独自のパッケージへ移されました。Kastleです。Line Towerは「エンジンとゲームのフォルダー」であり、マニフェスト、シミュレーション、コンテンツ、ロックステップのセッション、画面を持ちます。エンジンはゲームを決してインポートせず、自動チェックがそれを保証しています。Kastleとは何か、そして次の2週間でどう変わったかは、専用の記事にあります。

レーンの迷路。惑星の下で、タワーの間をクリーパーが曲がりくねって進んでいる
レーンの迷路。惑星の下で、タワーの間をクリーパーが曲がりくねって進んでいる

すでに遊べるもの

数日のうちに、Line Towerは、ゲームとして遊ぶために必要なものを揃えました。リプレイと同期ずれのレポート、すべてのマップのレーンのサムネイル付きの深宇宙マップ、星雲の空を持つ4つのマップ、ランダムなマップ、そしてメニューの背後で障害物を走る羊です。サンドボックスでの8ステップのクイックチュートリアル。武器ごとの発射、マップごとのクリーパーの陣営とサウンドスケープ。建物のホログラム状のゴースト、射程の輪、シェーダーで描かれたグリッド、タワーが建つ間にツルハシで打つ建設者、弾道の狙いを持つ大砲、距離によって狙う砲身、建てる、アップグレードする、売るためのエフェクト、そしてそれぞれのボタンが何を取り消すかです。武器のレシピには元素の変種と位置付けられた音があり、コマンドカードとユーティリティボタンにはアートがあり、クリーチャーのアニメーションはGPUで行われます。

ネットワークは深くテストされました。2つのLANインスタンスを使うエンドツーエンドのテストで、プレイヤーを切断して再接続させ、さらに厳しいソークのシナリオも行いました。このゲームには、Steamおよび Steam Deck 向けのLinuxビルドがあり、Deckのガイドもあります。また、完全にコントローラーで遊べます。十字キーで召喚の円を歩き、Yで研究し、Viewでホームに戻ります。

24日と25日、Line TowerはデータをKastle Studioへ書き出し、そこで編集された内容を取り戻し始め、エンジンの新しいラウンド(飛行中のコマンドを運ぶ再参加、部分ごとのチェックサム、決定論のリント)を取り入れ、コマンド1つでのSteamテストビルドも加えました。

まだ暫定のもの

Line Towerの名前、美術、サウンド、テキストは私たち独自のものですが、暫定です。ゲーム自身の世界観が次の段階です。

— チーム