https://github.com/bigbang1112/nations-converter
Map conversion tool from TMS/TMNESWC/TMUF/TMT/TM² Stadium to TM®. Powered by GBX.NET.
https://github.com/bigbang1112/nations-converter
converter csharp gamebox gbx gbxnet tm2 tmnf trackmania
Last synced: 12 months ago
JSON representation
Map conversion tool from TMS/TMNESWC/TMUF/TMT/TM² Stadium to TM®. Powered by GBX.NET.
- Host: GitHub
- URL: https://github.com/bigbang1112/nations-converter
- Owner: BigBang1112
- License: agpl-3.0
- Created: 2020-11-19T01:01:35.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2025-06-23T21:42:57.000Z (about 1 year ago)
- Last Synced: 2025-06-23T22:39:54.344Z (about 1 year ago)
- Topics: converter, csharp, gamebox, gbx, gbxnet, tm2, tmnf, trackmania
- Language: C#
- Homepage: https://nc.gbx.tools
- Size: 168 MB
- Stars: 41
- Watchers: 5
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Nations Converter 2
This is where the new TMUF is being made!
## Supported music assets
Tool adds music to non-Stadium maps by default with `IncludeMusic` setting. You can disable this option, or change the music to these links below if you want to tweak it.
ManiaCDN option will be available in the future.
### Provided by default
- Snow (Realnest Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Snow_(RealnestBootleg).mux
- Rally (Realnest Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Rally_(RealnestBootleg).mux
- Desert (Realnest & ThaumicTom Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Desert_(Realnest&ThaumicTomBootleg).mux
- Island (Realnest Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Island_(RealnestBootleg).mux
- Bay (Realnest Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Bay_(RealnestBootleg).mux
- Coast (Realnest Bootleg) - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Coast_(RealnestBootleg).mux
### Provided additionally
- Snow - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Snow.mux
- Rally - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Rally.mux
- Desert - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Desert.mux
- Island - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Island.mux
- Bay - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Bay.mux
- Coast - https://download.dashmap.live/6a43df20-cd1a-4b3b-87b9-a6835a9b416d/Coast.mux
### Provided additionally soon
- Dom Lyne - Mutants
- Dom Lyne - Mutants (RealiM Bootleg) [Realnest Remaster]
- Doo - Menus
- Doo - Menus (Realnest Bootleg)
- Mick Gordon - ManiaPlanet Menu Theme (Realnest Bootleg)
## Script metadata (traits)
Every converted map includes additional metadata traits that can be used in gamemodes or map editor plugins.
| Type and Name | Version | Example value | Description |
|--------------------------------------|----------------|-------------------------------| ----------- |
| `Boolean` `MadeWithNationsConverter` | 0.1.0+ | `True` | Track was made with (or with assist of) this tool. Always true.
| `Text` `NC_OriginalAuthorLogin` | 1.0.1+ | `bigbang1112` | Login of the original author name. Bugged in 1.0.1, fixed since 1.0.2.
| `Text` `NC_OriginalAuthorNickname` | 1.0.1+ | `$fff$o$n$t$iBigBang1112` | Formatted nickname of the original author name. Empty text on maps made in TMUF and lower versions.
| `Text` `NC_OriginalMapUid` | 1.2.0+ | `JtPkBe105hUkDkQOoieBVFZTDK9` | Map UID of the map converted before the new UID was set. Useful for original map identification.
| `Boolean` `NC2_IsConverted` | 2.0.0-alpha.1+ | `True` | Track was made with (or with assist of) Nations Converter **2**.
| `Text` `NC2_ConvertedAt` | 2.0.0-alpha.1+ | `2024-12-19T21:22:03` | Date and time the conversion happened in ISO 8601 standard, always UTC.
| `Text` `NC2_Version` | 2.0.0-alpha.1+ | `2.0.0.0` | Version of the core NC2 library. Does not include pre-releases. Never empty.
| `Text` `NC2_CLI_Version` | 2.0.0-alpha.1+ | `2.0.0.0` | Version of the CLI program that uses the NC2 library. Does not include pre-releases. Can be empty if converted in web browser.
| `Text` `NC2_Web_Version` | 2.0.0-alpha.1+ | `2.0.0.0` | Version of the CLI program that uses the NC2 library. Does not include pre-releases. Can be empty if converted using CLI.
| `Text` `NC2_GBXNET_Version` | 2.0.0-alpha.1+ | `2.1.0.0` | Version of the GBX.NET library that handles internal Gbx things. Does not include pre-releases. Never empty.
| `Text` `NC2_Environment` | 2.0.0-alpha.1+ | `Desert` | Modern name of the converted map's environment (Alpine->Snow, Speed->Desert).
| `Text` `NC2_Phase` | 2.0.0-alpha.1+ | `Alpha` / `Beta` / `RC` | Stage/phase of the version. Used to differentiate pre-releases.
| `Text` `NC2_Seed` | 2.0.0-alpha.1+ | `1763499756` | "Unique" identifier of the map, used to avoid embedding collisions and for deterministic randomization. Always numeric in 32bit range.
| `Text` `NC2_Category` | 2.0.0-alpha.1+ | `Solid` |
| `Text` `NC2_SubCategory` | 2.0.0-alpha.1+ | `Modless` |
| `Boolean` `NC2_IsTM2` | 2.0.0-alpha.1+ | `False` | If the original map was made in TM2/TMT or TMF and older games.
Versions can be seen bugged as `1.0.0` on NC2 maps due to the projects being versioned about 1 day before the public release, and the maps being converted before that.
#### Traits that are no longer used and supported
| Type and Name | Version | Description |
|-----------------------------|-------------------| ----------- |
| `Boolean` `NC2_PreAlpha` | 2.0.0 (pre-alpha) | Track was converted in pre-alpha of Nations Converter 2. In 2.0.0-alpha.1, it was removed.
| `Boolean` `NC_EarlyAccess` | 0.1.0-1.3.5 | Conversion was made in NC1 early access. Removed because it is irrelevant.
| `Text` `NC_Assembly` | 0.1.0-1.3.5 | User interface project version the conversion was made. Removed because format is bloaty and confusing.
| `Text` `NC_GBXNET_Assembly` | 1.0.0-1.3.5 | GBX.NET version used for the Gbx parse. Removed because format is bloaty, use `NC2_GBXNET_Version`.
| `Text` `NC_Lib_Assembly` | 1.0.2-1.3.5 | Version of the conversion processing library. Removed because format is bloaty, use `NC2_Version`.
### Usage in ManiaScript
`declare metadata Boolean MadeWithNationsConverter for Map;`
## Technical overview
```mermaid
graph LR
X(Create Base Map)
Z(Environment) --> ExA
ExA(Conversion Set)
ExA --> ExB(Covered Zone Block Info)
ExA --> ExC(Terrain Modifier Zone)
X --> A(Place Base Zone)
A --> B(Place Block)
B --> C(Water)
C --> D(Pylon)
D --> E(Decoration)
E --> F(Place Transformation)
F --> G(MediaTracker)
G --> H(Music)
H --> I(Metadata)
I --> Y(Outputted map)
ExA --> A
ExA --> B
ExA --> C
ExA --> D
ExA --> E
ExA --> F
ExB --> B
ExB --> C
ExC --> A
ExC --> B
subgraph Extracts from input map
Z
ExA
ExB
ExC
end
subgraph Stages
A
B
C
D
E
F
G
H
I
end
```
## Build
Build the solution with Visual Studio 2022 or by using `dotnet build`.
This project started using the GBX.NET nightly builds for more comfortable development.