Commit graph

1015 commits

Author SHA1 Message Date
gus
d9ea7107b7 compile fix. 2014-03-29 18:36:32 +01:00
gus
bee057346b Merge branch 'master' of https://github.com/OpenMW/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aifollow.cpp
2014-03-29 18:05:56 +01:00
Marc Zinnschlag
c7b969821f silenced a warning 2014-03-29 11:11:43 +01:00
cc9cii
ebb1813b9b Minor comment clarification. 2014-03-29 20:17:04 +11:00
cc9cii
07fd801d94 My previous analysis of the pathfinding issue was incorrect. It was in fact caused due to some of the pathgrid points being unreachable. Instead of returning an empty path in such a scenario, incorrect path + requested destination were being returned. There was also a defect where past cost was being used for selecting open points.
There is still an unresolved issue where mGraph and mSCComp are being rebuilt unnecessarily.  The check mCell != cell in buildPath() is being triggered frequently. Not sure why.
2014-03-29 19:35:52 +11:00
cc9cii
267855c44e Prevent NPC suicides off silt the strider platform in Seyda Neen. Added some comments as well. There may be opportunities for some optimization but left that out for now. 2014-03-29 19:35:52 +11:00
cc9cii
90a813ad2c Allow interrupting a walking NPC to trigger a greeting. 2014-03-29 19:35:52 +11:00
Marc Zinnschlag
2c2106205d Merge remote-tracking branch 'scrawl/master' 2014-03-28 09:56:35 +01:00
Jeffrey Haines
2a8bf46607 Trader Gold Reset Delay
Implemented traded gold reset delay.

Note:
Traders gold pool is still in inventory.
2014-03-27 01:23:56 -04:00
scrawl
793649c854 ToggleAI: Report current status on toggle 2014-03-26 19:55:52 +01:00
scrawl
688415ce54 Play deathknockout/deathknockdown animations when appropriate 2014-03-26 18:55:16 +01:00
scrawl
394284d0f8 Fixes #1209: Tarhiel never falls
There are a few pitfalls with this code:
 - Gravity is only considered when applying queued movement. Therefore, make sure to queue some movement every frame. (Could be refactored in the future?)
 - The character controller never detects being in free fall (!World::isOnGround) unless movement has been applied.
2014-03-22 02:08:04 +01:00
scrawl
c8c0e5de38 Fixed code issues found with unity build. Missing include guards, duplicated functions, ... 2014-03-16 23:49:06 +01:00
cc9cii
e6977d00e8 Oops. Fix typo picked up by Zini. 2014-03-15 08:16:35 +11:00
cc9cii
b2e3fa70c2 Fix spelling errors in comments. 2014-03-14 07:04:39 +11:00
cc9cii
d54ae58ec9 Bug #900 fix - minor update to comments 2014-03-14 00:09:03 +11:00
cc9cii
d92740efc9 Bug #900 fix - only fixed AiWonder, AiCombat, AiTravel and others may need a different strategy to this. 2014-03-13 23:44:52 +11:00
scrawl
072dc6d438 Feature #50: Implement marksman mechanics. 2014-03-08 06:03:45 +01:00
scrawl
12de0afb03 Feature #50: Spawn projectiles
Fix a bug in copyObjectToCell.
Make actor rotations more consistent.
2014-03-08 01:31:27 +01:00
scrawl
edb5a54092 Include some more required Ogre headers explicitely. 2014-03-05 21:46:37 +01:00
gus
d84319300a fix 2014-03-05 11:27:16 +01:00
gus
f4879dacd5 add AIfollow to summoned creatures 2014-03-05 11:24:39 +01:00
Marc Zinnschlag
f9d2fde783 Merge branch 'openmw-29'
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
2014-03-04 09:34:38 +01:00
cc9cii
5b48ca114f aicombat pathfinding fix - check the correct list 2014-02-25 08:31:14 +01:00
cc9cii
85c467f00f Minor cleanup for aicombat pathfinding workaround. 2014-02-25 08:30:52 +01:00
Marc Zinnschlag
367919200f moved CellRefList into a separate file 2014-02-23 20:11:05 +01:00
gus
95ff869163 Merge branch 'openmw-29' of https://github.com/zinnschlag/openmw.git into AIFix2 2014-02-23 17:07:49 +01:00
cc9cii
1bd2664cb0 aicombat pathfinding workaround 2014-02-23 11:47:25 +01:00
Marc Zinnschlag
7693f712bc started making CellStore into a proper class; encapsulated mCell member 2014-02-21 11:35:46 +01:00
scrawl
d25b3ad9cb Fix AiCombat for creatures with weapons 2014-02-19 11:23:03 +01:00
gus
d8f24ac499 bug fix 2014-02-17 15:49:49 +01:00
Marc Zinnschlag
ea16f79d77 Merge remote-tracking branch 'gus/AIFix2' 2014-02-17 10:54:07 +01:00
gus
84959eea28 woops, thanks scrawl 2014-02-17 10:50:10 +01:00
gus
6e1425321b remove cout spam 2014-02-17 10:43:09 +01:00
Marc Zinnschlag
c18c3e51ee handle IDs that don't exist anymore after loading 2014-02-16 16:23:05 +01:00
Marc Zinnschlag
9788bbcab9 partially store creature state in saved game files (only attributes and dynamics for now) 2014-02-16 15:56:36 +01:00
Marc Zinnschlag
b0532e0c85 store NPC state in saved game files 2014-02-16 15:51:45 +01:00
gus
a315d5cc2b aiactivate works. Bug when you try to use it on a reference that doesn't exist. Need to clran up door.cpp 2014-02-14 12:55:14 +01:00
gus
7c6e27e4f9 Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aitravel.cpp
2014-02-13 12:59:04 +01:00
Emanuel Guevel
8824af30b4 Allow to display message box outside of dialogue window 2014-02-11 18:26:57 +01:00
Marc Zinnschlag
ffd1783690 Merge remote-tracking branch 'mrcheko/master' 2014-02-11 17:03:50 +01:00
Emanuel Guevel
6a4820c0f7 Show a message when the player attempts to cast a disabled spell 2014-02-11 14:52:58 +01:00
mrcheko
a6be72673c improves animation-controlled velocity check 2014-02-08 16:59:15 +02:00
scrawl
6ce499f0e6 Fixes #848: Use hardcoded animation velocity for first person movement 2014-02-06 04:05:22 +01:00
gus
632834ce10 WIP 2014-02-05 16:12:50 +01:00
scrawl
677fc84223 Refactor actors update 2014-02-05 09:50:21 +01:00
scrawl
7907181c0c Fix uninitialized member 2014-02-05 05:18:11 +01:00
scrawl
ffe19e7a52 Feature #50: Handle attach & release of projectiles 2014-02-05 05:18:11 +01:00
scrawl
8b8fb931a0 Feature #50: Don't allow ranged weapon attack when ammunition is empty 2014-02-05 05:18:10 +01:00
scrawl
a07eaa0c0d Feature #50: Allow body pitch in third person for ranged weapon aiming 2014-02-05 05:18:10 +01:00
scrawl
5ee105c812 Fix typo 2014-02-05 05:18:10 +01:00
scrawl
7cf22391a5 Feature #50: Handle weapon controllers (i.e. bowstring animations, etc) 2014-02-05 05:18:10 +01:00
scrawl
df78357e05 Handle knockout separately (Closes #1151) 2014-02-05 05:18:09 +01:00
mrcheko
688f359a33 discard creatures speed and negative fatique changes 2014-02-03 23:09:26 +02:00
mrcheko
761f13d3ce activate whole-body attack animations 2014-02-02 16:29:51 +02:00
mrcheko
b85a4dd35e pos accum without conformity with animation bug/creature speed 2014-02-02 15:01:49 +02:00
scrawl
49e26415be Don't call loadGame() from within the MWMechanics::Actors update sequence 2014-02-01 18:42:00 +01:00
Marc Zinnschlag
1b5301eec0 Merge branch 'savedgame'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwbase/soundmanager.hpp
	apps/openmw/mwgui/mapwindow.hpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwsound/soundmanagerimp.hpp
	components/esm/loadcell.cpp
2014-02-01 18:16:32 +01:00
scrawl
da34f8bda1 Fix LastHitObject 2014-01-31 04:43:35 +01:00
scrawl
067c2bc2ec Disable combat movements for creatures without weapons 2014-01-31 04:43:35 +01:00
scrawl
7820ea5806 "Always best attack" should only affect the player 2014-01-31 04:43:35 +01:00
scrawl
52f89e9a17 Don't play "idle" voice entries for NPCs with Hello 0
Not entirely sure if this is correct, but it prevents the NPCs in the starting boat from incorrectly playing them.
2014-01-31 04:43:35 +01:00
scrawl
39d86a9468 Improvements to smooth NPC steering 2014-01-31 04:43:29 +01:00
mrcheko
80d8aa4030 bug with sequence of knockouts; giving sense to some hit state code 2014-01-30 23:54:26 +02:00
scrawl
e717694b36 Reset Run stance in AiWander 2014-01-29 15:37:27 +01:00
scrawl
23ffb8a4dc Fixes #1143: Make getCurrentAiPackage return the package that was run last, not the package that will be run in the next frame.
This makes the Mehra Milo script work properly.
2014-01-29 15:37:27 +01:00
scrawl
190512156d Use some more GMSTs for enchanting 2014-01-29 15:37:26 +01:00
scrawl
ea7e0abdc2 Move WhenStrikes skill success to a more appropriate place 2014-01-29 15:37:26 +01:00
scrawl
82146e7f8d Use GMSTs for levelup 2014-01-29 15:37:26 +01:00
scrawl
cc40cec395 Move levelup to NpcStats
The code came from back in the days where NpcStats did not derive from CreatureStats.
2014-01-29 15:37:26 +01:00
mrcheko
3a5da7e6e8 merged with master 2014-01-29 00:03:00 +02:00
Marc Zinnschlag
a473c3f619 some cleanup 2014-01-28 12:36:10 +01:00
Marc Zinnschlag
fd5486864a Merge remote-tracking branch 'gus/AIFix2'
Conflicts:
	apps/openmw/mwbase/mechanicsmanager.hpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/actors.hpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
2014-01-28 12:33:31 +01:00
mrcheko
e50e94af0b remove CreatureStats::mAttackType, set/getAttackType() 2014-01-27 23:05:17 +02:00
mrcheko
fe0268062d merge with master 2014-01-27 22:38:01 +02:00
gus
846276f747 clean up 2014-01-27 15:14:24 +01:00
mrcheko
45b3aa3d93 corrected things connected to determining attack type 2014-01-26 23:32:57 +02:00
gus
f5d589388c bug fix 2014-01-26 22:06:54 +01:00
gus
764011dd1b clean up 2014-01-26 21:53:55 +01:00
gus
7cb47aa635 new implementation of pathfinding. Works, but need clean up 2014-01-26 21:26:19 +01:00
scrawl
b1066de81d Revert "Merge remote-tracking branch 'mrcheko/master'"
This reverts commit 4e360136b1, reversing
changes made to 047bbe43b2.

Conflicts:

	apps/openmw/mwmechanics/aicombat.cpp
2014-01-26 00:31:44 +01:00
scrawl
a1fbd1fcc8 Revert "Merge remote-tracking branch 'mrcheko/master'"
This reverts commit df7c139e2f, reversing
changes made to fec26342cd.
2014-01-26 00:14:49 +01:00
scrawl
28185e2017 Death/godmode fixes: Revive player *after* character update, since there might be fall damage. 2014-01-25 15:54:24 +01:00
gus
707e579dfe Merge branch 'master' of https://github.com/zinnschlag/openmw.git into AIFix2
Conflicts:
	apps/openmw/mwmechanics/aifollow.cpp
2014-01-24 19:16:50 +01:00
gus
5ca5946760 WIP 2014-01-24 19:13:23 +01:00
scrawl
03cf383be7 Merge branch 'master' of https://github.com/zinnschlag/openmw into savedgame
Conflicts:
	apps/openmw/mwgui/referenceinterface.cpp
	apps/openmw/mwmechanics/actors.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
	apps/openmw/mwmechanics/mechanicsmanagerimp.hpp
	apps/openmw/mwscript/cellextensions.cpp
	apps/openmw/mwworld/cells.cpp
	apps/openmw/mwworld/cells.hpp
	apps/openmw/mwworld/cellstore.cpp
	apps/openmw/mwworld/store.cpp
	apps/openmw/mwworld/worldimp.cpp
2014-01-24 18:28:35 +01:00
mrcheko
87e83a92f8 refactoring of setting an attack type 2014-01-23 23:14:20 +02:00
scrawl
ea21d8fec3 Fix CreatureTargetted function 2014-01-22 13:30:45 +01:00
scrawl
f27701cbe8 Detect selling stolen items or enchanting with stolen items 2014-01-22 13:04:55 +01:00
scrawl
264226dfe3 Handle iWereWolfBounty 2014-01-22 12:33:47 +01:00
scrawl
194413c955 Feature #1119: Implement Resistance/Weakness to normal weapons magic effect. Handle fWereWolfSilverWeaponDamageMult. 2014-01-22 12:26:53 +01:00
scrawl
16f5f5862d Feature #956: Implement blocking melee attacks 2014-01-21 23:25:24 +01:00
scrawl
851a7d5014 Feature #957: Handle area effects for "on touch" range 2014-01-21 12:30:15 +01:00
scrawl
c8a9e9f7fa Stop AiCombat when the target is dead 2014-01-20 13:54:10 +01:00
scrawl
205e8aa4e9 Feature #957: Implement area magic 2014-01-20 13:11:29 +01:00
scrawl
df7c139e2f Merge remote-tracking branch 'mrcheko/master' 2014-01-19 21:23:04 +01:00
scrawl
fec26342cd Query the number of animation groups for death/hit animations, since they can vary a lot (argonian/khajiit, creatures, first person..) 2014-01-19 21:11:48 +01:00
mrcheko
339399f8b1 bug fix/logic fix/future suggestion 2014-01-19 22:09:51 +02:00
scrawl
05e75e1214 Closes #1127: Fix for subtitles for idle dialogue appearing outside of hearing range 2014-01-19 20:54:05 +01:00
scrawl
bea161331c Play 'hello' voiced dialogue entries in AIWander 2014-01-19 20:53:58 +01:00
scrawl
9723263730 Bug #1126: Tweak creature attack distance a bit (still no idea where this should come from) 2014-01-19 14:47:58 +01:00
scrawl
4e360136b1 Merge remote-tracking branch 'mrcheko/master'
Conflicts:
	apps/openmw/mwmechanics/aicombat.cpp
	apps/openmw/mwmechanics/character.cpp
	apps/openmw/mwmechanics/character.hpp
2014-01-19 14:01:39 +01:00
scrawl
047bbe43b2 Don't complain about missing jump animations 2014-01-19 13:46:40 +01:00
scrawl
13646a651b Issue #777: Handle creatures with weapons in CharacterController. Move attack strength to CreatureStats. 2014-01-19 13:32:58 +01:00
scrawl
589fbbd871 Issue #777: Create InventoryStore for creatures with weapons/shields 2014-01-19 11:43:23 +01:00
scrawl
69ca03c308 Issue #777: Move DrawState to CreatureStats. All creatures can cast spells, and some creatures have weapons. 2014-01-19 09:43:41 +01:00
scrawl
525ce2f042 Some cleanup - move definitions to implementation file 2014-01-18 10:52:16 +01:00
scrawl
9653355cf1 Feature #701: Spawn levelled creatures in cells 2014-01-18 07:26:27 +01:00
mrcheko
df4df5b094 fixed weapRange for creatures/startcombat script(?) 2014-01-17 23:30:28 +02:00
scrawl
5049f3b134 Fix the group for creature attack animations 2014-01-17 20:18:35 +01:00
mrcheko
a11a6b616b Merge remote-tracking branch 'upstream/master' 2014-01-17 21:00:55 +02:00
mrcheko
435bbdd530 one more mismatch fixed 2014-01-17 20:55:21 +02:00
mrcheko
46a4790cb1 final warnings removal 2014-01-17 20:33:49 +02:00
mrcheko
7df8273d71 fix for everybody 2014-01-17 20:01:15 +02:00
scrawl
3dcb292bc1 Do not soul trap creatures without a soul (which apparently exist) 2014-01-17 18:43:45 +01:00
mrcheko
5357f569e6 fix for scrawl 2014-01-17 19:36:22 +02:00
scrawl
9b32b1403b Feature #960: Implement Creature::hit 2014-01-17 17:19:08 +01:00
scrawl
228254c890 Handle creature attack animations in character controller 2014-01-17 16:31:27 +01:00
scrawl
c548dcee13 Quick keys menu: make sure selected spell still exists 2014-01-17 15:20:22 +01:00
scrawl
e410eb5273 Play 'Idle' voiced dialogue entries in AIWander. Tweak voice max distance. 2014-01-17 10:55:46 +01:00
scrawl
fe66012bcd Closes #1115: Fix a bug causing number of AI packages to grow exponentially when adding an AI package. Not sure if adding the same package twice should even be allowed. 2014-01-17 10:55:46 +01:00
mrcheko
f2ad1c18f2 fix merging problem/some logic fixes 2014-01-16 22:24:05 +02:00
mrcheko
d5f794d4fb update to combat ai behaviour 2014-01-15 22:56:55 +02:00
scrawl
d544551f61 Added getSkill to Class interface, since creatures also have skills (which are provided by generalized Combat, Magic and Stealth attributes which substitute for the specific skills, in the same way as specialization)
Information provided by Hrnchamd.
2014-01-15 15:50:45 +01:00
scrawl
7534fc968d Minor acrobatics fixes 2014-01-15 14:53:30 +01:00
scrawl
28a2585106 Unsheath weapon in AiWander 2014-01-15 14:53:29 +01:00
scrawl
da3295d69c Closes #1106: Move stance to CreatureStats, since creatures also have separate run/walk animations. 2014-01-15 14:53:29 +01:00
scrawl
d0500e8124 Some unneeded includes cleanup 2014-01-15 14:53:28 +01:00
scrawl
de64c57179 Fix some typos and accidental commit 2014-01-15 14:53:28 +01:00
greye
61707694e8 fix memory leak in AISequence 2014-01-14 16:22:50 +04:00
greye
15d946415e minor cleanup
Removed case folding via std::transform, excessive lowerCase()
replaced with ciEqual().
2014-01-14 12:46:53 +04:00
scrawl
52b9ebff9d Closes #1092: Implement sleep interruption. Fix levelled list flags for creatures. Change World::copyObjectToCell to search for the correct cell. 2014-01-14 07:42:03 +01:00
scrawl
69381c49c7 Added a todo comment 2014-01-14 07:39:44 +01:00
scrawl
90b92a8f41 Move levelled list code out of ContainerStore 2014-01-14 05:37:06 +01:00
scrawl
95651857f3 Fix code duplication 2014-01-14 02:52:34 +01:00
scrawl
0d0005c433 Fix fatigue not restoring when waiting 2014-01-14 02:20:13 +01:00
scrawl
73268a8606 Fix skill progress not working 2014-01-13 10:18:03 +01:00
scrawl
cd06b2177d Automatically knock down when fatigue goes below zero 2014-01-13 10:18:03 +01:00
scrawl
413bf127de Allow drain fatigue effect to reduce below zero 2014-01-13 10:18:02 +01:00
scrawl
83872f6bf5 Knockdown / hit recovery improvements. Use formula and GMSTs from research wiki for knockdown determination. Hand-to-hand automatically knocks out when fatigue empty. 2014-01-13 10:18:02 +01:00
Marc Zinnschlag
3e58eb34e4 Merge remote-tracking branch 'sergeyshambir/startcombat'
Conflicts:
	apps/openmw/mwscript/docs/vmformat.txt
2014-01-13 10:17:10 +01:00
gus
5d4e148063 some clean up 2014-01-12 22:47:22 +01:00
gus
5d038423ec attempt to solve Bug #1009 by not building graph every frame 2014-01-12 18:42:31 +01:00
gus
1ae62665d6 get all actors following a given actor 2014-01-12 14:02:40 +01:00
gus
dd870e35db get all actors following a given actor 2014-01-12 14:02:15 +01:00
gus
2446abe076 Allow getting current active package 2014-01-12 14:01:54 +01:00
gus
7e96a391da FollowCell duration = 0 -> infinite time 2014-01-12 11:39:42 +01:00
gus
7066844e52 Follow you until a certain cell is reached 2014-01-12 11:38:58 +01:00
scrawl
f78b846f9e Handle CasterLinked magic effect flag 2014-01-12 10:21:49 +01:00
scrawl
767c72e619 Fix diagonal movement being faster than forward movement 2014-01-12 10:04:06 +01:00