Commit Graph

261 Commits (00997fa7327293db6075d47d18bd36516537ba44)

Author SHA1 Message Date
David Cernat a01c874613 Add OpenMW 0.47 commits up to 23 Sep 2021 3 years ago
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
David Cernat a3f304107b Add OpenMW commits up to 2 May 2021
# Conflicts:
#   components/CMakeLists.txt
4 years ago
Alexei Dobrohotov e3bb45fd61 Merge branch 'minor_aicombat' into 'master'
Minor optimization in aicombat.cpp

See merge request OpenMW/openmw!737

(cherry picked from commit f1d19035cccfff2523faad0d4e4d96cd3ddae2e6)

bbbfc520 Minor optimization in aicombat.cpp
237b34a6 Fix style
a14911cb Fix indentation
4 years ago
Andrei Kortunov 0cadc97fb3 Fix double -> float conversions 4 years ago
Andrei Kortunov f308dde254 Clean up MSVC warnings 4 years ago
David Cernat cedf70f367 Add OpenMW commits up to 13 Apr 2021
# Conflicts:
#   .travis.yml
#   apps/openmw/mwmechanics/actors.cpp
#   apps/openmw/mwmechanics/summoning.cpp
#   apps/openmw/mwphysics/mtphysics.hpp
4 years ago
Andrei Kortunov 59720aea9a Restore old aiming for melee combat 4 years ago
David Cernat 59cb31e0a7 Add OpenMW commits up to 20 Mar 2021
# Conflicts:
#   apps/openmw/CMakeLists.txt
#   apps/openmw/mwmechanics/aipursue.cpp
#   components/CMakeLists.txt
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
elsid 8dba61f7ae
Use navmesh raycast to find reachable position around target 4 years ago
elsid becccf3b5e
Make actor flee from a combat when cannot reach a target 4 years ago
David Cernat 68837aaf4a Add OpenMW commits up to 15 Oct 2020
# Conflicts:
#   .travis.yml
#   CI/before_script.linux.sh
#   CMakeLists.txt
#   apps/openmw/mwgui/containeritemmodel.cpp
#   apps/openmw/mwgui/tradewindow.cpp
#   apps/openmw/mwphysics/actor.cpp
#   apps/openmw/mwworld/actionteleport.cpp
#   apps/openmw/mwworld/containerstore.cpp
4 years ago
Petr Mikheev 15078f5b3c Fix #5630 "NPCs momentarily turn when the player character is moving backwards during combat" 4 years ago
David Cernat 0eedf8fd9f Add OpenMW commits up to 30 Sep 2020
# Conflicts:
#   apps/openmw/mwmechanics/aicombat.cpp
#   apps/openmw/mwmechanics/character.cpp
#   apps/openmw/mwmechanics/summoning.cpp
#   components/CMakeLists.txt
4 years ago
Petr Mikheev 79a72e4b44 Slightly modify aicombat to make it more difficult to get around an enemy. The difference is visible only if turning is slow (i.e. if smooth movement enabled). 4 years ago
David Cernat ff10aa816b Add OpenMW commits up to 25 Jul 2020
# Conflicts:
#   .travis.yml
5 years ago
elsid b7c1c52439
Adjust actor rotation when flee by axis x
Otherwise Cliff Racers can go underwater.
5 years ago
David Cernat 3b2eb6f62c Add OpenMW commits up to 22 Jun 2020
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
5 years ago
elsid c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection 5 years ago
David Cernat e5b1843089 Add OpenMW commits up to 11 Jun 2020
# Conflicts:
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwgui/jailscreen.cpp
#	apps/openmw/mwmechanics/activespells.cpp
#	apps/openmw/mwmechanics/aiactivate.cpp
#	apps/openmw/mwmechanics/aiactivate.hpp
#	apps/openmw/mwmechanics/creaturestats.cpp
#	apps/openmw/mwscript/aiextensions.cpp
#	apps/openmw/mwscript/statsextensions.cpp
#	apps/openmw/mwworld/worldimp.cpp
#	apps/openmw/mwworld/worldimp.hpp
5 years ago
elsid 5b34ef224b
Replace AiPackage virtual methods by options 5 years ago
elsid 8e0934cbd8
Single AI package clone definition 5 years ago
David Cernat 64c94346b6 [Client] Always send attack starts by actors immediately
Previously, creatures with fast attack animations would have their attack updated right after being started, which happened so quickly that it prevented the attack start from actually being sent by the client.
5 years ago
David Cernat 140c1c9c12 [General] Use hard synchronization for melee attack animations
Previously, each client chose its own attack animations for DedicatedPlayers and DedicatedActors based on the direction they were walking in, which however led to desyncs for players with "Always Use Best Attack" enabled and for creatures which pick their attack animations randomly.
5 years ago
David Cernat 353e7d530a Add OpenMW commits up to 18 Aug 2019
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/character.cpp
#	apps/openmw/mwmechanics/spellcasting.cpp
#	apps/openmw/mwworld/worldimp.hpp
5 years ago
David Cernat ed05125f6a Add OpenMW commits up to 2 Aug 2019
# Conflicts:
#	apps/openmw/mwmechanics/combat.cpp
5 years ago
David Cernat 8729c3c5e3 Add OpenMW commits up to 9 Mar 2019
# Conflicts:
#	.travis.yml
#	CI/before_script.linux.sh
#	README.md
#	apps/openmw/mwgui/jailscreen.cpp
#	apps/openmw/mwscript/animationextensions.cpp
#	apps/openmw/mwscript/guiextensions.cpp
#	apps/openmw/mwscript/miscextensions.cpp
#	apps/openmw/mwscript/soundextensions.cpp
5 years ago
David Cernat 95a5607509 Add OpenMW commits up to 22 Feb 2019
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/spellcasting.cpp
#	apps/openmw/mwscript/containerextensions.cpp
5 years ago
David Cernat 3efffe92e3 Add OpenMW commits up to 5 Nov 2018
# Conflicts:
#	CI/before_install.linux.sh
#	CMakeLists.txt
#	apps/openmw/mwmechanics/aifollow.cpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
#	apps/openmw/mwphysics/physicssystem.hpp
#	apps/openmw/mwworld/scene.cpp
#	apps/openmw/mwworld/worldimp.cpp
#	components/CMakeLists.txt
5 years ago
David Cernat fba07194cf Add OpenMW commits up to 29 Oct 2018
# Conflicts:
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwinput/inputmanagerimp.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/aicombat.cpp
#	apps/openmw/mwmechanics/character.cpp
#	apps/openmw/mwworld/worldimp.cpp
#	apps/openmw/mwworld/worldimp.hpp
5 years ago
David Cernat 889bcec7f8 Add OpenMW commits up to 1 Sep 2018
# Conflicts:
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwclass/creature.cpp
#	apps/openmw/mwclass/npc.cpp
#	apps/openmw/mwgui/jailscreen.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/difficultyscaling.cpp
#	apps/openmw/mwscript/transformationextensions.cpp
#	apps/openmw/mwworld/worldimp.hpp
5 years ago
David Cernat 84cab59057 Add OpenMW commits up to 19 Aug 2018
# Conflicts:
#	.travis.yml
#	CI/before_install.linux.sh
#	CI/before_script.linux.sh
#	apps/openmw/engine.cpp
#	apps/openmw/main.cpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwmechanics/actors.hpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
#	apps/openmw/mwscript/aiextensions.cpp
#	apps/openmw/mwscript/containerextensions.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
#	apps/openmw/mwworld/cellstore.cpp
#	apps/openmw/mwworld/containerstore.cpp
#	apps/openmw/mwworld/scene.cpp
#	apps/openmw/mwworld/worldimp.cpp
#	components/misc/debugging.hpp
5 years ago
David Cernat 0339958e21 [General] Rename Log class into TimedLog 5 years ago
Andrei Kortunov f0cef772fa Refactor weapon types behaviour
1. Move weapon types behaviour from switches to the table (should allow
us to de-hardcode weapon types later)
2. Gereralize bones injection to actors skeletons (instead of using the
hardcoded xbase_anim_sh.nif)
5 years ago
Capostrophic 453068cc7d Disallow actors to start combat with themselves (bug #3550)
Allow creatures to play initial attack dialogue
Don't add combat package to dead actors
6 years ago
Andrei Kortunov 3032b177a1 Remove redundant includes 6 years ago
Capostrophic b33016d89f Allow creatures to play Attack voiceover 6 years ago
elsid 49d81241db Merge branch 'master' into pathfinder_detour 6 years ago
David Cernat bfd7c83c4d [Client] Fix backwards logic when setting type for AI attacks 6 years ago
Andrei Kortunov ca07e3a364 Check for obstacle before back up (bug #4656) 6 years ago
elsid 31340a212a
Fix functions name style 6 years ago
elsid 4d868bec92
Use osg::Vec3f to store path nodes in Pathfinder 6 years ago
Andrei Kortunov e06f0b797a Replace all NULLs to nullptr 6 years ago
David Cernat 9d2dc96a2e [Client] Use RANGED type for ranged attacks that haven't hit a target 6 years ago
Capostrophic 7ef6fa9f61 Remove deprecated GMST get* functions 6 years ago
Andrei Kortunov 15fa47827b AiCombat: Avoid jittering when aiming in melee 6 years ago
Capostrophic 3527f3800e Use the correct spell projectile speed GMST in AI aiming 6 years ago
David Cernat 6cb5ac6e63 Merge pull request #457 from OpenMW/master while resolving conflicts
Conflicts:
	CMakeLists.txt
	apps/openmw/engine.cpp
	apps/openmw/main.cpp
	apps/openmw/mwgui/windowmanagerimp.cpp
	apps/openmw/mwmechanics/character.cpp
	components/CMakeLists.txt
7 years ago
David Cernat a236ffc4be Merge pull request #456 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
#	apps/openmw/mwgui/quickkeysmenu.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwmechanics/combat.cpp
7 years ago