249,846 Commits over 3,959 Days - 2.63cph!
Reduce nav agent foot trace radius and max trace height
Cupertino/Penguin: Some more platform guards, tier0_utils_base.h not being declared, Invoke ErrorReport crash without dummy variable, fixes unused variable warning
Cupertino: Link to SDL implicitly on source_exe_posix_base.vpc, add the dingus to the folder if you're working on a new platform
Undo: unintentional change to ProjectSettings, reverted by hand
Tests: none, trivial change
Update: rewrote ServerProfiler TLS storage
- Instead of having per-frame storage, we now have one big buffer
- Rewrote ProfilerExporter to support changes
- Removes a weird stall on EndOfFrame invoke in standalone
I couldn't find a way to implement lock-free perf mark recording with previous approach, but now I should have a way - will attempt next.
Tests: exported profile from Craggy in editor and standalone 6k server - both open in Perfetto and look coherent
add support for cycling between seasons on solo page
Added HomingModifier and Homing Bullets item
https://files.facepunch.com/CarsonKompon/2024/November/12_12-24-AccomplishedBabirusa.mp4
(Effect exaggerated for video)
Rework triggers to check contact points instead of ref counted touches. Add ITriggerListener.OnTriggerEnter/Exit for game objects that contain multiple colliders
Generated code compile errors
- Added sync var handlers to detect changes in sync vars
- Generated at code gen
- Overridable methods to check if should update and reset update checks
Fix not being able to pickup coins
Linux: Add an auto-generated SDL_config_linux.h which is specific to my system, but we need to start somewhere. Later, this will be made specific to Steam Runtime.
Update documentation for methods in INetworkListener to indicate that they're only called for the host.
Add net_fakelag ConVar. It's working for both Steam Networking Sockets and TCP / local instance. Can also be changed in the editor like this https://files.facepunch.com/conna/1b1211b1/sbox-dev_jpOfxVrwEr.mp4
Also commit this important file
adjust functionality of solo page
Some additional troublesome Vulkan layer disables
Fix bullet bounce colliding with things it shouldnt
Fix Player Range upgrades not being applied properly
Reduced distance of some weapon sounds
Change notifications to a real popup
Start putting the party system back together
Added BounceModifier and Bouncy Bullets Item
https://files.facepunch.com/CarsonKompon/2024/November/12_11-38-QuickwittedKagu.mp4
Make flex controller names case insensitive again
Optimizations for weapon autorefresh in spawnmenu
Fix more potential crash issues to do with particles
Reduce memory allocations for navmesh debug draw
Removed debug
Tweaked prefab rigidbody
Fixed pause menu button going mental
Fix CPhysicsShape::GetScale() to return the correct scale for MeshShapes
Fix CPhysicsShape::GetTriangulation() not respecting scale for mesh shapes when calculating triangulation
Make lines transparent when sprinting, keep dot if we have one
Compressed edit data, WIP websockets
- Successfully made read/write serverside methods for any sync var contained inside an entity
- Managed to remove variable ids and rely on constant ordering/reading (sync vars are now cheaper than RPCs bandwith wise)
- Pack all sync vars into one packet (might need adjustment)
- Cleaned up code
- Fixed a bunch of generation errors
Broadcast damage/health FX
Re-implement damage numbers
Fix dungeon generation lag
Add simple death state
Dead players respawn on next floor
Enemies only target living players
Fix networking issues with projectiles
Fix shadows not showing proper on connected clients
Added Player.Living separate from Player.All, fixed NREs when player is dead
Add GameManager.LoadFloor(index)
Network item inventory
Added GameOver UI which displays when all players are dead
Reset enemy aggro target after killing player
Fix projectiles checking collisions on all clients
Game fully resets when both players Ready Up on the Game Over UI
https://files.facepunch.com/CarsonKompon/2024/November/12_09-45-BleakGalapagospenguin.png
Added Spectator UI when you're dead but other players are still alive
https://files.facepunch.com/CarsonKompon/2024/November/12_09-58-SpectacularGangesdolphin.png
Flag certain objects with `dontdestroy` tag. All objects without this tag are cleaned up upon room generation
EndFloorTrigger takes the amount of living players instead of all players
Fix NRE when spectating player dies
Network some GameManager variables + fixed player reviving issues
Damage RPCs
Improved Generating Map UI
Use correct mixer for main menu music
Fixed player markers offset
reduce vertex lookups in simplification
Fix popup being orphaned when clicked on
Set in_editor ub richpresence when in editor
Popup supports AboveCenter
Stop making the popups red!
Friends in footer, delete friends list
switched out normal parallel check in simplification with a dirtier cross product based one to remove a couple of normalize calls
- 75% perf improvement
NetworkSpawn weapons after setting owner so it's sent at once
Should've fixed multiple weapons overlaying
Linux: Add various hacks/fixes to bring `schemacompiler` up to the link step. THIS MAY BREAK SOMETHING.
Cupertino/Penguin: Unmangle SDL in other platforms too, we're trying other platforms and you're still alive
chicken coup progress
better uvs and mesh.
now has hay on the inside too.
- Added sync var receive code gen (net read method infered from variable type)
- Sync var pooled strings added to manifest
[Pick] Use multiplatform SDL config instead of one hardcoded for windows, might make more sense to eventually just use mainline SDL2 entirely
Add navmesh bodytype override
During edit time (in editor) we change the type of dynamic physics bodys to static.
However, for the navmesh generation we need to ignore this change and use the bodytype that will actually be used at game time.
We can use this override to set the bodytype that should be used during navmesh generation.
Bury empty player corpses with a shovel to place a grave, pay respects at grave to view player name, killer name, born and death dates and times and the name of the player who laid them to rest.
Some changes to time sync. Seems to fix Facepunch/sbox-issues#6865 locally. Needs re-test.