Scopey

BUILD UPDATE #005: Checkpoint

It’s been a little over two weeks since out last update, and we now feel we have just enough content for a new build. Build Update #005 is a relatively small, intermediate update to keep things fresh while we work on bigger thing (more info on that soon!).

NOTE: All servers must be updated to work with the newest build.

Highlights

New map for Terrorist Hunt: Storage Facility

A familiar map to our pre-Early Access backers, Storage Facility has returned to GB a lot closer to completion, with many of its issues fixed and optimization improvements. Though the map is currently only setup for Terrorist Hunt, more game modes will follow. Check out some samples below (courtesy of our local wizard Rangda):

A.I. suppression

We’ve finally worked the first pass of the A.I. suppression and cover system into the game. Enemies will now seek cover under fire and, depending on how suppressed they are, return fire from cover. As mentioned, this is a first pass—A.I. is still overall rough, but will continue to improve as we add and refine systems.

Patch notes

Build version: 1024
Steam ID: 3183851

FIXED
* FIXED OKP-7 reticule misalignment
* FIXED collision issue in Power Station stairwell that allowed player to jump into non playable area

AI
* Added more values for perception configuration, see DefaultAISettings.ini comments
* Updated cover point generator to generate cover points within a subfolder in outliner so things are easier to view etc.
* Added some more aim debug code
* Started moving different distinct state into sub-BT's to make overall BT clearer and to aid reuse and reworking of individual behaviors
* Added suppressed BT to handle state where AI is suppressed by an unseen enemy, still work to do to flesh this one out
* Added slightly clearer handling of focus, as movement was resetting focus on completion needs to be split into focus component

CONTENT
* Changed out some trees for new versions on Storage Facility
* Reduced wind settings on Small Town
* Added PhysMat settings to some marketplace materials
* Optimized foliage meshes for less overdraw
    * Main grass mesh (should help all maps that use it)
    * Distant tree billboards in Storage Facility
* Storage Facility
    * Finished art pass
    * Cleaned up PostProcess volume placements
    * Thinned tree placement a bit to help rendering

* Added TH-StorageFacility to package list
* Removed DV-StorageFacility as its no longer needed
* Added IsLocalPlayer to light optimization stuff in map BP

BUILD UPDATE #004: Hotfix

This is a small hotfix update to address the main issues present in Build Update #003.

  • Fixed control remapping issues (e.g. broken ‘Strafe Right’).
  • Cleaned up reload issues (shotguns, Mk 14 and AKs).
  • Testing new tree meshes and foliage rendering (SpeedTree 8) in Small Town—let us know how it performs for you!
  • Fixed reticle misalignment on red dot / holo sights.
  • Render sharpening now accessible and scalable via Settings > Video > PP Sharpen.

NOTE: All servers must be updated to work with the newest build.

Patch notes

Build version: 1024
Steam Build ID: 3134746

FIXED
* FIXED MoveRight rebinding not working (was binding an Action not an Axis)
* FIXED small misalignment in red dot and holo sight reticles 
* FIXED missing textures on a few Tanker Ship engine room meshes
* FIXED infinite shotgun reload
* fixed AK reloads not putting magazine away
* fixed M14 EBR reload notifiers not being fired


CONTENT
* Small changes to default scalability settings to keep shadow quality a little higher on lower settings
* Updated SMG Mag pouch
* Trees redone on Small Town
    * New Speedtree 8 based tree types replacing most exisitng trees
    * Small adjustments to post process settings to help unify look
* Some work done on Depot brick wall material

* Tanker Ship
    * Tweaked lighting visuals for night map
    * Small optimizations to EngineRoom and exterior lighting 


CODE
* updated GBGameplayAbility_ReloadXXX
    * updated CanActivateAbility() to return false if it detects montage already playing or timer already running, preventing reactivating already active reload
    * removed need for show menu timer
    * reduced input delay by starting timer on activation instead of release and skipping it if double-tapped
    * changed old magazine attachment point from HAND_Left sock to b_LeftHand bone to stop it floating after new mag is inserted.
* removed stubbs from GBTuberMagComponent
* moved new PPSharpen materials to /Core/Engine and ensured they follow naming convention
* removed PP_Sharpen references from Aircraft TakenDown lighting scenarios
* added PPSharpenPercentage player setting 
* updated WBP_Settings_Video
    * moved most of the Event Graph off into separate user widgets, modularising where possible.
    * cleaned out old code
    * ensured Anti-Aliasing Method sets console cvar when applied (should see AA update immediately)
    * added PPSharpenPercentage setting
* changed sharpen amount in PP_Sharpen from 0.5 to 0.3.
* updated PPI_Sharpen to use default sharpen amount value.
* updated game module binaries

BUILD UPDATE #003: FUBAR

That’s right: Build Update #003 is finally here.

As those of you who follow us know, we’ve ran into a myriad of problems since migrating to Unreal Engine 4.20.2. This upgrade has caused more issues than usual, which in turn took a longer time than usual to resolve, leading us to go out of schedule. Engine updates get increasingly trickier as a project grows; there’s more to break, and then more to fix.

Full disclosure: This is going to be one of those builds that sometimes happens in Early Access where some of the things that were broken before now work… and vice versa.

PICTURED: How we feel about future engine updates (screenshot by WaderTheGamer)

To add insult to injury, A.I. master Phil had issues with our version control system, which rendered him unable to submit his updates. Well, we decided that the new build had been delayed long enough—some of the additions will simply have to wait a little longer.

Rest assured that we’ll be getting everything in shape as quickly as possible and, in the meantime, we hope this build’s fixes and extras outweigh its issues and omissions. Last but no least, sorry for the delay!

NOTE: All servers must be updated to work with the newest build.

Highlights

Engine update

We are now on Unreal Engine 4.20.2! This brings with it many optimizations and systems that will allow us to do a whole bunch of things more efficiently in GROUND BRANCH. Some may experience small performance increases from the upgrade alone, but the biggest gains will come once we fully tap into the new systems and features over the coming months.

New controls and bindings

One of the biggest changes in this build is the new Controls screen that makes key bindings and commands much easier to find and change. Whereas before some options (such as Toggle Crouch) were part of a “Scripts” drop-down menu, now they are exposed and clearly listed. Ambiguous bindings such as “Off Hand Action” are now more intuitively labeled (e.g. “Interact”). And, of course, the duplicate Toggle Aim / Off Hand Action binding has been taken care of.

One important change is in the Reload control scheme: you now press R once for a Tactical Reload (a.k.a. retention reload), and double-tap R for the more urgent Speed Reload. As mentioned in our previous Intel Update, holding R will be saved for a menu that will allow for mag checks and other related actions. While this Reload scheme is currently hard-coded, we plan to make it customizable in the future, so that this will only be the default.

Lastly, the radial menu for attachments is now exclusively for weapon attachments and defaulted to the Middle Mouse Button. Your NVGs—if equipped—are now accessible via the top menu, under “Equipment” (‘4’ key).

The new Controls screen layout has the bindings listed on the left and extra options on the right. You can check it out in the Settings menu.

Scope glitch is history

The issue with 3D scopes on NVIDIA 10xx series graphics cards has been fixed—you are now clear to rock that ACOG or high-powered optic without hassle.

New bad guy skins

We are starting to introduce some enemy skin variations, starting with Terrorist Hunt on Power Station. These will continue to get updated and added to other maps very soon.

A.I.

The values for A.I. setting that were being tested on a few of the official BFS servers are now the default for the game. The A.I. is continually being worked on and will go through many changes over the coming months, so don’t worry if they appear too easy or too hard; we’re in the process of testing out values, and there’s plenty of new A.I. functionality yet to make it into GB.

Map and graphics updates

  • We have implemented a temporary solution for the A.I. seeing through foliage on Small Town, so no more getting shot from across the map while behind trees! This solution solves roughly 85% of the cases where A.I. would “see” you through trees and bushes, and we’ll soon be working on a better solution that covers almost all situations. Other maps with dense foliage will also be updated after we’ve acquired some feedback from this build.
  • A rendering “upgrade” is being tested on all maps. You will notice a sharpening effect to the visuals that greatly enhances the look of the game while using temporal anti-aliasing (Settings > Video > Graphics > Anti-Aliasing Quality). Some may or may not like the look while using FXAA or no AA, so we’ll gather feedback and make adjustments as necessary.
  • Some work has also been done on Storage Facility (Play Offline > Game Mode: Development). The map should be ready for Terrorist Hunt in the next Build Update!

Weapons and items

  • The G22 has received a new custom slide based on the Agency Arms Patrol Series.
  • The Galil SAR can now use a Picatinny rail mount for optics.
  • The visible laser has been further toned down and is now less visible depending on the lighting.

Known issues

  • Some players may not show gear they are wearing while in the Ready Room. Rest assured that the player does have the gear and can see it themselves. Everything will sync up once in the mission/match.
  • Pouches do not always animate with the character. They will appear to “float” until the player moves in any direction. This behavior is especially apparent when crouching or standing up in place.
  • Some players may see slow-downs during various hit effects again.
  • Player names don’t show in the Elevate Player menu.
  • Player names may not appear on the Ready Room boards and/or player list.
  • The Binoculars overlay is misaligned.
  • Foliage LOD change distances need adjusting; lower LODs are showing too soon.
  • A.I. enemies may feel too passive now.
  • No ability to “re-pin” an armed grenade.
  • Small hitch in sidearm reload animations.
  • Terrain LOD transition creates a sort of “blobby” growing/shrinking effect as you move closer or farther away.
  • Some may experience an issue in the Ready Room testing range where the primary weapon is not immediately accessible. Simply select Secondary (‘2’ key), then switch to Primary (‘1’ key) to equip.

Patch notes

Build version: 1024
Steam ID: 3119679

FIXED
* FIXED Small offset of optics on MP5 rail causing shots to hit slightly to the right 
* FIXED slight offset of V3 reticle
* FIXED G22 normal map in wrong material slot
* FIXED naming of M16, M18 smoke grenade, M1911 and M4 to properly reflect models
* FIXED M16A4 fire modes - now Semi and Burst only
* FIXED scope corruption on nvidia 10xx cards
* FIXED Mk48 PHYS_collision that was preventing shell casings from properly ejecting 
* FIXED some building collision on Power Station
* FIXED server version - should prevent people attempting to join RED servers all the time
* FIXED OSS HASH issue introduced in UE4.20
* FIXED ToggleInGameMenu getting called twice rapidly (temp hack fix)
* FIXED loading screen not pissing off properly since updating to UE4.20 (I hope)
* FIXED character loadout failing to be applied if there are no items to add in the replicated kit string
* FIXED BP_PalletteStack warnings/issues
* FIXED BP_ChainlinkFence warnings/issues - replaced the damn thing with new BP_FenceMaster
* FIXED potential issues with BP_Warehouse_ExhaustFan and BP_CielingFan
* FIXED C7535 GBDamageType caused by VS2017 update
* FIXED UAnimSequenceBase variables in GBAnimFunctionLibrary
* FIXED handgun reload not references end montage section
* FIXED incorrect naming for P250 magazine round count

CONTENT
* Updated G22 with Agency Arms slide (Now a 100% custom "Glock" due to copyright) 
* LOD work on G22
* Added rail attachment to Galil SAR

* Added in open static doors to RR Ops rooms
* Added in new recorder voice commands VO files and changed references in VOICE_Default
* Added in new VO for RR coundtdown
* Made collision on shell casings non-round to stop continuous collision sounds when they rolled
* Small optimization... default project setting to not use low end lightmaps 
    * Reduces shader permutations
* Some lighting optimization work on Storage Facility

* Added temp AI LOS blocking volumes to vegetaion in Small Town
    * This will help with AI seeing through trees and bushes though it is not always super accurate
    * Proper solution will be comign in the future
* Adjusted spec value on wood door materials
* Changed setting on Small Town doors to make them light better
* Small adjustments to Smalltown lights 
    * No longer using IES values

* Turned off DFAO on High shadow scalability setting
* Changed bad guys in Power Station to new models and loadout setups
    * Still work in progress

* Storage Facility
    * Work on texturing leftover untextured geometry
    * Setup Level Streaming Volumes for interior section
    * Lighting optimizations
* Reduced visibility of laser 60%
    * Better looking, but makes it harder to see in some lighting conditions
* Testing level optimization on training maps setup

* Implemented small sharpening effect to game rendering
* Changed default behavior of weapon optic glass to accept environment lighting
    * Prevents it from being full bright in dark environments
* Removed M15_WP grenade as it isn't implemented properly 
* Changed Galil SAR to correctly be 5.56 caliber as well as have a 35-round magazine
*  Renamed M18 white smoke to M83 internally
    * This was already done in game files

AI
* Added a couple of minimum values into loaded settings so we don't divide by zero in later calculations.
* Tweaked AI settings for a more enjoyable solo play experience
    * These will continue to be adjusted as well as new features added (BIG work in progress)
* Updated cover generator to add cover points into a subfolder in the world outliner

CODE
* Upgraded engine to UE4 4.20.2

* created WBP_ServerBrowserMessageOverlay
     * currently only used to display big warning message when trying to attempt to join a server that is RED.
* update path in various .bat files.
* hard coded fix for nVidia 10XX cards into BP_OpticalSightComponent
* updated GBCharacter
    * renamed SetRunning() & SetSprinting() to SetWantsToRun() and SetWantsToSprint()
    * renamed GetSprinting() to GetWantsToSprint()
* stripped out input script system
    * this is the mostly unnoticed system that support all those things people mention :)
     e.g. toggle crouch, momentary aim 
* updated input actions and execs
    * removed TogglePos
    * removed button usages from exec commands
    * created Interact commnad to replace usage of OffHand to open doors, climb ladders etc
    * renamed MainHand to UseMainHand
    * renamed OffHand to UseOffHand
    * renamed UpAction to Jump
    * renamed DownAction to Crouch
    * renamed UseAttachedItem to FirearmAttachment
    * changed inventory slot 3 & 4 to non-instant
     i.e. they always display a menu
    * moved Night Vision usage to Inventory Slot 4.
    * added Toggle Crouch option to player settings.
* overhauled control binding UI
    * hard coded binds to list of controls instead of reading them all from DefaultInput.ini
      Should be far less clutterred.
    * hard coded default bindings in UI
    * moved always run from WBP_Settings_Gameplay to WBP_Settings_Controls.
    * added Toggle Crouch to WBP_Settings_Controls.
* removed suicide (K) from DefaultInput.ini
    * stupid left handed buggers kept hitting it by mistake and topping themselves :P
* created fullscreen overlay WBP_BindKeyOverlay
    * replaces small in list message
    * removes modifier keys from list
    * makes it harder to bind to wrong key by giving a chance to review key choice & modifiers.
* changed reloads
    * input moved from player controller/firearm/gameplay ability combo to gameplay ability (should predict / sync better)
    * created new C++ reload gameplay abilities for both external mag fed and tube fed (i.e. shotguns) firearms.
    * for mag fed - tap = reload with retention (tactical), double-tap = reload without retention (speed)
    * for tube fed - tap = reload one round, double-tap = reload to capacity.
* created special gameplay ability with input similar to reloads for future use.
* updated BP_ANPVS_15_NVG
    * changed internal logic to try and fix the damn thing once and for all
* moved ability system input binding from character to player controller
    * character gets last dibs on input, so binding it there effectively made it useless if a default bind existing in player controller.
* simplified BP_Door_Swinging
    * now uses next/prev to control incremental movments instead of holding offhand.
* changed all interact prompts to the same style based of the latest ladder prompt.
* changed firemode handling
    * input moved from player controller/firearm combo to gameplay ability
    * slightly fiddling, so not sure on sync/prediction yet - will improve via animation later.
* updated GA_Sprint
    * input moved from player controller/firearm/gameplay ability combo to gameplay ability (should predict / sync better)
    * will pause/unpause itself
    * should no longer lower weapon if stationary.
* updated BP_TankerCar & BP_BoxCar to use Interact key
    * missed it in previous submit
* changed default key for FirearmAttachment from F to MiddleMouseButton (F is now Interact)
* updated WBP_Settings_Controls
    * added Become Spectator / spectate bind to 
    * added misc section with Return to Ready Room / ReadyRoom and Opt Out / suicide

* added item.firearm.reload tag check to stop AI attempting to reload repeatably
* removed legacy Categories from GBItem
    * updated all affected C++ & Blueprints
* created GBDirectSight for use with non-rail sights that attach directly to firearm

* added toggle / momentary lean option to PlayerSettings
* added bPlayerSelectable to GBCharAppearanceData
    * set all bad guy appearance related assets to not be player selectable
    * set all player appearance related assets to be player selectable

* changed ProjectVersion from 1023 to 1024

 

INTEL UPDATE #002: Keep’Em Coming

Update (September 9): Due to technical issues with the migration to Unreal Engine 4.20.2, the next Build Updated was delayed to early this week.

It’s time for another Intel Update, where we let you all know what we’ve been up to since you last heard from us. Cut to the chase, you say? A new Build Update is scheduled for this upcoming week, and we’re spilling some of the highlights below:

Unreal Engine 4.20.2

We’ve upgraded from Unreal Engine 4.18.2 to 4.20.2. Along with the numerous bug fixes and underlying improvements, this gives us access to a new networking feature that will help with online play.

Scope glitch fix

We’ve finally pinpointed what was causing the scope glitch, which seemed restricted to nVidia 10xx series GPU users. No more weird squares popping into view when aiming down magnified sights!

AI suppression

Our resident bot master Phil “zoombapup” Carlisle has worked some new suppression code into the AI programming that makes enemies capable of sensing incoming fire from distances and locations where they can’t see the attacking player: They will now take cover and return fire in more contexts, and their reaction is partly mitigated by how much suppression players put on them. These new suppression settings will also be accessible and editable via the AISettings.ini file.

Controls and key bindings

The Controls screen has been reworked to be more intuitive and accessible: More bindings are now exposed and editable, some were given their own independent key, and others were rearranged for future features. For instance, tapping Reload will now result in a tactical/retention reload, while double-tapping will perform a speed reload; holding Reload is being reserved for an upcoming menu that will allow the player to do a mag check, among other related actions. We’ll keep updating control schemes and making them increasingly more configurable as we go.

Earlier this week: AI squad commands

Those who follow our Twitter (or @zoombapup) got a sneak peek of Phil’s work on squad AI commands—door stacking and room clearing, anyone? Phil will be making a little demo video for those interested in the tech side of AI programming, and that will be posted in our social media channels sometime in the upcoming week. Follow us and don’t miss it!

That’s all for today. Stay tuned and, as always, thank you for your continued support!

BUILD UPDATE #002: Another Hotfix

We’ve got another small build update ready!

Like before, check the highlights underneath and scroll further down for the complete change log. Keep the reports coming and thanks for playing GROUND BRANCH.

NOTE: All servers must be updated to work with the newest build!

Highlights

  • Unmute now works.
  • Fixed “Spectate” button on ops board for Terrorist Hunt and Team Elimination.
  • Fixed fire mode, magazine weight and other UI elements not appearing after a map change.
  • Fixed NVGs not working after map change.
  • Reduced slowdowns from bullet impacts and muzzle smoke/flash.
  • Team Elimination should no longer start when a single player enters the Operations Room.
  • Reduced/fixed slowdowns in Small Town.
  • Fixed some Tanker Ship map issues.
  • Added “Spectate” to bindable controls—default key is F6.
  • Character lighting optimizations.

Build version: 1023
Steam ID: 3053047

Change log

FIXED
* FIXED navmesh area near SW spawn in SmallTown that allowed AI to sometimes spawn inside large rock pile
* fixed being able to start a vote while another is already in progress (oops)
* fixed vote kick not working
* fixed lighting not being reset when leaving character editor in training maps
* fixed player list blank lines
* fixed BP_Explosion_M67 trying to access possible none due to a component or its owner being marked for destroy.
* FIXED tanks Ship bugs
    * Falling off walkway with no railings between pipes on deck 
    * Falling out of map in engine room
    * Falling out of map along lower level of main structure walls (both sides)
    * Engine room walkway stairs not accesible 
    * Misaligned geometry causing gap at bottom of mian stair system just before entering engine room 
* fixed possible none in WBP_TeamElimination_OpsBoard if game state hasn replicated properly yet
* fixed UGBUIFunctionLibrary::GetChildrenOfClass() failing to find children of user widget blueprint
* fixed firemode, center messages and other related widgets no longer working after map change
* fixed quick admin commands being lost on map change
* fixed calls to ClientMessage() in C++ not displaying very long, if at all
* FIXED missing collision on middle section of cinderblack wall
* fixed team elimination starting if only one person enters the ops room.


CONTENT
* Removed 'Pre' from Early Access watermark
* Added 'spectate' to bindable controls.Default is F6
* Folded built in bipod on Mk48 mod1 so it didn't collide as much

* Set bCastDynamicShadow = false on pouches to help performance

* Optimization of bullet hit effect and weapon muzzle flashes
    * Setting Effects to Medium in Settings reduces amount of GPU based particles so should help on lower end GPU's
* Optimized light placements on Small Town
    * Hopefully this reduces specific area slowdowns some poeple are seeing
* Set Depot roller doors to have a random open state at map startup


CODE
* disabled some stubbs in GBAIController & RBEventManager
* added VOIP indicators for spectators
* removed game mode choice from change map vote menu
* enabled ban command to work regardless of player still being online
* added short ban duration to kick to prevent kicked player instantly returning to server.
 * added cancel option to connection screen (just calls 'disconnect' for now)
* disable loop back in voip manager (oops)
* added additional variables to WBP_RadialMenu to John to fiddle with
* changed mutelist storage type from uint64 to fstring.
* tweaked when ops board spectator button is visible/not visible - made need better solution
* set values to some local variables in BP_TerroristHunt & BP_TeamElimination to see if that clears up reported bug
    * shouldn't need to, because as far as I know, Blueprint functions auto-init the values to zero.
* changed "CUSTOM" to "CUSTOM REASON (TYPE IN)" in WBP_ServerAccess_List_Reasons to make it clearer.
* updated GBRoundManager to parse the actual command line instead of relying on game mode options.
* added logging to GBVOIPManager::IsMuted() to find out whats going on with that.

* removed IsMuted() from GBPlayerState.
* changed IsMuted() on GBPlayerController to accept PlayerState instead of UniqueId.
    * updated affected C++ and Blueprints
* removed IsMuted() logging now that it is well and truly fixed.

* renamed WBP_X_BriefingRoom widgets to WBP_X_OpsBoard
* created WBP_OpsBoard_InProgressButton
    * moved functionality of inprogress overlay/spectator button from separate OpsBoard widgets to one that is self contained.
    * automatically shows/hides itself based on round stage.
* updated BP_TerroristHunt
    * cleaned up CheckReadyUp() to make sure it specifically checks the round stage instead of simply checking that it isn't "ReadyUp" stage.
    * rigged it up to replicate desired number of terrorists via AI State to show on OpsBoard.
* updated WBP_TerroristHunt_OpsBoard
    * cleaned up/simplified thanks to removal of inprogress overlay/spectator button to separate widget.
    * added basic 'mission info' - number of tangos + simple objectives (Sweet the area + eliminate threats).
    * this should make the round won't instantly start unless everyone is ready.
* updated BP_TeamElimination
    * cleaned up CheckReadyUp() to make sure it specifically checks the round stage instead of simply checking that it isn't "ReadyUp" stage.
    * this should make the round won't instantly start unless everyone is ready.
* updated WBP_TeamElimination_OpsBoard
    * cleaned up/simplified thanks to removal of inprogress overlay/spectator button to separate widget.
* fixed axis actions bound to mouse button not ending when mousing over interactive widget

* changed Kick command to still add temp ban even if player leaves before they are kicked.
* added vote timeout of 1 minute after map change.
* added map vote timeout of 5 minutes after map change.
* created UGBUIFunctionLibrary::GetFirstChildOfClass() to make it easier to find specific widget without Blueprint shenanigans
* refactored WBP_InventoryBar & WBP_InventoryBar_Heading to fix UE4 bullshit about it being WBP_InventoryBar being out of date (even after I made it fresh!)