World Rail Control
What does and does not work accessibly in this game, checked against what Apple, Google and WCAG 2.2 AA ask for.
Summary
This game does not fully meet WCAG 2.2 AA yet.
Apple features with Yes: VoiceOver, Voice Control, Larger Text, Dark Interface, Differentiate Without Color Alone, Sufficient Contrast, Reduced Motion.
WCAG 2.2 AA, 55 criteria: 28 meets, 2 partly, 0 does not meet, 5 not tested, 20 not applicable.
What does not work yet
- With Relaxed pace, Wait for me or No time pressure, scores do not count for the leaderboards. With VoiceOver or Switch Control the first two are on by themselves; set them to Off to count.
How to set it up
- Start screen, Accessibility button. The first time, a card introduces that button as well. You cannot reach it from the pause screen.
- Colour blindness: standard, red-green or blue-yellow. Symbols are always on.
- Low vision: larger symbols and lines, high contrast (Auto, On, Off), dark field (Auto, On, Off).
- Light and motion: reduce flashing, reduce motion (both Auto, On, Off), water animation.
- Pace and controls: relaxed pace and Wait for me (both Auto, On, Off; Auto = on with VoiceOver or Switch Control), No time pressure, extra vibration. With any of those three, scores do not count for the leaderboards.
- Keyboard or controller: left and right choose a train, up and down a track, Return sends it, D lets a train depart, I taps ice loose or chases an animal off, Esc clears, space pauses.
- During a shift: pause button, 2× button and the ? button.
What we checked
Apple asks that all common tasks can be done with a feature. These are the common tasks of this game.
- First launch: start screen, Accessibility intro card, How to play
- Settings: Accessibility, language and sound
- Choosing a station and level, or Endless and Today's shift
- Playing a shift: choosing a train, sending it to a track, letting it depart
- Resolving hazards: ice on a switch, an animal on the track, a through train, maintenance work, coupling
- Pausing and dealing with the end card
Apple: features on the App Store
A feature only gets Yes if you can do all common tasks with it. iPhone and iPad.
- VoiceOver Yes
Trains, tracks, frozen switches and animals can be operated. VoiceOver reads every warning (through train, maintenance work, frozen switch, animal, collision danger, wrong track, late, clock running out) and says for each track whether the route crosses another train. Wait for me holds the game while you choose a track.
- Voice Control Yes
Dragging is not needed. Every train shows its number next to its label: say 'Tap 4', then 'Tap Track 3'. The list of trains is refreshed, also when only Voice Control is on.
- Larger Text Yes
Menus and cards scale without limit and scroll, the HUD to over 200% and the labels on the playing field to 200%. From the larger sizes on, button texts and titles wrap onto more lines instead of shrinking, and the Auto, On and Off choices stack under each other.
- Dark Interface Yes
Menus, cards and the HUD are always dark. On Auto, the dark field follows iOS Dark Mode.
- Differentiate Without Color Alone Yes
Every group always has its own symbol next to the colour (circle, diamond, square, star), plus track numbers. There are two colour modes. Warnings also have text or a shape.
- Sufficient Contrast Yes
Under text, the group colour is darkened just enough for at least 4.5:1, in every colour mode: labels, track numbers on the platforms, the queue and warnings (blue 5.0, coral 5.1, purple 4.9, red 4.7). Floating texts sit on a dark background.
- Reduced Motion Yes
Reduce motion follows iOS: water, weather particles, pulsing buttons, floating texts, the pictures in How to play and the start screens stand still or fade. The trains do run, because that is the game. The trains behind the menus then keep running at half speed.
- Captions Not applicable
No video and no spoken text, only short sound effects.
- Audio Descriptions Not applicable
No video.
Google: Android
Google asks, among other things, for descriptions for TalkBack, touch targets of at least 48 dp, enough contrast and text that scales.
This Android version has not been released yet. We checked the code.
- TalkBack Partly
Trains, tracks, frozen switches and animals are buttons with actions ('To track …', 'Depart'), and warnings are read aloud, as on iOS. Not tested on a device.
- Switch Access Partly
The same buttons as TalkBack; on Auto the relaxed pace and 'Wait for me' then apply. Not tested.
- Voice Access Partly
Tapping is enough (first the train, then the track); dragging is never needed. Whether Voice Access finds trains and tracks by name has not been tested.
- Keyboard and game controller Partly
The same keys as on iOS (arrows or L1/R1, Enter/A, Esc/B, space). Not tested with a real keyboard or controller.
- System font size Partly
Menus, cards and the play bar scale with it and rearrange for large text. Not tested on a device at 200%.
- Contrast Yes
The same colours as iOS: text on a group colour reaches at least 4.5:1 in every colour mode.
- Remove animations Partly
Is read and turns on Reduce motion and Reduce flashing under Auto. Not tested on a device.
- Not by colour alone Yes
Every group has its own symbol (circle, diamond, square, star) and track numbers, as on iOS.
WCAG 2.2 AA
WCAG was written for the web. For apps we follow the guidance in WCAG2ICT. Level AA has 55 criteria.
1. Perceivable
- 1.1.1 Non-text content Level A Meets
Buttons, counters and the queue have text. The pictures in How to play are hidden, with the explanation given in text. Whether a route crosses another train is given in text and read aloud, as are warnings and points.
- 1.2.1 Audio-only and video-only (prerecorded) Level A Not applicable
No audio or video with information.
- 1.2.2 Captions (prerecorded) Level A Not applicable
No video.
- 1.2.3 Audio description or media alternative (prerecorded) Level A Not applicable
No video.
- 1.2.4 Captions (live) Level AA Not applicable
No live media.
- 1.2.5 Audio description (prerecorded) Level AA Not applicable
No video.
- 1.3.1 Info and relationships Level A Meets
Titles and headings of all screens and cards are headings for VoiceOver; the play screen has a heading with the level and station. Settings are buttons and switches with their names.
- 1.3.2 Meaningful sequence Level A Not tested
The order of trains, tracks and hazards is built logically, but the order between the playing field and the HUD has to be checked on a device.
- 1.3.3 Sensory characteristics Level A Meets
The explanation names the symbols (circle, diamond, square, star) and the track numbers; the colour names are added as those of the standard colours. Top and bottom are also called north and south.
- 1.3.4 Orientation Level AA Meets
iPhone in portrait and landscape, iPad in all orientations. No fixed orientation in the code.
- 1.3.5 Identify input purpose Level AA Not applicable
No input fields.
- 1.4.1 Use of colour Level A Meets
Groups always have a symbol and track numbers. Status is also given in text, and signals always have red at the top.
- 1.4.2 Audio control Level A Meets
Only short sounds of less than 3 seconds, no music. Sound can be turned off and mixes with your own music.
- 1.4.3 Contrast (minimum) Level AA Meets
Text on the cards reaches 11:1 or better (dimmed 6:1). Labels on the group colours reach at least 4.5:1 in every colour mode, including the through train's red label. Floating texts sit on a dark background.
- 1.4.4 Resize text Level AA Meets
Menus, cards and the Auto, On and Off choices scale without limit, the HUD to over 200% and the field labels to 200%. Button texts and titles wrap onto more lines instead of shrinking. The Studio Nolu credit scales too.
- 1.4.5 Images of text Level AA Meets
Text is real text. The logo and the text in the illustrations in How to play are the exception; that explanation is also given in text.
- 1.4.10 Reflow Level AA Meets
Menus scroll and the HUD rearranges itself. Button texts, titles and the Auto, On and Off choices wrap onto more lines. The playing field is two-dimensional and falls under the exception.
- 1.4.11 Non-text contrast Level AA Partly
Edges of buttons, choices and page dots reach at least 3:1. Group colours against grass reach 1.2 to 1.5:1, but always have a white or dark edge and a symbol. The playing field itself has not been fully measured.
- 1.4.12 Text spacing Level AA Not applicable
Does not apply to native apps without a markup language (WCAG2ICT).
- 1.4.13 Content on hover or focus Level AA Not applicable
No content that appears on hover or focus.
2. Operable
- 2.1.1 Keyboard Level A Meets
The game has its own keys: left and right choose a train, up and down a track, Return sends it, D lets a train depart, I deals with ice or an animal, Esc clears, space pauses. Also with a game controller. Menus work with iOS Full Keyboard Access.
- 2.1.2 No keyboard trap Level A Not tested
Nothing in the code holds the focus, but this has not been checked with a keyboard.
- 2.1.4 Character key shortcuts Level A Not applicable
No single-character shortcuts.
- 2.2.1 Timing adjustable Level A Meets
Every train has a small clock, but No time pressure turns it off: trains are never late. Wait for me holds the game while you choose a track, and pause always works. What a banner says is also given at the tracks and trains and read aloud.
- 2.2.2 Pause, stop, hide Level A Meets
Water, weather, pictures and the station behind the menus stand still with Reduce motion. In the game, movement is part of the rules, and pause stops everything.
- 2.3.1 Three flashes or below threshold Level A Meets
Lightning is a single soft glow of half a second, at most once every 4 seconds; no rapid flashes. Other blinking lights are 2 times per second or slower. Reduce flashing removes the lightning entirely.
- 2.4.1 Bypass blocks Level A Not applicable
No repeated blocks across multiple pages in a native app (WCAG2ICT).
- 2.4.2 Page titled Level A Meets
Every screen and card has a title, including the play screen (for VoiceOver). VoiceOver moves to the top when a new screen appears.
- 2.4.3 Focus order Level A Meets
Cards over a screen (pause, briefing, end card, intro, How to play) are modal: the focus stays on them. On a new screen or card the focus starts at the top.
- 2.4.4 Link purpose (in context) Level A Meets
Buttons have a clear text or a label.
- 2.4.5 Multiple ways Level AA Not applicable
Applies to sets of pages, not to a single app (WCAG2ICT).
- 2.4.6 Headings and labels Level AA Meets
Titles and labels say what is in them.
- 2.4.7 Focus visible Level AA Not tested
The app does not turn off its own focus style anywhere, but this has not been checked with a keyboard.
- 2.4.11 Focus not obscured (minimum) Level AA Not tested
Not checked with a keyboard; the HUD can cover parts of the field.
- 2.5.1 Pointer gestures Level A Meets
Dragging and swiping always have an alternative with taps or buttons. No multi-finger gestures needed.
- 2.5.2 Pointer cancellation Level A Meets
Menu buttons work on release. On the playing field a tap also only acts on release; slide your finger away and nothing happens. Dragging to a track only counts when you let go on a track.
- 2.5.3 Label in name Level A Meets
For buttons, the name matches the text. Every train shows its number, and 'Tap 4' works alongside the full name Intercity 4.
- 2.5.4 Motion actuation Level A Not applicable
No control by moving the device. Folding the Duo only changes the layout.
- 2.5.7 Dragging movements Level AA Meets
Dragging is never needed: tap a train and then a track.
- 2.5.8 Target size (minimum) Level AA Partly
Menu buttons are at least 24 points, most 44. The tap areas on the field are at least about 44 units wide, but the field scales with the screen and has not been measured.
3. Understandable
- 3.1.1 Language of page Level A Meets
The language follows the device or your own choice (11 languages), and the app passes that language to VoiceOver, also for announcements.
- 3.1.2 Language of parts Level AA Not tested
No language markup in the code. Station names are proper names; whether the rest is right has not been listened to.
- 3.2.1 On focus Level A Meets
Receiving focus starts nothing.
- 3.2.2 On input Level A Meets
Settings only change what you choose, and that is stated. No unexpected change of screen.
- 3.2.3 Consistent navigation Level AA Not applicable
Applies to sets of pages (WCAG2ICT).
- 3.2.4 Consistent identification Level AA Not applicable
Applies to sets of pages (WCAG2ICT).
- 3.2.6 Consistent help Level A Meets
How to play is in fixed places: start screen, HUD and pause.
- 3.3.1 Error identification Level A Not applicable
No forms.
- 3.3.2 Labels or instructions Level A Not applicable
No input fields.
- 3.3.3 Error suggestion Level AA Not applicable
No forms.
- 3.3.4 Error prevention (legal, financial, data) Level AA Not applicable
No purchases (turned off), no legal or financial steps.
- 3.3.7 Redundant entry Level A Not applicable
Nothing is filled in.
- 3.3.8 Accessible authentication (minimum) Level AA Not applicable
The app has no sign-in of its own; Game Center is optional and handled by the system.
4. Robust
- 4.1.2 Name, role, value Level A Meets
Buttons, switches, choices and the elements on the field have a name, role and value. The leaderboard on a station card in Endless is an action of that card.
- 4.1.3 Status messages Level AA Meets
New and ready-to-depart trains, choosing a train, banners, warnings, collision danger, wrong track and late are announced. At the end of a shift the focus moves to the end card.
How we checked this
We reviewed the source code of the game on the date above. This is our own review, not an audit by an independent party, and we have not yet tested this on devices with assistive technology. That is why it says "Not tested" where the code alone gives no answer.
We update this page whenever the accessibility of the game changes.
Running into a problem, or is something wrong here? Email us at hello@studionolu.com.