Mad Fire : les méchants arrivent et ils ne sont pas contents
-
- Messages : 1501
- Inscription : dim. 18/avr./2004 15:04
- Localisation : sud de la france
Merci jbernard,
Je rectifie, j'étais un dieu (enfin c'est ce que je pensais ya 20 ans !!), lorsque je programmais réellement des jeux vidéo.
Les vrais Dieux, ce sont les graphistes des Bitmap Brothers qui ont dessiné les décors que j'ai utilisé. Je sais que j'ai encore beaucoup de travail pour produire un code clean. Memory et Mad Fire me permettent de me remettre à la tache. Ensuite, ma troisième production sera un peu plus originale (rdv à l'automne 2009)...
Sinon, jbernard, si tu veux programmer, faut commencer par des objectifs modestes puis les augmenter peu à peu...Lance-toi, bon courage, le forum est plein de ressources...
Je rectifie, j'étais un dieu (enfin c'est ce que je pensais ya 20 ans !!), lorsque je programmais réellement des jeux vidéo.
Les vrais Dieux, ce sont les graphistes des Bitmap Brothers qui ont dessiné les décors que j'ai utilisé. Je sais que j'ai encore beaucoup de travail pour produire un code clean. Memory et Mad Fire me permettent de me remettre à la tache. Ensuite, ma troisième production sera un peu plus originale (rdv à l'automne 2009)...
Sinon, jbernard, si tu veux programmer, faut commencer par des objectifs modestes puis les augmenter peu à peu...Lance-toi, bon courage, le forum est plein de ressources...
Only PureBasic makes it possible
-
- Messages : 1501
- Inscription : dim. 18/avr./2004 15:04
- Localisation : sud de la france
Sympa, et très bonne idée les graphs de xenon 2000 sont superbes.
alors a mon avis, ( mais ce n'est que très subjectif et surtout ça a déjà été dit ):
- privilégie les procédures aux gosubs ( surtout si le code devient important. )
- Optimise ta gestion des collisions. Les spritepixelcollision sont très lents au final et si le jeu fait beaucoup appel à eux, il ralentira. Le mieux etant effectivement de mettre en place un systeme de collision propre aux coordonnées x et y de ton objet. De toute façon, dans un shoot tu dois avoir une marge de manoeuvre, le vaisseau peut mordre un peu
- evite les starspecialfx qui effectivement devraient être plus lents que les sprites 3d, c bizarre...
pour les clipsprites et la v4.30 avec mon code ça marche parfaitement, par contre les usebuffer ne fonctionnent plus. Mais c'est surtout le souci de synchro avec les flipbuffers qui pose probleme ( quand on utilise dx9 j'entends ).
alors a mon avis, ( mais ce n'est que très subjectif et surtout ça a déjà été dit ):
- privilégie les procédures aux gosubs ( surtout si le code devient important. )
- Optimise ta gestion des collisions. Les spritepixelcollision sont très lents au final et si le jeu fait beaucoup appel à eux, il ralentira. Le mieux etant effectivement de mettre en place un systeme de collision propre aux coordonnées x et y de ton objet. De toute façon, dans un shoot tu dois avoir une marge de manoeuvre, le vaisseau peut mordre un peu

- evite les starspecialfx qui effectivement devraient être plus lents que les sprites 3d, c bizarre...
pour les clipsprites et la v4.30 avec mon code ça marche parfaitement, par contre les usebuffer ne fonctionnent plus. Mais c'est surtout le souci de synchro avec les flipbuffers qui pose probleme ( quand on utilise dx9 j'entends ).
Great Mr Pollux,
Effectivement pour les collisions, j'ai privilégié sprite pixelcollision pour les collisions entre sprites et décor (ya des tuiles pas toujours rectangulaires). Ensuite pour les sprites entre eux, les collisions par coordonnées sont très efficaces et largement suffisantes...
Je vais revoir ma copie entre sprite3D et specialFX... mais vraiment, je ne vois pas d'ou vient le ralentissement...
Pour l'instant, y environ 1500 sprites si on compte les tuiles (1200 tuiles de 32*32) des scrolling, les étoiles (500 étoiles de 1*1), les missilles (100 missiles de 4*16) + quelques autres sprites...
Bravo pour Lethal et BGames, c'est techniquement impressionnant...
en plus ya plein d'excelents tutoriaux de Dobro, Comtois, Djes...(désolé pour tous ceux que j'oublie
)
Sinon, dans tous les tutoriaux et avec l'aide de PureBasic,
1 - commence par afficher un sprite
2 - fais le bouger avec les touches du clavier
3 - fais apparaitre un autre sprite qui bouge tout seul
4 - quand ces 2 sprites se touchent, tu joues un son
Quand tu auras fait ça, tu pourras te débrouiller tout seul. Il ne te manquera que le temps et les idées.
Effectivement pour les collisions, j'ai privilégié sprite pixelcollision pour les collisions entre sprites et décor (ya des tuiles pas toujours rectangulaires). Ensuite pour les sprites entre eux, les collisions par coordonnées sont très efficaces et largement suffisantes...
Je vais revoir ma copie entre sprite3D et specialFX... mais vraiment, je ne vois pas d'ou vient le ralentissement...
Pour l'instant, y environ 1500 sprites si on compte les tuiles (1200 tuiles de 32*32) des scrolling, les étoiles (500 étoiles de 1*1), les missilles (100 missiles de 4*16) + quelques autres sprites...
Bravo pour Lethal et BGames, c'est techniquement impressionnant...
Jbernard13, je ne suis pas le bon exemple !!!!apprend moi à programmer comme toi
en plus ya plein d'excelents tutoriaux de Dobro, Comtois, Djes...(désolé pour tous ceux que j'oublie

Sinon, dans tous les tutoriaux et avec l'aide de PureBasic,
1 - commence par afficher un sprite
2 - fais le bouger avec les touches du clavier
3 - fais apparaitre un autre sprite qui bouge tout seul
4 - quand ces 2 sprites se touchent, tu joues un son
Quand tu auras fait ça, tu pourras te débrouiller tout seul. Il ne te manquera que le temps et les idées.
Only PureBasic makes it possible
wow, j'espère que t'affiche pas ton décor d'un blocCool Dji a écrit :
Pour l'instant, y environ 1500 sprites si on compte les tuiles (1200 tuiles de 32*32) des scrolling, les étoiles (500 étoiles de 1*1), les missilles (100 missiles de 4*16) + quelques autres sprites...

ca permet de ne faire scroller que ce qu'on voit à l'écran.
merci pour bgames

Lethal judgment 5 va nous faire passer un cap technique.
là je suis sur un niveau de ville désolée:
- 14 plan de parallaxe, un ciel 3d en mouvement, des vaisseaux qui circulent au fond, des voitures sur une autoroute au premier plan; ça ressemble à last resort si tu connais. La jouabilité va se recentrer aussi sur l'arcade et le fun ( plein d'armes à améliorer ).
Là je galère pour tout optimiser ( et que ça reste fluide )

Non, non, j'affiche le strict minimum. Enfin presque, pour l'instant les tuiles vides sont encore affichées mais un test va vite corriger ça.wow, j'espère que t'affiche pas ton décor d'un bloc
Je travaille aussi sur de nouvelles armes mais je n'ai pas encore la technique pour matérialiser de beaux effets...je ferai avec les moyens du bord et les gfx de Xenon2000...
Bon courage dans Lethal et BGames, c'est une belle aventure !
Only PureBasic makes it possible
-
- Messages : 1501
- Inscription : dim. 18/avr./2004 15:04
- Localisation : sud de la france
?comment tu as fais pour afficher le decor , sachant que les elements sont dans un meme fichier graphique
Dans mon cas, chaque élément (tuile) mesure 32 pixels de large par 32 pixels de haut.
Mon décor est composé par un assemblage de tuiles. C'est en quelque sorte un tableau de lignes et de colonnes. ex :
1,2,0,0,0,0,0,7,8
4,2,2,0,0,0,0,6,5
la premiere ligne du décor (haute de 32 pixels) est composé par la tuile n°1, puis la tuile n°2, puis la tuile n°0, puis la tuile n°0, ...
la seconde ligne du décor (haute de 32 pixels) est composé par la tuile n°4, puis la tuile n°2, puis la tuile n°2, puis la tuile n°0, ...
le fichier graphique contient toutes les tuiles de 32x32.
Il y a 2 manières de faire :
1 - La premiere, je l'apelle la tuile 0, la seconde la tuile 1...
Lorsque je veux afficher une tuile, je n'affiche (via clipsripte, par exemple) que le morceau du décor de 32x32 qui m'interesse...et ainsi de suite jusqu'à ce que j'ai affiché toutes les tuiles du décor...
2 - la seconde, on peut avoir un sprite par tuile et afficher le sprite0 pour la tuile0, le sprite1 pour la tuile1...(c'est ce que je fais. A l'initialisation, je découpe le fichier en autant de sprite que d'éléments et de fait je n'utilise pas clipsprite)
A l'occasion, je te posterai un exemple basique d'affichage de décor pour bien comprendre ces 2 techniques (mais yen a surement d'autres)...
Only PureBasic makes it possible
-
- Messages : 1307
- Inscription : dim. 08/juil./2007 18:32
- Localisation : Toulouse
impossible à dire, je viens de découvrir grâce à toi l'existence de cette commande, bien mystérieuse. Je n'ai pas encore installé la 4.30 car j'ai trop de trucs à faire pour mon jeu, et j'ai pas envie de me prendre la tête s'il faut modifier des trucs comme lors du passage de la 3.94 à la 4.00Polux a écrit :pour les clipsprites et la v4.30 avec mon code ça marche parfaitement, par contre les usebuffer ne fonctionnent plus. Mais c'est surtout le souci de synchro avec les flipbuffers qui pose probleme ( quand on utilise dx9 j'entends ).
Djes aura peut être la réponse...
sur la rolls des consoles, la neo geo, oui, j'y ai joué dans un magasin y a longtemps, un jeu tellement surchargé qu'il ramait assez souvent... ce qui était finalement salvateur pour éviter les nombreuses boulettes.Polux a écrit : ça ressemble à last resort si tu connais. La jouabilité va se recentrer aussi sur l'arcade et le fun ( plein d'armes à améliorer ).
Là je galère pour tout optimiser ( et que ça reste fluide )

Hello Gildev,
J'avance doucement mais surement tout essayant d'organiser le code. J'ai vraiment du mal à produire du premier coup un code structuré et clean et je ne fais pas toujours l'effort de corrigé le tir après (mais je progresse).
http://xdji.free.fr/Telechargement/Mad%20Fire.zip
J'ai intégré un menu (le jostick n'est pas encore pris en compte).
Je n'ai pas correctement bloqué le dépassement du player sur les bords et la détection des missiles hors écran provoque un bug (ce qui est normal).
Je travaille sur le Map Editor pour constuire les décors et intégrer les ennemis, coordonner le décor d'arrière plan avec premier plan...
Je test quelques armes (les collisisons avec le laser ne fonctionnent pas encore)
Bref, il reste encore beaucoup de travail...et pour reprendre la méthode de mesure de progression de guerrier01 :
IA 0%
Armes 12%
Collision 22,45 %
Jouabilité 0%
FunPlay 2%
Graphismes 100% (c'est facile, c'est pas moi)
Music 100% (idem)
...la liste est encore longue !!
Total entre 11 et 12%
J'avance doucement mais surement tout essayant d'organiser le code. J'ai vraiment du mal à produire du premier coup un code structuré et clean et je ne fais pas toujours l'effort de corrigé le tir après (mais je progresse).
http://xdji.free.fr/Telechargement/Mad%20Fire.zip
J'ai intégré un menu (le jostick n'est pas encore pris en compte).
Je n'ai pas correctement bloqué le dépassement du player sur les bords et la détection des missiles hors écran provoque un bug (ce qui est normal).
Je travaille sur le Map Editor pour constuire les décors et intégrer les ennemis, coordonner le décor d'arrière plan avec premier plan...
Je test quelques armes (les collisisons avec le laser ne fonctionnent pas encore)
Bref, il reste encore beaucoup de travail...et pour reprendre la méthode de mesure de progression de guerrier01 :
IA 0%
Armes 12%
Collision 22,45 %
Jouabilité 0%
FunPlay 2%
Graphismes 100% (c'est facile, c'est pas moi)
Music 100% (idem)
...la liste est encore longue !!
Total entre 11 et 12%
Only PureBasic makes it possible
Allez, c'est décidé, je commence à en faire un demain matin. Ca me donne trop envie. C'est vraiment parce que ça me rappelle les années 80-90.
Je vais réfléchir cet après-midi au thème du shoot'em up. Je vais déjà faire un seul level, on verra après pour la suite si j'y arrive.
Analyse: 1%
Scénario: 0%
Décors: 0%
Vaisseau: 0%
Ennemis: 0%
Armes: 0%
Jouabilité: 0%
Collisions: 0%
Bruitages: 0%
Musiques: 0%

Je vais réfléchir cet après-midi au thème du shoot'em up. Je vais déjà faire un seul level, on verra après pour la suite si j'y arrive.

Analyse: 1%
Scénario: 0%
Décors: 0%
Vaisseau: 0%
Ennemis: 0%
Armes: 0%
Jouabilité: 0%
Collisions: 0%
Bruitages: 0%
Musiques: 0%