Starting Point – Driving

Whilst many of the modules in the SpecialEffect DevKit might be applicable to your game, we’ve compiled a selection of modules which may be considered particularly relevant for many games which contain driving.

The modules listed below can be expanded to reveal information on how they might be applied to various driving mechanics. This can be used as a starting point when interacting with the DevKit, if suitable for your game.


1.2    Supporting Multiple Input Devices

“Give players a choice of different input devices to play your game.”

Aim to support as many of the input devices available on any given platform, as players may find different input devices more accessible or more comfortable to use than others. Those different devices may also offer additional input methods that players may prefer to use, from analog sticks and buttons, to touch or motion.

When developing for console, gamepads will typically be supported by default, which allows players to use an analog stick to steer. Platforms are increasingly including support for additional input devices, such as both mouse and keyboard now being available to developers as an alternative input device on some consoles. Supporting mouse input on platforms where it’s available opens up the possibility of the player being able to steer left and right using respective mouse movement instead, for example.




1.3    Simultaneous Input

“Let players use more than one input device at the same time.”

The more input devices your game supports, the greater the chance the player will be able to use the input device they prefer. However, some players may find certain parts of different devices more accessible than others, so might benefit from being able to play with more than one of the same or different devices at the same time, using inputs from each device for different actions.

This method of play can be supported by allowing multiple devices to be used concurrently, acting as if only one device were being used. For instance, when driving some players may wish to separate different actions between two different input devices, so they might use the analog stick on one gamepad to steer the vehicle and then use the triggers or buttons on another gamepad for actions like accelerate and brake.

One use-case for this might be a player positioning the first gamepad to allow controlling an analog stick with one part of their body, such as their chin, and then holding or positioning the second gamepad near their hands for access to other inputs. By supporting simultaneous input in this way, a setup like this becomes possible for players.




2.2    Remapping

“Ideally, let players remap any action to any input, at any point in the game.”

Some players may struggle to physically reach or have accurate control over certain inputs so may prefer to use other inputs instead. By allowing players to change which inputs control which actions, you allow them to create a layout that suits them.

You can present remapping as changing the input that performs an action. For example, by letting the player decide which input to use for accelerate. Players may want to map the actions they consider most important to the inputs they find most easily accessible, so prioritise making the most critical actions in your game remappable.

For instance, a player might decide to remap the accelerate action to the input that was previously assigned to brake, if they thought they’d need to accelerate more than brake, and that input was more comfortable for them.




2.5    Interchanging Analog with Digital

“Let players remap digital and analog inputs, and swap between the two.”

As well as remapping digital inputs, such as the A and the Y button, allow players to remap analog inputs such as triggers and analog sticks. For example, you could let players swap the steering functions of the left and right sticks, as they might find one more comfortable to use than the other.

Often it is also best to include interchangeability between analog and digital inputs where appropriate, as this might be useful for players who prefer pressing a button to moving a stick in certain directions to steer, for example. Or perhaps accelerate could be mapped to the up direction on an analog stick, instead of a separate button or trigger, which incidentally would allow the player to reduce the total number of inputs required if that analog stick is concurrently used to steer.




3.3    Continuous Holds

“Provide alternative options for actions that require an input to be continuously held.”

Some games will require you to hold an input down to continuously perform an action. An alternative to this interaction might be to press the input once initiate the action, and then again to complete it.

For instance, perhaps your game requires the player to hold the trigger on a gamepad down to continue accelerating. You could provide an option that allows the player to just press the button once to start accelerating, and then again to stop, rather than holding the button down indefinitely which some players might find difficult.




4.2    Inner Deadzone

“Let players adjust the inner deadzones of each input to suit their movement.”

The inner deadzone is an area between two distinct values of an analog input, in which the bound action will not activate. By allowing players to adjust this area, players can choose the amount of input required to initiate an action.

Having the ability to increase the inner deadzone can be useful for players with involuntary movement trying to avoid unintentionally performing an action. Whereas decreasing the inner deadzone can be useful for players who would prefer to initiate an action with less input from the device, and therefore less physical movement overall.

You could allow the player to adjust the inner deadzone of the stick which is mapped to the steering action. This will determine how far the stick needs to be pushed, and therefore how much movement is required, before a vehicle will start steering.




4.3    Outer Threshold

“Adjusting the outer threshold can help players to perform an action fully.”

The outer threshold is the opposite of the inner deadzone, in that it’s an area between two values of an analog input where an action will activate at its maximum value. The point at which a vehicle will start steering at the maximum amount, for example.

Letting players adjust this area can allow players to reach the maximum value of the action with less physical movement. For instance, some games with driving mechanics feature analog acceleration, often originally mapped to the trigger on a gamepad. You could allow the player to adjust the outer threshold of the trigger mapped to acceleration. By reducing this value, the trigger needs to be pushed less far before the vehicle will accelerate at its maximum amount, which allows players to configure analog settings to match the amount of physical movement that is preferable for them.




4.5    Action Values

“Let players modify the maximum and minimum value of an action if possible.”

Many analog settings provided by developers do not make it possible to modify the minimum and maximum values the action can take, only how an input responds at, and between those two values. This is because some actions need to have a set maximum or a minimum value, as exceeding this could have an adverse effect on the game or might give the player an unfair advantage in a competitive match.

However, for those actions where the maximum or minimum value could be adjusted, allowing players to modify these can offer improved control. One way to do this might be to multiply the value of the action by a certain factor at every input value, so the action becomes more or less sensitive overall.

For instance, in a driving game you might let players adjust the overall steering sensitivity, which will either increase or decrease the speed at which they turn. This can give players a greater level of control over the vehicle, and a better chance of being able to play your game successfully overall.




5.3    Game Information

“Support players during gameplay with optional status updates, warnings, hints and guides.”

Providing players with information about your game, the various systems it contains, and how best to approach certain situations, might help reduce the amount of overall input required to play.

There are of course many ways of presenting information about the game to the player, so think about what options you could provide to prepare players for any challenges they might face. You might decide to give the player information that more deliberately guides them on how best to progress in your game.

If your game features driving around a track you could provide an option which enables a racing line showing the optimal path that the player should take to complete the track as quickly as possible. You could also have this line feature information on when the player should ideally start braking, and to what degree, to make it around a corner successfully. Or similarly, if your game involves driving across an open world, you could show them the optimal route they can take to get to an objective.




5.5    Settings Information

“Ideally, let players preview and adjust settings before starting, and throughout your game.”

For the player to make the most of the options and settings that your game supports, you should consider how easy and understandable it will be for them to find and adjust these settings.

Consider allowing players to adjust settings, and particularly accessibility settings, at the very start of your game. This is a great way of making players aware of the settings your game contains and also means players will have immediate access to options they might require in order to play.

You could provide a dedicated setup menu that includes accessibility preset options that configure multiple settings at once. This can be useful for players who would like to start with as many of the settings enabled that they might benefit from as possible, and then perhaps customise things as they become more familiar with the game.

To help players understand what the purpose of each setting is, give clear descriptions for what each setting does and explain what effect adjusting the setting will have. You could even have a visual demonstration to show the effect.

For example, in games that feature driving you might show players to what degree the steering or braking of a vehicle will be affected by varying levels of steering or braking assists, allowing them to make an informed decision on what options might work best for them.




5.6    Testing Configurations

“Give players options to test their setups while becoming familiar with your game.”

In order for players to get familiar with your game, with the various actions they can perform, and to test how adjusting the various settings will affect their experience, consider adding a consequence-free area or mode for the player to practice in.

For example, adding a practice track without time constraints or fail states would allow the player to become more comfortable with their setup and get a sense for the driving mechanics in your game, without the risk of making potentially irreversible mistakes.

Additionally, by also allowing the player to configure settings in these areas they can immediately see the results of changing each first hand, allowing them to more easily experiment and find a setup that’s accessible for them, without the potential pressure that the main experience might bring.




6.3    Game Difficulty

“Let players reduce the difficulty of the game generally or in specific contexts.”

For elements in your game that are not controlled by the player, allow them to adjust the way they function and what level of challenge they provide.

Providing different difficulty levels that can encompass a wide range of changes can be a simple way for the player to alter the game experience to match the level they would like to play at. However, while global difficulty presets can be useful, it can also be useful to provide individual options for each area of your game that a player might find difficult.

For instance, if your driving game features the player competing against AI opponents, you could provide options that affect the speed or aggresivness of those opponents, allowing the player to tailor the game to suit their ability and to play the way they want to. Or perhaps your game contains time limits, where the player needs to reach a certain point or achieve a specific number of things within a certain time frame. In these cases, consider allowing players to adjust or remove those time limits, letting them play at a pace that suits them.




6.5    Analog Action Assists

“Give players options to assist their control of analog actions.”

For actions in your game that are controlled by analog inputs, consider providing options that make it easier for the player to have a good level of control over those actions.

There may be players who don’t quite have the required dexterity with an analog input to optimally perform an action, and so would benefit from options to have these actions assisted in some way.

Steering a vehicle round a track for instance might need to be performed with a high degree of precision in order to progress. One method to reduce the level of precision needed could be to give players the option of enabling steering assists. How these assists work will depend on your game, but often it involves detecting where the player is trying to steer and then adjusting exactly how much the vehicle steers to closer match an optimal route.

You could also apply the same idea to other driving mechanics that your game contains, such as assisting the player when accelerating or braking. Detect when the player is nearing a corner and automatically apply an appropriate amount of brakes to get round successfully, based on the current speed and in relation to any braking the player is applying themselves.




7.2    Alternative Actions

“Offer players alternative ways to perform actions.”

There may be actions in your game like steer, accelerate, and brake that require the use of certain inputs or input interactions that some players may find challenging. Providing alternative ways to perform these actions might simplify your game and allow more people to access it.

For example, you could allow players to use the position of a cursor to steer the vehicle, instead of direct input. So, the vehicle would steer left proportional to how far the cursor is on the left side of the screen and similarly steer right whilst on the right side. You could go a step further and apply the same method to accelerate and brake with the vertical position of the cursor, accelerating when the cursor is in the upper area of the screen and braking whilst in the lower area. Supporting this method of control and allowing it to be configurable might also allow players using eye gaze devices to play on platforms where they’re supported.

If supporting this option for gameplay, you should also ensure that other sections of your game like menus are accessible with just cursor movement and a select action.




7.3    Automatic Digital Actions

“Allow players to automate certain digital actions.”

Even when alternative ways to perform certain actions are available, some players may find there are still too many actions overall for them to play successfully. In these cases, it might be possible to reduce the number of actions the player needs to perform by partially or fully automating them. Which could in turn reduce the total number of inputs required to play your game.

There are a number of ways you might automate digital actions, and how this is implemented will depend on the nature of each action and each game.

In games that feature driving mechanics, an option to have the vehicle automatically accelerate without input from the player could be provided, allowing players to avoid input interactions which they might otherwise find too difficult. This also means they no longer need to use an input to accelerate at the same time as using an input for other actions, such as steering or perhaps using an item in a kart racing game.




7.4    Automatic Analog Actions

“Allow players to automate certain analog actions in a specific or optimal way.”

In a similar way to automating digital actions, analog actions can also be automated. Analog actions however can take any number of values, so you will need to decide how best to automate them given the current actions available in your game. You might decide to let players configure how analog actions are performed in a specific way, or you might have them be performed in an optimal way instead.

For example, in the case of driving you might let the player move on a set or predetermined path to reach a particular destination. Once activated the game will adjust the player’s movements to keep them on the path. If your game makes use of a map for navigation, you could let players set a waypoint and have them automatically follow roads and paths to reach that point.

You could also let players enable a high level of steering assist, which will guide the vehicle’s steering to keep them near the optimal driving line and allowing races to be completed without the player having to manually steer.

In a similar way to this you could also have an option to alter the path of the player to avoid obstacles or areas that might slow them down. If the player is going to collide with something and might not be able to move an analog input quickly enough to avoid it, have the player automatically steer around it.





We hope this has been useful for getting started when considering the motor accessibility of your own game. If you are interested in additional areas of motor accessibility that may also be related to your game, you might want to use our Checklist. This can be used to assess which motor accessibility options your game currently supports, and to determine what could be supported in the future.

  1. Back to Starting Points ↵