Python library and command-line tools for working with Age of Empires I data files.
Render a scenario file to a diamond-shaped image showing terrain, resources and unit locations:
age-scenario minimap foo.scx --out foo.png
Extract game data to a YAML file. This makes it possible to compare game data files (eg. using diff
) to check the contents of a mod:
age-gamedata extract empires.dat --out empires.yml
Extract files from a DRS asset archive to find the "wololo" priest sound:
mkdir sounds
age-archive extract sounds.drs --directory sounds/
aplay sounds/5051.wav
Render the Babylonian-style Wonder as a PNG image as player 3 (yellow):
mkdir graphics interfac output/
age-archive extract --directory interfac Interfac.drs
age-archive extract --directory graphics graphics.drs
age-slp extract graphics/177.slp --palette interfac/50500.bin --player 3 --directory output/
Create an empty map (scenario file):
age-scenario create --size 50 my-sceanrio.scn
Show an XML representation of the parameters in an AOE2 random map script (*.rms
file):
age-rms validate Arabia.rms | xmllint -format -
dat
,scn
anddrs
format handling is directly based on SiegeEngineers/genie-rs.- SLP file format handling is based on the description at SFTtech/openage
- RMS parsing is based on the description in the Random Map Scripting Guide by Bultro and Zetnus.