ddnet / ddnet

DDraceNetwork, a free cooperative platformer game
https://ddnet.org
Other
586 stars 416 forks source link

Allow client to request /showall without a chat command. #8924

Open sjrc6 opened 1 month ago

sjrc6 commented 1 month ago

Currently the client can only get info/position of all tees on the server if you use /showall.

This makes the multi-view spectate mode very janky for something that's an official feature since tees will regularly come in and out of tracking whenever they teleport or otherwise if the player doesn't know they need to use /showall. Adding new tees also won't update the multi-view unless they are close enough to the current camera.

This would also make it much easier for players who want to always have /showall enabled to ensure all tees show up in their demos without using cl_run_on_join. It could simply be a checkbox in the settings.

murpii commented 1 month ago

Demo file sizes increases significantly when showall is enabled. If this feature is presented as a checkbox option, users should be informed about the potential file size increase.

If the primary concern is related to multi-view only, consider toggling showall in the code when multi-view is active and disabling it once it's no longer in use.

sjrc6 commented 1 month ago

If the primary concern is related to multi-view only, consider toggling showall in the code when multi-view is active and disabling it once it's no longer in use.

That's the idea. Otherwise the chat would get spammed with "you can now see all tees on the server" "you will no longer see all tees on the server"

Demo file sizes increases significantly when showall is enabled. If this feature is presented as a checkbox option, users should be informed about the potential file size increase.

That happens with or without this being a chat command so I don't see how that's relevant. Could simply put (increases demo size)

heinrich5991 commented 1 month ago

This would also make it much easier for players who want to always have /showall enabled to ensure all tees show up in their demos without using cl_run_on_join. It could simply be a checkbox in the settings.

Should probably not be done, because it increases bandwidth unnecessarily (see previous feature requests of this).

This makes the multi-view spectate mode very janky for something that's an official feature since tees will regularly come in and out of tracking whenever they teleport or otherwise if the player doesn't know they need to use /showall. Adding new tees also won't update the multi-view unless they are close enough to the current camera.

This should request more tees from the server, i.e. tell the server which client IDs you're interested in and request the server to send these.

sjrc6 commented 1 month ago

Should probably not be done, because it increases bandwidth unnecessarily (see previous feature requests of this).

Why would we make the example command "showall 1" in the run on join setting if we didn't want people to use it? image

heinrich5991 commented 1 month ago

You could try to git blame it to find out. Maybe we should remove it.