Build Update

Build Update #032: V1032 Released + SALE!

Build ID: 8098273 (Client) / 8098322 (Dedicated Server)
Download size: 4.1 GB (Client) / 433 MB (Dedicated Server)
IMPORTANT: CLEAR YOUR OLD FILES

If you are coming from V1031 or have not updated CTE in a while, you need to delete all contents in the following locations (copy-paste the path into your File Explorer address bar and hit Enter):

   1️⃣ %LOCALAPPDATA%\GroundBranch\Saved\Config\WindowsNoEditor
   2️⃣ Documents\GroundBranch

⚠️ Not doing so will cause various asset and input issues in your game.

If you are coming from a recent CTE version, clear them anyway to be sure.

Roughly a month and a half ago, the first testing build for GROUND BRANCH V1032 went live on our Community Test Environment (CTE) app.

And after and a very busy holiday season, no less than 13 public test builds and well over 1,000 bug reports, V1032 is now finally available on the main branch as a stable release!

If you are among the few who decided to wait for it, we hope this version of the game leaves as good an impression as it has for many of our community testers. And if you’re among those who have been waiting for a price drop, we got good news for ya:

🔥 Lunar New Year Sale: GROUND BRANCH is 30% OFF!

As part of the Steam Lunar New Year Sale, GROUND BRANCH is 30% OFF on for an entire week — until February 3rd.

❤️ CONSIDER BUYING DIRECTLY FROM OUR STORE

Buying the game from our Store ensures that we get the full cut of the purchase, as opposed to Valve taking 30%.

💰 Use code  GB1032  at the checkout to apply the 30% discount.

Please note the GB Store can only charge US dollars (via PayPal) and has no regional pricing!

You know the drill: go tell that friend of yours who’s on the fence, spread posters around the neighborhood, maybe grab an extra key or three to gift your buddies. Just don’t let it go to waste.

Alright! Moving on!

Build highlights

A fully comprehensive list of changes would be unrealistic for such a complex update, so we’re going to keep things more summarized with these release notes while still covering as much as we can afford. Let’s get to it.

New Ready Room and Ops Board

Upon first loading up a mission (or into server), you will likely notice that the Ready Room has been slightly renovated and now sports a more somber and concrete-y look.

Walk into the Ops Room, and you’ll se a slight rearrangement: the Ops Board screen is now much larger, and its contents a little easier on the eyes:

The Ops Board as seen during a round of the updated Intel Retrieval game mode. Note the “Intel Search Areas” field which indicates possible intel device locations (represented by the red circles on the map)

Functionally, not much has changed: you still set the game mode options and time of day, and then pick your preferred insertion point. It’s all just laid out better, and the satellite/drone map images should be a lot easier to visualize.

New character assets and customization

Every single character asset in GROUND BRANCH has been updated from V1031. That’s right: every asset (save for the Holster, which was updated in V1031) from the character heads all the way to the dump pouch has received a new model and textures in this update.

It’s not just you: Male 02 (second from left) is an absolute dreamboat

On top of that, several entirely new items were added, such as the Shemagh (which can be worn as a scarf or head cover), the Ghillie Hood/Trousers, the Work Boots, the Flannel Shirt and the list goes on.

Keep in mind that not all of the old assets were recreated: some were replaced by a different item, while others were scrapped for various reasons (usually just not being in line with a certain generation of gear).

💡 Although we probably will not be adding new gear models for a while, we will be adding more skins as we go, and anything that we don't end up adding ourselves — whether models or skins, pre- or post-release — will most likely be modded in by the community.

For information on what is definitely planned, check out our roadmap.

Unfortunately, the new facial hair will have to wait. Due to the assets being made specifically for each individual head, they require additional logic that our programmers could not get to just yet. Beards are expected to be back in V1033 at the latest, possibly alongside some basic hairstyle choices.

Clipping is both known and expected with the large amount of possible asset combinations with several layers of animation on top. Eradicating clipping in a game like GB is virtually impossible even for AAA studios, but we hope to be able to improve particularly bad and noticeable cases as we go.
❗ Certain pouches now use an open design, meaning that the magazine is exposed. Although the magazine may not currently match what you are carrying, making it so is on our list. As an example, the SMG/PDW pouch will always show an MP5 magazine — for the time being.
🎨 More skins are on the way, as are tweaks for the current ones. Spotted a bad camo? Let us know.

New weapon assets

As teased in the last couple Intel Updates, we also have entirely new models for the following items:

  • MK14 EBR: Based on the Mod 1 variant, this battle rifle by Cody Cudmore is replacing the more precision fire-oriented MK14 Mod 2. Has its own suppressor too.
  • MK46 (Mod 1): A 5.56 NATO light machine gun replacing the old MK48 Mod 0. Suppressor still pending!
  • Updated M4-series and HK416-series models (all assets by Bakr Assad aka Raider3D):
    • M4A1 SOPMOD: The classic M4A1 with a KAC quad-rail handguard.
    • M4A1 Block II: The SOPMOD Block II variant with a full-length quad-rail handguard.
    • M4A1 Block II (FSP): Same as Block II, but with a cut-out for the original “A2-style” front sight post (FSP).
    • MK18: Still based on the Mod 1 variant, but now fitted with a Magpul CTR stock for some variation.
    • HK416D: One of the most widely used variants of the HK416, with a 14.5-inch barrel and “Crane” stock.
    • HK416D CQB: A short-barrel variant of the HK416D, also known as the D10RS.
    • All M4 and HK416 variants can now also be fitted with a 20-round STANAG magazine.

We have also finally added a G3 battle rifle, specifically the G3A3 variant. It’s one of those weapons mainly meant as an OPFOR gun, and as such doesn’t allow much customization just yet — but you can add a top rail adapter for optics (the adapter uses a placeholder model).

Top to bottom: MK14 EBR, MK46 and G3A3

💡 None of the weapons have different skins to choose from anymore, but that is only a temporary bummer — new paint jobs are under development.
New weapon attachment assets

The following weapon attachments have all received new models:

  • HWS 553
  • HWS EXPS3 (comes in both black and FDE)
  • T-2 Micro
  • Specter DR 1x/4x (currently FDE only)
  • G33 Magnifier (3x) (black and FDE)

And these new models are replacing older items:

  • The MBUS and Micro folding iron sight pairings replaced the previous iron sights.
  • The MK4 (3.5–10x) variable-power scope replaced the M-233 (12x). It features a Picatinny rail mount for red dots.
❓ WHERE DID THE [INSERT OBSCURE ITEM THAT WAS YOUR WHOLE REASON TO BUY THE GAME] GO?
Models may need to be replaced or dropped for a variety of reasons during development. The Galil SAR, for example, was removed due to being an old and low-detail model which made it impossible to animate properly. Although not all removed assets will necessarily make a comeback, there is always a chance that they will be either reintroduced later or modded in.

Gameplay and mechanics

In V1032, we are introducing several gameplay features and mechanics to help players navigate, coordinate and fight better.

Mag Check

You can now hold the Reload key (default R) to estimate the amount of rounds you have left in your magazine or belt. The HUD icon indicates the status as being one of the following:

  • Fairly full
  • About half-full/empty
  • Nearly empty
  • Empty

Icons, timings and animations for the mag check are all subject to change, so let us know how it looks and feels to you.

💡 We also plan to allow the magazine to stay out (with the icon in view) for as long as the Reload key is held down, as well as automatically displaying the status icon when a used magazine is being loaded in.
Tablet (Map Device)

You can now easily figure out where you are in relation to objectives and teammates by tapping M or selecting the Tablet item from the Equipment menu (4).

The Tablet during a round of Intel Retrieval. Note the markers for players (diamonds), objectives (red circles) and extraction point (arrow going up). Players can now also organize into Team Elements (more info on those in the next section)

The Tablet is automatically equipped on all players and displays the following information:

  • Your location and bearing
  • Your teammates’ location (with indicators as to whether they’re above or below you)
  • Team roster and elements (more on that in the next section)
  • Objective areas and extraction points (Intel Retrieval)
  • In-game time
  • Time remaining for the current mission or round

If used well, the Tablet can drastically reduce friendly fire, as well as improve overall situation awareness.

💡 To put the Tablet away, tap M again or simply select a different item. You may find yourself using the Tablet most often during Intel Retrieval missions.
💡 If your teammates are killed, their markers will disappear from the Tablet, but their names will remain listed.
Team Elements

As shown in the Tablet screenshot in the previous section, players can now also assign themselves — or be assigned by a server admin — to one of four Team Elements: Alpha (A), Bravo (B), Charlie (C) and Delta (D). Team Elements are akin to fireteams or squads.

Team Elements are displayed next to player names (in the Ready Room and when spectating), as well as on the Session Roster screen and the Tablet. At the moment, they are merely an aid for teamwork and coordination, especially by organizing and color-coding player markers on the Tablet.

Upon joining a session, players are automatically assigned to Alpha. To change to a different Team Element, press Esc and access the Session Roster tab in the top menu bar. Then, simply click the letter icon next to your name, and choose a new Team Element from the list.

💡 REASSIGN AND REGROUP AT WILL, BABY
Your Team Element can be changed at any time — even during a mission/round.
💡 In due course, there will be features such as Team Element-specific radio channels.
Movement

Movement speeds for walking and sprinting were slowed down slightly but noticeably. As with most such adjustments, these new speeds are not necessarily final, but they seem to feel better to most players so far.

Recoil

As part of the animations update (more on that in a bit), recoil should now feel more pronounced both due to actual recoil animations, as well an added layer of camera shake — all subject to change, as usual.

Weapon collision (short-stocking)

Weapon collision has been reworked to use short-stocking, a technique in which the shooter progressively moves the stock over their shoulder in order to continue pointing the weapon forward if there isn’t enough room in front of them to keep the weapon fully extended.

This change allows players to remain combat-effective to a much larger degree than in V1031 (where the weapon would be pointed up as soon as weapon collision was detected).

New pistol Close Ready position

The Close Ready pose for pistols has been updated to be a lot less compressed (close to the chest), ensuring that you actually know where it is if it’s ready to shoot. It feels a lot nicer too.

ADS Sensitivity

You can now set your preferred aiming (ADS) sensitivity per magnification (“zoom”) level under SettingsControls:

NOTE
The number value is for how much the sensitivity should be scaled for a given magnification level. For example, a value of 1.0 would make a magnification level use the same sensitivity as the Normal Sensitivity. A value of 0.5 would make it half as sensitive, while 2.0 would make it twice as sensitive and so on.
Beefed up smoke grenades

Smoke grenades have been beefed up a bit to give more effective concealment. Performance may suffer if you spam a whole lot of these, but it’s a stop-gap solution until we have these effects remade and optimized.

New Wristwatch modes

Your Wristwatch has a few new functionalities related to different game modes.

  • In all game modes, a “time remaining” warning will be briefly shown on the watch at 5, 2 and 1 minute(s) remaining.
  • In Intel Retrieval, you can now turn on the “Proximity Alert” mission setting (on the Ops Board) to get a vibrating alert when within 5 meters of the intel device.
  • In the new Dynamic Take and Secure (DTAS — more on that in the Game modes section), your watch will display DTAS-specific information:
    • Approximate distance to the flag once placed (in meters). Also present in Fox Hunt mode, indicating distance to the Asset.
    • Direction of the flag once placed (yellow arrow).
    • When in range of the flag as a defender, a green alert will pulse.
    • When in range of the flag as an attacker, a yellow alert will pulse.
    • When the flag is being captured, a red alert will pulse (defenders get no warning of flag captures).

Animations

Animations have of course received the first stage of a major overhaul.

It is a massive improvement over V1031, but keep in mind that a lot of it is a work in progress and still fairly janky in a few areas. Here’s the rundown:

  • Reprocessed all existing character locomotion animations for new skeleton. (Locomotion will be entirely redone over the next few updates with mocap.)
  • All weapons have completely remade animations for shooting and weapon manipulation (reloads, fire selector, mag checks etc.).
  • First pass on custom foregrip hand poses:
    • The character’s support hand will grip the weapon depending on which type of foregrip is equipped (if any):
      • Angled foregrip: “Thumb over bore” grip (“C-clamp”)
      • Stubby/short foregrip: “Thumb break” grip
      • Full-length vertical foregrip: “Beer can” grip
      • No foregrip: Hand pose varies depending on the weapon.
    • Some foregrips will cause the left elbow to stick up — this is a known issue.
  • Added camera recoil animations.
  • Added basic idle character animations (only visible on other players).
  • Reworked weapon positions and transitions.
  • Body part-specific death animations, including extended death animations that have a 11% (1 in 9) chance of happening.
  • First pass on basic ladder climbing.
  • Vaulting now has an associated animation (which is pretty bugged, per the Known issues section).
💡 WIP ANIMATIONS
V1032 is largely the groundwork for the animations overhaul — the first part of an ongoing process with many iterations to come.

Maps and level design

V1032 features two new maps, a map overhaul and various smaller map-related changes.

❗ Please keep in mind that map visuals, performance, audio and design are all an ongoing development.
[NEW MAP] Compound

One of the most highly anticipated additions in GROUND BRANCH history, Compound is set in an undisclosed Pakistani village with flat terrain featuring crop fields, a main road and several man-made structures from small sheds to multi-storey houses — one of which appears suspiciously fortified.

Compound can be played in any of the existing game modes.

🔈 Soundscapes (ambient audio) for Compound are not yet finished.
[NEW MAP] Rig

Rig — reliable sources claim it’s short for oil rig — is likely the largest map in the game now. Comprised of multiple decks, each with sublevels, it’s a gargantuan tactical nightmare.

Rig can also be played in any of the existing game modes.

🔈 Rig currently uses downgraded soundscapes and sound occlusion due to audio stutter issues we have not been able to fix yet.
Storage Facility overhaul

Storage Facility has received an overhaul to include a new industrial area at the top of the hill and a new route down into the tunnels, which have been spruced up and expanded in various ways. The dock area has also been extended.

💡 The new Storage Facility is also currently undergoing a visual update, as will all older maps eventually.
Other significant map changes
  • Power Station has a new entrance west of the Substation insertion point leading into the tunnels.
  • City‘s central area was changed to add a new route to the previously “unconquerable” stairwell.
  • Run Down has a new stairwell access to the roof.
  • New and improved props have been put into various maps, most notably Tanker.
  • Terrain materials have had a “de-tiling” pass.
  • New water has been added to multiple maps.

Game mode updates

Intel Retrieval [PvE]

Intel Retrieval has received a major overhaul. Here’s what changed:

  • Instead of searching multiple laptops for the intel, there is now a target laptop to search and extract.
  • Approximate search areas are described and indicated as red circles on the Ops Board and Tablet.
  • By default, there will be one true location and one false location, but the number of possible locations can be changed under Mission Parameters.
  • The true laptop location and the extraction point will usually have additional AI guarding and/or patrolling them.
  • Please note that the visual search location circle is approximate, and you should treat the location text as definitive (for example: on Tanker, one search location is “Whole of Deck 3”, so search the entire deck rather than just the circle mark).
Terrorist Hunt [PvE]

Terrorist Hunt has not fundamentally changed, but it benefits from the new AI placement system to ensure less predictable placement and more replayability.

Dynamic Take and Secure (DTAS) [PvP]

DTAS is an entirely new PvP game mode (actually a recreation of a game mode in the early 2000s UT mod Infiltration) where both teams spawn in a random spot on the map.

The Defenders then have a short amount of time to place a flag, which marks the centre of a capturable zone. The Attackers must capture the zone, by getting a minimum of 2 attackers in range. The defenders can block an attack by getting a minimum of 2 defenders in range.

The Attackers can win by wiping out all defenders; the Defenders can win by killing all but one of the attackers.

Our own Matt “Fatmarrow” Farrow — who programmed this game mode — created a short video explaining how it all works:

As with most game modes, admins can tweak several parameters to their liking.

Fox Hunt [PvP]

Fox Hunt is a further new game mode hidden within DTAS.

When there are insufficient numbers of players on the server to start a DTAS round (by default: 6), the Fox Hunt mode will be engaged.

  • In this mode, one Defender is designated The Asset, and all players will receive an approximate distance (but not bearing) to their position.
  • Attackers win by eliminating The Asset.
  • Defenders win by keeping The Asset safe until time runs out.

A reduced time limit is automatically applied when Fox Hunt mode is engaged.

Team Elimination [PvP]

This mode remains unchanged, but has been extended with the possibility of player and/or team reinforcements (respawns). This is still an experimental addition. When you die, the game will try to respawn you near a teammate, but will fall back to the additional spawn if necessary (this is to try and mitigate spawn camping in the reinforcements mode).

Uplink [PvP]

The core gameplay remains the same, but a visible search area is automatically computed (based on the laptop locations) and displayed on the Ops Board.

Deathmatch [PvP]

This very non-tacticool but classic game mode now allows you to specify a target frag limit or time limit, to allow a winner to be decided.

You can also specify a minimum number of players: if there are fewer human players than this limit, additional AI enemies will be spawned to make up the numbers.

Training

The Camp Peary Training Facility (aka The Farm) has received a few small updates:

  • Targets for the regular shoothouse were rearranged, and many more possible target locations were added.
  • The Ops Board, light switch and Target App screen were moved around a bit for better usability.
  • The Ops Boards received some basic instructions on how to use The Farm’s facilities.

User interface (UI)

In addition to the Ops Board overhaul, other UI updates can be seen elsewhere. Perhaps most noticeably in the Customize Operator screen, which has received entirely new icons.

The item selection menu has also received a much-needed upgrade and now displays items on a grid, with items being directly customizable (no more selecting and then clicking the cog to edit) and custom item names being set in orange so you don’t have to search as much for your builds.

Here are some of the other main changes to look out for in the UI:

  • A lot of the text has been increased in size, which should make things a lot easier to read in 1080p and below.
  • You can once again tailor the AI difficulty straight from the game — no more INI file editing. To set your own values for the “Custom” AI difficulty, simply click the Advanced AI Setting button at the bottom-left of the Lone Wolf and Host Game screens and start editing.
  • Mission Settings now have an advanced settings category, which is hidden by default on the Lone Wolf and Host Game screens.
  • A brief description of the game mode type is now also given on those screens, and the map description is now displayed on each map tile.
  • If you try to select an OPFOR count over 30 (the recommended maximum), you will get a warning message and the OPFOR count itself will be displayed in red as a performance warning.
  • The After Action Report (AAR) has been overhauled and expanded. In addition to individual results, different tabs may now display team results, rounds won/attempted and more, depending on the game mode. (For the full set of AAR tabs, try new game mode DTAS.)

AI

Basic AI behavior remains the same, but some (mostly cosmetic) changes have been made:

  • Callouts are now less frequent.
  • The placement of AI on maps has been overhauled to make it more random, yet still plausible. In Intel Retrieval, AI is now spawned conditionally in some places, so that laptops and extraction zones are more heavily guarded than other areas of the map — which can give you a clue as to the laptop location if you observe carefully.
  • AI loadouts have been updated slightly to account for inventory/asset updates.
💡 A more significant AI update is planned for the next major release, V1033.

Audio

The sound department (aka Mikson) has seen a lot of work, from all-new reload SFX to dynamic range options. Here’s what got done:

  • New reload sounds for all weapons to go with the new animations and assets.
  • Audio mix overhaul: adjusted levels of all sounds to make sure gunshots and explosions sound more powerful.
  • Dynamic Range presets (Settings › Audio):
    • Full: Gunshots and explosions are significantly louder than other sounds. Recommended for headphone users.
    • Medium: Recommended for speaker users.
    • Low: Gunshots and explosions aren’t much louder than other sounds. Recommended for speaker users playing at night and for players with impaired hearing.
  • New Channels option: Binaural. Recommended for headphone users for more accurate sound navigation. Not recommended for speaker users!.
  • Re-implemented panting sound for low stamina. It starts fading in when stamina drops to 50%.
  • Added crouching/standing up SFX.
  • Added water footstep SFX.
  • Added pain and death sounds for bots. These are still placeholders, consistent with current voice lines by Daeln Murphy.
❗ As mentioned in the "Maps and level design" section, soundscapes for new maps Rig and Compound are unfinished. You may also notice some sound anomalies in Run Down due to faulty acoustic portals.

Missions and mission editor

  • Almost every mission (i.e. objectives, spawn points, AI placement etc.) has been reworked and the AI behavior slightly tweaked.
  • Certain game modes now allow you to play on sections of a certain map. For example, you can now play Team Elimination on City (Streets) or City (Subway), which are versions of the original City map restricted to the areas above the ground and underground, respectively.
  • The Mission Editor was reworked to be a bit more user-friendly. To access it, type editmission in the console when in a Lone Wolf level.
  • New features in the Mission Editor include laptop-supporting meshes (meshes that automatically spawn with laptops when placed for Intel Retrieval or Uplink), mission meshes (additional meshes that can be placed in a specific mission, e.g. to block line of sight for spawns, or to block players from parts of the level), and mission-blocking volumes (invisible walls to block players from places where they shouldn’t be).
  • Also see the new (and somewhat invaluable) Validate Level command in the file menu.

Admin

  • New command admin motd will broadcast the server MOTD (message of the day) to all players on the server.
  • The admin resurrect command has been altered to respawn players at their death location always (rather than where they might be spectating, if their body has disappeared). A new admin resurrect all version is available, which does what it says on the tin.
  • New command admin resurrectnear (also accessible as admin resnear) will respawn players in the vicinity of a teammate rather than where they died. You can also add ‘all’ to the end of either command (e.g. admin resnear all) to resurrect all players in the vicinity a teammate.
  • Map voting is now limited by default to maps that are included on the server map list.

 

📢 This has been BUILD UPDATE #032!
We'll start gathering reports as soon as they start rolling in, so expect hotfixes and patches in the upcoming weeks.
To all of the CTE testers: thank you for helping us get to the main branch!
We hope you enjoy V1032. Stay safe and we'll see you soon.

CTE Update #009: V1032 Testing #3

🆔 GROUND BRANCH CTE
Build ID: 7948164 (Client) / 7948168 (Dedicated Server)
Download size: 471 MB (Client) / 89 MB (Dedicated Server)
⚠️ NOTICE
These release notes are for the V1032 testing build currently available in the GROUND BRANCH CTE (Community Test Environment) Steam app — not to be confused with the actual (and upcoming) V1032 release for the regular GROUND BRANCH app.
🚨 CLEAR YOUR OLD FILES
To avoid input and asset conflicts, delete all files/folders located in both of the following locations (copy-paste the path into your File Explorer address bar and hit Enter):

1. %LOCALAPPDATA%\GroundBranch\Saved\Config\WindowsNoEditor
2. Documents\GroundBranch

As we mentioned on Twitter, we have been squashing bugs all holiday season to get some of the most pressing CTE issues ironed out before the new year.

Here’s the list of fixes and additions for today’s GROUND BRANCH CTE patch:

Gameplay and customization
  • Tweaked leaning to be a lot more useful again. It’s a stop-gap solution until we get the rigging/animations figured out properly.
  • Fixed M16A4 not having fire mode selection and mag check capability.
  • Fixed unlimited shotgun reloads.
  • Reoriented dropped item interaction boxes.
  • Adjusted recoil and rate of fire for G3A3 and FAL closer to real-life values.
  • Updated Micro T-2 red dot sight with new models.
  • Added plain button-up shirt with 5 skin choices (icon pending; currently shares plaid shirt icon).
  • Fixed/tweaked various character asset skins and textures.
  • Fixed arm mask clipping too much on some long-sleeve tops.
Maps and game modes
  • Prevented people spawning crazy inter-dimensional AI and players (sorry to spoil the fun).
  • Fixed collision issues on Storage Facility.
  • Fixed lots of lights popping on/off on Run Down.
  • Added light switch boxes to Compound.
  • Fixed Team Elimination game mode.
  • Fixed bad extraction points on Storage Facility’s creek (Intel Retrieval).
  • No more rogue Russian gear-wearing bot on Small Town (Intel Retrieval).
  • Intel Retrieval now logs laptop name as well as number so you can find it in the mission editor.
  • Greatly reduced the number of dead bodies sticking around in respawn modes.
Audio
  • Added radio syncing beep audio cues on round start and end.
  • Audio work and fixes done on various maps and weapons.
  • Added crouching SFX.
  • Ambient sounds and sound fixes on Storage Facility.
  • Possible fix for VOIP issue where player input signal is too quiet (may have caused VOIP to be too loud!).
  • Increased sound occlusion for the Ready Room’s shooting range.
Graphics, performance and online replication
  • Performance pass on inventory textures (downsized, optimized).
  • Graphical performance passes on Rig and Compound.
  • Tweaked graphics settings (Low/Medium/High/Epic etc.) to try and get those working better.
  • Updated doors to fix long-standing replication bug (doors have different states on client and server).
  • Tentative fix for PiP scopes making areas too bright.
  • Tweaked lighting across all maps to improve consistency and nighttime lighting — highlights and shadows should now be less harsh, generally.
  • Disabled eye adaptation.
  • Fixed various clipping issues.
  • Default lens reflection texture changed to better placeholder before it loads in properly.
  • Redid laser dots so all lasers have big bright IR dots in NVG (still a WIP).
  • Changed alternative respawn behavior in Team Elimination from always respawning next to a teammate (“Always Teammate Respawn” option) to always respawning back at the insertion point (“No Teammate Respawn”).

When is V1032 stable coming?

We are only 3–4 days away from the new year — meaning the stable release for V1032 will not be here before 2022 as we need this build to get a decent testing period to make sure the fixes work and that nothing else broke in the process. There’s plenty more polishing we’d like to do too.

With that being said, with a little luck the official release is not likely to take more than a few weeks. So keep an eye out for game-breakers and fingers crossed!

This has been CTE UPDATE #009!
Thanks for testing V1032 and reporting all those bugs!

To those of you who celebrate it, we hope you enjoyed the holidays. And to all of you supporting and playing GROUND BRANCH: we could not be more grateful. Thank you so much for sticking with us through another year.

Till the next update, and we'll see you in 2022!

CTE Update #007: V1032 Testing

🆔 GROUND BRANCH CTE
Build ID: 7850759  (Client) / 7850775 (Dedicated Server)
Download size: 4.7 GB (Client) / 442 MB (Dedicated Server)
⚠️ NOTICE
These release notes are for the V1032 testing build currently available in the GROUND BRANCH CTE (Community Test Environment) Steam app — not to be confused with the actual (and upcoming) V1032 release for the main GROUND BRANCH app.
🚨 CLEAR YOUR OLD FILES
To avoid input and asset conflicts, delete all files/folders located in the following locations (copy-paste the path into your File Explorer address bar and hit Enter):

1. %LOCALAPPDATA%\GroundBranch\Saved\Config\WindowsNoEditor
2. Documents\GroundBranch

You’re not seeing things: our Community Test Environment (CTE) for version 1032 is finally live!

For anyone arriving now, GROUND BRANCH CTE is a separate Steam app (available to anyone who owns GROUND BRANCH) where we deploy test releases for broad public testing. If you are okay with major bugs and possibly unstable releases, go ahead and install it to start testing and previewing V1032, our upcoming major update.

Before we get on with the change list, let’s go over some of the major known issues — also known as things that don’t need reporting.

Known issues

  • Character assets and item skins are generally a work in progress (WIP). Things like clipping and missing/inaccurate skins are known and expected.
  • Similarly, animations are all WIP and subject to change. Expect bad skeleton behavior here and there (like wonky arms and necks), as well as unfinished implementations like vaulting, ladder climbing and leaning. Issues may be more pronounced in multiplayer.
  • Vaulting will sometimes fail to get the character over an obstacle and resemble a sliding motion.
  • There are still no animations for certain actions, such as jumping. Some actions also use placeholders.
  • Audio stuttering is expected on Run Down and new map Compound.
  • New map Rig is missing sound occlusion and environment-specific gunshot tail sounds and reverb. Those were disabled to temporarily prevent bad audio stuttering.
  • There are currently no footstep sounds for stairs.
  • Weapon stance transitions sound effects are out of sync with the animations.
  • The in-game map tablet is not fully integrated yet, so expect wonkiness.
  • Eyewear may be stuck in view inside the Ready Room when playing online. To make it go away, either hold F near a locker or workbench, or simply deploy to the mission area.
  • When playing online, players who hit the Spectate button after dying will hear a wounded grunt that should be assigned to dying enemy AI only.
  • For those using debug cams for pictures and videos: the “unarmed” pose (weapons slung/holstered) will currently not play the walking animation properly client-side (other players will see it normally online, however). The same applies to the subtle idle animations, which can only be seen on other players while playing online.
  • The Rangefinder’s NV mode is currently broken.
  • Picking up items from the ground is fairly bugged and can result in floating and/or unusable items.
  • In the Customize Operator screen, clicking the Save/Load button for any kit column will cause your list of saved kits to be displayed at the bottom of any item selection menu you open later. This bug is cumulative.
  • Weapon attachments may be strangely rotated.

What’s new

💭 The T in CTE is for Testing
Our goal with the Community Test Environment is to gather valuable data and feedback from a larger group of players. Needless to say, everything is a work in progress and subject to change.

Gameplay and mechanics

Mag check

You can now hold the Reload button (default R) to estimate the amount of rounds you have in your magazine/belt. You will get a HUD icon that indicates one of the following:

  • Fairly full
  • About half-full/empty
  • Nearly empty
  • Empty

Icons, timings and animations are all subject to change.

Map Tablet

You can now easily figure out where you are in relation to objectives and your teammates (if you have any) by tapping M or selecting the Tablet item in the Equipment menu (4).

The tablet displays the following information:

  • Your location and bearing
  • Your teammates’ location
  • Your team’s roster
  • Current objectives (as well as relevant markers on the map)
  • The in-game time of day (local time, in the top-right corner)
  • The amount of time remaining to complete your objectives

You may find yourself using the tablet a lot during Intel Retrieval missions.

New watch modes

Your wristwatch has a few new functionalities:

  • In all game modes, a “time remaining” warning will be briefly shown on the watch at 5, 2 and 1 minute(s) remaining.
  • In Intel Retrieval, you can now turn on the “Proximity Alert” mission setting (on the Ops Board) to get a vibrating alert when within 5 meters of the intel device.
  • In the new Dynamic Take and Secure (DTAS), your watch will display DTAS-specific information:
    • Approximate distance to the flag once placed (in meters). Also present in Fox Hunt mode.
    • Direction of the flag once placed (yellow arrow).
    • When in range of the flag as a defender, a green alert will pulse.
    • When in range of the flag as an attacker, a yellow alert will pulse.
    • When the flag is being captured, a red alert will pulse (defenders get no warning of flag captures).

More information about DTAS and Fox Hunt in the Game modes section.

Beefed up smoke grenades

Smoke grenades have been beefed up a bit to give more effective concealment. Performance may suffer if you spam a whole lot of these, but it’s a stop-gap solution until we have these effects remade and optimized.

AI can still see through them — sorry.

Team Elements

The new Team Elements feature (akin to player squads or fireteams) allows players to assign themselves — or be assigned by a server admin — to elements within your team for the purpose of aiding in coordination.

Team Elements are displayed in various places as differently colored letters: A, B, C and D, corresponding to elements Alpha, Bravo, Charlie and Delta. To change your Team Element, press Esc and access the Session Roster tab (top menu). Click the letter next to your player name, and choose your new Element.

There will in due course be features such as Element-specific radio channels, but for now you will see different Elements displayed in different colors on the in-game tablet.

Movement speed

Movement speed has been slightly tweaked. We’re being deliberately vague here as to not sway anyone — try it out for yourself let us know how it feels to you.

Game mode updates

Intel Retrieval

Intel Retrieval has received a major overhaul. Here’s what changed:

  • Instead of searching multiple laptops, there is now a single laptop to search and extract.
  • Approximate search areas are described and indicated on the new Ops Board, as well as the new map tablet item.
  • Typically, there will be one true location and one false location, but the number of possible locations can be changed under Mission Parameters.
  • The true laptop location and the extraction point will usually have additional AI guarding and/or patrolling them.
  • Please note that the visual search location circle is approximate, and you should treat the location text as definitive (for example: on Tanker, one search location is “Whole of Deck 3”, so search the entire deck rather than just the circle mark).
Terrorist Hunt

Terrorist Hunt has not fundamentally changed, but it benefits from the new AI placement system to ensure less predictable placement and more replayability.

Dynamic Take and Secure (DTAS)

DTAS is an entirely new PvP game mode (actually a recreation of a game mode in the early 2000s UT mod Infiltration) where both teams spawn in a random spot on the map.

The Defenders then have a short amount of time to place a flag, which marks the centre of a capturable zone. The Attackers must capture the zone, by getting a minimum of 2 attackers in range. The defenders can block an attack by getting a minimum of 2 defenders in range.

The Attackers can win by wiping out all defenders; the Defenders can win by killing all but one of the attackers.

Our own Matt “Fatmarrow” Farrow — who programmed this game mode — created a short video explaining how it all works:

As with most game modes, admins can tweak several parameters to their liking.

Fox Hunt

Fox Hunt is a further new game mode hidden within DTAS (see above).

When there are insufficient numbers of players on the server to start a DTAS round (by default: 6), the Fox Hunt mode will be engaged.

  • In this mode, one Defender is designated The Asset, and all players will receive an approximate distance (but not bearing) to their position.
  • Attackers win by eliminating The Asset.
  • Defenders win by keeping The Asset safe until time runs out.

A reduced time limit is automatically applied when Fox Hunt mode is engaged.

Team Elimination

This mode remains unchanged, but has been extended with the possibility of player and/or team reinforcements (respawns). This is still an experimental addition. When you die, the game will try to respawn you near a teammate, but will fall back to the additional spawn if necessary (this is to try and mitigate spawn camping in the reinforcements mode).

Uplink

The core gameplay remains the same, but a visible search area is automatically computed (based on the laptop locations) and displayed on the Ops Board.

Deathmatch

This very non-tacticool but classic game mode now allows you to specify a target frag limit or time limit, to allow a winner to be decided.

You can also specify a minimum number of players: if there are fewer human players than this limit, additional AI enemies will be spawned to make up the numbers.

Training

The Camp Peary Training Facility (aka The Farm) has received a couple small updates:

  • The regular shoothouse’s targets were repositioned, and many more possible target locations were added.
  • The Ops Board, light switch and Target App screen were moved around a bit for better usability.
  • The Ops Boards received some basic instructions on what to do on The Farm.

Maps and level design

New maps

New maps Compound and Rig are now available. Keep in mind that visuals, performance, audio and design are all an ongoing development.

Storage Facility overhaul

Storage Facility has had an overhaul to add a new industrial area at the top of the hill and a new route down into the tunnels, which have been spruced up and expanded in various ways. The docks area has also been extended.

Other significant map changes
  • Power Station has a new entrance west of the Substation insertion point leading into the tunnels.
  • City‘s central area was changed to add a new route to the previously “unconquerable” stairwell.
  • Run Down has a new ladder access route down from the roof.
  • New and improved props have been put into various maps, most notably Tanker.
  • Terrain materials have had a “de-tiling” pass.
  • New water has been added to multiple maps.

Missions and mission editor

  • Almost every single mission (i.e. objectives, spawn points, AI placement etc.) has been reworked and the AI slightly tweaked.
  • Certain game modes now allow you to play on sections of a certain map. For example, you can now play Team Elimination on City (Streets) or City (Subway), which are versions of the original City map restricted to the areas above the ground and underground, respectively.
  • The Mission Editor was reworked to be a bit more user-friendly. To access it, type editmission in the console when in a Lone Wolf level. (Please keep in mind however that there is currently a show-stopping bug with object selection and manipulation.)
  • New features in the Mission Editor include laptop-supporting meshes (meshes that automatically spawn with laptops when placed for Intel Retrieval or Uplink), mission meshes (additional meshes that can be placed in a specific mission, e.g. to block line of sight for spawns, or to block players from parts of the level), and mission-blocking volumes (invisible walls to block players from places where they shouldn’t be).
  • Also see the new (and somewhat invaluable) Validate Level command in the file menu.

Animations

Animations have received a major overhaul, most of which is still behind-the-scenes.

  • Reprocessed all character locomotion animations for new skeleton.
  • All weapons have completely remade animations for shooting and weapon manipulation (reloads, fire selector, mag checks etc.).
  • Added camera recoil animations.
  • Reworked weapon positions and transitions.
  • Body part-specific hit and death animations, including extended death animations.
  • First pass on basic ladder climbing (still missing mounting and unmounting).
  • Vaulting now has an associated animation (which is pretty bugged, per the Known issues section).

Ready Room and UI

  • New Ready Room look.
  • The Ops Board has a new layout and map images that emulate drone/satellite imagery.
  • The UI has received a general art pass, and most text is now in a slightly larger font size.
  • Customize Operator screen: new icons and improved item selection menus. Custom item builds are now also colored differently.
  • Mission settings now have an advanced settings category, which is hidden by default on the Lone Wolf and Host Game menus. A brief description of the game mode type is now given on those screens, and the mission selection tiles at the right-hand side now provide a description of the map.
  • Advanced AI Settings are now customizable (again) from the Lone Wolf and Host Game screens, allowing you to edit the various properties of the custom AI difficulty level.
  • If you try to select an OPFOR count over 30 (the recommended maximum), you will get a warning message and the OPFOR count itself will be displayed in red as a performance warning.
  • The After Action Report (AAR) has been overhauled and expanded. Extra tabs with extra info are added when appropriate. For the full set of AAR tabs with custom player and team scoring, check out the DTAS game mode. This may be extended in the future.

Character and inventory

  • New MK14 EBR model based on the Mod 1 variant, replacing the old Mod 2.
  • The new MK46 (Mod 1) light machine gun in 5.56 NATO replaces the old MK48 Mod 0. Suppressor not yet implemented, but on the way.
  • New M4-series and HK416-series models:
    • M4A1 SOPMOD
    • M4A1 Block II
    • M4A1 Block II (FSP)
    • HK416D
    • HK416D CQB
  • All-new character assets:
    • Character heads
    • Outfit and gear items
    • Beard selection currently disabled (still in development)

AI

  • Basic AI behavior remains the same, but some essentially cosmetic changes have been made to their loadouts and callouts (mainly reduced frequency). A more fundamental pass on AI is, of course, still planned.
  • The placement of AI on maps has been overhauled to make it more random, yet still plausible. In Intel Retrieval, AI is now spawned conditionally in some places, so that laptops and extraction zones are more heavily guarded than other areas of the map (which can give you a clue as to the laptop location if you observe carefully).

Audio

  • New reload sounds for all weapons.
  • Audio mix overhaul: adjusted levels of all sounds to make sure gunshots and explosions sound more powerful.
  • Dynamic Range presets (Settings › Audio):
    • Full: Gunshots and explosions significantly louder than other sounds. Recommended for headphone users.
    • Medium: Recommended for speaker users.
    • Low: Gunshots and explosions aren’t much louder than other sounds. Recommended for speaker users playing at night and for players with impaired hearing.
  • New channels setting: Binaural. Recommended for headphone users for more accurate sound navigation (not recommended for speaker users!).
  • Added water footstep sounds.
  • Pain and death sounds for AI (placeholders, consistent with current voice lines by Daeln Murphy).

Admin

  • New command admin motd will broadcast the server MOTD (message of the day) to all players on the server.
  • The admin resurrect command has been altered to respawn players at their death location always (rather than where they might be spectating, if their body has disappeared). A new admin resurrect all version is available, which does what it says on the tin.
  • New command admin resurrectnear (also accessible as admin resnear) will respawn players in the vicinity of a teammate rather than where they died. You can also add ‘all’ to the end of either command (e.g. admin resnear all) to resurrect all players in the vicinity a teammate.
This has been CTE UPDATE #007!
We're sure there's plenty we forgot to add here, so if you have any questions or would like to point out any glaring omissions, leave us a comment or reach out via social media with the links below. As always, thank you for your continued support and we hope you enjoy this test build!

Build Update #031: Patch 1031.3

🆔 GROUND BRANCH V1031.3
Build ID: 6684573 (Client) / 6684579 (Dedicated Server)
Download size: 63 MB (Client) / 32 MB (Dedicated Server)
🚨 CLEAR YO FILES
We strongly recommend everyone to delete all files located in %LOCALAPPDATA%\GroundBranch\Saved\Config\WindowsNoEditor (copy-paste this into your File Explorer address bar and hit Enter) to ensure that old files do not conflict with the latest changes and cause input and settings issues.

Our last game update, patch V1031.2, arrived with more bugs than we anticipated. Luckily we were able to diagnose and fix most of them relatively easily, packaged and tested a new build, and are now rolling it out as a hotfix for you all.

Hopefully this will take care of most of the recent reported issues—if it doesn’t, you know what to do, but please check the known issues listed at the end of the fixes list to make sure it hasn’t already been noted.

Changes and fixes

Ready Room
  • Fixed Ops Board‘s “In Progress” overlay not always showing up.
  • Fixed Ready Room team wall not always being removed for PvP modes.
  • Fixed the player character in the Customize Operator screen disappearing if the round started mid-customization.
  • Increased sound occlusion in the testing range.
  • Added spatial audio volume for the Customize Operator screen’s background to block all sounds while customizing character.
  • Fixed round time not being cleared when round stage timer is.
Weapons and attachments
  • Fixed M9A3 magazine’s display name (was listed as 15 rounds when it’s actually 17).
  • Fixed NVG effect not being loaded correctly sometimes and displaying no green tint.
  • Fixed shotguns preventing players from changing items when fired.
  • Updated collision on optics to allow placing the Offset Rail and low-mount RMR where applicable.
Spectator Mode
  • Fixed Show Player Names / Show Enemy Blips not being applied immediately while the spectator overlay is shown.
  • Fixed spectators having the ready status set to NotReady when sent to the RR even if they had been WaitingToReadyUp earlier.
Maps & level design
  • Fixed grenades colliding with foliage—they should now go right through leaves.
  • Fixed foliage protecting players from grenade explosions.
  • Fixed various bugs on Tanker dealing with collision on pipes and some visual issues with the internal stairs.
Admin
  • Changed in-game menu Admin button to a drop-down list containing an option to open the Admin Panel, as well as a list of quick admin commands (thanks, Prowlaz!).
  • Fixed Admin Panel spamming console/log with admin commands.
  • Fixed StartRound command not working in ReadyCountdown round stage.
  • Fixed dead bodies being created when StartRound and RestartRound commands are used.

Known issues

These audio-related issues were reported, but not yet diagnosed or successfully fixed:

  • Occasional lack of gunshot SFX.
  • Long bursts with the MK48 machine gun can cause the audio to bug out.
🐞 One common issue that we have been unable to fix yet is related to VOIP and microphone usage, from stuttering all the way to freezing or otherwise being unable to communicate via voice. For a list of possible fixes, please see this post: ⚠️🎙️ Microphone/VOIP issues!

This has been BUILD UPDATE #031!
Thank you for all the reports! This patch wouldn't be out so soon without all the feedback and we continually receive from the community. If this patch survives first contact, expect a new Intel Update in a few week's time to get everyone up to speed with how V1032 is coming along.

BUILD UPDATE #030: Patch 1031.2

🆔 GROUND BRANCH V1031.2
Build ID: 6669244 (Client) / 6669250 (Dedicated Server)
Download size: 119.8 MB (Client) / 60.2 MB (Dedicated Server)
🚨 CLEAR YO FILES
We strongly recommend everyone to delete all files located in %LOCALAPPDATA%\GroundBranch\Saved\Config\WindowsNoEditor (copy-paste this into your File Explorer address bar and hit Enter) to ensure that old files do not conflict with the latest changes and cause input and settings issues.

Patch V1031.2 is now live on the regular GROUND BRANCH Steam® app!

The second patch for release V1031 includes UI/UX and quality-of-life updates, general bug fixes, and a lot of under-the-hood work to better support game modes in the future. Let’s break it down:

Quality of life

Mission Settings (Ops Board)

The Ops Board (the old LED screen where players can change mission parameters and select insertion points in the Ready Room) has been changed from an in-world UI to a pop-up window with the same functionality—except a little easier to use.

Server admins (or any local player in Lone Wolf) now can simply click the right-hand half of the Ops Board to change mission settings in a UI overlay, and then submit all changes in one go:

The mission setting values will continue to be listed on the in-world board until they are replaced with a system that integrates them into the objective descriptions.

Show Remaining Threats

The HUD counter for remaining enemies (in Terrorist Hunt) was moved away from the center of the screen and back to the top-left corner, as well as made optional once again.

Use the Show Remaining Threats mission setting to change how it behaves:

  • The number set in this option represents how many enemies are left before the counter starts displaying (e.g. when set to 8, the counter will start displaying when there are 8 enemies left).
  • Setting it to 0 disables the counter entirely.

Dedicated server spectators

It is now possible to join a server as a spectator without it affecting the max player count.

The maximum amount of spectators is controlled by a MaxSpectators option and is currently capped at 16. While this does mean you could have up to 32 people on one server—16 players, 16 spectators—remember to talk with your server provider first to get more slots.

Improved spectator experience

  • First-person view should use correct sight lines and look smoother.
  • Better handling of toggle HUD command.
  • Show Player Names and Show Enemy Blips selections are now saved to config files.
  • Minimap rotation should now be correct on all maps.

New watch face

The wristwatch has been updated with improved readability:

The new fonts and adjusted sizes should make the watch face cleaner and easier to read. We’ve also temporarily removed the heartrate (BPM) display until that functionality is actually in place.

Gunfire loop fixed

The dreaded gunfire loop has breathed its last, with Mikson coming to the rescue with the insight Kris needed to find and kill it once and for all… hopefully. Fingers are crossed.

Net cull distance increased

We doubled the net cull distance from 150 to 300 meters to ensure that, while playing online, characters are visible at a distance to clients. This is particularly relevant on maps with longer sightlines, like 747.

This is a stop-gap method until we get the chance to start using the replication graph system.

Weapon kit validation system

Due to the large number of bugs related to improperly placed sights and firearm attachments in general, a lot of work went into improving the kit validation logic related to them.

⚠️ Oops! All your stuff is gone :(
As a result of the kit validation system, the kit version number has been changed to help prevent the use of existing kits that would no longer be considered valid. This means all existing kits and builds will no longer be loaded, so make sure to rebuild your go-to kits in-game before hopping online! We're very sorry for the inconvenience.

The validation process includes making sure that:

  • Magnifiers (i.e. G33 Magnifier) are placed behind non-magnified optics.
  • Night vision scopes (i.e. AN/PVS-22) are placed in front of magnified optics.
  • Rear (iron) sights have a matching front sight post.
  • A sight is not blocked by another attachment.
  • Only one type of optic can be placed on a sight line (i.e. no optic “conga lines”).
  • Only one iron sight or front sight post can be on a sight line.
  • All attachment mounting points are in contact with a rail.
  • A riser is placed directly on a rail or adapter and not another riser.
  • Attachments are not overlapping each other.

Trying to save a weapon build that fails any of the above will prompt players with what needs fixing, as well as prevent the loadout from applying:

🐞 The system will need fine-tuning to not be overly restrictive with certain combinations. Please let us know if you come across any such configurations that should be both possible and usable, but are not.

New Admin Panel

Due to changes related to mission settings and game rule handling, the Admin Panel (F8) has been updated and received a first pass of the new UI style:

Yes, you can finally unban people and see a list of team-killers!

Whitelist support

To keep a server private, servers admins can now choose to use a whitelist instead of a password.

The system checks the whitelist file periodically, allowing updates to happen just by replacing or updating the file. The file itself in standard CVS format, making it possible to use a common spreadsheet program and export the results.

As with most admin task, it is also possible to update this via Admin Panel while connected as an admin.

Game rules are now stored next to other server options

Along with the mission setting changes, this change removes the need to remember the associated command line, while still allowing them to be changed on the fly or overridden by a map list entry.

Audio

  • Fixed Tanker‘s engine sound occlusion stuttering when moving to upper decks.
  • Replaced outdated tire bullet impact SFX.
  • Fixed ground power unit interaction sounds on 747.
  • Minor under-the-hood optimizaton changes.

Maps

City

  • Removed leftover ladder from subway car that allowed players to mount it.
  • Added glass to alleyway building fronts.
  • Added doors to central square buildings.
  • Added power switches to central square buildings, alleyway buildings and underground station.
  • Added AI cover nodes to cars: bots will now use them for cover.

Paintball

  • Replaced the old texts saying “RED TEAM” and “BLUE TEAM” on each side’s entrance with flags on poles of the respective team’s color.
  • Changed the color of the lights on each side to reflect the teams as well.

General map cleanup

John has also done some minor miscellaneous cleanup (LODs, landscapes, collision, lighting etc.) on most maps.

Miscellaneous

  • Fixed a whole bunch of crashes.
  • Fixed MP5SD burst mode having no sound.
  • Fixed NVG effect being inconsistency across maps.
  • Made drop-down menus stand out better against other menus and text when opened.
  • Mouse sensitivity settings now allow decimal digit values for fine-tuning. You can still click and type a specific value instead of clicking and dragging.
  • New icons for Settings screen and Ready Room player status.

Under-the-hood game mode work

What originally started as changes to ensure mission settings and game mode rules were being read from the command line properly soon expanded to include a lot more.

This culminated in working closely with community member (and GB proto-modder) fatmarrow to fix, update or outright rewrite existing game mode logic. Many of these changes are mentioned in the raw changelog at the end of the post, and more can be gleamed by looking through the existing .lua files for those interested.

A number of these changes will make it into various community guides in time, and a new game mode by fatmarrow—Dynamic Take and Secure (DTAS)—is currently being implemented and tested (with tentative release in V1032) thanks to them.

Known issues

  • Sound occlusion in the Ready Room appears to be broken again. We’ll get that patched up as soon as we can.
  • The NVG effect has been reported to be missing the green tint on The Farm (Training map), but not consistently. Please report a bug if you experience this issue on a map!
  • When playing Uplink, the round start dialog may disappear too fast to read.
This has been BUILD UPDATE #030!
We appreciate you taking the time to read our release notes! You can read the raw change log below, and don't forget to let us know about any issues you find that are not listed here. Til the next update!

Change log

Remember when we posted these for every update until they got so massive they would either take too long to compile or not fit in posts anymore? Well, Kris took the time to compile the last batch, and it’s referenced in the notes above, so here it is (may contain strong coder language of the non-C++ kind):

* FIXED AGBGameMode::HandleStartRoundCommand() not working for WaitingForReady
* FIXED alot of rocks and other props that would distance cull to soon
* FIXED bad smoothing groups on M17 slide
* FIXED crash AGBInsertionPoint::CreateAssociatedPlayerStarts() related to attempt to spawn a new player start with an existing name
* FIXED crash caused by using BP_DummyLuaState
* FIXED crash related to sending game messages to destroyed player controller
* FIXED dropped items being removed by resurrect command
* FIXED full auto loop being stuck when changing weapons
* FIXED ground power unit interaction sounds on 747
* FIXED gunshots for MP5SD (there were issues with levels, tails and burst mode were missing)
* FIXED hard coded kit version number in WBP_CharacterEditor (Doh!)
* FIXED issues with Ready Room related to sound occlusion
* FIXED kit not being applied when you first join a team
* FIXED leftover ladder in City subway that was covered by a subway car.
* Was still allowing players to "mount" it and getting them stuck
* FIXED mission settings in Lua being changed from int to string
* FIXED missions overflowing in mission list
* FIXED NVGMultiplier value not being used in maps
* Multiplier is used to fine tune the NVG brightness value per map for consistency
* FIXED occlusion issues with the tanker engine room
* FIXED ops board showing all team ready status on each board regardless of the teams the players were on.
* FIXED player starts that were bad due to SmallTown's terrain fix from previous update (oops)
* FIXED pre recorded radio messages not clearing the VOIP icon once they finished playing while in the RR.
* FIXED ready status not being changed to from DeclaredReady when round ends.
* FIXED Removed ability to exit killhouse on The Farm by rear rollup door * Players not supposed to get to that area
* FIXED sections of outside wall in Run Down not lighting at low sun angles
* FIXED some cars LODing out to early in City
* FIXED stereo base for some of player's local gunshots
* FIXED team restrictions being applied to presets even when there were none.
* FIXED various bugs with lights on Tanker
* Part of this was removing redundant light switches.
There is now only 1 for interior and 1 for exterior lights
* FIXED various geometry/collision bugs on Run Down and Power Station
* FIXED various issues with landscape on Depot that were causing players to get stuck
* FIXED Water footstep effect being played when shouldn't in some areas of Creek map
* FIXED wood floor in center Creek area not having collision
* Reduced occlusion of shooting range
* Made AK Components spawn with each door interaction and remove themselves after a sound is finished instead of keeping them at all times. Significantly lowers the amount of registered AK objects.
* Removed unused RTPCs from distant gunshots
* Replaced old tire impact sound
* Removed unnecessary processes from gunshots
* Adjusted watch LODs to not be so aggressive at short distance
* updated watch face and other misc changes by Scopey from 1031.1
* updated resurrect command to use nav mesh to look for a valid location
* updated dropped item to use nav mesh to look for a valid location
* update zoo keeper CommandList and default admin groups to remove uneeded commands
* all the mission settings are passed via a single 'missionsettings' command now.
* updated WBP_ServerAccess_Manager & WBP_ServerAccess_List_Missions to support "other settings" like the admin maplist.
* updated ops board settings to use "missionsettings ?<setting>=<new setting>" instead of direct command.
* updated RR roster
* removed update hack and starting using ForceLayouPrepass instead
* made sure it supports any team / 255 team id properly
* updated Paintball map
* made sure generic rosters were set to 'any team'.
* removed old text saying Blue Team / Red Team
* add a red and blue flag on a pole to indicate which end is which from a distance.
* replaced red lights at blue side with blue lights. 
* changed red lights on sides to white lights.
* mirrored play area lights.
* imported Bebas Neue font (FF_BebasNeue-Regular)
* edited WBP_WatchApp to use the new font for the time display
* minor tweaks to heart rate text (still hidden)
* Cleaned up and added proper glass to City Alleyway insertion building fronts
* Added cover nodes around vehicles on City map
* AI should now actually use them as cover
* City Map
* Added doors to middle area buildings
* Added light switches for middle buildings, alleyway building and 2 to control subway area
* changed the look of WBP_ComboBox (drop-down menu) and related widgets to not get mixed up visually with other drop-downs when open:
* changed background color to GB smoke green to set it apart from the dark gray/black
* made entry text color lighter to stand out better against new color
* added left padding to text so entries stand out as their own listing
* temporarily removed "drop shadow" (just couldn't get it to look right… still want the effect but it's not as necessary anymore)
* tweaked the header for the Session Roster to be more in line with rest of UI and also set it apart from the new team name header
* started tweaking team name header; needs work and Kris' help to set a border color based on team
* WBP_Settings_Gameplay: fixed Default Reticle Brightness setting not displaying the set default value (was missing an entry string); set it to 3
* WBP_Settings_Controls: changed mouse sensitivity spin boxes (all 3 of them) to allow decimal increments
* WBP_SpinBox bar now displays how filled up it is without having to click and drag; also adjusted color slightly to not conflict with new ComboBox entry color
* replaced defining game rules, settings etc using functions with game mode variables instead.
e.g. local gamemode = {
UseReadyRoom = true,
StringTables = { "MyGameMode" }
* renamed FGBGameSetting to FGBMissionSetting and updated affected C++ & Blueprints.
* replaced Lua PostRun() with PreInit() and PostInit()
* PreInit() - allows script do thing before the C++ logic starts readding settings etc.
i.e. find particular actors and update settings based on these before they are replicated via the game state.
* PostInit() - allows script to create objectives and setup various actors based on settings and player teams etc.
* if the game is using rounds, WarmUp will now automatically be callsed *after* PostInit() - there is no need to manually call it anymore.
* ops board mission settings are no longer modifiable
* was always supposed to be a temporary measure and recent additions have made it difficult to maintain and sychronise.
* replaced with a prompt for admins/local player to show a 'mission settings' screen where all settings can be changed and submitted in one go.
* updated game message to include a 'type'
* implemented 'engine' type for usage with remaining opfor count
* implemented default type for everything else.
* updated UGBLuaTimerPackage
* SetTimer params changed:
* TimeHandle - nil or unqiue string, if you wish it to be overrideable etc
* Table - the Lua table holding the function we're about to call (self).
* Function - the actual Lua function (self.FunctioName)
* Rate - when to fire / how often to fire if looping
* Loop - true if this timer should loop until cleared, false if not
* ClearTimer param is now a string, TimeHandle - same as that used in SetTimer.
* updated GBSky
* created UpdateHoursMinutesSeconds() to handle calculating hour, minute & seconds in a generic location and storing the results.
* created GetHoursMinutesSeconds() to return hours, minutes & seconds for use with those actors that find it useful.
* added OnSkyUpdate() that is called every time it sky updates, removing the need for individual actors that rely on sky tick from ticking themselves.
* updated GBSpawnProtectionVolume to change bActive to false and TeamId to 255 (AnyTeam) by default
* created GBPlayerController::ClearAllIgnoreUseInputReasons() to ensure all ignore input reasons can be cleared when entering/leaving RR/play area.
* hooked up missing Unban command in ZooKeeper (oops)
* changed net cull distance from 150m to 300m
* should ensure characters are visible at a distance on larger maps, like 747.
* removed gap between first playerlist entry and the header in the game info screen.
* created GetIntFromOptionsOrCommandLine() to use with both game rules and mission settings
* getting sick of manually doing FParse::Value(FCommandLine::Get() etc all the time.
* exposed AllowDeadChat, AllowUnrestrictedRadio & AllowUnrestrictedVoice game rules
* will use the options string value first, then the command line value.
* added to admin and maplists
* renamed Intel.lua to IntelRetreival.lua and update all IntelRetrieval.mis files to point at new file.
* added support for Spectator Only clients
* updated chat overlay to support icons to show if someone is purely a spectator, rather then dead while spectating
* added some extra emojis for funsies
* made spectator options show player names & enemy blip save their state in the config
* updated AGBGameMode::GetIntFromOptionsOrCommandLine() to add DefaultValue param
* created AGBPlayerState::PreClientTravel() to ensure all delegates are cleared before seamless travel commences.
* hopefully helps fix bugs related to GC/references, highlighted by the WBP_ReadyRoomName one mentioned below
* updated AGBPlayerController::PreClientTravel()
* added call to AGBPlayerState::PreClientTravel() (duh!)
* ensures MyHud is destroyed
* recreated when the game mode changes anyway
* hopefully helps fix bugs related to GC/references, highlighted by the WBP_ReadyRoomName one mentioned below
* moved all UI and HUD related handling in GBPlayerController to GBHud
* updated all affected C++ and Blueprints
* moved trace logic of WBP_ReadyRoomName to GBHud C++
* there was a crash related to GC/references, specifically to do with WBP_ReadyRoomName on the WBP_HUD widget.
This widget is no longer permanent and has zero references - it just fades in/out if in use and is removed when not required.
* updated Binoculars and Rangefinder to make sure input is disabled when unequipped
* was a bug where you could freelook after they were put down and your currently equipped weapon would act like a pair of binoculars
* added group name to BP_LightZone
* grouped light zones turn on/off together (game magic)
* if one of them is destroyed, none of them work.
* adjust position of rooftop extraction point on Intel Retrieval RunDown so it no longer clips through floor.
* updated BP_ExtractionPoint to use a quick trace to position the flare, instead of a fixed position to accomidate for volume overlapping floor.
* updated GBGameModeLuaState & BP_DummLuaState to ensure io and os libs are disabled.
* started updating/cleaning up Admin Panel UI
* updated icons for Settings screen
* updated ReadyRoom Blueprint to take spectator only clients in account when disabled/enabled play area lighting.
* updated GBHUD & BP_HUD
* moved handling of spectator overlay handling to BP_HUD
* moved SpectatorToggleHUD handling
* added OnShowHUDEvent and rigged it up to act like before, as well as prevent hints and chat from being visible.
* updated all widgets that show up on the minimap in some what to all use the same Get2dPosition() function in BP_Minimap_Origin instead of rolling their own each time.
* this takes care of the spectator minimap being rotated by 90 degress in Tanker, among other things.
* updated GBSky
* removed deprecated GetTimeOfDayMinutes()
* updated DelayedInit() logic related to Initial time of day order:
* uses DebugTimeOfDay when in editor without a mission set.
* options string from maplist
* command line
* random value from PossibleDefaultTimesOfDay.
* 1200
* updated BP_WristWatch_Modular and BP_SkyActor due to removal of deprecated GBSky::GetTimeOfDayMinutes().
* updated ZooKeeper to add optional KickBanTime setting (default 5 minutes) to prevent kicked players returning immediately.
* updated FLuaValue::Unref() to add nullptr check when compiled for editor.
* Setup lightbox channels and fixed a few visual bugs in Power Station
* server no longer creates player camera manager
* required customising a few view target related functions that required the player camera.
* improved spectating
* sight components are not correctly setup when spectating start viewing a new character.
* view target control and view rotation is now replicated from server to client separately.
* view of weapon in first person is smoother, but still slightly offset and has jittery yaw
* removed deprecated/unused GBCharacter::GetAimOffsets()
* added missing clamping to stamina and respiration frequency logic
* further tweaked sway & stamina in relation to respiration rate to prevent firearm jitter
* updated AGBGameMode::GetSpawnInfo() to take lua table with Location & Rotation in it
* added various request Lua functions to ai package
* Gamemode bomb object added
* updated GBGameMode
* added call to OnProcessCommand() in AddMissionSettings() to fix hard coded/legacy settings not being set.
* updated RunMissionScript() to add GameModeTable to the 'script' field of the SelfTable used for the "gamemode" package.
* can now get current game mode Lua script using gamemode.script instead of gamemode.GetScript()
* updated GBGameModeLuaState
* moved DebugPrint() from GBLuaGameplayStatics to here so that 'print' in Lua should now appear in log and on screen.
* created GetTimeSeconds() to retrieve World->GetTimeSeconds()
* updated BP_BigBomb
* created and implemented WBP_Bomb_LedScreen - shows time, defuse progress & flashes when defused.
* added SetDetonationTime(), SetDefused() & SetActive(), all callable via Lua.
* created Bomb.lua to handle logic for ServerUseTimer(), ServerEndUse() & OnReset() 
* created example Defuse.lua and Defuse.mis for SmallTown to use as example of its usage.
* changed count down and light colours from red to blue.
* updated WBP_MissionSettings_Entry to adjust setting value when using a combo box instead of slider (oops)
* updated BP_Door_Swinging to stop it attempting to play sounds etc on dedicated servers
* updated GBPlayerController
* updated GetViewTarget() to remove IsValidCheck() from ServerViewTarget, which should always be valid.
* updated SetViewTarget() to ensure view target is set to the player controller itself if the new view target is null or the player state
* updated AGBBulletProjectile::IsNetRelevantFor() to skip replication for intigator & instigator controller.
* updated GameMode.csv to update gamemode_intel to gamemode_intelretrieval & add gamemode_defuse.
* updated WBP_MissionList to fix gap in search bar
* updated WBP_ServerBrowser
* added filter to hide wraong versions
* added search bar from WBP_MissionList
* updated Rig/TerroristHunt.mis 
* created dummy Rig/Deathmatch.mis
* created ResetActors admin command
* update BP_BigBomb to prevent it displaying interaction prompt based on TeamId 
* began updating game rule handling.
* moved all UI based game rule logic / graphics to WBP_GameRules
* created new GameRules admin command and removed EnableCheatas, AddGameRule & RemoveGameRule, since it handles all of them.
* updated GBPlayerController
* made god, notaget & nosway commands use ClientTeamMessage() so they let the player know the cheat is enabled/disabled when in multiplayer.
* updated ServerAdmin() to work even in standalone editor for testing purposes.
* cleaned out GBFunctionLibarary
* started out just updating Blueprint config functions, realised how bad it was in there.
Required lots of minor Blueprint changes, swapping from GB specific function to native UE4 ones.
Will help with compile times, Blueprint stability etc due to reduced number of functions and duplicates.
* wrapped debug related variables/functions in GBAIController with a WITH_EDITOR define.
* wrapped WITH_EDITOR define around SetDEbugAIAim() call in GBHUD
* cleaned up Bluperints and other assets based on errors / warnings created by mock build
* added ReloadMissionScript admin command to make editing missions easier.
* replaced GameModeTable.Unref() call with GameModeTable = FLuaValie();
* updated ZooKeeper
* added game rule handling to ZKServer to they can be saved directly to the Server.ini instead of having to remember commandline all the time.
e.g. SpectatorFreecam, UseTeamRestrictions
* updated all affected C++ and Blueprints
* improved admin and vote related commands
* updated admin and vote UI to match changes (and then some).
* implemented UGBGameInstance::HandleOpenCommand() override to look for "Listen" option and make sure ZooKeeper is init'd if detected.
* replaced usage of UseReadyRoom & UseRounds game rules with bUseReadyRoom & bIsRoundBased on GBGameState, since they should not be changed at runtime.
* updated all affected C++ and Blueprints
* added mission settings as a voteable command
* added check against 'restricted' settings in case someone tries to set time limit etc.
* Reworked game mode flag material to allow tecture and color changes with a MaterialInstance
* removed out of date WBP_AdminList_Entry
* updated BP_Firearm_Master
* added FullAutoPlayingID to track PlayingID passed out when full auto loop starts.
* added check for FullAutoPlayingID > 0 in OnStopFiring() and attempts to use StopFiring sound
* if there is no AK component to use, it will just call ExecuteActionOnPlayingID with the action type 'stop' and transition duration of 500ms/
* updated GBFirearm
* replaced usage of GBInstigator->GetFootstepComp() in updated GetGunShotComp()/GetInteractComp() with cacched pointers
* updated OnBeingEquipped() to cache GBInstigator->GetFootstepComp() to AkGunShotComponent & AkInteractComponent.
* removed need for OldRecoilCount.
* updated EndShot() to set call RecoilCountUpdated(0) if there is GBInstigator == nullptr
* replaced duplicated calls to OnStopFiringEvent(), Barrel->DeActivateFlash() etc with calls to EndShot() instead.
* added OnStopVoiceEvent() to GBCharacter
* upodated BP_Character
* updated OnPlayVoiceEvent() to VoicePlayingID and add callback to it when the voice has finished playing.
* implemented OnStopVoiceEvent() to call ExecuteActionOnPlayingID() to stop any voice that is playing.
* This will make voice lines etc end on death without cutting off other sounds, like gun shot trails
* refreshed BP_M1014 & BP_SDASS_Martial OnFiringEvent() to prevent build error.
* updated WBP_QuickPlayerAdmin to bring it inline with recent admin command changes/improvements related to kick & ban commands.
* cleaned up text chat style
* replaced RR locker row icon with house-with-cog icon; not happy with it but it reads a little better than the lockers (looked too much like servers)
* started updating appearance of Ops Board "Mission Settings" pop-up
* changed display name for the MK48 "magazine" to something more accurate
* updated GBFirearm
* added bForce param to UpdateSpatialAudioVolume(), allowing tags to be force applied whether they changed or not.
* replaced GetGunShotComp()->Stop() calls in BeginDestroy() with EndShot() etc like other functions (oops)
* updated OnBeingDropped() to clear the cached AkComponents after calling EndShot().
* removed erroneous timer clearing in AGBFirearm::BeginDestroy().
* updated WBP_Button_Preset
* added check to prevent applying items restricted due to skin etc.
* added diaglogue popup with list of items restricted due to skin etc.
* updated GBPlayerController::InitLoadout() to fail when trying to load a loadout with items restricted due to skin etc.
* removed GBFirearm::BeginDestroy()
* added validation check to WBP_ItemEditor to preven saving kits with non-functional sight combinations.
* updated C++ to improve validation based on similar logic used in WBP_ItemEditor
* created new, brute force methods for determining valid rail slots
* does a better job at preventing you placing a sight too far back or forward.
* updated AGBItem::OnBeingEquipped() to change setting all UPrimitiveComponents to all UMeshComponents
* this fixes issues with the barrle sound sphere thingy no longer overlapping sound volumes and makes Mikson a happy chappy.
* hooked up missing references in WBP_ServerAcces_List_Missions to fix admin & vote ChangeMap tab
* updated GBGameMode to clear all lua timers and nil the game mode table when the time limit is reached, preventing Lua timers being started and possibly firing while the world is null.
* updated WBP_Config_XXX to ensure they use their Default values if there are none in the config.
* fixes gamma etc suddenly becoming zero or some other weird value.
* Removed Spline Occlusion from Tanker Ship Engine
* Decreased Tanker Ship Engine falloff distance
* added white list support to ZooKeeper
* reads PlayerName & UniqueId (SteamId) from WhiteList.csv
* rejects anyone that logs in if they are not on the list, regardless of password.
* will automatically import new values if the file has changed when a new player logs in and it has been at least 1 minute since last import.
* updated admin UI
* properly shows/hide tabs based on admin commands
* added white list tab
* made sure own player state was skipped in admin list.
* cleaned and improved sight and attachment validation
* removes duplicated sights / front sight posts on the same sight line.
* ensures iron sights always have a corresponding front sight post
* detects firearm front sight post blocking low sights
* no longerallows riser stacking
* created GBItem::PlaceAt() for use with gamemode flag, laptop etc.
* first pass at becoming FM's bitch
* changed bWantsToEnterPlayArea into a Ready status enum
* updated ops board to add a ReadyUp button in place of join/minimap when round based without insertion points
* updated GBGameMode give Lua a chance to override start, end and restart round.
* simplified GetPlayerList() - removed lives, wants to play check etc
* created GetLivingPlayerList()
* created GBItem::DenyDrop()
* updated BP_CarriedGameModeFlag to attempt to place itself directly under the player before reverting to previous methods when Place() is called.
* added GetReadyStatus & SetReadyStatus to Lua player library
* changed KitVersion from 8 to 9 to ensure everyone has to remake *valid* kits.
* hooked up upper & lower game messages for FM
* further improved kit validation inrelation to iron sights
* changed ValidateDecodedItem() to output a reason for kit failer.
* changed AGBPlayerController::SetLoadout() to abort on kit validation failure
* updated default kit versions numbers
* updated AI kit version from 8 to 9.
* updated BP_CarriedGameModeFlag
* removes placement helper if auto-placed before manually placed.
* automatically switches to previously equipped items upon being placed.
* moved GetValidatedSpawnLocation() from GBLuaGameModePackage to GBLuaGameplayStaticsPackage.
* removed SpawnItem from GBLuaPlayerPackage and created similar PlaceItemAt in GBLuaGameplayStaticsPackage
* FLuaValue UGBLuaGameplayStaticsPackage::PlaceItemAt(FLuaValue ItemClass, FLuaValue Location, FLuaValue Rotation)
Rotation = table with P/Y/R or Pitch/Yaw/Roll keys.
* updated GBDroppedItem
* InitAsPlaced() now ensures replicated movement is false..
* OnRep_AssociatedItem() now only enables physics if replicated movement was deferred or it detects replicated physics were enabled.
This fixes issue of flag falling over or changing location etc on clients.
* moved GBCharacter::ClientSwitchItems() logic to GBPlayerController to ensure proper replication.
* updated ZooKeeper module
* updated UGBLuaTimerPackage
* renamed TimerMap to TimerHandlMap.
* removed attempt to clean up timehandle upon its use entirely - can't see it hurting anything.
Will be replaced or cleared next time a timer with the same handle is set anyway.
* Moved Chemlight from hold back to Inventory
* Added green chemlight to top of gamemode flag
* Temp placement for now 
* Adjusted gamemode flag to be brighter and removed chemlight
* moved all firearm validation code to C++
* updated WPB_ItemEditor to take convert the failure message into a pretty version.
* updated overlap validation to ignore items that are not attached to the current firearm
* seems overlap check would detect items that were had just spawn/were being spawned by other kits being validation and detect those!
* ensured pre/post modifier sights only become valid when the trace a suitable sight, rather then defaulting to being valid.
* Reworked gamemode flagpole to be lighter in color and have a bit of emissiveness
* rearranged logic in GBPlayerController::SetLoadout() related to validation to ensure child items are able to be queried by the collision system.
* fixes the issues discovered in testing where the G33 failed to detect being placed behind an appropriate reddot etc.
* renamed UGBLuaGameModePackage::GetLivingPlayerList to GetPlayerListByLives(TeamId, MinLive, ExcludeBots)
* creates a list of players wtih lives >= min lives that have declared ready and are in the play area.
* sorts them by lives, highest to lowest
* updated affected Lua.
Remember - a player with lives may not have a character.
Do something like PlayerCharacter ~= nil before attempting to use it.
* removed debug logic in BP_Laptop_Usable causing it not to spawn properly (oops)
* created UZKSebver::HasWhiteList()
* updated GBGameSession
* ignores password when white list is in use.
* adds wl0/wl1 to steam tags for use in server browswer
* updated WBP_ServerBrowser
* shows servers as passworded when if they use a white list.
* change password overlays to use generic diaglogues
* added dialogue when attempting to join whitelisted server
* created UGBFunctionLibrary::GetConfigFilename() and updated all config related functions to use it.
* updated WBP_Settings_XXX to use UGBFunctionLibrary::Config_Save(TEXT("PlayerSettings")) instead of calling SaveSettings().
* changed UGBPlayerSettings::SaveSettings() to a non-Blueprint exposed function.
* Uplink fixes from FM
- I think it's ok if AutoSwap is turned off, so maybe stick that in the notes
- don't think it's a big fix - I could probably find it myself
- ok, Uplink.Lua, line 183 - gamemode.gamemode is causing it to throw an error @Kris
- line 188 - self.PlayerTeams.BluFor.TeamID -> self.DefendingTeam.TeamId
- the laptop setup code only seems to be called on 2nd and subsequent rounds, will try fix that too
- lines 194,195 - missing self. - I think that's going to fix it"
* updated Defuse.lua based on fixes to Uplink.lua (oops)
* ensured self hosted games default to internet
* added team restriction and requirement checks to AGBPlayerController::SetLoadout()
* paranoid, but it should help prevent anyone accidently ending up with invisible arms/legs etc.
* changed SaveConfig("PlayerSetings") to SaveConfig("PlayerSettings) in WBP_Settings_Audio/Gameplay/Video
* yes, a single missing 't'.
* disabled a lot of superfluous and seemingly superfluous plugins and recompiled
* hopefully nothing we actually needed.
* disabling more plugins
* updated WBP_ChatOverlay to create ForceClose event to ensure things are cleanly closes when HUD is hidden.
* updated BP_HUD
* stopped WBP_SpectatorOverlay from being removed when HideGameRelated event is called.
* updated OnShowHUD event to improve the way it shows/hides related widgets.
* updated WBP_SpectatorOverlay
* removed need for OnClose() by making ForceClose() event remove player names itself.
* updated ForceClose() to ensure spectator related delegates are unbound
* updated BP_PlayerController::ShowTransition event to make show transition screen is over the top of spectator and other overlays
* updated GBPlayerController
* implemented BeginSpectatingState() override to call GBHUD->ShowMenuEvent(SpectatorOverlay)
* updated EndSpectatingState(), adding call GBHUD->HideMenuEvent(SpectatorOverlay) and rigged itup to call GBHUD->ShowHUD() only if GBHUD->bShowHUD was false.
* updated SpectatorToggleHUD() to call MyHUD->ShowHUD() directly, removing need for AGBHUD::SpectatorToggleHUD() entirely.
* updated HideTransitionScreens() to ensure spectator overlay is show if player is only ever going to be a spectator.
* updated all affected Blueprints, removing unncesscary calls to show/hide spectator overlay.
* updated Uplink/Defuse.lua to only perform autoswap at the end of PostRoundWait.