Commit Graph

979 Commits

Author SHA1 Message Date
juanjp600
29d06bbfc8 Fix build errors 2017-03-06 16:26:52 -03:00
juanjp600
00aa9aecb1 Merge branch 'new-netcode' of https://gitlab.com/poe.regalis/barotrauma into new-netcode 2017-03-06 16:25:29 -03:00
juanjp600
ecb7500df9 Converted UInt32 ID's to UInt16
TODO: test everything, make sure nothing broke
2017-03-06 16:25:12 -03:00
Regalis
cf859eee7c WIP file transfer logic 2017-03-06 20:31:24 +02:00
juanjp600
7935ecce46 - fixed crash in UpdateVoteStatus
- fixed clients reconnecting automatically after being kicked for desync
2017-03-01 17:04:51 -03:00
juanjp600
983ab9c05b Fixed potential null exception 2017-03-01 16:42:12 -03:00
juanjp600
e681a2d29a Clients that are waiting for very old events are kicked 2017-03-01 16:40:07 -03:00
juanjp600
1b6468e1ec Merge branch 'new-netcode' of https://gitlab.com/poe.regalis/barotrauma into new-netcode 2017-02-25 12:22:48 -03:00
juanjp600
f3c58a2494 Made item syncing look slightly less erratic on client's side
Still kinda glitchy, we might need a more elaborate approach later
2017-02-25 12:22:38 -03:00
Regalis
a21d8d7a53 Fixed ragdolls accumulating a large movement value while being dragged (line 902), causing them to launch off with a high velocity when they wake up
+ some cleanup
2017-02-25 14:25:21 +02:00
Regalis
3fcaff0288 Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Properties/AssemblyInfo.cs
2017-02-22 23:33:14 +02:00
Regalis
5006a9af6c New fonts, loading progress doesn't stay stuck at 70% during SoundPlayer initialization 2017-02-22 23:31:36 +02:00
Regalis
27e74490a0 New wire sprite and switched the body from circle to capsule, tweaked physicsbody position lerping logic (catches up with the server faster) 2017-02-22 22:02:33 +02:00
Regalis
75d047b57e Item position updates include whether the physics body is sleeping, clients disable sleeping bodies 2017-02-22 21:27:52 +02:00
Regalis
d7aba531d7 Server port included in refresh and remove requests to master server, spectators see indicators for both subs during combat missions 2017-02-21 20:57:04 +02:00
Regalis
d50eba55a6 Fixed controller.userPos being recalculated incorrectly when flipping the sub (due to userPos being relative to the center of the item since commit 49d4108e) 2017-02-21 20:24:02 +02:00
juanjp600
c04f78a05c Merge branch 'master' of https://gitlab.com/poe.regalis/barotrauma 2017-02-21 13:58:41 -03:00
juanjp600
6f821874a1 Fixed Scorpion + Fixed chat when controlling monsters + Shameless plug ;) 2017-02-21 13:58:30 -03:00
Regalis
c29be7862b Disabled the splash screen in the Linux version (apparently video playback hasn't been implemented in DesktopGL) 2017-02-20 22:03:58 +02:00
Regalis
0306c03d00 Tutorial fixes: walls and windows outside the command room are fixed during the same frame they break (to prevent anything from flying out from the railgun room), moloch is forced above the player once the railgun is ready fire 2017-02-20 21:33:03 +02:00
Regalis
13a9b7ea88 More accurate velocity in item update messages (+ fixed incorrect message length) 2017-02-20 20:43:14 +02:00
Regalis
502211c6a7 Resetting entity event IDs (lastSentToAll & client-specific IDs) when a round ends 2017-02-20 20:26:12 +02:00
Regalis
04f86865f7 Changed GUIMessageBox.MessageBoxes from a queue to a list to make it easier to remove messageboxes that aren't currently visible, fixed clients creating multiple "permissions changed" messageboxes if there's another messagebox on the screen 2017-02-18 15:58:46 +02:00
Regalis
6c8f5b8999 The server maintains a list of unique EntityEvents created during the round and sends them to clients who join mid-round 2017-02-18 15:09:13 +02:00
Regalis
0e66f2a69c Fixed exceptions in ServerEntityEventManager if there are no clients on the server, clients who are in the lobby can't prevent outdated EntityEvents from being removed 2017-02-18 13:18:48 +02:00
Regalis
68b0f2132a Merge branch 'master' into new-netcode
Conflicts:
	Subsurface/Source/Characters/AICharacter.cs
2017-02-17 19:31:25 +02:00
Regalis
a5e56f7d4d Hacky fix for monsters getting lodged inside the sub due to tunneling 2017-02-17 19:28:16 +02:00
Regalis
99cf438ed7 The lowest point of a character collider is calculated from its AABB (works correctly now even if the collider is rotated, allowing prone characters to be dragged through stairs), dragged characters collide with stairs when climbing up, the AI of unconscious or stunned characters isn't updated 2017-02-17 19:27:54 +02:00
juanjp600
c46856167c Stopped server events that hadn't been sent to everyone from being removed 2017-02-16 20:34:29 -03:00
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