Competence was not in doubt
Teaching a trained driver how to perform a manoeuvre they already know is a waste of their day and produces a completion tick that means nothing.
A first-person desktop driving simulation built with Myriad Global Media for an industrial fleet operator. It opens in assessment mode, runs a driver through a randomised selection of real incident scenarios without telling them what is being tested, and only then reveals what they missed and assigns the training modules that address it. Results are written to the client’s own learning management system.
This was specified as supplemental training for drivers who had already qualified on a range of vehicles. The open question was never whether they could execute a manoeuvre. It was whether they would recognise, in the moment, that the situation called for one.
Teaching a trained driver how to perform a manoeuvre they already know is a waste of their day and produces a completion tick that means nothing.
The gap that causes incidents is not skill. It is failing to read a situation early enough for the skill to matter.
The brief was explicit that the trainee should not know what was expected of them. The moment you signpost the hazard, you are testing obedience rather than judgement.
One line in the specification set the architecture: provide scenarios where the trainee is not aware of what is expected, so it can be established whether they know which manoeuvre to use.
Most training software teaches and then tests, which measures whether someone was paying attention ten minutes ago. This was built the other way round, and everything useful about the output follows from that decision.
The application opens in assessment mode and cycles through a randomised selection of scenarios across one journey or several, with the driver at the wheel of different vehicles along the way.
The result is not a score out of a hundred. It is a list: obstacles passed, and by name the ones that were not — soft verges, tote strap. A percentage tells a supervisor nothing they can act on.
Each missed item surfaces its own module: a short guided walk-through of the correct handling, with the relevant legal and process detail attached. Nobody sits through the modules they did not need.
The scenarios were not generic road-safety set pieces. Each one was specified down to the vehicle configuration, the load state, the road geometry, the weather and the time of day, because those are the variables that decide the outcome.
A tractor unit and tanker trailer at night in rain, approaching a crossing where the warning lights are flashing but the barriers have not come down. Around 40 mph, roughly thirty metres out.
An 8,000-gallon tanker with no baffles, three-quarters full, dark and raining, a 35 mph city street, a yellow light the driver accelerates for, and an S-curve. The unit goes over on its side.
A flatbed of totes, strapped down, with a two-inch cut in one four-inch strap that the driver has not noticed. It lets go on a right turn and puts a tote in the intersection.
A tractor and 44-foot tandem trailer turning off a grid road onto a narrow field approach with steep shoulders, where the geometry leaves almost no margin.
A narrow road with soft shoulders, and an oncoming vehicle that pushes the driver further towards the edge than the shoulder will carry.
The identical failure mode arrived at differently — no oncoming vehicle, just a driver drifting wide. The same recovery, a different trigger.
Half of these are about what the load does, not what the driver does. Liquid surge in a part-filled unbaffled tank, a strap already compromised before the shift began, a shoulder that will not hold the axle weight. A poster cannot teach load dynamics. A simulation where the tanker actually rolls can.
The difference between training software that survives its second year and training software that does not is whether it produces evidence somebody else can use.
Because a result is a list of named obstacles rather than a mark, there is no interpretation step between the assessment and what the driver is asked to do next.
A learner sees their assigned modules and how many remain, alongside optional extras such as the controls tutorial and individual scenario practice.
Every assessment is retained with its date and its missed items, so improvement across attempts is visible rather than inferred. Reports are written to the client’s own LMS.
The scenario selection is random, which is what makes the assessment meaningful — and it is also seeded, which means any given assessment can be replayed exactly as the driver saw it. If a result is ever questioned, the run can be reproduced rather than argued about.
Depots and training rooms do not reliably have internal network access. Sign-in offers an offline path from the first screen rather than treating a missing network as an error state.
Trainers see their learners, open an individual’s record and assign modules directly. Anything an instructor needs to do weekly should not require a developer.
A stand-alone desktop application for Windows or Linux, driven with keyboard and mouse, integrating with the client’s learning management system over the internal network.
Chosen for vehicle physics and terrain rather than for graphics.
Terrain physics is not decoration here — the soft-shoulder scenarios only work if the ground under the wheel behaves differently from the road.
A Bézier spline library defines the road geometry, which is what makes an S-curve a tunable parameter rather than a modelling job.
Used for framing the moment of failure and for the scripted guidance in the training modules.
Worth stating plainly: this was a desktop simulation, not a VR one. The executed scope specifies a stand-alone Windows or Linux computer, and the delivered project carries no XR plug-in packages. For an assessment that has to run on whatever machine a depot already owns, that was the right call.
If you need to know who can do the thing — not who attended — the assessment design matters more than the graphics. We can help you specify it before anyone builds anything.