diff --git a/Subsurface/Properties/AssemblyInfo.cs b/Subsurface/Properties/AssemblyInfo.cs index e51b2608b..e35e1e321 100644 --- a/Subsurface/Properties/AssemblyInfo.cs +++ b/Subsurface/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.3.6.0")] -[assembly: AssemblyFileVersion("0.3.6.0")] +[assembly: AssemblyVersion("0.4.0.0")] +[assembly: AssemblyFileVersion("0.4.0.0")] diff --git a/Subsurface/Source/CoroutineManager.cs b/Subsurface/Source/CoroutineManager.cs index 7d9617d9b..6a4995610 100644 --- a/Subsurface/Source/CoroutineManager.cs +++ b/Subsurface/Source/CoroutineManager.cs @@ -86,18 +86,21 @@ namespace Barotrauma } } - //try - //{ + try + { Coroutines[i].Coroutine.MoveNext(); -// } + } -// catch (Exception e) -// { -//#if DEBUG -// DebugConsole.ThrowError("Coroutine " + Coroutines[i] + " threw an exception: " + e.Message); -//#endif -// Coroutines.RemoveAt(i); -// } + catch (Exception e) + { + DebugConsole.ThrowError("Coroutine " + Coroutines[i] + " threw an exception: " + e.Message); + +#if DEBUG + throw e; +#endif + + Coroutines.RemoveAt(i); + } } } diff --git a/Subsurface/Submarines/Aegir Mark II.sub b/Subsurface/Submarines/Aegir Mark II.sub index 8aa24f473..8389454f6 100644 Binary files a/Subsurface/Submarines/Aegir Mark II.sub and b/Subsurface/Submarines/Aegir Mark II.sub differ diff --git a/Subsurface/changelog.txt b/Subsurface/changelog.txt index 42c528f49..e25a6df22 100644 --- a/Subsurface/changelog.txt +++ b/Subsurface/changelog.txt @@ -1,3 +1,59 @@ +--------------------------------------------------------------------------------------------------------- +v0.4.0.0 +--------------------------------------------------------------------------------------------------------- + +DOCTORS: + - medical doctors (can fabricate various drugs/chemicals and give CPR to unconscious characters) + - changes to the dying logic: characters will be unconscious when their health or oxygen goes below 0, + and die when it drops to -100 + - medical syringes can be used on other characters + - any chemicals can be inserted in medical syringes + +Items: + - handheld sonars + - crates, small medical/chemical cabinets + - junction boxes, sonar monitors, navigation terminals and engines break if they're underwater long enough + - reactor cools down if it's underwater (multiple fuel rods are required to bring the temperature back up) + - forces are applied to items (not just characters) when the submarine hits something + - changes to the logic for distributing oxygen through vents: the oxygen generator pushes more oxygen + to larger rooms instead of dividing the oxygen output equally between vents + + - autopilot bugfixes + - the amount of oxygen/battery left is visible in the inventory slot of the ''parent item'' + - new inventory slot for masks, headsets, etc + + - fixed ''signal loops'' crashing the game + - OR gates work properly now + - AND/OR gates can be set to send out a signal when the input conditions aren't met + + - fabricating items may require some specific skill levels + + - a bunch of new sprites + +Multiplayer: + - fixed a bug that caused the server to resend a ton of messages to a client who's been temporarily + disconnected, causing syncing issues to every player + - fixed syncing issues related to items breaking (eg junction boxes being broken only for some players) + - fixed dead monsters occasionally ''teleporting'' inside the sub in multiplayer + - fixed missions not matching between Linux and Windows builds + - fixed traitor messages reappearing at the start of a new round after disabling traitors + - mid-round chat messages have a limited range + - players are equipped with a headset which can be used for remote communication (and making + voice-controlled devices/systems) + - speech bubble icon is displayed next to the character when speaking in multiplayer + +Misc: + - level generation improvements: small cave systems, more vegetation, more varied layouts + - option to spawn characters/monsters near, inside or outside the sub + - crouching + - cargo missions + - borderless windowed mode (aka fake fullscreen) + - option to enable some additional debug logging (by setting ''verboselogging'' to true in the config file) + - a menu that shows the mission description mid-round + - game settings can be changed mid-round + - submarine descriptions + - fixed characters getting stuck inside a wall when trying to get inside the sub through a hole + --------------------------------------------------------------------------------------------------------- v0.3.6.0 --------------------------------------------------------------------------------------------------------- diff --git a/Subsurface/readme.txt b/Subsurface/readme.txt index 9cded686b..1bc527eb0 100644 --- a/Subsurface/readme.txt +++ b/Subsurface/readme.txt @@ -10,6 +10,7 @@ E - use/activate items and devices Right click - aim with equipped item Left click - use equipped item C - open the crew command menu +Left control - crouch Tab - select/deselect the chat box in multiplayer mode F3 - open/close console