Les membres ayant 30 points peuvent parler sur les canaux annonces, projets et hs du chat.

Forum Casio - Projets de programmation


Index du Forum » Projets de programmation » AngryBirds StarWars
Theprog Hors ligne Membre Points: 1447 Défis: 20 Message

AngryBirds StarWars

Posté le 17/05/2014 21:20

Bonjour à tous,

Bienvenue sur la page du projet d'adaptation du jeu AngryBirds dans sa version StarWars sur nos chères Casio
C'est un de mes plus vieux projets, et à ce titre il a eu droit à plusieurs reprises à zéro. Il est actuellement en cours de développement dans sa nouvelle version, codée en C++ pour les caltos 75/85/95 (SD).

Vidéo de presentation dans l'état actuel


Les nouveautés par rapport aux anciennes versions:

- J'ai ajouté un système de scroll et zoom car c'était ce qu'il me manquait le plus dans les anciennes versions pour réussir a faire des niveaux différents. C'est donc la plus grosse différence. Le seul problème est la qualité des graphismes. En effet, en zoomant ou en dezoomant on passe sur un affichage « simplifié » avec des éléments géométriques, car c'était ce qui rendait le mieux à cause de la taille des sprites ; mais ca perd un peu de charme


- Le moteur physique a été revu, notamment en ajoutant les « rebonds » des objets les uns sur les autres comme amélioration notable mais il a aussi été optimisé par rapport à l'ancien, ce qui permet d'ajouter plus d'éléments, j'espère, sans trop de perte de performances. Par contre les briques que l'on retrouve dans le jeu sur mobile et qui peuvent voler, s'abîmer, ... n'ont pas encore été ajouté car la physique est plus complexe et je ne sais pas si ça rendrait très bien, là aussi à cause de leur taille. Elles resteront donc probablement fixes dans le futur.

- Les niveaux seront dorénavant chargés depuis des fichiers pour plus de simplicité et de facilité à ajouter les niveaux futurs

- Les menus vont changer pour quelque chose de plus simple que précédemment, car les anciens ne me plaisent plus.

- Les objets peuvent tourner grâce au patch de Ninestar sur MonochromeLib, ce qui est notamment utile pour la création de niveau ou pour la rotation des oiseaux en fonction de la direction dans laquelle ils vont.



L'état actuel et ce qu'il reste à faire:

Actuellement, il est possible de jouer au jeu. Le moteur physique est utilisable dans l'état énoncé au dessus. Il reste donc surtout à ajouter les niveaux.

Faire les menus
Faire les niveaux
Implémenter les capacités des oiseaux
Régler les bugs de rotation de sprites
La compatibilité SH4
Ajouter les briques mobiles (dans le futur ?)


Les personnes à remercier:

Lephenixnoir pour Memory et le partage de sprites.
Pierrotll pour MonochromeLib
Ninestars pour son amélioration de MonochromeLib, avec les algorithmes de rotation
DarkStorm pour ses tutos sur les syscalls
Aragorn pour ses sprites d'oiseaux
Shaber, d'OpenGameArt.org pour ses sprites de planètes


J'essayerai de tenir à jour ce topic au fur et à mesure.

Ancienne description (02/06/2015 à 30/07/2017)
Cliquer pour enrouler
Salut a tous,

Voila le projet que j'ai commencé il y a un bail et qu'il faut que je termine.
Il s'agit d'une adaptation du jeu AngryBirds mais la version StarWars. En effet, je me base sur mon moteur physique que j'avais fait pour les CPC et le projet "Appolo".
Enfin bref, j'espere qu'il vous plaira.

A l'heure actuelle, bien qu'une premiere version soit deja sortie, je suis en train de la mettre a jour avec de nouveaux graphismes plus fideles a ceux de l'original, avec differents piafs, des obstacles, ... Enfin bref, pleins de trucs cools.

J'ai deja refait pas mal de choses, à savoir:
la plupart des graphismes
la gestion des differents oiseaux et leurs capacitées (il faut que j'en revoit certaines)
l'affichage de la trajectoire pendant le lancé
les menus que je n'ai pas touché depuis la derniere version
le systeme de fichier fonctionnel
la symetrie des sprites des objets marche

Tout ceci nous donne un jeu avec cet aspect:


Il me reste a faire:
coder tous les niveaux manquants (3 mondes avec 9 niveaux plus 2 tutos)
faire l'algo de rotation des images pour alleger le bousin et diversifier les niveaux
appliquer la physique aux morceaux de bois (dans le meilleur de mes reves)
peut-etre faire un systeme de scroll, la taille etant pour le moment tres limitée
essayer de reprendre la comatibilité SH4 (pour le moment SH4 CT obligé)

Voila, j'espere que ca vous plaira, et que vous serez nombreux pour m'aider à debugger


Ancienne description (17/05/2014 à 02/06/2015)
Cliquer pour enrouler
Bon voila je fini par créer un topic
Donc depuis quelques temps, je suis sur un nouveau projet, une adaptation de Angry Bird StarWars sur calto
Ce Angry Bird est basé sur le moteur physique de Appolo (c'est surtout pour ça que je le fait) avec un disign un peu soigné même si je suis un peu limité par la résolution de l’écran...
Tout se fait avec EXE et les flèches et tout les corps (les cochon, les étoiles noires et les vaisseaux) vous attirent.
Je pense avoir tout dit

Donc voila le principal du jeu est fait, il me reste a faire (dans l'ordre des priorités):
tout les niveaux + les tutoriels
refaire un meilleur système de lancer
les personnages spéciaux
l’intégration de plusieurs cochons
un système de plusieurs étoiles ( finir à 3 étoiles tout les niveaux)
à vous de me proposer

Je me suis organisé pour les types de mondes:
Monde 1 : Un équivalent de Appolo, seulement aller taper le cochon
Monde 2 : Ajout des objets déplaçables avec l'aide de la force (donc ajout des piafs speciaux)
Monde 3 : Plusieurs planètes avec des champs de gravités délimitées et variables et peut être plusieurs cochons

La première version est en pièce jointe avec les menus et le niveau 1 du monde 1 pour un petit aperçu


Fichier joint


Lephenixnoir Hors ligne Administrateur Points: 22762 Défis: 149 Message

Citer : Posté le 01/08/2017 12:50 | #


Ah oui c'est moi qui ai mal interprété cette phrase de Ninestars !
Ninestars a écrit :
T'as pas choisis le plus avantageux à ce niveau... avec les planètes ça implique de devoir tourner autour, [...]

C'est l'oiseau qui tourne autour, pas la caméra ! Du coup ça fait encore moins de sprites à faire.

Merci pour la lib ! Alors du coup Ninestars, c'est clair que la rotation est optimisée, je vois pas de technique plus rapide à vue de nez. Je n'ai pas fait le test de comparaison de performance encore, mais je le ferai à l'occasion. Ça risque quand même d'être 25/30 fois plus lent que l'affichage normal de sprite avec gint.
Ninestars Hors ligne Membre Points: 2451 Défis: 24 Message

Citer : Posté le 01/08/2017 12:55 | #


lephenixnoir a écrit :
Aucun rendu n'est aussi bon qu'un dessin fait à la main
C'est ce que je sous-entendais en disant
T'as pas choisis le plus avantageux à ce niveau... avec les planètes ça implique de devoir tourner autour, d'avoir une caméra plus éloignée donc d'avoir des sprites petits et avec un angle (j'ai fait aussi un algo pour ça si ça t'intéresse), le rendu risque d'être assez moyen :/

Faire une transformation pour tourner/zoomer/dézoomer un sprite ne pose pas de problème, la qualité reste bonne. Sauf dans ce cas où les sprites sont tous petits. Avec la faible résolution, les erreurs prennent trop d'importance et saccagent le rendu ! :/

lephenixnoir a écrit :
et plus ton algo est rapide, moins le rendu est fidèle, ça me semble d'une logique implacable !
Hmmm je saisis pas ta logique pour le coup

Theprog a écrit :
(j'ai pas moyens de tester la comme le sprite-coder est HS)
Regarde dans les commentaires du topic, j'ai partagé un petit programme pour remplacer sprite coder (c'est pas le plus beau mais il fonctionne très bien )

En bref, le défi pour ton jeu, il est graphique. Comment faire un jeu qui évite la boullie de pixel ? ... Et le deuxième, c'est de faire un gameplay correct. Parce que pour moi tout l'intérêt de Angry Bird est porté sur la physique du jeu. Faire tomber des blocs, qui vont basculer qui vont écraser les cochons... Avec des éléments rigides c'est un peu moins drôle et difficile de faire un gameplay profond. De plus comment distinguer les matériaux visuellement ?
Mais il doit quand même y avoir de quoi faire quelque chose de bien
Lephenixnoir Hors ligne Administrateur Points: 22762 Défis: 149 Message

Citer : Posté le 01/08/2017 13:24 | #


Ninestars a écrit :
Faire une transformation pour tourner/zoomer/dézoomer un sprite ne pose pas de problème, la qualité reste bonne.

Regarde Snow Wars, c'est le seul exemple que je connaisse. Certes je suis passablement perfectionniste mais je ne trouve pas ça vraiment satisfaisant.

Ninestars a écrit :
Hmmm je saisis pas ta logique pour le coup

Plus ton rendu est fidèle, plus tu fais de calculs (moyennage sur plusieurs points, anti-aliasing, etc). Par « contraposition » ensuite, plus c'est rapide, moins t'as été dans le détail, moins c'est précis.

Je plussoie Ninestars sur le défi graphique. Je crois qu'on néglige un peu trop souvent cet aspect, tout comme le « flou » du scroll sur une machine réelle, qui est un vrai casse-tête à gérer.

LienAjouter une imageAjouter une vidéoAjouter un lien vers un profilAjouter du codeCiterAjouter un spoiler(texte affichable/masquable par un clic)Ajouter une barre de progressionItaliqueGrasSoulignéAfficher du texte barréCentréJustifiéPlus petitPlus grandPlus de smileys !
Cliquez pour épingler Cliquez pour détacher Cliquez pour fermer
Alignement de l'image: Redimensionnement de l'image (en pixel):
Afficher la liste des membres
:bow: :cool: :good: :love: ^^
:omg: :fusil: :aie: :argh: :mdr:
:boulet2: :thx: :champ: :whistle: :bounce:
valider
 :)  ;)  :D  :p
 :lol:  8)  :(  :@
 0_0  :oops:  :grr:  :E
 :O  :sry:  :mmm:  :waza:
 :'(  :here:  ^^  >:)

Σ π θ ± α β γ δ Δ σ λ
Veuillez donner la réponse en chiffre
Vous devez activer le Javascript dans votre navigateur pour pouvoir valider ce formulaire.

Si vous n'avez pas volontairement désactivé cette fonctionnalité de votre navigateur, il s'agit probablement d'un bug : contactez l'équipe de Planète Casio.

Planète Casio v42 © créé par Neuronix et Muelsaco 2004 - 2022 | Il y a 56 connectés | Nous contacter | Qui sommes-nous ? | Licences et remerciements

Planète Casio est un site communautaire non affilié à Casio. Toute reproduction de Planète Casio, même partielle, est interdite.
Les programmes et autres publications présentes sur Planète Casio restent la propriété de leurs auteurs et peuvent être soumis à des licences ou copyrights.
CASIO est une marque déposée par CASIO Computer Co., Ltd