Page 1 of 1

[Bug] Custom markers unintentionally disappear with certain cars

Posted: 14 Oct 2019, 20:47
by Dommy
I've seen this issue ever since the 4 years update, in which I've included the custom player nameplates.

Basically, when you create a custom frame marker, which visibility to WhenVisible and attaching it to a player (playerlogin="login"), the marker disappears when the player is driving certain cars.

In other words:
  • In TrackMania.
  • Marker must be using a frame from a custom layer (have its manialinkframeid set to a frame ID in Markers type layer).
  • Marker visibility must be set to WhenVisible.
  • Marker must be attached to a player (either using playerlogin or playerid).
  • The player must be spawned and drive either: Canyon Car, Valley Car, Lagoon Car, Coast Car, Desert Car.
From my investigation, the reason for this behavior is that the player's position is in fact under the surface they're standing on (clips into the block), which counts as an obstruction, therefore hiding the marker. It happens only with these 5 cars, others seem to have their position above the surface. The box property doesn't seem to have any influence on that behavior.

Why it matters to me:
Pursuit used to be played in "hide and seek" mode, which basically prevents you from seeing other players' names through walls. This cannot be a thing right now, as the names will be randomly invisible, preventing players from knowing which side the player is on.
Additionally, it would reduce the information bloat that currently happens on channels, also allowing me to reduce loss in FPS from calculating distances to all players.

Example
You can see that using specific cars, marker won't be shown unless the car is airborne, as the block I'm driving on obstructs the marker anchor.



Possible solution: copy over the visibility behavior from the regular label markers or take box property into account when casting the obstruction checking ray.

Bonus report!
In spectator mode, default nameplates ignore all set visibility settings. It doesn't happen while playing.
In other words, setting these has no effect in spectator mode (annoying!):

Code: Select all

ClientUI.TeamLabelsVisibility           = CUIConfig::ELabelsVisibility::Never;
ClientUI.OpposingTeamLabelsVisibility   = CUIConfig::ELabelsVisibility::Never;
ClientUI.AlliesLabelsVisibility         = CUIConfig::ELabelsVisibility::Never;
The annoying result of that:
Image

Re: [Bug] Custom markers unintentionally disappear with certain cars

Posted: 24 Oct 2019, 14:49
by xbx
oh btw this should be fixed as well.
(both issues)