elsid
28fc21792e
Allow water walking actors to find path over water surface
2021-04-11 21:59:28 +02:00
elsid
634556be9d
Add setting to allow following creatures to find path over water surface
2021-04-11 21:59:28 +02:00
Andrei Kortunov
f984e96b34
Use conventional names for atan2 arguments
2021-04-10 12:23:03 +04:00
Jonas Tobias Hopusch
799cf16f31
Attempt to fix #5942
...
Closes OpenMW/openmw#5942
This is an attempt to apply the fix suggested by @Capostrophic
2021-04-09 18:16:05 +02:00
Andrei Kortunov
59720aea9a
Restore old aiming for melee combat
2021-04-07 12:07:03 +04:00
Andrei Kortunov
50352daf90
Rework knockdown and knockout animations fallbacks
2021-03-29 14:45:07 +04:00
Andrei Kortunov
b61337643e
Merge branch 'issue-5680' into 'master'
...
change aim calculation
See merge request OpenMW/openmw!685
2021-03-26 11:43:20 +00:00
Max
2cd96e56d5
create constant and use constant in other parts of the code base
2021-03-24 14:54:46 -07:00
elsid
453e94ea9f
Use half extents for destination distance tolerance in AiEscort
...
For actors moving in water destination may be located at such z coordinate
that they can't reach.
2021-03-24 00:07:28 +01:00
elsid
f32e1790bc
Add half extents to AiEscord max distance
...
For actors with big bounding box given constants may not work properly like
it's not possible to get close enough to actor from a given angle to make it
move.
2021-03-23 23:49:57 +01:00
elsid
39c0ce9ddf
Build limited path for far destinations
...
When distance between start and end point is greater than max radius of area
possibly covered by navmesh there is no way to find path via navmesh. Also if
distance is greater than cell size navmesh might not exists withing mentioned
area because cell is not loaded therefore navmesh is not generated. So minumum
of these values is used to limit max path distance. Assuming that path
actually exists it's possible to build path to the edge of a circle. When
actor reaches initial edge path is built further. However it will not be
optimal.
2021-03-23 23:23:12 +01:00
psi29a
415591b7ed
Merge branch 'ai_reaction_deviation' into 'master'
...
Distribute AI reactions and engage combat calls over time
See merge request OpenMW/openmw!674
2021-03-22 21:37:09 +00:00
Evil Eye
8e9bd5c0bd
Don't throw an exception when equipping a bound item fails
2021-03-22 20:44:13 +01:00
Evil Eye
580fa78034
Don't purge summon effects with invalid creature ids
2021-03-22 20:43:34 +01:00
Petr Mikheev
7bbbe40abe
"static const" -> "static constexpr" in headers
2021-03-21 13:57:54 +01:00
elsid
62c0ecbbd0
Separate engage combat timer for each actor
...
Use DeviatingPeriodicTimer to distribute calls over time. This reduces
stuttering and make AI more natural.
2021-03-20 14:50:56 +01:00
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.
2021-03-20 14:47:54 +01:00
Evil Eye
c2580d60e9
Register copied Spells with SpellList
2021-03-14 19:32:03 +01:00
Petr Mikheev
447c3b9489
Fix 5846
2021-03-13 21:54:49 +01:00
Dobrohotov Alexei
fc329050b3
AIPursue: Pursue the player until LOS is established ( #5869 )
2021-03-03 22:06:58 +03:00
Evil Eye
e2fc5d87b3
Merge branch 'elemental_shields' into 'master'
...
Don't let elemental shields harm the player in god mode
Closes #5875
See merge request OpenMW/openmw!631
2021-03-02 06:45:38 +00:00
Alexei Dobrohotov
023bc80f55
Don't let elemental shields harm the player in god mode
2021-03-01 21:37:30 +00:00
elsid
8dba61f7ae
Use navmesh raycast to find reachable position around target
2021-02-14 04:14:22 +01:00
elsid
becccf3b5e
Make actor flee from a combat when cannot reach a target
2021-02-12 22:58:53 +01:00
psi29a
7a9eb34403
Merge branch 'master' into 'freeunrealestate'
...
# Conflicts:
# CHANGELOG.md
2021-02-07 21:03:51 +00:00
Evil Eye
af0f94f03e
Play damage sound when hurt by elemental shields
2021-02-07 12:55:10 +01:00
Evil Eye
e4cd89643f
Merge branch 'master' of gitlab.com:OpenMW/openmw into freeunrealestate
2021-02-07 00:17:14 +01:00
Evil Eye
6aa75c287a
Don't check magicka when casting free spells
2021-02-07 00:15:01 +01:00
psi29a
e6607486f5
Merge branch 'jfmherokiller-master-patch-23743' into 'master'
...
Fix the regression involving Cure
See merge request OpenMW/openmw!582
2021-02-06 15:41:24 +00:00
Noah Gooder
e42b67ee50
Modified actors.cpp and Authors.md
2021-02-05 17:59:36 +00:00
Evil Eye
61e014a765
Allow negative values for ai stats
2021-02-04 21:25:38 +01:00
Jordan Francis Moran-Meyers
0d1c073cfa
Fix the regression involving Cure
2021-02-01 18:34:10 +00:00
Petr Mikheev
9590377f22
Don't ignore Z in path finding if actor can move by Z.
2021-01-29 22:30:20 +01:00
Petr Mikheev
642ca02e35
Shorten almost straight paths only if smooth movement is enabled; reduce angle limit for the shortening.
2021-01-29 22:30:01 +01:00
elsid
a3ab8dfbb4
Revert "Merge branch 'movement_fix2' into 'master'"
...
This reverts merge request !496
2021-01-28 12:48:19 +00:00
Petr Mikheev
bc2cec86e9
Fix bug: NPCs doesn't move if the target is exactly above or exactly below.
2021-01-26 00:05:28 +01:00
psi29a
c6f14cde20
Merge branch 'Show-level-multipliers-in-levelup-tooltip' into 'master'
...
Show level multipliers in levelup tooltip
Closes #5783
See merge request OpenMW/openmw!518
2021-01-25 10:01:39 +00:00
Cédric Mocquillon
3bb551a6f1
Show level multipliers in levelup tooltip
2021-01-25 10:01:39 +00:00
fredzio
1f4c85520f
Use convexSweepTest for projectile movement to solve any
...
imprecision issue with projectile collision detection.
Simplify the mechanics: manage hits in one spot.
Give magic projectiles a collision shape similar in size to their visible
model.
Rename the 2 convex result callback to clearly state their purpose.
2021-01-21 20:36:33 +01:00
Alexei Dobrohotov
4638fc36b4
Allow all creatures to float to the water surface
2021-01-12 15:46:19 +03:00
psi29a
29fdcb3fa1
Merge branch 'hardlanding' into 'master'
...
Init mJumpState based on saved fallheight (#5739 )
See merge request OpenMW/openmw!532
2021-01-11 20:46:42 +00:00
fredzio
3087ce9c70
Use saved fallheight to determine a character's jump state.
...
The jump state initial state is "none", and it is set after physics simulation.
If a save is done just above the ground, the character may land before
the first run of the simulation, effectively cancelling the effect of
falling.
2021-01-11 18:38:20 +01:00
Evil Eye
1ab4683dce
Tweak follow distance to be more like the original
2021-01-10 16:29:32 +01:00
Bret Curtis
a735bbe9a5
Merge pull request #3040 from akortunov/pvs
...
Fix some issues, found by PVS Studio
2021-01-10 12:58:17 +01:00
Evil Eye
e737bd00fa
Merge branch 'unused_param' into 'master'
...
Remove never used parameter from CharacterController::update()
See merge request OpenMW/openmw!523
2021-01-10 10:58:28 +00:00
fredzio
60f66f5e29
Remove never used parameter from CharacterController:update()
2021-01-09 21:28:27 +01:00
Andrei Kortunov
874348fb46
Remove redundant code
2021-01-09 19:19:38 +04:00
Andrei Kortunov
56666c60d4
Remove dead code
2021-01-09 14:17:59 +04:00
Andrei Kortunov
7fc4c9f3f6
Avoid dead code
2021-01-09 13:52:01 +04:00
Evil Eye
2a583e2337
consider empty paths as not constructed
2021-01-08 17:24:13 +01:00