For a better understand of the file format structure here are the infos of the content:

<GeneRacingTrackInfos>
The first root element of our XML structure defines the GeneRacingTrackInfos, this element is static and must not be changed.
<Trackname>trackname</Trackname>

The second element of the structure is the definition of the trackname without an extension. To avoid case-sensitiv problems, every trackfilename must be written in lowcase.
This trackname also describes the names for the texture map and the heightmap.

<TrackVersion>0.1</TrackVersion>

The trackversion number to identify different versions. This version is currently not used, but placed for a later usage.

<TrackPart>1/1</TrackPart>

The trackpart number describes connecting terrains for a later usage, and aren´t used at the moment.

<TrackTime>0.5</TrackTime>

The tracktime gives the default value for the starting time of the track, which can be overruled by the host at any time. Values between 0 and 1 are possible, 0.5 stands for noon.

<CamDefaultAngle>45</CamDefaultAngle>

The camera default angle describes the ingame camera angle if the game starts and will be stored as default angle for the F3 key, so it will be set the camera back to this angle value.
Its the euler angle in degrees of the camera.

<CamDefaultRotation>0</CamDefaultRotation>

The camera default rotation describes the ingame camera rotation if the game starts and will be stored as default rotation for the F3 key, so it will be set the camera back to this rotation value.
Its the euler rotation in degrees of the camera.

<CamDefaultZoom>50</CamDefaultZoom>

The camera default zoom describes the ingame camera zoom if the game starts and will be stored as default zoom for the F3 key, so it will be set the camera back to this rotation value.
This zoom value is possible between 5 (close) and 169 (far).

<TrackSize>310</TrackSize>

The tracksize values describe the relation between the world to scale the world and all related objects in it.
This tracksize values are possible between 10 and 510.

<WaterLevel>50</WaterLevel>

Depending on the choosen tracksize the waterlevel value will be used to set the level of the water plane.
In a smaller world (255-510) the waterplane is adjusted in a lower range, in a bigger world (10-255) the waterlevel is adjusted in a higher range.

<TexturePath>Trackname.png</TexturePath>

The texturepath describes primarly the name of the texture image and is prepared for a later usage of cloud-pathes/addresses.

<TextureWidth>2048</TextureWidth>

To got the information without reading or opening the texture image the resolution will be stored in texturewidth value.

<TextureHeight>2048</TextureHeight>

To got the information without reading or opening the texture image the resolution will be stored in textureheight value.

<HeightmapPath>Trackname_heightmap.png</HeightmapPath>

The heightmappath describes primarly the name of the heightmap image and is prepared for a later usage of cloud-pathes/addresses.

<HeightmapWidth>2049</HeightmapWidth>

To got the information without reading or opening the heightmap image the resolution will be stored in heightmapwidth value.

<HeightmapHeight>2049</HeightmapHeight>

To got the information without reading or opening the heightmap image the resolution will be stored in heightmapheight value.

<LampObjects>0</LampObjects>

Gives information about the count of lamp objects on this track for quality settings, lower qualitys settings, etc.

<PitCrewObjects>0</PitCrewObjects>

Gives information and overview about the count of PitCrew objects on this track.

<CheckPointsObjects>0</CheckPointsObjects>

Gives information and overview about the count of CheckPoint objects on this track.

<TrackObjects>0</TrackObjects>

Gives information and overview about the count of other Trackobjects objects on this track.

-<PitCrewObjectList>

This is the next element of the structure and holds all PitEntry elements.

-<PitEntry>

A pitentry element holds the important information for every PitCrew object on the track.

<id>0</id>

The consecutive number of PitCrew objects, sorted by placement

<X>150</X>

The x-coordinate value on the track

<Y>0</Y>

The y-coordinate value on the track

<Z>150</Z>

The z-coordinate value on the track

<RotationY>0</RotationY>

The y-rotation value on the track

<ScaleModifierX>0</ScaleModifierX>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the x-size of this object.

<ScaleModifierY>0</ScaleModifierY>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the y-size of this object.

<ScaleModifierZ>0</ScaleModifierZ>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the z-size of this object.

</PitEntry>

</PitCrewObjectList>

-<CheckPointsObjectsList>

This is the next element of the structure and holds all Checkpoint object elements.

-<CPEntry>

<id>0</id>

The consecutive number of CheckPoint objects, sorted by placement

<X0>2</X0>

The first X-coordinate of the Checkpoint

<Z0>5</Z0>

The first Z-coordinate of the Checkpoint

<X1>126</X1>

The second X-coordinate of the CheckPoint

<Z1>5</Z1>

The second Z-coordinate of the CheckPoint

<Y>512</Y>

The y-height of the CheckPoint

</CPEntry>

-<TrackObjectList>

This is the next element of the structure and holds all other trackobject elements.

-<TOEntry>

<id>0</id>

The consecutive number of CheckPoint objects, sorted by placement

<Class>SpawnPoint</Class>

The class describes the kind of the trackobject, which are following the existing objectlist to assign the object to the correct ingame object for spawning.

<X>269</X>

The x-coordinate value on the track

<Y>0</Y>

The y-coordinate value on the track

<Z>259</Z>

The z-coordinate value on the track

<RotationY>0</RotationY>

The y-rotation value on the track

<ScaleModifierX>0</ScaleModifierX>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the x-size of this object.

<ScaleModifierY>0</ScaleModifierY>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the y-size of this object.

<ScaleModifierZ>0</ScaleModifierZ>

The object will be scaled according to the tracksize. This modifier will give the opportunity to modifiy the z-size of this object.

</TOEntry>

</TrackObjectList>

Dies is the license information, about the used Creative Commone License – Zero which is applied to all grt files and stored in the file in order to record the licensing conditions in every file.

-<CreativeCommonLicense-CC0>

<Link>https://creativecommons.org/licenses/</Link>

<License>CC0</License>

<LicenseOwner>GeneRacing</LicenseOwner>

<LicenseOwnerLink>https://www.gent-racing.com</LicenseOwnerLink>

</CreativeCommonLicense-CC0>

</GeneRacingTrackInfos>