Skip to content

Commit

Permalink
v0.3:
Browse files Browse the repository at this point in the history
- Launcher checks whether a patch is newer than the current version instead of going through the patches until the current version is found
- CharacterHUD is drawn under crew commander and other UI elements
- All structures other than the command room windows are restored to full health in tutorial
- Longer cooldown for moloch attacks
- AIObjectiveCombat always overrides current order
  • Loading branch information
Regalis committed Jan 23, 2016
1 parent c787840 commit 7098a9a
Show file tree
Hide file tree
Showing 17 changed files with 106 additions and 28 deletions.
13 changes: 11 additions & 2 deletions Launcher2/LauncherMain.cs
Original file line number Diff line number Diff line change
Expand Up @@ -398,11 +398,17 @@ private bool CheckUpdateXML(XDocument doc)
return false;
}

string latestVersion = ToolBox.GetAttributeString(doc.Root, "latestversion", "");
Version currentVersion = new Version(version);


string latestVersionStr = ToolBox.GetAttributeString(doc.Root, "latestversion", "");
latestVersionFolder = ToolBox.GetAttributeString(doc.Root, "latestversionfolder", "");
latestVersionFileList = ToolBox.GetAttributeString(doc.Root, "latestversionfilelist", "");

if (latestVersion == version)

Version latestVersion = new Version(latestVersionStr);

if (currentVersion.CompareTo(latestVersion) >= 0)
{
updateInfoText.Text = "Game is up to date!";
return false;
Expand All @@ -427,6 +433,9 @@ private bool CheckUpdateXML(XDocument doc)
//read the patch notes until we reach the user's version
if (patchNumber == version) break;

Version patchVersion = new Version(patchNumber);
if (currentVersion.CompareTo(patchVersion) >= 0) break;

string innerText = ToolBox.ElementInnerText(patchNote);

innerText = innerText.Replace("\r\n", "\n");
Expand Down
2 changes: 1 addition & 1 deletion Subsurface/Barotrauma.csproj
Original file line number Diff line number Diff line change
Expand Up @@ -843,7 +843,7 @@
<Content Include="Content\Orders.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Data\ContentPackages\Vanilla 0.2.xml">
<Content Include="Data\ContentPackages\Vanilla 0.3.xml">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="Icon.ico" />
Expand Down
6 changes: 4 additions & 2 deletions Subsurface/Content/Characters/Moloch/moloch.xml
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,6 @@
<sprite texture="Content/Characters/Moloch/moloch.png" sourcerect="0,0,628,1024" depth="0.02" origin ="0.4,0.5"/>
<attack type="Hit" range="700" duration="0.2" force="400" damagetype="blunt"/>
</limb>


<limb id = "1" width="50" height="440" flip="true">
<sprite texture="Content/Characters/Moloch/moloch.png" sourcerect="865,7,117,448" depth="0.025" origin="0.5,0.5"/>
Expand Down Expand Up @@ -59,5 +58,8 @@

</ragdoll>

<ai attackhumans="100.0" attackrooms="50.0" attackweaker="50" attackstronger="-30" sight="0.5" hearing="1.0"/>
<ai attackhumans="100.0" attackrooms="50.0"
attackweaker="50.0" attackstronger="-30.0"
attackcooldown="15.0"
sight="0.5" hearing="1.0"/>
</Character>
Binary file added Subsurface/Content/Items/Tools/tools.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified Subsurface/Content/Items/idcard.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<contentpackage name="Vanilla 0.2" path="Data/ContentPackages/Vanilla 0.2">
<contentpackage name="Vanilla 0.3" path="Data/ContentPackages/Vanilla 0.3">
<Item file="Content\Items\idcard.xml" />
<Item file="Content\Items\itemlabel.xml" />
<Item file="Content\Items\Artifacts\artifacts.xml" />
Expand All @@ -26,12 +26,13 @@
<Item file="Content\Items\Weapons\railgun.xml" />
<Item file="Content\Items\Weapons\weapons.xml" />
<Character file="Content\Characters\Crawler\crawler.xml" />
<Character file="Content\Characters\EndWorm\endworm.xml" />
<Character file="Content\Characters\Endworm\endworm.xml" />
<Character file="Content\Characters\Human\human.xml" />
<Character file="Content\Characters\Mantis\mantis.xml" />
<Character file="Content\Characters\Moloch\moloch.xml" />
<Character file="Content\Characters\Scorpion\scorpion.xml" />
<Character file="Content\Characters\TigerThresher\tigerthresher.xml" />
<Character file="Content\Characters\TigerThresher\tigerthresher.xml" />
<Character file="Content\Characters\Watcher\watcher.xml" />
<Structure file="Content\Map\StructurePrefabs.xml" />
<Jobs file="Content\Jobs.xml" />
<Executable file="Barotrauma.exe" />
Expand Down
4 changes: 2 additions & 2 deletions Subsurface/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,5 +31,5 @@
// 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.2.6.2")]
[assembly: AssemblyFileVersion("0.2.6.2")]
[assembly: AssemblyVersion("0.3.0.0")]
[assembly: AssemblyFileVersion("0.3.0.0")]
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ public override float GetPriority(Character character)
if (enemyAI.SelectedAiTarget == character.AiTarget) enemyDanger *= 2.0f;
}

return Math.Max(enemyDanger, 30.0f);
return Math.Max(enemyDanger, AIObjectiveManager.OrderPriority);
}

public override bool IsDuplicate(AIObjective otherObjective)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ namespace Barotrauma
{
class AIObjectiveManager
{
const float OrderPriority = 50.0f;
public const float OrderPriority = 50.0f;

private List<AIObjective> objectives;

Expand Down
1 change: 0 additions & 1 deletion Subsurface/Source/GUI/GUI.cs
Original file line number Diff line number Diff line change
Expand Up @@ -350,7 +350,6 @@ public static void Draw(float deltaTime, SpriteBatch spriteBatch, Camera cam)
}
}

if (Character.Controlled != null && cam!=null) Character.Controlled.DrawHUD(spriteBatch, cam);
if (GameMain.NetworkMember != null) GameMain.NetworkMember.Draw(spriteBatch);

DrawMessages(spriteBatch, (float)deltaTime);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -306,13 +306,17 @@ public override IEnumerable<object> UpdateState()
yield return new WaitForSeconds(0.1f);
} while (!broken);

yield return new WaitForSeconds(0.1f);


//fix everything except the command windows
foreach (Structure w in Structure.WallList)
{
if (windows.Contains(w)) continue;

for (int i = 0; i < w.SectionCount; i++)
{
if (!w.SectionHasHole(i)) continue;
if (windows.Contains(w)) continue;
if (!w.SectionIsLeaking(i)) continue;

w.AddDamage(i, -100000.0f);
}
Expand Down Expand Up @@ -465,7 +469,7 @@ public override IEnumerable<object> UpdateState()
} while (broken);

infoBox = CreateInfoFrame("Great! However, there's still quite a bit of water inside the sub. It should be pumped out "
+ "using the pump in the room at the bottom of the submarine.");
+ "using the bilge pump in the room at the bottom of the submarine.");

Pump pump = Item.ItemList.Find(i => i.HasTag("tutorialpump")).GetComponent<Pump>();

Expand Down
1 change: 1 addition & 0 deletions Subsurface/Source/GameSession/GameSession.cs
Original file line number Diff line number Diff line change
Expand Up @@ -196,6 +196,7 @@ public void Update(float deltaTime)
public void Draw(SpriteBatch spriteBatch)
{
//guiRoot.Draw(spriteBatch);


if (gameMode != null) gameMode.Draw(spriteBatch);
}
Expand Down
12 changes: 6 additions & 6 deletions Subsurface/Source/Items/Components/Machines/Reactor.cs
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
ShutDownTemp -= 100.0f;
return true;
return false;
};

button = new GUIButton(new Rectangle(460, 70, 40,40), "+", GUI.Style, GuiFrame);
Expand All @@ -176,7 +176,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
ShutDownTemp += 100.0f;
return true;
return false;
};

autoTempTickBox = new GUITickBox(new Rectangle(410, 170, 20, 20), "Automatic temperature control", Alignment.TopLeft, GuiFrame);
Expand All @@ -188,7 +188,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
FissionRate += 1.0f;
return true;
return false;
};

button = new GUIButton(new Rectangle(210, 340, 40, 40), "-", GUI.Style, GuiFrame);
Expand All @@ -197,7 +197,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
FissionRate -= 1.0f;
return true;
return false;
};

button = new GUIButton(new Rectangle(500, 290, 40, 40), "+", GUI.Style, GuiFrame);
Expand All @@ -206,7 +206,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
CoolingRate += 1.0f;
return true;
return false;
};

button = new GUIButton(new Rectangle(500, 340, 40, 40), "-", GUI.Style, GuiFrame);
Expand All @@ -215,7 +215,7 @@ public Reactor(Item item, XElement element)
unsentChanges = true;
CoolingRate -= 1.0f;
return true;
return false;
};
}

Expand Down
2 changes: 2 additions & 0 deletions Subsurface/Source/Screens/GameScreen.cs
Original file line number Diff line number Diff line change
Expand Up @@ -197,6 +197,8 @@ public override void Draw(double deltaTime, GraphicsDevice graphics, SpriteBatch
}
}

if (Character.Controlled != null && cam != null) Character.Controlled.DrawHUD(spriteBatch, cam);

if (GameMain.GameSession != null) GameMain.GameSession.Draw(spriteBatch);

GUI.Draw((float)deltaTime, spriteBatch, cam);
Expand Down
59 changes: 59 additions & 0 deletions Subsurface/changelog.txt
Original file line number Diff line number Diff line change
@@ -1,3 +1,62 @@

---------------------------------------------------------------------------------------------------------
v0.3
---------------------------------------------------------------------------------------------------------

Multiplayer:
- a summary screen which shows some details about the previous round
- no separate traitor mode: they can be enabled for any game mode
- an option to randomize whether there is a traitor or not
- larger chatbox
- a ton of syncing bugfixes and optimization

Items:
- fabricators, which can be used for crafting items out of raw materials or other items
- deconstructors, which break items down to their basic components/materials
- a bunch of new sprites
- there are some artifacts scattered around every level regardless of the quest, and they can be collected
and used as a source of useful raw materials for the fabricator
- added hatches (which are basically doors rotated by 90 degrees)
- characters can't get stuck inside doors anymore
- stairs are easier to climb (less tripping down!)
- navigation terminals have a ''default ballast level'' setting which determines how much water there
should be in the ballast tanks when not steering in any direction
- ladders can be climbed with a diving suit on, just very slowly
- ladder climbing animation now works properly even when holding an item
- items have a short description which can be read by hovering the mouse over the inventory slots
- if the reactor is connected to multiple junction boxes, automatic temperature control will adjust
the power output to the highest load instead of the sum of the loads
- reactor state is saved (it will stay running when between levels)
- using a stun baton while running won't make the character trip anymore

Submarines:
- a new sub, Nehalennia
- the collider of the submarine now matches the shape of the hull
- the airlock pumps in each sub are set to pump water out instead of just turning the pump on when pressing
the button outside the airlock

Submarine editor:
- items/structures are sorted by category in alphabetical order
- tickboxes for hiding hulls, gaps, waypoints and links between items
- a list of the most recently used items/structures
- placed wires are much easier to move around
- more accurate staircase selecting (the ''bounding box'' of the staircase won't prevent selecting items that
are behind it anymore)
- visible indicators for railgun rotation limits

Crew:
- the crew members not controlled by the player now have an AI: they can take orders, do some basic tasks
and avoid various hazards
- fixed equipped items disappearing when loading the game
- bodies can be dragged up stairs

Misc:
- two new monsters
- improved UI graphics
- better looking cavern walls
- major optimization to light/shadow rendering
- some new quests (which are now called ''missions'')

---------------------------------------------------------------------------------------------------------
v0.2.6.2
---------------------------------------------------------------------------------------------------------
Expand Down
13 changes: 7 additions & 6 deletions Subsurface/readme.txt
Original file line number Diff line number Diff line change
@@ -1,19 +1,20 @@
BAROTRAUMA

www.undertowgames.com/subsurface
Copyright © Undertow Games 2015
Copyright © Undertow Games 2016

Controls:
Default controls:
WASD - move
Shift - run
E - use/activate items and devices
E - use/activate items and devices
Right click - aim with equipped item
Left click - use equipped item
Tab - select/deselect the chat box in multiplayer mode
F3 - open/close console
C - open the crew command menu
Tab - select/deselect the chat box in multiplayer mode
F3 - open/close console

See the wiki for more detailed info and instructions:
http://subsurface.gamepedia.com
http://barotrauma.gamepedia.com

------------------------------------------------------------------------

Expand Down
Binary file modified Subsurface_Solution.v12.suo
Binary file not shown.

0 comments on commit 7098a9a

Please sign in to comment.