Regalis
bee570e2e3
- the server log view is not cleared when saving the log (but old messages are removed when going over the max number of lines)
...
- log can be viewed in the server lobby, not just in-game
- logging pump, reactor & battery state usage
- GUIListBox.MouseRect doesn't return an empty rect anymore -> listboxes without selectable content can be scrolled with the mouse wheel
2017-05-08 21:30:54 +03:00
Regalis
464078e565
Clients can't send wire positions to the server
2017-05-03 21:28:09 +03:00
Regalis
89941229f8
A reference to the character who triggered a signal is passed to all the recipients of the signal. Allows more accurate server logging: using doors, docking ports or turrets is now properly logged.
2017-04-28 18:10:47 +03:00
Regalis
64c109f13b
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Source/Characters/AI/EnemyAIController.cs
Subsurface/Source/DebugConsole.cs
Subsurface/Source/Items/Components/Machines/Radar.cs
Subsurface/Source/Items/Item.cs
2017-04-27 21:33:44 +03:00
Regalis
1dad5d9bf4
Passive sonar: when not active, the sonar shows nearby sources of sound and a faint outline of the structures around them. Now it's much easier to monitor how much noise the sub is making and to hide from enemies.
...
+ Changed the visuals of the sonar a bit. The current rendering method is very inefficient though, todo: write a shader
2017-04-24 21:13:54 +03:00
Regalis
31f7eca717
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Source/GUI/GUIButton.cs
Subsurface/Source/GameSession/CrewManager.cs
Subsurface/Source/GameSession/GameSession.cs
Subsurface/Source/Items/Item.cs
Subsurface/Source/Networking/GameServer.cs
Subsurface/Source/Screens/MainMenuScreen.cs
Subsurface/Source/Screens/ServerListScreen.cs
2017-04-23 21:40:11 +03:00
Regalis
67a3020430
Logging when clients use an item on themselves or hit someone with a melee weapon
2017-04-17 19:52:25 +03:00
Regalis
9a36df0f52
ItemComponent syncing fixes:
...
- Relay and lightcomponent states are synced (otherwise clients won't be notified if the state is, for example, toggled by a signal from a button).
- Clients don't play door sounds if a signal attempts to set the state to the same value as the predicted state, but DO play if a correction from the server changes the state from the predicted one.
- Clients are notified if a reactor receives a shutdown signal.
- Powercontainer updates are sent if the charge changes by 1%, not by 1 unit.
2017-04-11 20:38:07 +03:00
Regalis
347f549ac1
Reactors, sonars, nav terminals, pumps and batteries use similar delayed correction logic as doors and inventories.
...
I.e. the clients delay correcting the state of the item until the local player stops manipulating the state (atm the delay is 1 sec). Prevents pumping speeds, steering directions and whatnot from switching to an old state and back - now the corrections should not be visible to the players unless the client predicts the state wrong.
2017-04-11 00:48:53 +03:00
Regalis
fac31b4892
- Fixed railgun sounds not playing at the clients' end
...
- Server sends updates for batteries when their charge changes (not strictly necessary assuming the rest of the electrical grid stays in sync, but just in case)
- Reactor state is synced with clients if modified through the debug console
- Increased maximum item velocity to 64 units/s, all item are clamped to the max vel
2017-04-10 20:13:33 +03:00
Regalis
dc6ed7daf1
Separate component style for item UIs + option to select the style in the item config files, removed a bunch of hard-coded UI element color changes
2017-04-10 18:11:33 +03:00
Regalis
887735ff32
- DockingPort syncing fix: server waits until the port is locked before sending hull/gap IDs, clients can't lock the port until the server tells them to
...
- fixed crew commands being disabled in single player instead of multiplayer
- server-side ID error logging fix
2017-04-09 20:51:57 +03:00
Regalis
3844dd9dac
GUIStyle logic changes: instead of having a predetermined GUIComponentStyle for each type of GUIComponent, any GUIComponent can use any style. The GUIComponent constructors take the name of the style as a parameter, and if no style is specified, the default style for the GUIComponent in question will be used.
2017-04-08 16:46:53 +03:00
Regalis
f863eb331d
Moved stun from AnimController to the character class, server notifies clients when the stun ends, husk infection included in character status messages
2017-04-07 19:56:25 +03:00
Regalis
bfe043c154
Fixed door sounds playing twice client-side (first when the client activates the door and again when the correct state is received from the server)
2017-04-05 23:51:45 +03:00
Regalis
7e431c7dfd
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Source/Items/Components/Machines/Deconstructor.cs
Subsurface/Source/Items/Components/Machines/Fabricator.cs
2017-03-23 18:58:18 +02:00
Regalis
4d19d0afc1
Deconstructors & fabricators drop created items on the floor if there's no more room in the inventory, deconstructor doesn't reset the activation button after deconstructing an item if there are still more items to go
2017-03-23 18:55:39 +02:00
Regalis
885a8c610c
Text scale in GUITextBlocks and ItemLabels can be changed, text wrapping fix (words that are too wide for one line shouldn't cause overflows anymore)
2017-03-22 23:22:54 +02:00
Regalis
2c688f40e3
Syncing RespawnManager state with clients
2017-03-20 20:44:20 +02:00
Regalis
2d7d7f3d8d
Fixed turret syncing, clients don't get a notification about changed permissions if they're assigned the same permissions they already have
2017-03-13 20:52:31 +02:00
Regalis
0874a0b059
PowerContainer syncing, clients can't launch a turret until the server tells them to
2017-03-11 15:40:18 +02:00
Regalis
5bdb57b98a
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Properties/AssemblyInfo.cs
Subsurface/Source/Characters/AICharacter.cs
Subsurface/Source/Characters/Animation/HumanoidAnimController.cs
Subsurface/Source/Characters/Character.cs
Subsurface/Source/GameMain.cs
Subsurface/Source/Items/Components/Signal/Connection.cs
Subsurface/Source/Items/Item.cs
Subsurface/Source/Networking/GameServer.cs
Subsurface/Source/Networking/GameServerLogin.cs
Subsurface/Source/Physics/PhysicsBody.cs
2017-03-11 13:24:09 +02:00
juanjp600
d6c292a2cc
SharpFont + ScalableFont implementation
...
https://github.com/Robmaister/SharpFont
TODO: replace Code Bold.otf with the full version, fix any bugs, build on Linux, possibly move ToolBox string wrapping and limiting logic to ScalableFont class for better results.
2017-03-07 13:44:42 -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
juanjp600
3868b70387
Fixed windowed door shadows
2017-03-01 13:41:37 -03:00
Regalis
3fcaff0288
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Properties/AssemblyInfo.cs
2017-02-22 23:33:14 +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
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
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
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
b5bac67c4a
WIP item position syncing
2017-02-02 20:40:58 +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
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
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
8f50cca026
Syncing StatusEffects applied by meleeweapons or using an item on self
2017-01-15 14:49:15 +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
81f3d24070
DockingPort syncing
2017-01-12 18:03:52 +02:00
Regalis
8a9b322b78
Clients can create firesources if server tells them to, extinguishing fixes
2017-01-11 18:03:01 +02:00
Regalis
402c745fc3
Reimplemented chat range & radio messages. Each client now has their own chatMsgQueue, so all chat messages don't have to be sent to all clients.
2017-01-07 19:22:48 +02:00
Regalis
1f07b18e5b
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Properties/AssemblyInfo.cs
Subsurface/Source/Items/Components/DockingPort.cs
Subsurface/Source/Items/Components/Signal/Wire.cs
Subsurface/Source/Items/Item.cs
2016-12-29 22:18:27 +02:00
Regalis
12b7290bad
Fixed Ragdoll.HeadInWater not being set to true if the character is inside a water-filled hull but the head is outside the sub, HUDProgressBars aren't created when a non-controlled character repairs something
2016-12-28 20:00:40 +02:00
Regalis
49d4108eeb
Fixed character colliders sinking/floating away when using a railgun controller underwater
2016-12-28 19:56:52 +02:00
Regalis
c3d29e41ad
Additional null check in Wire Update, stopping paused sounds before deleting them (prevents an OpenAL error when switching to sub editor when the mainmenu drone sound is playing)
2016-12-21 20:35:38 +02:00
Regalis
40c28a11de
Docked subs are forced to correct positions during loading and the docking is "locked" (subs won't get stuck inside each other even if the linked sub is placed incorrectly in the editor)
2016-12-13 23:12:56 +02:00
Regalis
5241546069
Fixed error message spam if a docking port is linked to another port in the same sub
2016-12-12 13:31:26 +02:00
Regalis
9819c52ced
Fixed null exception if switching to wiring mode while some item is selected
2016-12-12 13:28:44 +02:00
Regalis
2871830670
Fixed wire connections & nodes resetting when copypasting them
2016-12-11 22:33:15 +02:00