userDaniel Pcancel
reporust_rebootcancel

1,417 Commits over 365 Days - 0.16cph!

1 Hour Ago
Bugfix: BaseRaidBench - local player now rotates properly Tests: ran the scene
4 Hours Ago
Bugfix: BaseRaidBench - local player now spawns on the spawn marker Looks in the wrong direction - will fix next Tests: ran the scene
4 Hours Ago
Update: BaseRaidBench - add a run that spawns base and players in it under attack - Removed baseRaid5 and baseRaid25 Local player spawns/teleports to the wrong position - will fix next. Tests: ran the scene locally
5 Hours Ago
Update: DemoBuildingsViewer - always visualize spawn markers Simplifies scene setup Tests: used in editor
6 Hours Ago
Bugfix: SpawnMarker.SpawnType are now proper bitflags Tests: none, trivial change
6 Hours Ago
Clean: move Building to Benchmark namespace Tests: compiles in editor
6 Hours Ago
Update: DemoBuildingsViewer - export spawn markers Tests: ran the export with couple markers
Today
New: editor-only SpawnMarker for DemoBuildingsViewer - automatically links up to nearest building, but can override Allows to anotate the scene with spawn markers and link up to the nearest building. Needed for more complex benchmark setups Tests: loaded staging demo and checked how gizmos draw
Today
Update: extra scopes for Projectile perf tests Tests: ran the perf tests
Yesterday
Update: BaseRaidBench - move BenchmarkUpdate to Update Hopefully will avoid confusion on why we have multiple update methods Tests: ran the scene
Yesterday
Update: promote hack to fix - expanded the explanation a bit further why it should stay Tests: none, trivial change
Yesterday
Hack: workaround for the BurstClothManager NRE - clean the run in Update Will fix the burst cloth related prefabs in a separate branch. Tests: ran the benchmark - no more NREs
4 Days Ago
Update: forgot to save BaseRaidBenchmark scene with the changes Tests: none, trivial change
4 Days Ago
Update: BaseRaidBench - add support for spawning a random base from a list Tests: ran the scene
4 Days Ago
Update: DemoBuildingsViewer - add ability to export as a merged base Tests: exported 3 bases from staging demo as 1
4 Days Ago
Update: DemoBuildingsViewer - can load multiple bases in a scene Exports them separately, for now. Tests: loaded top 20 bases from staging demo
4 Days Ago
Bugfix: DemoBuildingsViewer - spawn TOD prefab to allow digital clock to work Otherwise it NREed Tests: loaded base 3839 from staging demo
4 Days Ago
Bugfix: DemoBuildingsViewer - prevent attribute accumulation that leads to skin duplication Tests: loaded up the largest base from staging demo
4 Days Ago
Bugfix: DemoBuildingViewer - fix building block skin spawning in the wrong location Discovered that there's a new bug with duplicating skins on succesful scene opens Tests: spawned the largest base from staging
4 Days Ago
Bugfix: BaseRaidBench - ensure weapons fire right projectiles - Also reset cooldowns between runs Tests: ran the scene
4 Days Ago
Update: BaseRaidBench - add support for multiple run configurations - Also remote players now have id in their game object names for easier debug - Fixed a bug with accumulating frame counter (:ops: #2) - Updated subtitle display to see what's running There's a burst-related NRE that gets picked up, but it's not directly related to benchmark. Tests: ran the scene
4 Days Ago
Update: BaseRaidBench - record run name in results Next up to setup variable-player runs. Tests: ran the scene
5 Days Ago
Update: BaseRaidBench - output avg projectiles per frame Helps us track changes to timers(bases made the benchmark faster as there's less projectiles on average) Tests: ran the scene
5 Days Ago
Update: BaseRaidBench - support skins for spawned bases Tests: ran the scene in editor
5 Days Ago
Bugfix: BaseRaidBenchmark - walls now appear on spawned bases - Export the model bitmask for building blocks - Updated the base json Tests: ran the scene
5 Days Ago
Bugfix: unblock use of DemoBuildingsViewer after running benchmark/playing in editor - Done via temporarily shutting down steam connection Tests: opened the scen from the demo after running the benchmark
5 Days Ago
Update: move building hierarchy sorting to export - also fixed the bug with using Append instead of Enqueue Tests: ran BaseRaidBench scene
5 Days Ago
Update: BaseRaidBench - spawn bases around the firing circle - added the largest base from my demo Walls are borked, same issue as editor, gonna fix next. Tests: ran the scene
5 Days Ago
Update: export parent IDs for entities in buildings Tests: exported largest base from demo - confirmed expected entity had ID
5 Days Ago
Update: Move Building to it's own file Makes it accessible for benchmarking Tests: compiles in editor
5 Days Ago
Update: DemoBuildingsViewer - export base as a json file Going to see if it's enough to rebuild the base for the benchmark Tests: exported largest base from my demo
6 Days Ago
Bugfix: conditionally start bootstrap timer since it can be null Tests: none, trivial change
6 Days Ago
Buildfix: remove dead burst code and move job to namespace Avoids name mangling shenanigans Tests: build client locally
6 Days Ago
Update: enable batched projectiles and water checks by default in the BaseRaidBenchmark scene Tests: ran the scene
6 Days Ago
Update: add benchmark timer to SoundManager - replace magic values for timers with named consts It's chonky, so tracking it as well. Tests: ran the scene
6 Days Ago
Update: add benchmark timers to Projectile.Update and BatchUpdate Tests: ran the scene in editor, saw output
6 Days Ago
Update: Rewrite BenchmarkTimer to allow for accumulating time - Renamed API to make it clearer Tests: measured against a stopwatch in bootstrap loading
6 Days Ago
Update: BaseRaidBenchmark - lay down basic benchmark timer collection logic Will contribute to benchmark results, but right now don't have any relevant timers + need to rework how they are implemented. Tests: ran the scene in editor
6 Days Ago
Bugfix: DemoBuildingsViewer - fix missing walls - Manually pre-process prefabs to get around editor skipping preprocessing - Add an editor-only override for Facepunch.Instantiate to not treat gameobjects as prefabs - Gather building entities from all keyframes Tests: loaded biggest base from my cleint demo - matches how demo renders it
7 Days Ago
New: DemoBuildingsViewer(Tools/Demo Buildings Viewer) - utility to extract buildings from a demo and create a scene of them - Fixed VisualFoodSetting.PreProcess to nominate for deletion, instead of destroying directly Currently only looks at keyframe 0 to detect building entities, which doesn't seem like enough Tests: used a client demo from a release server to spawn a bunch of building scenes
7 Days 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
7 Days Ago
Bugfix: NRE during initialization of turrets without RCEyes set Tests: spawned sentry.scientist.static(no RCEyes) and autoturret_deployed(with) - no NREs and still can control and shoot from autoturret_deployed
7 Days Ago
Merge: from main
7 Days Ago
Merge: from main
7 Days Ago
Bugfix: unbork shooting from RC turrets - Recalculate where RC eyes are on the server Tests: remoted into a turret and shot in different directions - saw hits where expected
8 Days Ago
Update: Rewrite how we rotate turrets on server - Where possible, yaw and pitch rotations are merged, saving us on math (0.32ms) - Other cases are calculated separately (0.51ms, still faster than original 1.32ms) Updating of separate bones was fast but wrong in my last commit. This version corrects it while also being faster than pre-borked-optim. Tests: On Craggy, spawned sentry.scientist.static and autoturret_deployed, made them rotate to different directions - they were able to track and shoot me.
8 Days Ago
Update: AutoTurretTests.MeasureServerTick now checks merged and separate yaw-pitch bones Since separated bone transformations take more math, need to profile how big of an impact it'll be. Tests: ran the test
11 Days Ago
Bugfix: NPCAutoTurret now shoots when it's facing the target Caused by not implementing the same optimization as AutoTurret (while NPCAutoTurret depends on it). Tests: spawned `sentry.scientist.static` on craggy and became hostile to it - was shot within the whole 360 arc
11 Days Ago
Merge: from main
11 Days Ago
Hack: BaseRaidBench - avoid flooding audio manager During benchmark, we create too many audio sources and don't clean them up with default budgets - so we up them abit. Tests: ran the benchmark - no longer grinds at 3fps