Search for the df_announce_decode.pl and df_announce_encode.pl files from the very first thread. Download them. Then, for example, you could type:
perl df_announce_decode.pl df_linux/data/announcement/* > /tmp/announcement.txt
Into the console to have every file in the announcement folder decoded into the annoucement.txt in the tmp folder. Using them as a base, make a new file as you wish, like, rewriting messages or changing around when the elves come or whatever, then type:
perl df_announce_encode.pl /tmp/announcement.txt > df_linux/data/announcement
To encode it back. Please note that while you can decode multiple files at once, you can only encode one file at a time.
Guy who originally wrote those scripts here. Nice to see that people are still keeping this idea alive!
I actually have
an improved version of those scripts in my old github repo from the first thread. I merged them into a single script, and added some fancy command line switches. The idea is that you can run it once with the
--reverse switch, like this:
perl text_to_data.pl --basedir=df_linux/ --reverse
and it'll (try to) decode all the encoded data files in
df_linux/data into normal text files in a new directory named
df_linux/data_src. Then you can edit them as you like, and run it again:
perl text_to_data.pl --basedir=df_linux/
which will re-encode all the files that you edited. (It looks at the file timestamps to see which files have been changed.)
The improved script can (or at least could) also decode and re-encode a bunch of files that the original scripts couldn't, including the
data/index file that contains a bunch of paths to other files (among other things). Alas, there's some kind of a hardcoded checksum that I never managed to reverse engineer, so changing most of the strings in the index file will (would) cause DF to error out. Also, it should be noted that I haven't tried any of these scripts on recent DF versions, so for all I know some change might've broken them.
Caveat emptor.There's a bunch of other potentially useful scripts in that github repo too, like a
rudimentary raw validator, a
mineral color/symbol previewer (because the original project had a bunch of really weird looking stones due to people screwing up the color codes) and a
little helper script for spell-checking DF raws with ispell.
BTW, regarding github in general, I still think it would be (close to) the ideal tool for a project like this, but only if
all the people involved actually know how to use it (at least at a basic level, i.e. forking and cloning a repo, committing changes, pulling and pushing and making pull requests). If most people can't or won't use it, then the few that do will end up having to keep track of everyone else's changes, and if they get busy with other things (as happened to me back then), the whole github thing will just fizzle out.