Andrei Kortunov
e6036e13b9
Use more C++11 loops in game mechanics code
2020-07-25 15:54:49 +04:00
elsid
5b34ef224b
Replace AiPackage virtual methods by options
2020-06-06 12:00:17 +02:00
elsid
da8ea9d8c7
Mark not changing AiPackages fields as const
2020-06-04 23:12:23 +02:00
elsid
8e0934cbd8
Single AI package clone definition
2020-05-20 20:15:29 +02:00
Capostrophic
1de9674c81
AI package cleanup
2018-11-02 14:58:30 +03:00
elsid
4d868bec92
Use osg::Vec3f to store path nodes in Pathfinder
2018-10-13 22:16:20 +03:00
Andrei Kortunov
ee45f54b53
Refactor AiTemporaryStorage usage
2018-06-27 12:48:34 +04:00
Andrei Kortunov
fed10e87aa
Store integer actor ID in AI packages (bug #4036 )
2018-06-08 19:57:41 +04:00
Andrei Kortunov
d8d47f081b
AiFollow: add a threshold when turning to target
2017-08-17 22:52:34 +04:00
Ewan Higgs
38a2de3c51
convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis
2017-06-09 16:49:25 +02:00
Allofich
6253a5218e
Adjust AI follow distances
...
(Fixes #3225 )
2017-03-27 03:31:25 +09:00
Allofich
3897c49e30
Fix loading 0-duration Follow and Escort packages
...
(Fixes #3755 )
2017-02-18 01:55:50 +09:00
Leon Krieg
c7b4b2cdd7
Fixed multiple spelling mistakes
2016-12-14 16:39:33 +01:00
Allofich
df03b32205
Coverity fixes
2016-10-05 23:32:26 +09:00
mrcheko
612c7f1a2f
Revert "Revert "Merge pull request #993 from mrcheko/pathfinding""
...
This reverts commit 3732979eec
.
2016-08-19 22:15:26 +03:00
scrawl
3732979eec
Revert "Merge pull request #993 from mrcheko/pathfinding"
...
This reverts commit 5190275b37
, reversing
changes made to d7845012bf
.
2016-08-14 18:04:33 +02:00
mrcheko
d2fe6fe857
Merge remote-tracking branch 'refs/remotes/origin/master' into pathfinding
...
# Conflicts:
# apps/openmw/mwmechanics/aiactivate.cpp
# apps/openmw/mwmechanics/aicombat.cpp
# apps/openmw/mwmechanics/aicombat.hpp
# apps/openmw/mwmechanics/aifollow.cpp
# apps/openmw/mwmechanics/aipackage.cpp
# apps/openmw/mwmechanics/aipackage.hpp
# apps/openmw/mwmechanics/aiwander.cpp
# apps/openmw/mwmechanics/aiwander.hpp
2016-07-09 22:59:54 +03:00
Allofich
b1be3596dc
Cleanup of #include statements
2016-06-18 10:56:28 +09:00
Allofich
3bebbab78e
Duration fixes for Follow and Escort
2016-06-15 02:11:30 +09:00
scrawl
c4d38bb42d
Fix clang analyzer warnings
2016-02-16 19:17:04 +01:00
scrawl
daa94cc50e
Fix cppcheck warnings
2016-01-03 20:19:38 +01:00
mrcheko
b960b0af93
rewrite pathTo for clearer logic; reapply Scrawl's aifollow threshold
2016-01-01 16:41:45 +03:00
mrcheko
d7d5cc6689
Merge remote-tracking branch 'upstream/master' into pathfinding
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
apps/openmw/mwmechanics/aifollow.cpp
apps/openmw/mwmechanics/aipackage.cpp
apps/openmw/mwmechanics/aipackage.hpp
apps/openmw/mwmechanics/aiwander.cpp
apps/openmw/mwmechanics/pathfinding.hpp
Ogre::Vector3->osg::Vec3f; REACTION_INTERVAL->AI_REACTION_TIME; MakeOgreVec3->MakeOsgVec3
2015-12-29 19:15:40 +03:00
scrawl
387624e158
Add a threshold to AiFollow distance
...
Idle animations can move the actor around slightly, which sometimes causes AiFollow to constantly toggle between "arrived" and "following" state even when the player isn't moving. Could be observed by summoning a bonelord.
2015-09-26 02:02:50 +02:00
scrawl
278076e609
Include cleanup
2015-07-25 04:14:22 +02:00
scrawl
b3f5ac5dbb
Include cleanup
2015-07-25 02:11:49 +02:00
mrcheko
c773ed9f9a
move checkWayIsClear to pathfinding; move shortcut logic to separate func (AiPackage::shortcutPath); rework AiPackage::pathTo
2015-07-04 18:00:16 +03:00
scrawl
59db9664ba
Pass the CharacterController to AiPackage::execute
2015-06-26 17:47:04 +02:00
scrawl
4bb3cbf0fb
Remove last remains of Ogre
2015-06-03 23:04:35 +02:00
scrawl
7bacb9418d
Various math code ported to osg
2015-06-03 19:41:19 +02:00
Rohit Nirmal
396fba7fa9
Silence -Wreorder warnings, and remove -Wno-reorder.
2015-05-21 22:46:44 -05:00
scrawl
e0c6f84546
AiFollow: target has to be seen in order to start following ( Fixes #1637 )
2014-12-09 22:25:28 +01:00
scrawl
109a3f78a1
Adjust AiFollow distance for groups of multiple followers ( Fixes #1637 )
2014-12-09 16:06:04 +01:00
terrorfisch
0871d45790
Draft how to move temporary package state to CharacterController.
...
Example for a few values shown in AiWander.
2014-10-08 10:58:52 +02:00
scrawl
8ad2b95208
Revert "AiFollow: return from execute() if target is not player"
...
This reverts commit 061c7813f6
.
Fixes #1898 .
2014-09-25 17:57:10 +02:00
scrawl
233e221de2
Terminate AI packages when target is disabled or deleted ( Fixes #1910 )
2014-09-14 10:49:33 +02:00
scrawl
9b38888ac9
Add missing AiFollow ActorId initialization ( Fixes #1818 )
2014-08-17 17:01:04 +02:00
scrawl
061c7813f6
AiFollow: return from execute() if target is not player ( Fixes #1637 )
2014-08-14 02:14:13 +02:00
scrawl
f8010c09fe
Adjust combat engagement of following actors ( Fixes #1810 )
2014-08-14 02:13:55 +02:00
scrawl
d649c19790
Cache ActorId in AiFollow::getTarget ( Fixes #1804 )
2014-08-13 16:00:32 +02:00
scrawl
22d7d8a466
Implement Command creature/humanoid magic effects ( Fixes #1120 )
2014-08-07 17:21:07 +02:00
scrawl
f67b7dae91
Sheath weapon in all Ai packages except for AiCombat
2014-07-28 17:32:14 +02:00
scrawl
d9a6515fe3
Adjust AiFollow running threshold to more closely match vanilla MW
2014-07-28 17:11:46 +02:00
scrawl
d81e9cfefd
Implement actors fighting for the actor they are following ( Fixes #1141 )
2014-07-27 20:33:45 +02:00
scrawl
a54ac579a5
Savegame: Store AiSequence
2014-06-13 02:26:52 +02:00
scrawl
36d9ae17cc
Revert "Change all AI packages (except AiActivate) to use ActorIds"
...
Causes potential infinite loops (AiSequence::fill -> AiPackage() -> getCreatureStats -> ensureCustomData -> ..)
This reverts commit 2e9985c1a3
.
2014-05-16 12:11:34 +02:00
scrawl
2e9985c1a3
Change all AI packages (except AiActivate) to use ActorIds
...
More robust in case the target changes cell or there are multiple targets with the same RefId
2014-05-15 09:54:10 +02:00
Thomas
d2aada95b4
Fixed AiPursue by fixing underlying issue is Pathto()
2014-05-14 14:11:34 -04:00
Thomas
cbfa282f8d
Changed implementations of aifollow/pursue/activate slightly, added ability for NPCs to go through unlocked doors (They even try locked ones), and step back from opening doors (Although it still needs some work)
...
Notes - When the door hits them while it's about to finish closing they will try to walk through the door.
- Considerably more works is needed in making the NPC work out troublesome areas where they get stuck
2014-05-13 03:58:32 -04:00
Thomas
2c74ea381e
Moved pathfinding code to aiPackage, implemented it's use with aiFollow and aiPursue
2014-05-12 21:05:32 -04:00