128,586 Commits over 4,201 Days - 1.28cph!
    
    
    
        
        
        
            
            
            
                
                - New turret setup
- Can now mount turret
- Server inputs passed as normal through the seat to the mounted weapon
- Can setup the mounted weapon with any in game BaseProjectile weapon (m249 for now)
- Backend like the attack helicopter gunner, echo out server movements to the client
- String pool gen
- Manifest
                
                
                
                
             
         
        
            
            
            
                
                Turn player model into a playable graph, implement one shot animations layer with additive blending and avatar masks.
                
                
                
                
             
         
        
        
            
            
            
                
                Add a third submission mode to indirect instancing which works through `Graphics.DrawMeshInstancedIndirect` and avoids copying to a command buffer.
Enable `indirect_instancing.command_buffer` to switch back to the old way.
                
                
                
                
             
         
        
            
            
            
                
                spacing out light sources more evenly on floating walkways prefabs
                
                
                
                
             
         
        
        
            
            
            
                
                merge from modding_custom_vitals -> main
                
                
                
                
             
         
        
            
            
            
                
                Ensure all custom vitals are cleaned up when community UI is destroyed (aka left the server)
                
                
                
                
             
         
        
            
            
            
                
                Display "crafting quality" stat for consumables in description
                
                
                
                
             
         
        
        
            
            
            
                
                Implemented a way for the client to countdown a time so server isn't sending network updates to update vitals every 1s 
- use {timeleft:***} in RightText to use TimeSpan.ToString() formatting
- test_custom_vitals commands accepts more parameters: {amount} {seconds} {formatting}
                
                
                
                
             
         
        
            
            
            
                
                Adding boatBuilding station rig
                
                
                
                
             
         
        
            
            
            
                
                Update: reimplementation of UI dynamic bundle
Only bundles 2 prefabs - Store and Inventory. This removed the need for editor-users to worry about what should be in which bundle. Doesn't work yet - inventory is borked, scrolling in store as well, and not unloading as much as I expected. Going to try to tweak it to see if it's usable.
Tests: built standalone and took snapshots
                
                
                
                
             
         
        
            
            
            
                
                merge from detailed_inventory_error_messages -> main
                
                
                
                
             
         
        
        
            
            
            
                
                Fix the merge + existing implementation, add changes not included in cherrypick
- move vitals logic inside CommunityEntity instead of creating a new entity specifically for vitals
                
                
                
                
             
         
        
            
            
            
                
                Implement code review feedback
                
                
                
                
             
         
        
            
            
            
                
                Cherrypick hackweek custom_vitals branch
                
                
                
                
             
         
        
            
            
            
                
                merge from fix_max_hp_tea -> main
                
                
                
                
             
         
        
            
            
            
                
                Fix client showing 100 HP when using max hp tea
                
                
                
                
             
         
        
            
            
            
                
                merge from analytics_puzzle_reset -> main
                
                
                
                
             
         
        
            
            
            
                
                some weak artificial separation forces between boats for a short period, needs more work and some mass involved as it's too simple
                
                
                
                
             
         
        
            
            
            
                
                ▍▌▇▊ ▌▇█/▅▆▋ ▊▋▋▄█▍▋▇█▆ ▄▊▍▅▊ ▅▍▊█▄▊ ▊▊▄█▇▄▊/▌▋▊▇ ▅▅▄▄ ▌▉ ▄▇▉▆▄▍ ▉▆ ▍▅▍'▊ █▋▋▆ ▄▍▄▊▉▅▍▄ ▉▋▉▋█▋▅, ▉▇█▊▅██▊▋▉ ▆▇▍▊ ▅▆▍▉ ▍▄▄/▄▅▄ ▌▇▉▊▆ ▇▋▌ ▅▍▇▆ ▄▅▊. ▋▊▆▇▅▇▌ ▍▇▇█▊ ▆▉▊▅ ▉▅ ▇▋▋▍'▋ ▇▇▋█ ▆▍ ▆▌▆ ▌ ▍▅█-▋▊▄▋▄█▅ ▇▌▋▉▆▉▌▌▅▊ ▇▌▌▌▌, ▄▇▍▉▄▄█▅▋▆ ▇▅▇▌ ▄▊▊▇ ▋█▉ ▉▆▅▋▄█▋▊. █▄▇▊▌▊▊ ▌█▇ ▄▌▋▍▆▍ ▇▉ ▍▄▄▊ ▉▄▇ ▇█▅-▌▌▄ ▊▋▉▇▆▄ ▉█ ▆█▋▆▄▊▉▌▉ ▄▅▇ > ▉█▊. ▊▌█▆▆ ▉▅▉▄ ▉▆█▅ "▅▊▍▍▌▄▋▊▆█ ▉█▌▉▌▄▊▉ ▉▅▄ ▍█▋" ▌▆▍▄▌▋▊▋
                
                
                
                
             
         
        
            
            
            
                
                merge ghostship_npcs to naval_update
                
                
                
                
             
         
        
            
            
            
                
                MountedWeaponSeat is now a generic style of seat that can be used with any attached turret
Create ServersideMountedWeapon, borrowing a lot of code from the attack helicopter turret
Setup interfaces to facilitate the generic seat
Add Check.IsValidWeapon to check if an Item is a valid weapon
                
                
                
                
             
         
        
            
            
            
                
                Setup enemy spawners for all ghost ship variants
                
                
                
                
             
         
        
        
            
            
            
                
                Use list of spawn groups as the "name" of the puzzle being reset
- cache list of SpawnGroup instead of repeating the Vis.Components() each reset (since the monument + spawn groups will always be loaded before entities or the first reset could occur
- don't log puzzles with zero spawn groups, since any important puzzle will respawn some type of loot
                
                
                
                
             
         
        
            
            
            
                
                Merging /main to /main/fpbuild
                
                
                
                
             
         
        
            
            
            
                
                Added new livestock mesh and textures. created new material for newest livestock.
                
                
                
                
             
         
        
            
            
            
                
                some detection and pushing to stop crewed playerboats from beaching themselves too badly
                
                
                
                
             
         
        
            
            
            
                
                Ignore some of the dummy puzzle resets by ignoring ones that don't check for players & ones that have infinity timeBetweenResets
                
                
                
                
             
         
        
            
            
            
                
                Mounted weapon seat and mounted weapon owner system
                
                
                
                
             
         
        
            
            
            
                
                String liights / added fill lights and tweaked string_light_300_a
                
                
                
                
             
         
        
            
            
            
                
                more minor worskhop fixes
- fixed nighttime causing rain??
- fixed color sliders inconsitent behaviour
- fixed hige player button resetting player seed
                
                
                
                
             
         
        
            
            
            
                
                Setup navigation for all ghostship variants
                
                
                
                
             
         
        
            
            
            
                
                Moved static driftwood out of autospawn folder to fix log spam
                
                
                
                
             
         
        
        
            
            
            
                
                ▋▅▆▊▍▉▊ ▊▅▉▇▍▄▌ ▇▇▌▌▉, █▋▉▇▊█▍ ▉▆▇██▄█▆ ▍▌ ▋▅▅▍▇▅▇ █▊▄▊ ▄▌▍ ▋▇▄▆▍ ▅▌▊▅▍▍█▇
                
                
                
                
             
         
        
            
            
            
                
                merge from analytics_puzzle_reset -> main
                
                
                
                
             
         
        
            
            
            
                
                Update: testing code to try to trigger NREs. so far unsuccessful
Need to switch away from the task for a bit, will get back to it later today
Tests: 2p session, used spectate_loop to see what happens on 2nd player end - no NREs
                
                
                
                
             
         
        
            
            
            
                
                exported/setup small engine anims with updated rig
                
                
                
                
             
         
        
            
            
            
                
                merge from garagedoor_optims
                
                
                
                
             
         
        
            
            
            
                
                Match LOD settings with skinned mesh
                
                
                
                
             
         
        
            
            
            
                
                smoothing groups from uv islands on garage door blocks unskinned