Shmup/README.md

3.6 KiB

A very simple Space Shooter - SHMUP - Shoot Them All

First attempt to use Lephe's Azur.

Yet it only consists in a Particle Engine able to reproduce some kind of explosions and a starfield moving in the background of the screen. The particle engine is based on fixed-point maths for update and on Azur shaders for rendering.

Some pictures of current revision

Boss with Bullet Hell effect (test)

Simple enemy on a Spline Trajectory

Current video of "gameplay"

Still a lot of missing features.

Please see below what I would like to implement on the long run (sorry in French right now).

SHMUP Todo list :

Moteur de jeu

  • [DONE] better keyboard management engine for keypressed() and keyreleased() events
  • Mettre une système d'ajustement de FPS mini avec switch des niveaux d'overclock à la volée de manière dynamique

Partie décors :

  • [WIP] - animer le décors avec le parallaxe (glissement de la droite vers la gauche pour donner l'avancement du vaisseau).
  • animer des éléments du décors (clignotements, sprites animés, ...)
  • interaction avec le décors (collisions possibles avec certaines tiles) qui imposent donc de suivre un "chemin" dans le niveau
  • [DONE] multiple layers de tiles pour avoir des niveaux plus beaux

Partie mouvement :

  • améliorer le système de trajectoires sur base de Splines pour rendre la vitesse des ennemis plus constante.
  • rendre les satellites sur une trajectoire (possibilité d'avoir des patterns plus complexes)
  • possibilité de transformer les trajectoires (grossissement/rétrécissement, translation et rotation)

Partie interaction / gameplay :

  • implémenter les tirs ennemis (avec une IA minimale)
  • [DONE] implémenter les hits des tirs ennemis sur le joueur
  • implémenter les collisions avec les ennemies
  • implémenter les collisions de bullets avec les satellites pour que ceux-ci perdent de la vie aussi
  • implémenter le tir des satellites
  • [DONE] implémenter un système de bonus (points, upgrade tir/satellites/... )
  • implémenter un système d'amélioration de compétence de tirs (bullet -> mega bullet -> laser -> )
  • implémenter un système d'animation du vaisseau (réacteurs par exemple)

Bosses

  • [DONE] Créer des bosses avec différentes zones, mobiles les unes par rapport aux autres
  • [DONE] Créer des hitboxes pour chacune des zones du boss avec différentes sensibilités (par exemple le coeur/générateur = zone critique, mais mieux défendues)
  • [DONE] Créer des protections pour certaines zones qui peuvent "sauter" (boucliers qui s'usent)

Autres :

  • [DONE] plein de trucs dont boss "multi-morceaux et multi-hitboxes"
  • création de différents levels
  • créations de différents ennemis
  • créations de différents boss o boss 1 : "rotating shield" avec multiples cannons o boss 2 : "threwing saws" o boss 3 : "Gun Crab" o boss 4 : "Demoniac Snake" o boss 5 : "Space Octopus"
  • création de séquences avec les boss (différentes phases)
  • créations de différentes armes
  • [DONE - CAN BE IMPROVED] créations de différents bonus
  • création de shields pour se protéger

Modes spéciaux

  • mode menu avec différentes planètes à selectionner pour les différents niveaux
  • mode hyperspace travel pour les transitions :
    • sous mode : à la "Tie fighter" ?
    • sous mode : éviter les astéroïdes
    • sous mode classique shmup horizontal
    • sous mode classique shmup vertical
    • sous mode Danmaku / Bullet Hell (par exemple contre les boss)

Interface :

  • Page d'accueil
  • Choix du niveau
  • Ecran de titre