When a language establishes a convention of using plain
strings as exception types instead of something custom
that can hold e.g. a "code" property, it effectively waives its
right to i18n its error messages, or else programs cannot
differentiate between types of errors and catch/pcall
constructs are of very limited use. Unfortunately it seems
that Lua did not realize this, and loadfile returns a plain
string that is not usable due to i18n.
Rather than trying to catch the "file not found" error, do
a scan to look for the file first, and if it's found in the
directory listing, assume any errors that happen on loading
it are fatal.
A somewhat more optimized and cleaned up version of what I used
to rip the node appearances for Klots.
Added:
- Custom dumper with more compact format support
- Detecting reused tables and extracting into local vars
- Actually handling the media files instead of handing a list to
the user to go find via shell script
- Documentation, more chatcommands