STEAM GROUP
Puzzle Lovers puzzlelovers
STEAM GROUP
Puzzle Lovers puzzlelovers
152
IN-GAME
1,095
ONLINE
Founded
9 August, 2016
Language
English
 This topic has been pinned, so it's probably important
Dohi64 15 Feb @ 11:56am
3
5
3
Basic Functionality and Accessibility Guide v1.1 (Not only for devs)
Basic Functionality and Accessibility Guide v1.1
Compiled by Dohi64 for the Puzzle Lovers Steam group and curator

First published: February 15, 2024
Last updated: March 1, 2024

Link to share:

Table of Contents
  1. Intro & TL;DR
  2. Undo/Rewind
  3. Saving
  4. Controls
  5. Display
  6. Text
  7. UI
  8. Graphics/Cutscenes
  9. Audio
  10. Difficulty/Progression
  11. Achievements
  12. Informative Store Page/Communication
  13. Hall of Fame
  14. Version History

1. Intro & TL;DR

Based on decades of playing thousands of games, with years of focus on puzzle/adventure titles, plus a lot of communication with developers and players from all walks of life. We've also asked some of them about this list and their ideas before publication. It's a community effort and by no means complete or 'official', but hopefully some aspiring and even practicing developers will find some utility in it and it might also raise awareness among players.

Every game is different (more or less), not everything applies to everything and what takes minutes to add/change in one title might simply be impossible in another, but options are good and the more accessible a game is, the better for everybody. Even if it takes a bit of extra effort, make sure your game has at least the following if applicable:

  • Unlimited undo
  • Some sort of save system to avoid losing progress
  • Alternate control methods (mouse, keys, gamepad)
  • Separate volume settings (not only on/off toggles)
  • Full screen and windowed modes
  • Instant and silent text display
  • Timer toggle (to hide it, can still run in the background)

Set personal preferences as defaults but within reason let people play the way they want or can. A properly working game doesn't guarantee professional and/or financial success, but it shows you are competent, dedicated and worthy of support.

If you think something's missing or have other observations, share them below. And if you found some of it useful or interesting, show the post to developers and other players. Thanks for reading!

2. Undo/Rewind
  • Undo doesn't make a puzzle easier, only less tedious, and it's always optional.
  • Unlimited.
  • Instant (or have a toggle for the animation).
  • NEW: Holding undo should take back multiple steps. Can have a toggle to please everybody.
  • Works from a fail state (don't end the level after a fatal mistake).
  • Ideally works after a level reset (e.g.: step 1, step 2, reset, step 1, then undo can still lead to step 2 of the previous attempt).
  • Redo is good to have too.

3. Saving
In general:
  • Respect the player's time. Don't punish them because they have to or want to quit at any given time.
  • NEW: Ask for confirmation before starting a new game, especially if doing so would erase existing progress.
  • NEW: If you have both New Game and Continue in the main menu, Continue should be selected by default to avoid accidents.
  • Don't store progress in the registry, least of all under PlayerPrefs (Unity/Windows).
  • Add Steam Cloud support.

Puzzlers:
  • Individual mid-level/chapter/etc. saving, whether they take 2 minutes or 2 hours. People might also want to pause one level and try another.
  • Mark levels in progress on level select.
  • Player profiles for multiple people or playthroughs.

Point & click adventures and similar:
  • Manual saving anytime over multiple slots. Don't limit them but 5-10 at minimum.
  • Include date, time, in-game location, screenshot. Even better if saves can be named.
  • Ask for overwrite and load confirmation.
  • Autosaves are good if done well but not good enough alone, especially in games with choices.
  • Autosave after every action, dialog, during puzzles, scene transition, etc.
  • Indicate saving with an on-screen icon.
  • Autosave to a separate file when quitting, just in case.
  • Make sure autosaves don't overwrite manual saves and vice versa.
  • Have chapter/location/etc. select with progression or after completing the game.

4. Controls
  • Settings should be accessible anytime (main menu, from a level, etc.).
  • Rebindable. Not always absolutely necessary, depending on how the game works.
  • Alternatives. WASD only works on QWERTY keyboards, so arrow movement is also necessary.
  • NEW: Holding movement keys should allow continuous movement.
  • The game should be 100% playable with either mouse, keyboard or controller, without relying on another control method.
  • That said, have hotkeys for mouse-based games too (undo, reset, rotation, inventory, pause menu, etc.).
  • Non-mouse-based games also benefit from a mouse in the menus, even if mouse movement is not possible.
  • NEW: Not everyone using the mouse interface is actually using a mouse (touchpad or touchscreen). If you can simplify your controls to only use one button or provide optional touch controls, more people can play on more devices.
  • Don't imitate a controller on the keyboard. There are 100+ keys, Z/X/C for various actions is painful.
  • Show relevant prompts. Gamepad buttons are useless if playing with keyboard, default keys are useless after rebinding.
  • Allow both toggles and holding for sprint, crouch, etc.
  • Clicking and dragging movement should both work.
  • Double-click to move faster and change locations instantly.
  • Use right click to undo, cancel, zoom out of a puzzle, etc.
  • Use the mouse wheel to scroll, rotate, zoom, open/close inventory, etc.
  • Allow X/Y axis and left/right mouse button flips and scroll sensitivity.
  • NEW: Not all mice have a mouse wheel, make sure to include alternatives for those functions.

5. Display
  • Settings should be accessible anytime (main menu, from a level, etc.).
  • Full screen (not just a full-sized window) and windowed modes (borderless as well).
  • If you go with a resizable window, make sure the game adapts to it and switching back to full screen restores full resolution.
  • Resolution options (ultra widescreen, 4:3 and Steam Deck too) and/or some preset window sizes.
  • All available resolutions should be listed, pull-down works too. Browsing one by one is tedious and if it's automatically applied every time, it can cause problems.
  • Keep full screen/windowed status and window size and position between sessions.
  • Dark/night and light modes and/or various themes. White or bright backgrounds can be just as hard to look at for extended periods as light text on dark backgrounds.
  • Brightness setting, especially if it's a darker game. The option will still remain to play in pitch black.
  • Screen shake, strobe and flicker effects can cause a headache or worse, make them optional and off by default.
  • FOV (field of view) slider and head-bobbing toggle in 1st-person games for the same reason.
  • Don't forget about V-sync.
  • NEW: Don't release a portrait mode mobile game on PC as is. Make sure the screen is filled and used properly.

6. Text
  • Choose easy-to-read fonts or offer alternatives.
  • NEW: Make sure background and text color don't clash. Dark blue letters on a black background or bright yellow on white are hard to read.
  • Text size setting and/or UI-scaling if there's a lot of smaller text.
  • Instant and silent text display option. Not everybody likes the typewriter effect (text appearing letter by letter) or noises during dialog.
  • Clicking every sentence to make them appear instantly should be possible but not good enough on its own.
  • NEW: Ellipsis (...) is not dialog, don't overdo it. Clicking through 15 instances during a conversation is awful.
  • Subtitles with size setting for spoken dialog and cutscenes. Not everybody's a native speaker, can play with audio on, or is able to hear.
  • Don't machine translate the entire game into dozens of languages. Results won't be good enough without a proofreader.
  • NEW: Have someone familiar with the language (not necessarily the game) read all the text. Fresh eyes catch typos more easily.
  • NEW: Don't forget about punctuation. End sentences like this. With a period. Also known as full stop.
  • Don't show the same tutorial/intro after every level reset.
  • Don't use 'tap' in a PC game.

7. UI
In general:
  • The pause menu should pause the game, even during a cutscene (instead of skipping it).
  • Timer toggle. Ticking clocks can be distracting and stressful, whether counting down or just measuring completion time.
  • Color blind options in color-based games or otherwise.
  • NEW: Overall game speed setting (not just for animations) if there are real-time elements.
  • NEW: Optional visible grid for grid-based puzzle systems to make tiles easily distinguishable and countable.
  • NEW: Splash screens are for 90s console games. Don't make players wait and press keys unnecessarily, maybe use them as main menu backgrounds.
  • NEW: If a splash screen is also a loading screen, don't wait for player input, followed by more loading, just move on automatically.
  • NEW: Company logos should be short, silent (partly because volume settings rarely kick in that early) and skippable. If they double as a loading screen, move on automatically.
  • NEW: Don't force to finish the tutorial or play cutscenes before giving access to the settings menu.
  • NEW: Don't overload the player with information. No need to talk about complex late-game mechanics in the Level 1 tutorial.
  • NEW: Try to make the tutorials in a way that requires little to no text, especially if it's a text-free game otherwise.
  • Tooltips if the icons aren't self-explanatory and even if they are.
  • NEW: Can't hurt to explain some or all the settings with tooltips or somewhere on the screen, based on layout.
  • NEW: Use a separator for score display. 123 456 or 123,145 or 123.456 instead of 123456. Some languages use comma, others period for decimals, probably a non-issue here.
  • Highlight the currently active button, whether under the mouse cursor or selected by keyboard. Best if it isn't just a different color, to make it clear what's actually selected.
  • Active cursor in point & click adventures to see what's clickable on mouseover.
  • Hotspot indicator hotkey/icon in point & click adventures. Not everybody likes pixel-hunting.
  • NEW: If there are several in-game windows, try to make them resizable and/or movable.
  • NEW: Make sure clicks in various windows (in-game, pause menu, etc.) don't bleed over others behind them or the puzzle itself.
  • NEW: Include the current version number in the main menu.
  • NEW: If there are social or other external links in the menu, ask for confirmation before minimizing the game and opening a browser window.
  • Don't forget the Exit button.

Levels and Level Select:
  • Show level numbers, at the very least in the pause menu.
  • Show time/move/other goals while playing, not only at the end or when accidentally achieved.
  • Retry, Next Level, Map/Level Select and Main Menu buttons on the level complete screen.
  • Level select with multiple levels per screen, no scrolling 100 levels left/right one by one.
  • NEW: Skipped levels on level select should be marked differently, so they're easy to find later.
  • NEW: Swiping level selection or similar is fine, but include navigational arrows and/or 'dots' to click as well.
  • NEW: Direct chapter/pack access buttons should also indicate if there are imperfect or incomplete levels inside to avoid clicking through everything all the time.
  • Jump to last unlocked or played level or page, not always level 1.

8. Graphics/Cutscenes
  • Settings should be accessible anytime (main menu, from a level, etc.).
  • Individual settings for better performance (bloom, motion blur, shadows, etc.), a single low/medium/high option is not enough.
  • Animation toggles and speed settings (transitions, movement, background, etc.). They might look great but will get old fast.
  • NEW: Make sure background graphics don't obscure puzzle elements (or have a toggle for turning them off).
  • NEW: Don't play the intro every time the game starts. It should only play after (and not before) starting a new game.
  • Skippable and pausable cutscenes. Hold space, esc, click, etc. for a few seconds to avoid accidents and have an icon showing how much time remains. Also consider having a setting to make it instant.
  • NEW: Replayable cutscenes without having to redo the puzzle/section that triggered them.
  • Don't show the same cutscene every time a level is reset.

9. Audio
  • Settings should be accessible anytime (main menu, from a level, etc.).
  • Separate volume settings. Sound, music, speech, UI, ambience, master.
  • Separate toggles are fine but not enough on their own.
  • Gibberish and other text display sounds replace speech, so have their own setting, don't bundle them with sound effects.
  • NEW: Separate volume setting for cutscenes if the others don't affect them. Sudden audio outbursts between levels are not pleasant.
  • Only a single line of dialog currently on display should be skipped with a click/keypress, not a full sentence or worse, an entire conversation.
  • Make sure a random effect or song isn't much softer or louder than the rest.

10. Difficulty/Progression
  • Unlock more than 1 level at a time. At least 3 or an entire chapter/world depending on level structure.
  • Branching progression is great, again depending on level structure.
  • Don't demand perfection to simply progress. More than half of the current chapter or mostly 2 stars should unlock the next.
  • Don't fail the level after going over the time/move limit, just offer fewer/no stars and unlock the next one.
  • With no progression to speak of (nonograms, mahjong, etc.), have all levels unlocked, otherwise an 'Unlock all levels' option is nice.
  • Level skip. Even with multiple levels to tackle, progress isn't guaranteed. It should work throughout the game without limitations, not just in the current level pack.
  • Tutorials. Optional and replayable.
  • Hints. Avoid pre-recorded solutions that are hard to follow or have to be memorized.
  • Skippable action/arcade/QTE (quick-time event) sections, mini-games and puzzles, instantly or after a few failed attempts.
  • Difficulty settings or game modes. More time/moves, untimed, no move limit, etc.
  • Basic and optional functionality shouldn't be put behind difficulty settings.
  • NEW: The only game without cheaters is a game without players. They will find a way no matter what, worrying about that shouldn't be a reason for not offering pausing, saving, undo, etc.

11. Achievements
  • Don't spam. Not every level or action needs one.
  • Don't encourage grind. Do X 100 times is bad, if it can only be done 20 times in a playthrough, it's worse.
  • Don't overdo failure-related ones (one for dying is fine, 'Die 500 times' is not).
  • Track individual progress. 'Complete 10 levels (8/10)' is better than 'Complete 10 levels'.
  • Unlock lower tiers. Completion on Hard should grant completion on Easy and Medium too.
  • NEW: 'Finish Chapter 3' might be true however it was done (reached the end, now playing Chapter 4), but 'Finish every level in Chapter 3' shouldn't trigger if level skip was used.
  • Be creative to encourage creativity. Unusual or alternate solutions, easter eggs, etc.
  • NEW: Hinting at obscure/hidden ones in the description or with the icons is fine, but avoid direct spoilers.
  • In-game representation. A separate screen showing progress is better than bringing up the Steam overlay.
  • In-game-only representation rubs achievement people the wrong way. If you have achievements, add them to Steam too and vice versa.
  • Limited profile restrictions. Many are still not aware, they probably don't read store pages either, but a short disclaimer might help with backlash, adding that buying and reviewing the game accelerates the process.

12. Informative Store Page/Communication
  • No limit on videos and screenshots, so a few should show actual gameplay with full UI, settings, etc.
  • Make sure screenshots are of the same size, so navigation buttons on close-up don't move around.
  • Marketing fluff and GIFs are fine but have actual info about content and functionality (undo, saving, dark mode, level skip, etc.) somewhere in the description.
  • 'There's a story with different rooms and puzzles' is not helpful. 'You can retry a level as many times as you want' is not a feature.
  • Don't mislead people even if the store allows it. Selling 90% of content as DLC makes your 'free' game a demo.
  • Constantly changing the base price doesn't notify anybody (discounts do) but it makes you seem dishonest.
  • Don't abuse tags. Point & Click and Clicker aren't for everything with (or without) mouse support, Solitaire is not a synonym for Singleplayer, unless it's a card game, mahjong or similar.
  • Don't abuse languages. Tick more Interface languages for text-free games so they don't only appear in English, but showing Full Audio and Subtitles in 35 languages while your game has no audio besides music/sfx and no text, let alone actual subtitles, is misleading.
  • Don't machine translate the entire store page into dozens of languages. Results won't be good enough without a proofreader.
  • NEW: Apparently, devs don't get notified automatically about forum comments for their own games (thx, Valve!), so subscribe to make sure you don't miss anything.
  • NEW: Check the forums and your email regardless (spam too), especially around release. Not everybody wants to bum free keys off you.
  • Don't delete feedback and valid criticism from the forum. You might not like it but even if you can't or won't fix issues, people should be aware of them.
  • NEW: Don't lock topics after answering the questions. It's a discussion forum, let people discuss.
  • NEW: Guidelines say permaban should be the last resort but it's the default selection (thx, Valve!). Try communicating and other options first.
  • Post detailed patch notes after every update. 'Fixed a few bugs' says nothing.
  • NEW: 3rd-party apps shouldn't be necessary to get updates and support. Discord is fine, ignoring the forums where you actually sell your game is not.
  • Please don't remove demos after release. Add a disclaimer if necessary (e.g. earlier version, doesn't have X but the full game does).

13. Hall of Fame
As a bonus and inspiration, a few examples of developers and their games going above and beyond to provide functionality, accessibility, or 'just' incredible post-release support, even if not all of them have everything from above.

Of course, there are many others that aim higher than the absolute minimum, we might add more titles here later, and welcome further suggestions below. You can also check the Puzzle Lovers curator for a lot more examples, good or bad.


14. Version History

v1.0 (Feb 15, 2024) - Initial release.

v1.1 (Mar 1, 2024) - A few tweaks and many additions marked as 'NEW', mostly based on feedback.
  • Undo: hold to take back more steps
  • Saving: new game/continue
  • Controls: hold for continuous movement, mouse wheel, touch controls
  • Display: light mode, portrait mode
  • Text: punctuation, ellipses, typos, background/text color clash
  • UI: Levels and Level Select subsection, overall game speed, company logos, splash screens, in-game windows, swiping/arrow navigation, tutorials, external links, grid toggle, score display, mark skipped levels on level select, version number
  • Graphics: renamed to Graphics/Cutscenes, cutscene skip indicator, cutscene replay, background clash
  • Audio: cutscene volume
  • Difficulty/Progression: unlimited level skip, cheaters
  • Achievements: spoilers, effects of level skip
  • Informative Store Page: Renamed to Informative Store Page/Communication, more feedback/forum stuff
Last edited by Dohi64; 29 Feb @ 7:00pm
< >
Showing 1-15 of 33 comments
Dohi64 15 Feb @ 11:58am 
totally expected to run into a character limit. still, reserving this for who knows what, just in case.
Belisama 15 Feb @ 12:12pm 
Excellent list, very comprehensive! Hopefully, we'll get some devs thinking about this sort of thing.

>>In-game-only representation rubs achievement people the wrong way. If you have achievements, add them to Steam too.

Vice versa is also nice, for those of us who like to replay games.
Dohi64 15 Feb @ 12:23pm 
thanks. honestly, not entirely sure what to do with it. I'm gonna link it on the hall of famer forums, but that's preaching to the choir, as would be sending it to devs who are already doing their best, and I try to ignore the rest (not always successfully). they already made their decision not to bother and if they can't add a timer toggle or volume settings in 5 minutes, they're definitely not gonna read this wall of text.

and thanks for the other feedback. makes sense, noted and it'll make it into the guide. not expecting much buzz and activity but I'm gonna wait a while and see if there's other stuff to edit/add.
This is very good!
If only more devs would actually do this - a lot of it should be easy enough to put into most any games.
Progress issues, and those awful typewriter sounds and letter-by-letter or line-by-line text are my particular hates. Reasons enough to avoid purchase.
Kalin 15 Feb @ 7:38pm 
Controls: Not all mice have a mouse wheel, and not everyone using the mouse interface is actually using a mouse (touchpad or touchscreen). If you can simplify your controls to only use one button, a lot more people can play it on a lot more devices.
Dohi64 16 Feb @ 2:42am 
Originally posted by Kalin:
Controls: Not all mice have a mouse wheel, and not everyone using the mouse interface is actually using a mouse (touchpad or touchscreen). If you can simplify your controls to only use one button, a lot more people can play it on a lot more devices.

thanks. the mouse wheel is a good point (I hate laptops so much), but one of the big problems with mobile ports is they often work like mobile games on pc instead of using right click, the wheel or mouseover stuff. I remember a few games (not their names) implementing touch controls as an option, so how about something like this?

Not all mice have a mouse wheel, make sure to include alternatives for those functions.

Not everyone using the mouse interface is actually using a mouse (touchpad or touchscreen). If you can simplify your controls to only use one button or provide optional touch controls, a lot more people can play it on a lot more devices.
That is one awesome guide!
Dark/night mode and/or various themes. White or bright backgrounds are hard to look at for long.

Light mode is also a necessity! Some of us find light text on dark background painful and eye-straining to read; it's not automatically a better option. Games should have both dark and light modes as a minimum.

(So should websites and apps - Steam itself is terrible about this. I have to use a bookmarklet to zap colors on literally every Steam page if I want to read the text without pain. I use the app as little as possible because text is so hard to read in it.)

ETA: also, great guide, thanks for compiling it!
Last edited by mirrordances; 16 Feb @ 8:08am
Inigoth 16 Feb @ 8:11am 
Great guide for developers!!, I will add unistalling a game its expected to delete all files and folders. I hate finding folders on my pc from games i`ve played and unistalled long time ago.
Belisama 16 Feb @ 8:19am 
Originally posted by Inigoth:
Great guide for developers!!, I will add unistalling a game its expected to delete all files and folders. I hate finding folders on my pc from games i`ve played and unistalled long time ago.

And they should follow best practices on where to put those folders in the first place!
Dohi64 16 Feb @ 8:48am 
mirrordances: good point about light mode, everything and their opposite. e.g. I tend to forget asking about full screen because windowed mode is what's usually missing, but there are plenty of games that only run in a window.

inigoth: I get where you're coming from, but uninstalling normally only removes what was installed. if logs, saves, screenshots, etc. are stored in the install folder, they're not part of the install process and won't get removed. annoying for random files but imagine losing your saves because of this if the game doesn't have cloud support.

of course, this wouldn't be an issue if there was a consensus on save locations and similar, like belisama said, but even best practices are all over the place, and one typo can mean an entirely new folder and seemingly lost progress after a patch, happened a few times. I like to back my saves up and have to look at 15 different places for every single game.
jdelible 16 Feb @ 11:57am 
All that and you missed my biggest annoyance: if you have both "new game" and "continue" on the main menu and starting a new game will erase the existing save then you need to have a confirmation "are you sure? all previous progress will be lost" thing afterwards to make sure that you can't lose all progress via a single misclick/accidental button press.

Related, if you have both "new game" and "continue" on your main menu don't have the default selected option be new game, especially if you don't do the above.
Dohi64 16 Feb @ 12:27pm 
hopefultoad: I love options but honestly, after a while even I lost track of all the things to tweak in your game (nonozle dev, everybody). not complaining, just genuinely surprised there's something relevant here your game doesn't already do. as you know, nonograms are my absolute favorite and I'm extra critical about those 6 or 7 things they should do and do well, and almost none manage.

noted your highlight active button adjustment. it sometimes happens with toggles too, am I turning it on or off?

as for achievements, that section didn't exist in my original draft. don't care, can be broken, fine by me as long as the related action works. though if you already have the icons ready for steam, it can't be that hard to put them in the game itself in some form, but it's more of a nice-to-have than a must-have even for most achievement people, I'm sure.

jdelible: damn. you should've seen the first version though. I spent a literally sleepless night writing it up (had a fun monday after zero hours of sleep), figured I was all done, then kept remembering other stuff and started asking others (a gift and a curse). what's above is nearly double the length of the original and there's still stuff missing (I only remembered holding undo/movement to do more steps a couple hours ago while playing something).

I'm all for confirmations but can also get annoyed when they keep asking me to confirm, depending on what it is about. shisensho solitaire (see hall of fame) has a bunch of them but also toggles for them, pretty cool.
< >
Showing 1-15 of 33 comments
Per page: 1530 50