๐ฎ Build a Simple Android Game Without a PC
๐๐จ๐ข๐ง ๐๐จ๐ฆ๐ฆ๐ฎ๐ง๐ข๐ญ๐ฒ - ๐๐๐๐๐ ๐๐๐๐Want to make your own Android game using only your phone?
You can do it with Godot's Android Editor, which lets you create, edit, test, and export Godot projects directly on Android. The current official Android download is Godot 4.7.2.
For this tutorial, we'll make a simple 2D coin-collecting platform game.
๐งฐ What You Need
- Android phone
- Godot 4 for Android
- Optional Bluetooth keyboard + mouse
- Internet connection for downloading assets/tools
Godot's Android Editor supports Android devices with OpenGL ES 3.0 / OpenGL 3.3-class hardware; a keyboard and mouse are recommended because the Android editor's touch UI is still being refined.
A โ Z Practical Method
1๏ธโฃ Download Godot on Your Phone
Open:
https://godotengine.org/download/android/
Choose the Android version and install it.
The official Android build currently listed is Godot 4.7.2.
2๏ธโฃ Give File Access
When Godot asks for storage/file access, allow it.
The Android editor needs file access to create, import, and read project files.
3๏ธโฃ Create a New Project
Open Godot.
Tap:
Create โ New Project
Enter:
Project Name: Coin Hunter
Choose a folder such as:
Games/CoinHunter
For a simple 2D game, choose the Compatibility renderer.
Then tap:
Create & Edit
4๏ธโฃ Create the Main Scene
In the Scene panel:
2D Scene
This creates a Node2D.
Rename it:
Main
Save:
main.tscn
5๏ธโฃ Add a Player
Right-click Main โ Add Child Node.
Search:
CharacterBody2D
Create it and rename it:
Player
Then add:
Sprite2D
and:
CollisionShape2D
Your structure becomes:
Main
โโโ Player
โโโ Sprite2D
โโโ CollisionShape2D
6๏ธโฃ Add a Player Image
You can use your own game character image or a properly licensed/free asset.
Create:
assets/
inside your project.
Put your character image there.
Then select:
Player โ Sprite2D โ Texture
Choose your character image.
7๏ธโฃ Create the Player Collision
Select:
CollisionShape2D
In the Inspector:
Shape โ New RectangleShape2D
Resize the rectangle so it fits the character.
This tells Godot where the player physically exists.
8๏ธโฃ Add Player Movement
Select Player.
Attach a new script.
Name it:
player.gd
Use a simple movement script:
extends CharacterBody2D
const SPEED = 300.0
const JUMP_VELOCITY = -500.0
const GRAVITY = 1200.0
func _physics_process(delta):
if not is_on_floor():
velocity.y += GRAVITY * delta
var direction = Input.get_axis("move_left", "move_right")
if direction:
velocity.x = direction * SPEED
else:
velocity.x = move_toward(velocity.x, 0, SPEED)
if Input.is_action_just_pressed("jump") and is_on_floor():
velocity.y = JUMP_VELOCITY
move_and_slide()
Now the player has basic:
Left โ Right โ Jump
movement.
9๏ธโฃ Create Touch Controls
Because we're making this for Android, add buttons for:
โ โ โ
Use:
Add Child Node โ TouchScreenButton
Create three buttons:
LeftButton RightButton JumpButton
Place them near the bottom of the screen.
๐ Connect the Buttons
Go to:
Project โ Project Settings โ Input Map
Create:
move_left move_right jump
Assign appropriate keyboard/gamepad inputs for testing.
For the Android touch buttons, connect their pressed/released actions to the same movement logic, or use an input/controller layer that feeds these actions.
This gives your game mobile controls.
1๏ธโฃ1๏ธโฃ Create the Ground
Select Main.
Add:
StaticBody2D
Rename:
Ground
Add:
CollisionShape2D
Create a:
RectangleShape2D
Make it wide enough to cover the bottom of the screen.
Add a visual platform underneath it.
Your structure becomes:
Main โโโ Player โโโ Ground โ โโโ CollisionShape2D โโโ UI
1๏ธโฃ2๏ธโฃ Add Platforms
Duplicate the ground/platform.
Move the copies higher:
Platform 1 Platform 2 Platform 3
Now the player can jump between platforms.
1๏ธโฃ3๏ธโฃ Add Coins ๐ช
Add:
Area2D
Rename it:
Coin
Add:
Sprite2D CollisionShape2D
Place the coin above a platform.
Duplicate it several times:
Coin Coin2 Coin3 Coin4 Coin5
1๏ธโฃ4๏ธโฃ Make Coins Collectible
Attach a script to the coin:
extends Area2D
signal collected
func _on_body_entered(body):
if body.name == "Player":
collected.emit()
queue_free()
Connect the body_entered signal to the script.
Now the coin disappears when the player touches it.
1๏ธโฃ5๏ธโฃ Add a Score
Create a:
Label
Rename it:
ScoreLabel
Set:
Score: 0
Then create a simple score variable:
var score = 0
When a coin is collected:
score += 1 $ScoreLabel.text = "Score: " + str(score)
Now your game has a working score counter.
1๏ธโฃ6๏ธโฃ Add a Win Condition
For example:
Collect 10 Coins
โ
You Win!
When:
score >= 10
show:
YOU WIN!
You can add a button:
PLAY AGAIN
to restart the level.
1๏ธโฃ7๏ธโฃ Add Background
Create a simple background using:
- Sky
- Clouds
- Mountains
- Trees
- Ground
You can use properly licensed assets or create your own.
Keep the first game simple rather than trying to build a huge world.
1๏ธโฃ8๏ธโฃ Add Sound
Add:
AudioStreamPlayer
for:
- Coin collection
- Jump
- Game over
- Victory
Use audio you created yourself or have permission to use.
1๏ธโฃ9๏ธโฃ Test the Game
Tap:
Play
Test:
โ Player movement
โ Jumping
โ Platforms
โ Collision
โ Coins
โ Score
โ Touch controls
โ Victory screen
โ Sound
Fix errors before exporting.
2๏ธโฃ0๏ธโฃ Export the Game as APK
Go to:
Project โ Export
Add:
Android
Godot's Android editor can export Android projects without requiring you to separately install OpenJDK or the Android SDK when using the Android editor's supported export methods.
Choose your export options and export the project.
For a simple personal test build, you can create an APK and install it on your phone.
Godot's documentation confirms Android projects can be exported as .apk.
2๏ธโฃ1๏ธโฃ Install Your Game
After exporting:
CoinHunter.apk
Open the APK on your phone.
Allow installation from your chosen file/browser source if Android asks.
Install โ Open โ Play ๐ฎ
๐ Take It Further
Once the basic game works, you can add:
- โค๏ธ Health
- ๐ช Coins
- ๐พ Enemies
- ๐ High scores
- ๐ Music
- ๐ฅ Animations
- ๐บ๏ธ Multiple levels
- โฑ๏ธ Timer
- ๐พ Save system
- ๐จ Character skins
- ๐ In-game shop
- ๐ Online leaderboard
You can gradually turn the small prototype into a complete Android game.
๐ Useful Links
Godot Android Download:
https://godotengine.org/download/android/
Godot Android Editor Documentation:
https://docs.godotengine.org/en/latest/tutorials/editor/using_the_android_editor.html
Godot Android Export Documentation:
https://docs.godotengine.org/en/latest/tutorials/export/exporting_for_android.html
Godot Official Documentation:
Godot GitHub:
https://github.com/godotengine/godot
๐ฏ Final Result
ANDROID PHONE
โ
Godot Android Editor
โ
Create 2D Game
โ
Player + Platforms
โ
Coins + Score
โ
Touch Controls
โ
Test
โ
Export APK
โ
๐ฎ YOUR OWN ANDROID GAME
No PC required for this basic workflow. The Android editor is still considered experimental, so a Bluetooth keyboard and mouse can make the development experience much easier.ย