Commit Graph

19986 Commits (341ca691fc8a465a81b48d7953fc800a887b46fd)

Author SHA1 Message Date
David Cernat 71bea5fc00 [VR Build] Rename VR client executable 3 years ago
David Cernat 339a196579 Add OpenMW VR commits up to 4 Jul 2021
# Conflicts:
#   CMakeLists.txt
#   LICENSE
#   README.md
#   apps/openmw/CMakeLists.txt
#   apps/openmw/engine.cpp
#   apps/openmw/mwclass/creature.cpp
#   apps/openmw/mwclass/npc.cpp
#   apps/openmw/mwclass/npc.hpp
#   apps/openmw/mwinput/bindingsmanager.cpp
#   apps/openmw/mwmechanics/combat.cpp
3 years ago
David Cernat 571f3e8ee7 [Client] Use correct stacking value when sending SpellsActive packets 3 years ago
David Cernat f2d95dc84d [Client] Make ActiveSpells::removeSpellByTimestamp() return a boolean
Add logging to LocalPlayer::removeSpellsActive() to track when a player's active spell hasn't been removed due to an invalid timestamp.
3 years ago
David Cernat 4aa947ff4b [Client] Prevent player from auto-equipping items taken from containers 3 years ago
David Cernat 15fdac3f6c Revert "Merge branch '0.7.1-window-input' into 0.7.1"
This reverts commit 94f5b169e6, reversing
changes made to 43e7df6df8.

# Conflicts:
#	apps/openmw-mp/handleInput.cpp
3 years ago
David Cernat 438f197b20 [Client] Fix build for launcher 3 years ago
David Cernat 1cb10cd1f2 [Client] Use new exact search with ObjectActivate & ObjectDialogueChoice 3 years ago
David Cernat 646ffc7afe [Client] Add a new type of search to CellStore that also checks refIds 3 years ago
David Cernat 28d31f4648 [Client] Fix build for openmw_vr with Visual Studio 2019 3 years ago
David Cernat 572b16af41 Add OpenMW 0.47 commits to OpenMW VR up to 4 Dec 2021
# Conflicts:
#   .gitlab-ci.yml
#   CI/before_script.msvc.sh
#   CI/install_debian_deps.sh
#   CMakeLists.txt
#   apps/openmw/mwrender/screenshotmanager.cpp
#   files/ui/advancedpage.ui
3 years ago
David Cernat 38363eee0d Add OpenMW 0.47 commits up to 4 Dec 2021 3 years ago
elsid 7f1e5b368e
Fix deadlock in physics system
* Reorder unlock and notify_all calls to avoid notifying when not all worker
  threads are waiting.
* Make sure main thread does not attempt to exclusively lock mSimulationMutex
  while not all workers are done with previous frame.
* Replace mNewFrame flag by counter to avoid modification from multiple
  threads.
3 years ago
David Cernat dbae0bddc2 [Client] Only play sounds from active cells when receiving ObjectSound 3 years ago
David Cernat 48de84ec32 [Client] Send ObjectSound packets with spellcasting sounds 3 years ago
David Cernat 538ccf15cf [Client] Use higher interpolation distance for DedicatedPlayers
This makes up for the laggier-looking jumps since the changes to OpenMW's physics system.
3 years ago
David Cernat 20e37204d0 [Client] Ensure physics actor is valid in World::setOnGround()
Do the same in World::setInertialForce()
3 years ago
David Cernat e010c61167 Add OpenMW 0.47 commits up to 10 Oct 2021 3 years ago
David Cernat efc0b88058 [Client] Don't reload Ptr for DedicatedActor after adding active spells
This prevents non-continuous spell GFX from immediately vanishing.
3 years ago
David Cernat 3e582199fb [Client] Add createSpellGfx() method to MechanicsHelper
Use it to create spell GFX when adding active spells to dedicated players and actors.
3 years ago
David Cernat eb005a5c33 [Client] Stop processing CastSpell::inflict() in more appropriate place
This preserves the functionality of Reflect effects, which relies on inflict() getting far enough for a dedicated player or actor, without also processing parts of inflict() that should be skipped for them.
3 years ago
David Cernat 7f017217c7 [Client] Fix position sync for falling actors 3 years ago
David Cernat fb49b62753 [Client] Fix crash when receiving ActiveSpells for uninitialized players 3 years ago
David Cernat 63c956e1d2 [Client] Fix active spell sync using actor IDs tracked in ActiveSpells 3 years ago
David Cernat e6a1f0889f [Client] Add isStackingSpell() method to MechanicsHelper 3 years ago
David Cernat f03a87df3c [Client] Remove previous placeholders for tracking ActiveSpells actors 3 years ago
David Cernat c027862609 [Client] Track actor IDs in ActiveSpells 3 years ago
David Cernat 3e81371e53 [General] Fix jump synchronization for players
This had been broken by fr3dz10's physics rewrites from the earlier part of the year that made it so dedicated players were always regarded by the movement solver as being on the ground.
3 years ago
Evil Eye f902efbfcc Absorb spells per effect 3 years ago
David Cernat 7193d1dca5 [Server] Add stackingState arg to script functions adding active spells 3 years ago
psi29a b81df8af9c Merge branch 'cursorspeedmerge' into 'master'
Updated: Change cursor speed with settings.cfg (#6312)

Closes #6312

See merge request OpenMW/openmw!1255

(cherry picked from commit 1d342f80ed1af25d3cf1f70759be7fba1c9237b2)

b5af1928 gamepad cursor speed fix
3 years ago
David Cernat 06451c13d5 [Client] Update 3rd person model of local player when setting character 3 years ago
David Cernat 1ba36076f3 [Client] Update 3rd person model of local player when unequipping
This had apparently been broken by the fact that I had made inventory listeners get run only for actors in active cells in 385ef55848. Strangely, the player Ptr passed to fireEquipmentChangedEvent() when unequipping items has as its cell the player's original spawn cell instead of the current cell, causing the active cell check to return false in most locations for the player.
3 years ago
David Cernat de78b65eb0 [Server] Fix memory issues with script functions used for hashing 3 years ago
fredzio 32108adc31 Change projectile behaviour to be like in vanilla wrt. water plane:
- enchanted arrow explode upon hit the water plane
- non enchanted arrow disappear (or more accurately, they hit nothingness)
- enchanted arrow shot underwater explode immediately
- non enchanted arrow disappear immediately

Also, solve a bug that occured previously and could theoritically still happens where we use the last tested collision position for instead of the last registered hit:
Use the hit position as saved inside Projectile::hit() instead of the last position saved inside the callback.
If a projectile collides with several objects (bottom of the sea and water surface for instance), the last collision tested won't necessarily be the impact position as we have no control over the order in which the tests are performed.
3 years ago
David Cernat a01c874613 Add OpenMW 0.47 commits up to 23 Sep 2021 3 years ago
psi29a f0a77a48df Merge branch 'check_pathgrid' into 'master'
Make sure PathFinder::getClosestPoint is not called with failing precondition (#6294)

Closes #6294

See merge request OpenMW/openmw!1236

(cherry picked from commit baa33799de3cb27d9d3805e164b9d7ccea6a3e4d)

d36595e0 Make sure PathFinder::getClosestPoint is not called with failing precondition
3 years ago
elsid 56869ec296 Merge branch 'fix_6296' into 'master'
Ignore time to destination when giving way (#6296)

See merge request OpenMW/openmw!1234

(cherry picked from commit 14516b9fd603bf603ca2ae366bc0884106fd368c)

5893b884 Ignore time to destination when giving way (#6296)
3 years ago
David Cernat 6e95604627 [Client] Remove credits check on Windows client 3 years ago
David Cernat 7393e3def6 [General] Add and use getShortDescription() for ESM::Cell
ESM::Cell's getDescription() method was modified by aa5161f99e despite being used heavily by TES3MP. All instances of it in the TES3MP code have now been changed into the newly added getShortDescription() that is identical to the previous getDescription().
3 years ago
psi29a ad703d7470 Merge branch 'fix_pathgrid_path' into 'master'
Use pathgrid path when destination is closer to different graph component node

See merge request OpenMW/openmw!1155

(cherry picked from commit 4bf22f3ca0e5e5776c09cb8d5ad9793986373975)

9112c65a Use pathgrid path when destination is closer to different graph component node
3 years ago
David Cernat 2f98f31af2 [General] Use model variable already included in PlayerBaseInfo packets
The variable has been included since TES3MP's earliest proof of concept, but never used for anything. It is now possible to get and set it, due to semi-popular demand.
3 years ago
David Cernat a59a37dd66 [Server] Add script functions that get casters of actors' active spells 3 years ago
unelsson 08f7c73e02 Fix text 3 years ago
unelsson 4b14818035 Restucture code 3 years ago
unelsson cb42b5287d Remove friend, make getEditMode public to allow editmode testing. 3 years ago
unelsson d62ddc002e Use QPointer to detect object existence, less verbose debug messages 3 years ago
unelsson b84e41bd27 Avoid storing ref, dynamic cast worldspacewidget for safety 3 years ago
David Cernat 61a61d627e [Server] Add GetActorSpellsActiveStackingState() script function 3 years ago
David Cernat bf17bfe1d9 [Server] Add script functions that get casters of players' active spells 3 years ago
David Cernat 26033ff7e7 Add OpenMW 0.47 commits up to 4 Aug 2021 3 years ago
elsid 08b026e907
Store copies of ref_ptr for btCollisionShape wrappers in Navigator
To keep btCollisionShape lifetime.
3 years ago
elsid 668788a5a2
Use RecastMeshBuilder once to create RecastMesh
This allows to move all data out of the object instead of copying.
3 years ago
psi29a 10b799653b Merge branch 'opt-out-compose' into 'master'
Make it possible to opt out of composing variables

Closes #6186

See merge request OpenMW/openmw!1076

(cherry picked from commit 15d278de554818fef6fecf300456800523e91adf)

4727ae4b Make it possible to opt out of composing variables
04e9b6d2 Abort on duplicate content file
3 years ago
David Cernat 6bdc2b2b06 [Client] Fix rotation sync 3 years ago
David Cernat 0567dc1fd4 Add OpenMW 0.47 commits up to 25 Jul 2021 3 years ago
David Cernat 6baee12bc4 [Client] Don't print unilateral message about targets resisting spells 3 years ago
fredzio 9d17cece3a Set mCanWaterWalk and mOnGround when adding Actor to the scene.
mCanWaterWalk was set to false and updated during next frame's simulation
mOnGround is set to true but then was updated as part of the scene
loading logic.
3 years ago
fredzio 744cfc6a51 Do not store a btTransform into Projectile class: reduce its size by 112 bytes 3 years ago
fredzio 20aefb5f5f Do not store btTransform into Object class: reduce its size by 104 bytes 3 years ago
fredzio 8861d53809 Do not store a btTransform into Actor class: reduce its size by 128 bytes 3 years ago
David Cernat 3f3fe66fde [General] Track casters of spells in SpellsActive packets
Also simplify sending of SpellsActive packets slightly.
3 years ago
David Cernat 4492a7a768 [Client] Add MechanicsHelper method to get actorId of an mwmp::Target
Also clean up MechanicsHelper::getPlayerPtr() slightly.
3 years ago
David Cernat a78a88ed6d [Client] Make World::searchPtrViaActorId() also find DedicatedPlayers 3 years ago
David Cernat 9817d3a563 [Client] Add method to PlayerList for getting players by their actorId 3 years ago
David Cernat fe4a761ffe [General] Implement game setting records for RecordDynamic packets
Remove unused placeholder for variants from RecordDynamic.
4 years ago
psi29a 59da0a0da9 Merge branch 'skip_async' into 'master'
Don't put player in the air after going out of tcl

See merge request OpenMW/openmw!1009

(cherry picked from commit 6d08a1d7318ae076839738d173b884fcc7b1a348)

6ad2cf8e Skip simulation result after calling Actor::updatePosition(). Otherwise
4 years ago
David Cernat d4f2686556 [Server] Add script functions that send ObjectMove/ObjectRotate packets 4 years ago
psi29a d1c0cfa524 Merge branch 'lifetime' into 'master'
Maybe fix #6071

Closes #6071

See merge request OpenMW/openmw!1010

(cherry picked from commit 64750820957773a00d449d29551bb15fbf5fe08b)

1650dabe Assign the return value of weak_ptr::lock() to a variable, so that the
4 years ago
psi29a 8530bc5cf5 Merge branch 'fix_debugbatch_colors' into 'master'
Fix black objects in object paging debug view

See merge request OpenMW/openmw!1011

(cherry picked from commit 5287c9627c92b77c25581dbb9ac9d0b0dc4c9698)

389b8300 fix black objects with OP batch debug due to unitialized uniform
4 years ago
psi29a a21da63464 Merge branch 'FixLODIssueWithObjectPaging' into 'master'
LOD issue with object paging

See merge request OpenMW/openmw!1007

(cherry picked from commit 5688b7b4d8df93fbf28307d2259c57f8d878eeb8)

269cd310 Use same world coordinates to compute distances
4 years ago
David Cernat 3222afc8b7 [General] Implement PlayerCooldowns packet
Although this packet may be used for other kinds of cooldowns in the future, it currently only handles cooldowns for magical powers.
4 years ago
David Cernat a4b180f65a [Client] Don't send SpellsActive packets for spells received from server 4 years ago
David Cernat ad3cd5e5fa [Server] Add GetSpellsActiveStackingState() script function 4 years ago
psi29a 74aa7cdd48 Merge branch 'fix_door_freeze' into 'master'
Fix slow AiPackage::getTarget calls (#6136)

Closes #6136

See merge request OpenMW/openmw!990

(cherry picked from commit 6a4eeeb39bbe025625273dffc9754d29733e570a)

8d1eb7e2 Fix slow AiPackage::getTarget calls
4 years ago
psi29a dfacaa3711 Merge branch 'fix_navmesh_update' into 'master'
Fix navmesh update on opening/closing door

See merge request OpenMW/openmw!995

(cherry picked from commit 9123db3a5954dd082f501151cba0a08bfe3ff908)

c7c0d11c Trigger navmesh update when any navigator object has been updated
4 years ago
David Cernat 294f64d12d [General] Track timestamps for spells in SpellsActive packets
This makes it possible to remove a specific effect in effect stacks by checking its timestamp.
4 years ago
psi29a 109a7c3daf Merge branch 'base64-fixes' into 'master'
Base64 fixes

Closes #6111

See merge request OpenMW/openmw!965

(cherry picked from commit 07c3ed16d0e05df8724b1f45696e9d17a2111938)

873b3b48 Handle empty strings.
d38126ef Pack default CS config
4 years ago
David Cernat 6b45a48116 Add OpenMW 0.47 commits up to 1 Jul 2021
# Conflicts:
#   components/CMakeLists.txt
4 years ago
psi29a bb393cb91c Merge branch 'fix_new_game_guard_3' into 'master'
Fix new game guard 3 (#6126)

Closes #6126

See merge request OpenMW/openmw!976

(cherry picked from commit 89ca56632c6bc37f07e430e7f5cd23d855610b19)

a3942a1e Remove redundant check for y coordinate in inRange function
cc08a45c Move include where it is needed
7e1630a7 Remove redundant getPolyHeight wrapper
793c30ab Check dtNavMeshQuery::getPolyHeight status
a54c4bc2 Check dtNavMeshQuery::findStraightPath status
94e460ba Use proper check for distance
5624fe19 Consider path not found when there is navmesh query error
4 years ago
madsbuvi e6ce2c4e86 typo 4 years ago
psi29a 0394f848cd Merge branch 'fix_malexa_escape' into 'master'
Inscribe physical bounding box into navmesh agent cylinder (#6114)

Closes #6114

See merge request OpenMW/openmw!967

(cherry picked from commit 67f32263b2f7e4be9f50d46de842a8727449cae2)

84d6dea2 Inscribe physical bounding box into navmesh agent cylinder
4 years ago
psi29a fa30531461 Merge branch 'positively_glowing' into 'master'
Detach objects from the active grid when attempting to get their animation

Closes #6105

See merge request OpenMW/openmw!951

(cherry picked from commit 7d8949ec3fcd1919da59308deab06433136f6629)

692615fd Detach objects from the active grid when attempting to get their animation
4 years ago
psi29a 05b5ada6bf Merge branch 'fix_smooth_movement' into 'master'
Validate almost straight shortcuts by navmesh raycast (#6102)

Closes #6102

See merge request OpenMW/openmw!947

(cherry picked from commit 9c3117d2d4a70475b021f4e4a50eec88cd7cf125)

e7d68d3d Validate almost straight shortcuts by navmesh raycast
4 years ago
psi29a 1e1c8a17ed Merge branch 'fix_new_game_guard_2' into 'master'
Reapply new game guard fix

See merge request OpenMW/openmw!944

(cherry picked from commit eca0a95a5a16cf3734a32c76cab0c0a0dd6dfe2d)

56e63053 Revert "Merge branch 'fix_new_game_guard' into 'master'"
e5e04b85 Consider time to destination when try to avoid collision
4 years ago
psi29a b31750a337 Merge branch 'object_paging_min_size_combo_box' into 'master'
Adding Object Paging Min Size combo box to Advanced -> Visuals

See merge request OpenMW/openmw!917

(cherry picked from commit f66196588c16a9a16211d8f400ce7812127f26c0)

9f2f5174 Adding Object Paging Min Size combo box to Advanced -> Visuals
89950e55 Preventing type conversion of double to float for objectPagingMinSize
4 years ago
psi29a 5a27d6eed7 Merge branch 'fix-ffmpeg-api-const' into 'master'
Fix future FFMpeg API changes

See merge request OpenMW/openmw!922

(cherry picked from commit 3794e6d4b20b6c9f47aeaf3f937118c49de700e5)

70a02290 Fix future FFMpeg API changes
4 years ago
David Cernat 62f0237376 Add OpenMW commits up to 17 Jun 2021 4 years ago
psi29a 071786aff6 Merge branch 'UseSameDistanceForAllLodsOfTheCurrentChunk' into 'master'
Use same distance for all lods of the current chunk

Closes #6061

See merge request OpenMW/openmw!940
4 years ago
psi29a 329ec8f044 Merge branch 'dont_bury_me_plz' into 'master'
Don't unsummon creatures not found within the active cells

Closes #6070

See merge request OpenMW/openmw!926
4 years ago
psi29a c39c0266a9 Merge branch 'free_from_bondage' into 'master'
Do not assume the bound item cache is valid after loading a save

Closes #6069

See merge request OpenMW/openmw!931
4 years ago
unknown 7d756d997e Rebuild the cache in readState 4 years ago
CedricMocquillon 7fa67ff675 Use same distance for all lod instances of a chunk 4 years ago
fredzio 7d0483d7ad Cast spell even if target Ptr is empty. It happens when enchanted arrows
hit water or ground.
4 years ago
David Cernat 767287ae51 [General] Track stacking spells in SpellsActive packets 4 years ago
David Cernat da16c211a4 [Client] Make potion effects work with SpellsActive packets, part 2 4 years ago
Evil Eye 90fa8dca35 Do not assume the bound item cache is valid after loading a save 4 years ago
Evil Eye 89e0bfd1a4 Purge summon effects on dispose 4 years ago
David Cernat 5a852fe6db [Client] Fix warnings related to declarations 4 years ago
Evil Eye 004660be3d Don't unsummon creatures not found within the active cells 4 years ago