branchrust_reboot/main/ai_wolf_iteration/ai_scientist_iterationcancel
                         
                     
             
         
     
    
        
356 Commits over 365 Days - 0.04cph!
    
    
    
        
            
            
            
                
                Fix covers not facing the right way when converted from a prefab local space to world space
                
                
                
                
             
         
        
            
            
            
                
                When waiting in cover, scientist face the side they think you'll come from instead of facing the wall
This also helps sneaking up on them when flanking from the opposite side
                
                
                
                
             
         
        
            
            
            
                
                Have scientist try to guess your current location based on where they saw you last
                
                
                
                
             
         
        
            
            
            
                
                Renaming crouch to duck for consistency
                
                
                
                
             
         
        
            
            
            
                
                First pass on scientists peeking out of tall and low cover
                
                
                
                
             
         
        
            
            
            
                
                Use constants from BasePlayer and PlayerEyes for NPC cover generation and selection
                
                
                
                
             
         
        
            
            
            
                
                Have scientists only crouch when their cover is low
                
                
                
                
             
         
        
            
            
            
                
                Make scientists approach by sprinting or sneaking from cover to cover
                
                
                
                
             
         
        
            
            
            
                
                Prevent scientists from shooting when they are sprinting
After they sprint, if their target is not directly in front of them, they will need some time to aim at their target again
                
                
                
                
             
         
        
            
            
            
                
                Make killscientists command also kill new scientists
                
                
                
                
             
         
        
            
            
            
                
                Fix scientist appearing on server but not client (had to redo DoPrepare and rebuild manifests after changing folder)
                
                
                
                
             
         
        
            
            
            
                
                Update spawns in desert mil base dwellings
                
                
                
                
             
         
        
            
            
            
                
                Bake covers for mil desert base
                
                
                
                
             
         
        
            
            
            
                
                Bake covers inside prefabs in the prefab's local space, so that they can be retransformed in world space when the prefab is placed
(baked covers are not gameobjects, just structs in a list, so they are not automatically parented)
                
                
                
                
             
         
        
            
            
            
                
                Make the cover tool faster by only generating the helper navmesh on tiny planes that perfectly fit the bounds of each monument sub-prefabs
                
                
                
                
             
         
        
            
            
            
                
                Tool to load all sub-prefabs of a monument, automatically add scientist covers nodes to them, then save the covers in each prefabs
This way we can still bake covers in editor even though monuments are procedural
Also optimize the tool to take less than 1s for basic monuments like desert military base
                
                
                
                
             
         
        
        
            
            
            
                
                Prevent scientists from magically knowing where you are and homing on you
They now have to use their senses, guess and search methodically
Allowing them to be surprised, baited and flanked
Fix scientists seeing through opaque tarp
                
                
                
                
             
         
        
            
            
            
                
                If a scientist loses sight of you and you pop from another angle they don't expect, they'll take more time to flick their crosshair to you
If you reappear in the exact same spot though, they won't need to move their crosshair so they'll just shoot based on the average human reaction time
                
                
                
                
             
         
        
        
            
            
            
                
                Scientist accuracy now depends on what the player is doing not only distance
                
                
                
                
             
         
        
        
            
            
            
                
                Modify sight checks to use bounding box top instead of bottom
                
                
                
                
             
         
        
            
            
            
                
                Make bursts feel more natural
                
                
                
                
             
         
        
            
            
            
                
                First pass on making scientist aiming feel fairer
                
                
                
                
             
         
        
            
            
            
                
                Fix NRE caused by new scientist missing a component that wolves have
                
                
                
                
             
         
        
            
            
            
                
                ▇▉▋▇▇ ▄▊▇█ ▊▌_▍▉█▌_▄▄▉▉▇█▇▅▆
                
                
                
                
             
         
        
        
            
            
            
                
                ▆▌█▄▆ ▍▄▄▌ ▆▆_▅▌▊█_█▇▉▋▇▉▉▅▊
                
                
                
                
             
         
        
            
            
            
                
                ▄▌▍█▅ ▊▋▇▋ ▊▄_▅▋▆▄_▄▇▇▍▉▋▋▄▍
                
                
                
                
             
         
        
            
            
            
                
                Make fsm declaration syntax more compact, fix scientist death
                
                
                
                
             
         
        
            
            
            
                
                Update scientist FSM to new system
                
                
                
                
             
         
        
            
            
            
                
                Fix scientist spinning when coming to a stop
                
                
                
                
             
         
        
            
            
            
                
                Fix scientist not moving (merge)
                
                
                
                
             
         
        
            
            
            
                
                Fix compile errors from merge
                
                
                
                
             
         
        
            
            
            
                
                Merge from ai_wolf_iteration
                
                
                
                
             
         
        
            
            
            
                
                Improve scientist cover generation
Cleanup navmesh inside edges before generation
Make sure points are on navmesh
Reduce cover density by merging nearby covers with similar angles
                
                
                
                
             
         
        
            
            
            
                
                Apply distance checks to individual covers instead of cover groups
                
                
                
                
             
         
        
            
            
            
                
                █▄▉ ▅▇▅ ▋▍▄▇▋ ▅▆▌▋ ▉▉▋▉ ▉▌▇▌ ▆▄▊▉▇▄▇ ▄▌█▌▄ ▇▇▇▅▇▊█ ▅█ ▆▌▆▉▅▌▉▇ ▊█▊▅▅
                
                
                
                
             
         
        
            
            
            
                
                Improve cover selection and debug, fix some objects not blocking the trace
                
                
                
                
             
         
        
            
            
            
                
                Better vislog for cover debugging
                
                
                
                
             
         
        
            
            
            
                
                Fix pillar covers not handling a non-zero rotation
                
                
                
                
             
         
        
            
            
            
                
                ▅█▌▍ █▆▅▌▅▍▅▍▌ ▋▍▊▌▇▋ ▆▄▌ ▇▌▌▋▅ ▍▇▉▊█ ▉▅▊▌▆ ▉▇ ▇▋▉▊▊█▆▌▍▄ ▅█ █▄▆▌▇ ▅▍▄▊▄▆█▉▇
                
                
                
                
             
         
        
            
            
            
                
                Iterate on cover and peeks
                
                
                
                
             
         
        
            
            
            
                
                ▊▉▇█▋ ▌▋▋▋ ▍▄_▌▄▇▇_▅▆▅▍▍▍▅▌▅
                
                
                
                
             
         
        
        
            
            
            
                
                ▉▆▌▉█ ▇▆▌▆ ▆▆_▊▅▄▅_█▋▅█▍▌▋▋▉
                
                
                
                
             
         
        
        
            
            
            
                
                Add cover component supporting primitive shapes
                
                
                
                
             
         
        
            
            
            
                
                Fix incorrect line in OBB DebugDraw