Commit Graph

16139 Commits (9029533ec1fca0016b786181837f7218b5bbf031)

Author SHA1 Message Date
scrawl 8e37f6bf3e
Merge pull request #1656 7 years ago
scrawl f36adfec5f
Merge pull request #1657 7 years ago
scrawl 80a8ef6d49
Merge pull request #1661 7 years ago
Koncord 6131ada0ba [Browser] Add compatibility compilation mode 7 years ago
elsid 14daadded7
Add virtual destructors
To fix warnings:
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:588:8: warning: delete called on non-final 'NifOsg::ControllerFunction' that has virtual functions but non-virtual destructor
      [-Wdelete-non-virtual-dtor]
              delete __p;
              ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:595:4: note: in instantiation of function template specialization
      'std::__shared_count<__gnu_cxx::_S_atomic>::__shared_count<NifOsg::ControllerFunction *>' requested here
        : __shared_count(__p)
          ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:1079:17: note: in instantiation of function template specialization
      'std::__shared_count<__gnu_cxx::_S_atomic>::__shared_count<NifOsg::ControllerFunction *>' requested here
        : _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
                       ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr.h:129:25: note: in instantiation of function template specialization 'std::__shared_ptr<NifOsg::ControllerFunction,
      __gnu_cxx::_S_atomic>::__shared_ptr<NifOsg::ControllerFunction, void>' requested here
        shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
                               ^
/home/elsid/dev/openmw/components/nifosg/nifloader.cpp:242:39: note: in instantiation of function template specialization 'std::shared_ptr<NifOsg::ControllerFunction>::shared_ptr<NifOsg::ControllerFunction, void>' requested here
                callback->setFunction(std::shared_ptr<NifOsg::ControllerFunction>(new NifOsg::ControllerFunction(key)));
                                      ^

/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/unique_ptr.h:78:2: warning: delete called on non-final 'MWGui::ResponseCallback' that has virtual functions but non-virtual destructor
      [-Wdelete-non-virtual-dtor]
        delete __ptr;
        ^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/unique_ptr.h:268:4: note: in instantiation of member function 'std::default_delete<MWGui::ResponseCallback>::operator()' requested here
          get_deleter()(__ptr);
          ^
/home/elsid/dev/openmw/apps/openmw/mwgui/dialogue.cpp:58:23: note: in instantiation of member function 'std::unique_ptr<MWGui::ResponseCallback, std::default_delete<MWGui::ResponseCallback> >::~unique_ptr' requested here
    PersuasionDialog::PersuasionDialog(ResponseCallback* callback)
                      ^
7 years ago
David Cernat 26a56d6a02 [Client] Include NPC/creature containers when adding all cell containers 7 years ago
David Cernat 5bb09d3bed Merge pull request #399 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw/mwmp/WorldEvent.cpp
	apps/openmw/mwmp/WorldEvent.hpp
	apps/openmw/mwmp/processors/world/ProcessorContainer.hpp
7 years ago
David Cernat 1e3c4fd488 [Client] Fix ProcessorContainer typos caused by careless copy-pasting 7 years ago
David Cernat 7b97e8671d
Merge pull request #398 from OpenMW/master
Add OpenMW commits up to 30 March 2018
7 years ago
David Cernat f80f3bd484 [Client] Make it possible to reply to requests about specific containers
Previously, a Container packet with a REQUEST action always made the client respond with the contents of all the containers in that cell.

The previous behavior now only happens for requests that have no WorldObjects attached, while requests that have WorldObjects attached get a reply with the contents of those specific containers.
7 years ago
David Cernat ec1311fcb7 [Client] Make it possible to check whether a class has a ContainerStore 7 years ago
David Cernat 258e319acb [Client] Require InventoryStore for autoequipping actors 7 years ago
David Cernat afe8c97cb9 [Client] Require InventoryStore for unequipping actors in editContainers 7 years ago
David Cernat d8b48f6cf4 [Client] Remove redundant container methods from CellController 7 years ago
Koncord 2aaf9105af [Browser] Add Client Settings and Server Settings Tabs.
Save Browser state to the client config
7 years ago
Capostrophic baaf65bc2c Add vanilla enchanted weaponry behavior option, on by default (fixes #4136) 7 years ago
Capostrophic 2dca389a3b Extend magic resistance/weakness to all effects that can be resisted (fixes #4309) 7 years ago
Ilya Zhuravlev fdcfbdbdd1 android: Update for sdl 2.0.8 7 years ago
Capostrophic e6d9bce519 Implement fWerewolfHealth GMST (fixes #4142) 7 years ago
David Cernat 365f485e8d Merge pull request #397 from OpenMW/master while resolving conflicts
Conflicts:
	components/CMakeLists.txt
7 years ago
David Cernat 3d5860d6f4 Merge pull request #396 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw-mp/Player.cpp
	apps/openmw-mp/Script/Functions/Settings.cpp
	apps/openmw-mp/Script/Functions/Settings.hpp
	apps/openmw-mp/Script/Functions/World.cpp
	apps/openmw-mp/Script/Functions/World.hpp
	apps/openmw/mwgui/container.cpp
	apps/openmw/mwmp/LocalActor.cpp
	apps/openmw/mwmp/LocalPlayer.cpp
	apps/openmw/mwmp/WorldEvent.cpp
	apps/openmw/mwmp/processors/world/ProcessorContainer.hpp
	components/openmw-mp/Base/BaseEvent.hpp
	components/openmw-mp/Log.cpp
	components/openmw-mp/Log.hpp
7 years ago
Capostrophic 76f50312f2
Remove a redundant check 7 years ago
David Cernat ac82124a5d Merge pull request #395 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/actors.cpp
7 years ago
David Cernat 1c340568d2 [Client] Disallow resting if player has not finished chargen
Previously, players pressing T rapidly before logging in had the Wait screen show up for them.
7 years ago
bret curtis 4890ecd357 remove native GLESv* support, as it never worked; make things less complicated as result, fixed lighting.glsl to work with gl2es thanks to ptitSeb 7 years ago
Capostrophic 2d119e834a Add vanilla absorb attribute behavior option, on by default (Fixes #4135) 7 years ago
Capostrophic b6a2589e7b Don't apply harmful spell effects on the player in god mode (fixes #4264) 7 years ago
David Cernat 5f6ddcfc59 [General] Rework container sync to prevent item duping
A main priority in TES3MP development is to avoid making major changes to OpenMW code, so as to avoid merge conflicts in the future. Whenever avoiding potential conflicts seems especially difficult for the proper implementation of a particular multiplayer feature, that multiplayer feature is often put off until later or partially implemented with the intent of being revisited in the future.

Container sync is the perfect example. Previously, the OpenMW code for container actions was kept exactly as it was, with clients unilaterally accepting their own container changes as per singleplayer-specific code, with only the addition that clients sent container packets every time they made a change in a container, packets which were then forwarded unquestioningly by the server to other players. This meant that two players clicking on the same item in a container at the same time both managed to take it, thus duplicating the item.

Immediately after the packets were already forwarded, server scripts were able to check for incorrect changes, such as the removal of more items than should have existed in a container, but they had to send their own packets that attempted to fix what had already been accepted on the initial client and then forwarded to all clients, which was quite onerous in some scenarios, such as when a player on a slow connection immediately dropped items in the world after taking them from a container (which is why the default TES3MP serverside scripts made no attempt at sending corrective packets at all, preferring to expect the matter to be solved in a later C++ implementation).

This commit fixes item duping in containers by preventing container actions from initially running on clients and by ending the automatic forwarding of container packets by the server. Instead, clients now send container packets that act as requests for container actions, and serverside scripts have to forward these requests themselves. In other words, without a matching Container event in the server's Lua scripts, players are completely unable to affect containers for themselves or for others.

To forward a received Container packet, the following line must be used in a Container event in the Lua scripts:

tes3mp.SendContainer(true, true)

When an invalid action count is used in a container request, the serverside scripts can amend it using the following new function:

tes3mp.SetReceivedContainerItemActionCount(objectIndex, itemIndex, actionCount)

Thus, the serverside scripts are able to allow only container actions that are correct based on their own recorded contents for that container.

The OpenMW code allowing unilateral container actions in mwgui/container.cpp is now prevented from executing. When a player's container request is returned to them, code in mwmp/WorldEvent.cpp simulates those container actions instead.
7 years ago
David Cernat 9165b12d78 [Client] Update inventory views when receiving inventory or equipment 7 years ago
Capostrophic 41f89c84f8 Don't move the player if opposite direction keys are held down at the same time (Fixes #4233) 7 years ago
David Cernat bb15ee9215 [Client] Make it possible to get ContainerWindow from elsewhere in code 7 years ago
Capostrophic 5a3086b0c6
Auto-detect the actual Morrowind assets path (Fixes #4336) 7 years ago
Capostrophic 42b7846f81 Replace a redundant playerAllies check with a boolean (Fixes #4229) 7 years ago
Nelsson Huotari 63e34a5575 Typofix: updateCrimePersuit -> ...Pursuit 7 years ago
David Cernat bbdc30628b [Client] Use the correct guid for a received WorldEvent or ActorList 7 years ago
scrawl c02920bcd1
Merge pull request #1634
Conflicts:
	apps/openmw/mwworld/worldimp.hpp
7 years ago
scrawl f47429d575
Merge pull request #1635 7 years ago
scrawl ff7f964643
Merge pull request #1636 7 years ago
David Cernat 14f0299322 [Client] Don't log InputBox inputs for client 7 years ago
Andrei Kortunov fed3e56fc1 Weather manager: get rid of World dependency 7 years ago
Andrei Kortunov 53ef345680 Update magic effect particles after building new animation (bug #2254) 7 years ago
Andrei Kortunov a0a30cdbf5 AI: hide torches during bad weather (bug #4334) 7 years ago
Andrei Kortunov bd6c7de579 Do not unequip two-handed weapon when equipping torch 7 years ago
RoadTrain d626d89c49 OpenMW-CS: Fix a typo in startup warning. 7 years ago
Capostrophic 5b49248d6e
Restrict opening doors to bipedal actors (Fixes #4313) 7 years ago
scrawl edb57306b6
Merge pull request #1628 7 years ago
scrawl 17fa1a4d51
Merge pull request #1630 7 years ago
scrawl 7a5748a9f1
Merge pull request #1632 7 years ago
elsid a26483ab26 Fix memory leak
There is no delete for TextFormat objects in PageDisplay destructor.
7 years ago
elsid 26df0e6ebd Remove duplicated include 7 years ago
elsid 2f9b6b536b Label gtest directories as system
To hide all warnings when use custom GTEST_ROOT.
7 years ago
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.
7 years ago
Andrei Kortunov e0aa5e8e79 Prevent overlapping for journal and books scrolling 7 years ago
David Cernat b249162ca1 [General] Implement setting of enforced client log level in GameSettings
Certain servers do not want the players to have debug information about the locations and actions of other players, so a client's log level can now be enforced by the server via the GameSettings packet.
7 years ago
David Cernat a3a341fee6 [Server] Reimplement 4ebfcc4a21 for 0.6 7 years ago
David Cernat 7ec08e125b Merge pull request #394 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw-mp/Script/Functions/Settings.cpp
	apps/openmw-mp/Script/Functions/Settings.hpp
7 years ago
David Cernat bf906b3f0a
Merge pull request #393 from OpenMW/master
Add OpenMW commits up to 10 March 2018
7 years ago
David Cernat b2a3dd9d60 Revert "[Server] Add previous state to ON_RECORD_DYNAMIC"
This reverts commit 2ac01dc02a.

Commit 2ac01dc02a had confused the ON_RECORD_DYNAMIC event meant for custom items with a hypothetical ON_PLAYER_STATS_DYNAMIC event meant for dynamic player stats and had added functionality appropriate for the latter.

ON_PLAYER_STATS_DYNAMIC was never implemented because it would have caused too much event spam, with it constantly being triggered by any running player losing fatigue. If it ends up being added, the reverted lines from 2ac01dc02a should be added to it instead.
7 years ago
David Cernat b7c6261e16 Merge pull request #392 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
7 years ago
Andrei Kortunov 62c04c6758 Unstack soulgem, added via AddSoulGem console command (bug #4351) 7 years ago
scrawl e81faf5f2f
Add an option to disable GUI keyboard navigation (Bug #4333) 7 years ago
scrawl 870c658500
Remove missing souls, remove some runaway exceptions (Fixes #4111) 7 years ago
scrawl 7f39dbb129
Merge pull request #1626 7 years ago
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
7 years ago
Thunderforge dfcd243150 Remove the word "interior" from cell not found message 7 years ago
scrawl 96c2b9374f
Merge pull request #1621 7 years ago
scrawl bf78c18296
Merge pull request #1624 7 years ago
scrawl 148cda254d
Merge pull request #1617 7 years ago
Capostrophic 3b922d810a Don't use floating point arithmetics for formatted count (Bug #4346) 7 years ago
Capostrophic 60a663ef58 Account for all possible count values in getCountString (Bug #4346) 7 years ago
Thunderforge 6c3ac834c4 Preventing max quicksaves from being saved to settings.cfg if it is unchanged. 7 years ago
Koncord 2ac01dc02a [Server] Add previous state to ON_RECORD_DYNAMIC 7 years ago
Koncord 4aff1f1833 [Server] Add previous state to ON_PLAYER_SKILL
That is array of struct with next content: {base, current, mod, damage, progress}
7 years ago
Koncord 017956366f [Server] Add previous state argument to ON_PLAYER_ATTRIBUTE event
That is array of struct with next content: {base, current, mod, damage}
7 years ago
Koncord afbafdf806 [Server] Add PreReading virtual method
add "const" qualifier to exteriorCellPattern
7 years ago
Koncord d0eef7c98e [Server] Add possibility to use previous state of data in events 7 years ago
Chris Robinson 01dbac7b15 Don't use a different setting for distant viewing distance 7 years ago
Chris Robinson 41669467ae Make settings for distant fog parameters 7 years ago
Chris Robinson 4caa7c9674 Workaround older MSVC quirk 7 years ago
Chris Robinson 154cc8c659 Use alternate fog parameters when distant land is enabled
This allows the distant land to actually be seen when the user enables it. The
values used are replicated from MGE XE's default settings and should probably
be exposed somewhere.
7 years ago
Chris Robinson 6d557fec8e Increase the far clip plane when distant terrain is enabled 7 years ago
Capostrophic d371bebb33 Prevent items in a container owned by a dead actor from being counted as stolen (Bug #4328) 7 years ago
Capostrophic cc0c6ddaa6 Account for empty victimRef (Bug #4328) 7 years ago
scrawl 839196e4fa
Force normal polygon mode for the map camera (Fixes #4235) 7 years ago
David Cernat c18d07827d [Client] Hide difficulty widget because it has no use in multiplayer 7 years ago
David Cernat 37b349c2f6
Merge pull request #390 from OpenMW/master
Add OpenMW commits up to 28 Feb 2018
7 years ago
Thunderforge b6d9b6f544 Formatting improvement for advanced page 7 years ago
Thunderforge 4292351993 Adding Max Quicksaves setting to Launcher 7 years ago
scrawl 9e9c278527
Merge pull request #1597 7 years ago
Capostrophic 929fc68160
Consider items with dead owner not stolen (fixes bug #4328) 7 years ago
Koncord 7deff7a42a [Server] Use "else if" instead "if" + "return" 7 years ago
Koncord 23da0b16ea [Server] Fix build 7 years ago
David Cernat 9e10eb9c84
Merge pull request #389 from OpenMW/master
Add OpenMW commits up to 24 Feb 2018
7 years ago
David Cernat 03266d7648 [Client] Prevent guards from arresting players who are currently jailed 7 years ago
scrawl 31d7e6af32
Merge pull request #1608 7 years ago
scrawl 56613d817e
Merge pull request #1612 7 years ago
Capostrophic 089666dd68
Round up displayed encumbrance 7 years ago
Thunderforge a67373d116 Fixing "Show Enchant Chance" checkbox setting melee info instead 7 years ago
Capostrophic 99360e132f
Only display "new journal entry" message in dialogue if there *is* a new entry 7 years ago
Koncord 24ba4ae404 [Server] Delete ON_GUI_ACTION 7 years ago
Koncord 73d030b779 [Server] Remove return value from ON_PLAYER_CONNECT event 7 years ago
Koncord 4e869a2974 [General] Use correct versions of C++ per target
C++11 for client, components and launcher
C++14 for server, browser and masterserver
7 years ago
Koncord e85d0db771 [Server] Code style 7 years ago
Koncord 44c549211e [Server] use std::unique_ptr for packet controllers and MasterClient 7 years ago
Koncord 2bfd4627ed [Server] Use queue for MessageBox packets 7 years ago
Koncord bb7c5ee34c [Server] Allow nil as callback 7 years ago
Koncord 54945b537d [Server] Get rid handwritten ids in GUI API 7 years ago
Koncord 4bde7d80f5 [Server] Use regular Ptrs where possible to avoid seizure Ptrs by lua 7 years ago
Koncord f2a88e6a37 [Server] Use multiple parameters instead functions for Mark functions 7 years ago
Koncord 410eb353e8 [Server] Call GC after deleting player 7 years ago
Koncord a9614ad28e [Server] Fix invalid read 7 years ago
Koncord 69436714f9 [Server] Fix uninitialized variable 7 years ago
David Cernat 60f686ee43 [General] Implement setting of physics framerate as part of GameSettings 7 years ago
Daniel Vukelich 3bdd989a50 Remove numeric quicksave slot IDs
When multiple quicksaves occurred in quick succession, the numeric order
of the saves could not be guaranteed.  To prevent players from getting
confused as to why their saves appear out of order, don't number them.
7 years ago
David Cernat 886b3431bc [Client] When resurrecting players, set pcknownwerewolf to 0
This makes it so players are no longer known werewolves and are no longer attacked infinitely by guards.
7 years ago
David Cernat 53d758ba16
Merge pull request #385 from OpenMW/master
Add OpenMW commits up to 13 Feb 2018
7 years ago
scrawl 123f7b83d5
Make the CompositeMapRenderer use available time and add related setting 7 years ago
scrawl a708ac488e
Don't call Store::setUp() unnecessarily
Fixes a threading issue with ESM::Land store caused by calling setUp() while it's being used.
7 years ago
David Cernat 3b865244d0 [Server] Fix typo related to player deletion 7 years ago
David Cernat 4e9cac96c7 [Server] Add scale and selected spell functions to Player in Sol 7 years ago
David Cernat ac374a8ef9 Merge pull request #384 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
 	apps/openmw-mp/Player.cpp
	apps/openmw-mp/Script/Functions/Mechanics.cpp
	apps/openmw-mp/Script/Functions/Mechanics.hpp
	apps/openmw-mp/Script/Functions/Quests.cpp
	apps/openmw-mp/Script/Functions/Quests.hpp
	apps/openmw-mp/Script/ScriptFunctions.hpp
	apps/openmw-mp/processors/player/ProcessorRecordDynamic.hpp
	apps/openmw/mwmp/LocalPlayer.hpp
	apps/openmw/mwmp/WorldEvent.cpp
	apps/openmw/mwworld/worldimp.cpp
	components/openmw-mp/Base/BasePlayer.hpp
7 years ago
David Cernat a7e3261b0b
Merge pull request #383 from OpenMW/master
Add OpenMW commits up to 11 Feb 2018
7 years ago
scrawl 5bb7d76913
Merge pull request #1605 7 years ago
scrawl 899d464b0d
Cap the rain emitter's frame time (Fixes #4314) 7 years ago
scrawl f28024b541
Don't use Activate and Move keys for GUI navigation if bound to mouse buttons (Fixes #4225, Fixes #4320) 7 years ago
Andrei Kortunov f626a7fcc7 Take in account PC rank during disposition calculation (bug #4322) 7 years ago
David Cernat 74765b3ace [General] Implement selected spell sync as part of PlayerMiscellaneous 7 years ago
Marc Zinnschlag 2a5a574134 Merge remote-tracking branch 'thunderforge/feature/4054-launcher-advanced-settings-panel' 7 years ago
David Cernat 029dfc56ba [General] Implement player scale as part of PlayerShapeshift 7 years ago
David Cernat aa448523f8 [Client] Clean up WorldEvent::runConsoleCommands() slightly 7 years ago
David Cernat ce5670e57e [Client] Ignore invalid object refIds from ObjectPlace packets 7 years ago
David Cernat 4496625154
Merge pull request #381 from OpenMW/master
Add OpenMW commits up to 31 Jan 2018
7 years ago
David Cernat 66078bfea7 [General] Implement Mark location sync as part of PlayerMiscellaneous 7 years ago
scrawl b1b8e31562
Use unique_ptr over new/delete (Fixes #4305) 7 years ago
David Cernat 989f6e6b51 [General] Implement PlayerReputation packet 7 years ago
David Cernat 88ae0772cf [Server] Initialize new processors and fix issues with RecordDynamic 7 years ago
David Cernat bdafa8e9ab
Merge pull request #380 from TES3MP/0.6.3
Add 0.6.3 commits up to 30 Jan 2018
7 years ago
David Cernat 3d80e2db62 [General] Add placeholders for new packet types, part 2 7 years ago
David Cernat f1ba9253b0 [Client] Fix build 7 years ago
Thunderforge 8b17844781 Replacing Qt5-only method with Qt4-compatible code 7 years ago
David Cernat 5858e05362 Merge pull request #378 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	apps/openmw-mp/CMakeLists.txt
	apps/openmw-mp/Script/ScriptFunctions.hpp
	components/CMakeLists.txt
7 years ago
David Cernat 02af7f6ba1 [General] Add placeholders for new packet types 7 years ago
Thunderforge 8837046d9c Adding panel for advanced settings.cfg options 7 years ago
David Cernat 1a8a518897 Merge pull request #376 from TES3MP/0.6.3 while resolving conflicts
Conflicts:
	README.md
	apps/openmw-mp/Script/Functions/World.cpp
	apps/openmw/mwmp/LocalPlayer.cpp
	apps/openmw/mwmp/LocalPlayer.hpp
	apps/openmw/mwworld/scene.cpp
	components/openmw-mp/Version.hpp
7 years ago
David Cernat 78df8c5ebe
Merge pull request #375 from OpenMW/master
Add OpenMW commits up to 29 Jan 2018
7 years ago
scrawl 89c6b59c30
Merge pull request #1602 7 years ago
David Cernat ce11a1dfa9 [Client] Fix potential invalid pointer when storing cell unloads
Notably, builds of the client done with Clang were crashing on startup before this.
7 years ago
David Cernat 420dab10e1 [General] Track objects directly placed by players in ObjectPlace
This allows the OnPCDrop variable to get set correctly even when object placements have to go through the server first in order to gain a unique multiplayer index (mpNum).

Among other things, this makes it possible to roll marijuana joints in the popular mod "Tribunal Code Patch".
7 years ago
David Cernat 595bc5a152 [Client] Only send ObjectScale packets when scale actually changes 7 years ago
David Cernat 5d4b97645d Merge pull request #374 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/CMakeLists.txt
7 years ago
David Cernat 569911121d [Client] Fix build 7 years ago
David Cernat 5cf71a4e67 Merge branch 'master' of https://github.com/TES3MP/openmw-tes3mp 7 years ago
David Cernat d70b93e095 Merge pull request #373 from TES3MP/0.6.2 while resolving conflicts
# Conflicts:
#	apps/openmw/mwmp/DedicatedActor.cpp
#	apps/openmw/mwmp/processors/player/ProcessorPlayerResurrect.hpp
7 years ago
David Cernat d7e29f1f61 [Client] Unequip items with constant effect damage when resurrected 7 years ago
David Cernat d19d8b0a34 [Client] Add and use enchantmentType argument for unequipItemsByEffect() 7 years ago
David Cernat 6c4bb8c423 [Client] Move resurrection code for local player to LocalPlayer 7 years ago
David Cernat 6b75a82777 [Client] Ignore equipment items for DedicatedActors with count below 0 7 years ago
David Cernat e3bc11d9eb [Client] Fix ListBox overlap crashes by removing ListBoxes properly 7 years ago
David Cernat c6a85ee8f9 [Client] Add doesEffectListContainEffect() method to MechanicsHelper 7 years ago
David Cernat aa392ebf20 [Client] Unequip items if necessary when attr/skill modifier is set to 0 7 years ago
David Cernat ace825b99c [Client] Ignore invalid player class IDs from packets
Additionally, clean up variables names in related code.
7 years ago
David Cernat c6874509b6 [Client] Ignore invalid faction IDs from packets 7 years ago
Koncord edd883853d [Server] Add sendConsoleCommand function to lua api 7 years ago
Koncord 0e97b769f9 [General] Change type of Object::enchantmentCharge 7 years ago
Koncord 4cfb04aa7f [Server] Fix setBedRestAllowed 7 years ago
Koncord 7e5b929ea2 [General] Rework PacketPlayerFaction 7 years ago
Koncord 29ba07fe8c [General] Rework PacketPlayerInventory
Save the Action for each item. Now you can add or remove multiple items
7 years ago
Koncord de0bb3cdab [General] Change type of Item::enchantmentCharge to float 7 years ago
Koncord cb86557aca [Server] Init Player::inUpdateQueue 7 years ago
Koncord 1f1cbf53f9 [Client] Mark trivial destructor as default, remove "virtual" keyword
Mark constructor as explicit
7 years ago
Koncord b63bf258ff [Client] Remove "virtual" keyword for getLocalActor & getDedicatedActor 7 years ago
Koncord c2578918f2 [Client] Do not copy strings in getLocalActor and getDedicatedActor 7 years ago
Koncord e2e197d84a [Client] Fix getting element of shared_ptr by reference 7 years ago
Koncord f1e2bc01f6 [General] Use floats instead of doubles for enchantmentCharge 7 years ago
Ilya Zhuravlev 8d44d3124e Android: Add callbacks for basic cursor handling. 7 years ago
David Cernat a037193e79 Merge pull request #372 from TES3MP/0.6.2 while resolving conflicts
Conflicts:
	apps/openmw-mp/Script/Functions/Actors.cpp
	apps/openmw-mp/Script/Functions/Actors.hpp
	apps/openmw-mp/Script/Functions/Items.cpp
	apps/openmw-mp/Script/Functions/Items.hpp
	apps/openmw-mp/Script/Functions/World.cpp
	apps/openmw-mp/Script/Functions/World.hpp
	apps/openmw/mwmp/WorldEvent.cpp
	components/openmw-mp/Packets/Player/PacketPlayerEquipment.cpp
	components/openmw-mp/Version.hpp
7 years ago
Ilya Zhuravlev 455f718394 Android: register a virtual controller definition 7 years ago
Daniel Vukelich 3af8f63895 Use unsigned integer types for QuickSave indices 7 years ago
David Cernat 5894ffae7d [Client] Ignore dynamic object placements or spawns in packets 7 years ago
David Cernat 9935f56d46 [General] Use doubles instead of ints for enchantmentCharge
Additionally, include enchantmentCharges for items  in PlayerEquipment packets.
7 years ago
David Cernat f746958afa [Client] Send enchantmentCharge for items added or removed in containers 7 years ago
David Cernat bce3d0eb4c [Client] Use more descriptive message for version mismatch 7 years ago
Bret Curtis 588c1df0f0
Merge pull request #1599 from xyzz/android
Update android port.
7 years ago
Ilya Zhuravlev d2121ccd62 Update android port. 7 years ago
Daniel Vukelich f09fd6795c Follow openmw style guide 7 years ago
scrawl 2caaa48b91
Workaround to make sure message box remains on top (Fixes #4298) 7 years ago
scrawl e2e48e0a50
Add default value for 'sAnd' GMST (Fixes #4269) 7 years ago
scrawl d9d8de3061
Catch exceptions in updateWindowManager (Bug #4269) 7 years ago
scrawl 80f7279a4d
Change default installation directory from 'data' to 'basedata' (Bug #3557) 7 years ago
Daniel Vukelich 97924d97c7 Add the option for multiple quicksave slots
With more than 1 quicksave slot, slots will be created each time you
quicksave until the maximum number (configured in settings) of
quicksaves has been reached.  After that, the oldest quicksave slot will
be replaced each time you quicksave.  Saves are numbered sequentially,
unless the maximum number of slots is 1, in which case it is not numbered.
7 years ago
Andrei Kortunov eccb49da18 Do not summon the bound bow if there is no suitable ammo 7 years ago
Andrei Kortunov b995617559 implement rateAmmo() function 7 years ago
Koncord 043eb224e2 [Browser] Cast QStrings to UTF-8 instead Latin1 7 years ago
Koncord 35b771b19e [Browser] Rework Connect window 7 years ago
scrawl dd5ebe225b
Merge pull request #1580 7 years ago
scrawl bba9a8dd91
Don't update off-screen animations
Make flying creatures animate in-place when out of processing range
7 years ago
scrawl 1522bda60b
Fix crash in getDistance when invoked before the game starts 7 years ago
scrawl 83726ee06a
Fix Reset Controls button not functioning properly 7 years ago
David Cernat 92060bd6b6
Merge pull request #370 from TES3MP/0.6.2
Add 0.6.2 commits up to 10 Jan 2018
7 years ago
David Cernat 14ef2fa791
Merge pull request #369 from OpenMW/master
Add OpenMW commits up to 9 Jan 2018
7 years ago
scrawl c7f60a6dc8
Merge pull request #1595 7 years ago
scrawl f6ca7295a6
Revert "Merge pull request #1595"
This reverts commit 7ef7b1a7b1, reversing
changes made to 9e7e4de0ab.
7 years ago
scrawl 7ef7b1a7b1
Merge pull request #1595 7 years ago
scrawl 9e7e4de0ab
Merge pull request #1594 7 years ago
Andrei Kortunov dba071f881 Remove the 'Screenshot saved' message (bug #4191) 7 years ago
Koncord 1de9f30449 [Server] Fix iterating killed timers when kill() called in the callback
Instance new timers before new tick
7 years ago
David Cernat 8316ec0fa7 [Client] Update tes3mp change comment for object rescaling 7 years ago
David Cernat 09548d05f7 [Client] Ignore cell changes that move actors to where they already are 7 years ago
David Cernat 4a9a628a0f [Client] When getting an actor, make sure their cell is initialized 7 years ago
David Cernat 4caf7ca30a [Client] Add temporary fix for crashes caused by custom GUI elements 7 years ago
David Cernat 0cc86c04d1 [Client] Print plugin discrepancies, not just plugin lists side by side 7 years ago
Kyle Cooley 7248a5d037 Remove some duplication, standardize sol2 header inclusion 7 years ago
Kyle Cooley ba4d2bd5fe Merge remote-tracking branch 'origin/master' into LibIssues 7 years ago
David Cernat b6a7377692 Merge pull request #366 from TES3MP/0.6.2 while resolving conflicts, 2nd try
Conflicts:
	apps/openmw-mp/Networking.cpp
	apps/openmw-mp/Script/Functions/Miscellaneous.cpp
	apps/openmw-mp/Script/Functions/Miscellaneous.hpp
	apps/openmw/mwmp/GUI/GUIChat.cpp
7 years ago
Kyle Cooley fcd4d8b842 Fix build for gcc-5.4.0 7 years ago
Kyle Cooley e2103d0bea Clean up find file for LuaJit, add one for Sol2 7 years ago
Koncord 35922e4898 [General] Change "enum ACTOR_ACTION" to "enum class Action" 7 years ago
Koncord 5b8f4f3e92 [Browser] Stop PingHelper on refresh 7 years ago
David Cernat a639d3494a [Client] Fix use of DedicatedPlayers as targets for ConsoleCommand 7 years ago
David Cernat 502df7d9c1 [Client] Clean up GUIChat slightly 7 years ago
David Cernat a818140c14
Merge pull request #365 from OpenMW/master
Add OpenMW commits up to 2 Jan 2017
7 years ago
Thunderforge bd072b131b Moving controller file out of the controllers subdirectory 7 years ago
David Cernat 1cf2f35a28 [Server] Add script functions to set & get plugin enforcement state 7 years ago
Andrei Kortunov b277b83810 Display the 'Screenshot saved' message after the screenshot saving (bug #4191) 7 years ago
Bret Curtis c3c3fbc68e overriden -> overridden 7 years ago
David Cernat 65d978a3cb
Merge pull request #364 from OpenMW/master
Add OpenMW commits up to 1 Jan 2017
7 years ago
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
7 years ago
Koncord c4949ac5d9 [General] Change regular enums to enum class 7 years ago
Thunderforge 3f7143556a Providing different mappings depending on the version of SDL installed 7 years ago
Koncord 8f5d31cb03 [Server] Iterate only through updated players on each frame 7 years ago
Koncord 4ab338bbb1 [Server] Register ON_PLAYER_QUICKKEYS event 7 years ago
Koncord 5777759aae [General] Change enum QuickKey::QUICKKEY_TYPE to enum class 7 years ago
Koncord 2019128d92 [Server] Change signature of TimerController::kill, validate callback 7 years ago
Miloslav Číž 3b741dc4b7 Revert "Add slider for refraction size in settings window"
This reverts commit ee40b41285.
7 years ago
David Cernat 51a92bcf8f [Client] Fix build 7 years ago
David Cernat 09958681cd Merge pull request #363 from TES3MP/0.6.2 while resolving conflicts, 2nd try 7 years ago
scrawl 57257d057f
Remove unintended jump cooldown (Fixes #4250) 7 years ago
David Cernat 47a3dc9ff2 [Server] Add broadcast argument to functions for sending WorldPackets 7 years ago
David Cernat 1e2517698d [Server] Send player speech and animation packets only to nearby players 7 years ago
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.
7 years ago
David Cernat db0e0d376e [Client] Use new code to set the console's Ptrs from server scripts
Previously, reusing the console's object selection code made it so using the same Ptr twice in a row was akin to clicking on the same object twice in the console window, i.e. the object was deselected the second time around. Additionally, that same code was setting key focus to the hidden console window, preventing players from moving until they activated another window (such as their inventory or chat window).
7 years ago
David Cernat dddd2f1cc7 Merge pull request #361 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
7 years ago
David Cernat 5fd9079b26 [Client] Stop drag and drop when setting player inventory 7 years ago
David Cernat 40e70ebf9c [Client] Fix key focus for chat window 7 years ago
David Cernat bed96e5a3d [Client] Remove check of GM_RestBed GUI mode that no longer exists 7 years ago
David Cernat cac2c6c1e8 Merge pull request #360 from TES3MP/0.6.1-openmw-updates while resolving conflicts 7 years ago
David Cernat ecb0ad0d77 Merge pull request #359 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
7 years ago
David Cernat 993081ba1e [General] Add enchantmentCharge to worldObjects and items 7 years ago
scrawl b8c25e6bff
Use the correct priority of animation sources in getStartTime (Fixes #4263) 7 years ago
Marc Zinnschlag 7245b251e8 Merge remote-tracking branch 'drummyfish/cs-cam' 7 years ago
Marc Zinnschlag 93716cecd9 Merge remote-tracking branch 'origin/master' 7 years ago
scrawl 993982628d
Merge pull request #1590 7 years ago
Andrei Kortunov 1a58171e86 Do not allow to sell items from containers with zero capacity (bug #4268) 7 years ago
David Cernat fef6bddc68 [Client] Fix typo related to drag and dropping 7 years ago
David Cernat 535fba0cb3 [Client] Finish drag and drops when arrested or teleported by server 7 years ago
Miloslav Číž 01f9d90315 CS: Reorder 3D input menu 7 years ago
Miloslav Číž 13dc1bd41e CS: Add tooltip to camera-ortho-size preference 7 years ago
Miloslav Číž 1f5feeddb9 CS: Change camera parameter types to int 7 years ago
Miloslav Číž f2777f7242 CS: Mover object-marker-alpha under Rendering 7 years ago
Marc Zinnschlag ecf1cea1b7 Merge remote-tracking branch 'drummyfish/cs-cam' 7 years ago
Miloslav Číž 79527b746a Remove unused variable 7 years ago
Miloslav Číž b246580c63 Fix orbit camera axis 7 years ago
Andrei Kortunov ba46473038 Do not skip weather transitions from SetPos script command (bug #3603) 7 years ago
David Cernat ebf88d12a3 [Client] Send PlayerInventory packet after buying skill training 7 years ago
scrawl e9ecaf712b
Merge pull request #1584 7 years ago
scrawl 7d62f05f81
Merge pull request #1583 7 years ago
David Cernat 0ad9c99cf4 [Client] Send PlayerInventory packet after completing a vendor trade 7 years ago
David Cernat a84c4c7ecc [Server] Print module order on startup 7 years ago
Andrei Kortunov 0e04a26ef6 Set duration of magic effects from ingredients (bug #4261) 7 years ago
Andrei Kortunov c908ad2fba Do not allow to place actors underground via SetPos (bug #3783) 7 years ago
David Cernat f2eca2566f [Server] Add storedData table for Player to increase clarity
This way, customData is meant to hold module-specific and temporary data while storedData is meant to hold persistent core data.
7 years ago
Koncord 077a3d06b3 [General] Change type of BasePlayer::resurrectType to ResurrectType 7 years ago
Koncord f9c4b847aa [Server] Make argument const reference 7 years ago
Koncord c5388e49f2 [Server] Remove Pawn switcher in cmake 7 years ago
Koncord ba07d7820f [Server] Remove Terra 7 years ago
Koncord 77d14211c9 [Server] Add Weather.cpp to build 7 years ago
Koncord ecbe0127b0 [Client] Remove unused variable 7 years ago
Koncord fd721143e2 [Client] Implement weather packet 7 years ago
Koncord 25b7095396 [Client] Share WeatherManager to the mwmp::Main class 7 years ago
Koncord 44dc153ebe [Server] Add Weather API 7 years ago
Koncord aff1859759 [Server] Add new line for help strings 7 years ago
Koncord 122a30c183 [General] Change type of refNumIndex & mpNum to unsigned 7 years ago
Chris Robinson 08e947319a Restore exception throwing to the decoder 7 years ago
Miloslav Číž ee40b41285 Add slider for refraction size in settings window 7 years ago
Koncord 2726d94d10 [Client] Disallow to load save game via launch options 7 years ago
Koncord d98bb74b80 [Client] Disable autosave on waiting 7 years ago
Koncord bfdf348a6c [Server] Fix Undefined behavior 7 years ago
Koncord f11473da87 [Client] Remove WorldEvent::addObject(), use move semantics 7 years ago
Koncord 4d0072a74c [Server] Use foreach loop 7 years ago
Koncord cd620e17ec [Server] Use std::move(tokens) 7 years ago
Koncord dd352f0a91 [Server] Improve Player::sendToLoaded() 7 years ago
Koncord f35d35741e [General] Remove redundant code
Remove BaseEvent::worldObjectCount
Remove BaseActor::count
Use foreach loops in packets and processors
Remove redundant "&" in CellController::get().getCell() calls
7 years ago
Chris Robinson 06ae61479a If a sound effect fails to load, substitute silence. 7 years ago
Koncord 585c24cee8 [Server] Optimize CellController 7 years ago
Koncord ff8b5061b4 [Server] Modernize CellController singleton 7 years ago
Koncord e97dac7793 [Server] Mark derived processor classes as final 7 years ago
Koncord 7748e582a8 [Client] Mark derived processor classes as final 7 years ago
David Cernat de77ee3126
Merge pull request #356 from OpenMW/master
Add OpenMW commits up to 7 Dec 2017
7 years ago
Miloslav Číž e309dfd234 CS: Rename variables (AppVeyor fix) 7 years ago
scrawl 9cee439e37
Merge pull request #1577 7 years ago
scrawl 1d823d8ae1
Merge pull request #1579 7 years ago
scrawl b12cd1f5b2
Merge pull request #1581 7 years ago
Miloslav Číž 199e41833f
Merge branch 'master' into cs-cam 7 years ago
Miloslav Číž d85f8deaa3 CS: Add fixed roll setting, plus ortho fix 7 years ago
Miloslav Číž 1b77e3ed62 CS: Add ortho camera setting 7 years ago
Miloslav Číž bfad5ebde4 CS: Fix camera orbit control with keys 7 years ago
David Cernat ad61d88cb1 [General] Fix typos and use consistent style for recent additions 7 years ago
Chris Robinson aecf74e7bb Don't throw exceptions from the audio decoder 7 years ago
Koncord 051f65a4d5 [Client] Make channel buttons blinking on new messages 7 years ago
Koncord 7eecbfd08e [Client] Fix saving channel history 7 years ago
Koncord 1c7330635b [Server] Add & register ON_PLAYER_WEATHER event 7 years ago
Koncord 392e645fe5 [Server] Add isMarkedForDeleteion function 7 years ago
Koncord 91398c5dcc [Server] Implicitly join to "Default" channel 7 years ago
Koncord aa183e6844 [General] Introduce chat channels 7 years ago
Koncord c55f0f73b8 [Server] Pass shared_ptr<Player> by reference 7 years ago
Miloslav Číž 5e076ee015 CS: Fix camera orbit with arbitrary roll 7 years ago
Miloslav Číž cfdc6c788e CS: Make camera FOV change dynamically 7 years ago
Miloslav Číž 7d36dd68dc CS: Make orbit camera not change roll 7 years ago
Miloslav Číž 360d786ff2 CS: Add rendering prefs and camera FOV 7 years ago
Andrei Kortunov 744859f327 Take in account armor condition in the armor rating calculation (bug #4246) 7 years ago
Miloslav Číž b69c16e682 Add setting option to scale water refractions 7 years ago
David Cernat 85a9181c12
Merge pull request #355 from OpenMW/master
Add OpenMW commits up to 6 Dec 2017
7 years ago
Koncord 94f3eaa980 [Server] Fix warning "implicit fallthrough" 7 years ago
Allofich 7e87ce8787 Prevent combat on/off cycling for calmed actors 7 years ago
Allofich e0c54b3f39 Stop guards trying to arrest player when calm
(Fixes #3863)
7 years ago
Andrei Kortunov a28cc37501 Do not sell ingredients from organic containers 7 years ago
Andrei Kortunov 29b2308b2c Do not display cyrillic soft/hard signs in the journal index 7 years ago
Andrei Kortunov b6ae7f3cc8 Do not add greetings to the journal index (bug #4342) 7 years ago
David Cernat e97c9f72a2 [General] Rework getting/clearing of skill modifiers as with attributes 7 years ago
David Cernat 456bcee68a [Server] Use Utils function as workaround for "bad exception" on Windows 7 years ago
David Cernat cfb5835e17 [Server] Clean up method and variable names 7 years ago
Koncord cd03d59056 [Client] Fix invalid read (memcheck warning) 7 years ago
David Cernat c2f330d4f1
Merge pull request #354 from TES3MP/master
Add master commits up to 4 Dec 2017
7 years ago
David Cernat 07f0cc2b0e
Merge pull request #353 from OpenMW/master
Add OpenMW commits up to 4 Dec 2017
7 years ago
scrawl ff1226c96b
Merge pull request #1575 7 years ago
Andrei Kortunov 8decd35607 Fixes crash on quickload from the container menu (bug #4239) 7 years ago
David Cernat fc5e883160 [General] Rework PlayerStatsDynamic packets so they are of minimal size 7 years ago
David Cernat 993cc3dfd6 [Server] Rename server "plugins"/"mods" into "modules" for clarity
The terms "plugins" and "mods" were used interchangeably to refer to collections of server scripts, which was bound to cause confusion later on, especially with client data files frequently being referred to as "plugins" and "mods" as well.

Moreover, the server configuration file now starts its manual ordering with "Module1" for consistency with the pluginlist.json (soon to be dataFileList.json) of the CoreScripts.
7 years ago
David Cernat 047ad40b96 [Client] Clear FortifyAttribute effects when server sets modifier to 0 7 years ago
David Cernat 2944be18ae [Server] Actually, turn SetAttributeModifier into ClearAttributeModifier
There's no way SetAttributeModifier() was going to make sense if, say, a player had drunk 3 different potions fortifying the same attribute and was wearing equipment fortifying it as well. How would one change the sum modifier of those while accounting for each specific effect's duration and magnitude?

The only workable solution is to allow the server to clear the modifier.
7 years ago
David Cernat ef6dc61797 [Client] Send PlayerAttribute packets when attribute modifiers change 7 years ago
David Cernat e8d636ebc3 [Server] Rework Get/SetAttributeCurrent into Get/SetAttributeModifier
As seen here, attributes don't use the concept of current values, but rather of value modifiers and value damage:

https://github.com/OpenMW/openmw/blob/master/apps/openmw/mwmechanics/stat.cpp#L217
7 years ago
David Cernat d1ad0c91f8 [General] Rework PlayerEquipment packets so they are of minimal size
Moreover, rename BaseNetCreature's equipedItems into equipmentItems.
7 years ago
David Cernat c9c363ebef [General] Allow GameSettings to set bed & wilderness resting separately 7 years ago
David Cernat 7e322f1f8b Merge pull request #352 from TES3MP/master while resolving conflicts
# Conflicts:
#	README.md
7 years ago
David Cernat e7f20e7daf Merge pull request #351 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	README.md
7 years ago
scrawl a4d8aef40d
Merge branch openmw-43 into master
Conflicts:
	CMakeLists.txt
	README.md
	files/mygui/openmw_trade_window.layout
7 years ago
scrawl 47a5229eed
Merge pull request #1564 7 years ago
scrawl 59bfd670c0
Merge pull request #1571 7 years ago
David Cernat bd9e8bd10f [General] Simplify storing of attribute and skill index changes 7 years ago