Releases: Torphedo/Esper-RE
Linux Support
New in this release:
- The program can now compile and run on Linux. The ELF executable is even smaller than the Windows one, at 11KB.
- Switched to MSVC instead of MinGW for Windows builds, which brings the executable size down from 60KB to 12KB.
- Fixed a bug where images would be outputted in info mode
DDS & Bug Fixes
New in this release:
- Switched image output to DDS. No more renaming output files to open them!
- Added error handling for several weird edge cases (like negative block sizes)
- Textures will be dumped based on offsets from the ALR rather than starting
0x4000
in each time (this was based on a flawed assumption). This should fix many textures getting the first 4096 bytes chopped off. - Files are now outputted from surface names in the file, rather than trying to output each individual TGA listed.
TODO:
- Mipmaps are being disabled for now, but they should be dumpable once I figure out where they're stored.
- Some textures still have incorrect bits per pixel calculations and won't work
Big Rewrite
This release, I rewrote large portions of the main code to be less bottlenecked by disk latency and memory allocations, and fixed a few bugs!
- The first texture in a texture dump will no longer have 4096 extra pixels at the start, which fixes some issues where the top left corner of an image would end up in the top-middle
- Animation output file will only be created if animation data is found
- Error messages and file info is now color coded: green for info, yellow for warnings, red for errors.
- More information about textures is printed now that the texture formatting is a little more explored
- The program now reads the entire file and allocates all the memory it will need at startup
Here's an example of a texture dump on this release vs. the last release:
ALR Animation Dumping
New in this release:
- When using the
--dump
flag, any animation data found in the ALR will be printed out toanimation_out.txt
as plain text. The second array type is still mystery data, so it's written in hexadecimal digits. This should be easier to read than the raw hex of the ALR.
ALR Texture Dumping
New in this release:
-
Added support for dumping texture data from ALRs. This is rather unstable, and often produces blank data. However, you can get a few usable textures out of
FDLogo.alr
. The program re-uses the internal texture names, meaning many textures will save with a.dds
extensions, even though they've actually been saved as TGA files. Rename them to.tga
before opening. -
Added command-line arguments. Use
--split
to split the file into chunks as it's organized in the header, and use--dump
to try to dump any available textures from the file. if you don't provide an argument (like by dragging an ALR on to the program), it will assume--split
.
ALR Dumper
New in this release:
- Added a new program that can extract blocks of data defined in the ALR header and dump them to separate files on disk. I hope this will be useful in spotting patterns between different ALRs and determining how the format works.
Usage: Drag & drop an ALR onto the program, it will dump to the folder containing the ALR. You may want to copy the ALR to a new folder before doing this, because it's common for over 100 files to be created. You can also run the program from the terminal with a filename as an argument.
Rudimentary ALR Support
New in this release:
- ALR Header parsing
- Rudimentary ALR block 0x15 parsing
- Better source code organization
- Much smaller binary (24KB)
Better Metadata
New in this release:
- Added mission clear / attempt stats
- Added multiplayer wins / win rate stats
- Cleaned up card printing spacing
Working Deck Parser
New in this release:
- Added the EsperReader program
- Binary deck parser support
The deck parser will tell you the name, number of schools, and a list of each card in a deck file.