Commit Graph

16391 Commits (c9ad411dd352465a4aea960af79818042a666161)

Author SHA1 Message Date
David Cernat c9ad411dd3 [Client] Fix logic for setting applyProjectileEnchantment in attack sync 6 years ago
David Cernat 8012d0d7b7 [General] Include hit position in PlayerAttack and ActorAttack packets 6 years ago
David Cernat dcd4478028 [Client] Always stop sending weather updates when moving to an interior 6 years ago
David Cernat 113002ca19 [Client] Return early when processing actors that can't be initialized 6 years ago
Koncord 48f4792bc1 [Server] Add GetMaxPlayers, GetPort and HasPassword functions to API 6 years ago
David Cernat 3bd8aa82fe [General] Reduce inventory-sending hooks to just 2 in ContainerStore
Whenever an item is added to or removed from the player's ContainerStore, that player sends a PlayerInventory packet with just that addition or removal.

This eliminates all the unnecessary packet spam related to oversized PlayerInventory packets that had existed in one form or another since the initial implementation of inventory sync in 1b259e2d33

Additionally, move booleans from BasePlayer to LocalPlayer when they are only needed on the client, and make the usage of the isReceivingQuickKeys boolean consistent with the new isReceivingInventory boolean by having them both in the processors of their associated packets.
6 years ago
David Cernat 9e58cc82bd [Server] Set minimum updateRate when communicating with master server 6 years ago
David Cernat d1fa57ac14 [General] Switch to new official master server port when using old one 6 years ago
David Cernat 03832f933b [Client] Send only individual items in PlayerInventory packets
For a long time, whenever a PlayerInventory packet was sent, it contained all the items in the player's inventory, because that's how Koncord originally implemented it and I always had too many other priorities to go back and rework it.

From now on, clients only send PlayerInventory packet with the one item added or removed, with the single exception being trading with merchants, where the entire inventory is still sent for the time being.
6 years ago
David Cernat 75a64a69c7 [Server] Add GetInventoryChangesAction() script function
Additionally, fix a typo in the description of GetSpellBookChangesAction()
6 years ago
David Cernat 45b011452e [Client] Combine methods for sending spell packets into a single one 6 years ago
David Cernat 140e0ed52c [Client] Also clear aiActors when clearing ActorList 6 years ago
David Cernat aed4ca2fd2 [Client] Allow use of baseId for more record types
Additionally, don't allow new enchantment records to be created if they have no effects, to avoid a crash.
6 years ago
David Cernat a083439139 Merge pull request #469 from davidcernat/master while resolving conflicts
# Conflicts:
#	apps/openmw/main.cpp
#	apps/openmw/mwbase/world.hpp
#	apps/openmw/mwdialogue/dialoguemanagerimp.cpp
#	apps/openmw/mwmechanics/actors.cpp
#	apps/openmw/mwscript/dialogueextensions.cpp
#	apps/openmw/mwworld/worldimp.hpp
6 years ago
David Cernat 7efee0e968 [Client] Fix GCC build 6 years ago
David Cernat 5bd2244898 [Client] Uninitialize DedicatedActors instantly in some situations
When LocalActors briefly become DedicatedActors as the result of a server script, the DedicatedActors are immediately uninitialized to avoid bugs like them jumping in place or rotating slightly.

Additionally, the playing of animations and sounds received in packets for DedicatedActors is no longer done during their next update, but is instead done instantly when the packets are received.
6 years ago
David Cernat 5fd4113978 [General] Implement sending of ActorSpeech packets from server scripts 6 years ago
David Cernat 338efdb705 [General] Fix issues with MechanicsHelper::getItemPtrFromStore() 6 years ago
David Cernat aec0c5bd49 [Server] Make capitalization consistent for AI-related script functions 6 years ago
David Cernat 9598212aad [Client] Don't add bound items to inventory as a result of item packets
Additionally, don't include bound items when sending PlayerInventory packets.
6 years ago
David Cernat a3b9274365 [Client] Make it possible to check if an item ID belongs to a bound item 6 years ago
David Cernat a1933e7bc2 [Client] Don't declare variable twice in LocalPlayer's setEquipment()
The variable equipmentItem is identical to currentItem, so it should not have been added in commit 58a6a8c3bc

Addditionally, use a more descriptive variable name than "a" for item Ptrs.
6 years ago
Marc Zinnschlag 1cfc1f9bdb Merged pull request #1666 6 years ago
Marc Zinnschlag 0aedb3aada Merged puil request #1808 6 years ago
Marc Zinnschlag 24212d58e8 Merged pull request #1861 6 years ago
Andrei Kortunov cde95979d0 Fix combat engagement for creatures 6 years ago
David Cernat 5d66a9bb66 [Client] Fix path to MechanicsHelper in ProcessorPlayerItemUse 6 years ago
David Cernat 8df08c7d10 [General] Implement PlayerItemUse packet
Players can no longer unilaterally use items on themselves in their inventory. When they try to use an item, they send a PlayerItemUse packet to the server with the item's details. A serverside script can then check the item and either send the packet back to make the item use go through or drop it.
6 years ago
Andrei Kortunov 780648b584 Do not reset idle animations if we do not have ammo 6 years ago
Andrei Kortunov df577babe9 Increase priority of 1st-person weapon animations to avoid issues with animation blending 6 years ago
Andrei Kortunov 71bcc11ba5 Apply only crossbow reload animation to upper body 6 years ago
Andrei Kortunov a0d0e5d2db Give jumping animations higher priority than movement ones 6 years ago
Andrei Kortunov 6a03aa6fdb Reduce jittering during turning animations for player 6 years ago
Andrei Kortunov cd92014533 Do not touch GUI modes when taking screenshots (bug #4528) 6 years ago
Marc Zinnschlag fe19d8ff35 Merged pull request #1857 6 years ago
Marc Zinnschlag a2a57cf694 Merged pull request #1858 6 years ago
Marc Zinnschlag 0f510011b3 Merged pull request #1852 6 years ago
Andrei Kortunov 126b2fdd42 Use the isPlayer variable to do not check if the current actor is player every time 6 years ago
Andrei Kortunov 51af729305 Do not use headtracking in the 1st-person view (bug #4573) 6 years ago
Andrei Kortunov 6202b4eca9 Do not touch GUI modes when taking screenshots (bug #4528) 6 years ago
Capostrophic e9e9c0dd6b Fix guild guide fast travelling to exteriors time 6 years ago
Andrei Kortunov b7859b3fa9 Cap underwater view distance (bug #4565) 6 years ago
Capostrophic bcd9cc4baa Check the actor cell instead of the destination cell in fast travel price logic 6 years ago
Marc Zinnschlag b75b5d139a Merged pull request #1845 7 years ago
Marc Zinnschlag 7a93d118d2 Merged pull request #1846 7 years ago
Capostrophic 7087bad580 Use special behavior for all topics with reserved names (bug #4557) 7 years ago
Andrei Kortunov 1f4dd3b393 Make partial binary search case insensitive, as it supposed to be (bug #4558) 7 years ago
David Cernat 888e1dfff8 [General] Allow setting of AI fight & dynamic stats in record packets
Additionally, allow the setting of the Autocalc flag for an NPC record based on an existing record.
7 years ago
Andrei Kortunov b0f2e00e7f Make forcegreeting a non-op for non-actor objects (bug #4553) 7 years ago
Koncord d03722b3f4 [Browser] Rework browser for improved stability & clarity
(cherry picked from commits 5c79e7106f, 57353cdfff, 15723adb9a, 01a5196a92, ed75563a94, 3839a2dcfd, 1fd16ba69c, 66283943c5, ba8613a179, 5b8f4f3e92, 35b771b19e, 043eb224e2, 05fac2f67d)
7 years ago