Skip to content
Petr Pivoňka edited this page Dec 12, 2022 · 36 revisions

The most common questions are answered here.

Issues related to Linux are not supported on this page.

What is my installation directory?

A directory where the TmForever.exe is located.

  • If you don't use Steam, your installation directory is probably C:/Program Files/TmNationsForever or C:/Program Files/TmUnitedForever.
    • You can also find the location when right-clicking on the game shortcut -> Properties -> Path (excluding the TmForever.exe text at the end).
  • If you use Steam, your installation directory is Steam/steamapps/common/TrackMania Nations Forever or Steam/steamapps/common/TrackMania United.
    • You can also find the location when right-clicking on the game in your Library -> Properties... -> Local Files -> Browse...

Why don't I see the small windows/panels/modules above my game?

Your game is in fullscreen mode.

Fullscreen disallows other windows to render through. Showing Randomizer TMF user interface on top of fullscreen mode is not supported.

  • In the top-right corner of the TmForever game, click on the two squares (two windows) button to make the game windowed.
  • If you want to resize the window, resize INDIVIDUAL SIDES to what would roughly represent the maximization, do NOT drag the game window at the top of the screen so the OS automatically maximizes the window for you (the reason why is this resize approach necessary is explained in a different question).

This should be enough for the small windows/panels/modules to show up. In case they don't, in the taskbar (at the bottom of the screen), click on all of the individual window/panel/module instances for them to reappear.

If you don't like being in windowed mode, you have two alternatives:

  • Borderless window
    • Make the game windowed according to the two steps above (please pay attention to window resizing). Resize the window to what would roughly represent a maximized window, to avoid quality degradation. Then, install Borderless Gaming (or support it through Steam). After opening it, in the Applications section, find and click on the application called TrackMania Nations Forever [TmForever]/TrackMania United Forever [TmForever]. Then, click on the button with the outer arrows (arrows pointing out) in the middle of the app. This will simulate fullscreen experience for the little cost of graphical quality, which allows the modules to show up in the front.
  • Stay in fullscreen mode and move the small windows/panels/modules to your second monitor.
    • One disadvantage is that interacting with the small windows/panels/modules will minimize the game. This luckily isn't a big deal with the SKIP button, as it will bring the game back up when the map is launched.

My game isn't in fullscreen mode though!

TmForever might be set as the topmost application on your operating system in some way. In default Windows 10 OS configuration, this does not happen.

To fix this currently, you can attempt the Borderless window solution explained above.

Or simply put the small windows/panels/modules next to the game window, or on the other monitor. Second monitor will allow you to use regular fullscreen.

Why the map has not been skipped when it should be?

The session is not lost yet! This can happen in two ways, which can happen in multiple scenarios:

  • The map does not change at all:
    • The game was paused (you probably pressed ESC) during the map change. In this scenario, the game will not wake up without your help:
      • UNPAUSE the game, then click on the RELOAD MAP button.
  • The map does not change until pressing something. Just press Enter or your respawn key to skip this game state. The events include:
    • When earning a medal
    • When map outro is played without the buttons revealed
    • When map intro is played
    • When the game is paused (see the solution above)
    • When you're not logged ingame
    • ... more that are undiscovered

Why my game changes its resolution when the map starts (or is switched)?

Before this happened, you probably dragged the game window to the top of the screen and the OS automatically maximized the window for you.

You have to resize the individual sides of the window instead to roughly match the maximized version. This is also necessary with the Borderless Gaming approach, otherwise the borderless mode will break down.

A map switch somehow de-maximizes the game when in windowed mode. If anyone knows an EXE argument that can control this behavior, let me know in Issues.

Why is the timer running during map load?

Because Randomizer TMF is not able to start it any later.

In the current idea of how the project works, there's no memory address interaction happening with the game, which would allow for some current game state reading. But instead, TmForever.exe is called with /singleinst and /file= arguments which allow for a relatively reliable switch to a different map without touching the dangerous parts of development. Because my understanding of the game's code is still very low and because there are valid concerns about why some parts of memory address interaction code shouldn't be open-source, I went for the TmForever.exe option. Unfortunately, once the switch to the next map is executed, there's no other response from the program that something is happening in the game, so the timer has to start at the latest possible point, which is in the middle of loading.

Because of this, the timer won't get more accurate than this in Randomizer TMF.

Isn't it unfair?

At the loading screen, maybe. If you're playing United randomizer, the loading screen can already give a good indicator by the shown environment in the picture. Some people perhaps see this as an advantage. But if you're playing a single environment randomizer, the loading screen is always the same, just taking longer or shorter.

At the Go! part of the first run? Definitely. You already have the map overview which defines the strategy a lot, and with the pause button combined, this could be abused to gain a "legitimate advantage".

Resuming the timer after the map load before the first run start would be the ideal middle, but I didn't manage to detect this state.

The timer is otherwise normally paused during the request of the map, because internet connection differences are clearly unfair. This case was possible to detect and implemented into the Randomizer TMF.

In case you would prefer something like "guaranteed map loading time gap" (for example always wait 2 seconds before starting the timer), let me know. It's a complicated topic and I don't know how much the loading times can be minimized.

I accidentally left the map! How do I get back? I don't wanna search the map.

Click on the RELOAD MAP button.

Why is the executable so big?

It contains a lot of .NET runtime code and Avalonia framework code which makes it easier to distinguish files but mainly, not have to worry about installing anything additionally. There's was a lot of mess regarding that with my past projects so I attempted a different approach.

Is there any RMC leaderboard?

Not yet. The project approaches the idea as freely as possible, and the community will decide how this goes. Anyone is free to create their sheet and maintain it.

After 2000 downloads will be done on this project, I'll focus on online competition of the app - the online RMC leaderboard updated automatically for example.

Is there a pause button?

No, there isn't, and there will likely never be. It could not only be a controversial element of the challenge, but it is also impossible to integrate fairly into the current idea of the project.

Can the small windows/panels/modules be even smaller?

Not right now, but in the near future, I want to improve their responsiveness to be as best as possible.