1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 04:49:54 +00:00
Commit graph

25051 commits

Author SHA1 Message Date
David Cernat
64c94346b6 [Client] Always send attack starts by actors immediately
Previously, creatures with fast attack animations would have their attack updated right after being started, which happened so quickly that it prevented the attack start from actually being sent by the client.
2019-11-30 15:50:05 +02:00
David Cernat
ed7fe859dd [Client] Set attackingOrSpell state instantly after Attack/Cast packets
It is no longer necessary to wait for the Actors::update() loop to set dedicated players and actors to their new states.
2019-11-30 15:03:51 +02:00
David Cernat
c702eab93c [Client] Fix declarations hiding class members 2019-11-30 12:51:48 +02:00
David Cernat
56c3ef71ae [Client] Send ObjectDelete packets when picking up items once again
When fixing problems with ObjectActivate in 49fa35a516, I mistakenly made it so the picking up of items no longer also sent ObjectDelete packets. That is now fixed.
2019-11-30 08:13:22 +02:00
David Cernat
7acf6865b9 [Client] Don't clear spells for dying actors 2019-11-29 19:49:17 +02:00
David Cernat
23d410f473 [General] Implement body part records for RecordDynamic packet 2019-11-29 14:06:17 +02:00
David Cernat
0dae3074a6 [Client] Add missing comment related to spellcast animation 2019-11-29 14:02:52 +02:00
David Cernat
b3747839c0 [General] Add hasRace to record overrides in RecordsDynamic packet 2019-11-29 13:28:07 +02:00
David Cernat
ddb25a482d [Server] Remove unneeded assignments for playerController in processors 2019-11-29 12:54:18 +02:00
David Cernat
16662d772b [General] Synchronize death animations for players 2019-11-29 12:52:47 +02:00
David Cernat
47443e19cb [General] Use compression for string values used in Attack packets 2019-11-29 11:19:24 +02:00
David Cernat
140c1c9c12 [General] Use hard synchronization for melee attack animations
Previously, each client chose its own attack animations for DedicatedPlayers and DedicatedActors based on the direction they were walking in, which however led to desyncs for players with "Always Use Best Attack" enabled and for creatures which pick their attack animations randomly.
2019-11-29 10:39:57 +02:00
David Cernat
a385fcdd87 [Client] Fix crash caused by setting instant state for null localCast 2019-11-28 20:28:55 +02:00
David Cernat
5a46b40e1a [Client] Stop switching drawstates when receiving ActorAttack packets
Previously, some of the spammier ActorAttack packets were overriding spellcasting animations with weapon attack animations.
2019-11-28 19:53:34 +02:00
David Cernat
ef944aa050 [Client] Remove unused redeclarations of localActors & dedicatedActors 2019-11-28 13:00:20 +02:00
David Cernat
06b4a4f97c [Client] Don't tie spellcasting for dedicated players/actors to anim end
When Koncord implemented spellcasting, he made it so only the act of initiating a spellcast was synchronized, leaving it to other clients to actually cast a spell for a dedicated player or actor once their spellcasting animation was over. This had led to a lot of desyncs and has always been inconsistent with the handling of attacks, so I've belatedly gone ahead and prevented the end of a spellcasting animation from having any effect for dedicated players and actors, making them cast a spell when an appropriate Cast packet is received from them instead.

Additionally, the logged messages in MechanicsHelper's handling of attacking and casting have been moved around slightly.
2019-11-28 10:34:34 +02:00
David Cernat
7815c8bdaf [Client] Queue sending of Cast packet from CastSpell::cast() 2019-11-28 09:40:22 +02:00
David Cernat
b74e3a7e2e [Client] Include spellIds in Cast packets again, fixing problem from 190c404b38 2019-11-28 00:11:51 +02:00
David Cernat
bbf9f20053 [Client] Stop sending WorldKillCount packets or incrementing local kills
This means the server scripts are now required to send a WorldKillCount packet as a reply to ActorDeath packets sent by clients. This gives the server full control over which kills are counted, while also solving the previous problem of kills being counted only for actors that had finished their death animations.
2019-11-27 11:21:29 +02:00
David Cernat
b352983348 [General] Include actor refIds in ActorDeath packets 2019-11-27 11:18:08 +02:00
David Cernat
8da6a7fd9b [Server] Fix mixed-up bindings for Chat functions 2019-11-20 21:01:18 +02:00
David Cernat
3c3015d0da [Browser] Remove unused buttons from the server browser for now 2019-11-20 15:05:48 +02:00
David Cernat
0c98c5d09e Add OpenMW commits up to 19 Nov 2019
# Conflicts:
#	apps/openmw/mwmechanics/aipursue.cpp
#	apps/openmw/mwmechanics/summoning.cpp
2019-11-19 17:16:48 +02:00
Bret Curtis
2cbb01627b
Merge pull request #2604 from akortunov/fading
Do not use screen fading during game loading if there is no current cell
2019-11-19 14:48:21 +01:00
Andrei Kortunov
73f43ba750 Do not use screen fading during game loading if there is no current cell (bug #5211) 2019-11-18 22:24:19 +04:00
Alexei Dobrohotov
980e0c4936
Merge pull request #2603 from akortunov/activate
Allow ActionOpen and ActionTalk only for player
2019-11-18 21:17:33 +03:00
Andrei Kortunov
4118b20608 Allow ActionOpen and ActionTalk only for player (bug #5210 2019-11-18 12:41:11 +04:00
Alexei Dobrohotov
a6ffaaa434
Merge pull request #2598 from akortunov/coverity
Validate input bindings to avoid crashes in OICS
2019-11-18 01:29:05 +03:00
Alexei Dobrohotov
4208f10e81
Merge pull request #2600 from akortunov/master
Take in account caster's race height when launch magic bolt
2019-11-17 21:04:55 +03:00
Andrei Kortunov
6861d9d5e5
Merge pull request #2510 from elsid/ai_open_door
Open door when it is on the way to a next path point (bug #5073)
2019-11-17 21:21:22 +04:00
Chris Djali
5f04c12ac3
Merge pull request #2601 from akortunov/warnfix
Clamp number of shadow maps
2019-11-17 13:27:58 +00:00
Andrei Kortunov
f09d20434c Clamp number of shadow maps 2019-11-17 17:25:02 +04:00
Andrei Kortunov
d1e0fa575e Take in account caster's race height when launch magic bolt (bug #5209) 2019-11-17 16:37:38 +04:00
Andrei Kortunov
6554130f6f
Merge pull request #2594 from Capostrophic/summonsummon
Minor summoned creature cleanup fixes
2019-11-17 10:47:07 +04:00
Andrei Kortunov
ec8aa20b3d
Merge pull request #2599 from akortunov/master
Add missing isNpc() check
2019-11-17 09:19:28 +04:00
Andrei Kortunov
8dbbe42f21 Add missing isNpc() check (bug #5206) 2019-11-17 09:17:03 +04:00
Alexei Dobrohotov
ef138e9afc
Merge pull request #2592 from akortunov/switchnode
Use transformations of NiSwitchNode
2019-11-15 19:46:45 +03:00
Andrei Kortunov
ad256e8343 Validate input bindings to avoid crashes 2019-11-15 11:41:01 +04:00
Bret Curtis
454b9f1964
Merge pull request #2597 from akortunov/coverity
CoverityScan fixes, part 2
2019-11-14 21:08:03 +01:00
Alexei Dobrohotov
f332df8839
Fix terrain shadows checkbox loading 2019-11-14 19:50:59 +03:00
Andrei Kortunov
df4344d253
Merge pull request #2595 from Capostrophic/defaults
Default visual settings tweaks
2019-11-14 19:13:36 +04:00
Andrei Kortunov
b21dc17538 Attempt to shut up CoverityScan warnings about tainted values 2019-11-14 18:28:38 +04:00
Alexei Dobrohotov
b5992b380e
Merge pull request #2586 from unelsson/allowselectionalledges
Allow selecting cell edges everywhere
2019-11-14 17:25:48 +03:00
Andrei Kortunov
b210e99abc Avoid divizion by zero 2019-11-14 17:43:21 +04:00
Nelsson Huotari
120583f443 optimize isInCellSelection calls 2019-11-14 11:28:49 +02:00
Bret Curtis
1c810b06fb
Merge pull request #2596 from akortunov/coverity
Fix some issues, found by CoverityScan
2019-11-13 17:05:42 +01:00
Andrei Kortunov
3970baeb84 Fix possible usage of destroyed variable 2019-11-13 15:46:49 +04:00
Andrei Kortunov
34873b6065 Fix dead code 2019-11-13 15:29:18 +04:00
Andrei Kortunov
5561eb5415 Do not discard division reminder 2019-11-13 15:18:18 +04:00
Andrei Kortunov
238dcdbbd4 Fix copy-paste error 2019-11-13 15:14:30 +04:00