Saltar al contenido principal

Casual Games Toolkit

Aprende sobre desarrollo de juegos 2D multiplataforma gratuitos y de código abierto en Flutter.

El Flutter Casual Games Toolkit reúne recursos nuevos y existentes para que puedas acelerar el desarrollo de juegos en plataformas móviles.

Esta página resume dónde puedes encontrar estos recursos disponibles.

¿Por qué Flutter para juegos?

#

El framework de Flutter puede crear apps de alto rendimiento para seis plataformas objetivo, desde el escritorio hasta dispositivos móviles y la web.

Con los beneficios de Flutter para el desarrollo multiplataforma, su rendimiento y su licencia de código abierto, se convierte en una gran elección para juegos.

Los juegos casuales se dividen en dos categorías: juegos por turnos y juegos en tiempo real. Es posible que estés familiarizado con ambos tipos de juegos, aunque tal vez no los habías pensado exactamente de esta manera.

Los juegos por turnos abarcan juegos pensados para un público masivo con reglas y jugabilidad sencillas. Esto incluye juegos de mesa, juegos de cartas, rompecabezas y juegos de estrategia. Estos juegos responden a interacciones simples del usuario, como tocar una carta o ingresar un número o letra. Estos juegos se adaptan muy bien a Flutter.

Los juegos en tiempo real abarcan juegos con una serie de acciones que requieren respuestas en tiempo real. Estos incluyen juegos de carrera infinita (endless runner), juegos de carreras, etc. Quizás quieras crear un juego con características avanzadas como detección de colisiones, vistas de cámara, bucles de juego (game loops) y similares. Este tipo de juegos podrían utilizar un motor de juegos de código abierto como el motor de juegos Flame creado con Flutter.

Lo que incluye el toolkit

#

El Casual Games Toolkit ofrece los siguientes recursos gratuitos.

  • Un repositorio que incluye tres plantillas de juegos que sirven como punto de partida para construir un juego casual.

    1. Una plantilla base de juego que incluye lo básico para:

      • Menú principal
      • Navegación
      • Ajustes
      • Selección de nivel
      • Progreso del jugador
      • Gestión de sesiones de juego
      • Sonido
      • Temas
    2. Una plantilla de juego de cartas que incluye todo lo de la plantilla base más:

      • Arrastrar y soltar
      • State Management de juegos
      • Hooks para integración multijugador
    3. Una plantilla de runner infinito creada en alianza con el motor de juegos de código abierto Flame. Implementa:

      • Una plantilla base de FlameGame
      • Control del jugador
      • Detección de colisiones
      • Efectos parallax
      • Generación de elementos (Spawning)
      • Diferentes efectos visuales
    4. Un juego de muestra construido sobre la plantilla de runner infinito, llamado SuperDash. Puedes jugar el juego en iOS, Android, o en la web, ver el repo de código abierto, o leer cómo se creó el juego en 6 semanas.

  • Guías para desarrolladores sobre cómo integrar los servicios necesarios.

  • Un enlace a un canal de Flame Discord. Si tienes una cuenta de Discord, usa este enlace directo.

Las plantillas de juegos y las recetas del cookbook incluidas toman ciertas decisiones para acelerar el desarrollo. Incluyen paquetes específicos, como provider, google_mobile_ads, in_app_purchase, audioplayers, crashlytics y games_services. Si prefieres otros paquetes, puedes cambiar el código para usarlos.

El equipo de Flutter entiende que la monetización podría ser una consideración futura. Se han añadido recetas en el cookbook para publicidad y compras dentro de la aplicación.

Como se explica en la página de Juegos, puedes aprovechar hasta $900 en ofertas al integrar servicios de Google, tales como Cloud, Firebase y Ads, en tu juego.

Primeros pasos

#

¿Estás listo? Para empezar:

  1. Si aún no lo has hecho, instala Flutter.

  2. Clona el repo de juegos.

  3. Revisa el archivo README para el primer tipo de juego que quieras crear.

  4. Únete a la comunidad de Flame en Discord (usa el enlace directo si ya tienes una cuenta de Discord).

  5. Revisa los codelabs y las recetas del cookbook.

  6. Configura cuentas en AdMob, Firebase y Cloud, según sea necesario.

  7. ¡Escribe tu juego!

  8. Despliega tanto en la tienda de Google Play como en la de Apple.

Juegos de ejemplo

#

Para Google I/O 2022, tanto el equipo de Flutter como Very Good Ventures crearon nuevos juegos.

Otros recursos

#

Una vez que te sientas listo para ir más allá de estas plantillas de juegos, investiga otros recursos que nuestra comunidad recomendó.

Característica Recursos
Animación y sprites

book_5 Efectos especiales
handyman Spriter Pro
package_2 rive
package_2 spritewidget

Reseña de la app

package_2 app_review

Audio

package_2 audioplayers
package_2 flutter_soloud

Autenticación

science Autenticación de usuarios usando Firebase

Servicios Cloud

science Añade Firebase a tu juego de Flutter

Depuración

quick_reference_all Visión general de Firebase Crashlytics
package_2 firebase_crashlytics

Drivers

package_2 win32_gamepad

Assets del juego
y herramientas para assets

photo_album CraftPix
photo_album Game Developer Studio
handyman GIMP

Motores de juego

package_2 Flame
package_2 Bonfire
package_2 forge2d

Características del juego

book_5 Agrega logros y tablas de clasificación a tu juego
book_5 Añade soporte multijugador a tu juego

Integración de servicios de juegos

package_2 games_services

Editor de niveles

handyman Tiled

Monetización

book_5 Añade publicidad a tu juego de Flutter
science Añade anuncios de AdMob a una app de Flutter
science Añade compras dentro de la aplicación a tu app de Flutter
science Gaming UX and Revenue Optimizations for Apps (PDF)

Persistencia

package_2 shared_preferences
package_2 sqflite
package_2 cbl_flutter (Couchbase Lite)

Efectos especiales

api Paint API
book_5 Efectos especiales

Experiencia de Usuario

quick_reference_all Mejores prácticas para optimizar la velocidad de carga web de Flutter

Otros recursos

#

Echa un vistazo a los siguientes videos: