Commit Graph

950 Commits

Author SHA1 Message Date
juanjp600
ae67be1775 Removing "sent" duplicates when a new event is added 2017-02-15 13:48:13 -03:00
Regalis
7f7ac76484 Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Source/Characters/Character.cs
	Subsurface/Source/GUI/GUI.cs
	Subsurface/Source/GUI/LoadingScreen.cs
2017-02-13 22:04:28 +02:00
Regalis
bfc22c7b33 Enabling characters when switching control to them (when switching to a disabled far-away monster for example) 2017-02-13 21:58:27 +02:00
Regalis
1ea3044fd6 Firesource sound fix 2017-02-13 21:12:15 +02:00
Regalis
5871faa2dd Added a few new console commands: disablehud, lockx & locky (disables submarine movement on the respective axis), followsub (toggles whether the camera moves with the subs) 2017-02-13 16:23:28 +02:00
Regalis
52bf73722f ServerEntityEventManager doesn't process received events until the character inputs of the client for the corresponding frame have been processed (fixes character movement lagging behind EntityEvents at the servers side)
+ split character networking logic into a separate file, characters drop items at the position of their collider instead of hands
2017-02-09 23:09:42 +02:00
Regalis
1f16bef01c Interpolating item drawRotation in the "shortest direction" (prevents twitching if the rotation changes e.g. from -0.1f to PI*2), physicsbodies are lerped towards their targetposition at a constant speed 2017-02-09 00:01:01 +02:00
Regalis
4c5da19ab4 Clients predict the state of a door when a signal is received (and revert back to the correct state if no verification is received from the server in 1 sec) 2017-02-08 19:56:42 +02:00
Regalis
304c67f904 EntityEvent type written into item update messages using WriteRangedInteger, item position updates include the velocity of the item 2017-02-07 21:18:22 +02:00
Regalis
e2a872ad90 Fixed ItemContainer not setting the position of a contained item when it's placed in the ItemInventory, minor refactoring 2017-02-07 21:06:42 +02:00
Regalis
d46207916f Server doesn't send character position updates to far-away clients, clients disable characters if they haven't received position updates in a while 2017-02-07 18:59:25 +02:00
Regalis
b98ebe6e21 Readded client permissions 2017-02-06 21:07:24 +02:00
Regalis
462a8b5da8 Changed character update IDs from uint to ushort 2017-02-06 16:24:11 +02:00
Regalis
4b8d1054b1 Changed lobby & chatMsg IDs to from uint to ushort, added a utility class that handles the wrap around of IDs 2017-02-05 22:55:19 +02:00
Regalis
9bda79036a - server doesn't send the STARTGAME message to all clients when someone joins mid-round
- team ID is included in character spawn messages even if no-one is controlling the character anymore
- living characters are taken into account when assigning jobs for respawned characters (e.g. there can't be two captains alive at the same time)
2017-02-05 21:58:31 +02:00
Regalis
7f661ce362 Fixed a brainfart in property saving (i.e. saveable but non-editable properties not being saved) 2017-02-05 18:42:17 +02:00
Regalis
b375422c4e "Undertow games" splashscreen 2017-02-05 18:41:49 +02:00
Regalis
89e881cb57 Readded voting (submarine, mode, end round & kick) 2017-02-04 18:30:40 +02:00
Regalis
b5bac67c4a WIP item position syncing 2017-02-02 20:40:58 +02:00
Regalis
39f977535d Fixed ragdolls colliding with stairs when swimming even if not steering upwards, AI steering fixes 2017-02-02 20:39:51 +02:00
Regalis
32d7be07ee ClosestCharacter is saved into NetInputMem (clients can drag characters again) 2017-02-02 19:24:59 +02:00
Regalis
7674647928 Clients don't apply a received inventory state on the inventory until >1 second has passed since they sent their local state (prevents the inventory from briefly reverting to an old state if items are moved around in quick succession) 2017-02-02 18:35:28 +02:00
Regalis
05c5880269 Displaying the names of the connected players in the server lobby 2017-02-01 18:10:48 +02:00
Regalis
b87e22409a Fixed server setting character LastNetworkUpdateIDs to UInt32.MaxValue 2017-02-01 18:09:31 +02:00
Regalis
5a4201c3f2 Character status syncing fix, less frequent stun update messages 2017-01-31 20:50:40 +02:00
Regalis
b8263d6a90 Removing items from their parent inventory in item.Drop 2017-01-31 20:11:19 +02:00
Regalis
0cd2d7a0b9 Readded traitors 2017-01-30 19:49:13 +02:00
Regalis
6bbd11630d Fabricator & deconstructor syncing 2017-01-28 12:40:43 +02:00
Regalis
0570956e24 Wiring syncing 2017-01-27 20:59:41 +02:00
Regalis
4589c2bcfb Syncing changes to ingame editable item properties (light colors etc) 2017-01-27 18:28:07 +02:00
Regalis
626e238994 Merge branch 'master' into new-netcode 2017-01-26 19:57:53 +02:00
Regalis
5afca48a82 Relinking dockingport hulls to gaps after flipping the sub 2017-01-26 19:57:21 +02:00
Regalis
fb1f90e226 Fixed docked subs being moved twice when syncing sub position 2017-01-26 19:04:26 +02:00
Regalis
15b3dd31a8 Merge branch 'master' into new-netcode 2017-01-25 20:30:26 +02:00
Regalis
282c2b75d4 Fixed docking ports disconnecting when a submarine is flipped 2017-01-25 20:30:08 +02:00
Regalis
e27fa1c7ee Readded team assignment logic 2017-01-15 20:39:06 +02:00
Regalis
b0231105a2 Reimplemented private chat messages 2017-01-15 17:49:31 +02:00
Regalis
8f50cca026 Syncing StatusEffects applied by meleeweapons or using an item on self 2017-01-15 14:49:15 +02:00
Regalis
f7ac98ab5f Broken items can be repaired, fixed clients never removing firesources (causing the lights to stay after the flames have been extinguished) 2017-01-14 20:30:46 +02:00
Regalis
bd7766d3e7 Server clears EntityEventManager before starting a new round, not just when ending it (fixes events breaking during the next round if an item created an event when unloading the previous sub) + some additional error checks 2017-01-14 20:26:41 +02:00
Regalis
6252db7928 - fixed server validating its own name instead of the name of a client who's logging in
- clients automatically reconnect to the server when the connection is lost and return back to server list if they fail to reconnect
- showing the error msg as a GUIMessageBox and returning to main menu if starting a server fails
2017-01-14 16:57:47 +02:00
Regalis
fdbdf9638f Fixed railgun aiming, fixed EntityEvent not being sent if a character is killed by something else than health dropping to zero 2017-01-14 14:45:19 +02:00
Regalis
9b03b2bcc1 Server ignores UPDATE_INGAME messages if the game isn't running, server doesn't set any of the clients' lastRecvIDs above the ID of the latest chatMsg/event/etc (clients can't have received something the server hasn't sent yet) 2017-01-13 18:07:00 +02:00
Regalis
fecb7bee9a Syncing attack input 2017-01-13 17:53:40 +02:00
Regalis
08053bec85 Clients can join the game mid-round 2017-01-12 20:42:15 +02:00
Regalis
81f3d24070 DockingPort syncing 2017-01-12 18:03:52 +02:00
Regalis
ed675dc75e Lobby update ID isn't included in ingame update messages, resetting lastRecvGeneralUpdate in InitClientSync 2017-01-11 23:37:30 +02:00
Regalis
037bd09c2c - clients ignore lobby updates if they already received a more up-to-date one
- server tells clients their ID in the first lobby update
- clients take control of a spawned character if their ID matches the ownerID of the character (-> respawning works now)
2017-01-11 21:31:19 +02:00
Regalis
dc3885a2da Server doesn't un-freezes characters that are stunned, unconscious or dead, or controlled by the host 2017-01-11 21:24:03 +02:00
Regalis
8a9b322b78 Clients can create firesources if server tells them to, extinguishing fixes 2017-01-11 18:03:01 +02:00