130,440 Commits over 4,201 Days - 1.29cph!
    
    
    
        
            
            
            
                
                Update: StringView - prefer ctor overloads instead of default args
Saves a couple branches in some scenarios.
- Also expanded tests to cover all ctors and arg ranges
Tests: Ran new unit tests and checked server browser
                
                
                
                
             
         
        
            
            
            
                
                Fixed floating wallpaper world model in first person view
Icons test
                
                
                
                
             
         
        
            
            
            
                
                - ██▉ ▇▊▉▄▋▊ ▆▇ ▅█▅▆▉▅▍▌▌▆ ▇▄▌▄█▌▉▊ ▄▊▆ ▍▆▌▊▆▉ ▇▆ ▄▋▅▋▌▇ ▌▅▉▉ ▅▊▊ ▄▋ ▄█▋▆▅▊ █▅ ▉▉▅ ▆▆▇▊▇ ▊▊▊▋
- █▆▆ ▍▋▊ ▋▄ ▄▍▄▉▌▉▋▆▉ ▇▅▉▉▊▉▆▋▅▉▌ ▌▆█▍ ▍▆▇▌▅ ▋▉█▍█▅ ▊█ ▉▇▋ ▉█▌▇▉▅▅▋ ▋▄▆▊▅ ▍▅▌█▅▊▊▅ 
- ▍▄▋ ▋▊▉▅▉▌ ▌▅ ▌▌▆▇█▅ █▌▅▉▅▅ ▉▍▇ ▄▇▆▆▇ ▍▊▉▊▇▄▉▌▉ ▄▆▌▅▄▌▆▊
                
                
                
                
             
         
        
            
            
            
                
                Clean: Updating the docs of StringView to compare against Memory
Turns out I missed System.memory during my initial research, which serves a very similar purpose. Sadly, it doesn't cover all our use cases, so we still need StringView - I've mentioned these shortcomings in the xml doc.
Tests: none, trivial change
                
                
                
                
             
         
        
            
            
            
                
                Viewmodel and world model texture swapping wip
Set viewmodel default texture to blue (the default wallpaper skin)
                
                
                
                
             
         
        
            
            
            
                
                Fixed problem with blue viper material
                
                
                
                
             
         
        
        
            
            
            
                
                Update: Finalizing StringView
- StringView's constructor now follow's Span form (source, start, len) instead of (source, start, end). Fixed updated unit tests.
- Reimplemented CompareIgnoreCase via EqualityComparer<T> instead of IEqualityComparer<T> as per MS recommendation.
- Annotated every public method with xml docs
Test: ran unit tests - all green. Checked ServerBrowser - still good.
                
                
                
                
             
         
        
        
            
            
            
                
                Updated industrial.ceiling.lamp.compact textures and material
                
                
                
                
             
         
        
            
            
            
                
                Enable read/write on legacy wood pile importer
                
                
                
                
             
         
        
            
            
            
                
                Update: Expanding HashEquality test for StringView
To confirm that the required interface is implemented correctly and gets invoked.
Tests: Ran the updated unit test
                
                
                
                
             
         
        
            
            
            
                
                Adding wallpaper skins for retro, royal, polka dots, clouds, geometric
                
                
                
                
             
         
        
            
            
            
                
                Allow loading fsm scriptable objects into the runtime fsm component
                
                
                
                
             
         
        
            
            
            
                
                Merge: from main
Tests: built all modes. Server Browser still works
                
                
                
                
             
         
        
            
            
            
                
                Update: Reimplement tag support in server browser
Fixes the break I left when running the experiment with StringView
Tests: Clicked through server browser's various filter options
                
                
                
                
             
         
        
            
            
            
                
                World Update 2 -> Legacy Woodpile
                
                
                
                
             
         
        
            
            
            
                
                ▇▉▊ ▉█▍▍▆▆▆█ ▄▍▅ ▇▋▌▆▅ █▊▋█▇█▅▊▋ ▅▆▋▄▄▉██ ▌▅ ▋▌▇▆▊▋▊▉▊ ▋▌▍▍█▄▉▇▊ ▄▆▅▇ ▇ ▅▄▍▉▇▍▇▊▍▌ ▊▉ ▆▄▇▄▋
                
                
                
                
             
         
        
            
            
            
                
                Improve fsm editor UX, create new states next to currently selected ones, link them, and select the new one
                
                
                
                
             
         
        
            
            
            
                
                Clean up serialized data containing fields that don't exist anymore
                
                
                
                
             
         
        
            
            
            
                
                Generate code and manifest
                
                
                
                
             
         
        
        
            
            
            
                
                Added prevent build volumes to buoys and divesites
                
                
                
                
             
         
        
            
            
            
                
                Divesite underwater check
                
                
                
                
             
         
        
            
            
            
                
                Add fsm UI support for tag transitions, complete transitions, start states and link states
                
                
                
                
             
         
        
        
            
            
            
                
                Wallpaper viewmodel deploy animation when deploying
                
                
                
                
             
         
        
            
            
            
                
                Reset wallpaperID to 0 after removing wallpaper
Removed unused wallpaper code in Spraycan ChangeItemSkin RPC
                
                
                
                
             
         
        
        
            
            
            
                
                Buildfix: Reimplement deleted overload call from last CL
Also reduced number of hashset allocations when tags are empty.
Tests: Went to server browser to check Nexuses
                
                
                
                
             
         
        
            
            
            
                
                Merge: from main
Tests: Built all modes
                
                
                
                
             
         
        
            
            
            
                
                Fixed lift entity getting orphaned if elevator block is destroyed
                
                
                
                
             
         
        
            
            
            
                
                fixed triangle left wall uvs being flipped
some precision uv fixes
                
                
                
                
             
         
        
        
            
            
            
                
                removed splat set nodes from coastal cliffs
                
                
                
                
             
         
        
            
            
            
                
                merge from smart_alarm_error_message_fix
                
                
                
                
             
         
        
        
        
            
            
            
                
                 merge from hitinfo_pooling
                
                
                
                
             
         
        
        
        
        
            
            
            
                
                Fixed explosives not playing their underwater effect when they detonate under the lake
                
                
                
                
             
         
        
            
            
            
                
                Added a system to block water pump placement in swimming pools but still allow it in natural water sources like lakes
                
                
                
                
             
         
        
            
            
            
                
                Fixed dropped items not sinking properly like they do in the ocean (will need a S2P, I'll just do all of them at the end of the day)
                
                
                
                
             
         
        
            
            
            
                
                Fixed not being able to fill water containers from lakes and oases
S2P all new water monuments
                
                
                
                
             
         
        
            
            
            
                
                Fixed being unable to drink from lakes and oases
                
                
                
                
             
         
        
            
            
            
                
                Update manifest, delete some old meta files and fix lake A alpha texture not importing
                
                
                
                
             
         
        
            
            
            
                
                Merge main -> TrainDecouplingImprovements