Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
UnBattletech — BattleTech: The Crescent Hawk's Inception リバースエンジニアリング | Kitploit
ツール/GitHubGitHub/velteyn/unbattletech
静的分析リバースエンジニアリングデバッガバイナリ解析学習と教育ファームウェア解析
GitHubvelteyn/unbattletech

UnBattletech

BattleTech: The Crescent Hawk's Inception リバースエンジニアリング

リポジトリを見る
811ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

UnBattletech — BattleTech: The Crescent Hawk's Inception (1988) のリバースエンジニアリング

RE Status Godot Rebuild

Infocom が 1988 年にリリースした MS-DOS ゲーム BattleTech: The Crescent Hawk's Inception のリバースエンジニアリング解析、および Godot 4 + C# による再構築です。

リポジトリ構成

root@kitploit:~
├── docs/               # RE ドキュメントと調査結果
│   ├── CONTEXT.md      # マスターコンテキスト(1050+ 行)
│   ├── TECHNICAL_ANALYSIS.md  # 包括的な技術解析(3211 行)
│   ├── MEMORY_MAP.md   # 完全なメモリマップ(603 行)
│   ├── ADDRESS_REFERENCE.md   # アドレスリファレンス(1035 行)
│   ├── BLD_BYTECODE.md # BLD バイトコード仕様(342 行)
│   ├── WORLD_MAP_FINDINGS.md  # ワールドマップ解析(321 行)
│   ├── REBUILD_PLAN.md # Godot 再構築計画
│   ├── REBUILD_ROADMAP.md     # 再構築ロードマップ
│   └── STORY_TEXT.txt  # 抽出済みストーリー全文
│
├── tools/              # Python 解析ツール
│   ├── bld/            # BLD スクリプトツール(デコーダ、コンバータ、ビューア)
│   ├── assets/         # アセット抽出・レンダリングツール
│   └── analysis/       # RE 解析ツール
│
├── reko/               # Reko 逆コンパイラの出力
│   ├── UNBTECH.exe.c   # 完全な C 逆コンパイル結果(2MB)
│   ├── UNBTECH.exe.h   # 構造体定義を含むヘッダ
│   ├── UNBTECH_all.asm # 統合逆アセンブル結果(60K 行)
│   └── segments/       # セグメント別の .c/.asm/.dis ファイル
│
├── asm/                # アセンブリ解析
│   └── discoveries.asm # 手動解析ノート
│
├── json/               # BLD → JSON 変換結果(26 ファイル)
│
├── spice86/            # Spice86 エミュレーション出力
│
├── BattleTechCHI/      # Godot 4 + C# 再構築
│
├── original/           # オリジナルゲームアセット(ローカル専用、アップロードなし)
│   ├── bld/  cmp/  icn/  mtp/  anm/  saves/  exe/
│
├── extracted_assets/   # ゲームアセットから生成した PPM/PNG
└── Assets/             # 変換済みスプライト/タイルシート

主要な RE 成果

  • BLD バイトコードを完全リバースエンジニアリング: 26 オペコード、置換暗号、4 層インタープリタ
  • ワールドマップを解読: 64×64 タイルグリッド、93 タイルタイプ、フォグ・オブ・ウォーシステム
  • 戦闘システムを解明: 2D6 命中判定、LOS レイキャスティング、AI ターゲティング、熱量/弾薬
  • ストーリーを完全抽出: 全 26 の BLD スクリプトをナラティブマーカー付きでデコード
  • メモリマップを完成: 全セグメントにわたって 100+ アドレスをマッピング

Godot 再構築の進捗

再構築は Phase 6(ANM 統合 + 戦闘 ANM)にあります。BattleTechCHI/Scripts/ 内に 45+ スクリプト、約 8,000 行の C# があります。

  • ✅ Phase 0–1: コアエンジン、データモデル、アセットローダー、ゲームループ、部分的なセーブ/ロード
  • ✅ Phase 2: タイルレンダリング、ワールドマップビューポート、ローカルマップ、LocationMapper、フォグ・オブ・ウォー
  • ✅ Phase 3: BLD インタープリタ(26 オペコード)、暗号デコーダ、47 ケースのディスパッチャ(すべて実実装)、ダイアログ、ShopScreen
  • ✅ Phase 4: 戦闘 — 初期化、ターン順、移動、LOS、命中判定(2D6)、ダメージ、AI、熱量/弾薬、フォグ、HUD、エンカウント
  • ✅ Phase 5: AnmPlayer + ViewportManager + BldAnmMap、実行時 ANM 展開
  • ✅ Phase 6: 戦闘メックパネル ANM(MechPortrait)、マップカーソル ANM、StorySlots 16→8 修正、エミュレータ A: ドライブ修正
  • ⬜ Phase 7: エンドツーエンドのプレイテスト、仕上げ(VFX、BTSTATS、サウンド、w4FBC リファクタリング、TileMapLayer 移行)

エミュレータと実行時イントロスペクション

Spice86 エミュレータに、実行時ゲーム状態のイントロスペクション用の BattleTech 専用 MCP ツールを 19 個搭載:

  • ゲーム状態の読み書き(状態配列、ストーリースロット、ユニットスロット、カーソル、クレジット、フラグ)
  • 戦闘グリッド、ユニット位置、フォグ・オブ・ウォーの読み取り
  • キーボード入力の注入(メニューを介したゲーム操作のスクリプト化)
  • CPU レジスタとメモリの読み取り
root@kitploit:~
# MCP サーバーをポート 8081 で起動
dotnet exec bin/Debug/net10.0/UNBATTLETECH.dll \
  --Exe "/path/to/BTECH.EXE" \
  --CDrive "/path/to/game/" \
  --HeadlessMode Minimal --McpHttpPort 8081 --NoGui

# ゲーム状態の読み取り
curl -s -X POST http://localhost:8081/mcp/ \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"bt_get_state","arguments":{}}}'

ツールとスクリプト

root@kitploit:~
# BLD → JSON 変換と逆変換
python3 tools/bld/bld_json_converter.py to-json original/bld/

# ストーリー全文の抽出
python3 tools/bld/extract_story.py

# オペコード解析付きで全 BLD ファイルをデコード
python3 tools/bld/decode_bld.py

# マップ用 ASCII ターミナルビューア
python3 tools/bld/ascii_viewer.py

# CMP アセットを PPM にレンダリング
python3 tools/assets/extract_assets.py

# C# 再構築のビルド
cd BattleTechCHI && dotnet build

# エミュレータのビルド
dotnet build UNBATTLETECH.csproj

免責事項

このリポジトリにはオリジナルのゲームアセット(BLD、CMP、EXE など)は一切含まれません。含まれるのはリバースエンジニアリング解析、ドキュメント、およびクリーンルーム再構築用のオリジナルソースコードのみです。オリジナルゲームアセットはローカル開発専用として original/ に残されています(gitignore 対象)。

ツールをダウンロード