Commit Graph

4101 Commits (4225cbae02f2d47d6f2c3dc15a084257bc70e5ef)

Author SHA1 Message Date
David Cernat 66d5109509 [General] Fix information exchange for players sharing a cell
Previously, two players entering the same cell only sent and received their latest changes for dynamic stats, attributes, skills and equipment when they started sharing that cell.
7 years ago
David Cernat 7db74509e0 Merge pull request #412 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwscript/transformationextensions.cpp
7 years ago
scrawl 55a6344fb0
Revert log spam 7 years ago
David Cernat 02eef933fd
Merge pull request #411 from OpenMW/master
Add OpenMW commits up to 19 Apr 2018
7 years ago
Evgeny Kurnevsky 48fb6bb9e8
Fix crash when rollDice is called with 0. 7 years ago
David Cernat a541d7df3c [General] Rework PlayerStatsDynamic packets so they are of minimal size
(cherry picked from commit fc5e883160)
7 years ago
David Cernat b9520c11da [General] Rework PlayerEquipment packets so they are of minimal size
Moreover, rename BaseNetCreature's equipedItems into equipmentItems.

(cherry picked from commit d1ad0c91f8)
7 years ago
David Cernat c5b08d6109 [General] Simplify storing of attribute and skill index changes
(cherry picked from commit bd9e8bd10f)
7 years ago
David Cernat 2c77d5f498 [General] Set enforcedLogLevel to -1 when initializing BasePlayer 7 years ago
David Cernat 7b702bf8c2 [General] Add and use utility function for int value checks in vectors
(cherry picked from commit a796f81444)
7 years ago
David Cernat b6099024df [General] Rework PlayerAttribute packets so they are of minimal size
Previously, whenever a single attribute value changed for a player, that player then sent a PlayerAttribute packet with all values for all 8 attributes.

This did not cause anywhere as much packet spam as PlayerSkill used to, but there was no good reason not to fix it as well.

(cherry picked from commit b0965f094a)
7 years ago
scrawl 1f1f47431f
Merge pull request #1672 7 years ago
Capostrophic 48467814d4 Improve random number generation 7 years ago
David Cernat 78441c769a [General] Rework PlayerSkill packets so they are of minimal size
Previously, whenever a single skill value changed for a player, that player then sent a PlayerSkill packet with all values for all 27 skills, plus the player's progress towards the next level and the bonuses to each attribute on the next level up as the result of sklll increases thus far.

This commit makes PlayerSkill contain only the values of specific skills, moves the player's progress towards the next level to PlayerLevel packets, and moves the bonuses to each attribute on the next level up to PlayerAttribute packets.

Players now also send a PlayerSkill packet whenever their progress towards a new point in a skill changes. This was previously avoided so as to not have massive packet spam.

(cherry picked from commit ef79a98544)
7 years ago
David Cernat 28f1c1b0d3 [General] Rework CharGen slightly for clarity purposes
Previously, charGenStage.end was doing double duty as both the variable indicating the number of CharGen stages and – when set to 0 – the variable indicating that CharGen was over. The latter role is now filled by a new boolean.

(cherry picked from commit 926106cf8c)
7 years ago
scrawl ce1b2a612c
Merge pull request #1674 7 years ago
David Cernat 9e5ddeac50
Merge pull request #408 from OpenMW/master
Add OpenMW commits up to 18 Apr 2018
7 years ago
Capostrophic 90f3ff2da4 Don't force DDS file usage (fixes #1392)
Fallback to a DDS file if the requested texture path doesn't point to an existing file, not vice versa
7 years ago
tri4ng1e d310d36ea3
[Fix] Some PVS-Studio and cppcheck fixes 7 years ago
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.
7 years ago
scrawl 6c79c0fb35
Add an empty compileGLObjects implementation to Rig/MorphGeometry to avoid unnecessary creation of display list done by osg 7 years ago
Andreas Sturmlechner 2c9d46a60b
Fix build with Qt 5.11_beta3 (dropping qt5_use_modules) 7 years ago
David Cernat 70f9cb535e [General] Use RecordHelper methods to create and update DedicatedPlayers 7 years ago
David Cernat fa652964fd
Merge pull request #403 from OpenMW/master
Add OpenMW commits up to 9 Apr 2018
7 years ago
scrawl ef050d7869
Merge pull request #1660 7 years ago
David Cernat bdc9132e7c [General] Add SetResetStats server script function
Add reading and writing of resetStats variable to PlayerBaseInfo Packet

Fix typos in various server script function descriptions
7 years ago
David Cernat 73dea494c4 [General] Allow changes from PlayerBaseInfo without player stat reset 7 years ago
David Cernat c8abd11f5d [General] Move creature disguises for players to PlayerShapeshift packet
Additionally, make associated variables clearer, and move associated server script functions next to other shapeshifting functions.
7 years ago
David Cernat 34be9383e5 [General] Add isPlayer boolean to targets in packets 7 years ago
David Cernat a86c68c5a1 [General] Add sync for ranged weapon & projectile strike enchantments 7 years ago
David Cernat 3f8d94b030 [General] Synchronize strike enchantments in combat 7 years ago
David Cernat e3c43c6af7 Merge pull request #400 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/spellcasting.cpp
7 years ago
scrawl e73af18824
Merge pull request #1653 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
Capostrophic 1aa3ed0c18 Font loader fallback character reorganization (fixes #1987) 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 ac82124a5d Merge pull request #395 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/actors.cpp
7 years ago
Capostrophic be542507f8
Make hasMaster() behavior consistent with isGameFile() (fixes #3618) 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
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
scrawl eb723f5ae6
Merge pull request #1629 7 years ago
Capostrophic 002ad9ae1b Print a warning in case a fallback value wasn't found 7 years ago
Capostrophic e4531a6910 Use middle gray instead of pure black as default fallback color (Fixes #2841) 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 b7c6261e16 Merge pull request #392 from OpenMW/master while resolving conflicts
# Conflicts:
#	README.md
7 years ago
scrawl e81faf5f2f
Add an option to disable GUI keyboard navigation (Bug #4333) 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
Miloslav Číž db6107f12f
Merge branch 'master' into screenshot360 7 years ago
David Cernat 60f686ee43 [General] Implement setting of physics framerate as part of GameSettings 7 years ago
David Cernat 65c3472772
Merge pull request #386 from OpenMW/master
Add OpenMW commits up to 13 Feb 2018, part 2
7 years ago
scrawl 9b8c56761b
Fix timing error 7 years ago
Alexander "Ananace" Olofsson 145b47a550
Fix Windows builds
`std::min`/`std::max` are part of algorithm, which is not implicitly included in Windows builds
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 ac1609c433
Merge pull request #1604 7 years ago
scrawl 123f7b83d5
Make the CompositeMapRenderer use available time and add related setting 7 years ago
uramer 5502790ed9 removed the unnecessary comment 7 years ago
uramer 86c25f5dba Removed NIF flag handling to replicate vanilla engine behaviour 7 years ago
David Cernat 74765b3ace [General] Implement selected spell sync as part of PlayerMiscellaneous 7 years ago
David Cernat 029dfc56ba [General] Implement player scale as part of PlayerShapeshift 7 years ago
David Cernat 66078bfea7 [General] Implement Mark location sync as part of PlayerMiscellaneous 7 years ago
David Cernat 989f6e6b51 [General] Implement PlayerReputation packet 7 years ago
David Cernat 3d80e2db62 [General] Add placeholders for new packet types, part 2 7 years ago
David Cernat 273a1f50af
Merge pull request #377 from OpenMW/master
Add OpenMW commits up to 29 Jan 2018
7 years ago
David Cernat 02af7f6ba1 [General] Add placeholders for new packet types 7 years ago
scrawl 25a6a67508
Fix the optimizer messing up LOD node's children (Fixes #4301) 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 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 613adf6b30 [General] Update version to 0.6.3 7 years ago
David Cernat 5d4b97645d Merge pull request #374 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/CMakeLists.txt
7 years ago
Ilya Zhuravlev 9e9f6f3132 loadtes3: don't pack() non-POD structs 7 years ago
Ilya Zhuravlev 359910762d GraphicsWindowSDL2: support setting up GLESv2 context for android 7 years ago
Ilya Zhuravlev a038327521 SDLCursorManager: fix possibly invalid read when no cursor present
On android we have no cursor so I moved the check closer to usage
7 years ago
David Cernat 28f47c4f81 [General] Update version to 0.6.2-hotfixed 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
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
scrawl 047c44f265
Ignore duplicate data directories to work around the fallout of (Fixes #3557) 7 years ago
scrawl 259919d125
Print a warning when an ambiguous file on a case-sensitive file system is found 7 years ago
Marc Zinnschlag 2dff3aab22 allow . and - in the name part of a begin script statement, but not at the beginning of a name. Fixes #4061 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
David Cernat a818140c14
Merge pull request #365 from OpenMW/master
Add OpenMW commits up to 2 Jan 2017
7 years ago
David Cernat 65d978a3cb
Merge pull request #364 from OpenMW/master
Add OpenMW commits up to 1 Jan 2017
7 years ago
Bret Curtis 93f14c219c camelCase 7 years ago
Bret Curtis 7a7b040216 fix building on mips machines 7 years ago
scrawl c920f95d1e
Don't incorrectly discard root node transformation (Fixes #4272) 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 993081ba1e [General] Add enchantmentCharge to worldObjects and items 7 years ago
David Cernat c9c363ebef [General] Allow GameSettings to set bed & wilderness resting separately 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
David Cernat 3508a16836 [General] Use GameSettings packet to set ability to rest and wait 7 years ago
David Cernat d06817a356
Merge pull request #347 from OpenMW/master
Add OpenMW commits up to 25 Nov 2017
7 years ago
Andrei Kortunov 94c0e3ed10 Move toUpper() from StringUtils to the JournalViewModel 7 years ago
David Cernat 656453725b
Merge pull request #343 from OpenMW/master
Add OpenMW commits up to 23 Nov 2017
7 years ago
David Cernat 6668b9ab42 [General] Implement ConsoleCommand packet 7 years ago
Andrei Kortunov 67acb83b62 Add missing include 7 years ago
Andrei Kortunov 5f41f7c48d Clean code up a bit 7 years ago
Andrei Kortunov ba91cd658b Convert topic name to Unicode 7 years ago
Andrei Kortunov f0ca3eabd3 Merge from upstream master 7 years ago
scrawl 9fda3b6db4 Fix NumericEditBox behavior broken by switch to std::stoi
For some reason stoi doesn't throw an error for '1foo' while 'foo1' does.

Now the edit box flat out rejects any non-digit key events.
7 years ago
Andrei Kortunov a391990f2a Provide multibyte toLower() and single chars comparator 7 years ago
Miloslav Číž 3ae5310567 use loading screen to freeze the screen 7 years ago
Alexander Stillich 93e9df15c9 Fixed parameter naming 7 years ago
Alexander Stillich 52b3507a2b Removed escape_hash_filter::mPrevious, removed usage of boost::replace_all 7 years ago
Alexander Stillich 09aac22782 Added StringUtil::replaceAll() 7 years ago
Alexander Stillich 92aaff3b78 Fixed escaping @ in boost program options filter 7 years ago
Miloslav Číž e804c4a011 remove no longer used method 7 years ago
David Cernat 01db219de4
Merge pull request #333 from OpenMW/master
Add OpenMW commits up to 11 Nov 2017
7 years ago
scrawl a5ba1caed1
Merge pull request #1541 from astillich/4189
Fixed escaping @ in boost program options filter
7 years ago
scrawl a5adc5b018 Add NPC base skeleton files to the optimizer blacklist (Fixes #4159) 7 years ago
David Cernat f2a6957e16 Merge pull request #331 from OpenMW/master while resolving conflicts 7 years ago
Miloslav Číž d763e9fe46 add settings for spherical screenshots 7 years ago
scrawl 244cc5b861 Reduce error spam 7 years ago
scrawl 7b4add2ae4 Fall back to non-shader material if creating the shader fails
Also fixes an uncaught exception that will break the whole game.
7 years ago
Alexander Stillich 43b5c2e36b Fixed parameter naming 7 years ago
Alexander Stillich 70d578d050 Removed escape_hash_filter::mPrevious, removed usage of boost::replace_all 7 years ago
Alexander Stillich af3e1f92ec Added StringUtil::replaceAll() 7 years ago
Alexander Stillich 7d39c5450c Fixed escaping @ in boost program options filter 7 years ago
David Cernat 2ca4017371 [Client] Force position updates for players in animations 7 years ago
David Cernat be25decee2 [General] Implement PlayerSpeech packet 7 years ago
David Cernat 605b06c303 [General] Find actor speech captions instead of sending them in packets 7 years ago
David Walley 41dc82abad Update Links to Documentation in settings.cfg files (#1523)
* Update settings-default.cfg

* Update settings.cpp
7 years ago
David Cernat 413893aa51 [General] Implement PlayerAnimPlay packet 7 years ago
David Cernat 37304655da Merge pull request #326 from OpenMW/master
Add OpenMW commits up to 25 Oct 2017
7 years ago
David Cernat 50d5fffb7f [General] Add and implement PlayerQuickKeys packet 7 years ago
AnyOldName3 c1a871ff1f Make indentation consistent. 7 years ago
AnyOldName3 daf7d8451c Switch to a more reliable method of passing the git-version targt the data it needs 7 years ago
AnyOldName3 e3142b9643 Add missing variables to those forwarded to the git-version target 7 years ago
David Cernat dd25c7db4e Merge pull request #324 from OpenMW/master
Add OpenMW commits up to 24 Oct 2017
7 years ago
scrawl 0c6ef17fb5 Add explicit variant of 'OnActivate' 7 years ago
David Cernat 8c47d63b08 [General] Update version to 0.6.2 7 years ago
David Cernat 3a9e5e3a7b Merge pull request #319 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwworld/worldimp.hpp
7 years ago
Marcin Baszczewski 46b015d3d9 Fix assert with empty setting value
Local value could be empty, so it's important to check it size before read first char.
7 years ago
Marc Zinnschlag bdabace7e2 Merge remote-tracking branch 'aesylwinn/LLmerge' 7 years ago
David Cernat 184c5f2b29 Merge pull request #315 from OpenMW/master
Add OpenMW commits up to 17 Oct 2017
7 years ago
scrawl 7f8d996eff Merge pull request #1502 from AnyOldName3/launcher-and-wizard-ampersand-escape-support
Launcher and wizard ampersand escape support
7 years ago
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
7 years ago
scrawl 136ef1f738 Fix incomplete settings in recreateShaders() 7 years ago
scrawl 03554b2f4b Fix some style issues flagged by cppcheck 7 years ago
scrawl 50d7eb8e54 Fix crash when adding a NULL object to the cache 7 years ago
scrawl 97ec38affb Merge pull request #1492 from drummyfish/master
fix rain/snow moving with player (issue #2698)
7 years ago
AnyOldName3 49dbb4a9ca Add a third copy of a comment where I felt clarification was missing 7 years ago
AnyOldName3 7329e6a9ef Load 'data=...' lines correctly when starting the wizard or launcher, and save them correctly when exiting the launcher. 7 years ago
AnyOldName3 28ff677337 Save 'data=...' lines correctly when exiting the wizard 7 years ago
Miloslav Číž 65977b910e wrap weather around in all directions 7 years ago
Miloslav Číž 380a5799dd use bbox as wrap range & apply to all particle systems 7 years ago
Miloslav Číž 33a1459b11 search for particle system by class name 7 years ago
Kyle Cooley 11eae16645 Get rid of duplicate function, fix flag checking 7 years ago
scrawl 5fbdb64bb9 Add OPENMW_DECOMPRESS_TEXTURES environment variable to decompress textures in software if not supported by graphics hardware
Disabled by default due to requiring new functionality that was just added to OSG 3.6 or OpenMW/OSG.
7 years ago
scrawl f3ca9832b0 Merge pull request #1500 from akortunov/extraspell
Implement ExtraSpell magic effect
7 years ago
Andrei Kortunov 30b05b557b ExtraSpell magic effect: a basic implementation 7 years ago
AnyOldName3 c9e86a8ebc Remove superfluous argument 7 years ago
AnyOldName3 f9a3562ccd Remove duplicate macro definition and fix warning 7 years ago
AnyOldName3 2652a89df4 Fix mismatched indentation that apparently the .editorconfig file doesn't handle automatically 7 years ago
AnyOldName3 f8fe992dc0 Adjust CMake's run-time resource handling such that the Windows CI script does not have to copy these files 7 years ago
David Cernat 182f8c1f06 [General] Print client version on startup 7 years ago
David Cernat 61b1a59814 [General] Move server's version printing method to Utils 7 years ago
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
7 years ago
Marc Zinnschlag dd17f70068 Merge remote-tracking branch 'aesylwinn/landrecords' 7 years ago
scrawl 64e27c032b Merge pull request #1481 from scrawl/keyfocus
WindowManager overhaul & improved keyboard support
7 years ago
scrawl 44720bf41a Allow MWList items to retain key focus 7 years ago
scrawl b9341925f2 Set AutoSizedEditBox as Static by default
Would look very odd anyway to use it for editable text, with the widget resizing as you type.
7 years ago
scrawl c88c535e0e Fix HBox/VBox not using Client widget with MyGUI <= 3.2.2 7 years ago
David Cernat ddf0dfed55 Merge pull request #298 from OpenMW/master
Add OpenMW commits up to 26 Sep 2017
7 years ago
scrawl be7bdec2ed Merge pull request #1471 from crussell187/nif_stream_optimization
first pass on optimization of nif parsing functions from the file stream
7 years ago
scrawl 19e07fad30 Remove redundant Services enum 7 years ago
scrawl 82a211ba03 Fix duplicate code 7 years ago
scrawl 76ddf8d794 Support Up/DownArrow keys to change NumericEditBox value 7 years ago
scrawl 1ad14b232f Adjust ImageButton to accept key focus and use the 'highlighted' texture 7 years ago
scrawl e7ad012977 Pass repeat key events to the GUI
For example, one can scroll to the last element in a list by holding down the 'Down Arrow' key.
7 years ago
scrawl 2494c22d66 Merge pull request #1470 from MiroslavR/convertmprj
ESS-Importer: Convert magic projectiles
7 years ago
825de71b29 removed an iostream include used for debug prints from nifstream.hpp 7 years ago
30a213a9b3 updates for nifstream optimization including fixing the non-x86 path for little endian reads 7 years ago
David Cernat 73e7aa838d Merge pull request #296 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwgui/container.cpp
7 years ago
8834066dea make streaming to a type array in nif a direct copy from the file into the vector 7 years ago
090a8408b8 made nif basic type read optimizations more portable 7 years ago
c72aa19d6d first pass on optimization of nif parsing functions from the file stream 7 years ago
scrawl 58f9688433 Use client coordinates in HBox/VBox 7 years ago
scrawl fb975d02db Use client coordinates in HBox/VBox 7 years ago
MiroslavR f15de6d3ca ESS-Importer: Convert magic projectiles (Closes #2320) 7 years ago
David Cernat 7f0ea7d01f Merge pull request #294 from OpenMW/master while resolving conflicts
# Conflicts:
#	apps/openmw/mwmechanics/character.cpp
7 years ago
David Cernat 4d4eb1bb9f Merge pull request #292 from OpenMW/master
Add OpenMW commits up to 18 Sep 2017
7 years ago
Chris Robinson 021627bdf8 Mark some functions with override
Fixes some Clang warnings about overriding a virtual function without the
override keyword.
7 years ago
Kyle Cooley 50d9d9f78f Get rid of some templates, exceptions instead of assert, and other small changes. 7 years ago
Andrei Kortunov 4bb349a525 Use default 0 precision in the float formatting (bug #4096) 7 years ago
Kyle Cooley 2abf7f1752 Remove unnecessary cache dump 7 years ago
David Cernat bd541b1e5b Merge pull request #287 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/CMakeLists.txt
7 years ago
Kyle Cooley 09e645a0e0 Fix careless mistake. 7 years ago
Kyle Cooley 25d4a0370f Changes to land data access in tables, also update Land once per frame in scene view. 7 years ago
Kyle Cooley d030b595f8 Fix potential segfault, cleanup, get rid of warnings. 7 years ago
Kyle Cooley 72cb405de2 Some bug fixes, changes to land load code. 7 years ago
Kyle Cooley 2eacc2f093 Changes to land creation, add ability to specifically clear terrain cache 7 years ago
Kyle Cooley ab607f3028 Tweaks to land loading, land cloning, terrain signals, placeholder land update handling 7 years ago
Andrei Kortunov 538498230b Declare mClient variable 7 years ago
scrawl dca31b7ffa Remove redundant _boundingBoxComputed which no longer exists in osg master (Fixes #4075) 7 years ago
Kyle Cooley d3014cf394 Temporary fix for adding new lands, cloned lands will still reference old data though 7 years ago
David Cernat b64f379949 Merge pull request #286 from OpenMW/master while resolving conflicts
# Conflicts:
#	CMakeLists.txt
#	apps/openmw/mwmechanics/actors.hpp
7 years ago
David Cernat ccb15cc09e [Client] When players die, make guards willing to arrest them again 7 years ago
Kyle Cooley 7cc95a11a4 Add more land table columns 7 years ago
Koncord f5e23d5fc6 [General] Empty strings should be sent too 7 years ago
scrawl 2e58024f1c Fix intersections with Rig/MorphGeometry, was caused by an issue in the LineSegmentIntersector not respecting the cullingActive flag of a drawable. 7 years ago
Koncord d904628103 [General] Avoid limitation of 512 symbols in RakString Ctor 7 years ago
scrawl 5e790b567e Fix node path issue
Needs to be set so that the 'cullingActive' flag of the node path's end can be checked
7 years ago
scrawl 4bef8260ab Add const qualifiers 7 years ago
scrawl 5d524a6a10 Add custom version of MorphGeometry replacing osgAnimation
Double buffering, custom bounding box and the update in the cull visitor (instead of update) are now all handled internally rather than needing hacks and/or callbacks.
7 years ago
scrawl f1ebb129c1 Fix ShaderVisitor to deal with the fact RigGeometry no longer derives from Geometry 7 years ago
scrawl 209e139aa8 Move double buffering implementation inside RigGeometry
The double buffering is an implementation detail so it should be handled as such, rather than mandating the scene graph to be structured in a certain way.

Override accept(NodeVisitor&) instead of using callbacks.
7 years ago
Kyle Cooley 9e41f1340a Replace nonconst getId with setId, add template specialization and specialized derived classes for LandTexture 7 years ago
scrawl 45f7563a55 Revert "Revert "Check for a Geometry node when attaching bodyparts""
Issue with shaders has been fixed with b9931fb71c

This reverts commit a1e3fb7604.
7 years ago
scrawl b9931fb71c Set the shader on the node containing the StateSet 7 years ago
David Cernat 08df8f8d83 [General] Update version to 0.6.1 7 years ago
David Cernat 98a7769b91 Merge branch 'master' into 0.6.0 7 years ago
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
7 years ago
Koncord 54f5104345 [General] Escape format for strings 7 years ago
David Cernat cca4991e74 [Utils] Use consistent names for utility functions added by tes3mp 7 years ago
scrawl a1e3fb7604 Revert "Check for a Geometry node when attaching bodyparts"
This reverts commit 3fc8634206.
7 years ago
scrawl 3fc8634206 Check for a Geometry node when attaching bodyparts (Fixes #3957) 7 years ago
scrawl bc82c6a35d Use white color if told to use nonexisting vertexcolors (Fixes #3833) 7 years ago
scrawl 5d2fe5e887 Implement lightmode/vertmode of NiVertexColorProperty 7 years ago
scrawl 4fba157d3b Implement releaseGLObjects for cached resources 7 years ago
Kyle Cooley d3d04171f9 Fix seg fault, undo changes BsaArchive 7 years ago
Kyle Cooley 8c4b12a603 VFS changes, one VFS and resource system per document.
Added ability to reset a VFS::Manager.
Removed ability to rebuild the index for a VFS::Manager.
Moved VFS creation to CSM::Data.
7 years ago
Kyle Cooley 979b0d7211 Code cleanup and more cache clearing 7 years ago
Kyle Cooley 679a284735 Use scoped lock instead of directly locking/unlocking mutex 7 years ago
Kyle Cooley 3b9326d238 Clear terrain cache and reload terrain 7 years ago
Kyle Cooley b62cb0e2a4 Clear out GPU texture/stateset cache 7 years ago
Kyle Cooley 7914fd5c9c Re-index BSAs 7 years ago
Kyle Cooley d7744e8b16 A bit of cleanup 7 years ago
Kyle Cooley 5950b26912 Update scene assets 7 years ago
Kyle Cooley 742bd00ec6 Clear cached resources 7 years ago
Kyle Cooley d31ed83b54 Preliminary asset reloading 7 years ago
Thunderforge 54fe645703 Removing erroneous comment since Qt is not relevant here 7 years ago
Thunderforge 464c64a306 Swap the OIS Ctrl and Meta keys on macOS to match Qt 7 years ago
scrawl cef415509f Revert "Merge redundant input events" 8 years ago
David Cernat 721b218cc2 Merge pull request #258 from OpenMW/master while resolving conflicts
# Conflicts:
#	.travis.yml
#	README.md
8 years ago
David Cernat 0e2038f045 [General] Record and get player positions before their last cell change 8 years ago
Julian 3cfd9af945 merge redundant input events 8 years ago
scrawl c9d9461d3e Add Spacer class derived from AutoSizedWidget
Using a normal widget as a spacer with HStretch/VStretch may not work properly because for widgets not derived from AutoSizedWidget, the HBox/VBox treat the widget's current size as the requested minimum size. This leads the layout to break when resized more than once.

The new class sets HStretch and VStretch to true by default to save some typing.
8 years ago
Koncord 1aabcdd09c [General] Add *_WITH_ACK_RECEIPT to master server packets 8 years ago
Koncord 8384a8aa8a [General] Return sent packet number 8 years ago
Unknown bfbfbeac43 Added networking and saving for custom spells 8 years ago
David Cernat f61664ff6d [General] Update version to 0.6.0 8 years ago
David Cernat 4db64e1721 [Client] Synchronize spellcasting for non-bipedal creatures 8 years ago
David Cernat 8b79cdd4f4 [Server] Document script functions, part 3
Also reorder functions in Cells and CharClass so they are consistent with the rest.
8 years ago
David Cernat 2c1ece79fc Merge pull request #245 from OpenMW/master
Add OpenMW commits up to 22 Jul 2017
8 years ago
PlutonicOverkill 5049fe4320 Pause game when minimised on Windows 8 years ago
David Cernat b8b3856c73 Merge pull request #244 from OpenMW/master
Add OpenMW commits up to 19 Jul 2017
8 years ago
scrawl 3e03a0d7bd Terrain: remove ref argument that is now always true 8 years ago
scrawl ac78d01b2b Terrain: use the main camera's viewpoint for intersection tests
Fixes lag spikes caused by intersection tests loading/unloading terrain pages.
8 years ago