157,149 Commits over 4,566 Days - 1.43cph!
Attempt 2 at fixing compute kernel lookup errors during builds
Perform BRG culling in a job
▅ ▆▄▊▅█▌ ▇█▇▅▊▊▋▌▆▉ ▋▅▌▊▆▅█▉█▍▋ ▊█▆
Fix terrain not rendering when instancing is active
merge from PlagueHazmat_Improvements
wip procedural animation-target skin constraint
Add toggle buttons per source, so you can toggle mixing table entries on/off for cooking workbench, etc.
Search still searches across all categories, hidden or not.
Pooling fixes.
Layout tweaks.
Store entity ID for position ticks in a 1000 sized cache
- reduces entity ID from 8 -> 5 -> 2 bytes (8 now, would be ~5 with VarInt encoding, 2 bytes with index lookup)
- also compresses the parent's network ID when parented
- overkill just for network IDs but basically free since we also want to do lossy compression for positions
- demos store the network ID lookup in the keyframes so it can skip forwards & backwards still
- make batch position packets ordered now (not a big deal since they are way smaller than old ones and max one per server frame)
Don't poll all 100+ keys if unity tells us that no key is pressed
Saves 0.04ms/frame
▄ ▌▌▋▍▇▆▄ ▍▆▄▉▉ ▄█▉▄▌▅▇ █▉█▌▋█▉ ▍▇▍▄▅▆▌▉▄ ▌▍▊▌ ▆█▅ ▋▅▆ ▉▋▉▅▊
Terrain diffuse base pyramid disable
▇▊▅█▄▋ ▇▉▉▆▍▍▍▇▋▊█▄▌▄▍▌▉▄▊▇▄▅▇▄▍▆▌▉▋▉▋█▋▊▋▇▌█▇▉▋▊█▊▇▉█▋▆ █▄▅▋▊▋▆▅▉ ▆▊▅█ ▉▅▍▍▇▆ ▆▊ ▄▄▊▅▉█
Merge from Animal_Jumping
Fixed picking up mushrooms not showing the total owned in the pickup notice
merge from optimize_upkeep_multiplier -> main
Cherrypicked
168066 "Can't use the frankenstein table if building blocked"
Can't use the frankenstein table if building blocked
merge from frankensteintable_priv
Basic setup for viewmodel animations when attaching grenades to surfaces for the grenades which have an attach anim asset
▄ ▄▋▌▉▆ ▍█▄▋▄▉▋▄▇ ▅▇▊▉█▇▍▉ ▌█▊▋ ▋▄▇▉▅▍ ▆▉▄▋▆▊▌▉▄ ▍▅ ▄▍▋█▆▅▍▅
merge from cliffs_heightcollider_fix
Fixed some traincar variants not playing any SFX when destroyed/gibbed
simplified meshes on a lot of scrap king building components to accomodate revised textures, fixed lod0>lod1 mismatches across a bunch, fixed culling on corners
Strip AI cover and move points from the client, they're only used by the server
Had 13k of them
Fixed cliffs not stripping their Add_To_Height heightmap mesh collider when loading from a cached map
I had ~6500 of these enabled on a proc gen map
▍ ▅▌▄ █▊▌▍▋ ▌▅█▅▄█ ▇▄▌▌▍▋▇▍ █▌▆▉▄▉▊▉▄ ▅▉▅▌█▌ ▄█▌▉ █▄▋▅▉▍▊ ▉▌▍▅▌█▊▆█ ▆▅▅▌
▅▊▋█▅▆ ▋▌▇▉▊ ▇█▆▆▌▌▉▌▄ ▍█▌▌▇▅▉▊ ▊▊▆▉ ▊▊▉▆▊▇▍ ▄ ▆▉▍▍▋█ ▆█▅
Remove leftover log in RotaryGunCylinderViewmodelComponent
Ballista and static ballista 8 -> 2
Battering ram and catapult seats 8 ->
▍ ▊▋▆▊█ ▆▌▄▌▇▉▉ ▄▆ ▉▊▇▉▅▊ ▄▅▇▇▊▍▉▌▊ ▊▌▊█▄▌▇ ▉▅▇▉▋ ▅▌▉▊▌▆▅ ██▆▊█▆ ▌█▇ ▍▍█▋▄ █▆ █▍▅ ▄▇▆▅▅▆▊ ▍▌▇▌▊▌▋ ▇█▅▇▆ ▅▅▅▇ ▍▉▆ ▌▋▋▋ ▉▅▋▋▆▋▅ ▇▄█▌▆▄▅▉ ▆▅ ▋█▊▇ ▌▅▋▍ ▌▄▇▉▍▇▌ ▆▅▋▋▍
Reduced bonuses provided by Advanced, Pure and Creamy/Milky teas. Creamy tea variant is now what Pure used to be, advanced and Pure reduced below that to compensate. Average nerf: Advanced ~11%, Pure / Milky ~18%, Creamy ~20%. Healing, Crafting Quality and Rad Removal teas unchanged.
All arrows 100 -> 25
Paintball projectile 100 -> 5
Speargun spear 100 -> 5
Shotgun slug 100 -> 10
Fix the guide not detecting if the sail would block when lowered but doesn't block when up
- caused the sail to be blocked only when lowered despite the guide making it look ok
Pool review:
Admin cars 2 -> 0
Snowball 100 -> 5
Snowball gun projectile 100 -> 5
Boat building blocks 100 -> 15
Fixed the codelock on frankenstein table appearing underneath the table on the floor
▌ ▉▅▄ ▍▉▋▋▅▅▍▄▉▅▊▊▉ ▉▆▉ ▆▆▄▉▊ ▌▋▋▊▍▌▆▇▆ ▆▋▉▌▍▅▊ ▇▋█▆█▉▉█▅▍▉▋▊▊▉▉▊ █▅ ▌▄▅▅ ▆▊▋ ▇▌▌▄▊▊▅▍▌▉▊ ▇▆▆▅▇█▄ ▆█▊▉ ▋▆▍█▌▆▊▆▉▅ ▉▊▆ ▊▉▄ ▆▍▊▋ ▋▄▌▆▅▌ ▊▊▋▅▍▆ ▅▋▅▊▅ ▆▋▌▆ ▊▄▉▌▉▄█▋ █▋ ▇▌▌▌▋█▊▆▍▊▍▉▇▅▆▉█▉▍ ▍▍▅▋▉▄▄ ▇█▊▌▅ ▍▆▇▊▇▆▌▇ ▆█▄▌ ▆▆▅▊ ▇▉▄
Update demos to read the new batched packet format
Update SendNetworkPositions() to use the new batched path
- famous last words but batched position updates shouldn't break so we shouldn't need a ConVar to toggle behavior at runtime
merge from deepsea_unloading
Merge from hemp_colour_swap
Add batching for position ticks
- new packet type EntityPositionBatch so old demos keep working
- batches together entity position updates per player per server frame
- flushes batches after ServerMgr * Invokes
- skips sending time field if it's the same as the entity before it