Sprocket

Sprocket 0.2.40

Version
0.2.40
Version Date
Sept. 30, 2025
Links

Patch Notes

0.2.40.4 - Crew Role Rework (Experimental)

Hi all,

This update rewrites some crew systems, making them more stable (long-term), tidier on my end, and easier to introduce new types of roles with. It sets the groundwork for the return of commanders and radiomen, as well as multiple loaders assigned to one cannon.

Reworked role system

Crew seats now define a 'role', with all tasks assigned to the seat being the role's tasks.

Crew members can switch between all tasks in the same role instantly, as the new distance limits ensure all tasks in a role will be within reach. This lets tankettes work better as a gunner/loader will be much more responsive, the only drawback being the inability to move the cannon while loading.

This update unties the crew members from their seats, so they can switch seats now.
The roles, however, are locked to the seat which created them and will be taken on by whatever crew member is in the seat.

This means crew members can switch roles.
Switching seats will take some time, scaling with the distance the crew member needs to travel.

Role switching is done automatically based on the priority of a role, which is worked out by the current priorities of its tasks. Tasks change priority based on user input, so when fire is held and the gun is loaded, the gunner role will be top priority. Otherwise its priority is set below the loader's priority to prompt a switch to load the cannon.

Upon a seat suddenly becoming empty, a crew member assigned to a lower priority role will automatically move to the empty seat and take up the role.

In practice, most tanks go up in flames after the first shot and no role switching takes place. Where it really shines is near the end of a long scenario when a stray shot manages to exclusively take out your driver. You can now limp to the end of the scenario instead of your crewmembers looking at each other and shrugging.

New crew task limits

Gunner
  • Requires a sight to be placed on the vehicle.
  • The gunner's eyes must be within 1m of the sight.
  • Sights can be placed at any distance from the cannon, with the drawback being parallax issues.
Loader
  • The loader's shoulders must be within 1m of the breech loading position.
Driver
  • Requires a view port to be placed on the vehicle and assigned to the driver. This can be any viewport, including cupolas.
  • This viewport can be placed anywhere, only requiring a clear line of vision forwards.
  • The driver's eyes must be within 1m of the driver's viewport.
Gun Layer
  • One hand must be within 1m of of the gun layer's shoulder.
  • The laying drive must be within 1m of the trunnions.

Changes
  • Added options to disable the new posture constraints and operation distance limits.
  • Added a new battle UI panel to show all roles in the vehicle, which roles are manned and any role switching going on.
  • Upon being knocked out, crew members will now have their roles taken over by another crewmember with a lower priority role. The time taken depends on the distance between the roles.
  • Crew members now switch between their role's tasks instantly.
  • Crew seats can now be left empty, allowing roles to be defined and be switched to when needed. This lets crew members operate parts outside of the new distance limits.
  • Holding aim lock will now prevent the driver from switching to a gun layer role when there are no drive inputs.
  • Posture/Operation gizmos are now hidden if their respective posture/operation editor dropdown is collapsed.
Fixes
  • Fixed traverse motors not being highlighted as invalid when invalid.
  • Fixed motor selection falling under the 'Turret ring' category, instead of the 'Motor' category.
  • Decals are now hidden by default in the interior overlay.
  • Fixed 3D assignment actions. (Broke in 0.2.39)
  • Fixed maxed-out vehicle descriptions causing crashes on subsequent vehicle loads if 'enter' was pressed after the field limit was reached.
  • Ammo racks are no longer highlighted as invalid while obstructed with 'Place anywhere' enabled.

This is the last of the major reworks I had planned for the 0.2 beta, moving on to general fixes and polish now.

This one ended up taking a while due to life getting in the way (moving house), hopefully back on track now. Thanks for the continued patience.

- Hamish