userDaniel Pcancel
branchrust_reboot/maincancel

159 Commits over 426 Days - 0.02cph!

Today
Update: Enable AnalyticsV2 by default Staging servers ran this for a couple days now and this'll switch over clients as well. Tests: none, trivial change
4 Days Ago
Merge: from analytics_v2_expose_telem - Can view AnalyticsV2 stats via analytics.stats, analytics.tablestats and analytics.uploaderstats Tests: used above to check stats in editor
5 Days Ago
Merge: from voice_when_invis_fixes - Voice chat is now heard by nearby invisible players and spectators Tests: tested voice replication between 2 players, when invis and when spectating. invis case also tested disconnect-reconnect while invis.
6 Days Ago
Update: minor ServerProfiler function filtering adjustment - built from b90a83e5 Was annotating everything from SubGrid, instead of ignoring everything Tests: unit tests
6 Days Ago
Merge: from baseplayer_serverupdateparallel - Optimizes ServerOcclusion by reordering work and reducing number of pairs considered - Optimizes parallel snapshot send out by reducing Pool contention - General optims via reduced profiler instrumentation (new ServerProfiler.Core binaries) Tests: 2p session on craggy with teleporting around and various occlusion scenarios (invis, dead, normal occluded, in view)
7 Days Ago
Merge: from spectating_disconnect_nre_fix - Bugfix for server NRE when spectating player disconnects Tests: 2p on Craggy, disconnected while spectating - no more NRE
7 Days Ago
Merge: from basepalyer_netgroup_interit_fix - Fixes cargoships(and other global entities) putting players into global network group which stops replication with "outside" world Tests: 2p session on Craggy, spawned a cargo ship and threw items, killed other player, tried spectating
7 Days Ago
Merge: from analytics_queue_rewrite - Bugfix for missing session-start event from Client, invalid session-end event from Client, malformed json aggregation - Added support to edit upload intervals (tied to existing same server vars) - Adjusted uploaders for some tables to avoid trying to send to our backend Tests: unit tests + manual testing on Craggy (S+C mode) and Bootstrap (C only)
11 Days Ago
Merge: from analytics_save - Adds a "save" event tracking when server creates a save Tests: triggered save in editor with logging
13 Days Ago
Buildfix: add missing CLIENT guards Tests: build all configs locally
13 Days Ago
Merge: from analytics_queue_rewrite - New analytics uploading backend, disabled by default (analytics.usev2) - New debug vars - analytics.log and analytics.dryrun Tests: unit tests, used both old and new analytics backends and monitored logs
13 Days Ago
Merge: from baseplayer_vis_nre - Simplified how debug.invis works - Reimplemented how global.spectate and spectateid work - spectator no longer parents to the spectated player - Tightened existing debug logs around mystery baseplayer NRE. This eliminates a source of potential NREs related to players spectating others, but doesn't outright forbid them Tests: 2p sesions on Craggy, one player spectates other - killed scientist with AK(hs audio replicated), helicopter fly around, motorbike ride around, noclipped outside of usual network range and back, cycled invis, left the server and returned - no issues. Tried debug camera.
20 Days Ago
Merge: from baseplayer_vis_nre - fixed false positive logging, better logs Tests: built standalone and connected to staging server - no extra errors on connect
20 Days Ago
Buildfix: add missing namespace using Tests: none, trivial change
20 Days Ago
Merge: from analytics_track_menu_times - Client analytics now aggregates frametimes, lag spikes and gc events into InGame, MainMenu, Inventory, Crafting, Contacts and Map groups - Skip sending lag spikes and gc counts if there were none during performance logging tick Tests: observerd client_perf analytics ticks in editor with debug code
26 Days Ago
Merge: from server_occlusion_gen_reorder_narrowphase - Bugfix for ServerOcclusion potentially crashing during generation Tests: generated custom map that had a consistent crash and a default 4.5k procgen editor world
28 Days Ago
Merge: from baseplayer_vis_nre - Potential(low chance) bugfix for NRE on spectate end - Breadcrumbs in case it's not fixed Tests: editor and standalone build spectating loop
46 Days Ago
Bugfix(editor): LoadMapFile - don't NRE when no scene is loaded and Server Occlusio Debug is open Tests: used in editor
46 Days Ago
Merge: from server_occlusion_poppin - Bugfix: fixes false-negative occlusion queries at the top of the hills - Bugfix: fixes false-positive occlusion queries while looking through a hill - Optim: sped up occlusion cache generation by 65%+ (4.5k from 134s -> 50s, can be faster with sufficient RAM) - Editor: extended LoadMapFile with Server Occlusion debug tools Tests: generated reported bug case and visualized and debug traced. Generated 6k, 4.5k, 2k and Craggy to confirm generation doesn't crash.
54 Days Ago
Merge: from baseplayer_serverupdateparallel - Bugfix/Update: don't use parallel snapshot sending in UsePlayerUpdateJobs 1 (it's a level 2 feature) Tests: used both modes in Craggy, confirmed things are working
55 Days Ago
Merge: from baseplayer_serverupdateparallel - Bugfix for frequently disabling UsePlayerUpdateJobs leading to player cache desync Tests: wrote a unit test that confirms the bug and confirms the fix
56 Days Ago
Merge: from baseplayer_serverupdateparallel - Bugfix: PlayerCache can no longer desync when disabling UsePlayerUpdateJobs - Optim: removed couple extra allocs in UsePlayerUpdateJobs 2 Tests: ran unit tests + bunch of disable-enable of UsePlayerUpdateJobs in local session
56 Days Ago
Merge: from sleepignbag_assign_to_friend_bug - Bugfixes for sleeping bag friend assignation, making private and "make bed" action not replicating to the new owner fully - Added sleepingbag.assigntoplayer <bag entity id> and clearfromplayer <bag entity id> server vars for testing Tests: spawned sleeping bag and bed and used above functionaility while assigning/clearing from self - was visible on map when expected.
56 Days Ago
Merge: from steamworks_posix_fix - Bugfix for mods not beign able to work with Steamworks.Linux.dll - we go back to shipping Posix.dll Tests: Built server standalone for Windows and Linux from Windows
56 Days Ago
Merge: from baseplayer_serverupdateparallel - Optim: reducing allocs for UsePlayerUpdateJobs 2 codepath as much as possible(I think) Tests: a bunch of 2p session on Craggy with UsePlayerUpdateJobs 2 and various interactions(occlusion, shooting, connect-disconnect)
56 Days Ago
Merge: from baseplayer_serverupdateparallel - Bugfix for slow metabolism and slow hostile timer accumulation on drawn weapon Tests: compared healing rates of large medkit between UsePlayerUpdateJobs 0 and 2
59 Days Ago
Merge from baseplayer_serverupdateparallel - Optim: reduce GC allocs by 60% when creating tasks for UsePlayerUpdateJobs 2 - Optim: skip occlusion queries for pairs of same players (affects all modes) Tests: 2p tests on Craggy + 2k procgen with UsePlayerUpdateJobs 0/1/2 (covered spawning, sleeping, killing and occlusion kicking in)
2 Months Ago
Merge: from benchmark_demo_clean - Clean: removal of dead functionality for demo benchmarks (not supporting it) Tests: compiled in editor
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Bugfix for UsePlayerUpdateJobs 1/2 - fix another reason why player could be swimming when parented Tests: loaded up the map, went to the excavator - no more swimming with UsePlayerUpdateJobs 2
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Bugfix: UsePlayerUpdateJobs 1/2 - players no longer randomly start swimming when parented to entities Tests: loaded map from AU Prem 1 and went on to excavator - no longer swimming
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Fixes NRE when UsePlayerUpdateJobs 1/2 is enabled Tests: unit tests
2 Months Ago
Merge: from steamfriends_pooling_leak - Bugfix for a pool leak of SteamFriends with open friend list or party management Tests: observed steam friends list in game + created a party of me, SteamFriends pool stayed constant.
2 Months Ago
Merge: from texttable_allocs - Update: TextTable now can be directly pooled and supports using-dispose pattern - Bugfix: no more NRE on inspecting text table in debugger/evaluating twice Tests: unit tests + executed a bunch of console commands multiple times
2 Months Ago
Merge: from shoretexture_editor_cache - editor-optim: generates a cache for shore texture buffers Tests: ran craggy twice
2 Months Ago
▉▍▅█▇▍▆▌: ▋▆▉█▇ ▋▊▌▌▄▉ ▍▋▄▋▍ - ▍▇▆▌█▇ █▊▋▌▊.▍▉ ▋▌▍▆ ▄▅▋▆▆.▄▇ - ▅▅▉▊▌█▌▉▆ ▆█▍▋▇.█▇ ▌▌▋█ ▅▋▆▄▆▉▊▋▍▄▊ ▋▆▍▋▆: ▌▋▌▆▍ ▅▋▆▇▌ ▆▍▊▋▌▇ █▊▆▇▌ ██▆▌▅▊
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Bugfix for not replicating npcs when UsePlayerUpdateJobs 2 is set - Bugfix for potential NRE for rare kick reasons when UsePlayerUpdateJobs 1 or 2 is set Tests: 2p session on Craggy with NPCs and bots and UsePlayerUpdateJobs 2
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Bugfix for IndexOutOfRange when updating player state cache Tests: none
2 Months Ago
Merge: from baseplayer_serverupdateparallel - Next phase of parallel workflow, can be activated with UsePlayerUpdateJobs 2 - Optim: above mode now uses tasks to send entity snapshots/destroy messages where possible - Optim: above mode uses parallel Burst jobs for server occlusion - Optim: above mode reduced number of occlusion checks we run, more aggressive caching of results - Contains Network++ Tests: build tests of all modes in editor + standalone server build + unit tests + 2p session on Craggy
3 Months Ago
▉▅▉▇▇: █▍▉▍ ▌▌▅▇▌▆▇▅▇▌▆_▄▉▊▉▅ - ▍▌▆▇▅▋: ▍▋▋▋▄▅▋▇▆▌█▅▌▉▉▉▍▅█ ▅ ▍█▍ ▆▍▉▄ ▆█▊▊▆▌▄▍█▊ ▅▅▅█▄ ▉▇▊█▋: ▄▉▇▍▅ ▌▍▌█ ▌▉▋▉ ▅▉▍▉▅▆▆▌▉▅▍▌▍▇▋▍▌▉▉ ▉, ▋▄ ▊▄▋▉▇▌▅ ▉▊ ▅ ▇▉▍▌▅▍ ▅█ ▅▍█▇█▄▅▉
3 Months Ago
Merge: from benchmarking_update - Log results after single scene run - Fix extra timers in results - Fix scene load exception for no longer existing effects benchmark Tests: ran benchmarks in editor
3 Months Ago
Merge: from camerarenderer_leak - Fixes memory leaks related to Rust+'s camera renderer and Nexus mugshot savings Tests: print_arraypool when connected to turret - before ProtocolParser 16KB set would grow, now stays constant
3 Months Ago
Merge: from benchmarking_update - Cleanup of obsolete EffectsBenchmark - Editor-only DemoBuildingsViewer supports user modification of scene, scene export and import into scene - Bugfix for infinite load loop in benchmarking flow Tests: used the DemoBuildingsViewer to modify and export couple bases, built standalone client to run BaseRaidBench
4 Months Ago
Merge: from autoturret_optim - Fix server NRE during turret initialization for ones without RCEyes bone set Tests: spawned sentry.scientist.static(no RCEyes) and autoturret_deployed(with) - no NREs and still can control and shoot from autoturret_deployed
4 Months Ago
Merge: from autoturret_optim - switch timing variables from float to double Tests: editor builds C+S + confirmed deployed turret scans & detects, shoots, reacts to flank shots
4 Months Ago
Merge: from pooledlist_fixes - Bugfix for invalid pooling of PooledList-subclassed types (like Eqs.PooledScoreList) Tests: unit tests + print_memory PooledList tracking in editor with Wolf2
4 Months Ago
Merge: from autoturret_optim - Bugfix for turret not reacting to player in front when powering up (caused by me) - Bugfix for turret not identifying new target if it snuck from behind then walked in front (likely me as well) Tests: standing in front, sneak in from behind then to front, sneak damage, flying from far, depower-power turret - turret finds a target & shoots
4 Months Ago
Merge: from autoturret_optim - Fix to auto turret not responding to shots outside of firing arc - Fix to turret not reacting to shots if it got depowered then powered up again - Fix to turret snapping to hostiles outside of it's default firing arc when powering up Tests: shot it, ran around and powered it up and down using infiniteiopower in various combinations
4 Months Ago
Merge: from autoturret_optim - Speeds up AutoTurret::ServerTick by not updating nested transform hierarchy (gun_yaw and gun_pitch) Tests: deauthed gun turret shooting me from different positions/angles
4 Months Ago
Merge: from growablegenes_allocs - clean of 1 line Tests: none, trivial change
4 Months Ago
Merge: from growablegenes_alloc - reduces(removes?) junk allocs from growables Tests: editor builds + alloc unit test