Porting Toby Fox's indie masterpiece to mobile platforms was a real gift for fans of the RPG genre. However, the controls moved from keyboard and mouse to touchscreen often cause difficulties for players accustomed to the tactile feedback of physical buttons. This is where Keyboard emulatorcomes in, allowing you to turn your smartphone into a full-fledged controller.

The app Game Keyboard + is one of the most powerful key mapping tools, but setting it up can seem confusing to a newbie. In this article, we will analyze in detail the process of configuring profiles to make running around the Underdark and fighting monsters as comfortable as possible.

No need to worry if you have not previously dealt with such software. The basic operating logic is the same for all versions of Android, although the location of some menu items may differ slightly depending on the manufacturer of your device.

Preparing the environment and setting access rights

Before you start creating a virtual layout, you need to make sure that your device is ready to work with input emulators. Game Keyboard + requires specific permissions for intercepting clicks and displaying graphics on top of other applications. Without granting these rights, the app simply will not be able to function in the background during the game.

The installation process begins with downloading the current version of the application. It is recommended to use official sources or verified repositories to avoid introducing malicious code that can intercept your personal data. After installation, launch the app and follow the initial setup wizard.

A critical step is to activate the input method. The Android system blocks third-party keyboards by default for security reasons. You will need to go to system settings, find the language and input section, and manually enable Game Keyboard + in the list of active methods. Then, in the application itself, you must click the “Enable” or “Activate” button for the service to start working.

⚠️ Attention: On some shells (for example, MIUI or EMUI), the system may aggressively terminate background processes. Go to the battery settings and set the application to “Unlimited” mode, otherwise mapping may turn off at the most crucial moment of the battle with the boss.

☑️ Checking system readiness

Done: 0 / 4

Creating an individual profile for Undertale

Universal settings are rarely suitable for specific projects, so creating a dedicated profile is the first step to a comfortable game. In the main menu of the app, find the “Profiles” section and create a new entry. Name it clearly, for example, “Undertale”, so as not to be confused in the future if you plan to use the emulator for other titles.

Next, you need to link this profile to the game’s executable file. Click on the add application icon and select Undertale from the list of installed apps. This ensures that your virtual keyboard will only automatically activate when you launch that specific game, without interfering with your messenger or browser experience.

Inside the profile settings you will see many parameters that control the behavior of the keys. Particular attention should be paid to the “Basic Settings” section. Here you can set the transparency of the buttons, their size and click sensitivity. For Undertale, where precision movements in narrow corridors are important, it is recommended to set the size of the direction buttons slightly smaller than the standard so that they do not block the view of the playing field.

📊 What version of Android do you have installed?
Android 10 and below
Android 11-12
Android 13
Android 14 and higher

Mapping of control and action keys

The most important part of the setup is the distribution of functions across the screen. Undertale uses a classic control scheme: moving the character is done with arrow keys, and interacting with the world and menus is done with a single action button. In the layout editor interface, you will see a set of virtual buttons that you can drag anywhere on the screen.

Place the D-Pad at the bottom left of the screen. This is the ergonomically correct place for the left thumb. Assign the corresponding key codes to these buttons: Up, Down, Left, Right. Make sure that you choose emulation of hardware arrows, and not letter analogs, since the game engine may not respond correctly to WASD letter input in some scenarios.

Place the action button (in the original it is key Z or Enter) on the right side of the screen, convenient for the thumb of your right hand. In the settings of this button, select the key code KEYCODE_ENTER or KEYCODE_Z. For the pause and cancel menu, you can add a second button with the code KEYCODE_X or KEYCODE_ESCAPE, placing it just above the action button.

Don't forget about the "Multitouch" function. In your profile settings, make sure that the option to support simultaneous presses is activated. This will allow you, for example, to run to the right and press the interact button at the same time, which is necessary for completing some puzzles and dodging attacks in battle mode.

⚠️ Attention: Avoid placing buttons too close to the edges of the screen. On modern smartphones with curved displays or protective glass, accidental presses can occur when gripping the device, which will lead to unplanned actions of the character.
Secret setting for accuracy

In the advanced settings of each button you can find the “Deadzone” parameter. Increasing this value for the D-pad will help avoid input chatter when the character jerks in place due to accidentally touching the edge of the button with a finger.

Setting macros for battle mode

The combat system in Undertale requires quick reactions and precise positioning of the “soul”. A standard set of buttons is sometimes not enough to comfortably navigate complex boss attack patterns. This is where sequences of actions performed with one click come to the rescue. macros — sequences of actions performed with one click.

You can create a macro to quickly select the “Act” or “Mercy” option. To do this, create a new button in the editor, select the “Macro” type and write down the sequence: pressing the down arrow (or right, depending on the position in the menu) and confirming with the action button. This will save precious milliseconds during stressful moments.

It is also useful to set up macros for inventory navigation. If you use certain items frequently, you can app a key combination to quickly select them. However, be careful: using macros to automatically dodge attacks may be considered cheating if you plan to share screenshots of achievements in the community.

The table below shows the recommended key codes for basic game actions that should be used when setting up macros:

Game action Recommended code keys Alternate code
Confirm / Attack KEYCODE_Z KEYCODE_ENTER
Cancel / Menu KEYCODE_X KEYCODE_ESCAPE
Move up KEYCODE_DPAD_UP KEYCODE_W
Move down KEYCODE_DPAD_DOWN KEYCODE_S
💡

Use the Analog Stick function instead of the D-pad if you need smooth adjustment of the soul's movement speed in battle mode. This allows you to more accurately control the evasion trajectory.

Optimizing graphics and eliminating input delays

Even perfectly tuned controls will not save the situation if the game runs with delays. Input emulation adds minimal but noticeable latency. To minimize this effect, it is necessary to optimize the operation of the application itself Game Keyboard + and the system as a whole.

In the keyboard settings, find the section responsible for the frequency of input polling. Set to the highest available value (typically 60Hz or higher). This will force the app to check the state of the touch screen more often, making the buttons respond more immediately. However, remember that this may slightly increase battery consumption.

It is also worth turning off unnecessary visual effects of the keyboard itself. Shadows, click animations, and button highlighting consume GPU resources. In a simple game like Undertale, this is not critical, but on older devices, every percent of performance counts. Disable the “Show key names” option if you have already memorized their location.

💡

Reducing input lag is achieved by a combination of a high polling rate in the keyboard settings and disabling power saving for the game process.

Solving common problems and conflicts

Users often encounter a situation where the keyboard appears, but clicks are not registered in the game. Most often this is due to an input method conflict. Make sure that it is Game Keyboard +that is active when playing, and not the standard Gboard or Samsung Keyboard. You can switch the input method by quickly swiping down the notification panel or through the keyboard icon in the bottom corner of the screen.

Another problem is the disappearance of buttons after minimizing the game. This occurs when the system kills the emulator process to free up memory. As mentioned earlier, pinning the app to memory and turning off battery optimization solves this problem. If the buttons become translucent or disappear completely, try switching to another application and returning to the game.

Sometimes there is a desynchronization of sound and actions. This may not be due to the keyboard, but to the way the Unity audio engine works on Android. Try changing the audio settings in the game itself or in the developer system settings, reducing audio buffering if such an option is available on your device.

⚠️ Attention: Android system settings interfaces are constantly updated. If you can't find the "Display on top of other apps" option, search your phone's settings and enter the keywords "on top" or "overlay".

Frequently asked questions (FAQ)

Can I use Game Keyboard + without root access?

Yes, the application is fully functional on devices without rights superuser. It uses standard Android accessibility APIs and input methods. root access is only required for some specific functions, such as kernel-level joystick emulation, which is not mandatory for Undertale.

Why do the buttons press by themselves?

This may be caused by dirty screen, poor-quality protective glass, or too high sensor sensitivity. Try clearing the screen and reducing touch sensitivity in the settings of the emulator itself. Also check if the “Developer” mode is enabled with the “Show touches” option, which sometimes conflicts with overlays.

How to save a profile and transfer it to another device?

In the application settings, find the “Backup” or “Export profiles” item. The app will create a configuration file that can be copied to another device and imported through the same menu. This will save time on re-configuring buttons.

Does using an emulator affect getting achievements?

No, the game sees the emulator as a regular hardware input device. For Undertale's internals, it doesn't matter whether you press a physical button on a Bluetooth keyboard or a virtual button on the screen, as long as the signal code is identical. Achievements will be unlocked as normal.