#184 Declined
Repository
zandronum-sandbox
Branch
default
Repository
zandronum
Branch
default

The client now syncs custom userinfo entries (aka client mod CVARs) with the server and with other players.

Author
  1. Teemu Piippo
Reviewers
Description

A few notes:

  • Userinfo is now synced as name&string pairs. Yes this means there's some bandwidth increase involved, but userinfo is not being sent very often (clients get kicked if they do) and I don't know if it can be implemented better without large amounts of cruft and I'm not going there.
  • The "failed to send userinfo" errorcode is now merged with the "userinfo rejected" one. The check for incomplete userinfo is now done in SERVER_GetUserInfo.
  • The CVAR_UNSYNCED_USERINFO flag means that even if the cvar is userinfo, it won't be synced to the server. Otherwise all userinfo is synced. This flag cannot imply CVAR_USERINFO because that would conflict with the copies created into userinfo_t.
  • The USERINFO_* defines are now gone. Instead, sets of FNames are used instead.
  • Account name syncing is now done separately of userinfo. Tying it to userinfo was a mistake on my behalf… I had trouble with the official auth server but I tested it as well as I could locally.

Comments (2)

  1. torr.samaho repo owner

    The patch looks good, I just noticed one tiny issue (an obsolete declaration, see below). How thoroughly did you test this so far? Shall I just add it to 3.0 without further testing?

    1. Teemu Piippo author

      I tested it as throughly as I could (used the provided example WAD and checked behavior in Hexen and such), but since this is such a far-encompassing change I cannot guarantee that it will not break horribly.

      There's a testing build on the ticket, but nobody bothered to test that... 😒