13,234 Commits over 2,830 Days - 0.19cph!
Networking issue: More testing
Networking issue: Remove KotH serialization for testing.
Networking issue: More/different stats
Punch: Update current before target
Better, simpler, framerate-independent eye view punch
Allow setting target framerates more easily. Fix the way VSync was set.
Reduce weapon recoil a little
Removed NPCs from default game mode
Network issue testing: Adding some additional diagnostic info
In editor, don't load the building definitions if we're starting on a game level, but the level doesn't have a LevelGenerator (i.e. somehting that'd need buildings to be loaded)
Footsteps are quieter when crouching
Removing the zombie looper for now as it's bugged. Have added a TODO to put it back later.
Remove zombie looper from playable chars
View punch curves didn't work too well. The curve position decay vs. the time between weapon shots caused issues in particular (e.g. In an extreme example, if minimum time between shots was > decay time, the curve would never progress). Changed to a simple recoil force value, and made the eye punch target pos increment instead, so multiple shots in quick succession can still boost total recoil.
Zombie mode back to normal
Another zombie mode mod. Testing to work out a networking issue.
TEMP zombie mode change for instant start
Weapon inaccuracy + recoil + view punch work.
Switched my singleton classes back to my old system of sub-methods - the WiseGuys-style virtual method override system was too risky in terms of requiring the user to know they had to call base.Method.
Physics mats for my test map, so I can test stuff with decals
Not sure why inaccuracy delta would use mag size, so reverting al ine to Bill F's original version.
Going back though the repo, the later version of view punch never quite worked, but it looks like this is how it was MEANT to work.
Weapon view punch is back. Not really doing much though, need to tweak it.
Get rid of the loading screen slide animation
Never spectate disconnected players
Might have fixed the spectating bugs. There was an issue where the spectator entity didn't get destroyed on disconnect. The player would spawn a new character in a new round, but still have their spectator entity as well, which would grab the camera.
Needed some IsUnityNull() checks to replace simple null checks in interfaces that could be MonoBehaviours
Fix issues that occurred if a character was synced to a client when already dead, and the NetworkEntity was destroyed before init completed. Happened fairly reproducibly on game modes with lots of characters dying frequently, like zombie mode (with zombies dying).
Fixed bugs on clients for players dying while in a vehicle
Change "didn't expect a Deserialize after Init" from error to warning
Bots are a bit more likely to jump off plane
Did some dumb things, fixing them up to make sense here. Also discovered why King Of The Hill UI scores broke in the first place - it was a bug with empty strings in the networking system. Tried to do a proper fix, but ended with a workaround fix.
UI work separating game mode client UI from server triggers. Moved game mode stuff to its own namespace.