- 3,202
- Philippines
- skygrasper_550--
Well I haven't got far, but it looks possible
Code://-------------------------------------- //--- 010 Editor v3.1 Binary Template // // File: TrackEditor.bt // Author: Outspacer // Revision: 1.0.0 // Purpose: cracking the tracks //-------------------------------------- struct FILE { struct HEADER { char fileid[6]; int version; // =105 version??? byte unknown[6]; // ={0,0,0,0,0,0} int name_section_start; // offset from start of file int name_section_count; // =1 int info_section_start; int info_section_count; // =1 int path_section_start; int path_section_count; // = number of anchors + 2 ??? int section4_start; int section4_count; int section5_start; int section5_count; } header; struct NAME_SECTION { char name[header.info_section_start - header.name_section_start]; } name_section; struct INFO_SECTION { int theme; // 1=death valley, 2=Eifel, 5=Eifel Flat, 3=Andalusia double track_width; byte unknown[6]; } info_section; struct PATH_SECTION { struct HOME_STRAIGHT { byte type; // =1 double x; double y; double a; // (missing byte here breaks the pattern of the path_section) byte type; // =1 double x; double y; double a; byte unknown; // =0 } start; struct ANCHOR { byte type; // 0=straight, 1=curve double x; double y; double a; byte unknown; // =0 } anchors[header.path_section_count - 2]; } path_section; } file;
Presumably sections 4 and 5 are trackside objects and kerbs, not looked yet.
I've tested editing a file by changing the width of a track (downwards) - the App didn't moan when reloading it, and showed the altered width. So it looks like there's no tamper-checking
What will happen when the track data is invalid (re. tight turns etc)? I don't know yet. That'll be a problem for alternate editors; working out all of the rules for a 'correct' track.
Interesting in that they used C# when coding this, because of the struct reserved word.
https://msdn.microsoft.com/en-us/library/ms173109.aspx << (for nerds only)
but, hold on...
struct INFO_SECTION
{
int theme; // 1=death valley, 2=Eifel, 5=Eifel Flat, 3=Andalusia
double track_width;
byte unknown[6];
} info_section;
Death Valley is 1, Eifel is 2, Andalusia is 3, and Eifel Flat is 5. Where's 4 ???
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Course Maker update which includes a 5th theme confirmed!!
EDIT:
Another hold on. However, since we're talking about a computer program made by Japanese here, they might have deliberately avoided the use of the number 4, since in Japanese folklore, the number 4 is usually associated with "death" and/or "bad luck".
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Last edited: