Disclaimer: I haven't looked at the fgms/fgfs multiplayer code in months, so take my feedback with a grain of salt.
Referring to the two tickets you created (see [1]) and the discussions there, e.g. the comments by the fgms maintainers seem a bit confused/misleading - looking at the fgms code, It seems pretty clear that range-based filtering takes place on the fgms side, e.g.: referring to:
https://gitlab.com/fgms/fgms-0-x/blob/m ... .cxx#L1145And here's the corresponding implementation for relays:
https://gitlab.com/fgms/fgms-0-x/blob/m ... .cxx#L2126The value to look for is the out-of-reach value, i.e.:
https://gitlab.com/fgms/fgms-0-x/blob/m ... r.cxx#L188So it's called
m_PlayerIsOutOfReach (you can grep the source tree for details)
For clients, you can see this being used for filtering purposes at:
https://gitlab.com/fgms/fgms-0-x/blob/m ... .cxx#L1415In other words, as far as I can see (and with my disclaimer in mind), there are several potential workarounds to implement your feature without making modifications to the fgfs/multiplayer protocol - e.g. by introducing a custom chat message so that client updates would get a configurable range property for updates, which would enable ATC clients to reconfigure their "out-of-reach" value on demand and set it to a different value.
I think you may need to rephrase your question/feature request in terms of what changes are needed in multiplayer functionality terms, it seems the fgms maintainers are having a different use-case in mind (or I am the one who's really confused here...).
Note that if this is implemented in a generic fashion, that such a "reconfigurable mp protocol" would also allow people to disable updates from certain clients, which would be superior to the current "ignore" function, because the traffic/updates would no longer be sent by the fgms sever to the fgfs client in question - in other words, say I wanted to ignore all players named "Hooray*", I could then let the server set the out of reach value accordingly (e.g. >= 0.00 nm)
As far as I can see, that'd would take roughly 100 lines of C++ code to implement, and it would solve the multiplayer/abuse problem at the same time - for the underlying background, refer to:
Trolling[1]: