maitretarot-devel-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Maitretarot-devel-fr] le client fonctionne :)


From: philippe brochard
Subject: Re: [Maitretarot-devel-fr] le client fonctionne :)
Date: 22 May 2002 16:46:26 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

philippe brochard <address@hidden> writes:

> Yves Mettier <address@hidden> writes:
> 
> > Hop, nouvelle reponse a ce courrier, mais avec du nouveau.
> > 
> > 
> > On 19 May 2002 17:11:31 +0200
> > philippe brochard <address@hidden> wrote:
> > 
> > > 
> > > Bon, ca y est j'ai enfin fini le client (il reste quand meme
> > > la fin de partie et le jeux successifs a gerer).
> > > Mais, on peut enfin jouer des cartes :)
> > > 
> > > Il reste aussi quelques trucs qui posent problemes :
> > > 
> > >   - le chien est parfois accepte, parfois rejeter ?!?
> > 
> > La fonction de dump est faite.
> > Faut faire:
> > kill -s SIGUSR1 <pid>
> > 
> > pid, c'est celui de maitretarot, mais pas n'importe lequel: le bon!
> > Dans la fenetre d'execution de maitretarot, je mets un moment un message
> > concernant ce kill. Il suffit de faire un copier/coller: le PID est le
> > bon lorsque je l'affiche.
> > 
> > Le resultat, c'est qu'un fichier dump_maitretarot_game_t_<timestamp> est
> > cree avec le contenu de la structure game_t en clair.
> > Si vous reperez une anomalie comme le chien qui se fait rejeter, faut
> > faire un kill, puis analyser ce dump, ou me l'envoyer.
> > 
> > >   - les gardes sans et contre font que le jeux est decale:
> > >       le joueur qui joue, joue en fait a la place du suivant :(
> > 
> > Petite question: quand c'est une petite ou une garde, chacun recoit un
> > gint, qui est a 1 pour le preneur et a zero pour les autres. Quand c'est
> > une garde sans ou une garde contre, j'envoie ce gint quand meme, mais a
> > zero pour tout le monde. Est-ce que le bug pourrait venir de la (non
> > pris en compte dans le client)?
> > 
> Je n'ai pas verifier la partie pour le chien au dessus, mais ici c'est
> evident que c'est ca :)
> Je n'ai pas pris en compte ce gint qu'en cas de prise ou garde.
> 
> Je corrige ca dès que je peut.
> 
Bon, c'est fait (j'ai enfin eu le temps de mis remettre :)

J'ai 2 remarques a faire :

1) Le gint qu'on renvoi pour savoir si le joueur est le preneur ou
non ne sert a rien parce que le client peut determiner tout seul s'il
est le preneur ou non (comme pour les encheres). D'ailleurs je ne m'en
sert pas parce qu'il renvoie 1 pour tous les joueurs quand il y a une
petite ou une garde. Donc je ne fait que le lire pour resoudre les 
problemes de synchronisation pour la garde-sans/contre, mais je ne
l'utilise pas.

2) La suite du jeu fonctionne quand je dis au serveur de considerer que
le chien est toujours valide, sinon il n'accepte pas les cartes du chien,
meme celles qu'il envoi au client. Je m'occupe de savoir d'ou ca vient...


Sinon, quand je joue une carte non valide (ex: roi carreau, 2 pique alors
que le joueur a du carreau), j'obtient le warning suivant qui fait
segfaulter tous les clients :

-----------------------------------------------------
(process:16660): GLib-WARNING **: GError set over
the top of a previous GError or uninitialized memory.
This indicates a bug in someone's code. You must
ensure an error is NULL before it's set.
The overwriting error message was: Player can player
a bigger trump card
-----------------------------------------------------


Philippe


-- 
,-------------------.         ,---------------,----------------------.
| Philippe Brochard |   ...   | address@hidden | http://hocwp.free.fr |
`------------------(_  (. .)  `---------------'----------------------'
-------------------ooO--(_)--Ooo--------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]