Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
UnBattletech — BattleTech: The Crescent Hawk's Inception engenharia reversa | Kitploit
Ferramentas/GitHubGitHub/velteyn/unbattletech
Análise EstáticaEngenharia ReversaDepuradoresAnálise de BináriosAprendizado e EducaçãoAnálise de Firmware
GitHubvelteyn/unbattletech

UnBattletech

BattleTech: The Crescent Hawk's Inception engenharia reversa

Ver Repositório
81há 1 mêsAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

UnBattletech — Engenharia Reversa de BattleTech: The Crescent Hawk's Inception (1988)

RE Status Godot Rebuild

Análise de engenharia reversa e reconstrução em Godot 4 + C# de BattleTech: The Crescent Hawk's Inception, o jogo MS-DOS de 1988 da Infocom.

Estrutura do Repositório

root@kitploit:~
├── docs/               # RE documentation & findings
│   ├── CONTEXT.md      # Master context (1050+ lines)
│   ├── TECHNICAL_ANALYSIS.md  # Comprehensive technical analysis (3211 lines)
│   ├── MEMORY_MAP.md   # Full memory map (603 lines)
│   ├── ADDRESS_REFERENCE.md   # Address reference (1035 lines)
│   ├── BLD_BYTECODE.md # BLD bytecode specification (342 lines)
│   ├── WORLD_MAP_FINDINGS.md  # World map analysis (321 lines)
│   ├── REBUILD_PLAN.md # Godot rebuild plan
│   ├── REBUILD_ROADMAP.md     # Rebuild roadmap
│   └── STORY_TEXT.txt  # Extracted full story text
│
├── tools/              # Python analysis tools
│   ├── bld/            # BLD script tools (decoder, converter, viewer)
│   ├── assets/         # Asset extraction & rendering tools
│   └── analysis/       # RE analysis tools
│
├── reko/               # Reko decompiler output
│   ├── UNBTECH.exe.c   # Full C decompilation (2MB)
│   ├── UNBTECH.exe.h   # Header with struct definitions
│   ├── UNBTECH_all.asm # Combined disassembly (60K lines)
│   └── segments/       # Per-segment .c/.asm/.dis files
│
├── asm/                # Assembly analysis
│   └── discoveries.asm # Manual analysis notes
│
├── json/               # BLD → JSON conversions (26 files)
│
├── spice86/            # Spice86 emulation outputs
│
├── BattleTechCHI/      # Godot 4 + C# rebuild
│
├── original/           # Original game assets (local only, not uploaded)
│   ├── bld/  cmp/  icn/  mtp/  anm/  saves/  exe/
│
├── extracted_assets/   # Rendered PPM/PNG from game assets
└── Assets/             # Converted sprite/tile sheets

Principais Conquistas da RE

  • Bytecode BLD totalmente engenharia reversa: 26 opcodes, cifra de substituição, interpretador de 4 camadas
  • Mapa mundial decodificado: grade de 64×64 tiles, 93 tipos de tile, sistema de névoa de guerra
  • Sistema de combate documentado: 2D6 para acerto, ray-casting de LoS, IA de alvos, calor/munição
  • História totalmente extraída: todos os 26 scripts BLD decodificados com marcadores narrativos
  • Mapa de memória completo: mais de 100 endereços mapeados em todos os segmentos

Progresso da Reconstrução em Godot

A reconstrução está na Fase 6 (integração de ANM + ANM de combate). ~8.000 linhas de C# em mais de 45 scripts em BattleTechCHI/Scripts/.

  • ✅ Fase 0–1: Mecanismo central, modelos de dados, carregadores de assets, loop do jogo, salvamento/carregamento parcial
  • ✅ Fase 2: Renderização de tiles, viewport do mapa mundial, mapas locais, LocationMapper, névoa de guerra
  • ✅ Fase 3: Interpretador BLD (26 opcodes), decodificador de cifra, dispatcher de 47 casos (todos implementados), diálogo, ShopScreen
  • ✅ Fase 4: Combate — iniciação, ordem de turnos, movimento, LoS, acerto (2D6), dano, IA, calor/munição, névoa, HUD, encontros
  • ✅ Fase 5: AnmPlayer + ViewportManager + BldAnmMap, descompressão de ANM em tempo de execução
  • ✅ Fase 6: ANM do painel de mecha em combate (MechPortrait), ANM do cursor do mapa, correção de StorySlots 16→8, correção da unidade A: do emulador
  • ⬜ Fase 7: Testes de jogabilidade ponta a ponta, polimento (VFX, BTSTATS, som, refatoração de w4FBC, migração para TileMapLayer)

Emulador e Introspecção em Tempo de Execução

Emulador Spice86 com 19 ferramentas MCP específicas do BattleTech para introspecção do estado do jogo em tempo de execução:

  • Ler/escrever estado do jogo (array de estado, slots de história, slots de unidades, cursor, créditos, flags)
  • Ler grades de combate, posições de unidades, névoa de guerra
  • Injetar entrada de teclado (scriptar o jogo através de menus)
  • Ler registradores da CPU e memória
root@kitploit:~
# Start emulator with MCP server on port 8081
dotnet exec bin/Debug/net10.0/UNBATTLETECH.dll \
  --Exe "/path/to/BTECH.EXE" \
  --CDrive "/path/to/game/" \
  --HeadlessMode Minimal --McpHttpPort 8081 --NoGui

# Read game state
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":{}}}'

Ferramentas e Scripts

root@kitploit:~
# Convert BLD → JSON and back
python3 tools/bld/bld_json_converter.py to-json original/bld/

# Extract full story text
python3 tools/bld/extract_story.py

# Decode all BLD files with opcode analysis
python3 tools/bld/decode_bld.py

# ASCII terminal viewer for maps
python3 tools/bld/ascii_viewer.py

# Render CMP assets to PPM
python3 tools/assets/extract_assets.py

# Build C# rebuild
cd BattleTechCHI && dotnet build

# Build emulator
dotnet build UNBATTLETECH.csproj

Aviso Legal

Este repositório contém nenhum asset original do jogo (BLD, CMP, EXE, etc.). Apenas análise de engenharia reversa, documentação e código-fonte original para uma reconstrução em sala limpa estão incluídos. Os assets originais do jogo permanecem em original/ apenas para desenvolvimento local (gitignored).

Baixar ferramenta