Release Notes


Details new changes made since the previous release of the RIDE platform to external collaborators and developers.

RIDE releases typically occur quarterly. Access to nightly releases available upon request.

Page Contents

Release Notes – 0.5 (December 2021)

We are thrilled to announce our latest release of RIDE, version 0.5!  Please read the below Release Notes and related changes for this version.


In order to access Terrain datasets, you must have a terrain key.  Please contact us directly in order to acquire a key.

A* Pathing

  • Updated AstarPathfindingProject, incorporating version 4.2.17 of the A* Pathfinding Project package.
  • A* movement system snaps agents to Terrain collider instead of navmesh graph in the Y axis. (Updated example scenes accordingly.)
  • Fix for CPU spikes when updating navmesh penalties.


Battle Drills

  •  BattleDrill_CoverAndConcealment; work-in-progress scene toward simulating the next Army doctrine Battle Drill.


  • Added RTS Camera Controller.


  • Created Entity Group related systems for unit echelons, including Group Management, Group Billboard, and Group Organization.
  • Entity spawning system (can be used with multi-domain operations for certain entities to spawn other entities).
  • Entity representation system (a single entity (unique RideID) can be used to represent multiple entities / echelons).
  • Dismounted AgentMono units default health now 100; increased damage of default M4 and AK47 weapons to 50.

Level Select (Standalone or full-source distributions only)

  • Rearranged order of Advanced Integrations section in LevelSelect.unity and added new RideAtlas scene to top of the list.
  • Added various scenes not included previously and alphabetized scenes within sections.

Scenario Events

  • Modified ExampleMSELI to include scenario events that are created entirely in the editor. 
  • Added MSELI project related utility code to support future AI/Behavior development in RIDE directly.

Terrain System

  • Processed new terrain maps to be available for streaming.
  • Added TerrainLoader terrain list drop-down, with ability to override if desired. (Updated example scenes accordingly.)
  • Trees are now placed in the correct spot on terrain when spawned, rather than waiting until after all have been spawned.
  • DataCache is now a proper RIDE System. Added DataCache to RideSystems.prefab.


  • Upgraded to support Unity 2021.2.1f1.
  • Note, recommend clearing your local checkout \Library directories under \RideUnity and \NewProjectTemplate Unity projects prior to updating.


  • AI/Player tank combat system with improved firing logic, destruction event handling and shell impact explosion, looping smoke plum and sound effects.

VH Assets

  • Refactored various systems and pruned unused scripts.
  • vhAssetsDebugOnScreenLogSystem, vhAssetsFpsCounterSystem, and vhAssetsDebugConsoleSystem no longer spawn their respective prefab at startup; use gameobject reference instead.

Wispy Skybox


Added several Example scenes that highlight new RIDE capabilities, such as:

  • ExampleEntityGroup; instance and manage fireteam and squad unit echelons. 
  • ExampleUnityGroupBehaviours; demonstrates how to create groups and assign behaviours to groups entirely within the Unity editor.
  • ExampleUnityInterpretationSystem; shows how the Interpretation System can now be utilized entirely via the Unity editor.
  • RescueAtKorabela; work-in-progress toward implementing ScenarioMap tool for scenario authoring in the Unity editor.
  • TerrainMapCap; scene for capturing 3D terrain into orthographics map to allow map annotations. Initial implementation to load annotation results for agent placements on 3D terrain.

Fixed Issues

This release contains numerous bug fixes, including code refactoring and optimizations. Selected items of interest listed below.

AI Bots

  • TakeCoverMLAgent.cs updated to use MoveSystem to move agents to position; addresses missing animation issue in TrainingMLAgents and ExampleBehaviourComparision.


  • Deceased agents can no longer be selected and moved at run-time.


  • ExampleOrdnanceMenu, error upon detonation of instanced ordnance.


  • Addressed several out-of-order initialization bugs possible in standalone builds.

Known Issues

New defects or regressions of interest to be addressed in a future release.


  • BD_Ambush, IndexOutofRangeException error at runtime.
  • PlayerInputControllerDataMono, inconsistencies with PlayerInputController scene.
  • ExamplePhotonWithSpeechRecognition, “CANCELLED: Reason=Error” status messages when Start Recognition clicked.
  • Standalone builds, ExamplePhotonWithSpeechRecognition, after loading and exiting from scene, standalone app then becomes unresponsive upon app Exit selection at main menu.

Release Notes – 0.4 (August 2021)

We are thrilled to announce our latest release of RIDE, version 0.4!  Please read the below Release Notes and related changes for this version.


In order to access Terrain datasets, you must have a terrain key.  Please contact us directly in order to acquire a key.

A* Pathing

  • New “A* Pathfinding” option as new movement system type for units, with parity to ATLAS.
  • Option to toggle between A*, Unity and other Movement System types via scriptable.


  • New “DataMono” characters now being built by using bootstrappable data components for entities and no longer rely on AgentMono script (resolves many functions being too tightly coupled within a single class).
  • New data components included for the following functions: character info, character movement, entity inventory / item handling, entity animations, entity hit boxes and health, entity selection interface, entity camera views, user input and input handling.

Ground Classification Weather

  • Weather event simulation with dynamic unit re-routing based upon ground conditions. 


  • All 3rd party art / font / software / sound assets utilized by RIDE itemized with their respective licenses and split into base and per seat costs, the latter of which is currently optional, now documented in a concise spreadsheet included with distribution.


  • Added generic directional lighting rig to improve appearance of terrain maps.

RIDE Font and LevelSelect Updates

  • Integrate Audiowide and Orbitron fonts into RIDE.
  • Update RIDE logo and main menu buttons with Audiowide font.
  • Standalone build LevelSelect scene UI formatting and navigation improvements.

Session Recorder and Playback

  • Local user and networked versions of Session Recorder and Playback tools.

Systems Refactor

  • All RIDE systems used in a particular scene will appear in the Unity editor Hierarchy panel prior to run-time.
  • ‘RideSystems’ prefab object w/customizable options to determine which sub-set of systems will be utilized. (Terrain, networking, etc.)
  • See ‘RIDE Systems Upgrade Guide‘ below for more details. 

Terrain System

  • Process multiple new terrain maps to be available for streaming.
  • Ability to show shading options for Slope and Elevation (ATLAS feature within ExampleGridContourToggle).


  • Upgraded to support Unity 2021.1.17f1.
  • Note, recommend clearing your local checkout \Library directories under \RideUnity and \NewProjectTemplate Unity projects prior to updating.


Added several Example scenes that highlight new RIDE capabilities, such as:

  • BattleDrill_ReactToAmbush_DataMono
  • ExampleAgentCommandsFormationMovement 
  • ExampleAgentCommandsFormationMovement_Korabela
  • ExampleAstarPathing
  • ExampleGroundClassificationWeather
  • ExampleGroupsDataMono
  • ExampleMilitaryUnitsDataMono
  • ExampleMovementDataMono
  • ExampleRestNew
  • ExampleSessionPlayback
  • ExampleSessionRecording
  • ExampleSessionPlaybackNetworked
  • ExampleSessionRecordingNetworked
  • PlayerInputControllerDataMono

Fixed Issues

AI Bots

  • User instanced Blue/Red bots fail to patrol in Razish/Korabela Team Match scenes.
  • Repeating error when instanced opposing AI bot fires upon user in Razish/Korabela Team Match scenes.
  • Several lines of debug text and warnings whenever bot instanced by user in Razish/Korabela Team Match scenes.

Team Match

  • “Eliminated by…” references Agent ID value instead of NickName of network player.

Known Issues


  • ExampleDestructionYuma, M777 and Abrams projectiles fail to deform/destroy objects or impact crater terrain.
  • ExampleDebugMenu, Blue/Red unit commands induce multiple errors; Logging tests output as errors.
  • ExampleFace, error if cycling cameras; alternately, error if no camera found.
  • ExampleLogging, debug application and commandLine menu options induce multiple errors.
  • ExampleOrdnanceMenu, error upon detonation of instanced ordnance.
  • ExampleWaypointPathing, unable to instance waypoints with single unit selected; unit instanced instead.
  • TeamMatchAI, pair of errors if user selects Spectator mode.

RIDE Systems Upgrade Guide

RideSystems Prefab

When creating a scene that uses RIDE, add the RideSystems prefab to your scene. This prefab contains most prefabs commonly used in a RIDE simulation.

  • Once added, you can modify this prefab for your specific scene.
    • Remove RIDE systems that are not needed
    • Add new RIDE systems
    • Customize existing systems
  • Parameters for customizing individual systems have been exposed within the Inspector.
  • This deprecates the old method of deriving from RideBase, or calling CreateApiSystemMono() (see below).

RideSystem deprecated; use RideSystemMonoBehaviour

RIDE systems now derive from RideSystemMonoBehaviour.  This allows RIDE systems to be added to the scene and have customized parameters within the Inspector.

It is still expected for RIDE systems to use SystemInit(), SystemUpdate(), etc. functions.  Do not use the Unity Start(), Update(), etc. functions.

A new RideSystem function SystemAwake() is available for RIDE systems to use.  This function is called before all RIDE systems’ Start() function.  This behaves similar to Unity’s Awake() function. (ref:

RideBase deprecated; use RideBaseMinimal or MonoBehaviour

RideBase had many built-in systems and options, however their use didn’t offer many options for configuring.  You were somewhat locked in to what it provided.  A new base class RideBaseMinimal is provided to help migrate projects away from RideBase.  And in the future most of the functionality in RideBaseMinimal will migrate to separate systems.

For scenes, this means you don’t need to derive RideBaseMinimal if you do not need to, and can simply use MonoBehaviour.

CreateAPISystem() deprecated

This function, in ApiSystemMono.cs, is marked as deprecated.  This was the old method of initializing a large amount of RIDE systems.  This method created a few problems, notably the inability to specify which RIDE systems to include in each scene, and making scene specific customizations on RIDE systems.  This method was replaced with the RideSystems prefab mentioned above.

DataMono & Bootstrapping components

  • Individual units can now be placed in the scene during author time.  When these units are initialized at scene start, they are created as RIDE units, and all the parameters and customizations are applied.  This makes it easier to place and configure units in the world.
  • In order to instantiate these units dynamically via code, ensure the respective units are added to the RideSystems prefab > ResourceLoader prefab, Unit Prefabs section.

A* Pathfinding

This is a new option for pathfinding, utilizing the A* Pathfinding Project package.  This option is available as an alternative to using Unity’s native Pathfinding solution.  Future releases may have this option be the default.

In order to enable the A* Pathfinding option, go into the RideSystems prefab.  Select the UnityNavMeshMovementSystem.  In the Inspector, at the top, to the left of its name, de-select the checkbox.  This disables the system.  Now, select the UnityAStarMovementSystem and select the checkbox.  This enables the system.

Known Issues

  • Not quite feature par with Unity’s solution
  • Still working on loading/caching features
  • Units have trouble navigating on certain terrains

Future Benefits

Since the navigation is loaded at runtime, there’s no need to generate a navmesh offline.  This eliminates the cumbersome step of generating a navmesh for each scene.  

We can now load multiple terrains within a single scene.  Instead of a TeamMatch scene for each terrain dataset, we can now have a single scene, with a menu option to choose which terrain to use.

Release Notes – 0.3 (April 2021)

We are happy to release RIDE version 0.3!  Please read the below Release Notes and related changes for this version.


In order to access Terrain datasets, you must have a terrain key.  Please contact us directly in order to get a key and we will issue you one.

API Rename

Terrain System

  • Terrain datasets use a engine and platform optimized format for efficient loading, performance, and memory usage.
  • Terrain datasets stream from a cloud provider, so that terrain sets can be loaded from any client without needing to bundle the large datasets with the client executable.
  • Terrain datasets are accessible through a security key.  This key can be developer specific, allowing access to certain datasets, and for a given timeframe.

Cloud System

  • New framework for an intermediate, externally hosted service to act as a router to 3rd party services.  This simplifies the client by both simplifying the API and reducing dependencies on 3rd party SDKs.
  • New intermediate blob service that routes requests to Azure, Google and AWS blob file storage.
  • New intermediate signed URL service that creates temporary, signed URLs for accessing cloud services.  Route requests to Azure and AWS signed URL services.

Camera System

  • New Camera System added
  • Camera System Example added

Audio System

  • New Audio System added
  • Audio System Example added

Time Simulation System

  • New system for controlling simulation time added
  • TimeSimulation Example added

Logging System

  • New Pedagogical Logger Example added

Debug System

  • New Debug systems added:
    • DebugConsole
    • FPS Counter
    • DebugMenu
    • DebugOnScreenLog

Battle Drills

  • New Example showing Army doctrine Battle Drills
  • Demonstrates different capabilities such as:
    • Ambush / React to Ambush
    • Throwing Smoke Grenades


  • Numerous miscellaneous Examples added to highlight RIDE capabilities, such as:
    • AirSim Integration Example
    • Region System Example
    • Interpretation System Example
    • Demo04_SquadCombat Example
    • Particle System Example
    • BoundingOverwatch Example
    • Input_VehiclesSystem Example


  • Upgraded to support Unity 2020.2.3f1


TSS to RIDE Name Upgrade Guide

Phase 1

The first phase of renaming TSS to Ride. This list details the changes made:

  • using TSS.X becomes using Ride.X
  • TSS.View →  Ride.UI
  • TSS.Behaviours → Ride.AI
  • TSS.Entity → Ride.Entities
  • ExampleBase → RideBase
  • ExampleBase.InitTSS → RideBase.InitRide
  • api.serviceSystem → api.systemAccessSystem
  • Any class or struct starting with TSS becomes Ride
    • TSSid → RideID
    • TSSVector3 → RideVector3
    • etc
  • Any class, file, or struct with the word Service becomes System
  • All system and behaviour update functions now take delta time (dt) as a parameter

Phase 2

This phase renames the SVN repository, Unity project, and externals: