I just uploaded the my source files to 0.5.3DR2 that have to be changed to make it compatible with ZoneProxy. You can get it at:
http://prdownloads.sourceforge.net/e...e.zip?download
I've been considering documenting what I know about .WLD files for a long time. It's definitely an overdue project, but I simply haven't had the time for it yet.
There are two major issues when dealing with .WLD files: the file format itself (that is, the overall file organization, including dealing with string locations, etc.) and fragment definitions. Documenting the fragment types will consume 99% of the document and is the most important part.
A .WLD file contains what are called "fragments" (that's what the original ZoneConverter source calls them--I have no idea who wrote it). A fragment is basically just a data structure, and there are two overall types:
- standalone fragments
- fragments that have a built-in reference to another fragment (such a fragment is a superset of a standalone fragment)
Fragments that reference other fragments are something like nodes in a linked list: they contain information that's related to another fragment, such that the client will want to be able to walk from one fragment to another. An example is animated meshes: there is a fragment that details basic mesh information, but if that mesh is animated it will contain a reference to another fragment that contains the additional animation stuff (actually there is a "glue" fragment that sits in the middle, kind of like an animation reference fragment--these "glue" fragments let data that takes a lot of memory be reused). Fragments can contain multiple such references, but the FragmentReference flavor always gives you one for free. Any others are specific to a fragment type.
Every fragment, whether standalone or otherwise, contains an ID value that tells the client its type. The highest ID I've seen to date is 0x37. That's not to say I've encountered every ID between 0 and 0x37, but there are a lot of different kinds of fragments. I've figured out most of the ones I've seen, though some are still a mystery. Others are only partially understood.