563 Commits over 273 Days - 0.09cph!
- Fix paintball impact effects not always behaving with turrets
- "Impotent" projectiles created just for effects for non instigating clients now know about their source weapon
- Cleanup EntityRealm::TryGetEntity
- Fix paintball impacts instigated by the local player not ignoring max spawn distance
Merge from turret_paintball_fixes
Fixes for how paintball gun behaves with turrets:
- Damage is now increased when a paintball gun in a turret shoots someone wearing paintball overalls, same way when shot by another player wearing overalls
- Last applied paintball colour is now retained when placing the paintball gun in a turret
Misc changes:
- Removed paintball damage scaling in code for hitting different entity types, instead use the protection property assets
- HeldEntity cached item is now usable on both client/server
- Add sourceWeapon to projectiles, so the client can retrieve the source weapon entity from locally instigated projectiles
- HitInfo is now Disposable, same pattern as PooledList
- Remove various unnecessary HitInfo allocations
Add ability to keep entity hold type override on 3rd person playermodel active after the entity has been destroyed, until an animation event has been received (same setup as for viewmodels)
Fix an issue where overrides of DoPrepare were not being called when invoked from the context menu button
Revert change to tutorial island mesh in #
144520, it borked the island
Merge from tutorial_island_mesh_fix
Merge from naval_missions
Don't add tutorial missions to the revalidate missions work queue
Remove unnecessary extra field recently added to Item, use existing instanceData on the item instead
Bumps network protocol due to updated protobuf definition
Should only be merged with next wipe
Add support for having held entity viewmodels stay active after the entity has been destroyed due to using the last item in a stack, fixes viewmodel animations stopping early
Setup for beancan grenade as a demo
Merge from skin_access_improvements
Remove DeveloperOnly visibility flag from skins_access due to some servers relying on it being visible
Fix skins_access -1 not working with default wallpapers
Merge from blendedsoundloops_onvalidate_fix
Check if SoundDefinition template is valid before accessing it in BlendedSoundLoops::OnValidate
Fixes error spam in editor
Fix deep sea treasure mission progress getting stuck if player disconnects after digging up treasure chest
Merge from treasure_mission_fix
Check for skins_access value when checking if a steam item is in our inventory
Merge from boatscientists_mission_fix
Mission to kill deep sea patrol boat scientists now fails if the deep sea closes
Merge from wildlifecull_wolf_fix
Add Wolf2 to eligible animals for Wildlife Cull mission
Merge from skin_access_improvements
Merge from skin_access_improvements
Cleanup how skins_access worked, now runs in the base "do we own this DLC" style checks rather than having branches in various different classes
Fixes default wallpapers not being available with skins_access -1
Merge from naval_missions
Revert change to MissionPoint type position generator for now due to error
Fix item already added exception in request missions update
Merge from naval_missions
Suggested simplifications for performance capture
Cleanup bits from last commit
Add 'profileNextMissionsValidStateWorkQueue' servervar to generate a performance capture containing the next run of the missions work queue if profling is enabled
- Optimise WorldPositionGenerator, this was the most expensive job in the new work queue and is now showing as at least 30x faster at in testing
- Optimise MissionPoint type position generator so it no longer always iterates through all mission points on the server
- Now check when we last revalidated each mission before adding it to a run of the work queue rather than just checking time between runs of the work queue itself
- Move work queue run cooldown to a servervar 'missionValidStateWorkQueueCooldown', and added 'missionPerValidStateCooldown' to configure cooldown between revalidating individual missions
- Add servervars 'resetmissions' and 'resetmissions_alll' to reset missions progress for a target player or all players on a server. Useful if saved missions progress is borked without having to reset entire player state
- Player now requests a mission valid states update when they join a server, so map markers will be ready for when they first open their map
Merge from 3p planner animation update
Animation fixes and code improvements
Merge from 3p wallpaper animation update
Cleanup old door closer code, open/close anims basic setup
Fix null exception when quickly switching between paintball guns
Disable being able to wear headgear with paintball overalls due to balance issues