3,102 Commits over 915 Days - 0.14cph!
Merge from main -> native_memory_stream
Disable "client scene" and "server scene" in S2P because they aren't implemented yet
merge from main -> monument_scenes
merge from audio_import_music_clips -> aux1
Update import settings of audio
Fix preload setting not being preserved after unity 2022
Start over on a new branch since we need to keep the original preload settings
- cherrypick
99453 (music clips = compressed in memory + preload off)
Merge from monument_scenes -> aux2
Fix Serialization.AddPrefab() getting accidently deleted in previous commit
Merge from main -> monument_scenes
Subtract audio import changes (some audio clips had preload disabled)
Merge from audio_import_june_2024 -> aux2
Update settings of all music clips
Change audio clip updater to handle music clips
- vorbis, 80% quality (like other vorbis clips)
- preload off
Fix compile error from "fix_shipping_container_batching"
Compile fix for TriggeredEvent
merge from fix_shipping_container_batching -> main
Merge from shipping_container_vcol_fix -> fix_shipping_container_batching
merge from main -> fix_shipping_container_batching
merge from native_memory_stream -> aux2
Prewarm 200 codelocks
Go back to defining pool amount via code to prevent misconfigured prefabs
- player deployable doors stay at 100
- monument doors only warm 1
Change default door prewarm count from 100 -> 1
- monument doors were warming up 100 -> 1 now
Added ability to override an individual prefab's warmup count via the Poolable component
- garage door & sheet metal doors = 10
- wood & armored door = 5
Cherrypick audio import setting changes
Run `Sound/Update Audio Clip Importers` tool to update optimal audio import settings
- assuming the tool still applies good settings
Change WorldSerialization to deserialize into a NativeArray (NativeMemoryStream) instead of MemoryStream
- reduces heap reserved memory by 500MB when deserializing map due to many MemoryStream allocations
- add `loadmap` test command to load local map when profiling deserialization
Add NativeMemoryStream (MemoryStream backed by a NativeArray<byte> instead of byte[])
merge from monument_scenes -> aux2
Generate manifest with new string pool
Get rid of checking for scene in standalone build
- asset bundles don't want to tell you if scene is there
- rare error: won't occur once build process is normal
Enable batching on low container walls
Fix render batching not refreshing after color is changing
Pass color to batching directly instead of pulling from MeshRenderer
Fix batching not resetting detail color MaterialPropertyBlock when returning to pool
Enable the RendererBatch component on all shipping container prefabs
- fix some components that were at the root level instead of at the same level as the RendererLOD / MeshLOD
Add color to RendererKey for render batching to support shipping container
- pull the color from the MaterialPropertyBlock of the MeshRenderer
Apply fix #2 in redid commit
Redid the commit so that it would stop applying to DeltaSerialize()
- tried to combine existing null checks with new default value checks, keeping them seperate is less complexity
Fix & update codegen
- don't check if field is null twice (bytes & strings already checked if null when optional)
- throw error if required class isn't present, skip serializing structs if required but default value
- fix regression where it checked if field was default when delta serializing
Skip fields with custom default values instead of always serializing them
- significant as it affects Vector3
Updated codegen
Protobuf now won't serialize default values as pooling resets everything before deserialization
- should have the exact same input & output but better performance
Made ProtoBuf.Half3 and ProtoBuf.VectorData IEquatable so it can be compared to default value
Fix train_tunnel_entrance_a having output prefab somehow unlinked?
Fix scene prefabs that don't support remapping having all their components stripped (train tunnels)
Fix the check "is scene in asset bundles" not working outside of editor
- added method to check if any asset is at path in filesystem
merge from main -> monument_scenes
merge from qol_give_improvements -> main
Adding --silent onto a give command will stop telling you picked up the item
- still broadcasts to the server when an item is given
Fix `clearinventory` not running ItemManager.DoRemoves() causing items to not always go to correct spot
Add ability to specify target container & slot when using `give` command
- give {item} {amount} {condition} {skin} {container} {slot}
Add some descriptions to give commands
Fix `monument_scenes` convar not applying to remapping paths after previous commits
Don't remap to scene spawner if the scene doesn't exist in asset bundles
Allow editor to control whether it uses monument_scenes when doing map generation with `monument_scene_generation` convar
merge from build_leave_bundles_symlink -> main