600 Commits over 273 Days - 0.09cph!
Further optimisations for WorldPositionGenerator
- For each potential set of input values passed into the WorldPositionGenerator, each keeps its own array of potential areas in the map. Discard any element which will never pass for that set of input values, saving on computation on all future runs with those input values
- Testing the most problematic WorldPositionGenerator (ocean) on a 4.5k map shows that 98% of the potential candidates can be discarded
- Need to iron out an issue with the list of candidates always getting smaller when artificially checking every single candidate in each attempt
Merge from chainsaw_hotspot_gathering
Bring back the ❌ when hitting 🎯 trees 🌳 with chainsaws 🔗🪚. It now attempts to respawn close to the last hit point rather than jumping around the tree if hitting with a chainsaw. Is still always automatically hit regardless
Fix item redirects of the chainsaw not also bypassing the hotspot minigame
The ❌ decal no longer interacts with the wood hit particle effect when being hit
Mergee from chainsaw_hotspot_gathering
Fix NRE when attacking resources with explosives
Merge from esp_voip_indicator
Updated RustIcon inspector to be able to easily swap out the icon renderer material like we can do for text
Added outline to icons on ESPPlayerInfo
Add admin clientvar 'ESPCanvas.ShowVoip' to show icons on players who are currently communicating over in-game voice. Works like 'ShowHealth', only in effect whilst spectating
Merge from chainsaw_hotspot_gathering
Chainsaw now gathers wood from trees as if it is always hitting the ❌ spot
The ❌ has been removed from trees if hitting it with a chainsaw. Subject to change based on feedback
Merge from viewmodel_early_disable_fix
Fix issues with viewmodels disappearing
Merge from viewmodel_early_disable_fix
Fix viewmodels disappearing when held with a shield
Fix warning about viewmodels receiving the clear event when they are not setup to clear
Merge from turret_paintball_fixes
Merge from viewmodel_early_disable_fix
Adjust viewmodel camera lerp time on beancan grenade
Fix issue where viewmodel camera lerp would start when there is still items in the held item stack
Shelve tool for adding viewmodel camera lerp animation events automatically
Fix issue with viewmodel camera lerp duration not taking into account the current animator state speed
Merge from worldpositiongenerator_optimise_2
More optimisations for WorldPositionGenerator
- Move TryAlignToGround to be part of WorldPositionGenerator::TrySample, gets rid of the mutliple reattempts of TrySample
- Skip the work in TrySample if we have determined that there can never be a valid position for the given input values
▆ ▆▍▋▄▄ ▊▌█▋ ▋▊▊▇▅▊█▌▍▊▌▅▆▋▅▅▋▍▆▅▍
▋ ▍▆▉ ▉▅▅▇▇ █▄▌▍▋█▄▄ ▆▍▆▋▍▄█▄ █▌▇ ▍▇▉ ▆▍█▍▊▇ ▌▅▅ ▌▌▋▊▆▉▇ ▅▉▍▆▉ ▇▆▌
Add functionality for triggering a viewmodel camera animation to start a lerp back to default values, to smooth out the otherwise abrupt exit when a viewmodel gets cleared
Mostly functional tool to make enabling this viewmodel camera behaviour a bit easier
Add some extra easing helper functions to LeanTweenHelpers
Enable try double max distance for generating position on fishing tackle mission
Potential fix for particular fishing village location spawns being unable to provide the mission
Merge from floatingcity_boatshopkeeper_fix
Reapply changes, S2P all floating cities
Fix failed line of sight checks preventing vending machine purchases from floating city boat shopkeeper
This was due to the invisible vending machine being under the sea 🐟 underneath the shopkeeper
Updated flags for these vending machines so they are only accessible via talking to the shopkeeper, to prevent menu prompt conflicts for talking vs buying
S2P all floating cities
Fix tutorial missions still being active after respawning at mainland if player died and disconnected whilst in the tutorial
Fix profiler samples in Find and TryGetEntity
- 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