The Flutter Casual Games Toolkit pulls together new and existing resources so you can accelerate development of games on mobile platforms.
This page outlines where you can find these available resources.
Why Flutter for games?
The Flutter framework can create performant apps for six target platforms from the desktop to mobile devices to the web.
With Flutter’s benefits of cross-platform development, performance, and open source licensing, it makes a great choice for games.
Casual games fall into two categories: turn-based games and real-time games. You might be familiar with both types of games, though perhaps you didn’t think about them in quite this way.
Turn-based games cover games meant for a mass market with simple rules and gameplay. This includes board games, card games, puzzles, and strategy games. These games respond to simple user input, like tapping on a card or entering a number or letter. These games are well suited for Flutter.
Real-time games cover games a series of actions require real time responses. These include endless runner games, racing games, and so on. You might want to create a game with advanced features like collision detection, camera views, game loops, and the like. These types of games could use an open source game engine like the Flame game engine built using Flutter.
What’s included in the toolkit
The Casual Games Toolkit provides the following free resources.
A repository that includes three new game templates that provide a starting point for building a casual game.
A base game template that includes the basics for:
- Main menu
- Level selection
- Player progress
- Play session management
A card game template that includes everything in the base template plus:
- Drag and drop
- Game state management
- Multiplayer integration hooks
An endless runner template created in partnership with the open source game engine, Flame. It implements:
- A FlameGame base template
- Player steering
- Collision detection
- Parallax effects
- Different visual effects
A sample game built on top of the endless runner template, called SuperDash. You can play the game on iOS, Android, or web, view the open source code repo, or read how the game was created in 6 weeks.
- Developer guides for integrating needed services.
- A link to a Flame Discord channel. If you have a Discord account, use this direct link.
The included game templates and cookbook recipes make certain choices
to accelerate development.
They include specific packages, like
If you prefer other packages, you can change the code to use them.
The Flutter team understands that monetization might be a future consideration. Cookbook recipes for advertising and in-app purchases have been added.
Are you ready? To get started:
- If you haven’t done so, install Flutter.
- Clone the games repo.
READMEfile for the first type of game you want to create.
- Join the Flame community on Discord (use the direct link if you already have a Discord account).
Review the codelabs and cookbook recipes.
- Build a multiplayer game with Cloud Firestore.
- Make your games more engaging with leaderboards and achievements.
- Monetize your games with in-game ads and in-app purchases.
- Add user authentication flow to your game via Firebase Authentication.
- Collect analytics about crashes and errors inside your game with Firebase Crashlytics.
- Set up accounts on AdMob, Firebase, and Cloud, as needed.
- Write your game!
- Deploy to both the Google Play and Apple stores.
For Google I/O 2022, both the Flutter team and Very Good Ventures created new games.
The Flutter team created I/O Flip, a virtual CCG. To learn more about I/O Flip, check out How It’s Made: I/O FLIP adds a twist to a classic card game with generative AI on the Google Developers blog and play the game in your browser.
Once you feel ready to go beyond these games templates, investigate other resources that our community recommended.
|Animation and sprites
and asset tools
|Game services integration
book_5 Add advertising to your Flutter game