Regalis
53bfbb3ea7
Fixed stack overflow when attempting to cancel a file transfer client-side
2017-05-20 15:35:55 +03:00
Regalis
e3b595b9e0
Cleanup (removing unused variables & other redundancies, rethrowing exceptions instead of wrapping them in a new exception instance)
2017-05-20 15:35:13 +03:00
Regalis
89bd2b1a98
Improved particle collision logic:
...
- checking if any of the extents of the particle collide with the edges of the hull, instead of just checking if a position in the direction the particle is heading is outside the hull
- separate fields for friction and restitution
2017-05-18 20:03:58 +03:00
Regalis
1b17372f92
Clients update item rects when a position update is received from the server
2017-05-17 20:44:53 +03:00
Regalis
7f96873256
Fixed mission-related messages being logged as errors, connection errors when fetching server lists are shown as message boxes instead of logging into the debug console
2017-05-17 19:27:41 +03:00
Regalis
9c1a76707f
conflict fix
2017-05-17 18:56:45 +03:00
Regalis
095054182e
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Source/GUI/GUITextBlock.cs
Subsurface/Source/GameMain.cs
Subsurface/Source/Items/Components/Machines/Radar.cs
Subsurface/Source/Networking/GameClient.cs
2017-05-17 18:51:22 +03:00
Regalis
0aca8dbf9d
Humanoid animations work better on uneven floors (e.g. "fake stairs" made from wall pieces).
...
If the floor in front of the character is higher than where the character is standing, the character slows down and lifts its feet more. The position of the feet is also clamped below the waist, preventing the character from doing a backwards somersault when running over "fake stairs".
2017-05-14 20:15:31 +03:00
Regalis
1d3da3e70b
Fixed clients being unable to toggle doors when they've predicted the state of the door and waiting for a confirmation from the server, reading a position update for an item with no body doesn't throw an exception
2017-05-10 21:19:10 +03:00
Regalis
ad90cf804d
- respawn, fabricator & deconstructor logging
...
- fixed listbox child hiding 4 real now
- dockingport logging fix (name of the sub instead of submarine.ToString)
2017-05-09 21:39:39 +03:00
Regalis
63b5ad1821
Friendlier serverlog message type labels
2017-05-09 21:07:29 +03:00
Regalis
d0065cdd97
Having a hidden child in a listbox doesn't prevent successive children from being rendered, server log can be filtered by message type
2017-05-09 21:02:42 +03:00
Regalis
c2d918073e
Serverlog message types (which atm only determine the color of the message)
2017-05-09 19:56:12 +03:00
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
7dad837733
Server limits chatmessage length and the number of chatmessages written in one packet
2017-05-08 19:06:05 +03:00
Regalis
fec8974dd3
"Are you sure" prompt when trying to delete subs in the editor
2017-05-08 18:40:58 +03:00
Regalis
152a92e600
Server removes events if no clients are playing. Otherwise the server would keep creating new events indefinitely and midround-joining clients would instantly get kicked out because they're missing very old events.
...
+ fixed server not sending midroung sync messages if the list of new (non-unique) events is empty
2017-05-05 00:14:30 +03:00
Regalis
e0f7f429e5
New sonar overlay image
2017-05-04 20:57:06 +03:00
Regalis
464078e565
Clients can't send wire positions to the server
2017-05-03 21:28:09 +03:00
Regalis
00bbd1d607
Sonar tweaking
2017-05-03 21:09:05 +03:00
Regalis
043c2fbc5e
Moved TotalElapsedTime from GameMain to the Timing class
2017-05-03 19:15:43 +03:00
Regalis
ba49f59204
Some cleanup (mostly removing redundancies from the GameMain class)
2017-05-03 00:27:13 +03:00
Regalis
39ddd63e0c
Removed references to GameMain from GUIListBox & GUITextBlock (-> launcher works again)
2017-05-02 23:39:09 +03:00
Regalis
ab4e8cee83
The server ignores lastRecvIDs in SYNC_IDS messages if the IDs aren't valid (earlier than the client's previous ID, or more recent than the newest ID).
...
Should be safer than clamping to the valid range - an incorrectly read packet or a message sent just before switching from midround syncing to normal won't cause the IDs to jump to the newest ID and prevent clients from receiving further msgs/events.
2017-05-02 22:46:37 +03:00
Regalis
d1c633385b
Unique event IDs start from 1 (otherwise the server/clients will think event #0 has been already received)
2017-05-02 22:21:58 +03:00
Regalis
d0b52d92fe
Event ID wraparound fixes
2017-05-02 22:18:36 +03:00
Regalis
06db2fed86
Fixed clients incrementing their lastReceivedID every time they receive an empty entity event (even if the event has already been received)
2017-05-02 22:15:18 +03:00
Regalis
6c770afd6a
Clients aren't allowed to use the same name as the server, changed radio msg color back to yellow
2017-05-02 18:36:12 +03:00
Regalis
511f24cc47
Merge branch 'master' into new-netcode
...
Conflicts:
Subsurface/Source/GameMain.cs
Subsurface/Source/Networking/ChatMessage.cs
Subsurface/Source/Networking/NetworkMember.cs
Subsurface/Source/Screens/NetLobbyScreen.cs
2017-05-01 19:25:07 +03:00
Regalis
f92c2df9f7
TextBoxes align text to the right and hide any overflowing text at the left if the width of the box is exceeded
2017-04-30 18:14:25 +03:00
Regalis
eddc33dc89
Smoothly scrolling listboxes, items in the boxes can be partially visible
2017-04-30 17:57:01 +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
6397bc432e
UI tweaks
2017-04-27 21:08:20 +03:00
Regalis
90f354f6d7
Clients notify the server when they "give in" (i.e. kill their character when unconscious)
2017-04-26 23:39:41 +03:00
Regalis
58de86a98f
Heal and revive debug commands can also be used on other characters than the controlled one
2017-04-24 21:34:36 +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
5eb01d4c50
EnemyAIController tweaking:
...
- removed the "distance accumulator" which was used to make characters reset their attack target if they haven't moved enough within a specific interval. The intention was to make characters less likely to get stuck but it seems to cause more problems than it solves.
- more frequent target updates
- characters can target entities they're previously targeted from further away (even if the target isn't within range anymore)
2017-04-24 19:49:27 +03:00
Regalis
3e5f8a43a0
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-24 19:10:51 +03:00
Regalis
df7daa5925
Fixed incorrectly positioned character info boxes in the info menu
2017-04-24 19:08:25 +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
645df3fde6
Crew command menu and the info menu can't be open at the same time, UI layout tweaking again
2017-04-23 21:06:30 +03:00
Regalis
0709418ba3
Merge branch 'UI-overhaul'
...
Conflicts:
Subsurface/Source/Screens/EditMapScreen.cs
2017-04-20 21:27:40 +03:00
Regalis
2cac176c87
More UI tweaking
2017-04-20 21:24:52 +03:00
Regalis
a5d605e29b
Sub editor doesn't allow creating structures with zero width/height, fixed null exceptions when trying to remove a structure without wall sections
2017-04-20 18:02:20 +03:00
Regalis
499284dc91
UI layout tweaks
2017-04-20 17:39:32 +03:00
Regalis
92a74808fe
Fix to oxygen distribution logic: gaps used to move a fixed amount of oxygen between hulls every frame, causing the oxygen levels to fluctuate constantly. While it wasn't noticeable in regular sized hulls, smaller hulls created excessive amounts of NetworkEvents due to large fluctuations in the oxygen percentage.
...
Now the gaps make the oxygen percentages settle to the average value, and hulls have a minimum delay of 0.5s between the creation of NetworkEvents.
2017-04-18 21:37:23 +03:00
Regalis
acaa8697c8
Small menu fixes: open menus are closed when opening another one in the sub editor (e.g. if the save dialog box is opened when one of the entity menus are open), switching to the correct tab from the settings menu when going through the "apply changes" dialog
2017-04-18 20:08:56 +03:00
Regalis
f407a38c9e
Fixed clients being able to vote for kicking multiple times by disconnecting and reconnecting
2017-04-18 19:46:57 +03:00
Regalis
9a5777183f
Separate sprites for horizontal and vertical scrollbars, style tweaking
2017-04-18 19:24:13 +03:00