1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-29 07:45:31 +00:00
Commit graph

3002 commits

Author SHA1 Message Date
Andrei Kortunov
5617bb3f0c Improve pitch factor handling for crossbow animations (bug #4672) 2018-10-09 11:35:28 +04:00
Andrei Kortunov
e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
Capostrophic
09aecb955c getSkill usage cleanup (bug #4671) 2018-10-08 17:06:30 +03:00
Bret Curtis
585313a71f
Merge pull request #1953 from Capostrophic/animation
Fix first person swimming animations
2018-10-06 14:24:48 +02:00
Capostrophic
34e45efac3 Fix first person swimming animations 2018-10-05 17:29:49 +03:00
Marc Zinnschlag
b410d87aae Merged pull request #1952 2018-10-03 13:19:28 +02:00
Andrei Kortunov
07ccc5abdb Remove non-looping effects after rest 2018-10-01 21:57:13 +04:00
Marc Zinnschlag
33044add97 Merged pull request #1938 2018-09-28 11:31:45 +02:00
Marc Zinnschlag
5fa9b32e76 Merged pull request #1937 2018-09-27 11:06:21 +02:00
Capostrophic
ba2fd8b795 Rename reflected absorb spells setting and add it to Advanced tab 2018-09-26 21:21:03 +03:00
Andrei Kortunov
8af021d729 Restore dynamic stats for actors in inactive cells (bug #1875) 2018-09-26 07:46:28 +04:00
Capostrophic
d2cad229f8 Ugly hack: don't reset player idle and movement animations in first person view 2018-09-25 17:09:54 +03:00
Capostrophic
77fb4d6dd2 Make sure the idle animations are reset while jumping 2018-09-24 19:30:02 +03:00
Capostrophic
56ef11b023 Reset sneak and swim idle animations when moving 2018-09-24 19:30:02 +03:00
Capostrophic
713330351b Experimental animation regression fixes
Don't unnecessarily start movement and jump animations from loop start
Don't play movement animation until jumping animation finishes
2018-09-24 19:30:02 +03:00
Marc Zinnschlag
6ce6108eb4 Merged pull request #1932 2018-09-24 11:57:08 +02:00
David Cernat
995d20348f [General] Always use correct ranged weapon & ammo for ranged attack sync
Previously, the player's currently selected weapon was being used in ranged attacks as in the original melee-oriented attack sync, which meant that shooting one type of projectile and then equipping another while the old projectile was still in the air turned the old projectile into the new projectile upon impact.

Additionally, avoid running most of the code in MechanicsHelper::assignAttackTarget() for non-hitting melee and ranged attacks.
2018-09-23 02:30:31 +03:00
Andrei Kortunov
cd60d4fdf0 Store character controller in the variable make code less bulk 2018-09-22 21:13:00 +04:00
Andrei Kortunov
2ac2d01432 Optimize drowning state update 2018-09-22 21:12:56 +04:00
Andrei Kortunov
90d35aaa8f Handle current health level during levelup (bug #4649) 2018-09-22 07:48:47 +04:00
Andrei Kortunov
1634284739 Cache player's position outside of loops 2018-09-21 22:39:47 +04:00
Andrei Kortunov
b9346798c6 Optimize combat music update 2018-09-21 22:34:18 +04:00
Andrei Kortunov
fb484c6fde Optimize AI loop a bit 2018-09-21 19:02:28 +04:00
Marc Zinnschlag
7be9f2ca45 Merged pull request #1891 2018-09-21 11:38:19 +02:00
Andrei Kortunov
bdd9eba2b8 Use C++ limits instead of C ones 2018-09-20 16:02:26 +04:00
Andrei Kortunov
276b7830a9 Mass potion creation (feature #4642) 2018-09-20 15:45:14 +04:00
Marc Zinnschlag
3761aaadfd Merged pull request #1928 2018-09-20 13:31:56 +02:00
Marc Zinnschlag
29bc5cbecf Merged pull request #1925 2018-09-20 13:14:55 +02:00
Andrei Kortunov
6f4f6a155f Combat AI: take ranged weapon speed in account 2018-09-19 12:23:24 +04:00
David Cernat
b5f46ada73 [General] Synchronize projectile speed for ranged attacks
This is done by including the final attackStrength used for ranged attacks in packets and then applying it in WeaponAnimation::releaseArrow() on other clients.
2018-09-18 01:13:48 +03:00
Andrei Kortunov
70ed8fd1a9 Use constants instead of widely used magic numbers (task #4645) 2018-09-17 19:22:50 +04:00
Bret Curtis
07be9ae8ac
Merge pull request #1926 from akortunov/warnfix
Fix MSVC warning about possibly uninitialized movestate variable
2018-09-17 17:10:25 +02:00
Andrei Kortunov
9c8fc0557a Fix MSVC warning about possibly uninitialized movestate variable 2018-09-17 14:45:16 +04:00
David Cernat
7281f9fc42 [Client] Prevent unilateral paralysis of dedicated players & actors
This is a temporary workaround until active effect synchronization is implemented.
2018-09-16 15:34:57 +03:00
Andrei Kortunov
ae1c054635 Make GetPCJumping return true only when jumping (bug #4641) 2018-09-16 11:58:01 +04:00
David Cernat
9d2dc96a2e [Client] Use RANGED type for ranged attacks that haven't hit a target 2018-09-14 13:23:43 +03:00
Marc Zinnschlag
ea053d9f47 Merged pull request #1881 2018-09-14 11:43:11 +02:00
Marc Zinnschlag
6100e34051 Merged pull request #1912 2018-09-12 12:04:49 +02:00
Andrei Kortunov
0136f0552b Do not update mIdleState directly 2018-09-11 22:24:44 +04:00
Andrei Kortunov
929d78d6a3 Randomize attacks for non-bipedal creatures with Weapon flag 2018-09-11 22:24:44 +04:00
Andrei Kortunov
0440c11ccd Fix swim crossbow animations 2018-09-11 22:24:44 +04:00
David Cernat
fcd31bf4a6 [General] Fix problems with the synchronization of ranged attacks
Projectile hits now send Attack packets with RANGED attacks, and their success or failure is now synchronized.

Strike enchantments no longer require a valid victim to be synchronized.

Additional debug messages have been added for attacks.
2018-09-11 11:56:45 +03:00
Andrei Kortunov
e5a81b1f99 Fix some issues, found by Coverity Scan 2018-09-10 16:35:27 +04:00
David Cernat
7d221509cd [Client] Move item magic hook to correct location
Previously, synchronization for strike enchantments was partially broken because it triggered the sending of ITEM_MAGIC attack packets, which are only supposed to be sent when a spell is cast from a magical inventory item.
2018-09-10 12:02:21 +03:00
David Cernat
c9ad411dd3 [Client] Fix logic for setting applyProjectileEnchantment in attack sync 2018-09-09 22:33:48 +03:00
Evil Eye
6705e5aae4 forget about the setting till #2887 is implemented at least 2018-09-08 11:21:43 +02:00
Evil Eye
bbcdfd4078 Implements vanilla's off-by-one error, fixing #4611 2018-09-06 21:49:50 +02:00
Capostrophic
9408876b58 Utilize AI GMSTs for priority rating (feature #4632)
Fix on-target effect rating calculation
2018-09-06 17:39:37 +03:00
Capostrophic
d758b573e2 Fix erroneous assumption that ranged weaponry has speed
Restrict speed mult to melee weaponry
2018-09-01 12:13:18 +03:00
Capostrophic
ceb6121b33 Better checks for enemy incapacitation 2018-09-01 12:13:18 +03:00
Capostrophic
2965373ed6 Avoid potential zero division 2018-09-01 12:13:18 +03:00
Capostrophic
e66be02e2e Account for enemy armor rating in weapon rating 2018-09-01 12:13:18 +03:00
Capostrophic
fa3e45fa7d Slight cleanup 2018-09-01 12:13:18 +03:00
Capostrophic
533b72eff6 Cache weapon type strings 2018-09-01 12:13:18 +03:00
Capostrophic
00c847db19 Make AI Blind, Sound and Silence effect rating more logical 2018-09-01 12:13:18 +03:00
Capostrophic
374e98d665 Make rateWeapon more sensible and account for weapon speed 2018-09-01 12:13:18 +03:00
Marc Zinnschlag
78a84042ad Merged pull request #1901 2018-09-01 11:08:24 +02:00
Marc Zinnschlag
3b01355f27 Merged pull request #1895 2018-09-01 11:06:38 +02:00
Marc Zinnschlag
f2981a81c9 Merged pull request #1900 2018-09-01 11:06:10 +02:00
Capostrophic
7ef6fa9f61 Remove deprecated GMST get* functions 2018-08-29 18:38:12 +03:00
Andrei Kortunov
5d54214acb Optimize combat action iteration 2018-08-29 17:20:34 +04:00
Andrei Kortunov
2cac8b59b1 Use square distance to target 2018-08-29 17:20:32 +04:00
Andrei Kortunov
4c0ef4ddb6 Do not initialize magic schools map every time we access it 2018-08-29 17:20:32 +04:00
Capostrophic
23834b5ed8 Don't apply falling damage twice (bug #4608) 2018-08-29 15:09:03 +03:00
Capostrophic
b8ba9092cb Purge effects from all permanent spells with the same ID 2018-08-29 14:09:43 +03:00
Capostrophic
ed1f8f7be7 Remove effects from all active spells with the same ID 2018-08-29 13:52:03 +03:00
Capostrophic
6c47f95677 Make RemoveSpellEffects affect permanent spells (bug #3920)
Also make it remove the effects but not the spells themselves
2018-08-29 13:52:03 +03:00
Marc Zinnschlag
c280a71b33 Merged pull request #1897 2018-08-29 12:15:05 +02:00
Marc Zinnschlag
57922a272c Merged pull request #1899 2018-08-29 12:13:28 +02:00
Marc Zinnschlag
6fc6fef72e Merged pull request #1892 2018-08-29 12:08:13 +02:00
Capostrophic
7f459f0610 Knockdown and godmode fixes
Make sure an incapacitated player is not able to jump
Cleanup of redundant player and godmode checks in creature class
Make sure the player is not knocked down while in godmode
2018-08-28 16:42:15 +03:00
Capostrophic
079b60c1ea Don't allow actors to use sneaking while flying (bug #4618) 2018-08-28 14:32:03 +03:00
David Cernat
3bd8aa82fe [General] Reduce inventory-sending hooks to just 2 in ContainerStore
Whenever an item is added to or removed from the player's ContainerStore, that player sends a PlayerInventory packet with just that addition or removal.

This eliminates all the unnecessary packet spam related to oversized PlayerInventory packets that had existed in one form or another since the initial implementation of inventory sync in 1b259e2d33

Additionally, move booleans from BasePlayer to LocalPlayer when they are only needed on the client, and make the usage of the isReceivingQuickKeys boolean consistent with the new isReceivingInventory boolean by having them both in the processors of their associated packets.
2018-08-28 05:01:52 +03:00
Andrei Kortunov
d448b802ef Add a small threshold for player turning animations 2018-08-26 22:58:26 +04:00
Andrei Kortunov
60698e6f8a Optimize new magic effects update system 2018-08-26 21:02:14 +04:00
Bret Curtis
78d9787212
Merge pull request #1880 from Capostrophic/landing
Play landing sound manually and ignore land soundgen textkeys (bug #2256)
2018-08-23 08:40:55 +02:00
Capostrophic
f74ebb64af Correct special case soundgen comparisons 2018-08-22 16:36:15 +03:00
Capostrophic
ae0a6a22b3 Move "land" check earlier 2018-08-22 14:47:06 +03:00
Capostrophic
2b45fd84ea Play landing sound manually and ignore land soundgen textkeys (bug #2256) 2018-08-21 19:03:03 +03:00
Capostrophic
910065f38f Make some more optimizations to actor processing loops 2018-08-21 17:02:56 +03:00
Capostrophic
b77d733c3e Fix freeze in getActorsSidingWith 2018-08-21 16:47:29 +03:00
David Cernat
03832f933b [Client] Send only individual items in PlayerInventory packets
For a long time, whenever a PlayerInventory packet was sent, it contained all the items in the player's inventory, because that's how Koncord originally implemented it and I always had too many other priorities to go back and rework it.

From now on, clients only send PlayerInventory packet with the one item added or removed, with the single exception being trading with merchants, where the entire inventory is still sent for the time being.
2018-08-21 10:10:06 +03:00
Capostrophic
74229490e4 Use the correct skill for creature AI weapon hit chance rating 2018-08-20 21:38:57 +03:00
David Cernat
a083439139 Merge pull request #469 from davidcernat/master while resolving conflicts
# Conflicts:
#	apps/openmw/main.cpp
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwdialogue/dialoguemanagerimp.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
#	apps/openmw/mwworld/worldimp.hpp
2018-08-20 14:08:44 +03:00
Bret Curtis
3c827da702
Merge branch 'master' into combat_anims 2018-08-19 10:03:39 +02:00
Bret Curtis
3b2781bf89
Merge pull request #1720 from akortunov/playvfx
Rework spell VFX management
2018-08-19 10:00:38 +02:00
Marc Zinnschlag
20c53594de Merged merge request !36 2018-08-18 12:06:35 +02:00
James Carty
4489838ea3 Fix incorrect function call 2018-08-17 22:35:04 +01:00
James Carty
513e99148e Fix function with no return value 2018-08-17 20:18:20 +01:00
Andrei Kortunov
d7ca087f59 AiCast: fix aiming 2018-08-17 12:41:13 +04:00
Andrei Kortunov
31f8bea1dd Rework spell effects management 2018-08-17 12:41:13 +04:00
Marc Zinnschlag
3489951410 Merged pull request #1866 2018-08-17 09:36:44 +02:00
James Carty
43f1c9163c Fix issue in which murder wouldn't be reported after paying fine 2018-08-16 18:58:51 +01:00
Andrei Kortunov
16edac8c47 Fix incorrect 'preparing' word spelling 2018-08-16 17:47:06 +04:00
Andrei Kortunov
a73d42e711 Do not stop idle animation in spellcasting stance 2018-08-16 16:56:42 +04:00
Andrei Kortunov
b7a448cf42 Update idle animations after reset of mIdleState (bug #4531) 2018-08-16 16:56:42 +04:00
Andrei Kortunov
3a6c480d41 Do not reset idle animations when turning 2018-08-16 16:56:42 +04:00
Andrei Kortunov
15fa47827b AiCombat: Avoid jittering when aiming in melee 2018-08-16 16:56:42 +04:00
Andrei Kortunov
e444b9581c Do not play min attack -> max attack animation when attack strength is 0 (bug #4591) 2018-08-16 16:56:39 +04:00
Andrei Kortunov
8a48258b1b Fix attack after shoot 2018-08-16 15:51:11 +04:00
Bret Curtis
dcd381049c
Merge pull request #1872 from akortunov/extended_logging
Use new logging system
2018-08-16 11:38:29 +02:00
James Carty
4b0a6074e7 Add comment 2018-08-16 00:29:14 +01:00
James Carty
6889432030 Move code to seperate functions for reusability 2018-08-16 00:26:02 +01:00
Andrei Kortunov
5a4d0cec3a Use new logging system for game itself 2018-08-14 23:05:43 +04:00
Yohaulticetl
7e9ce99062 Made the werewolf check optional 2018-08-14 19:56:40 +02:00
Yohaulticetl
18e51e0e98 Added check for werewolves 2018-08-14 19:44:03 +02:00
Yohaulticetl
d19cbdb652 Factored strength into hand-to-hand combat 2018-08-14 19:44:03 +02:00
Capostrophic
22162dcbda
Replace std::find with std::set::find where applicable 2018-08-14 18:14:43 +03:00
Capostrophic
53599290c3 Make search for followers in getEnemiesNearby recursive 2018-08-14 16:14:48 +03:00
Capostrophic
75bd6e1d28 Make search for allies in actorAttacked recursive 2018-08-14 15:41:34 +03:00
Capostrophic
7029ed0e8d Refactor follower and enemy actor processing
Make another exception for wander packages when finding allies (bug #4304)
2018-08-14 15:36:52 +03:00
Bret Curtis
d25147a930
Merge pull request #1863 from Capostrophic/aiming
Use the correct spell projectile speed GMST in AI aiming (bug #3948)
2018-08-14 10:29:22 +02:00
Bret Curtis
6a32a4aed0
Merge pull request #1810 from akortunov/weaponfix
Use fallbacks for missing weapon animations
2018-08-14 10:29:01 +02:00
Allofich
fd89fa415a Do modifiers for dynamic stats before attributes
(Fixes #4231)
2018-08-13 21:59:27 +09:00
Allofich
2cc1b52baf Drain and fortify fixes for dynamicStats
(Fixes #3049)
2018-08-13 21:59:26 +09:00
Andrei Kortunov
8de3383612 Add zero-duration spells effects to effect list (bug #3533) 2018-08-12 17:25:35 +04:00
Andrei Kortunov
307e0103dc Use fallbacks for missing weapon animations (bug #4470) 2018-08-12 16:14:24 +04:00
David Cernat
a3b9274365 [Client] Make it possible to check if an item ID belongs to a bound item 2018-08-11 16:02:09 +03:00
Capostrophic
3527f3800e Use the correct spell projectile speed GMST in AI aiming 2018-08-10 21:21:21 +03:00
Marc Zinnschlag
1cfc1f9bdb Merged pull request #1666 2018-08-10 12:23:17 +02:00
Marc Zinnschlag
0aedb3aada Merged puil request #1808 2018-08-10 12:22:13 +02:00
Andrei Kortunov
cde95979d0 Fix combat engagement for creatures 2018-08-10 09:29:01 +04:00
Andrei Kortunov
780648b584 Do not reset idle animations if we do not have ammo 2018-08-09 16:39:46 +04:00
Andrei Kortunov
df577babe9 Increase priority of 1st-person weapon animations to avoid issues with animation blending 2018-08-09 16:39:20 +04:00
Andrei Kortunov
71bcc11ba5 Apply only crossbow reload animation to upper body 2018-08-09 16:37:08 +04:00
Andrei Kortunov
a0d0e5d2db Give jumping animations higher priority than movement ones 2018-08-09 16:19:03 +04:00
Andrei Kortunov
6a03aa6fdb Reduce jittering during turning animations for player 2018-08-09 16:19:00 +04:00
Andrei Kortunov
126b2fdd42 Use the isPlayer variable to do not check if the current actor is player every time 2018-08-09 11:16:19 +04:00
Andrei Kortunov
51af729305 Do not use headtracking in the 1st-person view (bug #4573) 2018-08-08 23:29:03 +04:00
Capostrophic
d15dcaff68
Don't adjust weapon rating according to weapon condition twice 2018-08-03 19:22:58 +03:00
Capostrophic
4c7f3cf626
Merge branch 'master' into weaponpriority 2018-08-03 14:07:11 +03:00
Marc Zinnschlag
4d280add81 Merged pull request #1843 2018-08-03 12:56:17 +02:00
Andrei Kortunov
712c9995db Rename mIsScripted variable because its name is ambiguous 2018-08-03 12:01:31 +04:00
Capostrophic
9d85b7c2d3
Use the actual damage for deducting weapon rating 2018-08-02 15:20:07 +03:00
Capostrophic
73d5496711
Revert addition change 2018-08-02 13:01:23 +03:00
Capostrophic
80f3bd9f86 Don't apply iWereWolfFleeMod to creatures 2018-08-02 08:36:15 +03:00
Capostrophic
bec47dfb7c Make ranged weapon bonus a distance-dependent multiplier 2018-08-01 19:57:05 +03:00
Capostrophic
382b68a081
Combat AI: take the actual hit chance in account when rating weapon 2018-08-01 19:27:19 +03:00
Marc Zinnschlag
1c13256456 Merged pull request #1829 2018-08-01 16:17:37 +02:00
Marc Zinnschlag
0c507b74bc Merge pull request #1832 2018-08-01 16:13:59 +02:00
Capostrophic
be2e7e9e09 Make casting caster-linked on-self effects no-op (bug #4378) 2018-08-01 02:41:57 +03:00
Andrei Kortunov
5b92910829 Limit difficulty scaling, as mentioned in docs 2018-07-31 21:14:16 +04:00
Andrei Kortunov
c07cc0dc40 Reset animation state after weapon unequipping 2018-07-30 22:24:25 +04:00
David Cernat
b57807407a [General] Implement RecordDynamic packet, part 1
Spell, potion, enchantment, creature, NPC, armor, book, clothing, miscellaneous and weapon record data can now be sent in a RecordDynamic packet. Additionally, the packets include data related to associated magical effects (for spells, potions and enchantments), data related to default inventory contents (for creatures and NPCs) and data related to body parts affected (for armor and clothing).

The server now has associated script functions for setting most of the details of the above, with the main exception being individual creature and NPC stats.

Records can either be created entirely from scratch or can use an existing record (set via the baseId variable) as a starting point for their values. In the latter case, only the values that are specifically set override the starting values. Creature and NPC records also have an inventoryBaseId that can be used on top of the baseId to base their inventories on another existing record.

The client's RecordHelper class has been heavily expanded to allow for the above mentioned functionality.

When players create spells, potions and enchantments as part of regular gameplay, they send RecordDynamic packets that provide the server with the complete details of the records that should be created. When they create enchantments, they also provide the server with armor, book, clothing and weapon records corresponding to the items they've enchanted.

This functionality added by this packet was originally supposed to be exclusive to the rewrite, but I've gone ahead and tried to provide it for the pre-rewrite in a way that can mostly be reused for the rewrite.
2018-07-30 10:56:26 +03:00
Capostrophic
c79f96d0d2 Implement ranged crits (feature #3703) 2018-07-29 19:42:44 +03:00
Andrei Kortunov
1d463d129d Finish AiTarget package, if destination is blocked by other actor 2018-07-29 19:41:31 +04:00
Andrei Kortunov
75835c8326 Prevent NPC from chosing farther pathgrid node 2018-07-29 18:18:05 +04:00
Andrei Kortunov
6d5d0039ec Make sure we apply OT_Murder only once 2018-07-28 20:45:33 +04:00
David Cernat
d93b67ef21 [General] Sync soul refIds for items and add related script functions 2018-07-26 22:37:04 +03:00
David Cernat
36ac2d9de4 [Client] Set packetOrigin for all ObjectList packets sent 2018-07-23 01:39:43 +03:00
David Cernat
038757b91a [General] Temporarily revert to original rotation animation sync
I originally added rotation animation sync as part of commit 068a45be87. Unfortunately, it meant the PlayerPosition packets were now twice as large as they had been before, which was less than ideal for such a frequently sent packet, which is why Koncord switched to a more optimized approach in commits 5f30dfd5db and d67db1a9bd.

Recently, there have since been some rotation animation problems in OpenMW, which have broken the way Koncord's approach looks. My original approach still looks somewhat okay, so I'm switching back to it until we can figure out how to reuse it under the current circumstances.
2018-07-21 19:27:36 +03:00
David Cernat
20e0100706 [General] Rework Attack packets and add synchronization for item magic 2018-07-21 14:41:27 +03:00
David Cernat
21d5bb4d4e
Merge pull request #460 from OpenMW/master
Add 0.7.0 commits up to 20 Jul 2018
2018-07-21 05:59:57 +03:00
Marc Zinnschlag
78a2725169 Merged pull request #1806 2018-07-17 12:42:41 +02:00
Andrei Kortunov
38fa4e0a8a Do not play un-equipping animation when we switch to hand-to-hand 2018-07-17 14:10:04 +04:00
Andrei Kortunov
30716344f2 Fix possible division by zero in the fatigue calculation (bug #4510) 2018-07-16 13:24:12 +04:00
David Cernat
3649cf553f [General] Rename PlayerKillCount into WorldKillCount
This should clarify the real meaning of the packet and its associated event.

The event itself has been renamed from OnPlayerKillCount to OnWorldKillCount.
2018-07-15 05:34:59 +03:00
David Cernat
6ebe09375f [General] Implement ObjectActivate packet & associated script functions 2018-07-15 03:16:04 +03:00
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
2018-07-14 03:57:05 +03:00
Andrei Kortunov
3d1daaebab Rework manual spellcasting (e.g. via scripts) 2018-07-12 16:24:25 +04:00
Capostrophic
5cb9dc9d12 Use SpellTurnLeft/TurnRight animation groups 2018-07-10 22:19:56 +03:00
Andrei Kortunov
1c35e20fcc Use 1h animations as fallback for crossbows 2018-07-10 17:02:51 +04:00
Andrei Kortunov
75dcbea365 Apply weapon reload animations only for upper body 2018-07-10 17:00:48 +04:00
David Cernat
c984fc0881 [Client] Allow AiActivate to be used with specific Ptrs, not just refIds 2018-07-10 08:21:24 +03:00
David Cernat
b86155dc11 [Client] Allow AiFollow package to have infinite distance when desired 2018-07-10 01:40:57 +03:00
David Cernat
5043fb4246 [Client] Disable clientside disarming of traps 2018-07-08 02:38:10 +03:00
David Cernat
f3892d697b [Client] Disable clientside locking and unlocking of objects 2018-07-08 00:06:01 +03:00
David Cernat
e3e1cfc549 [Client] Add forgotten comparison in crimeTime and deathTime check 2018-07-06 20:49:08 +03:00
David Cernat
4b30a44816 [Client] Compare crimeTime and deathTime when NPCs forgive player crimes
Previously, all crime witnesses stopped being hostile to a respawning player for as long as the player's diedSinceArrestAttempt was true. That meant that, in an area with no guards to arrest the player, crime witnesses did not enage in combat with the player at all ever again until diedSinceArrestAttempt became false.

This commit makes it so the time of the last crime is recorded for each witness, and that is then compared with the time of the LocalPlayer's last death for a one-time crime forgiveness during that player's current life.

This is essentially a gameplay adjustment for "singleplayer with respawns," and will have to be reworked to make sense for every player in multiplayer, though that requires reworking the crime system as a whole and is thus on hold.
2018-07-06 14:17:54 +03:00
Marc Zinnschlag
d9de8ccb5b Merged pull request #1781 2018-07-06 11:55:45 +02:00
Capostrophic
9abfabb065
Ensure forward-compatibility of death animations in old saves (fixes #4274) 2018-07-05 22:49:40 +03:00
David Cernat
c075496748 [General] Replace deathReason in death packets with a killer variable
Add serverside script functions for determining the killers of both players and actors.

Use unsigned ints for script functions returning an object or actor's refNumIndex or mpNum.

Remove updateDeadState() from LocalPlayer and make its code part of updateStatsDynamic() for simplicity.
2018-07-05 22:24:51 +03:00
Capostrophic
faf3e9ba5a Make spellcasting stance transition more smooth (fixes #4358)
If a movement animation was identical to the previous one that was played, restart it from the point the previous animation ended
2018-07-05 01:57:34 +03:00
David Cernat
76731f5def [Client] Don't remove SummonKeys with actorIds of -1
This prevents summon duplication caused by a SummonKey sometimes being deleted immediately after being created, before the server can send back an ObjectSpawn packet spawning a creature that can be attached to the SummonKey.
2018-07-05 01:11:45 +03:00
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
2018-07-04 01:52:29 +03:00
Koncord
53346e2663 [Client] Return 0 if effect not found 2018-07-03 03:43:38 +08:00
David Cernat
8ce225b1cc [Client] Use the casters of damage-dealing spells as death reasons 2018-07-02 00:42:32 +03:00
David Cernat
958b220835 [General] Send summon duration to server in ObjectSpawn packets 2018-07-01 00:43:29 +03:00
Capostrophic
bccba24c40 Make unarmed creature attacks not affect armor condition (fixes #2455) 2018-06-29 20:18:28 +03:00
Andrei Kortunov
5455490ad2 Avoid fall-through in spell selection 2018-06-28 11:12:48 +04:00
Andrei Kortunov
ec73011617 Clean temporary storage if we assign new AI package (bug #4464) 2018-06-27 12:52:43 +04:00
Andrei Kortunov
ee45f54b53 Refactor AiTemporaryStorage usage 2018-06-27 12:48:34 +04:00
Andrei Kortunov
3c7ab976c3 Ignore movement from scripted animations (bug #4475) 2018-06-27 08:22:45 +04:00
Andrei Kortunov
c9756cee4c Fast-forward death animation to end if death animation was finished earlier (regression #4468) 2018-06-20 12:37:58 +04:00
Capostrophic
6c23caadd7 Fix crash when a target in a different cell is (un)locked 2018-06-19 20:43:18 +03:00
Capostrophic
0c4fa55f16 Make Open spells casted by anything trigger player crime event (fixes #4461) 2018-06-19 17:04:38 +03:00
Andrei Kortunov
5fd3ec1035 Implement unlockable locks with 'lock 0' console command 2018-06-19 14:17:33 +04:00
Marc Zinnschlag
a8ad530db9 Merged pull request #1749 2018-06-19 11:33:08 +02:00
Marc Zinnschlag
2a52ade219 Merged pull request #1760 2018-06-19 11:26:41 +02:00
Andrei Kortunov
e08b0d3070 Ignore lights without CanCarry flags when NPC selects torch (bug #4457) 2018-06-16 17:34:49 +04:00
Andrei Kortunov
9c3da41130 Add murder bounty when a player follower commits murder (bug #2852) 2018-06-15 14:31:09 +04:00
Marc Zinnschlag
2b35c5efd7 Merge remote-tracking branch 'upstream/master' 2018-06-13 18:13:15 +02:00
Marc Zinnschlag
aea481eacb Merged pull request #1753 2018-06-13 18:12:38 +02:00
Andrei Kortunov
61c968d550 Ignore broken items when search for replacement (bug #4453) 2018-06-13 18:39:02 +04:00
Andrei Kortunov
81b78a82e8 AI: try to open doors every AI_REACTION_TIME seconds (bug #4454) 2018-06-13 17:47:32 +04:00
Bret Curtis
3e4dc31e39
Merge branch 'master' into fatigue 2018-06-13 10:04:32 +02:00
Andrei Kortunov
9c45cc7e48 Use player reference instead of pointer 2018-06-12 22:05:00 +04:00
Andrei Kortunov
f299be8158 Play scripted animations even if SkipAnim is used 2018-06-12 16:07:36 +04:00
Andrei Kortunov
25bb7c1826 Make 'PlayGroup idle' to cancel scripted animations 2018-06-12 14:04:03 +04:00
Andrei Kortunov
0e441d48ac Give scripted animations highest priority (bug #4286) 2018-06-12 12:55:28 +04:00
Andrei Kortunov
0c92655250 Avoid code duplication in character manager 2018-06-12 11:51:54 +04:00
Andrei Kortunov
e3812f4075 Check creature stats only for actors 2018-06-12 11:27:18 +04:00
Andrei Kortunov
ebaa6fb5a2 Play death scream only once 2018-06-12 09:55:43 +04:00
Andrei Kortunov
427be928d0 Do not update animation state for dead actors 2018-06-11 23:17:54 +04:00
Andrei Kortunov
977a27ecb7 Do not clear corpses until end of death animation (bug #4307) 2018-06-11 22:29:32 +04:00
Andrei Kortunov
a42c663fd7 Do not interrupt scripted animations by death animation (bug #4286) 2018-06-11 18:53:25 +04:00
Andrei Kortunov
d0619cfb35 Play death animation for non-persisting actors with 0 health (bug #4291) 2018-06-11 18:52:20 +04:00
Andrei Kortunov
6099735c60 Early out only when scripted animation is playing 2018-06-11 17:52:58 +04:00
Andrei Kortunov
e234dd2a36 Do not interrupt scripted animations 2018-06-11 17:18:51 +04:00
Andrei Kortunov
9fd2d57b86 Move previous items to player 2018-06-10 16:21:19 +04:00
Andrei Kortunov
f977c6876f Bound items: store item ID instead of pointer 2018-06-10 16:21:19 +04:00
Andrei Kortunov
4de9d9fa77 Split adjustBoundItem() 2018-06-10 16:21:19 +04:00
Andrei Kortunov
d1b1cb748d Reequip previous item only if the expired bound item was equipped 2018-06-10 16:21:19 +04:00
Andrei Kortunov
9b72a6ac69 Use the MWWorld::Ptr() instead of string ID 2018-06-10 16:21:19 +04:00
Andrei Kortunov
0375bedab2 Equip previous item after a bound item expires (bug #2326) 2018-06-10 16:21:19 +04:00
Andrei Kortunov
ae87e0d3fc Do not reset mUpperBodyState for weapon->weapon switch (regression #4446) 2018-06-09 15:34:08 +04:00
Marc Zinnschlag
7d9de93fd3 Merged pull request #1477 2018-06-09 10:52:35 +02:00
Andrei Kortunov
6ed2773299 Do not stack return packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
74a2cbe696 AI: return back after pursuit 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3d0631cfcc Store last AI package in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
3a0ee78d2b AiTravel: store mHidden flag in savegame 2018-06-08 21:53:47 +04:00
Andrei Kortunov
2f5beb8853 Remove unnecessary hack 2018-06-08 21:53:47 +04:00
Andrei Kortunov
57d686131e Remove redundant condition 2018-06-08 21:53:47 +04:00
Andrei Kortunov
5105c67642 Add mHidden field to AiTravel 2018-06-08 21:53:47 +04:00
Andrei Kortunov
81f29d8dcd AiWander: resume moving to destination after combat 2018-06-08 21:53:47 +04:00
Andrei Kortunov
18ff097e4a Add the parameter to AiSequence::stack() to control ability to cancel other AI packages 2018-06-08 21:53:47 +04:00
Andrei Kortunov
9d27eb197f AiWander: return to initial position only after combat 2018-06-08 21:53:47 +04:00
Capostrophic
24c1ee7744 Use relative stat difference for haggling 2018-06-08 19:00:45 +03:00
Capostrophic
b7026df551 Improve the offered price formula (Fixes #2222) 2018-06-08 19:00:45 +03:00
Andrei Kortunov
fed10e87aa Store integer actor ID in AI packages (bug #4036) 2018-06-08 19:57:41 +04:00
David Cernat
2a3c74bfcc Merge pull request #447 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-08 06:01:00 +03:00
Andrei Kortunov
1b9edbe119 Add unequip animation during stance switching (bug #4327) 2018-06-07 16:20:17 +04:00
Marc Zinnschlag
7b4a69ff2f Merged pull request #1728 2018-06-07 13:14:53 +02:00
Marc Zinnschlag
362aa23546 Merged pull request #1724 2018-06-07 13:13:48 +02:00
David Cernat
a28b27f5d9 Merge pull request #443 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-06-05 20:57:50 +03:00
Capostrophic
c14536a399 Update faction-owned items confiscation 2018-06-03 20:28:53 +03:00
Capostrophic
3810ade67a Don't make unnecessary faction ID searches 2018-06-03 12:38:53 +03:00
Capostrophic
191cc76378 Consider faction ownerships in item stolen checks (fixes #4293) 2018-06-03 10:22:20 +03:00
Andrei Kortunov
be394870e4 Fix regressions in spell resistance 2018-06-01 20:08:53 +04:00
Andrei Kortunov
84c8fb9df7 Add pursue package only when crime was reported (bug #4433) 2018-06-01 12:41:31 +04:00
David Cernat
669d4d3d7e
Merge pull request #440 from OpenMW/master
Add OpenMW commits up to 27 May 2018
2018-05-27 16:10:16 +03:00
scrawl
cfdf99f601
Revert "Merged pull request #1573"
This reverts commit 7324bd368f, reversing
changes made to 810e4416f6.
2018-05-26 11:39:30 +00:00
scrawl
99ffaafe30
Revert "Merge pull request #1701 from akortunov/standfix"
This reverts commit da47fc79f5, reversing
changes made to 7324bd368f.
2018-05-26 11:35:48 +00:00
Marc Zinnschlag
832b4bb778 Merged pull request #1659 2018-05-25 11:32:08 +02:00
David Cernat
74c2a0b311
Merge pull request #438 from OpenMW/master
Add OpenMW commits up to 24 May 2018
2018-05-24 12:16:11 +03:00
Bret Curtis
da47fc79f5
Merge pull request #1701 from akortunov/standfix
Do not apply queue movement for standing actors
2018-05-23 22:35:08 +02:00
Marc Zinnschlag
7324bd368f Merged pull request #1573 2018-05-23 17:00:29 +02:00
Capostrophic
ba077e7291 Fix movement fatigue loss encumbrance calculation (fixes #4413) 2018-05-13 17:18:45 +03:00
David Cernat
78234f9071 [General] Rename Event into ObjectList & WorldObject into BaseObject 2018-05-13 00:42:24 +03:00
David Cernat
5458e09c8a
Merge pull request #420 from OpenMW/master
Add OpenMW commits up to 11 May 2018
2018-05-12 06:32:01 +03:00
Alf Henrik Sauge
feeee50a88 Dropping a separate NPDTstruct12 object and instead use NPDTstruct52
NPDTstruct12 is now only used when loading and saving. Turning auto calc
on and off now no longer switches between to different set of values
2018-05-09 00:25:07 +02:00
Andrei Kortunov
3636cf2015 Do not apply queue movement for standing actors 2018-05-05 22:41:26 +04:00
Andrei Kortunov
22fb1f3403 Play spellcasting effects from objects 2018-04-30 17:12:06 +04:00
David Cernat
7db74509e0 Merge pull request #412 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwscript/transformationextensions.cpp
2018-04-25 21:55:32 +03:00
Evgeny Kurnevsky
c025b8f8f3
Remove useless comparison. 2018-04-21 17:10:49 +03:00
David Cernat
9e5ddeac50
Merge pull request #408 from OpenMW/master
Add OpenMW commits up to 18 Apr 2018
2018-04-18 18:05:09 +03:00
tri4ng1e
d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 2018-04-18 12:36:10 +00:00
tri4ng1e
d4d1703bcf
Some PVS-Studio and cppcheck fixes
cppcheck:
[apps/esmtool/record.cpp:697]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1126]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/esmtool/record.cpp:1138]: (performance) Prefer prefix ++/-- operators for non-primitive types.
[apps/niftest/niftest.cpp:36]: (performance) Function parameter 'filename' should be passed by reference.
[apps/niftest/niftest.cpp:41]: (performance) Function parameter 'filename' should be passed by reference.
[apps/opencs/model/prefs/boolsetting.cpp:25]: (warning) Possible leak in public function. The pointer 'mWidget' is not deallocated before it is allocated.
[apps/opencs/model/prefs/shortcuteventhandler.cpp:52]: (warning) Return value of std::remove() ignored. Elements remain in container.
[apps/openmw/mwstate/quicksavemanager.cpp:5]: (performance) Variable 'mSaveName' is assigned in constructor body. Consider performing initialization in initialization list.

PVS-Studio:
apps/opencs/model/filter/parser.cpp  582  warn  V560 A part of conditional expression is always true: allowPredefined.
apps/opencs/view/world/referencecreator.cpp  67  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/world/referencecreator.cpp  74  warn  V547 Expression '!errors.empty()' is always false.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !completed.
apps/opencs/view/doc/loader.cpp  170  warn  V560 A part of conditional expression is always true: !error.empty().
apps/opencs/model/tools/pathgridcheck.cpp  32  err  V517 The use of 'if (A) {...} else if (A) {...}' pattern was detected. There is a probability of logical error presence. Check lines: 32, 34.
apps/opencs/model/world/refidadapterimp.cpp  1376  err  V547 Expression 'subColIndex < 3' is always true.

apps/openmw/mwgui/widgets.hpp  318  warn  V703 It is odd that the 'mEnableRepeat' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:318, MyGUI_ScrollBar.h:179.
apps/openmw/mwgui/widgets.hpp  319  warn  V703 It is odd that the 'mRepeatTriggerTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:319, MyGUI_ScrollBar.h:180.
apps/openmw/mwgui/widgets.hpp  320  warn  V703 It is odd that the 'mRepeatStepTime' field in derived class 'MWScrollBar' overwrites field in base class 'ScrollBar'. Check lines: widgets.hpp:320, MyGUI_ScrollBar.h:181
apps/openmw/mwmechanics/actors.cpp  1425  warn  V547 Expression '!detected' is always true.
apps/openmw/mwmechanics/character.cpp  2155  err  V547 Expression 'mode == 0' is always true.
apps/openmw/mwmechanics/character.cpp  1192  warn  V592 The expression was enclosed by parentheses twice: ((expression)). One pair of parentheses is unnecessary or misprint is present.
apps/openmw/mwmechanics/character.cpp  521  warn  V560 A part of conditional expression is always true: (idle == mIdleState).
apps/openmw/mwmechanics/pathfinding.cpp  317  err  V547 Expression 'mPath.size() >= 2' is always true.
apps/openmw/mwscript/interpretercontext.cpp  409  warn  V560 A part of conditional expression is always false: rank > 9.
apps/openmw/mwgui/windowbase.cpp  28  warn  V560 A part of conditional expression is always true: !visible.
apps/openmw/mwgui/journalwindow.cpp  561  warn  V547 Expression '!mAllQuests' is always false.
apps/openmw/mwgui/referenceinterface.cpp  18  warn  V571 Recurring check. The '!mPtr.isEmpty()' condition was already verified in line 16.
apps/openmw/mwworld/scene.cpp  463  warn  V547 Expression 'adjustPlayerPos' is always true.
apps/openmw/mwworld/worldimp.cpp  409  err  V766 An item with the same key '"sCompanionShare"' has already been added.
apps/openmw/mwworld/cellstore.cpp  691  warn  V519 The 'state.mWaterLevel' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 689, 691.
apps/openmw/mwworld/weather.cpp  1125  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1123, 1125.
apps/openmw/mwworld/weather.cpp  1137  warn  V519 The 'mResult.mParticleEffect' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1135, 1137.

apps/wizard/unshield/unshieldworker.cpp  475  warn  V728 An excessive check can be simplified. The '(A && B) || (!A && !B)' expression is equivalent to the 'bool(A) == bool(B)' expression.
apps/wizard/installationpage.cpp  163  warn  V735 Possibly an incorrect HTML. The "</p" closing tag was encountered, while the "</span" tag was expected.

components/fontloader/fontloader.cpp  427  err  V547 Expression 'i == 1' is always true.
components/nifosg/nifloader.cpp  282  warn  V519 The 'created' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 278, 282.
components/esm/loadregn.cpp  119  err  V586 The 'clear' function is called twice for deallocation of the same resource. Check lines: 112, 119.
components/esm/cellref.cpp  178  warn  V581 The conditional expressions of the 'if' statements situated alongside each other are identical. Check lines: 175, 178.
components/esmterrain/storage.cpp  235  warn  V560 A part of conditional expression is always true: colStart == 0.
components/esmterrain/storage.cpp  237  warn  V560 A part of conditional expression is always true: rowStart == 0.
2018-04-18 12:36:10 +00:00
David Cernat
49e94725aa [Client] Prevent MechanicsManager::playerLoaded() from enabling AI 2018-04-12 17:18:06 +03:00
David Cernat
fa652964fd
Merge pull request #403 from OpenMW/master
Add OpenMW commits up to 9 Apr 2018
2018-04-10 06:43:24 +03:00
Capostrophic
d9acd19dc0
Merge branch 'master' into illusion 2018-04-09 23:33:11 +03:00
scrawl
92d0fb2981
Merge pull request #1667 2018-04-09 20:23:38 +00:00
scrawl
308551ad49
Merge pull request #1644 2018-04-09 20:23:24 +00:00
scrawl
cbddb4a0a9
Merge pull request #1638 2018-04-09 20:23:20 +00:00
Capostrophic
77467f17c9
Fix a typo 2018-04-06 00:10:48 +03:00
David Cernat
a86c68c5a1 [General] Add sync for ranged weapon & projectile strike enchantments 2018-04-03 14:12:27 +03:00
Andrei Kortunov
27c831959e Handle OnPCHitMe variable (bug #2703) 2018-04-03 07:38:19 +04:00
David Cernat
e3c43c6af7 Merge pull request #400 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
2018-04-03 01:25:17 +03:00
Capostrophic
4f64ba7b7f Implement sBookSkillMessage GMST 2018-04-02 21:12:38 +03:00
scrawl
c6abec1e51
Merge pull request #1641 2018-04-02 17:53:30 +00:00
scrawl
c610b8acc8
Merge pull request #1649 2018-04-02 17:37:31 +00:00
scrawl
cd9f767e29
Merge pull request #1650 2018-04-02 17:32:40 +00:00
scrawl
f36adfec5f
Merge pull request #1657 2018-04-02 17:28:12 +00:00
scrawl
80a8ef6d49
Merge pull request #1661 2018-04-02 17:18:39 +00:00
Capostrophic
baaf65bc2c Add vanilla enchanted weaponry behavior option, on by default (fixes #4136) 2018-03-31 11:46:23 +03:00
Capostrophic
2dca389a3b Extend magic resistance/weakness to all effects that can be resisted (fixes #4309) 2018-03-30 21:18:29 +03:00
Capostrophic
e6d9bce519 Implement fWerewolfHealth GMST (fixes #4142) 2018-03-30 19:27:18 +03:00
David Cernat
ac82124a5d Merge pull request #395 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/actors.cpp
2018-03-29 07:28:30 +03:00
Capostrophic
2d119e834a Add vanilla absorb attribute behavior option, on by default (Fixes #4135) 2018-03-27 14:27:23 +03:00
Capostrophic
b6a2589e7b Don't apply harmful spell effects on the player in god mode (fixes #4264) 2018-03-27 14:02:14 +03:00
Capostrophic
42b7846f81 Replace a redundant playerAllies check with a boolean (Fixes #4229) 2018-03-23 18:45:39 +03:00
Nelsson Huotari
63e34a5575 Typofix: updateCrimePersuit -> ...Pursuit 2018-03-23 14:10:43 +02:00
scrawl
c02920bcd1
Merge pull request #1634
Conflicts:
	apps/openmw/mwworld/worldimp.hpp
2018-03-20 22:48:20 +00:00
scrawl
f47429d575
Merge pull request #1635 2018-03-20 22:47:36 +00:00
scrawl
ff7f964643
Merge pull request #1636 2018-03-20 22:47:31 +00:00
Andrei Kortunov
53ef345680 Update magic effect particles after building new animation (bug #2254) 2018-03-19 10:43:22 +04:00
Andrei Kortunov
a0a30cdbf5 AI: hide torches during bad weather (bug #4334) 2018-03-19 08:03:53 +04:00
Andrei Kortunov
bd6c7de579 Do not unequip two-handed weapon when equipping torch 2018-03-19 08:03:53 +04:00
Capostrophic
5b49248d6e
Restrict opening doors to bipedal actors (Fixes #4313) 2018-03-18 17:24:27 +03:00
David Cernat
20caea083a [Client] Use correct count for items in equipment packets
Previously, throwing weapon sync was completely broken for players, as the count for their equipped throwing weapons was never set and – as a result – defaulted to a count of 1 on other clients. As a result, any time a player threw a dart, they would then appear as having switched to hand-to-hand for other players.

Moreover, the count of equipped items was mistakenly based on the total count of items with that refId in the inventory. As a result, if – for example – I equipped 1 Daedric Longsword and had 4 others in my inventory, my DedicatedPlayer on other clients would equip a Daedric Longsword with a count of 5. If I was overencumbered by having that many Daedric Longswords on me and then dropped 4 of them, allowing myself to move again, my DedicatedPlayer would still walk around with 5 Daedric Longswords and lack animations due to still being overencumbered on the other clients.

These problems were less prevalent for actors, but their equipment updating code has also been changed to match that of players.
2018-03-12 23:31:37 +02:00
David Cernat
b7c6261e16 Merge pull request #392 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
2018-03-09 21:07:46 +02:00
scrawl
870c658500
Remove missing souls, remove some runaway exceptions (Fixes #4111) 2018-03-08 23:38:04 +00:00
Harald H
d3b623b5d3 http to https for supported urls (#1625)
* http to https for supported urls

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http tp https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* http to https

* some url fixes

* http to https
2018-03-08 21:23:24 +01:00
Capostrophic
d371bebb33 Prevent items in a container owned by a dead actor from being counted as stolen (Bug #4328) 2018-03-03 15:57:13 +03:00
Capostrophic
cc0c6ddaa6 Account for empty victimRef (Bug #4328) 2018-03-03 15:57:03 +03:00
Capostrophic
929fc68160
Consider items with dead owner not stolen (fixes bug #4328) 2018-02-26 23:21:51 +03:00
David Cernat
03266d7648 [Client] Prevent guards from arresting players who are currently jailed 2018-02-25 21:33:04 +02:00
David Cernat
a7e3261b0b
Merge pull request #383 from OpenMW/master
Add OpenMW commits up to 11 Feb 2018
2018-02-11 06:57:54 +02:00
Andrei Kortunov
f626a7fcc7 Take in account PC rank during disposition calculation (bug #4322) 2018-02-10 17:58:30 +04:00
David Cernat
66078bfea7 [General] Implement Mark location sync as part of PlayerMiscellaneous 2018-01-31 04:50:29 +02:00