branchrust_reboot/main/compcancel
243 Commits over 305 Days - 0.03cph!
Change the command server port offset to reduce the chance of colliding with something else
Add a command to get the current time parameters
Limit the message queue so it can't grow forever
Add some convars to tune or disable the command server
Cleanup RelationshipManager
Require SteamID + secret token for auth
Change SteamID fields to uint64
Don't try to send notifications if disabled, use DebugEx if it fails
Only send team notifications to offline team members
Moved some notification code out of BasePlayer, send more info with the login one
Cleanup for pairing rate limiting
Subtract all of the new entities on this branch (moving to subbranch)
Revert tool cupboard and MenuUI changes
Rate limit pairing and alarms
Send a notification to players when they're offline and get killed by something
Moved the player token into the sqlite backed persistence (separate db so it doesn't get wiped)
Handle the case where the player's token is valid but they have been destroyed
Made those tokens int32 instead of uint32
Temporary IP ban people who flood the command server
Automatically cleanup expired bans and token buckets
Make the default command server port never overlap with the game or rcon
Change serverid to a replicated convar
Add console commands to enable/disable notifications for a server
Make player token required in protos
Throttle command dispatching
Add rate limiting for incoming commands
Player authentication is now mandatory
Another pooling fix
Update to new websocket lib
Fix some pooling issues
Add Pool.FreeDynamic to return objects to the pool using their runtime type (only required for polymorphic types)
Fix notification permission toggling generating a new steam ticket
Prevent duplicate player tokens from being generated
Add an option to IO entities so paired devices can be cleared (generates a new token for it)
Entity pairing notification, moved new entities to electrical category too
New entity info command, allow it to have different payloads per entity type
Remove the old building info and entity info code - new IO entity auth method
Send the player token with the pairing notification
Convar for command server port, defaults to game server port + 1, set to negative to disable it
Fix pairing notification not actually including the payload data
Drop UnityWebRequest cause HttpClient is so much better (and use async instead of coro)
Update to the latest notification api
Send pairing notification
Switch to saving the server id + token in the identity folder because there can be multiple on the same system, also planning to use replicated convar to get the server id on clients
Server now requests a server ID and token at boot, notification screen uses it but need a nice way to send it to the client first so WIP
Send a list of monuments with their coordinates with the map image
Fix the coordinates sent by the game server so they aren't annoying to use