Thanks for this great investigation, I wouldn't have known how to start decently with it. Now this is what I'm going to attempt.

Create a C# 4.5 library DosTerrainLibrary with following convenience methods

Code
- void ReadTerrain(int width, int height, string filename)
  Will read the terrain file into a memory data structure
- void WriteTerrain(string outputFileName)
  Writes the memory data structure to a file
- void SetAltitudeAt(int x, int y, int min, int max, float height)
  Sets a particular intersection of tiles to given float height (scaled with min and max to DOS scale)
- int CreateTextureLayer()
  Creates a new texture layer at the bottom and returns it's index
- void RemoveTextureLayerAt(int index)
  Removes a texture layer at given index
- Layer GetLayerAt(int index)
  Returns a layer at given index
- void SetTriangleIntensityAt(int x, int y, Layer layer, single intensity)
  Will set the layers intensity at x, y with given intensity


I might come up with more needed methods but for now this should do. Now mind you I'm a java developer so .NET is something I try to learn in my spare time. I'm not proficient in it in any way. So this might take me a decent amount of time to develop. I'll open source it ofcourse so anyone can pitch in or give advice evil

edit:

What I don't get though, is where is the type of texture stored ? You got the layers and intensity , but where is stored if it is rock, sand or whatever ?

Last edited by Celludriel; 25/07/14 01:35 PM.