8,451 Commits over 2,131 Days - 0.17cph!
Fixed spectating not checking allies correctly. Fixed up ally checks in general
Fixed some issues. Everything actually seems pretty good with 2018
Merge the destroy order fix into Main. Everything seems to be working OK. I did find remaining a nasty bug where things don't get cleaned up properly when the player quits a game, but it turns out that's actually been a bug for a while. I'll fix that next.
Fix cleanup not happening when the client disconnects
Revert more changes that were just for testing
Revert changes that were just for testing
Fix wreckage spawner not calling the right type of destroy
Special fix for the following bug:
[SERVER]
- Character spawns
- Character queues spawn message.Has full HP
- Character gets killed immediately
- Character queues update message for the 0HP change
- Spawn message goes out. Has 0 HP now, so message sends with 0HP
[CLIENT}
- Client gets spawn message, starts initializing
- Initializes health.HP is already zero. Call death event immediately!
- But health script is only half-way through init. Missing references, things break.
With this fix, the pre-init spawn message with 0hp is clamped to 1, and the character still dies right after init when they get the follow-up 0hp update message.
Need more bots to make bugs show up faster
Fix destroy error showing on the client when there was no real problem
Tidier destroy/cleanup code. Hopefully makes more sense
Rearranging. Don't have to wait until next frame to call destroy code on client.
Better. Still breaks occasionally
Client now gets the destroy messages. Still got issues
Working on cleaning things up. Server can run without errors now. Clients still not getting the despawn/destroy messages they should be though.
Fix for the delete queue error. Needs testing, needs tidying up...
Get NPCs working + testmap_smaller minor edit
Fixed init order issues with NetworkUser/WiseGuysUser and INetworkUserComponents
Cleaned up all errors in the merge. A lot of casting NetworkUser to WiseguysUser that makes things a bit messy - would be nice if we can get rid of WiseguysUser entirely in the IPlayer refactor. Even if not, we can clean it up a bit more.
Use spectate bots mode to test more easily
Fixed the last few issues.
Moved all of the per level content stuff
Fixed issue where destory queue is not being processed because of an early out.
Trying to only call OnPostDeserialize on NetworkEntityBehaviours when the mask matches them. Seems to work OK in basic testing.
Merge team deathmatch changes
OK, ReadyPlayerSelections DOES need to be a ulong UserID. NetworkUsers don't always arrive on the client before the game mode deserialize. Easier to store a userID than to find the actual user object immediately and try to guarantee the order.
Just refactoring into some better code
Fix game modes serializing way more than necessary due to some old code that was made obsolete
Update serialization, cleanup, other stuff
Everything's converted to GetManager<T>
Everything moved, just need to fix errors.
Create asm def for a lot more stuff, way too big of a checkin...
Real-time updating of the character selection screen player counts, plus trying to clean stuff up (and mostly failing, might try some more)