[GbxDump] GBX file header viewer application

Moderators: Xymph, NADEO

User avatar
Electron
Posts: 705
Joined: 15 Jun 2010, 18:02
Contact:

First look at the map format of Trackmania Turbo

Post by Electron » 20 Mar 2016, 13:14

First look at the map format of Trackmania Turbo

Note: TMT probably doesn't support the export and import of maps. Therefore, the following information is only theoretical.

1. Turbo used exactly the same map file format as TM1 and ManiaPlanet. Even the individual storage chunks have the same version numbers.
This was expected, because the campaign maps have been created using a development version of ManiaPlanet.

2. The collection ID of Lagoon is decimal 13, the value formerly assigned to the unreleased environment TrackMania Mountain (Valley is 11 and Canyon 12).
The Gbx Data Fetcher classes for MP can already be updated to reflect this.

3. The campaign maps were created with a multi-environment title called TMCE@nadeolabs.
The maps use the legacy Race mode (Trackmania\Race).
All referenced objects are of course part of the title (not embedded).

4. The user/computer created maps inside TMT are script based (Map type: TrackMania\RaceCE).
The ID of the used multi-environment title is TMTurbo@nadeolabs.
The map content (used blocks, order, coordinates, etc.) and all settings are stored via script as persistent metadata variables. Here it's worth a closer look.

User avatar
Dommy
Translator
Translator
Posts: 1809
Joined: 25 Aug 2011, 21:45
Location: Poland
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Dommy » 20 Mar 2016, 14:10

I'm sure there will be some community-made map converter. As map format remains the same, everything is just about removing incompatible blocks.

Anyway, that some interesting information there :thumbsup:

Side question: will the Dump support Gbx files from Turbo in near future? (or maybe it does even now)

User avatar
Electron
Posts: 705
Joined: 15 Jun 2010, 18:02
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Electron » 20 Mar 2016, 14:51

domino54 wrote:I'm sure there will be some community-made map converter. As map format remains the same, everything is just about removing incompatible blocks.
I don't think so. In case of the campaign maps it makes no sense.
And in case of the user made tracks, here the metadata variables of a small Canyon map. Try to write a map script that interprets the data and builds the track using macro blocks...^^

Code: Select all

LibMapType_MapTypeVersion (Integer): 4
PartyEditor_AuthorCheckpointsTimes (Array): [11152, 19483, 27062, 35433, 42975, 51245]
PartyEditor_Setting_EditorLevel (Integer): 2
PartyEditor_MapName (Text): "8"
MapContent_MacroblockModelsNumIds (Array): ["Canyon\PartyEditor\RoadRace\Checkpoints\MultilapsRight\Air.Macroblock.Gbx"=>1, "Canyon\PartyEditor\RoadRace\Roads\Straight\Air.Macroblock.Gbx"=>2, "Canyon\PartyEditor\RoadRace\Turns\CurveIn\Air.Macroblock.Gbx"=>3, "Canyon\PartyEditor\RoadRace\Slopes\StraightLeft\Air.Macroblock.Gbx"=>4, "Canyon\PartyEditor\RoadRace\Turns\CurveInRight\Air.Macroblock.Gbx"=>5, "Canyon\PartyEditor\RoadRace\Roads\StraightWindows\Air.Macroblock.Gbx"=>6, "Canyon\PartyEditor\RoadRace\Turns\CurveOutRight\Air.Macroblock.Gbx"=>7, "Canyon\PartyEditor\RoadRace\Roads\StraightPaintRight\Air.Macroblock.Gbx"=>8, "Canyon\PartyEditor\RoadRace\Turns\CurveOut\Air.Macroblock.Gbx"=>9, "Canyon\PartyEditor\DecoExpert\Flying\Airship\Air.Macroblock.Gbx"=>10, "Canyon\PartyEditor\RoadRace\Checkpoints\CheckpointRight\Air.Macroblock.Gbx"=>11, "Canyon\PartyEditor\DecoExpert\Podium\Crane\Ground.Macroblock.Gbx"=>12]
MapContent_MacroblockModelId (Array): []
MapContent_MacroblockModelNumId (Array): [0=>1, 1=>2, 2=>3, 3=>5, 4=>5, 5=>6, 7=>8, 8=>7, 9=>7, 10=>9, 11=>2, 12=>10, 6=>11, 13=>12]
MapContent_MacroblockCoord (Array): [0=><16, 27, 16>, 1=><16, 27, 17>, 2=><16, 27, 18>, 3=><18, 26, 18>, 4=><18, 25, 16>, 5=><17, 25, 16>, 7=><15, 25, 16>, 8=><13, 25, 15>, 9=><13, 26, 13>, 10=><15, 27, 13>, 11=><16, 27, 15>, 12=><16, 30, 15>, 6=><16, 25, 16>, 13=><12, 23, 19>]
MapContent_MacroblockDir (Array): [0=>0, 1=>2, 2=>0, 3=>0, 4=>3, 5=>3, 7=>1, 8=>1, 9=>2, 10=>2, 11=>2, 12=>0, 6=>1, 13=>1]
PartyEditor_MapStyle (Integer): 1
MapContent_MacroblockType (Array): [0=>3, 1=>3, 2=>3, 3=>3, 4=>3, 5=>3, 7=>3, 8=>3, 9=>3, 10=>3, 11=>3, 12=>4, 6=>3, 13=>4]
MapContent_MacroblockOrder (Array): [0=>0, 1=>1, 2=>2, 3=>7, 4=>8, 5=>9, 7=>13, 8=>14, 9=>15, 10=>16, 11=>17, 12=>18, 6=>19, 13=>20]
MapContent_MaxOrder (Integer): 21
PartyEditor_MapStyleSelected (Boolean): True
PartyEditor_TrackbuilderVersion_Created (Text): "9.11.0"
PartyEditor_TrackbuilderVersion_Modified (Text): "9.11.0"
PartyEditor_HasCustomThumbnail (Boolean): False
PartyEditor_AchievementUnlocked (Boolean): True
domino54 wrote:Side question: will the Dump support Gbx files from Turbo in near future? (or maybe it does even now)
The latest build 1.56 is compatible. You can try it yourself. All TMT maps can be easily downloaded from the Nadeo cloud (at the moment - or they use a honeypot..).

User avatar
Electron
Posts: 705
Joined: 15 Jun 2010, 18:02
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Electron » 02 Apr 2016, 21:41

Version 1.57 of GbxDump is available for download.
This release includes some changes introduced by Trackmania Turbo:

Support for version 18 NadeoPak packages (*.Pack.Gbx, *.pak)
The unencrypted file header has not changed compared to version 17.

Support for version 8 ItemModel description chunk
Chunk 2E001003 was supplemented by one byte. So far, the value is always 3. The meaning is still unknown.

Added three new Item type values (Decal, Group, Turret)
Decal can already be seen in the Item Editor of ManiaPlanet (but not selectable).
Group seems to be very specific.
Turret is also strange because like Group either statically nor dynamically.

Added two new GBX class names (UserProfile, UserFileList)
Only the names have been added. The file header contains no user data.
Image
TM²: TrackMania Telemetry Monitor version 1.1.1

nazgulaars
Posts: 2
Joined: 26 Apr 2016, 17:44

Re: [GbxDump] GBX file header viewer application

Post by nazgulaars » 26 Apr 2016, 17:47

Electron wrote:Version 1.57 of GbxDump is available for download.
I'ts not open source ? Do you have a working link of the description of a gbx file header, the old site tm-wiki.org where you could find the description of a gbx header metadata does not seem to work and i need this information to develop an open source tool for trackmania's players.

Thanks for your help.

User avatar
Xymph
Posts: 1330
Joined: 15 Jun 2010, 20:35
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Xymph » 26 Apr 2016, 18:28

Archive.org is your friend. :)
Developer of XASECO for TMF/TMN ESWC & XASECO2 for TM²: see XAseco.org
Find your way around the Mania community from the TMN ESWC hub, TMF hub, TM² hub, and SM hub

nazgulaars
Posts: 2
Joined: 26 Apr 2016, 17:44

Re: [GbxDump] GBX file header viewer application

Post by nazgulaars » 26 Apr 2016, 18:31

Xymph wrote:Archive.org is your friend. :)
Forgot about this site, thanks :)

User avatar
eyebo
Translator
Translator
Posts: 2831
Joined: 15 Jun 2010, 12:01
Contact:

Re: [GbxDump] GBX file header viewer application

Post by eyebo » 25 May 2017, 05:35

GbxDump has been extremely useful to me, especially recently with having to check map version information because of the switch to ManiaPlanet 4 and the big push to convert all the maps on Mania Exchange to the newest LM version.

Also it's been useful in checking whether replays are valid due to recent bugs with autosaves.

Just wanted to drop a thanks here. Your work is appreciated Electron! :thx:
My videos on: YouTube

i7 2600K (OC'd to 4.6Ghz) / 32GB DDR3 1600 / GTX 1080 (390.77) / Win10

User avatar
Electron
Posts: 705
Joined: 15 Jun 2010, 18:02
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Electron » 16 Jul 2017, 19:15

Version 1.59 of GbxDump is available for download.

· Added full support of the NadeoPak header (if not encrypted)
Some smaller TitleImpostors packages are not encrypted. With these files the complete header can be read out (and the contents can be unpacked with third-party tools).

· Added full support of the Collection header
*Collection.Gbx files were formerly part of the installation. Nowadays, they are hidden in the PAK archives.

· Added support for the EProdState enumeration in the Item header
Possible values are Aborted, GameBox, DevBuild or Release.

· Added support for the GameSkin chunk in the Item header
· Added support for the GameSkin class as part of the Plug engine
· Added support for old serialized version 2 identifiers (CMwId) used in Virtual Skipper 2
______________________________________________
Version 1.60 of GbxDump is available for download.

· Added the bit field names of the Collector description flag
Used by Block, Macroblock, Object, Item, Vehicle and Decoration objects.

· Unsupported files are now displayed as hex dump
To analyze corrupted files, files without header and files with wrong extension, the beginning of these files is now displayed as hex dump.

User avatar
Electron
Posts: 705
Joined: 15 Jun 2010, 18:02
Contact:

Re: [GbxDump] GBX file header viewer application

Post by Electron » 20 Mar 2018, 22:25

The GbxDump source code is now available as open source on GitHub:
https://github.com/Electron-x/GbxDump
Image
TM²: TrackMania Telemetry Monitor version 1.1.1

Post Reply

Return to “General Tools”

Who is online

Users browsing this forum: No registered users and 1 guest