The principle of getting a nice looking map is quiet easy, the problem is to get generate the height map (or bump map). The bump map is a greyscale graphics, white is high, black is deep. If you paste a texture over it you get a nice looking graphic, little tutorial how this is done with Gimp.
The heightmaps are stored in the same subfolders as the graphics tiles, for example heightmap_31_95.aei. It needs to be investigated how the .aei format is built.
It would be great if you could fix your tool Fridlekh! Would save a lot of work, I don't need a fancy user interface, a command line driven tool would do it, I'm used to work with such things.
Else some infos about the world cache:
1. sector_info.def
...\world_cache\orderhorizons\sector_info.def
This file contains the information for which sectors and coordinates are entries in the world cache. For example the Fiery Rift, it contains the coords and sectorID pointing to the related file.
Code:
SECTOR_INFO
{
int sectorID = 19421
int type = 2
int version = 243
bool dynamic = 0
float minX = 15000.000000
float minY = 46500.000000
float maxX = 15500.000000
float maxY = 47000.000000
}
SECTOR_INFO
{
int sectorID = 19422
int type = 2
int version = 243
bool dynamic = 0
float minX = 15000.000000
float minY = 47000.000000
float maxX = 15500.000000
float maxY = 47500.000000
}
SECTOR_INFO
{
int sectorID = 19423
int type = 2
int version = 243
bool dynamic = 0
float minX = 15000.000000
float minY = 47500.000000
float maxX = 15500.000000
float maxY = 48000.000000
}
SECTOR_INFO
{
int sectorID = 19453
int type = 2
int version = 243
bool dynamic = 0
float minX = 15500.000000
float minY = 46500.000000
float maxX = 16000.000000
float maxY = 47000.000000
}
SECTOR_INFO
{
int sectorID = 19454
int type = 2
int version = 542
bool dynamic = 0
float minX = 15500.000000
float minY = 47000.000000
float maxX = 16000.000000
float maxY = 47500.000000
}
SECTOR_INFO
{
int sectorID = 19455
int type = 2
int version = 98
bool dynamic = 0
float minX = 15500.000000
float minY = 47500.000000
float maxX = 16000.000000
float maxY = 48000.000000
}
2. terrain_info.def
Important are the coords and IDs from the sector_info.def, they point to the terrain_info.def, as example I take the sectorID = 19421, this points to the entry in the terrain_info.def
Code:
SECTOR_INFO
{
int iX = 30
int iY = 93
int ownerID = 19421
MASK_INFO
{
int maskInd = -1
int version = 19
}
MASK_INFO
{
int maskInd = 20
int version = 1
}
MASK_INFO
{
int maskInd = 46
int version = 1
}
MASK_INFO
{
int maskInd = 51
int version = 1
}
MASK_INFO
{
int maskInd = 52
int version = 1
}
MASK_INFO
{
int maskInd = 54
int version = 1
}
MASK_INFO
{
int maskInd = 59
int version = 3
}
}
Important are the int iX = 30, and int iY = 93 as these points to the subfolders where the graphic tiles and the other files are stored, ...\terrain\30_93\.
The maskInd = 20 points to the file ...\world_cache\orderhorizons\terrain\30_93\mask[20]_30_93.aei, I think those containing the data for buildings and such, I haven't investigated further these files.
3. 30_93
int iX = 30
int iY = 93
The following subfolders belong to the Fiery Rift, arranged in this pattern:
30_95 31_95 32_95
30_94 31_94 32_94
30_93 31_93 32_93
31_95
And the folder containing the graphic tiles, arranged in this pattern:
chunk04_128.png chunk14_128.png chunk24_128.png chunk34_128.png chunk44_128.png
chunk03_128.png chunk13_128.png chunk23_128.png chunk33_128.png chunk43_128.png
chunk02_128.png chunk12_128.png chunk22_128.png chunk32_128.png chunk42_128.png
chunk01_128.png chunk11_128.png chunk21_128.png chunk31_128.png chunk41_128.png
chunk00_128.png chunk10_128.png chunk20_128.png chunk30_128.png chunk40_128.png
And the heightmap file ist stored there too, in one of the files need to be the information for water and such, but I don't know how this .aei format is built.
heightmap_31_95.aei contains the height information needed to generate a bump map file.