DO/DOT
From Dark Omen Wiki
(explanation of the dot-file-format) |
m (Reverted edits by Ugaxygihydo (Talk) to last version by Ghabry) |
||
(6 intermediate revisions not shown) | |||
Line 1: | Line 1: | ||
- | + | The DOT-Files define where the dots on the overworld are drawn when the Grudgebringers are moving to there next mission. | |
+ | == Header == | ||
- | The | + | The header has a size of 16byte. It looks like that only the pathNum is interesting. |
- | It | + | |
+ | <source lang="cpp"> | ||
+ | struct HEADER | ||
+ | { | ||
+ | int dotIdentify; // identifies a DOT-File. Always 0x54444F54 (WDOT) | ||
+ | int unknown1; // always 0x67 | ||
+ | int unknown2; // 0x28, CH1_ALL.DOT has 0x060028 | ||
+ | int pathNum; // Number of different paths | ||
+ | }; | ||
+ | </source> | ||
- | |||
- | + | == Paths == | |
- | + | The first path directly follows the header.<br /> | |
- | + | They contain the x and y-coordinates of the points the path will follow.<br /> | |
- | + | The points are only orientations for the path. The actual path is drawn as a curve. | |
- | + | ||
- | + | <source lang="cpp"> | |
- | + | struct PATH | |
- | + | { | |
- | + | int pathPointsNum; // Number of points that discribe the curve | |
- | + | int x; // x-coordinate of a point | |
- | + | int y; // y-coordinate of a point | |
- | + | int padding[2]; | |
- | + | (loop again from int x until all paths points are read) | |
- | + | int unknown; // always 0x05 | |
- | + | int unknown2; // always 0x0A | |
- | + | int padding[2]; | |
- | + | int unknown[4]; | |
- | + | int padding[4]; // Garbage data like 0x004099AC | |
- | + | }; | |
- | + | </source> | |
- | + | ||
- | + | ||
- | + | == Footer == | |
- | + | ||
- | + | The footer is not of any interest. It does only contain two strings: | |
- | + | ||
- | + | Sourcecode-Path e.g.: D:\darkomen\SrcCode\public\MP_Dots\editor\dots\M4_ENG.bmp<br /> | |
- | + | Name of the used bitmap e.g.: M4_ENG.bmp | |
- | + | ||
- | + | But the bitmap name is not used ingame because there are different localized versions of the maps (with different filenames) | |
- | + | ||
- | + | == Editing Tools == | |
- | + | ||
- | + | A simple, Java-based editor by Ghabry: [http://ghabry.dark-omen.org/dotparser.zip DOT-Editor] | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
[[Category:Modifications]] | [[Category:Modifications]] | ||
+ | [[Category:File Formats]] |
Current revision as of 13:26, 20 November 2010
The DOT-Files define where the dots on the overworld are drawn when the Grudgebringers are moving to there next mission.
Contents |
Header
The header has a size of 16byte. It looks like that only the pathNum is interesting.
struct HEADER { int dotIdentify; // identifies a DOT-File. Always 0x54444F54 (WDOT) int unknown1; // always 0x67 int unknown2; // 0x28, CH1_ALL.DOT has 0x060028 int pathNum; // Number of different paths };
Paths
The first path directly follows the header.
They contain the x and y-coordinates of the points the path will follow.
The points are only orientations for the path. The actual path is drawn as a curve.
struct PATH { int pathPointsNum; // Number of points that discribe the curve int x; // x-coordinate of a point int y; // y-coordinate of a point int padding[2]; (loop again from int x until all paths points are read) int unknown; // always 0x05 int unknown2; // always 0x0A int padding[2]; int unknown[4]; int padding[4]; // Garbage data like 0x004099AC };
Footer
The footer is not of any interest. It does only contain two strings:
Sourcecode-Path e.g.: D:\darkomen\SrcCode\public\MP_Dots\editor\dots\M4_ENG.bmp
Name of the used bitmap e.g.: M4_ENG.bmp
But the bitmap name is not used ingame because there are different localized versions of the maps (with different filenames)
Editing Tools
A simple, Java-based editor by Ghabry: DOT-Editor