scrawl
7f0d71f8f4
Swap use of iDispAttackMod/fDispAttacking (thanks Hrnchamd)
2014-12-24 15:45:14 +01:00
scrawl
019cd96719
Stop AiPursue when target has invisibility or chameleon>=75
2014-12-24 15:45:14 +01:00
scrawl
edc128572d
Add MWMechanics::Actor class for temporary actor state, move AiState there
2014-12-24 15:45:14 +01:00
scrawl
8bc7eb5530
PlayGroup: Don't loop animations with no loop keys ( Fixes #2223 )
2014-12-24 15:45:13 +01:00
scrawl
9e5dfb6e98
Update crime system according to research wiki for more accurate attack responses
2014-12-24 15:45:13 +01:00
scrawl
2410d79410
Fix iFightAttack and iFightAttacking being swapped
...
Looks like the research wiki page was incorrect, the higher value (iFightAttack) being for the victim makes more sense, is consistent with iDispAttackMod/fDispAttacking, and seems to be how the original game behaves as well.
2014-12-24 15:45:13 +01:00
scrawl
0081a68376
Use fMagicStartIconBlink for spell effect indicator fading
2014-12-24 15:45:13 +01:00
scrawl
f3738e9a98
Say an "intruder" voice dialogue for trespassing crimes ( Fixes #1082 )
...
Seems to be broken in the original engine, but according to the TES-CS help this is how the intruder voices should be used. There are legitimate entries for "intruder" in the game's files, so we might as well use them.
2014-12-24 15:45:13 +01:00
scrawl
866fdfe8bd
Crime system improvements
...
- If someone saw the crime, they will notify everyone else in range, even if the Alarm rating of the witness is 0.
- Pickpocket and selling stolen items now works properly, i.e. honors the victim's Alarm rating instead of always being reported.
2014-12-24 15:45:12 +01:00
scrawl
1910327469
Implement disposition changes due to crimes
2014-12-24 15:45:12 +01:00
scrawl
cc9af9562b
Function_CreatureTargetted should return '2' for werewolfs
...
This makes NPCs say the correct attack voice files when fighting a werewolf.
2014-12-24 15:45:12 +01:00
scrawl
efa9ff3a76
Fix incorrect implementation of iWerewolfBounty
2014-12-24 15:45:12 +01:00
scrawl
35d2bfabca
Adjust NPC response to pickpocket attempts ( Fixes #2219 )
2014-12-24 15:45:12 +01:00
scrawl
105f0f8716
Head tracking: don't look at dead actors
2014-12-24 15:45:12 +01:00
scrawl
8a210c49e9
Improve AI prioritising health potions
2014-12-24 15:45:12 +01:00
scrawl
f931ba2efc
Fix some static analysis issues (coverity)
2014-12-24 15:45:12 +01:00
scrawl
1b9209df4a
Allow blocking of hand-to-hand attacks
2014-12-24 15:45:11 +01:00
Alexander "Ace" Olofsson
462b41a3a8
Missing files, aka; Why you shouldn't stresscommit
2014-12-19 11:26:54 +01:00
Alexander "Ace" Olofsson
0af5c7b379
Starting to clean up some heavy includes
2014-12-19 09:23:16 +01:00
scrawl
d962f0918d
Implement NPC head tracking ( Fixes #1720 )
2014-12-16 20:47:45 +01:00
scrawl
4d5adfb5dd
Fix being able to use enchantments of items that failed to equip ( Fixes #2215 )
2014-12-15 13:47:34 +01:00
scrawl
2b78e9795d
Implement Calm effect removing combat packages ( Fixes #1985 )
2014-12-14 19:35:34 +01:00
scrawl
4f3995a4d8
Fix werewolf AI being able to use items
2014-12-14 19:15:43 +01:00
scrawl
88a2e4c043
Graceful error handling for missing spells/factions ( Fixes #1825 , Bug #2176 , Bug #2203 )
2014-12-14 02:38:27 +01:00
scrawl
60aa209144
Implement drowning when knocked out underwater ( Fixes #1228 )
2014-12-12 17:42:56 +01:00
scrawl
d034a079e6
Allow equipping twohanded weapon and shield at the same time ( Fixes #1785 )
...
The shield can be equipped, meaning armor rating and item enchantments apply, but can not be blocked with.
2014-12-12 16:49:22 +01:00
scrawl
bc85bb32c2
Fix vampirism magic effect not applying immediately ( Fixes #1984 )
2014-12-12 02:39:59 +01:00
scrawl
2601b26217
Merge branch 'master' of https://github.com/OpenMW/openmw
2014-12-11 22:44:58 +01:00
scrawl
886903d70e
Implement HitAttemptOnMe function (Bug #2078 )
2014-12-11 22:25:41 +01:00
scrawl
5f00a3d5c3
Reset lastHitObject when it is retrieved rather than every frame
...
This seems to be how vanilla MW does it.
2014-12-11 22:00:31 +01:00
Marc Zinnschlag
19bd07648b
Merge remote-tracking branch 'scrawl/pathgrid'
2014-12-11 20:32:32 +01:00
scrawl
3270f0e932
Change pathgrid workaround to check for interior cell name
2014-12-11 15:19:48 +01:00
scrawl
623783cd6a
Enchanting: fix cast cost for "on use" enchantments being set incorrectly
2014-12-10 18:05:11 +01:00
scrawl
ead6bf1601
Enchanting: cast the enchant points for the item to int ( Fixes #2202 )
2014-12-10 17:34:05 +01:00
scrawl
3c747195ae
Add fall damage for creatures ( Fixes #2201 )
2014-12-10 17:21:34 +01: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
scrawl
0fe7500f74
Work around pathgrid record limitation ( Fixes #2195 )
2014-12-09 00:13:56 +01:00
scrawl
416d549568
Fix animation glitch caused by knockdown
...
If the player was knocked down while having no weapon, spell nor fists ready, the animation state would incorrectly shift to "weapon equipped" even though no weapon is equipped.
2014-12-05 22:02:18 +01:00
scrawl
83dcf9ce4b
Overwrite existing records in IndexedStore ( Fixes #2182 )
2014-12-05 15:58:05 +01:00
Marc Zinnschlag
eb6e1576be
Merge remote-tracking branch 'scrawl/master'
2014-12-03 20:17:34 +01:00
scrawl
14ae6d28b0
Fix being able to jump when overencumbered
2014-12-03 18:28:35 +01:00
scrawl
7faa849cef
Fix fatigue recalculation using older value (oops)
2014-12-03 18:28:34 +01:00
Paulo Viadanna
bfa048e687
Fix #1734 : AI will stop combat if target disappear
2014-12-02 17:38:25 -02:00
scrawl
46d93f1b08
Crime update: NPCs can report crimes if they didn't see the crime, but were alerted by someone who saw it and did not report it themselves.
2014-12-01 23:09:46 +01:00
scrawl
507cbcfae3
Remove incorrect implementation of the iAlarm* GMSTs, not used by vanilla MW ( Fixes #2064 )
...
According to Hrnchamd, these are unused. The real mechanics are not fully documented, but from a quick test only NPCs with an alarm value of 100 will report crimes.
2014-12-01 23:09:46 +01:00
scrawl
a1226501fa
AiWander: move idle animation handling to non-delayed section ( Fixes #2073 )
2014-12-01 23:09:46 +01:00
scrawl
c684c99a95
Combat AI: Don't attempt to cast spells when impossible to succeed ( Fixes #2059 )
2014-12-01 23:09:46 +01:00
scrawl
61d1aa78ce
Move AiWander path finder to temporary storage ( Fixes #2082 )
2014-12-01 23:09:46 +01:00
Marc Zinnschlag
003675318d
Merge remote-tracking branch 'scrawl/master'
2014-11-29 20:54:04 +01:00
scrawl
5f5fcc2fef
Make PlayGroup use an indefinite number of loops ( Fixes #2156 )
2014-11-28 17:15:31 +01:00
scrawl
0a466ad643
Make recalculation of magicka less aggressive ( Fixes #2155 )
2014-11-28 14:45:35 +01:00
MiroslavR
cb74c1c36e
Set health to 0 if it drops below 1 ( Fixes #2163 )
2014-11-27 20:44:41 +01:00
MiroslavR
238325455d
Erase effects that have expired ( Fixes #2134 )
2014-11-25 10:33:03 +01:00
MiroslavR
b8d5a9486a
Make Restore/Damage Attribute/Skill effects continuous
2014-11-08 00:57:03 +01:00
Internecine
edc51ab768
Removed debug output
2014-11-05 15:26:13 +13:00
Internecine
6741fbe7a9
Fixes bug #2031
2014-11-05 15:22:44 +13:00
MiroslavR
140013820b
Fix invalidated iterator
2014-11-02 15:40:08 +01:00
scrawl
45f14f0704
Fix stolen faction-owned items not being confiscated
2014-10-31 00:25:37 +01:00
scrawl
8b3755a770
Compile fix
2014-10-20 17:45:24 +02:00
scrawl
192069a181
Add automatic potion naming
2014-10-20 17:45:11 +02:00
scrawl
fd7c181e06
Fix alchemy producing potion IDs from content files
2014-10-20 17:45:06 +02:00
scrawl
f117a75747
Force walk animation when flying ( Fixes #2015 )
2014-10-17 19:11:06 +02:00
Alexander "Ace" Olofsson
dc788512e2
Fix LNK2019 link error on Visual Studio 2010 builds
...
For some reason VS2010 (Haven't tested 2013) is REALLY pedantic about class/struct being two different things when it comes to function signatures
2014-10-14 16:10:19 +02:00
Marc Zinnschlag
6beee95151
Merge remote-tracking branch 'terrorfisch/aistate'
2014-10-13 19:14:15 +02:00
Marc Zinnschlag
eb45793eab
Merge remote-tracking branch 'thoronador/fix-numeric-limits-usage'
2014-10-13 11:03:03 +02:00
Thoronador
4d62541b62
fix usage of numeric_limits static functions min() and max()
...
Functions min() and max() of std::numeric_limits<T> are static
and can therefore be accessed via class name and :: operator.
2014-10-12 23:28:16 +02:00
scrawl
d51daf5875
Fix AI not using F_Always spells, for example "vampire touch"
2014-10-12 17:18:27 +02:00
scrawl
8cb09e89ed
Make spells cast by scripts always succeed ( Fixes #1993 )
2014-10-12 17:18:27 +02:00
MiroslavR
ad253059b1
Hit indicator for absorb/damage health effect
2014-10-12 01:15:40 +02:00
MiroslavR
0ae604990e
Implement continuous damage indication ( Fixes #1970 )
2014-10-11 22:21:48 +02:00
terrorfisch
c4badcea6e
removed warning
2014-10-10 23:51:29 +02:00
terrorfisch
c28dfc2fa4
Travis CI fix?
2014-10-10 23:34:58 +02:00
terrorfisch
4eb1668467
references now initialized when they are needed
2014-10-10 23:32:15 +02:00
terrorfisch
bbca942601
-improved trigonometric precision
...
-cleanup
2014-10-10 23:31:01 +02:00
terrorfisch
5248917a6c
- changed namespace
2014-10-10 23:28:49 +02:00
terrorfisch
db1b93498d
Added comment.
2014-10-10 00:17:50 +02:00
terrorfisch
730abf6841
Moved all variables in temporary storage for AiCombat and some more for AiWander.
...
+Buxfix for previous AiWander changes
2014-10-10 00:16:17 +02:00
terrorfisch
cae948df96
removed unecessary PathFinders
2014-10-08 23:09:50 +02:00
terrorfisch
4c36c67fb8
Updated AiCombat:
...
-moved everything except target to temporary storage
-removed the Pathfinder since present in baseclass
-cleaned some trigonometric mess
2014-10-08 23:00:36 +02:00
terrorfisch
4391c1fd00
Addded the parts of AiWander that I fully understand to the temporary storage.
...
The rest should be done by someone who has a clearer overview over the class.
2014-10-08 22:11:45 +02: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
Marc Zinnschlag
744c56943a
Merge remote-tracking branch 'jordan-ayers/topic/misc-cleanup'
2014-10-07 18:03:25 +02:00
Jordan Ayers
56db525a93
Document the return value of getEffectMultiplier.
2014-10-06 21:56:41 -05:00
scrawl
c4fa671381
Don't allow raising faction rank if the next rank has no name ( Fixes #1975 )
2014-10-05 16:47:55 +02:00
scrawl
5c3bc6563b
Fix divisions by zero in normalizedEncumbrance
2014-10-05 15:50:01 +02:00
scrawl
8dd410fe96
Teleport indirect followers as well when using a door ( Fixes #1974 )
2014-10-05 15:18:32 +02:00
Jordan Ayers
663647bee8
Simplify getEffectMultiplier.
...
Both return cases were same, except for some overflow conditions.
2014-10-04 15:28:58 -05:00
scrawl
6fc53e73ad
Don't run AI for knocked-out actors ( Fixes #1854 )
2014-10-03 15:58:14 +02:00
Marc Zinnschlag
a166034e12
Merge remote-tracking branch 'jordan-ayers/topic/disease-cleanup'
2014-10-02 17:19:32 +02:00
scrawl
861cc26aa6
Don't sell racial spells ( Fixes #1961 )
2014-10-02 16:50:05 +02:00
scrawl
afbd2de511
Fix broken alchemy magnitude/duration
2014-10-02 13:55:42 +02:00
scrawl
7e10818bdf
Fix uninitialized flags for custom-made spells
2014-10-02 13:55:42 +02:00
Jordan Ayers
3bc91c66e6
Disease Check: Shorten the resistance calculations.
2014-10-01 19:29:03 -05:00
Jordan Ayers
a9a0930b85
Disease check: Reuse corprus check from spells.hpp.
2014-10-01 19:26:25 -05:00
scrawl
1c51694aa9
Don't update physics and animation for actors outside the AI processing distance
2014-10-02 00:27:04 +02:00
scrawl
ee8b85aa2c
Fix priority bug in AiSequence::stack ( Fixes #1959 )
2014-09-30 22:57:38 +02:00
Jordan Ayers
da9d858201
Add 'const' to a spell helper function.
2014-09-29 20:59:10 -05:00
scrawl
7f18f85a1d
Forgot const
2014-09-29 12:04:19 +02:00
scrawl
e9ed0211c9
Attempt to fix Clang warnings
2014-09-28 12:44:47 +02:00
scrawl
02dec787fd
Cache GMSTs in getDerivedDisposition
2014-09-27 22:44:20 +02:00
scrawl
ea956b537c
Don't search for fFatigueReturnBase and fFatigueReturnMult every frame
2014-09-27 22:37:53 +02:00
scrawl
e868a48a63
Don't trigger OnPcHitMe for friendly hits ( Fixes #1950 )
...
Don't consider actors as followers if they are also in combat with the follow target
2014-09-26 22:08:07 +02:00
scrawl
7252cb63a6
Fix cppcheck issues
2014-09-26 17:48:14 +02:00
scrawl
f56711f443
Fix crash caused by teleportation spells ( Fixes #1904 )
2014-09-25 18:14:04 +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
40ce5add59
Don't report crime for attacking an NPC that is already in combat with another NPC ( Fixes #1908 , Fixes #1821 )
2014-09-25 17:33:26 +02:00
scrawl
40587f984d
Implement price-based mercantile skill progress ( Fixes #1947 ), thanks Hrnchamd
...
Correct barter formula (removed erroneous clamping)
2014-09-25 13:02:42 +02:00
Marc Zinnschlag
175d4f3d44
Merge remote-tracking branch 'ragora/playdeathlevelupmusic'
2014-09-23 13:30:50 +02:00
Ragora
06e683d378
Added code to play music on level up and on death
2014-09-23 04:58:19 -04:00
scrawl
3ac04060c1
Fix NPCs being able to practice Block skill
2014-09-20 16:17:09 +02:00
scrawl
023d7072f9
Don't play battle music for enemies out of AI processing range
2014-09-20 13:55:57 +02:00
Marc Zinnschlag
65ddf7acfe
Merge remote-tracking branch 'scrawl/master'
2014-09-19 15:59:59 +02:00
Marc Zinnschlag
2a48c377a8
Merge remote-tracking branch 'miroslavr/master'
2014-09-19 15:55:24 +02:00
scrawl
b145d183ae
Fix incorrect alchemy failure handling when an effect has a zero magnitude/duration ( Fixes #1922 )
2014-09-19 09:11:21 +02:00
scrawl
8a3a3baed4
Tweak AiEscort maximum distances
2014-09-19 05:47:45 +02:00
scrawl
b39fe85a51
Implement fPCbaseMagickaMult and fNPCbaseMagickaMult
2014-09-18 14:56:43 +02:00
scrawl
c19f89976e
Add missing Hit voice dialogue for friendly hits
2014-09-18 05:13:17 +02:00
scrawl
be7839873a
Don't trigger dynamic stats recalculation when setting up actor initial stats ( Fixes #1927 )
...
This caused the magicka value set in the CS to be ignored completely, so flame atronachs were spawning with 50 magicka instead of 105.
2014-09-18 03:47:45 +02:00
scrawl
447e93bdb4
Use SpellCast animation for creatures that have it (flame atronach)
2014-09-18 03:24:47 +02:00
scrawl
07cd647e75
Fix broken AI for creatures with OnTarget spells (Bug #1927 )
2014-09-18 03:19:13 +02:00
scrawl
2eaceb71ba
Reject AiTravel destinations further than 7168 units away, as in vanilla MW ( Fixes #1911 )
2014-09-17 12:39:10 +02:00
scrawl
3ce3f31452
Adjust turning animation speed multiplier based on turning speed
2014-09-17 07:02:19 +02:00
scrawl
6debd21ec6
Make sure the Jump control is always handled by the PhysicsSystem even if game runs faster than the minimum physics timestep
2014-09-17 07:02:19 +02:00
scrawl
269c200c8f
Fix jump velocity mechanics ( Fixes #1708 )
2014-09-17 07:02:19 +02:00
scrawl
b6a89c7845
Fix idlestorm animation conflict with torch animation
2014-09-17 07:02:19 +02:00
scrawl
4c285151a3
Fix incorrect movement animation for some creatures ( Fixes #1924 )
2014-09-17 07:02:10 +02:00
scrawl
0c75c6bf1b
Improve spellcasting AI for Drain/Damage effects
2014-09-15 10:42:51 +02:00
scrawl
157c53bed4
Handle spellcasting for creatures with no casting animation ( Fixes #1856 )
2014-09-15 10:42:44 +02:00
scrawl
233e221de2
Terminate AI packages when target is disabled or deleted ( Fixes #1910 )
2014-09-14 10:49:33 +02:00
scrawl
a42e60970b
Revert "delete death events on adding an actor to the scene"
...
If we go to a different cell in the exact frame of an actor's death, the death event would be lost permanently.
This reverts commit fd2c07a6f4
.
Conflicts:
apps/openmw/mwmechanics/actors.cpp
2014-09-13 20:57:25 +02:00
scrawl
8625764143
Give 100% of health back when Resurrecting an actor ( Fixes #1877 )
2014-09-13 20:50:49 +02:00
MiroslavR
23e6d52844
Fix UI not updating initially for zero stats
2014-09-13 02:56:06 +02:00
Marc Zinnschlag
b5d5eadf79
Merge remote-tracking branch 'scrawl/master'
2014-09-11 09:01:21 +02:00
scrawl
f3d4b63aaf
Fix AI moving load doors and throw an exception when trying to do this ( Fixes #1907 )
2014-09-11 05:53:56 +02:00
scrawl
dd5f4947d7
Add a TODO comment
2014-09-09 05:05:20 +02:00
scrawl
56cd0da522
Fix potential infinite recursion when an area effect spell is reflected ( Fixes #1896 )
2014-09-09 04:44:14 +02:00
MiroslavR
21eb25706c
Don't pursue the player for their crimes when they are a werewolf
2014-09-09 04:15:54 +02:00
scrawl
d2ef0d362c
Implement vanilla distance threshold for AI processing (Bug #1876 )
2014-09-09 01:52:48 +02:00
scrawl
780a48cd1e
Don't greet dead actors in AiWander
2014-09-09 00:43:12 +02:00
scrawl
a9847c9453
Fix creature attacking flag not being reset after the attack starts ( Fixes #1889 )
2014-09-09 00:27:25 +02:00
scrawl
adbc50366b
Use random attack strength for creatures (Bug #1876 )
...
Determining the attack strength from the time the wind-up animation was held will not work properly, as most creatures don't have this animation.
This fixes another balancing issue with Rieklings (they were previously using an attack strength of 1 every time).
2014-09-07 18:55:59 +02:00
scrawl
31b31115af
Fix AI not using Restore Health effect when it is complemented by unnecessary restore magicka/fatigue effects (e.g. in sc_purityofbody)
2014-09-07 18:55:59 +02:00
MiroslavR
931e778b4d
Initialize mHasMovedInXY in CharacterController
2014-09-06 21:31:48 +02:00
MiroslavR
007404e17f
Merge branch 'master' of github.com:OpenMW/openmw
2014-09-06 14:54:59 +02:00
MiroslavR
b1a449a0b9
Fix wolfrun sound playing all the time when running is default
2014-09-06 05:52:47 +02:00
MiroslavR
c1cc66985d
Werewolf: only NPCs should have modified fight and react to your transformation
2014-09-06 03:09:11 +02:00
scrawl
282c93ccc5
Handle death in actor update rather than instantly ( Fixes #1866 )
2014-09-05 17:17:45 +02:00
MiroslavR
9e0d5dc28a
Werewolf: can't sleep in beds anymore, actors will attack you on sight, and if you are seen transforming, you will be marked for death
2014-09-05 01:58:57 +02:00
scrawl
628d57f18c
Merge branch 'master' of https://github.com/OpenMW/openmw
2014-09-03 04:55:24 +02:00
scrawl
84a0d064cd
Fall back to regular death animation if deathknockdown/deathknockout don't exist ( Fixes #1870 )
2014-09-02 15:14:23 +02:00
Marc Zinnschlag
4894699eba
Merge remote-tracking branch 'scrawl/master'
2014-09-02 09:04:19 +02:00
MiroslavR
7dfba0ae30
Followers with high fight should not engage in combat with the player
2014-09-01 03:43:53 +02:00
scrawl
9caff1d800
Don't say Idle voices when player is not in LOS ( Fixes #1436 )
2014-09-01 02:21:54 +02:00
scrawl
0da4757ee6
Merge branch 'master' of github.com:scrawl/openmw
2014-09-01 02:04:18 +02:00
Corporama
ccca6db865
Compile fixes for Linux
2014-08-30 23:11:09 +02:00
scrawl
9d6ca9066f
Fix summoned creatures not following for non-player summoners
2014-08-30 18:48:28 +02:00
scrawl
180a831e96
Fix typo in combat distance
2014-08-30 18:38:24 +02:00
scrawl
58945c557a
Add sound for casting enchanted item with insufficent charge ( Fixes #1857 )
2014-08-30 02:47:35 +02:00
scrawl
a62e40f4ed
Add situational AI use of Feather, Dispel and Cure effects
2014-08-29 17:58:32 +02:00
cc9cii
fa0352cd75
fix typo
2014-08-29 10:47:44 +10:00
cc9cii
961b4f0142
Suppress a warning.
2014-08-29 07:48:52 +10:00
scrawl
0be1ac1343
Enable casting of NoMagnitude effects in AI (e.g. summoned creatures)
2014-08-28 21:37:18 +02:00
scrawl
feeb740497
Fix bone not found exception for golden saint spellcasting
2014-08-28 17:02:11 +02:00
scrawl
0f43592237
Another invalid iterator fix
2014-08-28 16:47:54 +02:00
scrawl
f91d639782
Add missing soul trap sound ( Fixes #1855 )
2014-08-28 16:30:42 +02:00
scrawl
253036abee
Play VFX_Soul_Trap on successful soul trap
2014-08-28 02:55:36 +02:00
scrawl
f8f4d2dfdb
Another invalid iterator fix
2014-08-28 02:14:30 +02:00
scrawl
1a98f8ca93
Invalid iterator fix
2014-08-28 02:09:00 +02:00
scrawl
2e623bac5a
Don't attempt to use broken weapons in AI
2014-08-28 02:01:41 +02:00
scrawl
0bdc1b243a
Consider weapon ammunition in combat AI ( Fixes #1576 )
2014-08-28 01:54:32 +02:00
scrawl
0fe9612afb
Implement basic spellcasting AI ( Fixes #961 )
...
Select a weapon to attack with in AiCombat and equip it (Fixes #1609 , Fixes #1772 )
2014-08-28 00:55:37 +02:00
scrawl
fc7ed05da8
Knock out actors when fatigue base is 0 ( Fixes #1847 )
2014-08-26 03:02:06 +02:00
scrawl
854491ac15
Don't treat actors as following if another non-combat AiPackage precedes ( Fixes #1843 )
2014-08-26 02:09:23 +02:00
scrawl
7714192e28
Remove wrong comment
2014-08-26 02:09:23 +02:00
MiroslavR
fc789265e2
Spells that always succeed should not increase your skill when you cast them
2014-08-24 20:36:31 +02:00
Marc Zinnschlag
d024c1a93f
Merge remote-tracking branch 'scrawl/master'
2014-08-24 09:14:17 +02:00
scrawl
c5c822ecba
Use Chop attack when walking diagonally ( Fixes #1729 )
2014-08-24 02:38:00 +02:00
scrawl
e0e4cbbb41
Implement Light magic effect ( Fixes #1122 )
2014-08-24 02:37:59 +02:00
scrawl
3dbe17b6ed
Terminate AiPursue when target dies ( Fixes #1836 )
2014-08-24 02:37:59 +02:00
MiroslavR
85aa237baf
Implement removal of corprus spells
2014-08-22 03:34:31 +02:00
MiroslavR
2cbe17ca0a
Make Spells::mCorprusSpells private
2014-08-20 12:40:38 +02:00
MiroslavR
26732bc228
Purge blight should not remove corprus
2014-08-19 22:13:37 +02:00
MiroslavR
96e7ff666d
Implement saving/loading of corprus stats, remove redundant code
2014-08-19 03:17:31 +02:00
MiroslavR
3722c7adc3
Initial work on implementing corprus worsening effect
2014-08-18 15:33:12 +02:00
scrawl
9b38888ac9
Add missing AiFollow ActorId initialization ( Fixes #1818 )
2014-08-17 17:01:04 +02:00
scrawl
bcc79919a7
Fix fortified skill not immediately updating on changing equipment
2014-08-17 05:42:52 +02:00
scrawl
360c7f863c
Store magic effect Base values in savegame ( Fixes #1489 )
2014-08-17 05:38:48 +02:00
scrawl
2db50da8dd
Implement magic effect script instructions (Feature #1489 )
2014-08-17 05:09:14 +02:00
scrawl
d8943aef2f
Encapsulate magic effect magnitude (Feature #1489 )
2014-08-17 03:58:04 +02:00
scrawl
084cc857d4
Update magic effects when changing equipment ( Fixes #1646 )
2014-08-15 01:13:38 +02:00
scrawl
1bb82c710c
Fix use of uninitialized memory in AiWander::init
2014-08-14 18:55:54 +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
8ae6796b2f
Play creature movement animation without scaling if a fallback is used ( Fixes #1797 )
2014-08-13 01:53:56 +02:00
scrawl
8866b5f860
Fix maximum magicka calculation ( Fixes #1795 )
2014-08-11 19:07:14 +02:00
scrawl
34847baa54
Disable head animations for dead actors ( Fixes #1781 )
2014-08-11 05:00:13 +02:00
scrawl
98bc4618cb
AiAvoidDoor: turn and walk forward instead of backwards or sideways ( Fixes #1788 )
2014-08-11 04:21:04 +02:00
scrawl
fcd2a9e4d5
Don't set magic effects for dead actors ( Fixes #1783 )
2014-08-10 23:52:32 +02:00
scrawl
4138c3e966
Reuse health of previous level rather than recalculating initial health ( Fixes #1787 )
2014-08-10 17:09:14 +02:00
scrawl
a731ec3587
Remove summoned creature and its effect when it is killed ( Fixes #1341 )
2014-08-08 15:46:32 +02:00
scrawl
22d7d8a466
Implement Command creature/humanoid magic effects ( Fixes #1120 )
2014-08-07 17:21:07 +02:00
scrawl
2bfcec53bf
Don't show sMagicInvalidTarget for soultrap on NPCs ( Fixes #1762 )
...
Note the message was accurate, since NPCs can't be soultrapped. Maybe vanilla doesn't show it to not spam the screen with message boxes when attacking with a "soultrap on strike" weapon...
2014-08-06 20:13:58 +02:00
scrawl
a9a7a7ec73
Use Modified attribute values to derive magicka and fatigue ( Fixes #1760 )
2014-08-06 20:13:58 +02:00
scrawl
1fc424ce30
Make sure player doesn't get any AI packages (Bug #1749 )
2014-08-06 20:13:57 +02:00
Marc Zinnschlag
33c36bf0df
Merge remote-tracking branch 'scrawl/master'
2014-08-03 22:23:48 +02:00
scrawl
639ae7e06c
Implement friendly hits on followers ( Fixes #1139 )
2014-08-03 16:24:16 +02:00
scrawl
2d74388a76
Don't report crime if we are in combat with the victim
2014-08-03 16:24:16 +02:00
scrawl
216ebac2e9
Implement weapon condition damage for ranged weapons ( Fixes #1746 )
2014-08-03 16:24:11 +02:00
Marc Zinnschlag
dbf5613d8c
cleanup
2014-08-03 09:28:44 +02:00
Digmaster
a32ab842ae
Added ForceJump/ForceMoveJump commands
2014-08-02 22:42:40 -07:00
scrawl
175cc98e64
Make magic effects with no corresponding resistance attribute unresistable ( Fixes #1727 )
2014-07-31 01:14:44 +02:00
scrawl
78bd516ab4
Show sMagicInvalidTarget for an invalid soultrap target ( Fixes #1728 )
2014-07-30 15:26:10 +02:00
Michał Ściubidło
f754e06be9
Fix for bug 1685
2014-07-30 07:47:09 +01:00
scrawl
45af34d189
Merge branch 'master' of https://github.com/OpenMW/openmw
2014-07-29 19:35:44 +02:00
Michał Ściubidło
bd3729a6cb
Add grace periods for player greeting.
...
Add delay for NPC greating. NPC ignores greeted player after some time.
Fixes bug 1503.
2014-07-28 23:45:26 +01:00
Michał Ściubidło
d47bfbe69c
Implement AI greeting states.
...
Greeting consist of 3 phases:
- none - default one, greeting state can only change to "in progress"
when near enough and some time passes
- in progress - NPC says his greating and rotates toward player,
state can only change to "done" after some time
- done - rotation is stoped, after idling can go away from player,
state can only change to "none" when player and NPC are faraway
2014-07-28 23:45:26 +01:00
Michał Ściubidło
20efeea5d9
AI tell their greatings even when player is moving (like morrowind).
...
Greating reset distance was greatly inflated comparing with morrowind.
2014-07-28 23:45:26 +01:00
scrawl
8455ed6279
Cancel upper body animations when knocked down
2014-07-28 19:51:29 +02:00
scrawl
5349699172
Only show "target resists magic" message for spells cast by player
2014-07-28 17:54:48 +02:00
scrawl
f67b7dae91
Sheath weapon in all Ai packages except for AiCombat
2014-07-28 17:32:14 +02:00
scrawl
d956df83e4
Don't make guards fight non-aggressive creatures that are in combat
...
Ex. summoned creature that is helping in a fight.
2014-07-28 17:19:20 +02:00
scrawl
d9a6515fe3
Adjust AiFollow running threshold to more closely match vanilla MW
2014-07-28 17:11:46 +02:00
scrawl
4773d754c6
Remove redundant isHostile flag ( Fixes #1652 )
2014-07-28 16:41:12 +02:00
scrawl
0077296c91
Take actor's speed into account in stuck check
...
The Winged Twilight's walking animation was so slow that it incorrectly detects being stuck.
2014-07-28 15:57:16 +02:00
scrawl
315b022d2d
Add transfer gold from all services to NPC trade gold pool
2014-07-28 00:55:57 +02:00
scrawl
6262d6c964
Don't leave stale player CharacterController in Actors when loading game ( Fixes #1713 )
2014-07-27 23:10:58 +02:00
scrawl
d81e9cfefd
Implement actors fighting for the actor they are following ( Fixes #1141 )
2014-07-27 20:33:45 +02:00
scrawl
09607f992e
Enchanting: fix inverted self-enchant success chance ( Fixes #1701 )
2014-07-27 20:33:44 +02:00
scrawl
4a1e561015
Properly assign effect attribute/skill in potion creation ( Fixes #1704 )
2014-07-27 20:33:02 +02:00
scrawl
90b2709d6c
Allow absorption of non-harmful spells ( Fixes #1693 )
...
Also fix absorption being calculated for each effect rather than the whole spell.
2014-07-25 19:56:06 +02:00
scrawl
469d2afffa
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwgui/levelupdialog.cpp
2014-07-24 02:33:46 +02:00
scrawl
7ae9bbb1a5
Implement iCrimeThresholdMultiplier
2014-07-24 02:17:44 +02:00
scrawl
fc618cb3ea
Use separate function for fatigue restoration during resting/waiting
2014-07-24 02:17:44 +02:00
scrawl
75366b2e37
Implement CellRef's faction rank (rank requirement to use item)
2014-07-24 02:17:38 +02:00
scrawl
2b57c7fa67
Use CellRef's global variable to disable owner ( Fixes #1677 )
2014-07-22 17:06:40 +02:00
Lukasz Gromanowski
171c61022d
Added initialization of weapRange in AiCombat::execute().
...
Signed-off-by: Lukasz Gromanowski <lgromanowski@gmail.com>
2014-07-21 21:17:12 +02:00
scrawl
c0645d4978
Increase death count immediately on death (Bug #1588 )
...
This is required for scripts using getDeadCount as reaction to onDeath that rely on the increased value.
2014-07-21 20:37:14 +02:00
scrawl
804f1a5e59
Adjust combat mechanics
...
- Projectiles can not trigger critical hits
- Critical hits are only possible if the target is not in combat (Fixes #1669 )
- Hand-to-hand deals damage to health during entire duration of knockdown animation (including standing up)
2014-07-20 23:17:55 +02:00
scrawl
90a96cd7d8
Fix bug where actors in combat with multiple other actors where not regarded as in combat with a specific actor
2014-07-20 22:34:20 +02:00
scrawl
6d794dac69
Add missing messagebox for spell lock and unlock success
2014-07-20 17:09:55 +02:00
scrawl
9897f14c3c
Don't block when actor is paralyzed
2014-07-20 16:52:57 +02:00
scrawl
28a0899d2b
Implement difficulty scaling ( Fixes #1505 )
2014-07-20 16:38:20 +02:00
scrawl
08ce6ed7fb
Attempt to restack item after repair or recharge ( Fixes #1656 )
2014-07-17 16:16:06 +02:00
scrawl
20a0040bdb
Apply elemental shield magnitude to element resistance ( Closes #1121 )
2014-07-16 10:58:28 +02:00
scrawl
123157b216
Implement elemental shield damage to attacker (Feature #1121 )
2014-07-16 10:58:28 +02:00
scrawl
f43a10b7b9
Adjust disease contraction according to Hrnchamd's research
2014-07-16 10:58:21 +02:00
scrawl
c9150c9680
Initialize character skeleton to a suitable pose ( Fixes #1473 )
2014-07-13 10:40:48 +02:00
scrawl
d63dd88113
Apply autocalc corrections to player starting spells
2014-07-12 18:53:16 +02:00
scrawl
83819b2894
Traverse spells in record order from content files. bronrod_the_roarer is perfect now. Other NPCs have some differences.
2014-07-12 18:53:15 +02:00
scrawl
479f248c1d
Use spell effect range type, not base effect (applied to spellcasting code)
2014-07-12 18:53:15 +02:00
scrawl
b4f8edc186
Use spell effect range type, not base effect
2014-07-12 18:53:15 +02:00
scrawl
1c41ce9b9d
Implement Hrnchamd's player and NPC autocalc spells (Some unclarities remaining, XXX)
2014-07-12 18:53:15 +02:00
scrawl
742d008765
Fix initializing CharacterController with fists or spell equipped
2014-07-08 10:30:46 +02:00
scrawl
ee81698089
Always control movement by animation except for first person or in-air
2014-07-08 10:30:45 +02:00
scrawl
10ef0a34d9
Update effects even when main animation is paused ( Fixes #1585 )
2014-06-28 17:54:14 +02:00
scrawl
92f5898b32
AiWander: Make sure we have 8 idle values ( Fixes #1583 )
...
The AiWander instruction may specify more (or less) than 8.
2014-06-28 14:22:27 +02:00
scrawl
523c2715e3
AiCombat: Handle Start to Min and Min to Max durations of 0 (found in Riekling animation)
2014-06-28 01:31:34 +02:00
scrawl
911bd0e340
Use walk animation as fallback if there's no run animation ( Fixes #1578 )
2014-06-28 00:07:13 +02:00
scrawl
07d0f4458d
Rotate clouds/particles to come from red mountain ( Fixes #245 )
2014-06-27 03:22:00 +02:00
scrawl
9eb8addc70
Make flying creatures fall when paralyzed ( Fixes #1494 )
2014-06-27 03:21:50 +02:00
scrawl
3d9bdad8ba
Correct run speed for creatures (by Hrnchamd - Fixes #1136 )
2014-06-25 00:51:02 +02:00
scrawl
7f1d0fc2a2
Fix disposition for npcs in same faction, by Hrnchamd
2014-06-25 00:12:51 +02:00
scrawl
693a097b21
Implement idlestorm animation (Feature #41 )
2014-06-24 18:37:38 +02:00
scrawl
320ab1b2c1
Don't say voice when using startcombat for a dead actor ( Fixes #1542 )
2014-06-23 22:00:17 +02:00
scrawl
cbec0ffaee
Exception fix
2014-06-22 22:30:29 +02:00
scrawl
11b05c352f
Fix exception when casting Bound Gloves spell
2014-06-19 16:00:27 +02:00
scrawl
9a6737073f
Fix broken swimdeath in first person
2014-06-18 16:57:54 +02:00
scrawl
e95483c40f
Fix crash for on target spells cast by non-actors ( Fixes #1529 )
2014-06-18 16:57:53 +02:00
scrawl
fe1e6a2719
Make Weakness effects apply to all subsequent effects within the same spell ( Fixes #1150 )
2014-06-18 16:57:53 +02:00
scrawl
a3ea7cb956
Ignore distance when considering aggression due to crime (seems to work better, all balmora mages guild members now come to help when one is attacked)
2014-06-18 16:57:53 +02:00
scrawl
1dc9e151cb
Count werewolf kills ( Fixes #1525 )
2014-06-18 16:56:36 +02:00
scrawl
4f9ebd148c
Fix broken AI movement on Z axis
2014-06-17 15:25:54 +02:00
scrawl
2477456f99
Implement Murder crimes and OnMurder instruction ( Fixes #1315 )
2014-06-17 04:05:27 +02:00
scrawl
3801dfb4ba
Add delay to sneak icon update and skill progress ( Fixes #1321 )
2014-06-17 04:05:27 +02:00
scrawl
ffb6f5d555
Use fFight<Crime> GMSTs to control attacks in response to crimes
2014-06-17 04:05:27 +02:00
scrawl
28feb260eb
Implement disposition/distance based aggression ( Fixes #1520 )
2014-06-16 20:05:53 +02:00
scrawl
f935cfc6c9
Fix crash when stealing items with the owner not around ( Fixes #1512 )
2014-06-16 04:03:53 +02:00
scrawl
345ba99c17
Fix WeaponAnimationTime not working after restoring draw state (when loading save or re-entering a cell - Fixes #1497 )
2014-06-16 02:52:25 +02:00
scrawl
9ea071c1e8
Fix weapon incorrectly showing when saving and loading with spell equipped
2014-06-16 02:52:25 +02:00
scrawl
d5b97005ab
Make ESM::Faction skills optional ( Fixes #1508 )
...
Also increased size of mSkills array to 7. Some factions with 7 skills can be found in the vanilla CS. The previously "mUnknown" int appears to be the 7th element of the skills array.
2014-06-16 02:52:16 +02:00
scrawl
ee2b81763e
Savegame: Store AiSettings and summoned creatures
...
CreatureStats state is now completely stored (Closes #1174 )
Also play VFX_Summon_Start and VFX_Summon_End visual effects.
2014-06-15 21:19:37 +02:00
scrawl
a0f9a6718f
Disable fProjectileThrownStoreChance when shooting at player ( Fixes #1490 )
2014-06-15 16:11:22 +02:00
scrawl
e288437885
Disable all other animations on death ( Fixes #1483 )
2014-06-15 14:18:16 +02:00
scrawl
8d8015ce18
Remove a squareroot in pathfinding
2014-06-15 14:18:16 +02:00
scrawl
afbd5162ee
Move AiWander arrival check to time-critical section
2014-06-15 14:18:16 +02:00
scrawl
395f98e476
Fix triggering changed flag for all references when cell is visited
...
The InsertFunctor for cells was calling localRotateObject() for all references which set the mChanged flag in RefData to true.
Also clean up RefData interface slightly.
2014-06-15 14:18:16 +02:00
scrawl
b20f8cc04f
Don't clear AiSequence if there are no saved packages (eg for old savegames)
2014-06-15 14:18:16 +02:00
Marc Zinnschlag
01c90a3434
Merge remote-tracking branch 'mrcheko/master'
2014-06-15 14:12:38 +02:00
mrcheko
a6ee4272aa
fix bug when you were able to kill somebody from large distance without
...
being spotted
2014-06-15 00:14:18 +04:00
mrcheko
6da061fd96
fix http://bugs.openmw.org/issues/1340
...
Did I understand right that guards trigger combat after refusing pay
gold/go to jail via script?
2014-06-14 23:36:57 +04:00
scrawl
832f1a4857
Fix merge mistake
2014-06-14 02:31:01 +02:00
mrcheko
9d40f2e196
Merge remote-tracking branch 'origin/master'
2014-06-13 23:23:25 +04:00
mrcheko
c4e5872620
fix bug http://bugs.openmw.org/issues/1470
2014-06-13 23:22:00 +04:00
scrawl
fe5bbfce3c
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwmechanics/aicombat.cpp
2014-06-13 19:31:33 +02:00
mrcheko
fc6366fb27
Merge remote-tracking branch 'upstream/master'
...
Equipping_Weapon check isn't needed cause there won't be WeapType_None in
that case
Conflicts:
apps/openmw/mwmechanics/character.cpp
2014-06-13 14:12:41 +04:00
scrawl
e458cf1df2
Savegame: Store death counter ( Fixes #1477 )
2014-06-13 02:26:53 +02:00
scrawl
797134aa51
Handle activation scripts in AiActivate ( Fixes #1478 )
2014-06-13 02:26:52 +02:00
scrawl
a54ac579a5
Savegame: Store AiSequence
2014-06-13 02:26:52 +02:00
mrcheko
df7213185f
warning fixes
2014-06-12 23:42:33 +04:00
mrcheko
d6d9df6cec
split getStartTime
2014-06-11 00:20:46 +04:00
mrcheko
979128b2c5
Combat music; some minor combat fixes
2014-06-10 14:20:29 +04:00
mrcheko
698cbba6ef
old bug + comment fix
2014-06-09 23:02:06 +04:00
mrcheko
08e8dab067
merge openmw master
2014-06-09 22:37:49 +04:00
scrawl
1bab74a98d
Fix punishment for stealing 0 value items ( Fixes #1435 )
2014-06-09 03:42:29 +02:00
mrcheko
67abc60264
aiming to moving target in ranged combat ai
...
1) Taking into account target move vector and speed. However aiming is not
ideal, since attack strength can't be controlled directly. I did achieve
almost 100% accuracy updating it everyframe but then thought it would be
unfair, cause AI should mimic human targetting.
2) Also added in this commit func to measure real attack durations for
weapon.
2014-06-08 20:59:26 +04:00
scrawl
69855097ca
Fix an always true condition (Bug #1355 )
2014-06-08 11:22:37 +02:00
scrawl
927ae00454
Fix code that stopped animation immediately after starting it, due to thinking it has completed ( Fixes #1370 )
2014-06-08 11:22:37 +02:00
Marc Zinnschlag
0668019c86
Merge remote-tracking branch 'scrawl/master'
2014-06-06 19:09:24 +02:00
Hallfaer Tuilinn
01283f531e
Fix for Bug #1409
2014-06-06 15:13:25 +02:00
scrawl
f3cece8dec
Fix alchemy allowing same item ID in different slots ( Fixes #1407 )
2014-06-06 14:12:50 +02:00
scrawl
3d103f3785
Don't block hits when in hand-to-hand combat (shield not visible)
2014-06-05 22:27:46 +02:00
scrawl
f53e86cad9
Fix AiCombat being incorrectly added to player ( Fixes #1356 )
2014-06-05 21:51:57 +02:00
scrawl
d2e98c4de1
Fix forced switch to third person on death not always working
...
For instance, when dying from fall damage
2014-06-05 17:21:02 +02:00
scrawl
d2ad2e0f31
Re-enable collision when an actor is resurrected
2014-06-02 20:45:25 +02:00
scrawl
56ff399f30
Say attack voiced dialogue *after* the target is set up
...
Required for the CreatureTargetted filter to function properly
2014-05-28 13:59:31 +02:00
scrawl
e266c39c5d
Implement modFactionReaction instruction ( Closes #1347 )
2014-05-27 14:54:29 +02:00
Marc Zinnschlag
9e21da9636
Merge remote-tracking branch 'scrawl/master'
2014-05-27 08:34:54 +02:00
scrawl
0966755a0c
Store death animation index in CreatureStats
2014-05-26 20:52:32 +02:00
Marc Zinnschlag
3937cfcd8b
Merge remote-tracking branch 'scrawl/master'
2014-05-26 19:02:13 +02:00
scrawl
bfd91c0681
Fix potential NpcStats overwriting issue
2014-05-26 12:31:08 +02:00
Marc Zinnschlag
4aab4bae65
minor cleanup and silenced a warning
2014-05-26 10:14:24 +02:00
Marc Zinnschlag
f0d0a31a19
Merge remote-tracking branch 'mrcheko/master'
2014-05-26 10:08:40 +02:00
mrcheko
8fa7fcdbee
fix bug http://bugs.openmw.org/issues/1335 (1304 as well)
...
though fish detects if actor is swimming, but in MW it attacks even if
the player is knee-deep in water
2014-05-25 21:03:37 +04:00
scrawl
039398c8ae
Basic RefData and CellRef change tracking
...
Wrapped item charge handling in getItemHealth function
2014-05-25 14:30:07 +02:00
mrcheko
c62187bd55
fix bug at http://bugs.openmw.org/issues/1155
...
Though it still can happen sometimes but not in such stupid manner.
2014-05-25 13:31:46 +04:00
mrcheko
559c772906
Merge remote-tracking branch 'upstream/master'
2014-05-25 10:21:54 +04:00
mrcheko
56881cb7c9
fix bugs in aisequence::execute
2014-05-24 23:05:30 +04:00
scrawl
a05c8fd3ce
Make applyEnchantment return the record ID instead of modifying Ptr
2014-05-24 14:58:48 +02:00
scrawl
f09c8ddc9e
Remove a pointless assert
2014-05-23 16:44:51 +02:00
scrawl
b47b2b84f3
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwdialogue/filter.cpp
apps/openmw/mwgui/waitdialog.cpp
2014-05-23 08:39:48 +02:00
Emanuel Guevel
1e4a854433
Remove static method MWWorld::Class::get(&Ptr)
...
It was just adding a level of indirection to Ptr.getClass().
All the call were replaced by that instead. The number of lines changed
is important, but the change itself is trivial, so everything should be
fine. :)
2014-05-22 20:50:00 +02:00
scrawl
4b5f02f644
Remove useless throwing of exception
2014-05-22 15:29:36 +02:00
scrawl
3380e1e1c5
Fix ShouldAttack filter
...
This makes NPCs exit dialogue properly when they should attack as a result of taunting actions.
2014-05-22 12:20:25 +02:00
Marc Zinnschlag
58afa58549
Merge remote-tracking branch 'mrcheko/master'
2014-05-19 22:07:32 +02:00
mrcheko
638df221a6
memory leak fix
2014-05-19 23:29:35 +04:00
Marc Zinnschlag
37f1a49352
Merge remote-tracking branch 'mrcheko/master'
2014-05-18 22:36:40 +02:00
mrcheko
fa14df62b7
fix crash on disappeared target
2014-05-18 23:15:22 +04:00
Marc Zinnschlag
56c4367c1a
Merge remote-tracking branch 'mrcheko/master'
2014-05-18 18:42:23 +02:00
mrcheko
e1249f6a31
actor handle and id confusing fix
2014-05-18 20:13:46 +04:00
mrcheko
66307dd889
travis fix #3 :(
2014-05-18 16:10:14 +04:00
mrcheko
74697f8116
travis fix #2
2014-05-18 15:41:15 +04:00
scrawl
5b76c0893a
Merge branch 'master' of https://github.com/OpenMW/openmw
...
Conflicts:
components/esm/inventorystate.hpp
2014-05-18 12:55:43 +02:00
mrcheko
69c1eb28c5
travis compile fix
2014-05-18 14:39:04 +04:00
mrcheko
aa5647b45e
merge master, resolve conflicts
2014-05-17 19:20:57 +04:00
scrawl
b4ed828e21
Feature #1323 : Implement restocking items (does not handle levelled lists yet)
2014-05-17 14:30:31 +02:00
Marc Zinnschlag
f7c89015f9
Merge remote-tracking branch 'scrawl/master'
2014-05-17 11:50:31 +02:00
scrawl
92c5bb56e0
Un-reverted actorId for AiPursue
2014-05-17 05:34:54 +02:00
scrawl
e266aff561
Savegame: store projectiles
2014-05-17 05:24:32 +02:00
scrawl
e5a21aca53
Refactor projectiles to no longer use MW-objects
2014-05-16 13:33:30 +02:00
scrawl
18852c09d0
Manually re-added AiCombat portion of actorid changes. This is the only one that really matters, and will not suffer from the infinite recursion because it's not included in AiSequence::fill.
2014-05-16 12:28:23 +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
mrcheko
5be37f04ef
Feature 1314: make npc fight creatures
2014-05-16 00:03:48 +04:00
Marc Zinnschlag
3b2ba4f6cd
Merge remote-tracking branch 'scrawl/master'
2014-05-15 14:25:36 +02:00
scrawl
0bc33fa86a
Revert "AiCombat: Removed obsolete door back-off code (now handled in AiAvoidDoor)"
...
Apparently not working for AiCombat due to its higher getPriority(). What should we do here?
This reverts commit a6e1d7ffd6
.
2014-05-15 10:14:47 +02:00
scrawl
b16d444f0f
Fix never clearing graveyard. Oops
2014-05-15 10:05:35 +02:00
scrawl
b6a7aee42e
Fix player not being allowed to use his own items
2014-05-15 09:54:10 +02:00
scrawl
a6e1d7ffd6
AiCombat: Removed obsolete door back-off code (now handled in AiAvoidDoor)
2014-05-15 09:54:10 +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
scrawl
2f13a17a39
Add some more safety checks to spellcasting
2014-05-15 09:54:10 +02:00
scrawl
a609dc5674
Fix exception when getting hit by a trap
2014-05-15 09:54:10 +02:00
scrawl
a76e391ad0
Savegame: store door movement state ( Closes #747 )
2014-05-15 09:54:10 +02:00
scrawl
37b9d2fb0c
Fix a wrong use of reference that causes potential crash
2014-05-15 09:54:10 +02:00
Marc Zinnschlag
d08869a25d
Merge remote-tracking branch 'slothlife/msvc_warning_cleanup'
...
Conflicts:
apps/openmw/mwrender/localmap.cpp
2014-05-15 08:13:15 +02:00
slothlife
f33559fead
Fixes for MSVC warnings, less overall changes
...
Kept some fixes from the first round of review. Found out that several
targets weren't being built with the same basic warnings disabled.
Disabled a few warnings for external libraries specifically, rather than
applying them to all targets.
2014-05-14 20:12:52 -05:00
scrawl
9b67fcc4d7
Merge branch 'master' of https://github.com/OpenMW/openmw
2014-05-14 23:54:25 +02:00
scrawl
9052cc4a57
Savegame: store ActiveSpells
2014-05-14 23:54:15 +02:00
Thomas
d2aada95b4
Fixed AiPursue by fixing underlying issue is Pathto()
2014-05-14 14:11:34 -04:00
Thomas
2425d2c2ab
Added stuck mitigation for AiAvoidDoor
2014-05-14 13:38:10 -04:00
Thomas
993ef1be43
Actor avoiding door asks all surrounding actors to do the same.
2014-05-14 04:05:18 -04:00
scrawl
61187c2fef
Savegame: store actorIds
2014-05-14 09:47:49 +02:00
Thomas
cbcf0f6039
Changed AiEScort to use new PathTo function
2014-05-14 01:44:11 -04:00
scrawl
dfacf8c044
Change ActiveSpells to use ActorId
2014-05-14 07:14:08 +02:00
slothlife
c160a04ede
Revert "Fixes for warnings when building with MSVC"
...
This reverts commit 46eb20b98c
.
2014-05-14 00:03:30 -05:00
scrawl
7697ab37e0
Fixes #1129 : Change summoned creatures to use ActorId
...
Gracefully handles summoned creatures that are left behind in inactive cells.
2014-05-14 06:37:31 +02:00
Thomas
7cd4c93fa4
Changed getNearbyDoor to use MWWorld::Ptr
2014-05-13 23:46:00 -04:00
scrawl
99b4bc721b
Don't attempt to inflict spells on dead actors
2014-05-14 05:37:53 +02:00
scrawl
6c7b3074f5
Fix self-defense for creatures when attacked with a spell
2014-05-14 05:31:19 +02:00
Thomas
58bf7624be
Made code a bit more efficient
2014-05-13 21:52:05 -04:00
scrawl
3cdbcf3c28
Merge branch 'actorid' of https://github.com/OpenMW/openmw
...
Conflicts:
apps/openmw/mwmechanics/creaturestats.cpp
2014-05-14 02:35:05 +02:00
Thomas
203ef580cf
Fixed moving activatable object being incorrectly activated.
2014-05-13 20:32:29 -04:00
scrawl
365ca6c7e1
Fixes #1331 : Manually disable movement state for dead actors.
...
For dead actors, refreshCurrentAnims is no longer called, so we need to disable the movement state manually.
2014-05-13 21:47:45 +02:00
Thomas
6d540c4e07
Removed merging error
2014-05-13 14:24:48 -04:00
Thomas
680890c846
Clarification on some documentation points
2014-05-13 14:21:59 -04:00
Thomas
d6d4d9f75d
Removed destructor documentation
2014-05-13 14:08:08 -04:00
Thomas
ee36ace00b
Undid some code clean up changes, and changed how some includes work
2014-05-13 13:43:50 -04:00
Thomas
598221a8e7
Forgot some files
2014-05-13 13:07:27 -04:00
scrawl
e591d23880
Fixes #894 : Make sure the player's CharacterController is updated when the player is rebuilt. Necessary if the race is changed while we are still in a GUI (e.g. in the review dialog), and an update normally wouldn't occur.
2014-05-13 19:01:02 +02:00
Thomas
9dbe53c722
Merge remote-tracking branch 'upstream/master'
2014-05-13 04:11:07 -04:00
Thomas
2db3c89a9e
Ensures destination is far enough to care about getting stuck
2014-05-13 04:09:21 -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
scrawl
386604bc9d
Fixes #869 : Added methods to control external and internal collision modes separately
...
When an actor dies, we should only disable external collisions, i.e. prevent other actors from colliding with the dead body. The dead actor, however, should still have gravity and collision applied.
Also moved disableCollision to when the death animation finishes, not as soon as the actor's health is 0.
2014-05-13 01:43:52 +02:00
mrcheko
725f6cac5e
AiPursue infinite package updating bug resolved
2014-05-13 00:05:30 +04:00
scrawl
6cc691115b
Savegame: store most of CreatureStats
2014-05-12 21:37:36 +02:00
Thomas
645d174a96
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
apps/openmw/mwmechanics/aisequence.hpp
2014-05-12 14:49:08 -04:00
mrcheko
e4fe78937a
Merge remote-tracking branch 'upstream/master'
2014-05-12 22:06:26 +04:00
scrawl
b0fbea9d57
Removed a wrong assertion. Max drowning time is defined by GMST.
2014-05-11 21:03:27 +02:00
Marc Zinnschlag
2009cf9ad7
Merge remote-tracking branch 'scrawl/master' into openmw-30
2014-05-10 10:48:40 +02:00
scrawl
1444cd9051
Fix AiCombat exception when actor has a lockpick/probe equipped.
...
Don't make NPCs autoEquip lockpicks/probes, since they can't use them.
2014-05-10 00:37:36 +02:00
scrawl
731bc9c275
Fix broken isClass check and renamed variable for clarity
2014-05-09 18:45:49 +02:00
slothlife
46eb20b98c
Fixes for warnings when building with MSVC
...
Most warnings are innocuous (wrong type-specifier for forward
declarations, conversion of literals into unsigned integers, warnings
about methods optimized out), but I believe actual bugs were revealed in
vartypedelegate.cpp and combat.cpp.
2014-05-09 08:32:52 -05:00
cc9cii
cf23721f1b
Windows debug build crash fix.
2014-05-09 20:43:24 +10:00
mrcheko
01810f24b0
A* misses 1st closest node fix
2014-05-06 23:29:39 +04:00
Marc Zinnschlag
729e079b0b
Merge remote-tracking branch 'scrawl/master'
2014-05-06 20:18:19 +02:00
scrawl
1c8c26072d
Crime and self defense fixes
...
- NPCs should still shout messages such as "thief" even if they did not report the crime
- Fixed self defense for NPCs (they no longer attack the player when they were attacked by a non-player actor)
- Fixed self defense for creatures (Fixes #1203 )
2014-05-06 19:15:43 +02:00
scrawl
d2beb814e7
Remove superfluous attack phrases (already done by startCombat)
2014-05-06 18:05:53 +02:00
scrawl
dd9117809d
Say an attack phrase when combat starts
...
Move combat start to a helper method
Added some todo comments
2014-05-06 00:13:31 +02:00
Jeffrey Haines
d4812c3af9
fixed placement of else statement
2014-05-04 17:54:33 -04:00
Jeffrey Haines
78f76842a6
Added else statement
...
Its still dodgy though
2014-05-04 16:56:30 -04:00
Jeffrey Haines
7d5dab214c
#58 - Sneak Skill: functional sneaking
...
Removed sneak checking from individual actor update.
Added sneak checking to Actors::update()
2014-05-04 16:20:09 -04:00
Jeffrey Haines
a65e8393bb
Merged files
2014-05-04 11:33:27 -04:00
mrcheko
f596b698d9
fixes to slow-down at jump startup and infinite air intertia growth
2014-05-04 18:15:07 +04:00
Jeffrey Haines
a469444e53
Player can't detect self
2014-05-04 08:05:32 -04:00
Thomas
dbf06d8c8b
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
apps/openmw/mwmechanics/aipursue.hpp
apps/openmw/mwmechanics/aisequence.hpp
2014-05-04 02:06:43 -04:00
Jeffrey Haines
e1e23447f2
Removed initial check form setSneak
...
It wasn’t needed.
2014-05-03 13:16:07 -04:00
Jeffrey Haines
05e326bdc3
Added update sneak to actors
...
Intends to check the state of a players sneak by asking the question if
each npc can see the player.
2014-05-03 12:48:07 -04:00
scrawl
658c37a299
AiPursue: If we reached the path end, that does not mean we reached the target. Rebuild the path if the target has moved in the meantime.
...
Fixes guards in pursuit activating the dialogue too early.
Also tweaked the activation distance.
2014-05-03 17:17:00 +02:00
scrawl
7bddfc0025
Fix some spelling mistakes.
2014-05-03 12:23:22 +02:00
scrawl
122e606e30
Crime: improvement to arrest on sight for large bounties
...
iCrimeThreshold controls the needed bounty to have guards run to the player and force dialogue. In vanilla, the greeting dialogue is scripted to either arrest the player (< 5000 bounty) or present a death sentence and attack (>= 5000 bounty).
2014-05-03 12:17:44 +02:00
scrawl
fc7e79027a
Fixes #1144 : Don't refreshCurrentAnims when adding already dead actors
2014-05-01 16:55:16 +02:00
mrcheko
9e79fb5b87
fix to broken aiwander logic
2014-05-01 11:41:25 +04:00
mrcheko
e8f7d12c01
uninit bool and invalid iterator bugs fixes
2014-04-30 23:57:19 +04:00
Jeffrey Haines
14ebd8b110
Fixed logic in commit crime
2014-04-30 07:44:29 -04:00
Thomas
10a5bb9464
Made code a bit more standardized and added a good bit of documentation.
2014-04-29 23:40:59 -04:00
Marc Zinnschlag
0c2843b0f7
some missing cleanup
2014-04-29 19:56:33 +02:00
Marc Zinnschlag
f6a876bc3d
added actor ID
2014-04-29 15:27:49 +02:00
Marc Zinnschlag
4eeed4e2c7
Merge remote-tracking branch 'scrawl/return'
2014-04-29 12:27:27 +02:00
scrawl
28ef236f0e
Don't allow setting a new return position if there already is one and we haven't reached it yet
2014-04-29 11:17:07 +02:00
Marc Zinnschlag
8fea2cfa2a
Merge remote-tracking branch 'mrcheko/master'
2014-04-29 10:03:29 +02:00
scrawl
1fd7a07b5e
Merge branch 'master' of https://github.com/OpenMW/openmw into return
...
Conflicts:
apps/openmw/mwmechanics/aisequence.cpp
apps/openmw/mwmechanics/aiwander.cpp
2014-04-29 09:14:13 +02:00
scrawl
9b36a13821
Feature #1289 : NPCs return to default position
...
Make stationary NPCs return to their previous position once combat/crime AI finishes.
2014-04-29 09:09:51 +02:00
Thomas
885228ec02
Merge remote-tracking branch 'upstream/master'
...
Conflicts:
apps/openmw/mwmechanics/actors.cpp
2014-04-28 12:27:57 -04:00
Marc Zinnschlag
421679b319
Merge remote-tracking branch 'scrawl/master'
2014-04-28 15:13:09 +02:00
mrcheko
35c1724d39
unblock vertical aiming for combatants
2014-04-28 16:34:49 +04:00
scrawl
0796815da0
Ignore dead actors in getActorsFollowing/Fighting
...
Prevents dead enemies from disallowing resting near them
2014-04-28 11:44:56 +02:00
Marc Zinnschlag
0b2371a05d
Merge remote-tracking branch 'thoronador/fix-minor-stuff'
2014-04-28 10:59:34 +02:00
Marc Zinnschlag
af322a9f77
Merge remote-tracking branch 'scrawl/master'
2014-04-28 10:48:57 +02:00
scrawl
1da99d9fc7
Remove unused variable
2014-04-28 10:26:24 +02:00
Thomas
dc54bd5a5f
Merge remote-tracking branch 'upstream/master'
2014-04-27 20:56:45 -04:00
Thomas
c2127845af
Added onKnockdown command
2014-04-27 20:54:22 -04:00
mrcheko
22cdb166f2
warning fix, vars renaming
2014-04-27 22:38:04 +04:00
Thoronador
1b8c975d5b
minor performance improvements in apps/openmw
...
Checking for emptiness using size() might be inefficient, because
it can take linear time, while empty() is guaranteed to take only
constant time.
For non-primitive types, postfix ++ operators are inefficient
compared to prefix ++ operators, because post-increment usually
involves keeping a copy of the previous value around.
2014-04-27 19:10:23 +02:00
Marc Zinnschlag
ca097e146b
Merge remote-tracking branch 'jeffreyhaines/master'
2014-04-27 17:35:10 +02:00
Jeffrey Haines
edbc319c42
fixed logic. ||
2014-04-27 10:05:34 -04:00
Jeffrey Haines
52bb7c3f69
fixed logic. !
2014-04-27 09:55:38 -04:00
Jeffrey Haines
7599b26d30
Fixed: creatures won't witness crimes
...
and potential crash.
2014-04-27 09:37:43 -04:00
Jeffrey Haines
0409e18a0e
revert
2014-04-27 09:35:49 -04:00
Jeffrey Haines
b9bd4bc126
broken
2014-04-27 09:34:59 -04:00