branchSandboxGame/mastercancel

3,194 Commits over 944 Days - 0.14cph!

4 Years Ago
Bundle up entity transforms into a single message every tick instead of a message per entity Move entity movement replication to BaseWorldEntity, BaseEntity is non visual so shouldn't need this. Remove scale from movement replication as scale changes happen less frequently. Add entity movement update rate, defaults to 60, included in movement packet for interp Use bitflags to pack entity movement packet with components of transform that changed from previous packet Replicate entity relative transform if it has a parent Save entity relative transform as properties so they can be used when first replicating the entity to client Save entity parent netid directly instead of using properties (this is because public attachment functions are authority only) Add SourceExport addon. Get SourceImport addon working again. Fix NRE in ModelJsonConverter when model path is null or empty Fix up shadows on dynamic lights on source maps Skip entity spawn and destroy messages if there's no other client connected except for the host, saves an unnecessary entity serialize Add incorrect protocol disconnect reason code Add auth fail discconnect reason code Only send entity parent netid if it changes, use attach flag if it changes to non zero, use detach flag otherwise Send entity position and rotation if parent changes, just to make sure everything is synced Don't write any movement data to packet if entity has no movement flags for the movement tick SourceImport fixes to allow bsp conversion to our own format Reflection based lump reader for new map format Write map data to lumps Write lumps to map file Some Arcade gamemode fixups Basic loader for new map format Add lightmaps to map format Save displacements as mesh in new map format Add uint color to map vertex structure (displacement needs alpha to blend) Save lightmap data and try loading it from new format Create shadowmap from lightmap Save the unencoded lightmap data, slightly longer to load but less data to save and keeps the format unrelated to unreal Save ambient light samples to map format Save bounds in map model structure. Load light volume from ambient light samples. Gather vertices for convex collisions
5 Years Ago
Allow wheels to be removed by removing their prop, handles destroying of constraint
5 Years Ago
Try broadcasting entity transform each tick if ReplicateMovement is enabled Broadcast entity attachment if it has a parent Add entity relative scale Get sandbox gamemode compiling again, remove NetTest gamemode Fix toolgun click effect on listen server Add OnChange callback back to replicated vars (only when a var is recvd) Fix sandbox particle emitters not activating on spawn Replicate movement for all sandbox entities Remove attachment replication for now, needs to be designed better Add material list property for static model entity so that spawned models replicate initial material overrides Fix hitscan tool secondary fire not working when firing on client Remove base entity parent property for now, stalls client networking for some reason Only add model material path if it's valid Fix balloon pop effect not playing on listen server Call multicast rpc directly if we have authority Don't send multicast net message or netvar message to host Never send message to host when sending messages to all clients, should never need to do this Close all connections when shutting down server so client doesn't have to wait until a timeout Add disconnect reason 1004 for server shutdown Disconnect from current server before joining a new one with connect command Running connect command while connected just disconnects from current server for now to save some headache Use Trace instead of Info to clean up some spam logging from networking Add ViewAngles to IHasTools so physgun can use it for rotation Fix particle emitter name not being replicated and activated Fix model entity materials property not being generated when addons have their own properties Damage entities with hitscan right click explosion Custom collision responses for camera entity (ignore player) Right click for tracking camera. Only allow one camera spawn per player. Interp entity movement on remote entities Enable movement replication for sandbox entities
5 Years Ago
Add optional collision bounds checking to human player
5 Years Ago
Fix human spawn offset and eye offset. Fix uncrouch detection. Lerp view offset when crouching/uncrouching
5 Years Ago
Fix read/write of blacklist and whitelist json user data
5 Years Ago
Drop client if they fail handshake or auth Clamp penetration adjustment. Use box collider instead of capsule collider, capsules suck when resolving penetration for some reason. Disconnect and return to menu when cancelling on connecting screen Update Facepunch.Steamworks to get reason code and reason string OnDisconnected Always pass 0 reason code when closing connections, allows us to use customized debug reasons Use reason code 1001 for kicked from server messages Use reason code 1002 for ban messages Allow gamemodes to validate users before their connection is accepted. Can be dropped if blacklisted or not on a whitelist Use reason code 1003 for not whitelisted Add Global.EnableWhitelist, if it's disabled, use blacklist. Implement whitelisting and blacklisting from json saved in User Data. This is the default implementation for BaseGamemode, other gamemodes are free to override it Add gamemode callback for adding user to blacklist Save blacklist entry to json file when added Remove ban length from console command, isn't used yet
5 Years Ago
Bail out of Steam_OnAuthChange if response is not OK
5 Years Ago
Add C2S_ChangeUsername
5 Years Ago
Add IGamemode.ValidateUsername to allow gamemodes to validate and change username before it's assigned
5 Years Ago
Send net protocol version in handshake packet so we can reject out of date clients
5 Years Ago
Rename C2S_SteamTicket to C2S_Handshake now that the message contains desired username as well as the ticket data
5 Years Ago
Remove UnrealUtil, no longer needed Ensure every class under UnrealEngine namespace is internal
5 Years Ago
Allow client to bypass steam auth if client with same steamid is already connected
5 Years Ago
Update Facepunch.Steamworks
5 Years Ago
Send username with the auth ticket to server
5 Years Ago
Hopefully fix server sending wrong entity netid to destroy
5 Years Ago
Don't call SteamClient.SteamId on server either
5 Years Ago
Don't call SteamClient.Name on server :/
5 Years Ago
fuck it, don't auth clients, see if that works
5 Years Ago
Try installing SteamUser events on server
5 Years Ago
comment out SteamNetworkingSockets.InstallEvents(true);
5 Years Ago
init steam client on dedicated
5 Years Ago
Try again
5 Years Ago
Revert "Update Facepunch.Steamworks" This reverts commit 84c41430fb5b3d02b0aec082436df98ff971e331.
5 Years Ago
Update Facepunch.Steamworks
5 Years Ago
Ignore add block broadcast on server (so listen server doesn't add twice)
5 Years Ago
Add voxel block on server before broadcasting it
5 Years Ago
Fix incorrect client count in client info message
5 Years Ago
Don't wait until next frame to start server on dedicated, this is only needed when running listen server
5 Years Ago
don't bother waiting for assets and gamemode to load on dedicated server, this is just for loading screens
5 Years Ago
Create gamemode entity after starting game on dedicated server
5 Years Ago
Try calling SteamClient.Init on dedicated server (probably fixed in later Facepunch.Steamworks update though)
5 Years Ago
Refresh addons before starting game on dedicated server, hopefully fixes gamemodes not being found
5 Years Ago
Replicate entity model with replicate attribute instead of RPC Remove functions to get assets from native, no longer used
5 Years Ago
Remove all unreal replication and interp code from base world entity and controllable entity Remove remaining unreal networking code Try to replicate static model entity's model import settings in managed instead of native Fix human player to work with new networking, use human player for block builder gamemode Add missing radius getter to sphere entity Don't send destroy entity message for non replicated entity Send destroy entity message after destroy events, gives entities chance to send any last messages Add IsRegistered to BaseNetworkable, this allows generated rpc and netvar code to bail if entity hasn't spawned yet Add naked version of citizen player model to cut down on load times when clothing isn't necessary Add velocity and flags to server move RPC, allows human player to sync animation with movement velocity and movement state
5 Years Ago
Move InterpolationHelper to C# Try to interp flying player movement Lerp view angles properly Move player movement replication and interpolation to BasePlayer. DefaultPlayer (basic flying player) uses client side movement replication by default.
5 Years Ago
Only log non zero netid Zero out entity data offset if length is zero
5 Years Ago
Get block builder gamemode working again. Fix non background loaded textures not applying to material. Only allow setting of Replicates on entity construction and before spawning Fix movement replication for block builder player Allow gamemodes to stall the loading screen read/write voxel spawn data Fix crash creating voxel map from serailized data Serialize entity spawn data in world state as offset and length into binary blob Allow client players to add blocks to voxel world
5 Years Ago
Don't load cubemaps in background, having issues with it
5 Years Ago
Replace networkable HasOwner with OwnerConnection, we care about the owning connection, not the direct entity owner
5 Years Ago
Also wait for assets loading in background before removing loading screen
5 Years Ago
await for huds to load before removing loading screen
5 Years Ago
Don't send netvar messages to host connection
5 Years Ago
Fix all gamemode compile errors after networking changes Move AssetRef read/write into their own class instead of BinaryReaderWriterEx Spawn menu system hud once and keep it around throughout the lifetime of game, show/hide when needed. Only load menu system addon once at startup instead of every time going back to main menu, makes leaving game faster async delay before starting server so that loading screen can show up straight away before any heavy loading is done Call client rpc directly if the networkable is owned by local connection
5 Years Ago
Remove unreal replication for light entities Make light properties replicated Allow assets to be replicated with asset references Fix NRE in AssetRef Allow asset refs to have their own serialization depending on asset type
5 Years Ago
Add client.connection.status command
5 Years Ago
Handle client disconnect reason (only server timed out for now)
5 Years Ago
Add nameplates to NetTest
5 Years Ago
Add LocalClient class to deal with anything needing UPlayerController (a single player controller only exists on the local client now, not for every client on server) BasePlayer has their own ViewAngles on the managed side but uses control rotation locally, this is so server can know player view angles without having a player controller Orientate test player model with ViewRotation