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

581 commits

Author SHA1 Message Date
David Cernat
6918ae7bc7 [Client] Don't crash when receiving certain packets from NULL players 2017-05-27 22:32:28 +03:00
David Cernat
2e45203bbb [Client] Clean up mapIndexes in CellController 2017-05-27 21:20:24 +03:00
David Cernat
619982b085 [Client] Only try to send actor data to other players when authorized 2017-05-27 18:55:14 +03:00
David Cernat
73b9683182 [General] Make most ActorPackets smaller by not including refIds in them 2017-05-27 16:59:23 +03:00
David Cernat
7177d56cfb [Client] Only require refNumIndex & mpNum for CellStore::searchExact() 2017-05-27 16:59:23 +03:00
David Cernat
7c87ac80ee [Client] Ensure correct drawState when receiving an ActorAttack packet 2017-05-27 04:19:28 +03:00
David Cernat
311ce4119d [General] Fix logic issues related to ActorEquipment 2017-05-26 22:53:28 +03:00
David Cernat
4f273932af [General] Implement sending and reading of ActorEquipment packets 2017-05-26 04:37:49 +03:00
David Cernat
ec921eefc8 [Client] Prevent players from getting stuck in drag and drop when their opened containers are deleted 2017-05-26 02:13:31 +03:00
David Cernat
32879adc5b [General] Allow ObjectTrap to trigger traps, not just disarm them 2017-05-26 01:28:43 +03:00
David Cernat
7ac115b359 [Client] Implement sending and reading of ObjectTrap packets 2017-05-26 00:21:24 +03:00
Koncord
24d4e1c222 [General] Remove useless PacketSendMyID 2017-05-26 02:40:49 +08:00
David Cernat
11369f6513 [General] Implement sending and reading of PlayerTopic packets 2017-05-24 21:43:34 +03:00
David Cernat
08de349133 [General] Add placeholders for PlayerTopic & ObjectTrap packets 2017-05-24 19:01:28 +03:00
David Cernat
870fd9a78b [General] Remove ObjectUnlock packet, use ObjectLock with 0 lock instead 2017-05-24 13:28:34 +03:00
David Cernat
e6983993c2 [General] Implement sending and reading of PlayerFaction packets 2017-05-18 19:27:20 +03:00
David Cernat
04c9c5ed48 [General] Forward PlayerJournal packets to other players 2017-05-18 12:57:48 +03:00
David Cernat
0189dbf916 [General] Make JournalItem consistent with other packet structs 2017-05-18 10:32:23 +03:00
David Cernat
1d0167c3c9 [Client] Add missing include for PlayerFaction processor 2017-05-16 19:30:29 +03:00
David Cernat
ad388c7e12 [General] Add placeholders for ActorEquipment & PlayerFaction packets
Also reorder packets and packet processors.
2017-05-16 19:25:31 +03:00
David Cernat
f527fe9ebe [General] Add basic integrity check to reading of ActorList packets
Additionally, add newlines to files missing them.
2017-05-16 14:20:40 +03:00
David Cernat
05564bd123 [General] Add basic integrity check to reading of Container packets 2017-05-14 20:24:06 +03:00
David Cernat
46501909ff [Client] Comment out spammy debug about Container packets 2017-05-14 11:08:53 +03:00
David Cernat
8f5e6531db [Client] Avoid updating positions and anim flags when framerate is low
Also rename DedicatedPlayer methods so they are consistent with those from DedicatedActor
2017-05-14 10:52:44 +03:00
David Cernat
271594f0ee [Client] Don't play death animations for NPCs saved as dead on server 2017-05-14 10:27:43 +03:00
David Cernat
5a786e6c56 [Client] Make all LocalActors get initialized correctly again 2017-05-09 14:19:25 +03:00
David Cernat
d7d4dec200 [Client] Don't spam AnimFlags packets when a Player or Actor is flying 2017-05-09 12:27:59 +03:00
David Cernat
1f747d4375 [Client] Only apply interpolation when positions don't change too much 2017-05-09 04:41:26 +03:00
David Cernat
cc559cf8e2 [General] Don't send packets for dead LocalActors, to fix Position spam 2017-05-09 02:47:29 +03:00
Koncord
d82ed7d0ad [Client] Register ProcessorGameTime 2017-05-08 02:46:02 +08:00
Koncord
6c45b6dc5b [Client] Fix ProcessorGameTime ID 2017-05-08 02:45:44 +08:00
David Cernat
3fb0bbb58c [Client] Make it possible to turn off console again 2017-05-07 20:13:49 +03:00
David Cernat
aaaed8ab8b [Client] Fix potential object duplication in WorldEvent::placeObjects()
Also clean up the debug messages in WorldEvent so they don't take up multiple lines.
2017-05-07 03:17:19 +03:00
David Cernat
de49f5f175 [General] Add and use isActor bool for WorldObject 2017-05-07 03:07:09 +03:00
David Cernat
9d2c5c3502 [General] Simplify structure of BaseEvent 2017-05-06 21:57:29 +03:00
David Cernat
dcc61a095a [Client] Allow multiple WorldObjects to be added to a WorldEvent 2017-05-06 20:44:39 +03:00
David Cernat
bdc8b7f863 [Client] Send level creatures in ObjectPlace reply to ActorList request 2017-05-06 08:40:36 +03:00
David Cernat
3def111ca1 [Client] Fix graphical glitches related to DedicatedActor initialization 2017-05-06 04:49:49 +03:00
David Cernat
62aa6ed7ea [Client] Send PlayerPosition packets based on a timeout 2017-05-06 00:59:54 +03:00
David Cernat
ef12a37d59 [Client] Send ActorPosition packets based on a timeout 2017-05-06 00:33:48 +03:00
David Cernat
db3859565b [Client] Send ActorStatsDynamic packets only when stats change enough 2017-05-05 23:17:15 +03:00
David Cernat
4d81455020 [General] Rework and simplify death reasons so they work with NPCs 2017-05-05 22:16:31 +03:00
David Cernat
b745a33f18 [Client] Resurrect DedicatedActors that aren't supposed to be dead 2017-05-05 20:38:28 +03:00
David Cernat
8b4e167efe [Client] Prevent NPC subtitles from being added to open Dialogue window 2017-05-05 20:16:20 +03:00
David Cernat
bcdbecf608 [Client] Initialize Cell before moving DedicatedActor to it 2017-05-05 19:54:20 +03:00
David Cernat
60cf623455 [Client] Make DedicatedActors transition into LocalActors when eligible 2017-05-05 07:37:09 +03:00
David Cernat
206c9cc357 [Client] Use CellController pointers to make code easier to read 2017-05-05 04:58:44 +03:00
David Cernat
e05adbfe65 [Client] Add better debug for Actor cell changes 2017-05-05 04:46:40 +03:00
David Cernat
950a8eae3d [Client] Move Actors to Cells rather than reinitialize them from scratch 2017-05-05 03:52:41 +03:00
David Cernat
8d41a0c53b [Client] Make LocalActor initialization include newly spawned Actors 2017-05-05 02:46:16 +03:00
Koncord
93edd67681 [Client] Use boolean var instead requestQuit or throwing runtime_error 2017-05-03 14:52:32 +08:00
Koncord
e0139c33b3 [Client] Remove destructor in Cell 2017-05-03 14:46:25 +08:00
Koncord
4eb02af8fb [Client] Use __WINDOWS define 2017-05-03 14:44:38 +08:00
Koncord
47e6820f97 [General] Move printWithWidth and intToHexStr to components 2017-05-03 14:38:44 +08:00
David Cernat
34e77c5dae [Client] Initialize Actors based on the guid of an ActorAuthority packet 2017-05-03 04:47:04 +03:00
David Cernat
0b40cb8919 [Client] When there are more client than server plugins, print them all 2017-05-03 03:14:11 +03:00
David Cernat
92e277d75d [Client] Prevent application hang on Windows when plugins don't match 2017-05-03 02:17:19 +03:00
David Cernat
0284f18876 [Client] Replace plugin load order message with a clearer one at the top 2017-05-03 02:15:14 +03:00
David Cernat
1dbe9f0eaa [Client] Print plugin comparison in a better-looking way on Windows 2017-05-03 01:51:47 +03:00
David Cernat
f80a16b897 [Client] Don't use try/catch when printing missing plugins
Also move load order note to bottom where it fits better.
2017-05-03 00:15:43 +03:00
David Cernat
4294508082 [Client] Don't print null for missing plugins when comparing with server 2017-05-02 23:22:37 +03:00
David Cernat
c3c04bbfc3 [General] Make coding style consistent 2017-05-02 22:47:58 +03:00
Koncord
afcf5a7fc8 [Client] Fix segmentation fault 2017-05-03 02:43:58 +08:00
Koncord
ccae9590cc [Client] Fix comparison between signed and unsigned integer expressions 2017-05-03 02:43:00 +08:00
Koncord
01bdbfecfb [Client] Fix wrong checksum collection 2017-05-03 02:41:36 +08:00
Koncord
7bee82cedb [Client] Add notification about strict order 2017-05-02 23:50:36 +08:00
Koncord
f6bea7a114 [Client] Read answer about ID_GAME_PREINIT from server 2017-05-02 23:37:18 +08:00
David Cernat
cad3eb8968 [Client] Iterate through CellStore's mergedRefs when initializing Actors 2017-05-02 03:31:40 +03:00
David Cernat
f59609fcd7 [Client] Fix actor memory leaks, part 2 2017-05-02 02:45:18 +03:00
David Cernat
a77bd6652f [Client] Read ActorPosition packets sent from Lua script cell loads 2017-05-01 21:55:50 +03:00
David Cernat
730df061b3 [General] Add hasPositionData and hasStatsDynamicData bools to BaseActor 2017-05-01 19:44:23 +03:00
David Cernat
48b773bfcb [Client] Use float scale for WorldEvent::sendObjectScale() 2017-05-01 19:09:44 +03:00
Koncord
60f4a1d9e5 [Client] Fix issues when changing npc model to creature 2017-05-01 22:54:43 +08:00
David Cernat
e8e0090b9b [General] Use new SimpleCreatureStats struct in BaseActor 2017-04-30 18:44:59 +03:00
David Cernat
809b4d78ba [Client] Split off DedicatedPlayer and PlayerList into different files 2017-04-30 14:57:43 +03:00
Koncord
eda74ddf44 [Client] Fix memory leaks 2017-04-30 13:56:30 +08:00
Koncord
3372f27f3a [Client] Notify player about current chat mode 2017-04-30 13:56:11 +08:00
David Cernat
f6a218025a [Client] Fix actor memory leaks, part 1 2017-04-30 04:19:28 +03:00
Koncord
805c346bd7 [Client] Fix copy-paste mistake 2017-04-30 01:06:47 +08:00
Koncord
465a05bad0 [Client] Add ability to look like a creature for the DedicatedPlayers 2017-04-30 00:18:44 +08:00
David Cernat
d333c0b484 [Client] Read ActorStatsDynamic packets sent from Lua script cell loads 2017-04-29 17:44:46 +03:00
Koncord
fbd8e8b3a1 [Client] Use CreatureStats instead NpcStats 2017-04-29 22:40:22 +08:00
Koncord
26c00c3141 [Client] Change chat font to RussoOne for better visibility 2017-04-29 20:34:36 +08:00
Koncord
db0e25cb6c [Client] Allow colors in the chat window 2017-04-29 20:34:36 +08:00
David Cernat
e419e25e72 [Client] Don't initialize actors without unique indexes 2017-04-28 23:17:23 +03:00
David Cernat
6a21ec1fdc [General] Rename PlayerPos into PlayerPosition 2017-04-25 22:11:33 +03:00
David Cernat
7b07d6651f [General] Add and use PlayerBounty packet and matching script functions 2017-04-25 21:24:39 +03:00
David Cernat
6658531713 [General] Fix names for two PlayerProcessors 2017-04-25 19:01:56 +03:00
David Cernat
7dbcfbd3b1 [Client] Use better check for empty CreatureStats in DedicatedActor 2017-04-25 16:55:58 +03:00
David Cernat
ea7c3f2dc7 [Client] Make tes3mp combat code work with Creatures, not just NPCs 2017-04-24 21:06:23 +03:00
David Cernat
44476248b7 [Client] Add and use DedicatedPlayer::update() 2017-04-24 18:38:57 +03:00
David Cernat
e11a24f446 [Client] Add back statement that should not have been removed in e4a261e 2017-04-24 18:10:05 +03:00
David Cernat
e4a261ea2e [Client] Remove unused include and variables, fixing warnings 2017-04-24 17:53:50 +03:00
David Cernat
841e6a63f8 [Client] Initialize Creatures as LocalActors 2017-04-24 11:58:39 +03:00
David Cernat
850b19badf [Client] Add clearer debug messages for Actor initialization 2017-04-24 11:04:28 +03:00
David Cernat
2082f8ff4f [Client] Send LocalActor cell changes at end of mwmp::Cell's update 2017-04-24 10:59:47 +03:00
David Cernat
1f6ba9d9ee [Client] Remove jump check from LocalActor that is irrelevant for NPCs 2017-04-24 10:58:39 +03:00
David Cernat
e70faf1016 [Client] Fix crashes in PlayerProcessors from NULL players
Also rename ProcessorPlayerDrawState into ProcessorPlayerAnimFlags
2017-04-24 01:46:27 +03:00
David Cernat
284f863292 [Client] Add linear interpolation for DedicatedActors 2017-04-23 21:28:23 +03:00
David Cernat
a12694c6ef [Client] Fix crash caused by late-arriving ActorAuthority packets 2017-04-23 17:12:45 +03:00
David Cernat
14e1ff27cb [Client] Rename CellController's cellsActive to cellsInitialized for clarity 2017-04-23 16:53:24 +03:00
David Cernat
27186f555d [Client] Enable reading of ActorPackets, and thus NPC sync, by default 2017-04-23 14:01:13 +03:00
David Cernat
871d8c8308 [Client] Send and read ActorCellChange packets 2017-04-23 14:01:13 +03:00
David Cernat
4e86d8781f [Client] Clean up & simplify logic for DedicatedPlayer cell transitions 2017-04-23 14:01:13 +03:00
David Cernat
87ada3e763 [Client] Add CellController::isSameCell() and use it in LocalPlayer 2017-04-23 14:01:13 +03:00
David Cernat
6aa0fa85ab [Client] Send and read ActorAttack packets 2017-04-19 22:10:06 +03:00
David Cernat
2e8714afaa [Client] Rethink and restructure tes3mp combat code so it works for NPCs 2017-04-19 22:06:04 +03:00
David Cernat
6c2bbd6608 [Client] Fix assignAttackTarget() not assigning LocalPlayer as target 2017-04-19 20:51:31 +03:00
David Cernat
61cedfa192 [Client] Add CellController methods to fetch Actors without needing Ptrs 2017-04-19 18:20:12 +03:00
David Cernat
0ef9e014eb [Client] Add resetAttack() and getSpellSuccess() to MechanicsHelper 2017-04-19 17:09:35 +03:00
David Cernat
c3375ba86f [Client] Add MechanicsHelper::assignAttackTarget() 2017-04-19 11:05:13 +03:00
David Cernat
17c4b6d4de [Client] Add MechanicsHelper methods for easily getting Attacks from Ptr 2017-04-19 10:36:23 +03:00
David Cernat
82e455f736 [Client] Organize headers 2017-04-18 18:51:40 +03:00
David Cernat
014ff7a059 [Client] Replace usage of Networking::isDedicatedPlayer() 2017-04-18 18:07:39 +03:00
David Cernat
1f6d05dfe5 [Client] Remove unused Networking::attack() method 2017-04-18 17:45:26 +03:00
Koncord
67aba35d37 [Client] Simplify Processors 2017-04-18 15:05:39 +08:00
Koncord
1db30a65cb [Client] Remove unecessary calls 2017-04-18 14:42:43 +08:00
Koncord
6969742ef0 [Client] Enable actor processors 2017-04-18 14:38:23 +08:00
Koncord
2c62c501f6 [Client] Add & init Actor processors 2017-04-18 14:37:35 +08:00
Koncord
7ec897a829 [Client] Add ActorProcessor 2017-04-18 14:37:35 +08:00
David Cernat
29f9453554 [Client] Clean up headers in Networking 2017-04-18 09:32:40 +03:00
Koncord
8128a5c39c [Client] Use protected member instead local variable 2017-04-18 13:15:31 +08:00
Koncord
25fef1a7b8 [Client] FIx conflicts 2017-04-18 12:17:58 +08:00
Koncord
578d305d86 [Client] Enable world processors 2017-04-18 11:51:05 +08:00
Koncord
7dcaef5a5a [Client] Init world processors 2017-04-18 11:50:22 +08:00
Koncord
fd3a7d2ad0 [Client] Add world processors 2017-04-18 11:50:22 +08:00
Koncord
f0805ca6f7 [Client] Fix typo 2017-04-18 11:50:22 +08:00
Koncord
740bfea0b2 [Client] Use processors for player packets 2017-04-18 11:49:00 +08:00
Koncord
e98fa6ad07 [Client] Add ProcessorInitializer 2017-04-18 11:45:54 +08:00
Koncord
f09dc2b65b [Client] Add player processors 2017-04-18 11:38:40 +08:00
Koncord
a6111b6599 [Client] Add PlayerProcessor & WorldProcessor 2017-04-18 11:38:40 +08:00
David Cernat
07c2d4251e [Client] Add and use mwmp::PlayerList::isDedicatedPlayer() 2017-04-17 20:36:20 +03:00
David Cernat
7c45888f05 [Client] Reorder methods in DedicatedPlayer 2017-04-17 19:34:32 +03:00
David Cernat
0aaf68c994 [Client] Rename mwmp::Players into mwmp::PlayerList for clarity 2017-04-17 19:10:33 +03:00
David Cernat
c05c456b11 [Client] Clean up parts of LocalPlayer and DedicatedPlayer 2017-04-17 18:50:20 +03:00
David Cernat
a650683bae [General] Add and use Target struct in mwmp::Attack 2017-04-17 18:31:39 +03:00
David Cernat
9882ceedf3 [General] Remove attackerGuid from mwmp::Attack because it is redundant 2017-04-17 18:03:33 +03:00
David Cernat
caf5428532 [General] Rename mwmp::Attack vars in preparation for Actor support 2017-04-17 17:24:11 +03:00
David Cernat
2050d06b31 [Client] Process PlayerAttack in MechanicsHelper::processAttack() 2017-04-17 16:09:07 +03:00
David Cernat
cf155c9279 [Client] Add MechanicsHelper and move linear interpolation code to it 2017-04-17 14:37:19 +03:00
David Cernat
9f226253d4 [General] Rename mwmp::Attack's refid into refId for consistency 2017-04-17 09:35:18 +03:00
David Cernat
f0f0b2dcc9 [General] Send and read ActorSpeech packets 2017-04-16 18:43:13 +03:00
David Cernat
d2178e5414 [Client] Assign LocalActor movement settings before rotations get reset 2017-04-16 17:09:47 +03:00
David Cernat
1fb11dafef [General] Send and read ActorStatsDynamic packets 2017-04-16 16:42:07 +03:00
David Cernat
678edffb5a [Client] Rename updateDynamicStats() into updateStatsDynamic() 2017-04-16 14:11:55 +03:00
David Cernat
870886192b [General] Rename DYNAMICSTATS into STATS_DYNAMIC 2017-04-16 09:00:18 +03:00
David Cernat
8ebe7ed683 [Client] Remove isLocalActor (no longer needed) from LiveCellRefBase 2017-04-16 07:54:44 +03:00
David Cernat
ca8fd1aa72 [General] Remove ActorHeadRotation packet because it would be too spammy 2017-04-15 15:49:40 +03:00
David Cernat
2872675f5e [General] Send and read ActorAnimPlay packets 2017-04-15 13:42:30 +03:00
David Cernat
56aeb85965 [Client] Update method names in ActorList 2017-04-15 11:45:20 +03:00