Byron 3D Games Studio

Accueil | Liens | Forum | Livre d'Or | A propos | Partenaires | Contacts
Lionheart Remake | Présentation | Images | Téléchargements
Artificial Life III - Tournament | Présentation | Images | Téléchargements
Weapons Online | Présentation | Images | Téléchargements
Insane Spaceships | Présentation | Images | Téléchargements
Populous - The Aftermath | Présentation | Images | Téléchargements
Divers | GfxRip Tutorial | Lionheart Remake MakingOf | DjThunder

Lionheart Remake

----------------------------------------------------------------------------------------------------

Lionheart Remake - Making Of

Sommaire

----------------------------------------------------------------------------------------------------

  1. Passé


  2. 5ans. C'est l'âge où j'ai connu 'Lionheart' sur mon 'Amiga 1200'. Un jeu que mes parents m'avaient offert pour mon anniversaire. Ce jour là, ce fut l'extase, devant ce jeu si ... parfait. Je ne m'en lassais plus. Refaire le jeu une Nieme fois n'était pas un problème. C'est comme si à chaque partie il y avait une nouvelle découverte ... ... ou c'est plutot comme si j'étais à la recherche d'un secret ... ... un secret que j'ai finalement pu trouver 14ans plus tard.



  3. Présent


    1. 1ans auparavant

    2. 19ans. C'est l'âge ou j'ai repris le développement de Lionheart Remake. Repris ai-je dis ? En effet, en fait, j'ai commencé ce projet à 18ans. Mais hélas, je me rendis trés vite compte que refaire un jeu d'une telle envergure n'était point chose facile. C'est pour cela que j'ai rapidement arrété le projet, à ma plus grande déception. Je n'étais pas au niveau. Puis, un ans plus tard, je reçois un email d'un certain Gerald Müller-Bruhnke à qui finalement je dois presque tout; car c'est lui qui m'a demandé en personne de poursuivre le projet ( aprés avoir trouvé mes quelques restes... ). ( Voici son site: http://home.wtal.de/gmb )

      Voila en gros ou j'en étais:
      Etape 1


    3. La reprise

    4. Donc, pour la 2ème fois, je me lance dans un tel projet, avec l'espoir cette fois de le finir ! Une dure partie fut de se procurer les Gfx originaux ... et pour cela, il y a le rippping. Mais, evidement, à ce niveau là je ne connaissait pas grand chose. J'ai donc procédé à ce que j'appelerai un Ingame-Rip:
      C'est à dire, de lancer le jeu, de mettre un taux de 2img/sec, puis de prendre des screenshot, et de découper de qui peut me servir ... frame par frame ... A ce rythme, j'ai pu me procurer Valdyn, des monstres, le background ... mais avec un gros défaut de qualité ... du au Ingame-Rip.

      Voila en gros ou j'en étais:
      Etape 2 | Etape 3

      A ce moment là, Gfx en main, il fallait les 'faire vivre'. Pour cela, il existe une chose en informatique, c'est la programmation :p Du code, des lignes, des algos, de la reflexion, et du temps ! Voila les ingrédiants nécéssaires à un développement ! ( et la motivation ). Au début, ce n'était pas trop difficile, voila les grandes étapes:
      - Charger un unique niveau ( sans background )
      - Afficher le personnage et le déplacer simplement, sans animations
      - Mettre en place les animations ( un peu chiant à la longue )
      - Instaurer un systeme de collision ( beaucoup plus chiant ! )

      Une fois ces bases établies, il fallait completer tout ça: des monstres. Mais là, une fois encore, un problème de pose: comment placer tout ça ?
      Avec un éditeur !
      L'editeur étant un outil INDISPENSABLE à la réalisation d'un jeu. Donc grosse parenthèse sur la partie GAME, place à l'EDITOR:


    5. L'editeur de niveaux

    6. - Systeme de GUI ( fenetres )
      - Developpement de fonctions pour gerer facilement ses menus
      - Barre d'outils ( Fichier, Objets ... )
      - Structure de données pour les niveaux, en voici l'organisation:
      • short x; // Position X du Tile sur la carte
        short y; // Position Y du Tile sur la carte
        short tileNum; // N° de Tile
        Ici un short ( WORD: 0 - 65535 ) suffis, et ne prend que 2 bytes
      • - Fonction de Sauvegarde / Chargement ( fichiers *.lrm : Lionheart Remake Map )

      • - Placement des Monstres / Tiles

      • - Structure de données pour les Monstres

        • Bon, pour résumer, il faut stoquer:
          * type du monstre ( pour les differents IA à venir )
          * Mouvement du monstre ( Horizontal, Vertical ... )
          * Position de depart du monstre
          * Données d'animation
      • - Positions de depart / arrivée du Joueur


      J'avais donc mon fichier *.lrm pret, pour chaque niveau. J'avais plus qu'à le charger depuis le jeu, avec un index de Map.

      Voila en gros ou j'en étais:
      Etape 4 | Etape 5
      Etape 6 | Etape 7

      Maintenant, il fallait rédiger les IA des differents monstres. Pour éviter la redondance de code, il valait mieux réfléchir à la manière de la coder: coder une IA pour chaque monstre ? coder des TYPES d'IA ? Bonne réponse: coder des TYPES d'IA. En effet, plusieurs monstres ont la même 'intelligence'. Il est donc plus judicieux de créer une gamme d'IA, et de l'associer à chaque monstre, selon ce qu'il doit faire. ( Mouvement Horizontal, Vertical, Saut... )
      Aussi, pour éviter de devoir recompiler à chaque ajout de monstre, j'ai créer un systeme de données externe pour les monstres. Voici un exemple pour le 1er monstre du 1er niveau ( Rampant, sur Swamp )
      01|64|48|06|04|0|1|1|1|0|1|01|01|16|17|20|21|24|

      Pas beau hein ?
      En détaillant, on obtient ceci:

      num|sX|sY|nFX|nFY|mir|speed|type|IA|play1|play2|turn1|turn2|jump1|jump2|

      num = Numero de monstre
      sx = Taille X du sprite
      sy = Taille Y du Sprite
      nFx = Nombre de Frame en X
      nFy = Nombre de Frame en Y
      mir = Mirroir ( si on veut faire un flip du sprite au depart )
      speed = Vitesse de mouvement & animation
      type = 0(vide) 1(monstre) 2(Potion) 3(Life) 4(Talisment)
      IA = 01(rampant) 02(dino) [...] 17(item) 18(piedestal)
      play1 = 1ere Frame d'animation du Mouvement
      play2 = derniere Frame d'animation du Mouvement
      turn1 = 1ere Frame d'animation de Rotation
      turn2 = derniere Frame d'animation de Rotation
      jump1 = 1ere Frame de Saut
      jump2 = derniere Frame de Saut

      C'est peut être pas le plus clair des moyens, mais il est trés facile à décoder via une fonction. Et quand on connait le systeme, il est facile d'ajouter de nouveaux monstres !

      Voila un bref résumé en ce qui concerne l'EDITEUR

      Voila en gros ou j'en étais:
      Etape 8


    7. Menu, Intro, Extro, Boss

    8. Maintenant que je pouvais tout placer, il fallait pouvoir enchainer les niveau les uns aprés les autres. Il me fallait donc rajouter les Boss de fin de niveaux. Là encore, une grande fonction par Boss, puis le jeu original à coté de moi, afin de reproduire autant que possible le Boss en question. Il y avait tout de même une bonne liste de Boss: Swamp, Lava, Norka Que 3 ? Oui, mais 3 bien coriaces :) Aprés, il fallait un Menu, et L'introduction qui va avec. Alors là, pour l'Intro ... autant vous dire que ca représente un bon % de temps passé à galéré pour reproduire la même que l'originale ! Et c'était pas mieux pour l'Extro de fin ! Le plus dur étant de se caller sur la musique !

      Voila en gros ou j'en étais:
      Etape 9 | Etape 10

      Aprés une bonne série de beta test, j'étais enfin en mesure de sortir une 1ere version de mon remake, ce fut Lionheart Remake v1.0

      Voila en gros ou j'en étais:
      Etape 11


    9. Les versions

    10. Evidement, un tel jeu fait tout seul, ne garantit pas de marcher chez tout le monde. Problèmes de sons ... problèmes de vitesse ... il fallait encore optimiser tout ça. Je suis donc passé par la v1.1, 1.2, 1.3, 2.0, 3.0
      Lionheart Remake v3.0 commençait à enfin ressembler à un remake bien jouable.

      Voila en gros ou j'en étais:
      Etape 12 | Etape 13 | Etape 14

      Mais le temps n'était pas à la flemardise, je comptait poursuivre ! Par chance ? En tout cas, ce remake à beaucoup plut à Henk Nieborg, le graphiste. Il décida donc de me passer tout son dossier de Gfx originaux ! Avec en plus des Gfx non utilisé, ce qui me permit de passer à la version Evolved v1.0, en reprenant tout le code ( presque à 0 )
      Cette version était enfin presque le remake avec un petit plus.

      Voila en gros ou j'en étais:
      Etape 15

      J'avoue qu'à ce moment là, j'ai pensé que tout était fini. Mais j'avais tord. J'ai pas su m'arreter, et me voila lancé dans une nouvelle version:
      Lionheart Remake Enhanced.



  4. Futur


  5. C'est là ou j'en suis actuellement. Une version qui comprendra une partie dite 1:1, c'est à dire le plus conforme possible à l'original. Evidement, il y aura tout mes ajouts personnels. Et une fois de plus, tout le core du jeu a été reprit depuis sa base. Ce qui m'a permis des petites folies, tout comme un vrai Parallaxe, 96 lignes. Un effet de wave de l'eau ( déplacements horizontaux des élements sous l'eau ). Des IA retravaillées, un déplacement de Valdyn presque 100% identique à la version originale. Un nouveau systeme de Map ( nouvel Editeur ). Bref, la totale de nouveau ( Intro & Extro reprises aussi ). Je vous donne rendez-vous prochainement pour la sortie de cette nouvelle version, qui je l'espere, vous plaira plus que les autres !

    [MAJ 06-06-2008]

    Voila en gros ou j'en étais:
    Stage 1 | Stage 2

----------------------------------------------------------------------------------------------------


Lionheart Remake - Making Of

Pierre-Alexandre
Byron 3D Games Studio

Accueil | Forum | Partenaires | A Propos | Contact | ©2007 - 2008 Byron 3D Games Studio