Commit Graph

254 Commits (master)

Author SHA1 Message Date
psi29a f0a77a48df Merge branch 'check_pathgrid' into 'master'
Make sure PathFinder::getClosestPoint is not called with failing precondition (#6294)

Closes #6294

See merge request OpenMW/openmw!1236

(cherry picked from commit baa33799de3cb27d9d3805e164b9d7ccea6a3e4d)

d36595e0 Make sure PathFinder::getClosestPoint is not called with failing precondition
3 years ago
Evil Eye c5aa3d4f77 Don't stop and turn to the player while sneaking or jumping 4 years ago
jvoisin ee2446d5c4 Trim even more 4 years ago
elsid 675c0ab72f
Apply uniform random deviation to AI reaction timer
This allows to distribute AI reaction calls over time.

Before this change actors appearing at the same frame will react in the same
frame over and over because AI reaction period is constant. It creates a
non-uniform CPU usage over frames. If a single frame has too many AI reactions
it may cause stuttering when there are too many actors on a scene for current
system.

Another concern is a synchronization of actions between creatures and NPC.
They start to go or hit at the same frame that is unnatural.
4 years ago
Petr Mikheev b838782557 Avoid collisions between actors. 4 years ago
Petr Mikheev bd6b984022 Smoothing speed in CharacterController 4 years ago
Petr Mikheev 71ba94a89a Smooth turning; smooth stopping; combat headtracking 4 years ago
Andrei Kortunov e6036e13b9 Use more C++11 loops in game mechanics code 5 years ago
elsid b095ca6c86
Use actor speed to define area cost for pathfinding 5 years ago
elsid c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection 5 years ago
elsid 5b34ef224b
Replace AiPackage virtual methods by options 5 years ago
elsid da8ea9d8c7
Mark not changing AiPackages fields as const 5 years ago
Bret Curtis 18bb6dd223
Merge pull request #2859 from elsid/aipackage_single_clone
Single clone function definition for all AI packages
5 years ago
Capostrophic efd5f13b2b Make greeting-related actor data temporary (bug #5397) 5 years ago
elsid 8e0934cbd8
Single AI package clone definition 5 years ago
elsid d86669843e
Remove unseud pointTolerance argument 5 years ago
elsid 256c9917a4
Make AiWander::isPackageCompleted const 5 years ago
elsid 131f2557b1
Split functions to remove redundant clearPath argument 5 years ago
elsid b8513e0318
Remove unused arguments 5 years ago
elsid 489a92de95
Check for hidden path only for actors wandering manually
Actors who doesn't wander over pathgrid.
5 years ago
elsid e616188265
Do not allow wandering actor to have empty path 5 years ago
elsid 71350c6dff
Remove redundant variable 5 years ago
elsid 9404b1dd72
Stop wandering when destination is hidden or occupied by other actor 5 years ago
elsid 4a0c056489
Do not wander to occupied area by other actor 5 years ago
elsid 85414e2353
Check for line of sight for wander destination 5 years ago
Andrei Kortunov 1db51a9e08 Re-work wandering outside of initial cell (bug #5261, bug #5262) 5 years ago
elsid 8e0b638145
Fix start position for AiWander random point selection 5 years ago
elsid 1e106013a0
Use navmesh to find wander destination outside pathgrid for ground based actors
Use dtNavMeshQuery::findRandomPointAroundCircle from recastnavigation
5 years ago
Andrei Kortunov 69aceb5c1e Split greetings from AiWander (bug #4594) 5 years ago
elsid 6c46d929c2
Build path to first pathgrid node by navmesh 5 years ago
Capostrophic b8afe14206 Disallow paralyzed actors to greet the player (bug #5074) 6 years ago
Capostrophic 25e52f7dfe Use 2D distance for fight rating of vertically moving actors (bug #4961) 6 years ago
elsid 287433efa8
Stop walking for water and flying creatures after single stuck 6 years ago
elsid a65f60e1f1
Build path only by navmesh for wandering near spawn 6 years ago
elsid ff67a9e233
Build straight path for wandering flying and water creatures 6 years ago
elsid ebdff5d96e
Check for height map when cast ray for AiWander path 6 years ago
elsid e033b0c565
Avoid build path through the ground for flying wandering creatures 6 years ago
elsid e82d65a2c7
Use if-continue to skip build path 6 years ago
elsid 1218e4e15d
Use player half extents only to find path in exterior cells 6 years ago
Bret Curtis 14c93b3df0 Revert "Merge pull request #2204 from elsid/fix_navigator_update"
This reverts commit 26fb0e7a0f, reversing
changes made to 42b2391303.
6 years ago
elsid a4f300f810
Use player half extents only to find path in exterior cells 6 years ago
Capostrophic cec55119ca Move idle dialogue playback from AiWander (bug #4594) 6 years ago
Capostrophic 624db99bf2 Remove some redundant code 6 years ago
Capostrophic 7b33838b33 Don't consider non-solid actors truly levitating (bug #4746) 6 years ago
Andrei Kortunov 4ee15ddcb9 Fix many Coverity Scan warnings 6 years ago
Capostrophic 1de9674c81 AI package cleanup 6 years ago
elsid 03d4ce5e49
Log find path exception with level verbose, add more info to message 6 years ago
elsid 661da42bd2
Build path by navigator 6 years ago
elsid 4fe764c3a5
Update and check for complete Pathfinder path by different methods 6 years ago
elsid eb10add0c4
Remove unused parameters 6 years ago