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.

Supporting mouse input on platforms where it’s available opens up the possibility of being able to to steer left and right using respsective mouse movement, for example.




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.

For example players could remap the reverse action to the input that was previously assigned to handbrake, if they thought they’d need to reverse more than handbrake, 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.”

You could allow players to swap the steering functions of the left and right sticks, as they might find one more comfortable to use than the other. You could also let plays assign analog actions like steer, to digital inputs like the buttons on a gamepad. Or perhaps accelerate could be mapped to the up direction on an analog stick, instead of a seperate button or trigger, allowing the player to reduce the total number of inputs required if that analog stick is concurrently used to steer.




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.

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 showing the player to what degree the steering or braking of a vehicle will be affected by varying levels of steering or braking assists.




5.6    Testing Configurations

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

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

Adding a practice track without time contstraints or fail states would allow the player to become more comfortable with their setup without the risk of making potentially irreversible mistakes.




6.5    Analog Action Assists

“Give players options to assist their control of analog 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 similaly 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 postion 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 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 other sections like menus are accessible with 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.

You could support the option to have the vehicle automatically accelerate without input from the player, so they no longer need to use an input to accelerate at the same time as using an input for other actions, such as steering.




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 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.



  1. Back to Starting Points ↵