-
DarkGod authored
NPC pathing update (NPC SHOVE BEHAVIOR): Currently the AI is incredibly bad at moving towards a player if another NPC is in the way because it prioritizes attempting to shove them in the majority of cases even if a sidestep would work. Additionally, the shove algorithm factors things like size. This does not make sense. - Shove pressure no longer exists - Shoving now only compares ranks and always works if greater, else always fails - Shoving will now attempt to move the target aside but if it fails will swap positions with them instead. This favors a "spreading out" by default but makes sure that the biggest threats can advance through lesser ones in tight quarters - Shoving no longer costs the shoved any turn energy - New move script "move_astar_advanced". This always checks actor blocking but doesn't block if it could successfully swap or shove them. This is autoassigned to randbosses - move_astar now calls ActorAI.moveDirection instead of Actor.move allowing it to potentially shove allies - Fixed ActorAI.aiSeeTargetPos not checking for invalid target location guesses the first turn it doesn't see the target directly - Randbosses can now open doors and move others See merge request !523
d1fcef8f