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.

#176 Le 06/08/2009, à 15:56

Кຼزດ

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

Bon, voilà, pygame 1.9.1 relaeasé, ça remarche (devait y avoir un truc qui brisait la compatibilité)
Par contre, toujours ce bug avec le saut + la limite de hauteur → on meurt si on saute
edit : mise à jour du svn, toujours le bug ; et je viens de remarquer qu'il pouvait y avoir un match nul hmm
(c'est un bug pour moi dans la mesure où il y avait marqué que j'avais gagné, puis j'ai sauté, et là ça affiche match nul hmm)

Dernière modification par mathieuI (Le 06/08/2009, à 15:59)


dou

Hors ligne

#177 Le 06/08/2009, à 16:06

tshirtman

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

Par contre, toujours ce bug avec le saut + la limite de hauteur → on meurt si on saute

sur quel niveau?

(c'est un bug pour moi dans la mesure où il y avait marqué que j'avais gagné, puis j'ai sauté, et là ça affiche match nul hmm)

c'est volontaire, j'ai voulus laisser un temps permettant le match nul, histoire de dire que c'est pas celui qui tombe une seconde avant l'autre qui gagne... mais bon c'est peut être trop long... sinon je prépare des trucs mais c'est encore un peu cassé de mon coté, donc pas de commit tout de suite... on verras ce soir si j'arrive à me dépatouiller ^^.

edit: cool pour pygame, ils m'ont fait peur pour le coup ^^.

Dernière modification par tshirtman (Le 06/08/2009, à 16:09)

Hors ligne

#178 Le 06/08/2009, à 16:14

geenux

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

tshirtman a écrit :

Par contre, toujours ce bug avec le saut + la limite de hauteur → on meurt si on saute

sur quel niveau?

mansion par exemple, quand on est sur le toit de la maison.

Hors ligne

#179 Le 06/08/2009, à 16:28

Кຼزດ

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

tshirtman a écrit :

Par contre, toujours ce bug avec le saut + la limite de hauteur → on meurt si on saute

sur quel niveau?

Tous wink
Sinon sympa le menu de pause ingame smile


dou

Hors ligne

#180 Le 06/08/2009, à 16:39

tshirtman

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

ok, j'y arrive en faisant un triple saut avec le fantome, si je suis sur la pointe de la maison, mais pas facilement... bizarre... vous devez sauter plus haut que moi...


edit: yikes je viens de tester au boulot sous win... en effet je vois le probleme, c'est hyper giga pas réaliste, et même carrément injouable... bon il est clair que j'ai un probleme car les FPS influe sur la hauteur des sauts! Merci d'avoir insisté sur ce bug...

Dernière modification par tshirtman (Le 06/08/2009, à 16:45)

Hors ligne

#181 Le 06/08/2009, à 16:43

Кຼزດ

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

tshirtman a écrit :

ok, j'y arrive en faisant un triple saut avec le fantome, si je suis sur la pointe de la maison, mais pas facilement... bizarre... vous devez sauter plus haut que moi...

Moi j'appuie juste une fois hmm
Enfin je pourrais faire un screencast, mais c'est suffisamment explicite.
(oui, il saute beaucoup trop haut ; je peux survivre si je saute à partir du bas de la maison, par contre, mais c'est limite)
edit: ok smile

Dernière modification par mathieuI (Le 06/08/2009, à 16:46)


dou

Hors ligne

#183 Le 06/08/2009, à 20:42

tshirtman

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

        if self.entity_skin.animation.vector is not 0:
            self.vector[1] += (
                    -self.entity_skin.animation.vector[1]
                    * config['JUMPHEIGHT']
                    * dt
                    )   

            self.vector[0] += (
                    self.entity_skin.animation.vector[0]
                    * config['JUMPHEIGHT']
                    * dt
                    )   

        # Gravity
        if self.gravity :#and not self.onGround:
            self.vector[1] += (config['GRAVITY']) * dt

les sauts et la gravité sont gérés là, la gravité semble pas dépendante des fps, mais les sauts oui... je comprends pas...

(dt=différence de temps avec la frame précédente)

le frottement de l'air

        # Application of air friction.
        self.vector[0] -= config['AIR_FRICTION'] * self.vector[0] * dt
        self.vector[1] -= config['AIR_FRICTION'] * self.vector[1] * dt

... et le vecteur est appliqué juste après comme ça:

        # apply the vector to entity.
        self.move ((self.vector[0] * dt, self.vector[1] * dt), 'vector')

(ouais je néglige la poussé d'archimède, je sais c'est honteux...:rolleyes:)

Hors ligne

#184 Le 06/08/2009, à 21:48

geenux

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

J'essayerai de regarder plus en détail ce qui peut ne pas aller, voire si je trouve d'où ça vient. Tu n'as pas ce problème toi ?

Hors ligne

#185 Le 06/08/2009, à 21:53

Кຼزດ

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

geenux a écrit :

J'essayerai de regarder plus en détail ce qui peut ne pas aller, voire si je trouve d'où ça vient. Tu n'as pas ce problème toi ?

Lui il fait ça sur son eeepc, donc niveau fps ça pousse pas trop big_smile

Dernière modification par mathieuI (Le 06/08/2009, à 21:54)


dou

Hors ligne

#186 Le 06/08/2009, à 22:04

kaoron

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

Évites les "vector[1]" en pagaille et essayes de nommer correctement tes variables (vitesse, accélération), là c'est un peu incompréhensible.

Une chose que j'ai cru comprendre, c'est que tu récupères un vecteur de mouvement donné par la frame courante de ton animation (entity_skin.animation), et qu'ensuite tu multiplies ça par le temps écoulé pour cette frame (quatre fois !!), et par différents coeffs (gravité, friction).

Tu peux m'écrire la formule modélisée ? big_smile

A mon humble avis, la dépendance au framerate vient du fait que tu récupères un vecteur de mouvement lié à une frame particulière de ton animation... malheureux, c'est pas comme ça qu'on fait de la cinématique ! Tu dois calculer ta position/déplacement sur une trajectoire, au lieu de ça tu multiplies un vecteur de déplacement absolu par du temps écoulé sur une frame : si c'est effectivement ce qu'il faut comprendre de ton code, bien sur que c'est frame-dépendant, gros godillot va tongue.

Edit : Il serait même possible de précalculer des trajectoires de saut (des positions verticales relatives à l'impact de saut à différents instants), et tout ce que tu aurais à faire, c'est calculer en fonction de la date du saut quelle est ta position sur la trajectoire. Pas sur que ça vaille le coût computationnellement parlant, mais c'est une idée.

Dernière modification par kaoron (Le 07/08/2009, à 09:40)

#187 Le 07/08/2009, à 11:06

tshirtman

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

l'idée c'était de mettre des coefficiens d'accélérations aux frames... afin d'avoir un mouvement fluide, donc oui on ajoute le vecteur d'acceleration multiplié par le temps passé, au vecteur de déplacement, et ensuite on ajoute le vecteur de déplacement multuplié par le temps passé, a la position.

c'était fait de façon un peu intuitive avec mes cours de terms en balistique, ce lien: http://gafferongames.com/game-physics/integration-basics/ confirme que ça "semble" une bonne idée, mais qu'en fait ça a des problemes, mais je pensait pas à se point (là vous sautez facilement 3x plus haut que moi) et j'ai pas encore pris le temps de bien comprendre ce qu'il propose pour l'implémenter.

pour l'idée de précalculer les trajectoirs je sais que ce serait plus simple, je suis juste pas fan ^^ (mais je l'ai fait pour les plateformes, ou ça me parait bien plus naturel)

Hors ligne

#188 Le 07/08/2009, à 12:46

kaoron

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

D'accord, je n'avais donc pas totalement compris ton code. smile

La gravité ne suffit pas à avoir un mouvement fluide ? Si mes souvenirs de physique sont bons, une fois en l'air, un objet n'est soumis qu'à son propre poids (négligeant les forces négligeables).

Pourquoi donnes tu une accélération supplémentaire ? Donner une vitesse d'impulsion initiale devrait suffire, faire un self.velocity = JUMPIMPULSION (*groundnormal éventuellement) et laisser la gravité se charger du reste.

Après, comme l'article le souligne, les erreurs de précision se cumulent. Au choix implémenter la méthode d'intégration décrite, ou calculer systématiquement en fonction des conditions initiales du saut, et pas de la frame précédente (plus simple, mais peut-être plus limitant)


Edit : Autre chose, je pense que tu devrais avoir une animation en fonction de la vitesse et de la situation de ton objet, plutôt qu'avoir des durées d'animation fixes et des vecteurs d'accélération associés.

Dernière modification par kaoron (Le 07/08/2009, à 12:53)

#189 Le 07/08/2009, à 13:35

tshirtman

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

oui, donner une impulsion initiale instantanée au changement de frame et non répartie sur le temps de frame serait plus prudent et moins source d'erreur... c'était juste moins facile a coder dans ma methode actuelle, donc je n'y ait pas pensé. Je voulait garder un systeme assez souple car vu le genre de jeu, pouvoir avoir des déplacement complexes en l'air (ou pas d'ailleur) est nécessaire.

Mais en effet il faut que je tienne compte de l'article pour ne pas avoir ce genre de cumul d'erreur.


Edit : Autre chose, je pense que tu devrais avoir une animation en fonction de la vitesse et de la situation de ton objet, plutôt qu'avoir des durées d'animation fixes et des vecteurs d'accélération associés.

Je ne vois très bien ni comment faire, ni pourquoi, si je supprime mon probleme avec les framerate ça devrait mieux se goupiller non? Enfin pour le cas de la chute (on doit changer d'anim quand on touche le sol) j'ai utilisé un event (mais j'ai des doutes sur le fait qu'il marche maintenant avec ces histoires). Si tu peux m'en dire plus tongue (j'espère ne pas abuser de ta patience ^^).

Hors ligne

#190 Le 07/08/2009, à 13:59

kaoron

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

Post #163 je te disais "[les personnages] restent collés au plafond si ils rencontrent un obstacle...". Tu n'est pas sur de la durée d'une animation. Si un obstacle est rencontré, un coup porté, ou que tu souhaites faire des tremplins qui permettent de sauter plus haut, ton saut durera plus ou moins longtemps, aussi tu voudras peut-être intercaler une animation si un évènement se produit en cours de saut, etc.
A mon avis, mieux vaut rendre ta physique totalement indépendante des animations, et jouer les animations en fonction du statut et des évènements de l'entité physique.

Comment faire ? Ben les events/notifications, ça me paraît pas trop mal smile


Pour les déplacements complexes, ils sont souvent gérés plus simplement qu'il n'y paraît.

Dernière modification par kaoron (Le 07/08/2009, à 14:04)

#191 Le 07/08/2009, à 14:19

tshirtman

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

ah oui pour les persos collés au plafond, là *normalement* (je découvre que non) le fait de heurter le plafond multipliait le vecteur du persos par -0.5 et je laissait faire la gravité, je pense que ça ne suffit pas à cause du faut que l'accélération soit continue (et là beaucoup trop fort) et non ponctuelle, il faut que je fasse le changement pour savoir si ça marche mieux.

mais oui gérer certains passages d'animations par event, ça doit être plus simple...

je pense que je vois smile merci

Hors ligne

#192 Le 08/08/2009, à 01:05

LittleWhite

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

Y a une histoire, normalement, qui faut employé une formule mais que j'arrive plus à mettre la main dessus :s
Ça semble s'appeler ( en anglais ) Semi Simulated Kinematic

je m'excuse pour ne pas pouvoir donner plus d'info


Linux ou mourir
Pour avoir des problemes : demarrer Windows
Script de compression multi archive : http://forum.ubuntu-fr.org/viewtopic.php?id=225297

Hors ligne

#193 Le 28/12/2009, à 12:36

xapantu

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

Salut tout le monde,

Le projet continue : il est maintenant sur launchpad :https://launchpad.net/ultimate-smash-friends tongue
Plein de choses sont en développement et notamment un nouveau système de menus (merci beaucoup à Samuncle pour le design de ces menus) et la traduction en plusieurs langue du jeu (enfin pour l'instant c'est sourtout anglais-français). cool

Il y a  aussi maintenant une mascotte :
1261940837.png



Pour obtenir la dernière version de développement (non stable)  :

bzr branch lp:ultimate-smash-friends

Ensuite, pour lancer le jeu il faut aller dans le répertoire code et taper :

./ultimate-smash-friends

Pour utiliser les nouveaux menus (pas finis wink ) il faut taper :

./ultimate-smash-friends --gui

Et bientôt un site internet... tongue

Hors ligne

#194 Le 28/12/2009, à 13:57

tshirtman

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

merci xapantu big_smile

de mon coté j'essaye de faire avancer le support réseau, mais ce n'est pas gagné gagné ^^, je pense que je vais essayer de bosser sur l'intégration des persos...

on va essayer de sortir une beta bientot ^^, avec si possible un paquet deb ^^.

Hors ligne

#195 Le 28/12/2009, à 15:12

edge_one

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

j'peux essayer de faire des menus en espagnol...

#196 Le 28/12/2009, à 15:31

tshirtman

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

big_smile faut que tu regarde le fichier code/usf_media/local/messages.po avec poedit, au vus du peu de texte actuel, ça devrait aller vite ^^.

Hors ligne

#197 Le 28/12/2009, à 19:00

xapantu

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

ça avance !

Ultimate Smash Friends a mainteant un site internet : http://usf.tuxfamily.org/
Pour l'instant, il est presque vide mais il se remplira (j'espère wink )

Pour le téléchargement de la dernière version de développement c'est là : http://usf.tuxfamily.org/wiki/Download

N'hésitez pas à poster des commentaires sur le site et sur le jeu, et si vous avez des idées pour améliorer le design (pour l'instant je ne sais pas si c'est terrible roll ) du site, postez aussi !

Et si vous voulez ajouter du contenu au site, il n'y a pas de problème tongue .

Dernière modification par xapantu (Le 28/12/2009, à 19:34)

Hors ligne

#198 Le 28/12/2009, à 20:06

tshirtman

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

t'as du faire une erreure de conf quelque part, il construit des urls foireuses dans certains cas, (probablement l'url de racine du blog, le mieux est sans doute de la laisser vide wink).

exemple d'url foireuse:
http://usf.tuxfamily.orghttp//usf.tuxfamily.org//index.php?title=Documentation&action=edit

wink

Dernière modification par tshirtman (Le 28/12/2009, à 20:06)

Hors ligne

#199 Le 28/12/2009, à 20:30

xapantu

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

Comment t'arrive à avoir ça hmm ?
En cliquant sur edit, il me met une url correcte. sad

Hors ligne

#200 Le 28/12/2009, à 20:38

Кຼزດ

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

xapantu a écrit :

Comment t'arrive à avoir ça hmm ?
En cliquant sur edit, il me met une url correcte. sad

http://usf.tuxfamily.org/wiki/Documentation « edit this page »


dou

Hors ligne