Phoenixtools is a collection of tools designed to dissect and analyze the inner workings of the Ace Attorney series of video games. This open-source project provides resources for examining game files, extracting data, and converting various formats into more accessible forms. While still under development and considered unstable, PhoenixTools offers a powerful suite of utilities for dedicated fans and researchers.
Building and Debugging PhoenixTools
Building PhoenixTools requires a recent C compiler (like GCC) and Make. Necessary libraries are currently bundled with the project but may be transitioned to submodules in the future. The Makefile is designed for Linux; Windows users will need to adapt the build process.
Debugging can be performed using tools like GDB and Valgrind. Be aware that code quality and style may vary across different files. Error checking is minimal, so unexpected input could lead to unpredictable results.
Understanding Ace Attorney Terminology
For brevity, PhoenixTools often uses shortened names or entry numbers to refer to specific games in the Ace Attorney series. Here’s a helpful table:
Full Title | Short Name | Alternative Names |
---|---|---|
Phoenix Wright: Ace Attorney | phoenix1 | aa1, gs1 |
Phoenix Wright: Ace Attorney – Justice for All | phoenix2 | justice, aa2, gs2 |
Phoenix Wright: Ace Attorney – Trials and Tribulations | phoenix3 | trials, aa3, gs3 |
Apollo Justice: Ace Attorney | phoenix4 | apollo, aa4, gs4 |
Phoenix Wright: Ace Attorney – Dual Destinies | phoenix5 | aa5, gs5 |
Phoenix Wright: Ace Attorney – Spirit of Justice | phoenix6 | aa6, gs6 |
Miles Edgeworth: Ace Attorney Investigations | edgeworth1 | aai1, gk1 |
Miles Edgeworth: Ace Attorney Investigations 2 | edgeworth2 | aai2, gk2 |
Phoenix Wright: Ace Attorney Trilogy | trilogy |
Note that not all Ace Attorney games are represented in this repository, and tools may not be available for every listed game.
Exploring the PhoenixTools Toolkit
Most tools within PhoenixTools provide basic usage instructions when executed without arguments. While comprehensive documentation is planned for the future, the following overview summarizes key components:
File Maps (filemap*.txt/xlsx)
These files map out the contents of data.bin for Phoenix Wright: Ace Attorney (phoenix1) through Trials and Tribulations (phoenix3). Spreadsheets include detailed notes, while text files provide ready-to-use maps for the extract-phoenix_data
tool.
Apollo Content Package Map (apollo cpac map.txt)
This file lists the data types found within various content packages (CPACs) in Apollo Justice: Ace Attorney (phoenix4).
Image Conversion Tools (convert-*)
These tools convert various image formats from different Ace Attorney games into PNG files. Examples include apollo-image
, apollo-raw
, edgeworth-raw
, and uncompressed-image-header
. convert-text-messages
transforms extracted script binaries into readable text.
Extraction Tools (extract-*)
This set of tools extracts files from archives and other containers within the games. extract-phoenix_data
utilizes the file maps to extract data from Phoenix Wright: Ace Attorney (phoenix1) through Trials and Tribulations (phoenix3). Other tools include apollo-cpac
, archive
, edgeworth-archive
, and trilogy-pack
.
Other Utilities
PhoenixTools also includes utilities like find-compressed-files
for locating LZ-compressed files and generate-edgeworth-tilemap
for creating tilemaps used with convert-edgeworth-raw
. The phoenixgfx.*
files contain functions for handling various graphics data formats found in the games.
Conclusion
PhoenixTools, despite its ongoing development, offers a valuable resource for delving into the technical aspects of the Ace Attorney games. With its collection of extraction, conversion, and analysis tools, PhoenixTools empowers users to uncover hidden details and gain a deeper understanding of these beloved titles.