Skip to content

Angry Birds like mobile game. Used for tutorials on how to create a mobile game with Godot 3

License

Notifications You must be signed in to change notification settings

crystal-bit/angry-aliens

Repository files navigation

Angry Aliens

optimized

Angry Aliens is an open source game made with Godot Engine 3.2.1.

Source code is MIT licensed. Feel free to read it, modify it and reuse it in your projects.

Gameplay is definitely inspired by Angry Birds.

Disclaimer

This project is used as a base for video tutorials in Italian. All the source code and documentation is in English. If you are interested, videos are released on my Crystal Bit YouTube channel.

Table of Contents

Branches: master, develop and video

  • develop branch contains the complete project.Some advanced features may not be included in the master branch.
  • master branch will be in sync with video tutorials releases on my YouTube channel.
  • videoX/start branches contains the code to follow the tutorial number X. Example:

Prerequisites

The tutorials require basic Godot understanding about Scenes, GDScript, 2D Nodes such as Sprite2D, CollisionShape2D, Area2D.

You can learn these topics by:

Tutorial Contents

1. Introduction

This tutorial series will focus on creating a simple mobile game using Godot 3.2.

I choose to make an Angry Birds clone because:

  1. it is short to recreate (without adding polish)
  2. it allows to stress Godot performances on the worst case scenario: intense game (physics based) on a low-power device (smartphone)

I'm creating these tutorials using Manjaro Linux (Arch Linux derivative), but similar steps can be done on other operating systems as well.

Currently I don't have an Apple device and I cannot develop/test iOS/OSX games. I'll try to provide instructions for other OSs, but help here is really appreciated (especially if you are a Debian, Ubuntu, Windows or OSX user).

2. Configure Godot and Android SDK

How do I configure my computer for Android development?

  • android-tools and jdk-openjdk
  • debug keystore
  • Godot configuration
  • Export templates
  • APK creation
  • APK one click installation

3. Testing performances on the smartphone

If we include all the physics elements and we create hundreds of game objects, is the game playable?

Stress test scene screen

4. Slingshot

How to create a slingshot that reacts on touchscreen and mouse input

  • Create a projectile
  • Create a simple slingshot
  • Input handling for mouse and touchscreen
  • Projectile launch
  • Load new projectile

5. Level (for multiple resolutions)

Image level screen

  • Mobile Layout
  • Multiple resolutions handling

6. Enemies

7. Obstacles

[EXTRA] Possible improvements / future topics

Extra topics are available in the develop branch.

They are not tutorialized, but the code should be simple to understand.

More than that, there are still a lot of areas that can be explored like:

  • Camera handling (pan, focus, zoom, ...)
  • Publishing on a game store
    • Fdroid
    • Play Store
  • Managing audio sfx
  • Improve the slingshot elastic animation
  • Parallax background
  • Moving clouds
  • Particle effects
  • Android modules
  • Double tap, drag 'n drop, pinch to zoom,...
  • Using Sensors (GPS, accelerometer, light sensor, bluetooth,...)

Credits

Thanks

About

Angry Birds like mobile game. Used for tutorials on how to create a mobile game with Godot 3

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published