Commit Graph

1156 Commits

Author SHA1 Message Date
Regalis
e059a08688 Optimized lightsource raycasts 2017-03-03 00:02:43 +02:00
Regalis
f04a00f6e1 Merge branch 'lighting-optimization' 2017-03-02 19:39:55 +02:00
Regalis
335ee8c72e Warning message about unlinked vents is only shown once when saving (not for each vent) 2017-03-02 19:39:00 +02:00
Regalis
a5017193bf Items don't attempt to set the positions of contained items with SetTransform if SetTransformIgnoreContacts fails (because the former calls the latter anyway, causing another exception). Still haven't managed to reproduce the exception 2017-03-02 19:38:31 +02:00
juanjp600
01a543e8b4 Fixed slight mistake in homoglyph list 2017-03-02 13:54:40 -03:00
juanjp600
ac3015f983 Slight homoglyph search optimization
Instead of calling Find twice, it calls it once for the first character and checks if the returned group contains the other character
2017-03-02 12:32:14 -03:00
juanjp600
ba026a8f88 Added list of homoglyphs for name comparison
Unicode is now allowed in player names, but it can't be easily exploited anymore
2017-03-02 12:09:08 -03:00
Regalis
65625777e5 Monster syncing fixes:
- clients freeze and disable AI characters if no updates have been received in a while (due to the monster being far away from player-controlled characters at the servers side for example)
- server disables AI characters that are too far for updates to be sent to clients (-> targets of monster missions can't swim away from the spawnpos and cause the clients' sonars to point to an incorrect position)
2017-03-01 23:14:15 +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
f2db3c6b20 Merge remote-tracking branch 'barotrauma/master' into lighting-optimization 2017-03-01 15:02:23 -03:00
Regalis
871c3bc93c Character colliders are disabled when the character is disabled (-> monsters won't automatically drop into abyss in monster missions) 2017-03-01 19:15:50 +02:00
juanjp600
3868b70387 Fixed windowed door shadows 2017-03-01 13:41:37 -03:00
juanjp600
84a8232c1a Fixed override sprite scaling
Now it looks right.
2017-02-28 19:38:25 -03:00
juanjp600
4568f34f39 Rotating lights and overridden textures
The flashlight has the correct texture now, but something still seems off about the UV coordinates. Scaling is probably incorrect.
2017-02-28 19:19:02 -03:00
Regalis
9e16542b13 Replaced the arrows in server lobby buttons with images, made GUIImages rotatable (todo: make them align correctly when rotated/scaled), fixed the size of the sub save warning messagebox 2017-02-27 22:28:10 +02:00
Regalis
979c82443c Derp: fixed submarine files not being included in saves if the player saves and quits from the single player lobby 2017-02-27 21:33:42 +02:00
Regalis
27a883349c Server keeps a reference to the StartGame coroutine and checks if it has stopped running before the round has started, and if so, resets autorestart timer and start button (i.e. an exception at any point during startup will trigger the reset) 2017-02-27 21:30:39 +02:00
Regalis
f8304ceb7e Workaround for exceptions in SetTransformIgnoreContacts
http://undertowgames.com/forum/viewtopic.php?f=21&t=5915#p112558
2017-02-27 20:55:23 +02:00
Regalis
b635a61bb4 Editor UI fixes: UI of the selected item is added to GUIUpdateList in wiring/character mode, save/load/item menus can't be clicked when hidden by wiring/character mode 2017-02-27 20:09:15 +02:00
Regalis
c3b8f2a1db Fixed OpenAL errors when removing looping sounds
The sounds didn't save their source id in the Sound.Loop method, so they couldn't stop the playback upon removal which caused errors when unbinding and deleting the (still playing) sound buffer
2017-02-27 19:02:33 +02:00
Regalis
22d40077fa Fixed exception in LightSource if ConvexHullList for hulls outside the sub hasn't been generated (i.e. if switching to game mode using console commands), removed some debug code 2017-02-27 18:53:34 +02:00
Regalis
68a0320935 LightSources cache the light vertices in vertex buffers and only recalculate if needed 2017-02-27 00:41:50 +02:00
Regalis
f3f875e641 Calculating light volumes works now. Very poorly optimized at the moment, todo: cache volumes and only recalculate when needed 2017-02-26 21:33:32 +02:00
Regalis
abfe2261d2 - ConvexHulls consist of Segments and SegmentPoints which keep references to each other
- LightSources fetch a list of non-backfacing ConvexHull segments within their range, and sort the points counter-clockwise (TODO: calculate triangles from the points)
- fixed incorrectly working CircleIntersectsRectangle method
2017-02-26 01:17:22 +02:00
Regalis
bcabe4ab39 Disabled convexhull shadow caching 2017-02-25 21:50:24 +02:00
Regalis
844097b132 Initial steps in making the light rendering use light volumes instead of shadow volumes to allow rendering the lights in one batch.
So far just disabled shadow rendering and cleaned up some unnecessary stuff
2017-02-25 21:24:38 +02:00
Regalis
c9f09031de Re-enabled anchoring main limb to the collider when a remote player is unconscious (otherwise only the position of the collider will be synced, and the ragdoll won't follow it)
+ stunned characters can't send position updates
2017-02-25 18:06:43 +02: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
bf3fa804df Fixed ragdolls accumulating a large movement value while being dragged (backported from commit a21d8d7) 2017-02-25 16:40:52 +02:00
Regalis
12466e304e Fixed server failing to start a round if there's a selected cargo spawnpoint is not inside a hull 2017-02-25 15:03:10 +02:00
Regalis
2a60f9d052 Fixed "OpenAL not found" exceptions if no audio devices are found 2017-02-25 14:28:12 +02: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
7aafdadae5 (Maybe?) fixed "collection was modified" exceptions in GUIComponent.AddToGUIUpdateList
http://undertowgames.com/forum/viewtopic.php?f=21&t=5915
Couldn't reproduce the exception and not sure why exactly it happens, but I think this should prevent it
2017-02-24 19:16:42 +02:00
Regalis
b8c3b9c29f - sub editor shows a warning upon saving if there are entities way outside the sub
- warnings are shown in a GUIMessageBox instead of the debug console
- added a submarine indicator to the editor
2017-02-24 00:01:46 +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