Runnable JAR: http://metropolisdawn.com/files/modder- ... reader.zip
Images: http://metropolisdawn.com/files/modder- ... reader.zip
Source code: http://metropolisdawn.com/files/modder- ... reader.zip
Most recent changes: 17th April 2010
- Multiplayer buildings use singleplayer buildings as a fallback.
- LDF parsing now uses regex to be more flexible against unexpected crap.
- Directories are now recursively processed. Subdirectory tree is preserved when processing.
- Added the -n option to append the name of the level to the output filename.
- The -o option is now actually optional. Previously, an oversight caused it to be required.
- The -o option allows writing to a single file if there's only a single file of input.
- The -o option now attempts to create an output directory if there is more than one input.
Feel free to make improvements to the code. Since there isn't a source control repository for it (yet?), you'll probably have to send them to me or post them here. Or something like that...
ualr.jar and the images are the only things you need if the only thing you want to do is start generating some levels.
The src archive is for those who want to look at how I made this thing and/or help me by improving it. I have included all source files for the code, all supporting libraries used (currently, just jExcelApi), and even threw in an Ant file for good measure! You don't need this to run UALR.
UALR works on the command-line only, because I dislike GUI programming (see FAQ). The command typically takes on the following form:
Code: Select all
java -jar ualr.jar [options] <input1> [<input2> [<input3> ...]]
- -i <image-dir>: Tells where the images are (it defaults to trying img/ in the current directory).
- -o <output-dir>: The output directory tells UALR where to put the resulting XLS files. If you specify nothing, all output files appear in the same directory as the input file they were generated from. If you have only one file in your input, a filename is acceptable as well, in which case the output will be written to that filename.
- -n: makes UALR append the name of the level to the name of the output file.
- -t: makes UALR output in text format instead of XLS. This isn't terribly interesting.
In case you'd like an example, here's what I'd normally do to run it:
Code: Select all
java -jar ualr.jar -o resistance-xls single
Chokes on L6565.ldf; this is because the file is malformed. Go to line 537 of L6565.ldf, and add an end after each of the two add_energy lines.
I will determine whether there is a way to make the parser resistant against forgotten end tags, but I'm not convinced whether it's possible and/or wise to do so.
Yeah. That's about all I can think of at this point. Have fun, enjoy, go wild.
Q: Why isn't there a GUI?
A: If you really want one, patches welcome. I have no plans to make a GUI because it would have ZERO tangible benefit (this is a one-shot program pretty much, and there really isn't any complicated configuration needed that would warrant a GUI) and command-line stuff works just as well.
Level maps - contains some pre-generated versions of the level maps.
Wiki page on the UALR.