/eurochef

Rust crates and utilities for Eurocom EngineX(T) files.

Primary LanguageRustMIT LicenseMIT

👨‍🍳 Eurochef

Cooking up some EDBs

Eurochef provides tools and Rust crates for working with Eurocom EngineX(T) files; including filelist, .edb, .sfx and .elx files.

Features

  • Easy to use CLI Tool
  • Texture extractor
    • Supported output formats: png, qoi, tga
  • Entity extractor
  • Map extractor
    • Blender plugin
  • Filelist re-packer
  • GUI viewer tool (WIP)
  • Filelist VFS
  • Intermediate representation of EDB files
  • EDB to Euroland 4 decompiler
  • And more?

Support Matrix

Games (EDB)

(Priority currently lies with Spyro and G-Force)

Game (EDB Version) Textures [1] Maps Scripts Entities Animations Particles Spreadsheets
Sphinx and the Shadow of Set Demo Disc (156) ✅/❌ ✅/❌ ✅/❌
Buffy The Vampire Slayer: Chaos Bleeds (170) ✅/❌ ✅/❌ ❔/❌
Sphinx and the Cursed Mummy (182) ✅/❌ ✅/❌ ✅/❌
Spyro: A Hero's Tail (240) ✅/❌ ✅/❌ ✅/❌ ✅/❌
Robots (248) ✅/❌ ✅/❌ ✅/❌ ✅/❌
Predator: Concrete Jungle (250) ✅/❌ ❔/❌ ✅/❌ ✅/❌
Batman Begins (251) ✅/❌ ✅/❌ ✅/❌ ✅/❌
Ice Age 2: The Meltdown (252) ✅/❌ ✅/❌ ✅/❌ ✅/❌
Pirates of the Caribbean: At World's End (252) ✅/❌ ✅/❌ ✅/❌
Ice Age: Dawn of the Dinosaurs (260) ✅/❌ ✅/❌ ✅/❌ ✅/❌
G-Force (259) ✅/❌ ✅/❌ ✅/❌ ✅/❌
Spider-Man 4 (263) ✅/❌ ✅/❌ ✅/❌ ✅/❌
GoldenEye 007 (263) ✅/❌ ✅/❌ ✅/❌ ✅/❌

[1] Texture/entity support only indicates the ability to read headers and frame data. See the platform matrix for texture/mesh encoding/decoding support

❔ indicates an untested feature

Each field is formatted as R/W. For example, if a feature can be read, but not written, the field would be ✅/❌. If a feature can be both/neither read and/or written it will be represented by a single icon instead

Platforms

Platform Endian Textures Sounds Mesh Support status[4]
PC LE [2]/❌ ✅/❌
Xbox LE [2]/❌ ✅/❌
Xbox 360 BE [2]/❌ ✅/❌ 🆗
GameCube BE [2]/❌ ✅/❌ 🆗
Wii BE [2]/❌ ✅/❌ 🆗
Wii U BE
PlayStation 2 LE [2]/❌ 🚧[3]/❌ 🆗
PlayStation 3 BE

[2] The most significant formats have been implemented, no games using the remaining formats are currently known

[3] Currently has broken triangle strips, and no transparency information/flags.

[4] ✅ = First class support 🆗 = Secondary support ❌ = Unsupported

Filelists

Version Read Write
v4
v5
v6
v7
v9
v10
v11
v12
v13