Marco para juego de arcade

Me gustaría escribir un juego de arcade ("clon" del juego River Raid ) en JavaScript, usando el <canvas>elemento HTML. Y estoy buscando un marco de juego HTML5 para este propósito.

Necesito:

  • pantalla del cargador
  • manejo del teclado (teclas de flecha y espacio)
  • sprites animados
  • detección de colisiones

No necesito WebGL (correctamente, me gustaría elegir entre el renderizado WebGL y el renderizador Canvas).

También sería bueno si pudiera escribir un bot para este juego (lo necesito para un proyecto).

Escuché sobre Create.js pero no sé si es bueno para mi juego. Tengo algo de experiencia con PIXI.js (sin ninguna otra biblioteca) e intenté escribir un juego con él, pero me quedé atascado después de unas semanas.

Respuestas (1)

melonJS es un motor de juego HTML5 fresco y ligero, que actualmente tiene las siguientes características:

  • Un motor 2D fresco y ligero basado en sprites
  • Biblioteca independiente (no depende de nada más, excepto de un navegador compatible con HTML5)
  • Compatible con la mayoría de los principales navegadores (Chrome, Safari, Firefox, Opera, IE) y dispositivos móviles
  • Compatibilidad con el acelerómetro y el movimiento del dispositivo
  • Alto DPI y escalado automático
  • Compatibilidad con audio HTML5 multicanal y audio web en dispositivos compatibles
  • Implementación de física liviana para garantizar bajos requisitos de CPU
  • Algoritmo de colisión basado en polígonos (SAT) para una detección y respuesta precisas
  • Detección rápida de colisiones de fase amplia mediante partición espacial
  • Compatibilidad con herramientas de terceros para la definición de cuerpos físicos (PhysicEditor, Physic Body Editor)
  • API matemática avanzada para Vector y Matrix
  • Efectos de interpolación
  • Efectos de transición
  • Un conjunto básico de entidades de objeto (que se ampliará)
  • Agrupación de objetos
  • Sistema básico de partículas
  • Manejo básico de animación
  • Compatibilidad con hoja de sprites estándar y texturas empaquetadas (Texture Packer, ShoeBox)
  • Un administrador de estado (para administrar fácilmente la carga, el menú, las opciones, el estado del juego)
  • Versión de formato de mapa en mosaico + integración 0.9.x para facilitar el diseño de niveles
  • Carga de mapas de mosaicos XML sin comprimir, Base64, CSV y JSON codificados
  • Compatibilidad con mapas de mosaicos ortogonales, isométricos y en perspectiva
  • Múltiples capas (múltiples capas de fondo/primer plano, colisión e imagen)
  • Compatibilidad con varios mosaicos
  • Ajustes de transparencia del juego de mosaicos
  • Configuración de capas alfa: compatibilidad con objetos de rectángulo, elipse, polígono y polilínea
  • Objetos en mosaico
  • Azulejos volteados y rotados
  • Ordenación dinámica de capas y objetos/grupos
  • Carga de entidad dinámica
  • Compatibilidad con la colisión de mosaicos basada en formas
  • Fuentes del sistema y de mapa de bits
  • Compatibilidad con dispositivos táctiles y mouse (con emulación de mouse)
  • Soporte integrado para CocoonJS
  • Soporte de mensajería asíncrona (minPubSub)
  • Elementos básicos de GUI incluidos
  • Cargador personalizable