flinqe finga logo

flinqe finga – Game guide

Learning and practice game for keyboard navigation

DEEN

Translation of the German guide. The app interface is in German; key on-screen labels are kept in German below.

Privacy Policy Imprint Why?

Version 1.6 · As of: 27 May 2026

Note: This English guide is a translation of the German game guide. The app's user interface is in German; where a specific on-screen label matters, the German wording is kept (e.g. the buttons NEU, SIM, Ok).


Table of contents

  1. Game idea
  2. Game screen
  3. Controls
  4. Gameplay
  5. Scoring
  6. High score
  7. Settings
  8. Keyboards & levels
  9. Tips for a high score

1. Game idea

flinqe finga trains fast and precise navigation on virtual keyboards. The goal is to type a given word with as few cursor movements as possible and as quickly as possible.

The cursor starts at a fixed position. Use the control pad to move it to the target key and confirm with . Repeat this until the word is fully entered.


2. Game screen

+------------------------------------------+
|  flinqe finga    12:34:56    =          |  <- Header (compact)
|  Player name                             |
+------------------------------------------+
|  05 * L2 * Mittel   Description     i  |  <- Level row: keyboard-no. . L# . name + description
|                                          |
|  H A L L O                              |  <- Target-word tiles
|                                          |
|  [ ... virtual keyboard ... ]           |  <- Keyboard with red cursor
|                                          |
|  [ Input: h a _ ]                       |  <- Input line
|                                          |
|        00:12.34  * 8 moves              |  <- Stopwatch + move count (top)
| [NEU]  Best time: 7.77 s * 8 mv  [SIM] |  <- Best-time bar (below) - share the row
|                                          |
|             /\                           |
|          <  Ok  >                        |  <- Control pad
|             \/                           |
+------------------------------------------+
|  hello world it is me                   |  <- Marquee with the target phrase
|  Opt: 14 (*)                            |  <- Status: Opt value left, optional hint
+------------------------------------------+

Level row: Shows keyboard-no. · L# · name in the badge with the description next to it (e.g. “01 · L3 · Mittel”). The keyboard name is shown in short form — the Tastatur_ prefix is dropped; Tastatur_001 becomes “01”, Tastatur_009 becomes “09”, Tastatur_101_ger becomes “101”. If the level name is just a number (“L1”), it isn’t shown twice. Tapping opens an info dialog with keyboard number, keyboard description, level number and level description (10-second auto-close timer). On keyboards with fewer rows the row text grows automatically (≤ 4 rows ≈ 30 % larger).

Stopwatch + best-time bar: The stopwatch (with move counter) and your personal best for the current phrase share the height of the NEU button. If no best time exists yet, the stopwatch stands alone in the centre.

Footer row 1 (yellow, scrolling): The target phrase as a marquee.

Footer row 2: Opt: N shows the optimal number of moves for the current phrase. If (*) follows, the optimal solution can only be reached with the help of the cursor keys ◀/▶ — these phrases are especially interesting for advanced players (see “cursor strategy” below). During game events (“undo”, “simulation running”, “time’s up”) a short hint appears to the right of the Opt value.

Wraparound is always active — at the edge the cursor jumps to the opposite side.


3. Controls

Physical keyboard

KeyFunction
Arrow keysMove the cursor on the keyboard
EnterPress the highlighted key
Numpad 8 2 4 6Move the cursor (alternative)
Numpad 5Press the key (alternative)

Touchscreen — standard

GestureFunction
Tap the arrow buttonsMove the cursor on the keyboard
Tap Ok / check markPress the highlighted key
Tap <-Undo the last cursor movement
Swipe left/right on the keyboardLoad the next / previous layout
Swipe up/down on the keyboardMake the grid brighter / darker

Touchscreen — with diagonal navigation

When diagonal navigation is enabled, a 3×3 control pad appears with 4 additional diagonal keys (on all keyboards, regardless of their shape):

  diagonal-up-left     up    diagonal-up-right
            left       Ok    right
  diagonal-down-left  down   diagonal-down-right

4. Gameplay

Start

After opening the app, a random target word appears. The timer is stopped – the first movement starts it.

Typing

Navigate to the desired key with the control pad and confirm with Ok. The game automatically detects when the input matches the target word.

Special keys on the keyboard

SymbolFunction
BackSpaceDelete the last character
DelDelete the character at the cursor position
EnterConfirm the input
SpaceInsert a space
ShiftShift (single uppercase letter)
CapsLockCaps Lock (permanent uppercase)
left rightMove the text cursor within the input line

Cursor strategy (advanced)

The left/right keys on the keyboard move the text input cursor. This lets you insert letters in any order. Example for the word “BRIEFE”: type R, I, E, F, E first, then press left several times to insert the B at the start. On certain keyboard layouts this saves many moves.

Finish

On correct input the completion overlay appears with score, time and moves. From there:

Time limit

If a level has a time limit and the time runs out, “TIME UP” appears. Again starts a new attempt.

The time limit adapts to the difficulty of the phrase: the longer the optimal solution, the more time you get (but at least the level base time). This keeps even a difficult phrase fairly solvable. The simulation (optimal path, SIM) always runs through completely without a time limit — it shows the solution and never fails because of the clock.


5. Scoring

Score = 10,000 - (moves x 10) - (time in ms / 200)

Minimum value: 0 points (the score never goes negative).

FactorEffectTip
Moves-10 points per cursor movementFind the most direct paths
Time-1 point per 200 msType briskly, don't hesitate

Example: word in 25 moves and 18 seconds: 10,000 - 250 - 90 = 9,660 points

Moves are more costly than time: 5 extra moves cost 50 points; 5 extra seconds cost 25 points.

The overlay also shows the deviation from the theoretical optimum (+N = N moves more than optimal). The optimal number of moves is calculated automatically.


6. High score

Local high score

For each combination (keyboard, rule set, phrase, diagonal, mode) the game stores exactly one entry — the best result. A new attempt automatically overwrites the old entry if it is better. In the completion overlay a golden NEW HIGH SCORE banner appears when you set a new record.

“One-handed / two-handed” mode

High scores are ranked separately for one-handed and two-handed play:

If you mostly play one-handed, you can specifically improve your own one-handed best results.

(*) marker

Phrases with a (*) star are those whose optimal solution uses the text cursor (◀/▶ on the keyboard). They are technically more demanding and interesting for advanced players.

Online high score

High scores in the menu opens the high-score screen with three tabs. All tabs show the entries in the same card layout.

You can recognise the two online tabs by the globe symbol with an extra symbol: 🌐+filter = filtered to the current combination, 🌐+up/down arrows = all entries in order.

Tab “Online” (globe + filter — current combination):

Tab “Online” (globe + arrows — all entries):

Tab “Mine” (local entries):

“Mine” and “Online” are separate lists: “Mine” is your personal archive (it stays even if others are better online), “Online” shows only the respective rank-1 holder. A synchronisation never deletes local entries.

Offline mode

If the server is currently unreachable, the score is cached in an offline queue. The next time the app starts with a connection, these entries are submitted automatically — a short message (“N offline high scores synchronised”) confirms the sync. The server decides per entry whether it beats the current best result.

Messages from the operator

The operator can send messages to you individually or to all players (e.g. notes about new versions, replies to your questions). On the next app start, a dialog appears with subject, body and a reply field (max. 100 characters). Tapping “Verstanden” marks the message as read on the server and stores your reply. Each message is shown to each player only once.

Linking your account (device change)

If you get a new phone, or want your name changed, you can carry your account over without losing your place on the leaderboard:

  1. In the player settings tap “Link account …”.
  2. Enter your existing player name.
  3. Tell the operator the device key shown — they unlock this device for the name.
  4. Then tap “Link”: name and high scores are yours again.

As protection against misuse, a foreign name cannot simply be taken over — the approval is done by the operator.

Uploading local high scores to the server

The player settings contain an entry “Lokale Highscores hochladen” below the online-account block. It pushes all of your locally stored “Meine” high scores to the server in one go. The server only accepts entries that are better than what is already there (or that are still missing) — no local data is changed. Useful after a server data loss or after a device change, when you still have your local bests but the server doesn’t.

What is stored?

Each high-score entry contains:

FieldMeaning
Target wordThe typed word / phrase
Keyboard IDWhich layout was used
Navigation modeRule set (Rs01 / Rs02)
DiagonalWas diagonal navigation active?
ModeOne-handed / two-handed (from the control-pad position)
Cursor pathWas the (*) trick optimal?
Moves / time / scoreCore values
Optimal movesTheoretical minimum
Player nameLocal name
Build numberApp version

Note: Wraparound is always active — high scores are therefore comparable across all games.


7. Settings

Open via menu icon → Settings.

Online player

Player name (local)

Local display name (max. 30 characters). Appears in the game header. High scores are only saved if a name is entered. Blocked terms are rejected during online registration.

Keyboard & level

Selection of the active keyboard and level. Optionally: include your own keyboard file via Load keyboard file.

With auto-layout switched on the app ignores the system font scaling from the Android accessibility settings and uses its own, device-independent defaults. The game then looks the same on every handset without you having to fine-tune anything per device.

While auto-layout is active the following size sliders are hidden entirely (key font, secondary-label font, max. font enlargement, scale key font to key height, target-tile size). Only after turning auto-layout off do they reappear and become individually adjustable.

Size sliders (only without auto-layout)

SettingFunction
Key font sizeGlobal font-size multiplier (50–200 %)
Secondary-label font sizeSize of the Shift labels on the keys (50–200 %)
Max. font enlargement (system)Upper limit for the system font size (Android accessibility)
Scale key font to key heightPer-key font scaled proportionally to the rendered key height
Target-tile sizeSize of the target-word tiles (16–44 px); font scales with it

Max. font enlargement (system): Android has its own font-size setting in the accessibility options. flinqe finga adopts it so the app scales up/down with it. Very high system levels can however make the layout overflow. With this slider you set how much the app font may be enlarged at most — in 10 steps from ×1.30 to ×1.75 (default ×1.75). Lower = definitely no overflow; higher = larger font, but at very high system levels it can get tight. The lower limit is fixed so the font never becomes unreadably small.

Colour pickers (three accent colours)

In the player settings under Appearance you’ll find three colour pickers, each tinting a whole UI area:

Each picker opens when you tap the corresponding colour swatch. Changes take effect immediately, no restart needed.

Controls how the cursor jumps at line boundaries when pressing arrow-up/-down.

Diagonal navigation: enables the four diagonal directions ↖↗↙↘; the control pad then becomes a 3×3 grid. With and without diagonal, separate high scores are kept.

Feedback

SettingFunction
SoundAcknowledge direction keys with a tone
Sound volumeSlider 0–100 %
VibrationAcknowledge direction keys with vibration
Key clickAcknowledge the Ok key with a click sound
Click volumeSlider 0–100 %
Intro soundPlay the voice announcement on app start
Vibration intensityLight / medium / strong

Control-pad docking

ModeDescription
One-handed leftControl pad at the left edge
Two-handedControl pad centred (default)
One-handed rightControl pad at the right edge

Gameplay

SettingFunction
NEU buttonShow the quick-restart button next to the timer
Undo buttonUndo the last cursor movement (button next to the control pad)
Highlight next keyMarks the key to be typed next in green. This is only a guide to the next character in word order — not necessarily the path that needs the fewest moves (see the “i” in the settings)
Auto-advanceAdvance automatically after completing a level (0 = off, 1–15 sec.)

Management


8. Keyboards & levels

Switching during play

Swipe left or right on the keyboard to switch between the available layouts.

Switching in the settings

Keyboards & levels opens the level-selection screen with all keyboards and levels.

Available keyboards (14)

Classic – levels by word length

IDDescription
tastatur_001Standard QWERTZ
tastatur_002QWERTZ extended (Del key, more special characters)
tastatur_003Compact layout without number row
tastatur_004Compact layout, shifted
tastatur_005ABC grid (uppercase, no Shift)
tastatur_006Special-character keyboard
tastatur_007Mirror – QWERTZ mirrored horizontally
tastatur_008QWERTZ with CapsLock in the middle of the home row
tastatur_009Cursor – left cluster + cursor bridge + right island

Puzzle – levels by navigation

IDConcept
tastatur_101Islands – vowels on top / bridge / consonants below
tastatur_102Spiral – a–z clockwise on a 6×5 grid
tastatur_103Hub – E in the geometric centre, frequent letters as neighbours
tastatur_104Chessboard – vowels/consonants in an alternating pattern, incl. umlauts
tastatur_105Wraparound – frequent letter pairs at opposite edges

9. Tips for a high score

Plan paths ahead The timer only starts on the first movement. Look at the target word and plan the path before you begin.

Use direct paths The shortest path between two keys often runs diagonally — when diagonal navigation is active, you can exploit this on every keyboard.

Use wraparound Wraparound is always active: the cursor jumps from the edge straight to the opposite side. On keyboards with frequent letter pairs at opposite edges (e.g. tastatur_105 “Wraparound”) this saves many moves.

Cursor strategy The left/right keys on the keyboard move the text input cursor. On certain layouts it pays off to type the letters that are close together first and then insert the distant letter with left — instead of navigating back and forth.

CapsLock instead of Shift For words with several consecutive uppercase letters (abbreviations: NASA, HTML, USB) CapsLock pays off instead of pressing Shift repeatedly — especially on tastatur_008, where CapsLock sits centrally in the home row.

Mind the cursor position after typing After every key press the cursor stays on the last pressed key. Choose letters in an order that leaves short paths to the next target.

Use hub letters On the hub keyboard (tastatur_103) E sits in the centre. Words with many E's have extremely short paths — E is always at most 1–2 steps away.

Track the optimum value The footer shows Opt: N — the theoretically minimal number of moves. The completion overlay shows your deviation from it (+N) as a clear indicator of room for improvement.


flinqe finga was developed with Flutter · © 2026