I made a game! Play it at https://ubershmekel.github.io/nihongo-shooter/
It should be pretty easy to port this game to other languages if folks are interested. Here are a few parts of the development process that I found interesting…
Why make this game
Duolingo has some unskippable animations. They’re cute and only about 5 seconds long, but I have a hard time looking at them. Forcing me to see the same animation for the 100th time is just punitive. If there was a list of seven mortal sins in game design, unskippable cutscenes are on it. Expect to see that list in a future post.
I wanted to make a learning game that would feel fast with no pauses in the learning process. How do you speed-run learning Japanese?
Designing Progression
I wanted to base this game on the top 1000 most common words in Japanese. But I didn’t know how to fit so many words in a player’s attention span.
v0 - infinite play
The first version of this game had the whole set of words in one go with a little spaced repetition spice thrown in. The player would only actively learn from a set of 10 words at a time. When the player got a word right 3 times without a mistake - that word would go away to never return, and a new word entered the learning set. The problem was that it happened so smoothly that it just didn’t feel like progression. It got boring after ~10 words.
v1 - levels
With 1000 words, dividing them into ~50 levels (because that’s how many buttons I could fit on the screen without implementing scrolling) meant that each level had 20 words in it. Testing that with the player having to get every word right twice took me about 2 minutes to pass a level. That felt too long.
I settled on letting the player make mistakes, but they only “win” by making no mistakes after going through the word-set once. After that change, an easy level took me about 60 seconds to complete. Felt much better.
Shortcomings and plans
I probably will move on from this project. Though there are a few things I wish I had the time-motivation for:
Port to more languages
No hiragana mode
An easier mode for learning hiragana and katakana