Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#276 Le 11/01/2010, à 11:08

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

ouais, faudrait recompresser tout ça ^^

le fait qu'elless soient en double aussi (mp3 et ogg) pour que ce soit natif sur windows comme sous linux, je sais pas si c'est une bonne idée... faudrait à minima faire un rm des .mp3 à la construction du .deb et un rm des .ogg a la construction du (future) .zip pour windows...

Hors ligne

#277 Le 11/01/2010, à 18:01

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

@tshirtman :
Je viens de faire une modification dans gui.py pour permettre les animations (cf menu crédits). J'ai conservé le pygame.event.wait pour des raisons de performances mais je ne suis pas sûr que ce soit nécessaire.
Sinon, je pense mettre des animation dans le menu pour changer de personnages (par ex: on voit comment les perso marchent ou sautent), tu en penses quoi ?

Et pour une aide dans le jeu ?

Dernière modification par xapantu (Le 11/01/2010, à 18:02)

Hors ligne

#278 Le 11/01/2010, à 18:14

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

je pense que c'est une bonne idée smile ça coute rien vu que le perso est déjà chargé de toutes façons, gérer son state et lui faire des update avec le temps devrait suffire smile (de mémoire). (pour le saut c'est un poil plus complexe, il faut gérer les vecteurs, le faire sans environnement physique c'est un peu relou pour l'instant, mais les faire marcher quelques secondes puis donner un coup au pif, puis remarcher, ça peut être sympa...)

Pour le event.wait, si les perfs t'inquiète tu peut regarder le profiler: http://docs.python.org/library/profile.html#instant-user-s-manual smile

pour une aide dans le jeu ça peut être intéressant un rappel des touches et des combos via un menu ingame (et qu'on peut mettre accessoirement dans les menus normaux).

ça me fait penser qu'on pourrait commencer par faire une IA partielle genre pour un mode entrainement qui donne juste de coups, pour commencer.

Dernière modification par tshirtman (Le 11/01/2010, à 18:21)

Hors ligne

#279 Le 11/01/2010, à 18:23

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

mais les faire marcher quelques secondes puis donner un coup au pif, puis remarcher, ça peut être sympa

Ok, je vais essayer bientôt tongue

Hors ligne

#280 Le 11/01/2010, à 18:37

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

je pense qu'il faut hériter d'Entity et regarder autour, sans tenir compte des frappes clavier, et ne pas prendre des décisions à toutes les frames, pour laisser le temps à l'action de se faire.

un autre s'y est cassé les dents l'an dernier, mais il voyait plus gros, et le code était moins claire à l'époque.

Hors ligne

#281 Le 11/01/2010, à 18:44

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

un autre s'y est cassé les dents l'an dernier, mais il voyait plus gros, et le code était moins claire à l'époque.

C'est celui qui a commencé l'AI ?
Parce que je viens de regarder, en fait je pensais que c'était plus simple que ça sad
Peut-être qu'en simulant des frappes de claviers (enfin, je veux dire faire les actions comme si quelqu'un tapait sur le clavier), ça serait plus simple ? Je vais essayer de regarder.

edit: sinon, j'ai ouvert un sujet là :
http://forum.freegamedev.net/viewtopic.php?f=22&t=103

Dernière modification par xapantu (Le 11/01/2010, à 18:47)

Hors ligne

#282 Le 11/01/2010, à 20:26

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

Oui, mais je pense qu'il vaut mieux que tu parte de zero... il comptait tout refaire, et j'ai plus eu trop de nouvelles, il me proposait de refactorer un peu tout le jeu, mais je n'ai pas le temps de faire ça hmm et je pense qu'on peut le finir avec la structure actuelle. En ce moment je pense qu'il a plus trop le temps, je l'apperçois rarement.

Sinon je ne pense pas que simuler des frappes soit le plus simple, juste choisir une action parmis ce qui nous est permis par sequences.cfg, éventuellement mettre une probabilité de rater la manip si elle demande trop de frappes, mais pas trop important, attendre un temps déterminé (fin de l'action ou distance parcourus) et faire une autre action.

Pas besoin que ce soit trop complexe au début, juste regarder si un ennemi est a portée (y'a une fonction pour calculer la distance entre deux entités) et tapper/attendre la fin du coup, c'est un bon début, on peut ajouter d'autres actions/décisions sur des critères plus complexes après.

Mais non en tout cas, faire une IA ce n'est pas simple!  (sinon ce serait fait depuis un bail ^^).

Hors ligne

#283 Le 12/01/2010, à 19:43

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

un autre s'y est cassé les dents l'an dernier

Ah, oui, je comprends pour quoi big_smile
Si tu as le temps de répondre à quelques questions hmm
Je doit pas être doué big_smile mais je ne comprend pas où sont géré les événement pendant le jeu. Tout est dans timed_event.py ?!
Et si tout est géré dans timed_event.py, où est-ce que les événements sont répercutés sur les persos ?!

Dernière modification par xapantu (Le 12/01/2010, à 20:32)

Hors ligne

#284 Le 13/01/2010, à 01:03

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

salut et désolé du temps de réponse... je suis assailli de toutes parts ^^

alors, oui les évenements sont gérés par timed_event.py, en gros dans Game, il y a une liste d'évenements "en cours", a chaque boucle le Game fait un update sur tous. C'est là que les choses intérressantes commencent.

La classe TimedEvent définit un comportement générique, quand on fait update, l'évenement regarde s'il est toujours valide temporellement, puis si sa condition éventuelle est toujours vraie, et enfin réalise son action si tout va bien, et se supprime dans le cas contraire (ce qui peut déclencher d'autres actions).

Pour chaque type d'évenement on crèe une classe qui hérite de TimedEvent, et surcharge au moins "execute" et "condition" (on utilise jamais la classe de base). Enfin, pour que l'évent puisse modifier un ou plusieurs persos/items, on lui passe des paramettres à sa création, qui sont des références vers les objets concernés.

Pour que les fichier xml puissent lancer des évenements, il y a un mapping entre les noms d'évents et leur classe en bas du fichier.

C'est sans doute pas parfait, mais je suis pas mécontent du design de cette partie du jeu, j'en suis venus à lui faire gérer les vecteurs de déplacement par évenements vu que ça marche bien smile.

Hors ligne

#285 Le 13/01/2010, à 08:07

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Ok, merci, je vais regarder ça smile

Hors ligne

#286 Le 13/01/2010, à 13:59

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Bon, ça y est, j'ai à peu près compris comment ça marchait lol
Donc si j'ai bien compris, les frappes de claviers sont gérés dans controls (tiens d'ailleurs ça me fait penser que j'aurais du l'utiliser pour les menus neutral ). Donc je pense gérer l'IA par l'intermédiaire de controls. Comme ça, ça ne complexifie pas trop le jeu lui-même et je trouve ça plus logique vu que de toute façon self.game est envoyé à controls. Et puis niveau performance, je pense que ça reviens à peu près au même que d'utiliser une autre classe pour l'IA
Tu penses que c'est une bonne idée ?

Dernière modification par xapantu (Le 13/01/2010, à 14:04)

Hors ligne

#287 Le 13/01/2010, à 14:44

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

(tiens d'ailleurs ça me fait penser que j'aurais du l'utiliser pour les menus neutral )

si tu trouve le temps de faire la conversion je veux bien ^^, mais bon j'allais pas te le reprocher non plus wink.

Sinon pour l'idée d'utiliser les controles pour l'IA je ne suis pas sur que ce soit le plus simple, mais bon c'est une façon comme une autre, de toutes façons ce n'est que l'interface entre le processus décisionnel et le jeu, si tu sépare les deux ça devrait pas être un problème de toutes façons. (même si je vois la conversion "décision du mouvement à faire -> touches à taper avec timing -> exécution du mouvement", comme inutile, si ça te parait plus simple de faire comme ça, vas y ^^).

Hors ligne

#288 Le 13/01/2010, à 15:04

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

si tu trouve le temps de faire la conversion je veux bien ^^

En même temps, maintenant que les menus utilisent aussi la souris, je pense que c'est une mauvaise idée parce que ça utiliserai les événement à deux endroits en même temps.

D'accord, je viens de commencer (vraiment de commencer ^^). Je viens de désactiver les touches du claviers pour l'IA (c'est vraiment le début big_smile ).

Dernière modification par xapantu (Le 13/01/2010, à 15:06)

Hors ligne

#289 Le 13/01/2010, à 15:21

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

y'a un début a tout ^^ et c'est un bon début ^^

cela dit en mode debug ça peut te servir de les avoir, pour tester, donc je te conseillerait de mettre ça en option dans la classe, ou d'avoir juste une ligne a commenter/décommenter pour ça. wink

Hors ligne

#290 Le 13/01/2010, à 18:39

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Bon, je viens de faire une classe AI. Pour l'instant, si l'autre joueur est à droite, le perso va à droite et s'il est à gauche, il va à gauche.
Ça c'est de l'intelligence évolué big_smile (oui, d'accord, si il y a un trou, il fonce dedans mais bon) lol

A part ça, on sort une bêta ?

(sur l'autre forum ils ont pas l'air super intéressé)

Hors ligne

#291 Le 13/01/2010, à 19:24

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Bon sinon, je viens de regarder l'optimisation des musiques.
Je ne parle que des ogg.
Non-optimisé : ~23 mo (toutes) ex : http://usf.tuxfamily.org/nouveau/game_1.ogg  (~6mo)
optimisé : ~8mo (toutes) ex : http://usf.tuxfamily.org/nouveau/game_1_new.ogg  (~1,5mo)
Je n'ai pas l'impression qu'il y ait une grande perte de qualité mais bon je n'ai jamais eu une oreille très "efficace" .

Hors ligne

#292 Le 13/01/2010, à 19:58

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

Le résultat pour les musiques me semble tout à fait acceptable! donc on peut faire ça oui. pour l'instant on va mettre que les ogg optimisés dans le .deb.

On génère le .deb, on teste un peu tout, on corrige les trucs rapide et on le sort comme béta, hop! smile

Hors ligne

#293 Le 13/01/2010, à 20:08

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

ok, je les mettrai dans la branche bazaar demain smile et je déplacerai les musiques en haute qualité dans un dossier source à la racine (comme code et doc, ça va ?). Comme ça on pourra mettre aussi les svg des persos des fond etc...

Dernière modification par xapantu (Le 13/01/2010, à 20:11)

Hors ligne

#294 Le 14/01/2010, à 19:21

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Bon je viens de regarder, j'ai mis les musiques dans un autre dossier et avec un remove des mp3, le paquet ne fait plus que 17,1 mo. (je vais l'uploader tout de suite tongue )

Hors ligne

#296 Le 14/01/2010, à 19:28

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Hors ligne

#297 Le 15/01/2010, à 19:19

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Quelqu'un a testé ?

Hors ligne

#298 Le 16/01/2010, à 10:16

kidanger

Re : Ultimate Smash Friends: un smash bros like en python

Oui ça marche smile

Bonne continuation!

Hors ligne

#299 Le 16/01/2010, à 14:31

xapantu

Re : Ultimate Smash Friends: un smash bros like en python

Merci smile
Bon sinon, quelqu'un a posté ces liens sur freegamedev.net :
http://moosader.com/pdgraphics.html (à mon avis pas très utilisable)
et
http://qubodup.deviantart.com/art/Cave- … -112186831 (plus intéressant pour faire un nouveau niveau)

Hors ligne

#300 Le 16/01/2010, à 15:09

tshirtman

Re : Ultimate Smash Friends: un smash bros like en python

c'est pas inintéressant!

http://moosader.com/pd/NinjaStrip.png ça peut faire un personnage, même s'il faut compléter pour faire sa palette de coups.

http://moosader.com/pd/Bunny.bmp ça peut faire un item, ou une attaque pour le ninja ^^.

Hors ligne