* Add HashSet YAML serialization
* consider this
* Revert "consider this"
This reverts commit f542f2c0bf.
* you think you are so funny c#
* Remove reflection call, fix equals and add tests
* Make this code slightly less bad
* Fix hashset equality and add test
* Some stuff for auth
* Holy crap auth works
* Enable encryption even if no auth token is provided.
It's still possible that the public key was retrieved over HTTPS via the status API, in which case it will be secure.
* Fix integration test compile.
* Secure CVar API.
* Literally rewrite the auth protocol to be minecraft's.
* Better exception tolerance in server handshake.
* Auth works from launcher.
* Fix some usages of UserID instead of UserName
* Fix auth.server CVar
* Kick existing connection if same account connects twice.
* Username assignment, guest session distinguishing.
* Necessary work to make bans work.
* Expose LoginType to OnConnecting.
* Fixing tests and warnings.
* Added struct skeleton for EntityCoordinates.
* Polish EntityCoordinates, add tests, add EntityCoordinates to Transforms
* Doc cleanup
* Remove useless code
* Return offset 0 when you don't have a parent
* Test for making sure EntityCoordinates for entities without parents have offset 0
* Use parent transform's GridId for GetGridId.
* Adds various methods, checks and tests
* Replace GridCoordinates with EntityCoordinates
* EyeManager.WorldToScreen fix
* Address reviews
* Fix za buildo
* Fix one transform test
* Fix the remaining tests
* Remove duplicate
* Remove another merge duplicate
* Fix property
* Rename most usages of GridCoordinates to EntityCoordinates.
* Add WithEntityId method to EntityCoordinates.
* Fix EntityCoordinates usage in GetEntitiesInRange
* Remove cursed IMapGrid method, change naming.
* Makes GridTileLookupSystem use EntityCoordinates
Co-authored-by: Acruid <shatter66@gmail.com>
Co-authored-by: Víctor Aguilera Puerto <zddm@outlook.es>
* Added struct skeleton for EntityCoordinates.
* Polish EntityCoordinates, add tests, add EntityCoordinates to Transforms
* Doc cleanup
* Remove useless code
* Return offset 0 when you don't have a parent
* Test for making sure EntityCoordinates for entities without parents have offset 0
* Use parent transform's GridId for GetGridId.
* Adds various methods, checks and tests
* Adds new constructor to EntityCoordinates and add WithPosition method
Co-authored-by: Acruid <shatter66@gmail.com>
Net message functions are now cached when the message is registered or the string table updates (client side). This removes the cache call from DispatchNetMessage.
Receiving net messages that we don't have reception callbacks for, or that are blocked with the new NetMessageAccept enum, will instantly cause the net manager to drop the offending connection to avoid malicious use.
This means trying to send string tables to the server will just result in an instant kick without even hitting ReadFromBuffer().
This allows us to move some if() checks to asserts.
* Fix client-side input system not sending sequence numbers for input messages.
This caused message ordering issues and keys getting stuck down.
* Make sure EyeUpdateSystem runs after physics.
* IGameTiming.TickFraction helper.
* Subtick data for input commands.
* Literally a unit test to verify that I wasn't going insane while debugging input message ordering issues.
* More prediction logs behind net.predict.
* Move physics to shared and run it on the client.
* Synchronize grid gravity.
* Fix ResetPredictedEntities crash when entities get deleted server-side.
* Fix CollidableComponent setters not calling Dirty()
* Fix going into space while predicting.
* Watch window uses history line edit.
* Fix unpredicted objects stuck-jittering.
* VV tags for interp vars on transform.
* Fix 0 mass objects on client.
* Fix friction calculations being TPS dependent.
* Reset predict flag on handelComponentState