Cover image of 1.2.0.12 Experimental Update

Attention Soldiers,

We updated the Steam and Xbox Experimental applications of the game.

We're aware there is an issue with the Xbox application update and are working to resolve it as soon as possible.

Assets

  • Added: UH-1H and MI-8MT (Armed Transport versions)

  • Added: AKS-74U and AKS-74UN

  • Added: M9, 6Kh4, and Sa-58 bayonets weapon attachments

  • Added: M112 demolition block with M34 detonator

  • Added: TNT block with KPM-3U1 detonator

  • Added: 40mm UGL flares (white for Soviets; red, green, and white for US)

  • Added: Pilot survival vests

  • Added: US pilot, woolen, and leather gloves

  • Added: IIFS backpack

  • Added: Ushanka hat

  • Added: Support for Open Bolt weapons

General

  • Added: Vehicles - Unflipping interaction, which may require multiple contributors depending on the vehicle weight

  • Added: Vehicles - Toggle handbrake interaction to allow passengers to operate it while there is no conscious driver

  • Added: Vehicles - Ability to push vehicles

  • Added: Commanding menu allows you to send orders to your group

  • Added: Commanding orders can be bound to the quick slot menu

  • Added: Visualization of commands in the world

  • Added: Added handwear slot

  • Added: Ability to switch control of aircraft between pilot and copilot seats

  • Added: Opening and closing doors on vehicles is now separated from getting in and out of vehicles

  • Added: Turrets - Unconscious gunners will elevate guns on pintle mounts while falling

  • Added: Improved ejecting from moving vehicles

  • Added: Realistic application of external forces on exposed occupants of vehicles experiencing unintended orientation changes

  • Added: Vehicles - Riding the clutch when moving off from a halt

  • Added: Game option to enable/disable HUD elements

  • Added: Grass flattens under tripod turrets

  • Added: Ability to automatically adjust collimator brightness by environment light

  • Changed: Inventory visualization and operation was heavily polished

  • Changed: Weapon obstruction is now animation driven instead of IK driven and changed to 3 phases approach where there is more room for the character to shoot

  • Changed: Enabled player movement while using morphine, tourniquets, and bandages on the upper body

  • Changed: Reworked entire character damage implementation to use the new damageEffects system

  • Tweaked: Optics - Increased vignette intensity

  • Tweaked: Helicopter engine startup time increased to 2 seconds, consistent with interactions

  • Tweaked: Medical and rearming kits now fit into smaller backpacks

  • Tweaked: Passengers can interact with all vehicle lights when pilot/driver is unconscious, dead, or not present

  • Fixed: Freelook no longer follows gun elevation

  • Fixed: Damage - M151 could not be set on fire by shooting damaged fuel tank with tracerless kinetic projectiles

  • Fixed: Vehicles - S105 front lights emissivity with dipped and beam lights

  • Fixed: S1203 wheels damage setup

  • Fixed: Weapons - NSV optics reticle was rotated incorrectly when gun was placed on a slope

  • Fixed: Possible character clipping through doors and gates

  • Fixed: Turret-mounted weapons now support burst and semi-automatic fire modes

  • Fixed: Arresting handbrake (double-tap space)

  • Fixed: M60 was sometimes forced pointing downwards after deployment

  • Fixed: Vehicles - Gear shifting controls locked while shifting to or from neutral or reverse

  • Fixed: Weapons - Weapon input context was active while unequipping, sometimes causing reload instead of applying health items

  • Fixed: Hitreg issues with unconscious character

  • Fixed: Severe hit registration issues when a character got in/out of the vehicle while server has low fps

  • Fixed: Turret reload state got stuck when reload elevation is outside of stance-specific bounds

  • Fixed: When a player places mine, as long as he has more in his inventory, they will remain assigned to that quick slot

  • Fixed: Players can no longer get in the back of transport trucks if it has supplies and vice versa

  • Fixed: Attached GP-25 grenade launcher would not work correctly with zeroing

Playable Content

  • Added: Any spawn point can now use supply costs when a player is spawning

  • Added: All rank budgets are now supported by Free Roam Building

  • Added: Option to set the amount of supply by ScenarioFramework action

  • Added: Possibility to set a name for inventory items added by Scenario Framework

  • Added: Possibility to set a scenario-specific variable

  • Added: Possibility to play a single-line dialogue

  • Changed: Deployable radios/tents now have the option to change respawn budget types between supplies, spawn tickets, or no respawn cost

  • Changed: Conflict - Radio message notifying about a player volunteering for a specific objective is now audible only for the volunteering player

  • Changed: Conflict - Supplies are no longer generated more rapidly when the stored amount is low

  • Changed: Conflict - Some objective names now better correspond with the surrounding location names

  • Changed: Conflict - Deployment with a saved loadout is now allowed only on bases with an armory

  • Changed: Modding: Entity catalog now supports getting Inventory item UIInfo to quickly obtain the name and description of the item it entity catalogs

  • Changed: Rank limitation to Requesting AI and building living area compositions has been changed to Sergeant

  • Fixed: Conflict - Objectives should now properly reflect the current base owners (resolving missing objectives or incorrectly uncompleted ones)

  • Fixed: Conflict - Respawn icon will no longer appear on bases low on supplies

  • Fixed: Weapons in arsenals are now refunded at the correct rate when you add or remove attachments

  • Fixed: Combat Ops - Intel now has a name and description

  • Fixed: Combat Ops - Intel can get dropped in the air

  • Fixed: Intel in Combat Ops can no longer be duplicated by loadout saving at an arsenal with the intel in the players' inventory

  • Fixed: Arsenal loadout saving for faction only is no longer possible if you interact with a loadout that is of a friendly faction

Game Master

  • Added: Civilian faction was added to the game for Game Master mode; including Civilian arsenal, characters, and marking civilian vehicles as part of the Civilian faction

  • Added: Attachable faction task and waypoints to entity

  • Added: Cycle option that can be used with waypoints to create loops

  • Added: Randomized civilian, civilian dockworker, civilian businessman, US soldier, USSR soldier, and FIA soldier to Game Master

  • Added: Game Master can change the arsenal game mode in run time, restricting the available items to conflict items only or unrestricted

  • Added: Game Master is now capable of enabling and disabling supplies on entities with supplies usage as well as globally

  • Added: Game Master can now enable and disable certain arsenal types separately. Giving the ability globally and on entity to enable/disable arsenal boxes and weapon racks, arsenals of vehicles, and arsenals of gadgets

  • Added: Game Master can now set the spawn cost supply multiplier for spawn points when supplies are enabled. Setting a value anywhere between 0 to 4 times the default value

  • Added: Ability to add single items to the arsenal blacklist, preventing players from saving their loadout if the item is in their inventory

  • Added: Game Master can now set arsenal loadout saving settings to be friendly faction items or to the specific faction only

  • Changed: Supplies are disabled by default in Game Master

  • Changed: Reduced default Game Master abandoned entities cleanup time from 60 to 30 seconds

  • Tweaked: Character speed set to 100% on Game Master control taken

  • Tweaked: Preview entity component to render active slots of meshes only

  • Fixed: Rare cases where Game Master neutralizing/lighting-on-fire entities gave a player a (team)kill

  • Fixed: Spawning a group into a neutralized entity would spawn orphan characters instead of a new group

AI

  • Added: AI can drive vehicles now

  • Added: AI can be recruited to a player group and commanded

  • Added: Better obstacle avoidance

  • Added: Group's ability to issue suppressive fire orders to its members; overall improvements to suppressive fire behavior

  • Added: Usage of suppression fire in combat

  • Added: Usage of vehicle lights at night

  • Changed: Reduced AI accuracy against poorly illuminated targets. Now, at night, AI accuracy is lower unless the target is illuminated by a light

  • Changed: Rewrite of agent's firing times patterns, added the ability to define soldier/group fire rate

  • Fixed: Looking around fixed in defend behavior

Controls

  • Added: Hint on how to cancel the toggled freelook

  • Added: Simple switch weapon action to alternate between primary and secondary weapons (can be bound in the Weapons category)

  • Added: Ability to rebind radial quick slots menu

  • Added: Action to toggle focus regardless of being in a vehicle or unarmed

  • Added: Aim Down Sights (ADS) toggle lean actions, canceled when exiting ADS, in Character bindings

  • Changed: Default binding for low ready changed from C Hold to LShift Down, LS Hold to LS Click

  • Changed: Reload action input restricted while the weapon is being inspected or while gadget is selected

  • Tweaked: Quick slot selection keys show the selection bar until released

  • Fixed: Weapon was being fired whenever player tried to unequip gadget while sprinting by LMB/RT

  • Fixed: Holding Left Trigger 100% briefly resets toggled ADS in weapons and turrets

  • Fixed: Toggle lean actions were not reliable

Multiplayer

  • Added: Refactored Inventory Replication, usage of new Replication Layers to lower the amount of streamed data related to hierarchies, mainly inventory

  • Added: A new safeguard has been made to combat griefers that vote kick an entire server. A new voting cooldown system has been implemented. When a player joins a server, they cannot initiate a vote kick until they have been in the server for a set time. When a player initiates a vote kick, they cannot initiate another vote until a cooldown is finished. There is a grace period for when a server just started/restarted, allowing kicking of players without a cooldown if the players join the server within that time.

  • Added: Vote cooldowns have been added for starting a vote to become Game Master and when starting a vote to remove a Game Master

  • Added: Players who are on the admin list but are not logged in as admin can no longer be kicked via player vote

  • Added: Option to ban/unban by player name

  • Added: Ban/unban supports spaces in player names (eg.: #ban create "Name with space" 1000)

  • Changed: Moved HitRegistrationManager to HitRegistrationSystem

  • Changed: Turret angles are now transferred as 16-bit instead of 8 for additional precision

  • Fixed: When connecting, player could see weapons and backpacks on characters in vehicles

Audio

  • Added: Projectile traveling sounds for rockets and UGL grenades

  • Added: Compartments can have a unique name for slot mapping

  • Added: SCR_ShellSoundComponent which allows playing sounds from projectiles once they have been fired. (Requires a SignalsManagerComponent and a BaseMoveComponent or one of its children)

Scenario Framework

  • Added: Possibility to have generic tasks not tied to any entity

  • Added: Filter by faction for GetArrayOfPlayers and GetClosestPlayerEntity getters

  • Added: Action Based On Conditions that can execute other actions

  • Added: Decrease Logic Counter action

  • Added: Ability to cancel or prioritize AI waypoints

  • Added: Ability to select multiple AI slots for one AI action

  • Added: Ability to add a waypoint to AI by name

  • Added: VoiceOver Play Sequence action

  • Added: SlotTrigger that has now generic purpose

  • Added: User Action event listener

  • Added: GenericTask Sample scenario

  • Added: Possibility to set if the action should be removed on completion.

  • Added: ScenarioFramework action to set max autonomous distance for an AI group

  • Changed: Increment/Decrease Logic Counter action has counter name as optional attribute if action is attached to a desired counter

  • Changed: SlotTrigger renamed to SlotPlayerTrigger to retain existing behavior used in community content

  • Changed: Separate classes in different files

  • Fixed: Logic Counter not calling OnIncrease actions when reaching the desired count

  • Fixed: Activation type for slots is not properly handled

  • Fixed: Trigger discrepancies and clean-up

  • Fixed: Trigger init issues

  • Fixed: Action Spawn Objects issues when sublayers had randomization in-place

  • Fixed: Show Debug Shapes During Runtime doesn't work correctly outside of Workbench

  • Fixed: Repeatable spawn is not working correctly with infinity

Workbench

  • Added: Cinematic Tool - Different glyphs for keyframes based on interpolation used

  • Added: Cinematic Tool - Keyframes snapping

  • Added: Cinematic Tool - Duplicating and renaming tracks

  • Changed: Expose to editor minimum water depth value for marking navmesh

  • Changed: Cinematic Tool - Layout improved

  • Tweaked: World Editor - Transformations of rigid body geometries (Coords + Orientation properties) are now editable using gizmo in scene

  • Fixed: Cinematic Tool - Depth of field track was not working in-game

  • Fixed: Crash when manipulating curves in Particle Editor

  • Fixed: Map generation for maps that are offset from 0

Modding

  • Added: Set/GetBaseRotation method for TurretComponent

  • Added: New Get In Get Out API on CompartmentAccessComponent

  • Added: "Count" script API parameter to selected Inventory operations to process multiple with one call

  • Added: Health items and bullets have their custom damageEffects added and configured on their prefabs

  • Added: CompartmentDoorInfo can now clearly mark fake doors, and knows whether it is open or being used

  • Added: CompartmentDoorReference for when seats in a child CompartmentManager need to use door from the parent CompartmentManager

  • Added: ComputeStruckHitzones, function that fills an array with all hitzones that should get damaged by a particular BaseDamageContext

  • Added: HitZoneContainerComponent.GetAllHitZonesInHierachy returns hitzones contained on that hitzone container and its children

  • Added: DamageManagerComponent::FilterContact used to discard contacts that don't meet the requirements

  • Added: DamageManagerComponent::OnFilteredContact alternative to DamageManagerComponent::EOnContact only called when FilterContact returned true for that contact

  • Added: GetParentHitZoneContainer for HitZoneContainerComponent

  • Added: BaseLightManagerComponent.GetEmissiveSurfaces

  • Added: Ability for turrets to use weapon optics (no PIP)

  • Added: M23 ammobelt UVs are animated by the SCR_AnimatedBeltComponent

  • Added: Methods to SCR_Enum for retrieving next and previous enum values even from modded enums

  • Added: RepairSmokeHandlingConfig.conf which has default definition for smoke removal when vehicle is repaired; thus new and modded vehicles that don't inherit from Vehicle_Base.et should use it for the initial setup of SCR_VehicleDamageManagerComponent.m_RepairConfig

  • Added: RigidBody component template in Ammo_Rocket_Base.et, same GUID as Ammo_Rocket_PG7VM.et

  • Added: RigidBody component template in Ammo_GrenadeLauncher_Base.et, same GUID as Ammo/Ammo_Grenade_HE_VOG25.et

  • Added: SCR_CharacterControllerComponent.ComputeHitReaction in script, so the hit effects can be customized

  • Added: New logic has been added to editable entity components to allow for Variant of prefabs when a prefab is spawned (by editor or, for example, as a player character)

    • This means that Characters can have random variants. It can even be set up to ignore the original prefab, such as in the randomized characters that can be placed in Game Master. Additionally, the variant randomization is not limited to characters. Any editable entity can be randomized, though by default, they are not as it is more performance-heavy. When creating a composition, one can add entities with variants to the composition; running the "Create / Update selected editable entity" tool will automatically tick true the "Randomize Variants" bool on the EditorLinkComponent. Every entity in the composition is checked to see if it has a variant. Randomization of entity variants when spawning an entity can be achieved with the new variant of the GetGame().SpawnEntityPrefab() function.

  • Added: Functionality of placeable items that can also be attached to other objects (e.g. check M112 explosive charge)

  • Added: Better visual feedback when it's not possible to insert an item into a storage.

  • Added: Ammo type indicators for magazines and grenades, visible in the item slots and hints.

  • Added: Gadgets - WeaponNoFireTime attribute to prevent weapon fire while gadget is selected

  • Added: Getter for sights position, front, and rear point PointInfos

  • Added: SCR_Math3D static method GetRelativeLocalTransform, able to create relative transform between two BaseGameEntity members of same hierarchy. E.g. use is in 2D and PIP sights (Temporary, will be moved to SCR_EntityHelpers)

  • Added: Disclaimer for modding about damage over time API in SCR_ExtendedDamageManagerComponent.c

  • Added: Turrets can now use grass flatten components

  • Added: Script API GarbageSystem.GetTrackedEntities() for modders.

  • Added: Density and penetration resistance of material's ballistic info affects damage output - the higher, the less damage is dealt

  • Added: Script callback for light state changes in light manager

  • Added: Ballistic table generation config, where we can change the generation process; it still works the same if no config is used for the generation

  • Added: Now you can also specify some init speed coeffs for which you want to generate precise data, so they are not interpolated.

  • Added: Exposed precision parameters to the Ballistic table generation config. Tweaking them can prevent huge sizes of ballistic tables or increase precision if needed

  • Added: TurretControllerComponent API for ADS states: SetWeaponADS, SetWeaponADSInput, GetWeaponADSInput

  • Added: Vehicles - Shifting RPM curves in car controller debug

  • Added: Ability to change arsenal game mode allowing items to be available in specific game modes. Game Master arsenal is unrestricted, and all items are available

  • Changed: HitZoneContainerComponent.GetAllHitZones now only returns hitzones contained on that hitzone container.

  • Changed: All character-related scripts listening to bleeding invokers and events have been reworked to use damageEffects API

  • Changed: Damage - SCR_DamagePassRule now handled in SCR_HitZone and SCR_DamageManagerComponent, using HijackDamageHandling

  • Changed: Renamed EFireState to SCR_EBurnState

  • Changed: Weapon attachment costs for arsenals are now separately calculated. Allowing modders to add the base value to all weapons regardless of the attachments and the attachment separately in the catalog lists and they will be counted up together

  • Changed: Renamed the projectile effect BaseDamageEffect to ProjectileDamage

  • Changed: Weapon obstruction parameters were changed so they allow to control new 3-phase approach

  • Changed: Disabled supplies usage for the MPTest world

  • Changed: SCR_ArsenalManagerComponent::ARSENALLOADOUT_COMPONENTS_TO_CHECK variable is now filled by SCR_ArsenalManagerComponent::GetArsenalLoadoutComponentsToCheck method. This makes this part of the code more moddable

  • Changed: Weapon_Base.et now has WeaponAnimationComponent

  • Changed: Inventory layouts have been reworked, and their scripts have been updated accordingly

  • Changed: User Action - Added default compartment definition (value 0 which equals to default value for driver/pilot compartment) to config files for light user actions

  • Changed: Gadgets - In SCR_FlashlightComponent renamed m_LenseArray to m_aLenseArray so prefabs that use this functionality will need to be updated

  • Changed: Gadgets - Gadgets that are attached to SCR_EquipmentStorageSlot will be informed when that slot occlusion changes by triggering SCR_GadgetComponent.OnSlotOccludedStateChanged (bool occluded)

  • Changed: Inventory - Visible storage slots have to disable UseVirtualInventoryReplication (ref: check FlashlightSlot in Jacket_M70_base prefab)

  • Changed: Base Game mode now has all components to have arsenals working in the world. This might cause duplicate components if the components were added manually

  • Changed: Added Explosion damage and changed config used by explosion impulse effect in Warhead_Shell_HE.et

  • Changed: Weapons - Turrets ADS camera position prefers SightComponent's "Sight Position" over now obsolete TurretComponent "Camera Ads Attachment"

  • Changed: Gadgets - Marked in SCR_GadgetComponent method CanBeToggled as obsolete since it will be replaced by GetUseMask

  • Changed: LightSlot now saves ParentSurface attribute as name instead of index. Prefabs might need re-saving

  • Changed: Previously, we generated ballistic tables for only 0-45degs, now you can change it so it uses 45-90degs. You can select which degs you want in the generation config

  • Changed: Damage diags to see HitZone health has been moved to GameCode->Damage->Type of damage info

  • Fixed: Damage - SCR_DamagePassRule ignored root damage manager if hitzone struck was already in root damage manager

  • Fixed: Entity catalogs of the same type now merge correctly on init

  • Fixed: Weapons - Turrets without ADS camera attachment no longer lag behind gun rotation, as long as they have SightPosition defined in SightComponent

  • Fixed: SCR_ResourceSystem::RegisterContainer and SCR_ResourceSystem::RegisterDynamicComponent now only register on authority

  • Fixed: DamageManagerComponent OnFrame isn't called when activated

  • Fixed: CharacterControllerComponent SetWeaponNoFireTime was not functional

  • Removed: Having DamageManagerComponent::EOnContact exposed to script could result in too many calls and performance issues.

  • Removed: Damage - SCR_DamagePassRule no longer supports damage over time

  • Removed: Damage - SR_DestructibleHitzone attribute m_fPassDamageToParentScale is obsolete and is no longer supported

  • Removed: HitRegManager.et, HitRegistrationManager.c, and all references in the layers for the worlds

  • Removed: Optics - Unsupported attributes of SCR_2DOpticsComponent and SCR_2DSightsComponent

  • Removed: CharacterInputContext::SetVehicleCompartment, ::GetVehicleCompartment, ::SetVehicleAction, ::GetVehicleAction. To get the compartment character, use CompartmentAccessComponent

Published on 

We want you for our mailing list!

We offer great content once a month just for you!