David Cernat
6e47b65205
[Client] Set attribute increases & level progress after correct packets
...
Originally, the PlayerSkill packet contained skills, attribute increases and level progress. In 78441c769a
, the attribute increases were moved to the PlayerAttribute packet and the level progress was moved to the PlayerLevel packet, but – due to an oversight – attribute increases and level progress were still being applied to the local player only when a PlayerSkill packet was received, based on whatever values were stored from the last PlayerAttribute and PlayerLevel packets.
2019-01-11 14:26:13 +02:00
David Cernat
f481c85e07
[Client] Use ADD before REMOVE for PlayerInventory in repair/recharge
...
Previously, when recharging or repairing an item, the client sent a PlayerInventory packet to the server with the old version of the item that was supposed to be removed and then it sent a PlayerInventory packet with the new version of the item that was supposed to be added.
Unfortunately, the current CoreScripts make it so custom items using generated IDs have their records deleted when they are completely removed from the world, however briefly, even if they are added back immediately afterwards. In practice, this meant that – before this commit – recharging or repairing a custom item led to its removal from the player inventory stored on the server, followed by the deletion of its record, followed by its readdition to the inventory (but with the record staying deleted). Logging out and logging back in immediately prevented the player from receiving the item anymore because of its now non-existent record.
2019-01-11 13:08:26 +02:00
David Cernat
8a99f215f6
[Client] Add LocalPlayer::sendItemChange() variant with mwmp::Item arg
2019-01-11 12:54:47 +02:00
David Cernat
db9c1b9882
[Client] Add MechanicsHelper::getItem() for getting mwmp::Item from Ptr
2019-01-11 12:53:26 +02:00
David Cernat
799241e8c6
[Client] Use informative error message for RefData::setCount() issue
2019-01-11 08:16:29 +02:00
Bret Curtis
8834ee95be
Merge pull request #2120 from Capostrophic/macros
...
Get rid of some remaining instances of C numeric limits
2019-01-10 18:59:34 +01:00
Bret Curtis
db74eb4466
Merge pull request #2094 from Capostrophic/editor
...
Cherry-pick cc9cii's minor editor improvements
2019-01-10 17:55:59 +01:00
Bret Curtis
9c795195d0
Merge pull request #2109 from Capostrophic/loops
...
Simplify some world loops
2019-01-10 11:44:41 +01:00
Bret Curtis
4617dea154
Merge pull request #2119 from akortunov/stringstream
...
Get rid of unnecessary string streams
2019-01-10 11:42:27 +01:00
Capostrophic
a71cfca580
Get rid of some remaining instances of C limit macros
2019-01-09 16:06:18 +03:00
Andrei Kortunov
3e20f36953
Handle invalid string length for hinting
2019-01-08 12:37:41 +04:00
Capostrophic
776c6c2fe6
Fix MSVC warning
2019-01-07 20:38:33 +03:00
Andrei Kortunov
0937f02598
Get rid of unnecessary string streams
2019-01-07 21:08:16 +04:00
Andrei Kortunov
b17702bf1f
Do not restore birthsign abilities upon game load (bug #4329 )
2019-01-07 20:18:21 +04:00
Bret Curtis
de24682e2f
Merge pull request #2115 from Capostrophic/slowfall
...
Don't reset player jumping flag unnecessarily (bug #4775 )
2019-01-07 17:13:39 +01:00
Capostrophic
a1af1ff487
Fix extra semicolon, redundant getStore calls and random creature spawn loop
2019-01-07 17:48:41 +03:00
Bret Curtis
9d1c0d2b22
Merge pull request #2114 from Capostrophic/cleanup
...
Remove some redundant code
2019-01-07 14:59:39 +01:00
Capostrophic
403db9afe3
Don't reset player jumping flag unnecessarily (bug #4775 )
2019-01-07 16:08:26 +03:00
Bret Curtis
573af17cf9
Merge pull request #2097 from akortunov/camerafix
...
Do not scale player's model in the 1st-person view depending on race
2019-01-07 13:57:21 +01:00
Bret Curtis
93e566a08e
Merge pull request #2117 from Capostrophic/aidata
...
Make Interiors of Illusion puzzle of Sotha Sil Expanded work (bug #4778 )
2019-01-07 13:56:11 +01:00
Andrei Kortunov
ab0841cc3d
Split physics update from world update in the profiler
2019-01-07 14:44:43 +04:00
Andrei Kortunov
02a43d0b32
Do not scale player's model in the 1st-person view depending on race (bug #4383 )
2019-01-07 12:58:47 +04:00
Capostrophic
92d7f21926
Don't interrupt compilation when spell/effect functions are used for non-actors
2019-01-06 21:45:56 +03:00
David Cernat
43f195f0c7
[Client] Use clearer debug for actor initializations
2019-01-05 23:27:35 +02:00
David Cernat
2e1d4a9449
[Server] Fix non-Windows builds
2019-01-05 22:11:58 +02:00
Capostrophic
624db99bf2
Remove some redundant code
2019-01-05 01:25:52 +03:00
Capostrophic
27eb64c7f0
Clean up fallback record creation again
2019-01-02 13:49:04 +03:00
David Cernat
81e2e48561
[Client] Fix item magic casting synchronization for spell scrolls
...
Previously, spell scrolls were used up before their IDs could be included in attacks packets supposed to be sent for them.
2018-12-31 13:24:32 +02:00
David Cernat
d83160523f
[Client] Add items required for item magic casting when they are missing
2018-12-31 06:55:35 +02:00
David Cernat
433a69a588
[Client] Send all data for newly initialized LocalActors at least once
2018-12-31 04:36:59 +02:00
David Cernat
e70fd2cf3a
[Server] Accept clients with wrong password on servers with no password
2018-12-31 03:52:25 +02:00
David Cernat
eb52babf29
[Server] Print IP instead of name or PID for players unable to connect
...
The player name was always blank in such situations, providing no useful information. The PID was not useful in any way either.
2018-12-30 18:02:26 +02:00
David Cernat
e96091fd6b
[General] Use more consistent variable names for password, address, etc.
2018-12-30 17:23:12 +02:00
Capostrophic
0ab5314755
Make scripted items not stack (bug #2969 )
2018-12-30 18:18:33 +03:00
Capostrophic
8a266803eb
Simplify some world loops
2018-12-30 15:36:42 +03:00
David Cernat
906d2a837d
[Client] Send PlayerInventory packets when recharging items w/ soulgems
2018-12-30 11:58:33 +02:00
David Cernat
71679934a1
[Client] Send PlayerInventory packets when repairing items
2018-12-30 09:39:46 +02:00
David Cernat
5d9893ee92
[Client] Set actor killer correctly for spells that do damage over time
...
Additionally, clean up comments related to other code that sets actor killers.
2018-12-30 07:40:11 +02:00
David Cernat
6e1504f0a1
[Server] Use clearer variable & function names in TimerAPI
2018-12-30 04:15:53 +02:00
David Cernat
42b5a8054f
[Server] Remove unusable position functions for players
2018-12-30 03:17:37 +02:00
Koncord
4ce0331f1b
[Server] Fix GCC build
2018-12-29 15:54:08 +08:00
Bret Curtis
932691d199
Merge pull request #2091 from Capostrophic/fallheight
...
Avoid falling height reset if on-ground state wasn't actually updated (bug #4411 )
2018-12-29 08:26:28 +01:00
Koncord
9343b8af2f
[Server] Remove unused function
2018-12-29 14:02:08 +08:00
Koncord
c2230a8a21
[Server] Add MP flag to the server if enabled
2018-12-29 12:03:01 +08:00
Koncord
55cea491ca
[Server] Introduce MS VC++ 2017 support
2018-12-29 11:57:26 +08:00
Koncord
6af2400752
[Server] Remove usages of get/set env. Add GetModDir function
2018-12-29 11:40:31 +08:00
Koncord
b3456a8841
[Server] Fix invalidation of iterators
2018-12-29 11:10:20 +08:00
Bret Curtis
d80d056140
Merge pull request #2098 from xyzz/fix-loading-screen-uaf
...
loadingscreen: Fix UaF in loading screen.
2018-12-28 18:58:04 +01:00
Bret Curtis
91b962c095
Merge pull request #2099 from xyzz/replace-volatile-atomic
...
Replace volatile bools with std::atomic<bool>
2018-12-28 16:41:07 +01:00
Capostrophic
7155e787b4
Clean up fallback record creation
2018-12-28 01:22:24 +03:00
David Cernat
343dd8b5ea
[Client] Fix addition of items to player inventories
...
Previously, multiple stacks of the same item ID could overwrite data in each other because of how the logic in ContainerStore::add() works. For example, a stack of 5 grand soul gems with no souls would get added to the player, then the attempt to add a grand soul gem with a particular soul would retrieve the previous stack first before setting all of it to that soul, resulting in 6 grand soul gems with that soul.
2018-12-26 13:41:19 +02:00
David Cernat
76ac905efc
[Client] Send PlayerInventory packets when trapping souls in soulgems
2018-12-26 12:25:00 +02:00
David Cernat
f853368641
[Client] Fix loss of player items in ContainerStore::unstack()
...
Previously, unstacking items for a player led to a PlayerInventory packet being sent about the items' removal.
This change makes it so both a packet about their re-addition and their removal are sent instead, cancelling each other out, which is inelegant, but arguably preferable to complicating the sending of PlayerInventory packets again.
2018-12-26 12:24:26 +02:00
Ilya Zhuravlev
1bdec2399f
Make sure CopyFramebufferToTextureCallback is only called once and not every frame
2018-12-25 11:56:24 -05:00
Ilya Zhuravlev
07e9ce84b3
Replace volatile bools with std::atomic<bool>
2018-12-24 14:19:35 -05:00
Ilya Zhuravlev
8e7c01b561
loadingscreen: Fix UaF in loading screen.
...
When the CopyFramebufferToTextureCallback callback is called, in its operator() it resets setInitialDrawCallback by providing a NULL pointer.
However, this causes the callback to get deleted. In turn, the "this" pointer is invalidated.
When execution returns to DrawCallback::run, it accesses a _nestedCallback member of deleted "this" which is UB.
2018-12-24 14:18:26 -05:00
Ilya Zhuravlev
98b2c04404
android: Add a method so that we can send relative mouse movements from java.
2018-12-23 15:14:29 -05:00
Capostrophic
793c2a19d2
Cherry-pick cc9cii's editor improvements
2018-12-23 20:10:16 +03:00
Capostrophic
0bbcc0e787
Avoid falling height reset if onGround state didn't change (bug #4411 )
2018-12-23 13:39:35 +03:00
Ilya Zhuravlev
09585b7208
android_main.c: Replace nullptr back to NULL since there are no nullptr in C
2018-12-22 22:21:26 -05:00
Andrei Kortunov
8687a49c19
Editor: Added basic info window
2018-12-21 18:51:02 +04:00
Andrei Kortunov
b4f3ce2a0a
Editor: Implement faction ranks table (feature #4209 )
2018-12-21 14:16:40 +04:00
Capostrophic
2681435857
Editor: handle AI settings, regional sound and levelled list "none" chances as shorts (bug #2987 )
2018-12-20 19:51:55 +03:00
AnyOldName3
e2515f6db7
Merge branch 'master' into osgshadow-test-vdsm
2018-12-18 19:51:27 +00:00
David Cernat
5e38e8abdb
[Server] Add GetArchitectureType() script function
...
Additionally, bring GetOperatingSystem() up-to-date by making it use the renamed function in Utils.
2018-12-17 11:55:50 +02:00
David Cernat
fa1700e2ab
[Server] Add GetOperatingSystemType() script function
2018-12-17 11:32:31 +02:00
Bret Curtis
6d7aacab5e
Merge pull request #2053 from akortunov/animatedContainers
...
Native animated containers support
2018-12-17 10:00:07 +01:00
Bret Curtis
d2c88f0983
Merge pull request #2071 from Capostrophic/sneaking
...
Don't interrupt sneak and swim idles in attack ready state in first person view (bug #4750 )
2018-12-17 09:34:27 +01:00
David Cernat
50714599d9
[Client] Spawn at exterior 0, -7 by default
2018-12-17 08:25:22 +02:00
Andrei Kortunov
a53333c3d5
Native animated containers support (feature #4730 )
2018-12-13 23:11:16 +04:00
terrabyte25
c31fa3074e
Sanity check for text input in toggleWalking
2018-12-12 14:40:15 -06:00
Capostrophic
6083e5ed4b
Don't interrupt sneak and swim idles in first person view (bug #4750 )
2018-12-10 00:05:06 +03:00
David Cernat
afd17e5a48
[Client] Don't finish drag & drop that is supposed to be unsuccessful
...
This prevents items from vanishing when your attempt to drop them in a full container is denied.
2018-12-06 18:11:52 +02:00
Marc Zinnschlag
d791dcfbf3
Merged pull request #2051
2018-12-06 13:10:48 +01:00
Bret Curtis
32624cb3ed
Merge branch 'master' into colors
2018-12-06 09:59:13 +01:00
Bret Curtis
b296c4a3bb
Merge pull request #2058 from Capostrophic/collision
...
Don't consider non-solid actors truly levitating (bug #4746 )
2018-12-06 09:56:16 +01:00
Capostrophic
7b33838b33
Don't consider non-solid actors truly levitating (bug #4746 )
2018-12-05 23:37:32 +03:00
Bret Curtis
35ea8ecb0b
Merge pull request #2056 from Capostrophic/esmtool
...
esmtool cleanup
2018-12-05 20:58:25 +01:00
Capostrophic
7cae0017ac
Display Ambient, Sunlight and Fog field values as colors (bug #4745 )
2018-12-05 17:25:26 +03:00
David Cernat
a6c6db89fc
[Client] Send object packets when scripts use PlaceItem/PlaceItemCell
2018-12-05 01:56:27 +02:00
Capostrophic
5c8c079718
Fix incorrect event argument which messed with hidden light pointers
2018-12-04 17:07:03 +03:00
David Cernat
d05a82a734
[Client] Avoid repetitive code when unequipping items in resurrection
2018-12-04 03:55:03 +02:00
Capostrophic
832870dc79
esmtool cleanup
2018-12-02 23:10:29 +03:00
Bret Curtis
c2c86fc4a5
Merge pull request #2052 from mp3butcher/master
...
fix moc achieving to reach unparsable boost code
2018-12-02 19:28:35 +01:00
Bret Curtis
807cab568e
Merge pull request #2050 from Capostrophic/markers
...
[Regression] Revert unnecessary case changes for fallback records
2018-12-02 11:16:20 +01:00
Bret Curtis
b1ca6c6e95
Merge pull request #2045 from akortunov/animfix
...
[Testing needed] Fix regressions in the animation system
2018-12-02 11:14:44 +01:00
mp3butcher
9de6c630f2
fix moc achieving to reach unparsable boost code
2018-12-01 21:27:43 +01:00
terrabyte25
35755eb1f1
[Client] Disallow opening inventory menu when not logged in
2018-12-01 10:51:33 -06:00
Capostrophic
7b5932a49d
Add Invert X Axis option (feature #3610 )
2018-12-01 19:08:02 +03:00
Capostrophic
c59513c30c
Revert unnecessary case changes for fallback records
2018-12-01 17:12:27 +03:00
David Cernat
b7090b2550
[Server] Add experimental option for not crashing from Lua script errors
...
Additionally, fix return type of GetPluginEnforcementState()
2018-12-01 03:03:39 +02:00
David Cernat
b39e3f518b
[Client] Use correct log levels for inventory and dynamic record packets
2018-11-30 23:38:16 +02:00
David Cernat
d8ca268067
[Server] Move plugin enforcement functions to ServerFunctions
2018-11-30 22:43:10 +02:00
David Cernat
2933526995
[Server] Include errors related to Lua calls in server logs
2018-11-30 22:01:02 +02:00
AnyOldName3
642002b302
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
2018-11-29 01:19:01 +00:00
Andrei Kortunov
880ec3ce7b
Fix visible sheaths for invisible actors
2018-11-24 14:57:41 +04:00
Andrei Kortunov
671f2811d5
Fix regressions in the animation system (bug #4729 )
2018-11-23 20:22:37 +04:00
Andrei Kortunov
e8b3ae8706
Improve ResetActors command (bug #4723 )
2018-11-20 21:53:27 +04:00
Andrei Kortunov
7438e20ee1
Fix shield displaying on inventory avatar (bug #4720 )
2018-11-17 22:42:29 +04:00
Testman
6b3f598837
Use more descriptive terminology for chat modes
...
Changed "Chat disabled" to "Chat hidden", "Chat enabled" to "Chat visible" and "Chat in hidden mode" to "Chat appearing when needed".
2018-11-17 16:54:14 +01:00
Andrei Kortunov
68c170f065
Refactor tools to do not use boost exceptions and exit() command
2018-11-15 18:10:19 +04:00
Andrei Kortunov
059a8fd32a
Refactor dynamic casts in the editor
2018-11-15 17:50:23 +04:00
Bret Curtis
a21792657a
Merge pull request #2034 from akortunov/guifixes
...
Improve GUI cleanup
2018-11-15 07:31:57 +01:00
Andrei Kortunov
5ac81cfbff
Throw exceptions with some info int the editor if dynamic_cast failed
2018-11-14 15:53:43 +04:00
Andrei Kortunov
f20d1b1b72
Catch exception in the NIFTest
2018-11-14 15:52:36 +04:00
Bret Curtis
419e7ea5a2
Merge pull request #2035 from akortunov/coverity
...
Fix many Coverity Scan warnings
2018-11-14 09:44:30 +01:00
Bret Curtis
8a66dec865
Merge pull request #2031 from akortunov/warnfix
...
Fix some Clang 7 warnings
2018-11-14 09:43:39 +01:00
Andrei Kortunov
4ee15ddcb9
Fix many Coverity Scan warnings
2018-11-14 11:21:49 +04:00
David Cernat
e834a4ec74
[Client] Find closest enchantmentCharge in getItemPtrFromStore()
...
Enchanted inventory items continuously recharge their enchantment charges, which getItemPtrFromStore() should account for.
Additionally, prevent framelistener errors caused by PlayerItemUse packets about non-existent items.
2018-11-13 20:36:31 +02:00
Andrei Kortunov
5e071e3eb0
Add a missing check if mPtr is empty (bug #4715 )
2018-11-13 10:32:23 +04:00
Andrei Kortunov
71f1a53090
Improve tooltips cleanup (bug #4714 )
2018-11-13 10:00:12 +04:00
Bret Curtis
194232abde
Merge pull request #2029 from akortunov/actorfix
...
[Regression] Handle case in the editor when actor's bodypart was not found
2018-11-12 11:44:28 +01:00
Bret Curtis
0f29a73fc9
Merge pull request #2025 from Capostrophic/actorloops
...
Use C++11 for close actor-iterating loops and avoid some redundant operations
2018-11-12 10:43:49 +01:00
Andrei Kortunov
d2613e35a2
Fix some Clang 7 warnings
2018-11-09 19:42:59 +04:00
Andrei Kortunov
0065bccf24
Handle case in the editor when actor's bodypart was not found
2018-11-09 14:51:45 +04:00
AnyOldName3
02a8c6a7ce
Merge branch 'master' into pr/fix-hidpi-resolution
2018-11-08 23:05:07 +00:00
Bret Curtis
228f6b572f
Merge branch 'master' into prisonmarker
2018-11-08 21:11:24 +01:00
Bret Curtis
f6243fae83
Merge pull request #1615 from akortunov/holstered_weapons
...
Weapon sheathing
2018-11-08 20:44:20 +01:00
Capostrophic
6d48d9329e
Avoid making string copies instead of references
2018-11-08 17:03:29 +03:00
Bret Curtis
3751bc2c11
Merge pull request #2030 from akortunov/warnfix
...
Fix some compiler warnings
2018-11-08 12:19:04 +01:00
Andrei Kortunov
ad36834671
Fix some compiler warnings
2018-11-08 13:16:04 +04:00
Stanislaw Halik
8fd71fe4ad
fix rain delay when exiting water
...
When the particle system updates its internal state noting that it's
been culled, it stops emitting any further particles. Prevent it from
having that knowledge.
v2: Fix off-by-one-frame error following review by @AnyOldName3
2018-11-07 20:55:45 +00:00
Capostrophic
4cb4f82431
Don't use bitwise AND
2018-11-07 19:44:17 +03:00
Capostrophic
39f8637e95
Simplify some actor loops and avoid some redundant calculations
2018-11-06 17:56:53 +03:00
Capostrophic
4efe1bc892
Add prison marker record fallback definition (bug #4701 )
2018-11-05 19:37:46 +03:00
Stanislaw Halik
5e3e01cac0
fix resolution on HiDPI displays under Windows
...
The same Windows functionality as scaling user interface elements,
confuses fullscreen games unless they set a particular of metadata to
indicate that they perform the scaling by themselves.
What happened was treating 2160p as 1440p despite the former being
chosen. The same occured with other game title prior to introducing the
metadata bits.
Fortunately with CMake there's no need to invoke the mt.exe "manifest
tool" manually.
Note that the setting of "per-monitor DPI aware" still leaves openmw
confused, hence the choice of global-DPI-aware.
2018-11-05 16:16:09 +00:00
Andrei Kortunov
92e45507d8
Weapon sheathing support, including quivers and scabbards (feature #4673 )
2018-11-05 11:18:20 +04:00
Bret Curtis
c114e1278e
Merge pull request #1978 from akortunov/ffmpeg3
...
Migrate to FFMPEG3
2018-11-05 07:52:43 +01:00
Bret Curtis
a8d944e756
Merge pull request #2023 from elsid/navmesh_cache_limit
...
Navmesh cache limit
2018-11-05 07:51:48 +01:00
elsid
6e78fbb538
Double key size for item cache size
2018-11-05 02:21:19 +03:00
elsid
db5638bf6d
Add global recast allocator to allocate temp buffers on stack
2018-11-04 18:11:15 +03:00
Andrei Kortunov
f88d5e808c
Rewrite media decoder to use FFMpeg 3.2+ API (task #4686 )
2018-11-03 22:34:25 +04:00
elsid
2ba026e2b2
Limit navmesh cache size by data size + key size
2018-11-03 16:14:07 +03:00
Andrei Kortunov
829faf7b2c
Improve toggleactorspaths console command
2018-11-03 10:42:14 +04:00
AnyOldName3
b178e1868a
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
2018-11-03 00:27:40 +00:00
AnyOldName3
3c25e7b93d
Merge pull request #2010 from AnyOldName3/windows-debug-build-fix
...
Include missing Windows header before calling Windows-specific functions and switch CMake compile definitions to the new style.
2018-11-02 23:57:44 +00:00
AnyOldName3
e2ddb39591
Remove incorrect comment
2018-11-02 17:30:54 +00:00
Capostrophic
1de9674c81
AI package cleanup
2018-11-02 14:58:30 +03:00
Bret Curtis
5f5773f7df
Merge pull request #2009 from elsid/pathfinder_update_tolerance
...
Use default tolerance to drop last point from path
2018-11-02 00:21:08 +01:00
elsid
c52db75545
Use default tolerance to drop last point from path
...
Fixes AiEscort. Before actor tried to reach target with 0 tolerance.
Back to logic like it was before 4fe764c3a5
and bbd82a743
commits.
2018-11-02 01:12:41 +03:00
Capostrophic
a4eff1c871
Fix isWithinMaxRange function
2018-11-02 00:22:37 +03:00
AnyOldName3
d0c254bc7e
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
2018-11-01 16:48:21 +00:00
elsid
792a0585c0
Add recastnavigation as subdirectory
2018-11-01 17:01:22 +01:00
AnyOldName3
0208cb8616
Merge pull request #2001 from AnyOldName3/enable-osg-logging
...
Allow OSG objects to be sent to the debug log.
2018-10-31 22:14:36 +00:00
AnyOldName3
6bbc1cb308
Remove outdated include
2018-10-31 19:32:52 +00:00
AnyOldName3
93843d024c
Remove another duplicate operator<<
2018-10-31 16:26:53 +00:00
Andrei Kortunov
f1eb702851
Mark virtual methods in the mechanicsmanagerimp.hpp as overrides
2018-10-31 10:09:32 +04:00
AnyOldName3
3785ba6aa0
Merge upstream/master
2018-10-30 22:38:09 +00:00
AnyOldName3
eb44de3e6b
Disable shadows properly for water reflection/refraction RTT targets, eliminating remaining OpenGL errors.
2018-10-30 22:34:53 +00:00
Bret Curtis
d6c674660a
Merge pull request #1633 from elsid/pathfinder_detour
...
Use recastnavigation for pathfinding (#2229 )
2018-10-30 20:44:13 +01:00
Koncord
e162af0003
[Server] Disallow non void callbacks
2018-10-30 15:32:52 +08:00
Koncord
07a5f5296c
[Server] Rework OnRequestPluginList callback. Add AddPluginHash function
2018-10-30 14:56:54 +08:00
Koncord
20a7619a4a
[Server] Remove result from the OnPlayerConnect callback
...
Now it's recommended to use tes3mp.Kick() function
2018-10-30 13:18:32 +08:00
Koncord
f1e8569291
[Server] Remove result from the OnPlayerSendMessage callback
2018-10-30 13:13:07 +08:00
Koncord
efa362031e
[Server] Remove unused Main callback
2018-10-30 13:03:37 +08:00
Koncord
b83e4056a8
[Server] Remove CallFF dependency as it not fully supported by Windows and MacOS
2018-10-30 12:59:47 +08:00
Koncord
585557ad8a
[Server] Remove argument cast in the Call with va_args
2018-10-30 12:58:15 +08:00
Koncord
3101de5f02
[Server] Add kicked load status
2018-10-30 12:56:50 +08:00
Bret Curtis
3c53fe16e9
Merge pull request #1986 from akortunov/rootfix
...
[Regression] Handle RootCollisionNode exactly as in original engine
2018-10-29 22:47:04 +01:00
Bret Curtis
e65f254f7f
Merge pull request #1999 from akortunov/resurrect
...
[Regression] Make sure we reset current weapon animation when resurrect actor
2018-10-29 20:43:54 +01:00
Andrei Kortunov
f98fc8d7b4
Make sure we reset current weapon animation when resurrect actor (addition to bug #2626 )
2018-10-29 22:47:04 +04:00
Marc Zinnschlag
a5efe0d596
Merged pull request #1998
2018-10-29 10:02:52 +01:00
Capostrophic
434b1fd0e3
Use Shift-C and Shift-V keybindings for View and Preview (feature #2845 )
2018-10-29 01:53:49 +03:00
Bret Curtis
7f2baa9373
Merge pull request #1995 from Capostrophic/icons
...
Add icons for record context menu actions (feature #4506 )
2018-10-28 22:22:42 +01:00
Bret Curtis
6f8a15afb0
Merge pull request #1996 from Capostrophic/cleanup
...
Clean up redundant getClass() calls in classes
2018-10-28 19:39:39 +01:00
Capostrophic
8757b3edd1
Add icons for Edit and Touch actions (kudos to akortunov)
2018-10-28 21:06:42 +03:00
Capostrophic
89b8eb029f
Add icons for record context menu actions
2018-10-28 20:35:58 +03:00
Capostrophic
77b0ff7a75
Use real thrown weapon damage in tooltips and weapon rating (feature #4697 )
2018-10-28 19:46:46 +03:00
elsid
49d81241db
Merge branch 'master' into pathfinder_detour
2018-10-28 17:08:09 +03:00
Capostrophic
4b1d287eda
Clean up redundant getClass calls in classes
2018-10-28 17:03:38 +03:00
elsid
50b6ae3e10
Fix calculation for shape local AABB
2018-10-28 16:58:22 +03:00
Bret Curtis
e7892361f6
Merge pull request #1994 from akortunov/actor_culling
...
Minor tweaks for actors processing range setting
2018-10-28 14:44:12 +01:00
Bret Curtis
3cd59d4a89
Merge pull request #1993 from akortunov/loadingbar
...
Center progress bar when there are active messageboxes
2018-10-28 14:43:33 +01:00
elsid
abc51a8a17
Add settings option to set max number of polygons per navmesh tile
2018-10-28 15:36:47 +03:00
Andrei Kortunov
06d226a1b7
Minor tweaks for actors processing range setting
2018-10-28 15:08:24 +04:00
Andrei Kortunov
6e05853478
Center progress bar when there are active messageboxes (bug #4691 )
2018-10-28 14:40:48 +04:00
Marc Zinnschlag
9dd0d641bc
Merged pull request #1931
2018-10-28 11:02:33 +01:00
Koncord
e5e13b21ae
[Client] Fix crash on drag&drop
2018-10-28 16:56:04 +08:00
Bret Curtis
9f4892ce92
Merge pull request #1990 from Capostrophic/absorption
...
Avoid making expensive visitEffectSources calls if no spell absorption effect is active
2018-10-27 17:45:48 +02:00
Capostrophic
abdf40e0d5
Avoid making expensive visitEffectSources calls if no spell absorption effect is active
2018-10-27 16:38:04 +03:00
Capostrophic
b6f23cd366
Make constants usage more obvious
2018-10-27 13:27:25 +03:00
David Cernat
c65d6c1328
[Client] Disable mListener methods in mwworld/containerstore
...
This should put an end to frequent crashes until I can fix the problem properly.
2018-10-27 02:19:45 +03:00
Capostrophic
4873d33642
Adjust magic light source linear attenuation (bug #3890 )
2018-10-27 01:27:05 +03:00
Andrei Kortunov
d2f3196ee8
Fix testcase for RootCollisionNode with MRK data
2018-10-26 21:21:34 +04:00
David Cernat
1baf82db32
[Client] Avoid PlayerSpellbook packet spam in some mods
2018-10-26 19:07:35 +03:00
Marc Zinnschlag
3ead33814f
Merge remote-tracking branch 'upstream/master'
2018-10-26 13:02:06 +02:00
Capostrophic
19ce1abcdf
Fix selected weapon HUD durability percentage
2018-10-26 12:53:15 +03:00
Andrei Kortunov
bf9e8c4556
Make spell absorption multiplicative (bug #4684 )
2018-10-26 12:36:58 +04:00
David Cernat
d9bc1abf48
[Client] Don't send ObjectScale packets if not logged in
2018-10-26 02:33:47 +03:00
David Cernat
a8cf1e02c4
[Client] Allow unilateral scripted container changes not from console
...
This prevents infinite loops in certain client scripts from mods that use while loops to determine that all items of a certain type have been removed from a container, such as in the script BCSwap2Arg from Better_Clothes.
2018-10-25 22:38:45 +03:00
Andrei Kortunov
e7de6b974a
Optimize actors processing
...
1. Do not update physics and animations for actors outside processing range (bug #4647 )
2. Do not render such actors
3. Add transparency to actors near processing border, so they will not pop up suddenly
2018-10-25 22:52:59 +04:00
Bret Curtis
0fad2449f3
Merge pull request #1982 from Capostrophic/condition
...
Avoid item condition and charge zero divisions
2018-10-25 17:22:02 +02:00
Capostrophic
c3e8d536cd
Implement getNormalizedEnchantmentCharge() method and use it
2018-10-25 16:16:07 +03:00
Capostrophic
54bd7b2dcf
Implement getItemNormalizedHealth() method and use it
2018-10-25 15:45:31 +03:00
Marc Zinnschlag
2c8bbde7ef
Merged pull request #1979
2018-10-25 11:16:26 +02:00
Marc Zinnschlag
4d88d6dd58
Merged pull request #1980
2018-10-25 11:06:22 +02:00
Bret Curtis
375354ab6b
Merge pull request #1974 from akortunov/coverity
...
Fix some issues found by Coverity Scan
2018-10-25 09:42:51 +02:00
AnyOldName3
1e2bf9c447
Merge remote-tracking branch 'refs/remotes/upstream/master'
2018-10-24 20:13:13 +01:00
Capostrophic
67de61e1fb
Avoid item condition and charge zero divisions
2018-10-24 19:06:55 +03:00
Capostrophic
4ce35c6ad5
Fix fixme behavior in interiors
2018-10-24 01:43:38 +03:00
David Cernat
99f8ef88a5
[Server] Add SetObjectActivatingPid() script function
2018-10-22 16:25:50 +03:00
Andrei Kortunov
61e6e359c4
Allow creatures to use the autogenerated collision box (feature #2787 )
2018-10-22 15:48:23 +04:00
David Cernat
17f13872aa
[Client] Use forceUpdate correctly in LocalPlayer::updateStatsDynamic()
...
Previously, the forceUpdate argument was useless, preventing dynamic stats from being sent by certain newly created characters.
2018-10-22 13:22:23 +03:00
Capostrophic
9809eef18e
Utilize the default soundgen entries when necessary (bug #4689 )
2018-10-21 11:32:23 +03:00
Andrei Kortunov
41e90bd56c
Unify random generator usage
2018-10-19 16:16:18 +04:00
Andrei Kortunov
46bf45a6e2
Remove redundant code
2018-10-19 16:16:18 +04:00
Bret Curtis
6c4116cc8b
Merge pull request #1972 from akortunov/equipfix
...
Force actor to the 'weapon equipped' state if the weapon disappeared in the middle of attack
2018-10-18 16:43:05 +02:00
Andrei Kortunov
8fa0ffcfe4
Catch exceptions inside the loadVoice() (bug #4685 )
2018-10-18 15:02:23 +04:00
Andrei Kortunov
d7d9050d4a
Force actor to the 'weapon equipped' state if the weapon disappeared in the middle of attack (bug #4646 )
2018-10-18 11:42:03 +04:00
AnyOldName3
474770eca8
Switch shadow map rendering to a specialised, simplified shader.
2018-10-16 21:23:31 +01:00
Bret Curtis
e406c5ff81
Merge pull request #1946 from akortunov/backupfix
...
Combat AI: check for obstacle before back up
2018-10-16 21:47:21 +02:00
Andrei Kortunov
13bd81f896
Try to use collisions from basic actor model if an animated one has no collisions (feature #4682 )
2018-10-16 22:28:19 +04:00
David Cernat
bfd7c83c4d
[Client] Fix backwards logic when setting type for AI attacks
2018-10-16 21:18:41 +03:00
elsid
03d4ce5e49
Log find path exception with level verbose, add more info to message
2018-10-15 23:25:42 +03:00
Bret Curtis
8cb407cfdf
Merge pull request #1969 from Capostrophic/soundgen
...
Support soundgen calls for activators (feature #4285 )
2018-10-15 14:43:11 +02:00
Capostrophic
bf3f82b9d4
Cleanup
2018-10-14 21:28:43 +03:00
Capostrophic
6ef7be3fd3
Re-enable using soundgen land for creatures
2018-10-14 20:18:17 +03:00
Capostrophic
19fd404b7b
Support soundgen calls for activators (feature #4285 )
2018-10-14 15:36:07 +03:00
Andrei Kortunov
ca07e3a364
Check for obstacle before back up (bug #4656 )
2018-10-14 12:22:43 +04:00
elsid
e57504ae7c
Lower log level
2018-10-13 22:22:15 +03:00
elsid
ed73d130f9
Cache navmesh tiles
...
Use LRU modification to hold currently used items. Use RecastMesh binary
data for item key.
Store original pointer of btCollisionShape in user pointer to make available
it as an identifier within all duplicates. Use pointer to heights data array
for btHeightfieldTerrainShape.
2018-10-13 22:22:12 +03:00
elsid
1a27489904
Add special type for object id
2018-10-13 22:16:35 +03:00
elsid
7c80bb9411
Support multiple threads for async nav mesh updater
2018-10-13 22:16:34 +03:00
elsid
7c5bedc35a
Reset shorcutting if actor can't move by z-axis on reaction time
...
If actor was shortcutting because it was swimming, then when it started
walking it still be shortcutting, but there will be no new path, because
shortcut path builds only for actor able moving by z-axis and pathfinder
path only for not shortcutting actor.
2018-10-13 22:16:34 +03:00
elsid
92b34e8bb4
Check whether can actor move along z-axis in separate function
2018-10-13 22:16:34 +03:00
elsid
bbd82a743a
Use different tolerance for path point and destination
2018-10-13 22:16:34 +03:00
elsid
ab090108cb
Assign world to local variable once per function
2018-10-13 22:16:34 +03:00
elsid
27a74725f1
Use osg::Vec3f
2018-10-13 22:16:34 +03:00
elsid
ff478aba6d
Use actor half extent for interior cells
2018-10-13 22:16:33 +03:00
elsid
346e9e3141
Add off mesh connections for doors without teleport
2018-10-13 22:16:33 +03:00
elsid
f8dbd5902f
Update doors objects in navigator
2018-10-13 22:16:33 +03:00
elsid
661da42bd2
Build path by navigator
2018-10-13 22:16:33 +03:00
elsid
d02beae5a8
Find path for actors according to their abilities to swim and walk
2018-10-13 22:16:33 +03:00
elsid
dc09674362
Add command and settings option to enable actors paths render
2018-10-13 22:16:32 +03:00
elsid
c95cea414c
Support water for NavMesh
2018-10-13 22:16:32 +03:00
elsid
72f211ef28
Add enums for area type and flags
2018-10-13 22:16:32 +03:00
elsid
fa23b590a4
Add unwalkable areas to NavMesh
2018-10-13 22:16:32 +03:00
elsid
f6a60790f8
Create collision shape for all avoided nodes
2018-10-13 22:16:31 +03:00
elsid
c3298d13a6
Add log sinks (stdout and file)
2018-10-13 22:16:31 +03:00
elsid
144e1a063b
Support animated objects
2018-10-13 22:16:30 +03:00
elsid
4aba0fa85f
Limit number of NavMesh tiles to add by distance from player tile
2018-10-13 22:16:30 +03:00
elsid
d2fd9abd51
Split RecastMesh into tiles
2018-10-13 22:16:30 +03:00
elsid
dbb1d99bff
Add NavMeshItem generation to fix update NavMesh for render
2018-10-13 22:16:30 +03:00
elsid
6f3028b8f9
Update navigator when unload cell or add/remove object to scene
2018-10-13 22:16:29 +03:00
elsid
937e8e1803
Allow to create empty RecastMesh
2018-10-13 22:16:29 +03:00
elsid
faaf50446d
Option to initially enable NavMesh render
2018-10-13 22:16:28 +03:00
elsid
02ce4a7e50
Log to detournavigator log cell load and unload
2018-10-13 22:16:28 +03:00
elsid
ed3a255f65
Do not use NavMesh to find changed tiles
2018-10-13 22:16:28 +03:00
elsid
d1e71f9322
Support btBoxShape for RecastMesh
2018-10-13 22:16:28 +03:00
elsid
70a369f70e
Add command to enable NavMesh render
...
togglenavmesh or tnm
2018-10-13 22:16:28 +03:00
elsid
dd5e6a61a3
Support btCompoundShape for RecastMesh
2018-10-13 22:16:27 +03:00
elsid
373adc6ec4
Option to enable/disable file names revisions
2018-10-13 22:16:27 +03:00
elsid
d1d034a1ec
Update NavMesh one by one tile in order from nearest to player
2018-10-13 22:16:26 +03:00
elsid
41caca24ee
Options to enable/disable write recast mesh and nav mesh into file
2018-10-13 22:16:26 +03:00
elsid
6d233ae868
Option in settings to enable/disable detour navigator debug log
2018-10-13 22:16:26 +03:00
elsid
0c8db84962
Load cells in order from nearest to player to furthest
2018-10-13 22:16:26 +03:00
elsid
0c8a7295e6
Use only player's half extents
2018-10-13 22:16:25 +03:00
elsid
fafba8ea0c
Use recastnavigation to find path
2018-10-13 22:16:25 +03:00
elsid
3d97e96f55
Add dependency to recastnavigation
2018-10-13 22:16:25 +03:00
elsid
e707202f88
Use local constant
2018-10-13 22:16:24 +03:00
elsid
ed89126828
Fix warning implicit conversion changes singedness
2018-10-13 22:16:24 +03:00
elsid
c866fdff86
Move physics object, heightfield, ptrholder into separate files
2018-10-13 22:16:24 +03:00
elsid
4fe764c3a5
Update and check for complete Pathfinder path by different methods
2018-10-13 22:16:24 +03:00
elsid
b6dd2119a6
Make Pathfinder constructor inline
2018-10-13 22:16:24 +03:00
elsid
92f52287bf
Make PathFinder::ClearPath inline
2018-10-13 22:16:24 +03:00
elsid
3655f19373
Set PathFinder::mCell to nullptr when clear path
2018-10-13 22:16:23 +03:00
elsid
85bbf9d034
Clear path without check for empty
2018-10-13 22:16:23 +03:00
elsid
ca3d0594b3
Do not store pointer to Pathgrid in PathFinder
2018-10-13 22:16:23 +03:00
elsid
3565d92e11
Make PathFinder::getPathCell inline
2018-10-13 22:16:23 +03:00
elsid
2ad3543088
Fix constant style
2018-10-13 22:16:23 +03:00
elsid
f9c651bdf3
Add const
2018-10-13 22:16:23 +03:00
elsid
2c464bd682
Evade obstacles after set rotation
2018-10-13 22:16:22 +03:00
elsid
eb10add0c4
Remove unused parameters
2018-10-13 22:16:22 +03:00
elsid
66e5a4d591
Remove useless variable
2018-10-13 22:16:22 +03:00
elsid
1a95b7a154
Remove duplicate zTurn call
2018-10-13 22:16:22 +03:00
elsid
d0bc1b75e8
Remove unused parameters
2018-10-13 22:16:22 +03:00
elsid
63b3a70ca8
Remove useless else
2018-10-13 22:16:22 +03:00
elsid
c9f3064cbd
Update ObstacleCheck once per frame
2018-10-13 22:16:22 +03:00
elsid
ad027d13fa
Remove unused
2018-10-13 22:16:21 +03:00
elsid
6d89241178
Check is path completed by osg::Vec3f position
2018-10-13 22:16:21 +03:00
elsid
2c6daa74a9
Simplify PathFinder::checkPathCompleted
2018-10-13 22:16:21 +03:00
elsid
6411c1955d
Fix indent
2018-10-13 22:16:21 +03:00
elsid
d3667945c5
Remove unused functions
2018-10-13 22:16:21 +03:00
elsid
31340a212a
Fix functions name style
2018-10-13 22:16:21 +03:00
elsid
2f424f6be2
Store aStarSearch result to deque
2018-10-13 22:16:20 +03:00
elsid
9b3756f8bc
Store path points in deque
2018-10-13 22:16:20 +03:00
elsid
925d909fea
Use rbegin
2018-10-13 22:16:20 +03:00
elsid
fbaa525c6f
Fix warning
2018-10-13 22:16:20 +03:00
elsid
4d868bec92
Use osg::Vec3f to store path nodes in Pathfinder
2018-10-13 22:16:20 +03:00
elsid
33dfe284bd
Mark local variables const which one does not change
2018-10-13 22:16:20 +03:00
elsid
0cfdf0c7b6
Remove unused virtual
2018-10-13 22:16:20 +03:00
David Cernat
d9dd7073cf
[General] Send certain packets only when logged in
...
Previously, client mods adding packet-sending scripts to the spawn area made clients send the associated packets as soon as they inputted their character name when joining a server using those mods. This made the clients either get disconnected for not replying to a handshake first, or it made them get kicked for sending object packets that are disallowed for players who are not logged in.
To fix this, LocalPlayer's hasFinishedCharGen() has been replaced with isLoggedIn(), because the former was already returning true when players inputted their names.
2018-10-13 15:36:13 +03:00
David Cernat
66d666d60c
[Client] Use less confusing terminology when displaying plugin mismatch
2018-10-13 14:40:49 +03:00
Marc Zinnschlag
b30e309532
Merged pull request #1967
2018-10-13 11:15:45 +02:00
David Cernat
bb834748c5
[Server] Log player kicks
2018-10-13 09:34:29 +03:00
David Cernat
a3111fbcc1
[Server] Use clearer error message when failing to bind port
2018-10-13 08:35:07 +03:00
Andrei Kortunov
dad0b78901
Avoid overflow when handling output characters (bug #4676 )
2018-10-12 20:41:03 +04:00
Sam Hellawell
df1667b6e4
Cleanup fix for equip item crash on Linux
...
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2018-10-11 21:49:24 +01:00
Sam Hellawell
1e171ad9fd
Fix crash when equipping item on linux
...
Signed-off-by: Sam Hellawell <sshellawell@gmail.com>
2018-10-11 20:13:22 +01:00
AnyOldName3
0124be5713
Merge upstream/master
2018-10-10 21:23:19 +01:00