.TED research remains ongoing. A timeframe is hard to place on these sorts of things, but at least a little more understanding is gained each day.
Tribes either using QuadTrees or Octrees (I think they actually used octrees in this case)
They may actually be using quadtrees. It is worth noting that
Andrew posted some linkage supporting the use of quadtrees (
see here, the original site is dead), and that TGE also uses quadtrees for its terrain. Unfortunately, it seems Andrew's method of obtaining the heightmaps was just to dump them from memory where everything is stored simply, which does not help with the file format.
dtf files seem to be compressed, as flat map (not completely flat, ranging 0-8 in height) produce a file size of 182kb and from what I see no real pattern, while a truly flat map (all value 0) produces a file size of 60kb and a slight patter emerges...still working out what each block is though. If I had to guess the portion is pin/flag info, next is the height maps, material information, then after that there is no pattern so I can't even guess what is being stored in their...maybe terrain rotation data or something.
From what I know about tribes the compression is either lzh or rle...haven't bothered figuring out which yet or even if they use something else
They are definitely doing something wonky while storing terrain data as a file. Changing the height of a single point causes nearly a tenth of the file to change, and comparing that version of the terrain with another version where that same point is changed again also results in that same tenth being changed entirely. However, it is worth noting that while adding a flag causes that same tenth to change entirely, different versions of that same terrain with various flags at that same point only show minor (read: two byte) differences between each other. I also noticed the same trend you did where simplified terrains take less space, especially after relighting a flat terrain such that it has no shadows. My next tests will probably involve aspects of the terrain other than the heightmap in the hopes they will be stored more simply or at least provide clues.