129,088 Commits over 4,201 Days - 1.28cph!
- Fix random low res mip levels by using NativeParallelMultiHashMap instead of FixedList to avoid running out of space.
- Fix dropping off-screen instances to low res mip levels by considering all instances for mip level calculations instead of just culling surviors. The old off-screen behavior can be examined by setting `indirect_instancing.streaming_use_all_instances 0`.
- Mitigate dropping Unity renderers to low res mip levels when Unity's and Indirect Instancing streaming systems disagree by calling ClearRequestedMipmapLevel() when we have determined mip 7.
scientist_boat_ai -> naval_update
Dont kill rest of the scientists when the driver dies (not intentional)
scientist_boat_ai -> naval_update
Only allow killing scientists to happen once
Call die on scientists so the loot bags spawn
Fix logic bug in pursue player that could possibly cause recursive behaviour (Active target check was flipped)
naval_update -> scientist_boat_ai
pt_boat_2 -> naval_update
merge from deep_sea_repel -> naval_update
Fix NRE when checking if vehicle is near portal and needs repel force but portal / deep sea entity hasn't been spawned yet
Add collider to the back of the deep sea portals so it's not possible to get fully through the trigger but not teleported
Minor adjustment to SWEP:OnRemove
* Should be no functional change, just more consistent when it is called with other SENT types
Fix UnStatue bypassing CanProperty serverside
Fix playerboat.SetSailsOpen not working because of auth and wrong player position
Bugfix: AnalyticsV2 - fix invalid Json aggregation
- logs are aggregated again to reduce spam
This breaks azure bulk aggregation, but now the code structure is in place to support both
Tests: ran unit tests
Add repel force for vehicles that aren't allowed to teleport before they reach the entrance & exit portal
- split old repel code into separate method
- check both portal distance and normal ValidBounds distance on the main island
- only check portal distance in deep sea
Split into `CanTeleportToDeepSea()` and `CanTeleportToMainIsland()` incase we need that functionality later, both call the same "can this entity teleport" method for now
Added hackable crate to ghost ships
When the deep sea opens, we spawn one single hackable crate in a random ghost ship
Added deepsea.hackablecrates_count, default to 1
Bugfix: AnalyticsV2 - don't miss client-only initialization during bootstrap flow
Tests: monitored client bootstrap analytics
fix world model outline not showing on loaded rpg ammo (for dropped item)
- added a check before showing world outlines for if the transfom is active in hierarchy, if not, no outline
merge from cannon_water_fixes
FIx cannon water factor override only existing on clients
Floating city 1 2 3 scene2prefab
Fix floating point overlow in mip level calculation
merge from naval_update/deep_sea
Added renderer for the sea floor in the deep sea, moving it from Y -100 to -50 to match the terrain margin height
Removed the bottom radiation volume
Revamped the culling volume setup for the casino interior to improve performance / casino interior will only render when entering through the elevator
Added fake curtains to block off the interior when peeking from outside
Various other tweaks and fixes
re-populated entity prefab (would not re-connect), added rotational offsets to match existing position, will most likely conflict when merging with player update entity
Bugfix: AnalyticsV2 - skip client analytics if steam hasn't been started
Tests: none, trivial change
re-populated worldmodel prefab (would not re-connect), scale and collider updates
set viewmodel prefab to use bone based animation
Bugfix: AnalyticsV2 - Log and DryRun no longer skip accumulators and uploaders once changed
As an extra, it got rid of a bunch of inheritance code
Tests: ran unit tests and logged analytics in editor
Fix shooting/reloading cannons under water
Fix bug that capped the amount of cameras you can add to a computer station at 256 characters of the combined identifiers, caused by the default max length when reading the joined bookmark string on the client.
Bumped it to 1024 which should be more than enough for most situations.
fix deploy guide"built-in render texture type not found" error
naval_update -> pt_boat_2
Assigned names to the 4 static cctv cameras at ferry terminal, they actually work now. S2P
FERRYDOCK, FERRYUTILITIES, FERRYPARKING, FERRYLOGISTICS
Lerp when not using sights based on a fixed sensitivity value
added hazmat worldmodel, set up prefab and linked to item.
set up viewmodel prefab with updated model, re-populated animator and updated anim names
Client Prediction V2:
Calculate a common time frame reference to send as a time key
Hold a list of 20 previous predicted states on the client
On receving a new server state: check your list
Reconcille if needed
put the ocean back into the cargo test scene (ocean topology)
merge from anisotropic_fallback
RPG7 - Fixed ammo position in world model prefab
Update: UsePlayerTasks - ensure SendEntitySnapshotsWithChildren_AsyncState have equally sized batches
Previously we counter players for batch limit (skipping it's hierarchy), but that could lead to lopsided unequal tasks
Tests: couldn't test this one, but it's similar code to other places so should be gud