H-uru / Plasma

Cyan Worlds's Plasma game engine
http://h-uru.github.io/Plasma/
GNU General Public License v3.0
203 stars 80 forks source link

Remove lots of unused logic in game server messaging #1463

Closed dgelessus closed 1 year ago

dgelessus commented 1 year ago

Follow-up to a few things I mentioned in #1377. This simplifies the game server message send/receive code by removing a lot of unused logic. Specifically:

I think all of these things will never be useful anymore (at least not without some serious reworking) so there's no reason to keep them - but if anybody disagrees or was planning to use any of this code, let me know 🙂

dgelessus commented 1 year ago

The channel/transport groups were one of the hairier removals, yeah. I'm relatively confident about that though - all the code that adds channel subscriptions is guarded behind if (IsPeerToPeer()), and I still can't find any place that reads the channel group subscription lists.

I have to admit my multiplayer testing wasn't very in-depth - I mainly just checked that everything was still working at all. I suppose this could be a good thing to test on TrollLand with a small group of people.

The voice chat filtering is particularly difficult to test though, because if all goes well, the filtering is done by both the sender (talk list) and the receiver (listen list). So even if I broke the filtering on send, I wouldn't notice, as long as the filtering on receive still works. Testing this properly would require looking at packet captures I guess...

That said, the voice talk/listen lists are their own lists that are maintained separately from the channel group stuff. I didn't touch the voice code except for removing the P2P branches, so hopefully that works as before...