1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-02-27 19:39:41 +00:00
Commit graph

3019 commits

Author SHA1 Message Date
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
David Cernat
5d4b97645d Merge pull request #374 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/CMakeLists.txt
2018-01-27 22:52:59 +02:00
Andrei Kortunov
eccb49da18 Do not summon the bound bow if there is no suitable ammo 2018-01-11 21:08:30 +04:00
Andrei Kortunov
b995617559 implement rateAmmo() function 2018-01-11 21:08:11 +04:00
scrawl
bba9a8dd91
Don't update off-screen animations
Make flying creatures animate in-place when out of processing range
2018-01-11 01:49:35 +00:00
David Cernat
65d978a3cb
Merge pull request #364 from OpenMW/master
Add OpenMW commits up to 1 Jan 2017
2018-01-02 07:50:37 +02:00
David Cernat
bca9c55046 [Client] Reinstate "Merge pull request #1529 from drummyfish/animfix"
This reverts commit 2f4cd6b713 and adds back the changes made by 45993d3da2 because the OpenMW issue at https://bugs.openmw.org/issues/4250 has been fixed by 57257d057f
2018-01-02 07:47:27 +02:00
scrawl
57257d057f
Remove unintended jump cooldown (Fixes #4250) 2017-12-31 23:48:51 +00:00
David Cernat
2f4cd6b713 [Client] Revert "Merge pull request #1529 from drummyfish/animfix"
This reverts commit 45993d3da2, reversing
changes made to 3d347730dc.

That commit made players have to wait around 1.5 seconds after each jump before doing a new one.

It will be reinstated once its accompanying OpenMW issue at https://bugs.openmw.org/issues/4250 is fixed.
2017-12-26 19:27:13 +02:00
David Cernat
cac2c6c1e8 Merge pull request #360 from TES3MP/0.6.1-openmw-updates while resolving conflicts 2017-12-25 02:25:01 +02:00
David Cernat
ecb0ad0d77 Merge pull request #359 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
2017-12-25 02:03:02 +02:00
David Cernat
535fba0cb3 [Client] Finish drag and drops when arrested or teleported by server 2017-12-16 07:21:02 +02:00
Andrei Kortunov
0e04a26ef6 Set duration of magic effects from ingredients (bug #4261) 2017-12-10 16:10:44 +04:00
Allofich
7e87ce8787 Prevent combat on/off cycling for calmed actors 2017-12-06 01:03:24 +09:00
Allofich
e0c54b3f39 Stop guards trying to arrest player when calm
(Fixes #3863)
2017-12-05 23:53:02 +09:00
David Cernat
047ad40b96 [Client] Clear FortifyAttribute effects when server sets modifier to 0 2017-12-02 09:22:36 +02:00
David Cernat
e7f20e7daf Merge pull request #351 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	README.md
2017-11-30 10:06:38 +02:00
scrawl
47a5229eed
Merge pull request #1564 2017-11-29 22:10:36 +00:00
scrawl
59bfd670c0
Merge pull request #1571 2017-11-29 22:04:41 +00:00
David Cernat
22521578eb
Merge pull request #349 from OpenMW/master
Add OpenMW commits up to 28 Nov 2017
2017-11-29 03:52:15 +02:00
Grigorii Latyshev
2abb1a2ec2 Added checkMagicka parameter 2017-11-28 23:35:54 +01:00
Grigorii Latyshev
9fe5a4d236 Revert condition changes 2017-11-28 23:35:46 +01:00
Grigorii Latyshev
dab72b45db Move mana reducing code back 2017-11-28 23:34:05 +01:00
Andrei Kortunov
b9d9660efd Update music state in the menu mode (bug #3664) 2017-11-28 20:49:48 +04:00
Andrei Kortunov
f7f8dfaf2a AiWander: do not allow flying/swimming creatures to use pathgrid 2017-11-28 18:03:13 +04:00
scrawl
c50b18b3bb
Move PathgridGraph out of CellStore
By definition this is not 'Mutable state of a cell' and does not belong in CellStore.

This change should improve startup times (graph is now loaded on demand) and edits to 'pathgrid.hpp' no longer cause the entirety of OpenMW to be rebuilt.
2017-11-27 21:20:31 +00:00
scrawl
5fe68ab062
Merge pull request #1419 2017-11-27 21:13:11 +00:00
Grigorii Latyshev
ce32462358 Move code to apps/openmw/mwmechanics/spellcasting.cpp, move reduce mana code to CastSpell::cast(const ESM::Spell*) 2017-11-26 13:58:04 +01:00
Andrei Kortunov
dea7d0beff Do not interrupt swim and sneak idle animations during attack (bug #4122) 2017-11-26 09:54:12 +04:00
David Cernat
5aff515d3f
Merge pull request #337 from OpenMW/master
Add OpenMW commits up to 15 Nov 2017
2017-11-16 08:49:56 +02:00
scrawl
cf40d19d7d
Merge pull request #1551 from thegriglat/abs
Change abs to std::abs
2017-11-15 17:34:59 +00:00
scrawl
60fba7acd8 Fix reorder warning 2017-11-15 17:20:08 +00:00
Grigorii Latyshev
6e4f6c4bd5 Change abs to std::abs 2017-11-13 21:36:55 +01:00
David Cernat
2ba1c84cf7 Merge pull request #335 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwgui/container.cpp
2017-11-12 06:35:15 +02:00
scrawl
a7fd27f413
Merge pull request #1544 from rexelion/archerrangefix
use fProjectileMaxSpeed for ranged weapons distance (fixes #4192)
2017-11-11 22:30:59 +00:00
scrawl
98b4f9c596
Merge pull request #1549 from akortunov/itemmodels
Item models reworking
2017-11-11 22:12:07 +00:00
Andrei Kortunov
8c0dcd8b2b Do not track a nearest actor during combat and pursue (bug #4179) 2017-11-11 19:46:59 +04:00
rexelion
f0649849b8 changed variable name to be more descriptive 2017-11-11 12:00:23 +00:00
Andrei Kortunov
9943bd4d74 AiWander fast forwarding improvements (bug #3638) 2017-11-11 15:31:06 +04:00
Andrei Kortunov
99517d83ea Bound items detection refactoring 2017-11-11 11:58:22 +04:00
Andrei Kortunov
a02124f884 Handle item owners during pickpocketing 2017-11-11 11:58:18 +04:00
rexelion
69a56eaea3 don't initialise rangeAttackOfTarget 2017-11-10 10:44:53 +00:00
David Cernat
f2a6957e16 Merge pull request #331 from OpenMW/master while resolving conflicts 2017-11-10 08:43:50 +02:00
rexelion
983c33c4c8 don't use a pointer for ActionWeapon 2017-11-09 14:23:26 +00:00
rexelion
cab0002461 Backing up distance is now dependent on opponents's weapon range; don't back up from ranged oponents 2017-11-07 17:57:23 +00:00
rexelion
a1d9f11b04 use fProjectileMaxSpeed for ranged weapons distance 2017-11-07 11:43:21 +00:00
scrawl
801f2d42d5
Merge pull request #1537 from drummyfish/guardfix
Check the real distance to target in AIPursue (issue #4184)
2017-11-05 23:24:59 +00:00
Miloslav Číž
f98a821482 fix possible bug in aipursue 2017-11-05 23:46:15 +01:00
scrawl
87c79d7102
Merge pull request #1536 from rexelion/knockoutfix
Wait a few seconds before getting up (fixes #3884)
2017-11-05 20:27:54 +00:00
Miloslav Číž
430d01a39a additional animation refactor 2017-11-05 20:19:47 +01:00
rexelion
de7a7d842b mTimeUntilWake is initialised in the constructor 2017-11-05 18:30:34 +00:00
rexelion
48ec680f23 use game time instead of real time 2017-11-04 19:37:20 +00:00
Miloslav Číž
f34223fce9 check the real distance to target in aipursue 2017-11-04 20:02:21 +01:00
rexelion
ab66034ed1 use uniform_int_distribution instead of rand() 2017-11-04 02:15:56 +00:00
rexelion
ee2f3db9a8 fixed randomness 2017-11-04 01:31:15 +00:00
rexelion
de83ad0116 use real time; wait random number of seconds 2017-11-04 00:24:09 +00:00
rexelion
5b8610b34b knocked out characters wait some time before getting up 2017-11-01 23:44:50 +00:00
Miloslav Číž
ff1265c0e7 refactor jump animation 2017-10-31 14:22:24 +01:00
Miloslav Číž
7bc512974f use mcurrentjump instead of custom attrib 2017-10-30 15:26:38 +01:00
Miloslav Číž
5c8f491441 move animation disabling code to a better place 2017-10-28 18:46:52 +02:00
Miloslav Číž
f9c396e0ea stop landing animation when turning 2017-10-28 15:48:07 +02:00
David Cernat
260b3411c3 Merge pull request #317 from OpenMW/master
Add OpenMW commits up to 18 Oct 2017
2017-10-18 15:13:48 +03:00
Andrei Kortunov
4d4d247565 Use SwimTurnLeft/Right animations correctly 2017-10-17 23:26:55 +04:00
David Cernat
e164e6305e Merge pull request #313 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
#	apps/openmw/mwgui/jailscreen.cpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2017-10-16 07:37:29 +03:00
scrawl
03554b2f4b Fix some style issues flagged by cppcheck 2017-10-15 17:06:58 +02:00
scrawl
bbf9b0c0a7 Merge pull request #1503 from akortunov/regressions
Handle Trespassing crime differently from Theft
2017-10-15 09:08:52 +00:00
Andrei Kortunov
8f255a6b72 Handle Trespassing crime differently from Theft (bug #4158) 2017-10-15 11:03:02 +04:00
Andrei Kortunov
30b05b557b ExtraSpell magic effect: a basic implementation 2017-10-14 16:55:00 +04:00
David Cernat
3e8d7c8416 Merge pull request #306 from OpenMW/master
Add OpenMW commits up to 7 Oct 2017
2017-10-07 21:54:21 +03:00
Andrei Kortunov
e2afd3690c Remove item by id from InventoryStore 2017-10-06 10:54:25 +04:00
David Cernat
38247ff086 Merge pull request #303 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwbase/dialoguemanager.hpp
#	apps/openmw/mwdialogue/dialoguemanagerimp.hpp
#	apps/openmw/mwgui/container.cpp
#	apps/openmw/mwgui/windowmanagerimp.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
2017-10-06 04:10:04 +03:00
Andrei Kortunov
1cb7ed5db1 Use owned tooltips for items in containers correctly 2017-10-04 12:13:45 +04:00
scrawl
b24fd77ea2 Merge pull request #1488 from akortunov/equipfix
AI: Autoequip armor when bound armor spell expires
2017-10-01 16:06:26 +00:00
Andrei Kortunov
21b6bd176f AI: Autoequip armor when bound armor spell expires 2017-10-01 17:11:30 +04:00
Andrei Kortunov
c5fcb9684e Improve owned crosshair feature behaviour 2017-09-30 21:29:02 +04:00
Andrei Kortunov
f26206b630 Make unconscious actors do not speak and do not track targets 2017-09-30 20:55:42 +04:00
Andrei Kortunov
3ebb18ce18 Make unconscious actors do not report about crimes 2017-09-30 20:35:29 +04:00
Andrei Kortunov
34895157f9 Consider taking items from unconscious NPC as a theft 2017-09-30 20:22:26 +04:00
David Cernat
44fb7518ee Merge pull request #300 from OpenMW/master
Add OpenMW commits up to 28 Sep 2017
2017-09-28 11:09:14 +03:00
Andrei Kortunov
668a947210 Inherit owner, if an item is in container (regression #4128) 2017-09-27 20:00:41 +04:00
David Cernat
ddf0dfed55 Merge pull request #298 from OpenMW/master
Add OpenMW commits up to 26 Sep 2017
2017-09-26 21:54:55 +03:00
Andrei Kortunov
9b04a7c1e6 Fix idle animations playing 2017-09-24 16:26:41 +04:00
scrawl
2a14af2e27 Merge pull request #1474 from akortunov/swimanimations
Implement missing swim animations
2017-09-23 23:33:37 +00:00
scrawl
22222f07ae Merge pull request #1475 from akortunov/wanderfix
AiWander: reset spawn position, if an actor was moved to another cell
2017-09-23 23:10:35 +00:00
scrawl
2494c22d66 Merge pull request #1470 from MiroslavR/convertmprj
ESS-Importer: Convert magic projectiles
2017-09-23 22:55:56 +00:00
Andrei Kortunov
91adfc9fc0 AiWander: reset spawn position, if an actor was moved to another cell (bug #4010) 2017-09-23 20:59:06 +04:00
Andrei Kortunov
a57f6ac2af Fix a typo in attack animation name 2017-09-23 08:25:58 +04:00
David Cernat
73e7aa838d Merge pull request #296 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwgui/container.cpp
2017-09-22 19:12:41 +03:00
Andrei Kortunov
bcad431cc5 Implement SwimTurnLeft/Right animations 2017-09-22 16:07:00 +04:00
Andrei Kortunov
1c6cfad3cc Implement SwimHit animation 2017-09-22 15:49:42 +04:00
Andrei Kortunov
3eb1308c0d Implement SwimKnockdown/out animations 2017-09-22 15:26:35 +04:00
Andrei Kortunov
6260bb1366 Implement SwimAttack1-3 and SwimDeathKnockDown/Out animations 2017-09-22 14:51:06 +04:00
scrawl
75c047a6e0 Merge pull request #1472 from akortunov/equipfix
Do not play draw weapon animation when equip a new weapon
2017-09-21 13:05:14 +00:00
Andrei Kortunov
5da532a36c Do not play draw weapon animation when equip a new weapon (bug #4056) 2017-09-21 10:48:52 +04:00
MiroslavR
f15de6d3ca ESS-Importer: Convert magic projectiles (Closes #2320) 2017-09-20 18:58:56 +02:00
scrawl
5ebb43a422 Merge pull request #1467 from akortunov/guifixes
Restack soulgems when use SoulTrap
2017-09-20 14:15:49 +00:00
David Cernat
7f0ea7d01f Merge pull request #294 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/character.cpp
2017-09-20 16:52:44 +03:00
Andrei Kortunov
9342a0254f Restack soulgems when use SoulTrap 2017-09-20 10:44:24 +04:00
scrawl
5688257837 Merge pull request #1462 from kcat/master
Minor animation fixes
2017-09-19 20:15:47 +00:00
scrawl
ed5b6320f3 Merge pull request #1463 from akortunov/getdetected
Allow to use GetDetected without a reference
2017-09-19 20:15:16 +00:00
David Cernat
4d4eb1bb9f Merge pull request #292 from OpenMW/master
Add OpenMW commits up to 18 Sep 2017
2017-09-19 09:40:45 +03:00
Andrei Kortunov
65d8e2ff5d Allow to use GetDetected without a reference (bug #3110) 2017-09-18 21:46:57 +04:00
Chris Robinson
b770c1493f Don't spam about missing animations 2017-09-18 01:28:40 -07:00
scrawl
d294d7e284 Fix possible fall damage when switching from falling to flying 2017-09-17 23:16:49 +00:00
scrawl
fcb815f2c7 Move fall height reset into PhysicsSystem (Fixes #4049)
To avoid using onGround before it's actually set.
2017-09-17 23:06:51 +00:00
scrawl
a560841705 Merge pull request #1460 from AnyOldName3/invalid-death-count-cleaning
Check death counts are for valid actors before loading them
2017-09-17 14:42:56 +00:00
AnyOldName3
0be7e2a5a5 Fix really obvious flaw with ignored records not being skipped that I missed 2017-09-17 14:16:17 +01:00
AnyOldName3
5a5cb1a160 Check death counts are for valid actors before loading them 2017-09-17 14:09:29 +01:00
David Cernat
960b91a53c Merge pull request #290 from OpenMW/master
Add OpenMW commits up to 17 Sep 2017
2017-09-17 10:53:33 +03:00
scrawl
f594eda574 Reset attackStrength when starting a new attack (Fixes #3935) 2017-09-16 23:04:54 +00:00
Chris Robinson
780e82480d Make the PlayMode and PlayType enums scoped
Also shorten them by putting them in the MWSound namespace
2017-09-15 02:36:59 -07:00
David Cernat
bd541b1e5b Merge pull request #287 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/CMakeLists.txt
2017-09-12 07:38:49 +03:00
Andrei Kortunov
661232222f Allow guards to attack fighting creatures only in fAlarmRadius range 2017-09-10 15:26:48 +04:00
scrawl
8f1c8759e4 Merge pull request #1432 from akortunov/alchemyfix
Update alchemy effects after every created potion (#4079)
2017-09-07 20:51:42 +00:00
Andrei Kortunov
dc0313a36f Use base skill value when calculating rank requirements 2017-09-07 21:06:10 +04:00
Andrei Kortunov
7559d25317 Update alchemy effects after every created potion (#4079) 2017-09-06 15:11:47 +04:00
David Cernat
b64f379949 Merge pull request #286 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/actors.hpp
2017-09-04 18:05:24 +03:00
David Cernat
ccb15cc09e [Client] When players die, make guards willing to arrest them again 2017-09-04 15:13:05 +03:00
Andrei Kortunov
a5b01fefec Allow to interrupt an attack, if attack button is held 2017-09-01 14:28:21 +04:00
David Cernat
4468e6ec4a Merge pull request #280 from OpenMW/master while resolving conflicts
# Conflicts:
#	.gitignore
#	apps/openmw/mwmechanics/actors.hpp
#	apps/openmw/mwmechanics/mechanicsmanagerimp.cpp
2017-08-31 15:14:13 +03:00
scrawl
dc53573de4 Merge pull request #1405 from akortunov/stancechangefixes
Do not allow player to change weapon/spell during attack or spellcast
2017-08-29 23:11:23 +00:00
Andrei Kortunov
8003dbee12 Combat AI: use effective cast cost when rate enchanted weapon 2017-08-29 16:40:55 +04:00
Andrei Kortunov
fb45995a41 Do not allow player to change weapon/spell during attack or spellcasting (bug #2445) 2017-08-29 15:53:23 +04:00
Andrei Kortunov
e799cbdb51 Combat AI: allow only one summoned creature at time 2017-08-22 09:18:49 +04:00
scrawl
2611377081 Merge pull request #1350 from akortunov/deathanimationfix
Do not allow to loot fighting actors during death animation (bug #3528)
2017-08-18 22:04:12 +00:00
scrawl
f277007b49 Merge pull request #1404 from akortunov/ownedcrosshair
Owned crosshair feature improvements [discussion]
2017-08-18 20:21:23 +00:00
Andrei Kortunov
7c80ddc9de Owned crosshair improvements (bug #2789) 2017-08-18 17:08:15 +04:00
Andrei Kortunov
641a6cd842 Added a delay before summoned creature corpse despawning 2017-08-18 11:58:28 +04:00
Capostrophic
6c8c883dc0 Making knownEffect aware that there can be more than 4 potion effects 2017-08-18 00:47:28 +03:00
scrawl
b73ed5ccac Merge pull request #1391 from akortunov/aifollow
AiFollow: add a threshold when turning to target
2017-08-17 20:17:11 +00:00
Andrei Kortunov
d8d47f081b AiFollow: add a threshold when turning to target 2017-08-17 22:52:34 +04:00
scrawl
c231d20413 Merge pull request #1362 from akortunov/spellpriority
Combat AI: use WhenUsed enchantments [Feedback needed]
2017-08-16 21:23:57 +00:00
scrawl
306b58349e Merge pull request #1387 from akortunov/movementfix
Check actual movement for GetPCRunning and GetPCSneaking [Feedback needed]
2017-08-16 20:50:49 +00:00
scrawl
d1161819bf Merge pull request #1396 from akortunov/dispelfix
Dispel only effects from spells
2017-08-16 20:49:40 +00:00
Andrei Kortunov
bc7353f100 Check animation state for GetPCRunning and GetPCSneaking 2017-08-16 20:30:47 +04:00
Andrei Kortunov
1e983604db Dispel only effects from spells (bug #3995) 2017-08-15 09:35:29 +04:00
scrawl
8acf0ba633 Merge pull request #1394 from akortunov/followerattackfix
Prevent followers from attacking player if crime was reported
2017-08-14 22:19:46 +00:00
Andrei Kortunov
7a5645b35d Prevent followers from attacking player if crime was reported 2017-08-14 18:42:19 +04:00
Andrei Kortunov
f84eb68b3d Confiscate an item when you try to sell it to its owner (bug #3944) 2017-08-14 11:31:17 +04:00
Andrei Kortunov
ab391f17db Fixes regression in spell school detection (bug #4007) 2017-08-07 12:12:57 +04:00
scrawl
ba72eb77f4 Merge pull request #1374 from akortunov/guardfix
Disable AiPursue package for player's followers
2017-08-06 21:11:08 +00:00
David Cernat
77ce05b7d6 [Client] Fix spell casting probability synchronization 2017-08-06 00:11:54 +03:00
Andrei Kortunov
72ce118d02 Disable AiPursue package for player's followers 2017-08-05 12:38:26 +04:00
Andrei Kortunov
cf7a6232d0 Combat AI: use WhenUsed enchantments 2017-08-05 12:18:38 +04:00
David Cernat
721b218cc2 Merge pull request #258 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
2017-08-05 00:09:34 +03:00
scrawl
a63b9e33fd Merge pull request #1369 from akortunov/tauntfix
Take in account a temporary disposition in isAggressive check (bug #3…
2017-08-03 21:01:03 +00:00
Andrei Kortunov
d1489f5b42 Take in account a temporary disposition in isAggressive check (bug #3987) 2017-08-03 19:18:31 +04:00
elsid
748f5225a9 Copy PathFinder::mPath back value when pass to MWMechanics::AiPackage::pathTo as dest
May become dangling reference because method may remove all elements from mPath.
2017-08-02 11:35:53 +03:00
Andrei Kortunov
604f9ee323 Split weapons and spells rating code from combat actions 2017-08-01 09:05:35 +04:00
Andrei Kortunov
b7cfb1aaf4 Fixed DamageHealth and AbsorbHealth effects applying 2017-07-31 23:05:19 +04:00
scrawl
eac2e52841 Merge pull request #1329 from akortunov/priorityfix
Combat AI: make default spell priority calculation formula close to vanilla
2017-07-31 18:21:47 +00:00
scrawl
fde6e29628 Merge pull request #1326 from akortunov/spellpriority
Combat AI improvements [feedback needed]
2017-07-31 17:51:51 +00:00
scrawl
333648c975 Merge pull request #1324 from akortunov/doorfix
Improved doors detection
2017-07-31 17:42:53 +00:00
Andrei Kortunov
10eb6ec75f AI: Check angle between actor and door 2017-07-31 19:28:02 +04:00
Allofich
dae19412f2 Fix problem with animations not looping
Fixes #3804
2017-07-29 20:54:11 +09:00
scrawl
631d79f1c8 Merge pull request #1346 from akortunov/aibreathe
AiBreathe AI package (feature #1374)
2017-07-28 20:50:04 +00:00
scrawl
4c2487d55f Merge pull request #1353 from akortunov/restfix
Update effects during rest (bug #3679)
2017-07-28 20:46:14 +00:00
David Cernat
4db64e1721 [Client] Synchronize spellcasting for non-bipedal creatures 2017-07-28 20:49:26 +03:00
Andrei Kortunov
920021c61b Update effects during rest (bug #3679) 2017-07-28 16:50:52 +04:00
David Cernat
e6e5d406b8 Merge pull request #248 from OpenMW/master
Add OpenMW commits up to 26 Jul 2017, part 2
2017-07-26 20:31:39 +03:00
David Cernat
796118c266 [Client] Send StatsDynamic packets more often 2017-07-26 20:15:35 +03:00
scrawl
d3be4769ea Merge pull request #1347 from akortunov/encumberancefix
Fixed encumberance check (bug #3963)
2017-07-26 16:20:16 +00:00
David Cernat
84662ed3fe [Client] Add temporary warnings when creating custom spells and items 2017-07-26 05:36:12 +03:00
Andrei Kortunov
548814bfbc Added AiBreathe package (feature #1374) 2017-07-25 10:58:04 +04:00
Andrei Kortunov
325ea10594 Fixed encumberance check (bug #3963) 2017-07-25 10:28:33 +04:00
Andrei Kortunov
3ba0a336b7 Move spell magicka cost calculation to standalone function 2017-07-24 21:11:59 +04:00
David Cernat
fd046e42ef Merge pull request #242 from OpenMW/master
Add OpenMW commits up to 16 Jul 2017
2017-07-17 21:34:44 +03:00
Andrei Kortunov
98f161c7fd Combat AI: avoid enemy hits when casting Self-ranged spells (fixes #3922) 2017-07-16 22:38:23 +04:00
David Cernat
e3929df38a Merge pull request #239 from OpenMW/master
Add OpenMW commits up to 14 Jul 2017
2017-07-15 09:13:04 +03:00
Andrei Kortunov
54b4d93f79 Added a special function for GUI sounds playing 2017-07-10 15:48:00 +04:00
David Cernat
1d504a665f [General] Add RANK, EXPULSION and BOTH actions to PlayerFaction packets 2017-07-05 07:06:33 +03:00
Andrei Kortunov
37952c9a79 Added door detection based by ray casting 2017-07-03 22:08:29 +04:00
David Cernat
0b68e59060 [Client] Send ObjectLock packets when using lock spells 2017-06-29 22:29:49 +03:00
Andrei Kortunov
143fdae6fe Make spell priority calculation close to vanilla (bug #3937). 2017-06-28 14:02:51 +04:00
Koncord
6222c20e82 [Client] Convert MechanicsHelper to namespace 2017-06-27 16:43:53 +08:00
David Cernat
9a519b5cc2 [Client] Avoid incrementing actor death count if we aren't its authority 2017-06-23 09:22:48 +03:00
David Cernat
ebf7740969 [General] Repurpose GameConsole packet as GameSettings & add difficulty to it 2017-06-20 05:28:45 +03:00
David Cernat
df67ae4689 Merge pull request #229 from OpenMW/master
Add OpenMW commits up to 20 Jun 2017
2017-06-20 04:16:51 +03:00
David Cernat
fa3baac0f3 Merge pull request #228 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	CMakeLists.txt
#	apps/openmw/main.cpp
2017-06-18 18:16:10 +03:00
Andrei Kortunov
1a8f2bfc11 Combat AI: select target by priority 2017-06-16 16:11:12 +04:00
Andrei Kortunov
a2be73295b Combat AI: take in account enemy weapon resistance 2017-06-16 13:33:42 +04:00
Andrei Kortunov
62b24eb078 Combat AI: do not use range weapons under water 2017-06-16 12:20:31 +04:00
Allofich
4f08084e79 Make stationary actors return to position on load
Also makes wandering actors resume their previous destination when an interrupting combat or pursuit ends.

(Fixes #3656)
2017-06-15 18:33:50 +09:00
Allofich
028762a7dc Make guards that are attacked try to arrest player
(Fixes #3706)
2017-06-15 01:47:10 +09:00
scrawl
53264f34b3 Merge pull request #1321 from akortunov/spellpriority
Use mRange to check spell range instead of mArea.
2017-06-13 17:06:47 +02:00
Andrei Kortunov
87939bf3b1 Use mRange to check spell range instead of mArea. 2017-06-13 11:02:40 +04:00
scrawl
dd3f612e88 Merge pull request #1316 from akortunov/doorfix
Doors usage improvements
2017-06-12 23:34:40 +02:00
scrawl
80eb2ea35d Merge pull request #1313 from akortunov/spellpriority
Make combat AI to do not cast target spells under water
2017-06-12 23:32:35 +02:00
Andrei Kortunov
e9d0bf7c12 Added missed return statement 2017-06-11 15:06:44 +04:00
Andrei Kortunov
9fdfb2a83f Spell priority: make AI do not cast target spells when enemy is under water 2017-06-11 10:13:00 +04:00
Andrei Kortunov
188424d5d3 Allow AI to use keys to open doors 2017-06-10 22:31:17 +04:00
David Cernat
1ae5bd19e1 [Client] Don't set difficulty based on client settings 2017-06-10 15:29:09 +03:00
David Cernat
70d9374a6a [General] Implement PlayerKillCount packets 2017-06-10 14:04:19 +03:00
Andrei Kortunov
4600f24e27 Playing sound when AI is opening a door 2017-06-09 22:52:40 +04:00
Bret Curtis
c781d1f8ed purge unnecessary imports
add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back

add fstream back
2017-06-09 19:08:53 +02:00
Bret Curtis
d785344fad purge all instances of <boost/shared_ptr.hpp>, clean up unused headers 2017-06-09 19:08:53 +02:00
Ewan Higgs
38a2de3c51 convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis 2017-06-09 16:49:25 +02:00
Andrei Kortunov
3190f28710 Spell priority: make AI do not cast target spells under water 2017-06-09 10:23:46 +04:00
David Cernat
89f6c6df96 Merge pull request #225 from OpenMW/master
Add OpenMW commits up to 4 Jun 2017
2017-06-05 03:38:58 +03:00
Andrei Kortunov
00402b7154 Removed unused variable 2017-06-04 14:09:23 +04:00
Andrei Kortunov
42f3c73c75 Spell priority: dispel usage improvements 2017-06-03 13:16:44 +04:00
Koncord
a847d46984 [Client] Get rid Z axis in direction.pos 2017-06-02 18:33:51 +08:00
Koncord
5f30dfd5db [Client] Get rid direction.rot 2017-06-02 15:44:39 +08:00
David Cernat
8c785fb22c [Client] Send ObjectDelete packets when summoned creatures despawn 2017-06-02 09:15:08 +03:00
David Cernat
41de1876a3 Merge pull request #223 from OpenMW/master
Add OpenMW commits up to 31 May 2017
2017-06-01 08:11:46 +03:00
Andrei Kortunov
f6c3d4935e Spell priority: feather and burden 2017-05-31 19:23:44 +04:00
Andrei Kortunov
6c21e4ed31 Spell priority: ignore some effects useless in battle 2017-05-31 18:41:41 +04:00
David Cernat
068a45be87 [General] Synchronize player & NPC rotation animations 2017-05-30 12:08:58 +03:00
David Cernat
f4cdedd8cb [General] Synchronize summoned creatures 2017-05-30 10:11:01 +03:00
David Cernat
1c6e359fe9 [Client] Set and clear hitAttemptActorId for DedicatedPlayers
This allows a DedicatedPlayer's follower NPCs to target enemies attacking the DedicatedPlayer.
2017-05-30 08:20:45 +03:00
David Cernat
0cce9908be Merge pull request #222 from OpenMW/master
Add OpenMW commits up to 29 May 2017
2017-05-29 04:53:23 +03:00
David Cernat
9d9581a1c2 [Client] Prevent DedicatedActors from automatically equipping torches 2017-05-27 02:52:26 +03:00
Andrei Kortunov
46c8842808 Fixed enchant points calculations formula 2017-05-26 23:42:11 +04:00
David Cernat
20a72ec807 [Client] Send ObjectTrap packets when disarming traps with keys & probes 2017-05-26 01:47:59 +03:00
David Cernat
b1264cca92 [Client] Send ObjectLock whenever using spells or keys to unlock objects 2017-05-24 16:25:44 +03:00
David Cernat
870fd9a78b [General] Remove ObjectUnlock packet, use ObjectLock with 0 lock instead 2017-05-24 13:28:34 +03:00
David Cernat
48ee8fd536 [Client] Send PlayerFaction packets when getting expelled from factions 2017-05-24 12:19:11 +03:00
David Cernat
d0ec5c61e2 Merge pull request #219 from OpenMW/master
Add OpenMW commits up to 21 May 2017, part 2
2017-05-21 22:51:44 +03:00
scrawl
f9cdc2da94 Merge pull request #1293 from akortunov/spellpriority
aicombataction.cpp: implement some spell priority TODO's
2017-05-21 21:18:10 +02:00
David Cernat
8f5e6531db [Client] Avoid updating positions and anim flags when framerate is low
Also rename DedicatedPlayer methods so they are consistent with those from DedicatedActor
2017-05-14 10:52:44 +03:00
David Cernat
271594f0ee [Client] Don't play death animations for NPCs saved as dead on server 2017-05-14 10:27:43 +03:00
David Cernat
dcc61a095a [Client] Allow multiple WorldObjects to be added to a WorldEvent 2017-05-06 20:44:39 +03:00
David Cernat
8b8d55e8d3 [Client] Set a very high processing range for AI for the time being 2017-05-05 03:17:28 +03:00
Andrei Kortunov
4d927439ca Spell priority: item wearing check when disintegrate weapon/armor 2017-05-03 11:13:35 +04:00
Andrei Kortunov
d598809ac6 Spell priority: check spell resistance, check if actor is already has a non-magnitude effect 2017-05-03 10:35:56 +04:00
David Cernat
809b4d78ba [Client] Split off DedicatedPlayer and PlayerList into different files 2017-04-30 14:57:43 +03:00
Andrei Kortunov
f484ef8ffb Fixed jump fatigue loss formula (fixes #3843) 2017-04-26 18:28:59 +04:00
David Cernat
11605bd19a [Client] Make aggressive actors initiate combat with DedicatedPlayers
Previously, they were only attacking DedicatedPlayers who had attacked them first.
2017-04-25 16:08:14 +03:00
David Cernat
a4165325fa [Client] Improve synchronization of Actor swings 2017-04-25 01:47:43 +03:00
David Cernat
ce9605957a [Client] Use different way of preventing attacks on players in dialogue 2017-04-25 01:11:01 +03:00
David Cernat
a82646a130 [Client] Delineate tes3mp-only code more clearly, part 2 2017-04-24 19:46:12 +03:00
David Cernat
e4a261ea2e [Client] Remove unused include and variables, fixing warnings 2017-04-24 17:53:50 +03:00
David Cernat
a5484d237b Merge pull request #203 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017, part 2
2017-04-21 21:07:37 +03:00
scrawl
1956602aa2 Merge pull request #1262 from Allofich/warnings
Fix more warnings
2017-04-21 14:34:36 +02:00
David Cernat
fec82dc033 Merge pull request #202 from OpenMW/master
Add OpenMW commits up to 21 Apr 2017
2017-04-21 07:58:13 +03:00
Allofich
ff3cb18d4f Fix shadowing warnings 2017-04-21 11:06:18 +09:00
scrawl
bfdde0262f Merge pull request #1260 from akortunov/levitationfix
Purge existing levitation effects when levitation is disabled (fixes #3766)
2017-04-21 00:25:09 +02:00
Allofich
ff3e307059 Pass parameters by const reference 2017-04-20 23:47:03 +09:00
David Cernat
10d554af5b [Client] Make NPCs react to DedicatedPlayer & DedicatedActor attacks 2017-04-20 17:00:40 +03:00
Allofich
2e5fd74db0 Fix invalid iterator warning 2017-04-20 19:30:35 +09:00
David Cernat
edb155869b Merge pull request #201 from OpenMW/master
Add OpenMW commits up to 19 Apr 2017
2017-04-19 22:12:33 +03:00
David Cernat
2e8714afaa [Client] Rethink and restructure tes3mp combat code so it works for NPCs 2017-04-19 22:06:04 +03:00
Allofich
60a2625b89 Add parentheses to clarify calculations 2017-04-20 01:38:21 +09:00
Allofich
5a00b239ac Reduce scope of variables 2017-04-20 01:22:30 +09:00
Andrei Kortunov
04eb4ea6b6 Check for disabled levitation (fixes #3766) 2017-04-19 18:38:25 +04:00
Andrei Kortunov
3c4c47d1e6 Reduced scope of fHoldBreathTime variable 2017-04-19 15:52:15 +04:00
Andrei Kortunov
c3fd327bb2 Fixed drowning widget initialization 2017-04-19 08:48:16 +04:00
David Cernat
014ff7a059 [Client] Replace usage of Networking::isDedicatedPlayer() 2017-04-18 18:07:39 +03:00
David Cernat
53081a6a6f [Client] Clean up more checks by using PlayerList::isDedicatedPlayer() 2017-04-18 12:38:26 +03:00
David Cernat
07c2d4251e [Client] Add and use mwmp::PlayerList::isDedicatedPlayer() 2017-04-17 20:36:20 +03:00
David Cernat
0aaf68c994 [Client] Rename mwmp::Players into mwmp::PlayerList for clarity 2017-04-17 19:10:33 +03:00
David Cernat
2565816b22 [Client] Delimit and clarify combat changes made by tes3mp
Additionally, revert unneeded small changes to the formatting of OpenMW code
2017-04-17 11:55:22 +03:00
David Cernat
b09e6644a9 [Client] Prevent infinite guard arrest loops 2017-04-16 20:26:06 +03:00
David Cernat
d2178e5414 [Client] Assign LocalActor movement settings before rotations get reset 2017-04-16 17:09:47 +03:00
David Cernat
f64580bc10 [Client] Enable head rotation AI for DedicatedActors 2017-04-16 08:42:49 +03:00
David Cernat
8ebe7ed683 [Client] Remove isLocalActor (no longer needed) from LiveCellRefBase 2017-04-16 07:54:44 +03:00
David Cernat
ca8fd1aa72 [General] Remove ActorHeadRotation packet because it would be too spammy 2017-04-15 15:49:40 +03:00
David Cernat
2872675f5e [General] Send and read ActorAnimPlay packets 2017-04-15 13:42:30 +03:00
David Cernat
11a9e3bdb1 Merge pull request #197 from OpenMW/master
Add OpenMW commits up to 14 Apr 2017
2017-04-14 05:57:28 +03:00
Andrei Kortunov
dc036e96d4 fixed magicka calculation on chargen (bug #3694) 2017-04-13 18:30:36 +04:00
David Cernat
10ad5b2a99 [General] Remove BaseActor's AnimStates that are no longer needed 2017-04-13 13:06:09 +03:00
David Cernat
c6cd0a2953 Merge pull request #196 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
2017-04-13 07:07:49 +03:00
scrawl
d8943d911c Merge pull request #1254 from Allofich/warning
Remove unnecessary line
2017-04-12 23:49:29 +02:00
Allofich
470988f9ef Minor changes to getActorsSidingWith 2017-04-13 04:45:44 +09:00
Allofich
6272e1c674 Cache allies found while iterating engageCombat
(Fixes #3814)
2017-04-13 02:02:38 +09:00
Allofich
5020d03c78 Remove unnecessary line 2017-04-12 22:59:28 +09:00
scrawl
8f335b3484 Merge pull request #1245 from akortunov/tgm
Vanilla-like tgm
2017-04-11 21:34:44 +02:00
David Cernat
cbd2af972d [Client] Get movement settings for NPCs before they are reset 2017-04-10 17:06:44 +03:00
David Cernat
b9d68c0ab2 Merge pull request #195 from OpenMW/master
Add OpenMW commits up to 10 Apr 2017
2017-04-10 01:20:42 +03:00
David Cernat
a1d0b4908f [Client] Fix Travis CI build by not using nullptr 2017-04-08 16:46:38 +03:00
David Cernat
0ccbe70e61 [Client] Rename methods to make their purpose clearer 2017-04-08 14:31:22 +03:00
David Cernat
6da6c4e62d [Client] Prevent NPCs from attacking a player engaged in dialogue 2017-04-08 13:06:42 +03:00
David Cernat
417284c701 [Client] Implement head rotation sync for NPCs 2017-04-08 11:40:19 +03:00
David Cernat
d3f3fb5d05 [Client] Correctly implement movement animation sync for NPCs 2017-04-08 08:59:21 +03:00
David Cernat
d4a12856ee [Client] Enable AI for LocalActors 2017-04-06 04:59:55 +03:00
David Cernat
9759764699 [Client] Clean up getting and resetting of WorldEvent 2017-04-05 09:04:41 +03:00
David Cernat
4abe295a80 [Client] Simplify sending of world packets by adding WorldEvent methods 2017-04-05 07:54:23 +03:00
David Cernat
2bd81c3de0 [Client] Use mpNum for every WorldObject 2017-04-04 11:07:16 +03:00
Andrei Kortunov
31bd70f334 Added missed recharge and repair sounds 2017-04-02 23:19:43 +04:00
David Cernat
7647715dac Merge pull request #190 from OpenMW/master
Add OpenMW commits up to 27 Mar 2017
2017-03-28 08:05:23 +03:00
scrawl
2a74f79bf1 Merge pull request #1240 from Allofich/follow
Adjust AI follow distances
2017-03-26 20:35:11 +02:00
Allofich
6253a5218e Adjust AI follow distances
(Fixes #3225)
2017-03-27 03:31:25 +09:00
Andrei Kortunov
14b59e0e4b Vanilla-like tgm (fixes #3798) 2017-03-25 22:40:11 +04:00
MiroslavR
da6b28eb40 Fix selling success chance (Fixes #3802) 2017-03-25 15:21:16 +01:00