Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- > lors des elevations doit-il y avoir sur la case le nombre exact de
- > ressources ou au moins le nombre de ressource indique ?
- ca doit etre le nombre exact
- s'il y a plus de ressources que necessaire, l'elevation ne peut pas se
- produire
- les ressource comprennent le nombre de pierres et de joueurs
- comme il n'y a rien de specifie pour la nourriture, on n'en tient pas compte
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : f00ty [mailto:footplus@gmail.com]
- > EnvoyÈ : lundi 30 mai 2005 23:01
- > ¿ : sb@epitech.net
- > Objet : [Zappy] Questions
- >
- > Bonjour,
- >
- > j'ai quelques questions ‡ propos du Zappy :
- >
- >
- > 1/ Le client peut-il Ítre rÈalisÈ en C++ ?
- oui
- > 2/ "Le client pourra aussi Ítre rÈalisÈ sous d'autres plate-formes
- > qu'unix" : Cela veut-il dire qu'il faut 1 version NetBSD __ET__ une
- > version Windows par exemple ou que l'on peut faire seulement une
- > version Windows ?
- on peut faire seulement une version windows
- > 3/ Peut-on dÈvelopper un client pour Mac OS X ?
- oui, mais alors il faudra que vous prevoyez un mac pour la soutenance,
- et pas style faut descendre a epimac :/
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : gregory truchetet [mailto:truche_g@epita.fr]
- > EnvoyÈ : mardi 31 mai 2005 17:11
- > ¿ : sebastien benoiT
- > Objet : Precisions Zappy.
- >
- > Bonjour,
- >
- > J'aurais aimer avoir quelques precisions au sujet du Zappy :
- >
- > - En ce qui concerne l'elevation, si le joueur demande au serveur de
- > s'elever mais qu'il n'a pas les pierres necessaires a cette elvation
- > ou qu'il n'y a pas assez de joueurs du niveau requis sur le plateau,
- > comment ca se passe ? Dans la liste de commande donne dans le sujet,
- > la reponse la requete "incantation" est seulement "elevation en
- > cours" , je suppose que la reponse "ko" est possible ?
- oui
- > - Au sujet de l'expulsion d'un joueur, le joueur expulse n'est
- > jamais prvenu de cette expulsion ? Car dans ce cas l'IA expulse perd
- > tous reperes par rapport aux commandes precdemment executees (voir,
- > avance, droite, gauche).
- extrait du sujet:
- "tous les clients 14 partageant cette case recoivent la ligne suivante:
- deplacement K\n avec K indiquant la direction de la case d'o˘ le drone
- provient"
- > - A propos de la commande fork , je crains n'avoir pas trop saisis
- > la fonction de cette commande, apparemment, le fait qu'un joueur fork
- > permet juste a un nouveau joueur d'integrer la partie dans
- > l'equipe ou le fork a eu lieu, ou alors je me trompe ?
- le fork incremente le compteur de joueur qui peuvent se connecter a
- l'equipe du joueur qui a forke
- > - Pour ce qui est du broadcast, quand on regarde votre
- > exemple donne dans le sujet, le son arrive au destinataire par la
- > case 3 mais passe en premier par la case 4, on considere que le son
- > est arrive par la case 4 ou 3 ?
- par la case 4
- > Globalement, faut t'il gerer les angles de reception du
- > son qui font qu'une source peut etre en haut a gauche de la
- > destination (en scematisant) mais que la case de reception sera
- > la case 3 (si la source est tournee vers la droite) ?
- oui
- > Notre serveur gere pour le moment plus grossierement la chose en
- > considerant seulement 8 axes de reception du son (le son arrive
- > sur une case donc elle est consideree comme etant la case de
- > reception).
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : brice gaillard [mailto:gailla_r@epita.fr]
- > EnvoyÈ : mardi 31 mai 2005 17:12
- > ¿ : sb@epitech.net
- > Objet : [zappy] questions expulsion
- >
- > Bonjour,
- >
- > J'aimerai avoir quelques expliquations sur la commande expulse
- > (cote serveur).
- >
- > 1) Le drone expulse les autres drones qui sont sur la meme
- > case que lui ou sur les cases qui sont dans sa direction ?
- extraits du sujet:
- "Le drone ‡ la facultÈ d'expulser tous les drones partageant
- la mÍme unitÈ de terrain."
- "Il les pousse dans la direction qu'il regarde."
- > 2) S'il expulse les autres drones qui sont sur sa case a quoi
- > correspond K ? Pouvez vous me donner un exemple concret ?
- "Lorsqu'un client envoie au serveur la commande expulse,
- tous les clients partageant cette case recoivent la ligne
- suivante: deplacement K\n avec K indiquant la direction de
- la case d'o˘ le drone provient. "
- donc si le drone regarde vers la gauche, quelquesoit la
- case ou il etait avant de se trouver sur la case presente,
- lors de l'expulsion:
- - tous les drones etant sur cette case sont expulses d'une
- case vers la gauche,
- - tous les drones expulses recoivent le numero de la case
- ou se situe le drone expulseur en suivant le meme principe
- de numerotation des cases que pour le broadcast
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : thomas samson [mailto:thomas.samson@epitech.net]
- > EnvoyÈ : mercredi 1 juin 2005 03:03
- > ¿ : sb
- > Objet : client zappy
- >
- > Salut
- >
- > Est-ce que le client du zappy (c'est a dire l'IA) peut etre
- > code en python?
- oui
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : eric rousset [mailto:rousse_r@epita.fr]
- > EnvoyÈ : mercredi 1 juin 2005 13:41
- > ¿ : sb@epitech.net
- > Objet : zappy
- >
- >
- > Bonjours,
- >
- > encore quelques elements me paraissent obscurs apres avoir (re)lu
- > l'enonce:
- >
- > - le parametre transmis via l'option '-c' indique le nombre de joueurs
- > autorises total, ou par equipe?
- par equipe
- > - pour le client, le jeu commence :
- > a) des que le dialogue d'accueil s'est termine?
- > b) une fois que tous les clients (ie: nbr_de_teams * param_opt_c
- > clients) se sont connectes?
- > c) une fois que le nombre de clients requis pour que la
- > team soit au complet est atteint?
- reponse a)
- > - le serveur repond quoi si l'equipe demandee par le client
- > (juste apres le message de bienvenue) n'existe pas?
- ko
- > - une case peut-elle comporter plusieurs pierres de meme type
- > / plusieurs nourritures?
- oui
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : LaRLeS [mailto:victor_l@epitech.net]
- > EnvoyÈ : mercredi 1 juin 2005 18:55
- > ¿ : sebastien benoit
- > Objet : Zappy
- >
- > Bonjour
- >
- > j'ai une question concernant l'expulsion des drones via la commande
- > expulse.
- > En effet dans le sujet il est clairement indique que
- > lorsqu'un drone se fait expulser d'une case celui ci se retrouve
- > dans la case suivant la direction du drone expulsant. Cependant le
- > drone expulse regarde t il toujours dans la meme direction, ou celui
- > ci regarde alors dans la direction dans laquelle il sest fait expulse?
- il regarde toujours dans la direction ou il regardait avant de se faire
- expulser
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : jean-baptiste petit [mailto:petit_j@epita.fr]
- > EnvoyÈ : samedi 4 juin 2005 10:35
- > ¿ : sebastien benoiT
- > Objet : Renseignements Zappy
- >
- > Salut,
- >
- > Juste une petite question sur le client zappy.
- > Concernant l'IA on aimerai partir sur une intelligence
- > de groupe, c'est a dire baser celle ci sur le
- > dialogue entre joueur d'une meme equipe.
- > Le probleme etant que si une equipe se compose de client
- > different notre systeme ne marchera donc pas avec
- > tout les joueurs de cette equipe.
- >
- > Doit on alors composer une equipe de meme client
- > ou doit on etre en mesure de creer une equipe avec des
- > clients differents ?
- une equipe sera composee de clients identiques
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : Nicolas Cormier [mailto:n.cormier@gmail.com]
- > EnvoyÈ : lundi 6 juin 2005 11:17
- > ¿ : Sebastien BENOIT
- > Objet : zappy et debut de la partie
- >
- > bonjour,
- >
- > une reponse a ete ajoute a la faq:
- > > pour le client, le jeu commence:
- > > des que le dialogue d'accueil s'est termine
- >
- > or dans le sujet on trouve cette phrase:
- > " Au commencement une Èquipe est composÈe de n joueurs et
- > seulement n."
- >
- > Doit on absolument suivre la reponse dans la faq ou peut on attendre
- > un nombre minimum de joueurs pour debuter la partie ?
- vous pouvez faire l'un ou l'autre
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : Malamitsas Frederic [mailto:malami_f@epitech.net]
- > EnvoyÈ : mercredi 8 juin 2005 17:53
- > ¿ : benoit_e@epitech.net
- > Objet : Question zappy
- >
- > Salut,
- > es ce que lorsqu'une action est faite par le client,
- > la reponse (ko/ok) du serveur est envoyee avant ou apres que le temps
- > se soit ecoules?
- apres
- > je pense notamenent a l'incantation, si il faut atendre ou
- > non les 300/t avant de savoir si la reponse est ok ou ko?
- oui il faut attendre
- --
- Sebastien BENOIT
- -----Original Message-----
- From: Moktin <moktin@gmail.com>
- To: sb@epitech.net
- Date: Thu, 9 Jun 2005 15:19:47 +0200
- Subject: [ZAPPY] Questions
- > Bonjour, quelques questions :
- >
- > -Lorsqu'un client est deconnecte, peut-on le considerer comme mort, ce
- > qui paraitrait plus logique que de le maintenir ds une vie qui
- > s'apparenterais plus a un coma, puisque de toute facon, il n'a aucun
- > moyen de revenir a la vie.
- si, si un client se reconnecte, il suffit de lui donner un drone sans client
- plutot que d'en creer un nouveau. vous pouvez faire ce qui vous arrange.
- > -lorsqu'un oeuf a eclos, peut-on commencer a decrementer la vie du
- > nouveau nee que lorsque un client a pris son controle ?
- idem, comme ca vous arrange, mais il serait plus coherent de commencer a faire
- mourrir l'oeuf eclos, car comme ca si aucun client ne se connecte, il ne
- restera pas indefiniment sur la map
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : guigois [mailto:hubert_g@epitech.net]
- > EnvoyÈ : lundi 13 juin 2005 16:06
- > ¿ : Sebastien Benoit
- > Objet : Petite question quant au zappy
- >
- > Salut beeone.
- >
- > Je voulais savoir si le fait de sortir du select par timeout pour
- > verifier que le joueur a de la nourriture, et la decrementer
- > ou le faire mourrir si il n'en a pas, posait probleme ?
- oui, il ne faut jamais sortir du select si on n'a pas soit:
- - un nouveau client qui se connecte
- - des donnees a envoyer sur une socket
- - des donnees a lire sur une socket
- - couper une connexion
- > Peut-etre vaut-il mieux verifier la nourriture a chaque fois
- > qu'un joueur execute une commande, afin de ne pas sortir du
- > select juste pour ca ?
- non plus, il ne faut pas attendre qu'il envoie une commande pour lui
- dire qu'il est mort
- > Neanmoins je ne pense pas que cela ait une grande influence sur les
- > performances, etant donne que cela rajoute juste une sortie de select
- > tous les 126/t par joueur, ce qui est minime compare a l'execution de
- > commandes pouvant durer 7/t par exemple.
- et si on a plusieurs centaines de joueurs ?
- il faut stocker la nourriture sous forme de nombre d'unite de temps
- restant a vivre, et recalculer le nombre de nourriture restante a chaque
- fois que le joueur demande son inventaire. ca permet de prevoir de
- ressortir du select seulement quand le nombre d'unite de temps restant a
- vivre est a 0.
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : lementec fabien
- > EnvoyÈ : mardi 14 juin 2005 09:34
- > Objet : Sujet zappy ept2
- >
- > Salut je te maille a propos du zappy, du server et plus
- > particulierement de ce que tu as dit dans la faq hier.
- > On a tout base dans notre server sur des taches qui font debloquer le
- > select, comme la nourriture et la ponte(les deux seules en fait). Donc
- > le timeout de notre select est en general cadence par ces taches, et
- > une arrivee de donnee peut bien sur le faire debloquer.
- > Hors tu viens de dire que ca n est pas correct, qu il faut que le
- > select ne debloque jamais sauf dans le cas de l arrivee de donnees???
- > En dehors des problemes de logique que ca pose (si tout le monde est
- > inactif et qu une ponte est en attente....), est ce que c est pas un
- > peu abuse d imposer ca maintenant ?
- on ne me pose la question que maintenant
- > Genre je suis ok pour le fait que
- > sur un timer trop rapide, le fait de debloquer sur des taches comme
- > <perdre nourriture> avec 100 player ca commence a gacher les
- > performances, mais bon... c est vraiment requis?
- on va dire que ca sera vraiment apprecie
- > C poste dans la faq donc je ne devrais pas poser la question mais je
- > voulais savoir si tu etais reellement serieux...
- completement
- je pense que ca peut se modifier en 2 minutes:
- ajoute un flag dans la liste de tes actions a mener qui indique si cette
- action doit faire sortir ou non du select, comme ca tu trouvera toujours
- l'action dans la meme liste a la sortie du select, et pour le nombre de
- vie decremente du temps au lieu de decrementer un nombre de nourriture
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : aurelien nephtali [mailto:nephta_a@epitech.net]
- > EnvoyÈ : mardi 14 juin 2005 11:30
- > ¿ : sebastien benoiT
- > Cc : zbbc@beartech.org
- > Objet : L'expulsion
- >
- > Bonjour,
- >
- > Le sujet dit :
- >
- > Le drone a la faculte d'expulser tous les drones partageant
- > la meme unite de terrain. Il les pousse dans la direction
- > qu'il regarde. Lorsqu'un client envoie au serveur la
- > commande expulse, tous les clients 14 partageant cette case
- > recoivent la ligne suivante: deplacement K\n avec K indiquant
- > la direction de la case d'ou le drone provient.
- >
- > Que represente K ? Car la case d'ou le drone provient est
- > forcement la meme que celui qui se fait expulser ... donc 0.
- apres l'expulsion, chaque drone doit en fait recevoir le numero
- de la case ou se trouve le drone expulseur. pour connaÓtre le
- numero de la case, il suffit de numeroter les cases de la meme
- facon que pour le broacast
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : arnaud chong [mailto:chong_a@epita.fr]
- > EnvoyÈ : mardi 14 juin 2005 14:12
- > ¿ : sebastien benoiT
- > Objet : parametres du serveur
- >
- > Bonjour,
- >
- > Peut on ajouter des parametres pour le serveur ?
- > Pour definir un port pour les clients graphique par exemple.
- oui
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : Garaak [mailto:engel_t@epitech.net]
- > EnvoyÈ : mardi 14 juin 2005 14:44
- > ¿ : sb@epitech.net
- > Objet : Zappy nombre occurences / case
- >
- > Bonjour,
- >
- > Je voulais savoir si dans le cas ou un drone voudrait faire un look.
- > Si par exemple il ne voit que 4 cases (donc les cases 0 -> 3),
- > comment doi-on faire lorsque il y a des objets en occurence
- > multiple sur une case. Par exemple, disons que sur la case 0 il y
- > ait 2 linemates et 2 joueurs, auras-ton:
- >
- > {linemate linemate joueur joueur,,,}
- oui
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : Florian Nicolais [mailto:nicola_f@epitech.net]
- > EnvoyÈ : mardi 14 juin 2005 14:59
- > ¿ : sb@epitech.net
- > Objet : Zappy : question client IA
- >
- > Salut!
- >
- > Je voulais savoir si le client IA (et non graphique) pouvait avoir un
- > petit affichage, concernant son etat, les commandes qu'il envoit, ce
- > qu'il recoit, son niveau, ... pour du debug, ou si lors de la
- > soutenance cela ne devait pas apparaitre ?
- ca peut apparaÓtre lors de la soutenance, c'est meme plutot mieux, mais
- ca ne doit pas pourrir l'objectif premier du client
- --
- Sebastien BENOIT
- > De : DJP [mailto:DJP@epitech.net]
- > EnvoyÈ : mardi 14 juin 2005 15:09
- > ¿ : sb@epitech.net
- > Objet : Precision Incantation !
- >
- > Salut,
- >
- > J'aurai voulu savoir, parce que je suis un peu confus, lors de
- > l'incantation on fait comme dans la FAQ de gruiik :
- >
- > * Le serveur place l'incantation dans sa liste d'attente
- > * Au bout de 300/t, il verifie que les conditions de l'incantation
- > soient bonnes.
- oui
- > Ou alors on :
- > * Check les conditions d'incantations a t = 0 : les conditions initiales.
- > * Au bout de 300/t, on lui envoie la rÈponse !
- non
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : nicolas chouaniere [mailto:chouan_n@epitech.net]
- > EnvoyÈ : mardi 14 juin 2005 15:12
- > ¿ : benoit_e@epitech.net
- > Objet : A propos de l'incantation
- >
- > Bonjour,
- > une petite question a propos de l'incantation.
- > Si une incantation demande plusieurs joueurs sur une case et
- > qu'au moment ou un joueur demande l'incantation et que les
- > autres joueurs de la case ont des actions de prevues comment
- > doit reagir le serveur au niveau du temps? doit-il interrompre
- > les actions des autres joueurs ou doit il retarder l'incantation?
- aucun des 2. les autres joueurs ne sont pas bloques par l'incantation,
- mais s'il ne sont pas sur la case a 300/t, l'incantation echoue.
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : wu_x [mailto:wu_x@epitech.net]
- > EnvoyÈ : mercredi 15 juin 2005 09:50
- > ¿ : sb@epitech.net
- > Objet : Question zappy
- >
- > Bonjour, j'ai quelque question a propose de l'incantation,
- > imaginons que sur une meme case se trouve les pierres necessaire pour
- > l'elevation au niveau 2 a 3, les deux drones sont presents. L'un
- > lace avance, mais entre temps (2t apres) l'autre lance incantaion,
- > que fait on :
- > a) celui qui avance avance malgre tout et l'invocation est
- > vouee a l'echec
- oui
- > b) l'invocation bloque celui dui devait avance et son action avance
- > durera 5t puisqu'il 2t s'etait ecoule avant
- non
- > c)l'invocation bloque et il prendra 7t pour avancer juste apres
- non
- > Aussi, si l'invocation bloque et decale les autres actions
- > des personnes subissant l'incantation, y'a t'il des actions qui
- > ne soufriront pas de cela tel que le broadcast ?
- l'incantation est une action comme les autres, il n'y a pas de priorite
- dans les actions, donc pas de decalage non plus
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : frederic malamitsas [mailto:malami_f@epita.fr]
- > EnvoyÈ : mercredi 15 juin 2005 16:20
- > ¿ : sebastien benoiT
- > Objet : Question Zappy
- >
- >
- > Salut,
- > es ce que lorsque le client fait une demande
- > dinventaire, et quil y a plusieurs objets
- > dun meme type sur une case il renvoie :
- >
- > (case 0 : 2 linemate 1 phiras)
- > (case 1 : 1 linemate 1 sibur)
- > (case 2 : 2 deraumere 1 phiras)
- > (case 3 : 2 deraumere 1 sibur)
- >
- > ca :
- > {linemate linemate phiras, linemate sibur, deraumere deraumere phiras,
- > deraumere deraumere sibur}
- oui
- > ou ca :
- > {linemate phiras, linemate sibur, deraumere phiras, deraumere sibur}
- non
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : Nicolas Cormier [mailto:cormie_n@epita.fr]
- > EnvoyÈ : mercredi 15 juin 2005 18:03
- > ¿ : sb@epita.fr
- > Objet : [zappy] reponse du server
- >
- > Bonjour,
- > Il est dit dans la faq et dans les news que les reponses doivent etre
- > envoyees au serveur apres le temps pris par l action.
- > Je me demande si il n est pas possible d'envoyer la reponse
- > avant, cela revient exactement au meme (comme tu l as dit durant la
- > conf), il faut juste faire attention a l incantation et bien envoyer
- > a la fin le ok ...
- > pour les autres commandes cela revient au meme.
- ce n'est pas ce que j'ai dis
- j'ai explique qu'on peut choisir de generer la reponse soit des qu'on
- recoit la commande, soit des que le temps d'execution de la commande
- est ecoule, mais en aucun cas on n'envoie la reponse avant que le temps
- ne soit ecoule
- > D'ou ma question , peut on envoyer les reponses des le debut de la
- > commande (incantation exclu)
- non
- --
- Sebastien BENOIT
- > -----Message d'origine-----
- > De : sylvain coisne-davrou [mailto:coisne_s@epitech.net]
- > EnvoyÈ : jeudi 16 juin 2005 19:23
- > ¿ : sebastien benoiT
- > Objet : Zappy
- >
- >
- > Concernant les commandes non valide, est ce que le serveur doit
- > obligatoirement repondre KO ?
- il doit repondre:
- ko
- --
- Sebastien BENOIT
- On 4/4/06, carlie_n <carlie_n@epitech.net> wrote:
- > Bonjour,
- >
- > Lors d'une incantation, imaginons que toutes les conditions soient
- > reunies.
- > Trois joueurs sont sur la meme case volontairement, un seul fait la demande
- > d'elevation.
- > Je voudrais savoir si tous les joueurs etant sur la meme case , s'elevent
- > aussi ( meme s'ils n'ont pas fait de demande explicite d'incantation)?
- oui, c'est le sujet:
- "Un joueur dÈbute l'incantation et l'ÈlÈvation est alors en cours."
- [...]
- > Que se passe-t-il si un joueur arrive en haut de la map ?
- > (sur un planisphere on arrive pas au pole sud quand on va au "dessus" du
- > pole sud !!!
- on passe de l'autre cote de la map, comme dans pac-man
- --
- Sebastien BENOIT
- On 4/25/06, Lujeni <vanaer_l@epitech.net> wrote:
- > Bonjour,
- >
- > En ce qui concerne le zappy, est-il autorise de faire un select
- > non-bloquant (avec un timeout a 0) ?
- non, c'est absoluement interdit, la seule note possible avec ca sera 0/20
- (ou moins)
- > Cela permet ainsi de gerer les cycles avec un timer independant du select.
- et de prendre 100% du CPU, donc non merci
- --
- Sebastien BENOIT
- On 5/5/06, Laurent Vanaerde <vanaer_l@epita.fr> wrote:
- >
- > dernieres petites questions pour aujourd'hui concernant l'incantation :
- >
- > - le nombre de joueurs necessaires comprend-il le joueur lui meme ?
- oui
- > - il me semble me rappeler qu'il faut pile le bon nombre de pierres
- > pour que ca marche, est-ce que c'est pareil pour le nombre de joueurs ?
- > (par exemple un pequenot de niveau inferieur qui passait par la peut-il
- > empecher une elevation ?)
- oui, c'est d'ailleurs la premiere question de la FAQ
- > - Si il faut par exemple 4 joueurs de meme niveau et qu'il y en a 6,
- > est-ce que les 6 auront l'elevation ?
- non car l'elevation n'aura pas lieu
- > - derniere dont je me doute de la reponse : l'inventaire n'influe
- > pas, c'est juste ce qu'il y a sur la case qui compte non ?
- oui
- --
- Sebatien BENOIT
- On 5/6/06, Laurent Vanaerde <vanaer_l@epita.fr> wrote:
- >
- > Si un client se deconnecte en laissant un drone fantome, est-ce que le
- > fantome continue d'executer les actions en cours et celles qui se
- > trouvent dans son buffer d'actions ?
- non, on l'elimine
- --
- Sebastien BENOIT
- On 5/11/06, Sebastien <pahl_s@epitech.net> wrote:
- > Bonjour,
- >
- > Pour des raisons de performances et d'utilisation cpu, avons nous le
- > droit d'utiliser un select bloquant indÈfiniment et de gÈrer le
- > scheduler gr‚ce a sigalarm et une callback?
- non, vous devez gerer le timeout au niveau du select
- > Ceci serait permettrait d'avoir un gestion plus prÈcise du timing des actions.
- non, pas du tout, ca ne vous apportera que des ennuis sans rien regler
- --
- Sebastien BENOIT
- "jibix" <arnoul_j@epitech.net> wrote
- > bonjour,
- >
- > lorsque le client envoye connect_nbr, le serveur doit lui renvoyer0 si
- > aucun client ne peut se connecter et 1 ou plus dans le cas contraire ou
- > comme lors de l'identification Le NUM-CLIENT indique le nombre de
- > clients pouvant encore Ítre acceptÈs par le serveur pour l'Èquipe
- > NOM-EQUIPE? (Si ce nombre est supÈrieur ‡ 1 un nouveau client se connecte)
- > perso je prefere la premiere solution (celle qui est pour moi la plus
- > logique)
- c'est la premiere solution: 0 si aucun client ne peut se connecter et 1 ou
- plus dans le cas contraire
- > en ce qui concerne la commande expulse,
- >
- > un client peut-il expulse un oeuf et si oui dans quel driection?
- non:
- "Le drone ‡ la facultÈ d'expulser tous les drones partageant la mÍme unitÈ
- de terrain."
- un oeuf n'est pas encore un drone
- > un client realisant une expultion, expulse le autres dans leur direction
- > respective ou dans sa propre direction
- dans la direction ou le drone qui expulse regarde:
- "Le drone ‡ la facultÈ d'expulser tous les drones partageant la mÍme unitÈ
- de terrain. Il les pousse dans la direction qu'il regarde."
- > la premiere solution me parraiterai plus logique pour casser des incantation
- mais mais le but est seulement d'expulser
- > un client peut-il poser de la nourriture?
- oui
- > lors d'une incantation les ressource necessaire sur la case doivent-elle
- > etre strictement respect (pas de linemate de plus),
- oui, le sujet precise le nombre exacte de pierres et de drones qui doivent
- se trouver sur la case
- > si oui la nourriture compte-t-elle aussi?
- non, le sujet ne precise pas de nombre de nourriture.
- > a quelle moment doivent-elles etre controler, au debut ou a la fin?
- les 2
- > sinon j'ai lu dans les news de l'anne derniere que les ressource doivent
- > etre toujours le meme sur la map, doit-on les addapter au nombre de
- > trantanrien ?
- oui, mais aussi a la taille de la map
- je vous conseille d'ajouter de la nourriture sur la map en fonction du
- temps, et pour les pierres de toujours laisser le meme nombre de pierre
- qu'au depart (il suffit de disperser les pierres sur la map a la fin d'une
- incantation, comme dans dragonball)
- > ps les seules reponse a ces question sont je crois de l'annee derniere
- > et donc valable ou non ?
- > si oui pour le reste aussi ?
- les reponses valables sont dans le sujet et la FAQ
- --
- Sebastien BENOIT
- On 5/22/06, bertrand felsenheld <felsen_b@epita.fr> wrote:
- > bonjour,
- >
- > il nous semble que deux reponses de la faq se contredisent.
- >
- > > Je voulais savoir si le fait de sortir du select par timeout pour
- > > verifier que le joueur a de la nourriture, et la decrementer
- > > ou le faire mourrir si il n'en a pas, posait probleme ?
- > >
- > >oui, il ne faut jamais sortir du select si on n'a pas soit:
- > >
- > >- un nouveau client qui se connecte
- > >- des donnees a envoyer sur une socket
- > >- des donnees a lire sur une socket
- > >- couper une connexion
- >
- >
- > et
- >
- > > Pour des raisons de performances et d'utilisation cpu, avons nous le
- > > droit d'utiliser un select bloquant ind?finiment et de g?rer le
- > > scheduler gr?ce a sigalarm et une callback?
- > >
- > >non, vous devez gerer le timeout au niveau du select
- >
- > Nous aimerions savoir si l'on peut sortir du select avec un timeout
- > et donc gerer le timer avec.
- >
- > merci.
- > bertrand
- en fait ce sont 2 choses differentes:
- - certains groupes voudraient sortir du select toutes les une unites
- de temps pour decrevmenter les decompte de temps des action a mener,
- --> ca clairement c'est non
- par contre il faut bien sur sortir du select par timeout pour repondre
- aux commandes des clients
- un exemple: un client envoi un commande voir (qui dure 7 unites de
- temps), et l'unite de temps est la seconde:
- - soit on sort toutes les secondes pour verifier si la commande a ete
- envoyee il y a plus de 7 secondes --> c'est une tres mauvaise methode
- - soit quand au temps 0 on recoit la commande voir, on rentre dans le
- select avec un timeout a 7 secondes --> c'est la bonne methode
- donc dans les 2 cas il y a une utilisation du timeout, mais dans le
- premier cas elle est foireuse
- neammoins tu as raison dans la FAQ je me contredis car dans la
- premiere reponse j'aurais du ajouter aux evenements qui justifient de
- sortir du select un timeout permettant d'interrompre le select au
- moment precis ou une commande doit etre realisee (mais pas avant)
- --
- Sebastien BENOIT
- On 5/31/06, raphael malie <malie_r@epita.fr> wrote:
- > Bonjour,
- > concernant le zappy et le timeout apparament il est interdit de faire
- > un select sous forme de cycle avec un timeout.
- Le timeout peut etre utilise, mais seulement a bon escient, donc
- uniquement pour ressortir du select lorsque des commandes arrivent a
- echeance (ou qu'un joueur meurt de faim).
- Vous ne devez pas utiliser le timeout pour ressortir a des intervalles
- fixes sans rapport avec les commandes.
- > Est il possible de gerer les timeout dans les clients ?
- non
- --
- Sebastien BENOIT
- On 6/1/06, maxime mari <maxime.mari@epita.fr> wrote:
- > voir voir 7/t { case1, case2, case3 ... }
- > inventaire inventaire 1/t {linemate n, sibur n, ... }
- >
- > est ce que apres le '{' du voir il ya toujours un espace ?
- > et apres le '{' de l'inventaire il y en a pas ?
- vous devez pouvoir gerer le fait qu'il y ai un (des) espace(s) ou non
- dans les 2 cas (voir et inventaire)
- plus generalement, un protocole en mode texte comme celui-ci doit
- pouvoir accepter une certaine souplesse car il peut aussi etre utilise
- par un humain, donc un generateur aleatoire d'erreurs.
- --
- Sebastien BENOIT
- On 6/1/06, maxime mari <maxime.mari@epita.fr> wrote:
- > peut til iavoir plusieur meme objet sur une case ?
- > dans ce cas on vera ?
- > {deraumere 2, ...}
- > ou
- > {deraumere, deraumere, ...}
- > ?
- aucun des 2, c'est deja dans la FAQ:
- >> -----Message d'origine-----
- >> De : frederic malamitsas [mailto:malami_f@epita.fr]
- >> EnvoyÈ : mercredi 15 juin 2005 16:20
- >> ¿ : sebastien benoiT
- >> Objet : Question Zappy
- >>
- >> Salut,
- >> es ce que lorsque le client fait une demande
- >> dinventaire, et quil y a plusieurs objets
- >> dun meme type sur une case il renvoie :
- >>
- >> (case 0 : 2 linemate 1 phiras)
- >> (case 1 : 1 linemate 1 sibur)
- >> (case 2 : 2 deraumere 1 phiras)
- >> (case 3 : 2 deraumere 1 sibur)
- >>
- >> ca :
- >> {linemate linemate phiras, linemate sibur, deraumere deraumere phiras,
- >> deraumere deraumere sibur}
- >
- > oui
- >
- >> ou ca :
- >> {linemate phiras, linemate sibur, deraumere phiras, deraumere sibur}
- >
- > non
- quand il parle d'inventaire d'une case, il sous-entend la commande voir
- --
- Sebastien BENOIT
- On 6/1/06, maxime mari <maxime.mari@epita.fr> wrote:
- > oui je parle de la commande voir desole je me suis mal exprime :s
- > je demande juste si sur une case il peu y avoir plusieur meme objet
- je parlais de l'etudiant qui avait pose la question dans la FAQ, pas de toi ;)
- oui il peut y avoir plusieurs fois le meme objet sur une case, c'est
- meme necessaire pour le rituel d'elevation
- --
- Sebatien BENOIT
- "Lujeni" <vanaer_l@epitech.net> wrote
- > Sebastien BENOIT a Ècrit :
- >
- >>> un client peut-il poser de la nourriture?
- >>
- >> oui
- >>
- >> --
- >> Sebastien BENOIT
- >>
- >
- > Que se passe-t-il dans ce cas la, le client perd 126 de vie ?
- oui
- --
- Sebastien BENOIT
- "caesarvanou" <vanoud_j@epitech.net> wrote in message
- news:e4kems$6r6$1@news.epita.fr...
- > Bonjour,
- > Dans le sujet on perle de buffer circulaire entre les clients et le
- > serveur.
- > Je voulais savoir de quoi il s'agie car sur le net je n'ai pas trouver
- > grand chose a ce sujet.
- > Si quelqu'un pouvais m'eguiller un peu sur le sujet.
- il faut implementer une FIFO (First In First Out)
- par exemple:
- au depart ton buffer est vide
- []
- puis arrivent des donnees
- [voir\ninve]
- tu traite la commande "voir\n" et tu l'enleve du debut de ton buffer
- [inve]
- puis d'autres donnees arrivent
- [inventaire\ndroite\navan]
- on les traite
- [droite\navan]
- [avan]
- encore des donnees
- [avance\n]
- on traite
- []
- en resume quand des donnees arrivent on les ajoute au buffer, et quand dans
- le buffer on detecte une commande on l'enleve du buffer et on le
- repositionne
- pour cela il y a 2 facons de faire: soit laisser le debut du buffer au meme
- endroit et recopier les donnees restantes au debut du buffer:
- [<-----------droite\navan]
- soit modifier l'index de debut du buffer
- [????????????droite\navan]
- ^
- |
- et si on recoit encore des donnees:
- [ce\n????????droite\navan]
- c'est plus performant mais largement plus complique a gerer.
- --
- Sebastien BENOIT
- "Karouko" <miquer_s@epitech.net> wrote in message
- news:e4mtcs$hog$1@news.epita.fr...
- > 1. " Le jeu se joue par Èquipe. L'Èquipe gagnante est celle dont six
- > joueur auront atteint l'ÈlÈvation maximale. " - sujet.
- >
- > Que se passe t'il a la fin d'une partie ? On envoie un message "fin\n" au
- > client ? on close le serveur ou on expulse simplement tout les
- > joueurs/nettoie la zone pour pouvoir recommencer une partie sans couper le
- > serveur ? Comme il n'y a pas de prÈcision a ce sujet, je pense que "la
- > mÈthode est laissÈe ‡ la discrÈtion du dÈveloppeur"
- oui
- > 2. Est-ce que le joueur qui fait voir ce voit sur sa case ? {joueur,,}
- oui
- > 3. Est-ce que le nombre d'oeuf par case peut Ítre limitÈ ? (ex: pas plus
- > de 10 oeuf par case).
- non
- > 4. Si j'ai bien compris pour l'incantation, pour celui qui incantate, on
- > envoi a:
- > - 't' -> "elevation en cours" (simplement a l'incanteur)
- > - 't + 300' -> "niveau actuel : K" (a tout les joueurs qui s'eleve)
- oui
- > 5. Il est dit qu'a la commande expulse, le serveur peut rÈpondre "ok/ko"
- > dans quel cas une expulsion peu Èchouer ?
- si le joueur qui expulse est tout seul sur sa case
- --
- Sebastien BENOIT
- "zllak" <meson_t@epitech.net> wrote in message
- news:e54c6k$1js$1@news.epita.fr...
- > Concernant le client/visualisateur du jeu, si on a opter pour quelque
- > chose qui ne tourne pas en SM.
- > Pour la soutenance, comment cela va se passer ? Faut il donc
- > obligatoirement que le visualisateur marche en SM ? Ou auront nous la
- > possibilite d'etre noter sur quelque chose situe sur nos racks ?
- oui, mais attention au timing, votre soutenance doit tenir dans les temps,
- donc votre rack doit etre pret: deja dans une machine de lab, le moins loin
- possible de la salle de soutenance, et deja boote
- idem si c'est sur un portable, tout doit etre demarre et operationnel
- faites des repetitions, et testez tout dans les conditions reelles au moins
- une heure avant la soutenance (c'est a dire que dans l'exemple d'un client
- graphique sur rack 1h avant la soutenance votre client graphique doit
- fonctionner sur la machine de lab que vous utiliserez lors de la soutenance,
- n'en changez pas au dernier moment sinon c'est le debut des ennuis)
- > Et si cela est possible, comment se passe le rendu de la partie sur le
- > rack ?
- pas de rendu dans ce cas, mais bien sur uniquement si c'est justifie. il est
- hors de question de rendre sur rack un client ou un client graphique qui
- aurait pu fonctionner en sm.
- --
- Sebastien BENOIT
- "anthony hogg" <hogg_a@epita.fr> wrote in message
- news:e54eqf$41u$1@news.epita.fr...
- > Bonjour,
- >
- > La commande connect_nbr a une duree d'execution nulle. Doit-on interpreter
- > cette commande des sa reception ou l'ajouter a la pile du client concerne?
- traitez la exactement comme les autres commandes. pas de traitement
- particulier.
- --
- Sebastien BENOIT
- jaquin_g <jaquin_g@epitech.net> writes:
- > Si j'ai bien compris on doit gerer le timer grace au timeout du select.
- > Mais j'ai du mal a comprendre comment on pourrait avoir un timer
- > correct avec cette methode etant donne que le timeout revient a sa
- > valeur initial a chaque fois que select debloque.
- Et bien tu calcul la nouvelle valeur ‡ chaque fois !
- c'est tout l'objet de la choses bien calculer la valeur du time_out.
- disons que j'ai un truc a faire ‡ 13h il est maintenant 8h.
- je fais select avec un time out de 5h , 2h plus tard un mec
- m'interromps et traitÈ son cas prend 30 min, aprËs je fait
- un select avec un time-out de 2h30 ....
- Enfin c'est plutÙt simple.
- --
- Nicolas Sadirac Epitech, 14 rue Voltaire, 94270 Kremlin BicÍtre
- http://www.epitech.net/ Tel: (33 1) 44080196 Fax: (33 1) 44080199
- E-mail : rn@epitech.net
- jaquin_g <jaquin_g@epitech.net> writes:
- > Nicolas Sadirac wrote:
- > > jaquin_g <jaquin_g@epitech.net> writes:
- > >
- > >>Si j'ai bien compris on doit gerer le timer grace au timeout du select.
- > >>Mais j'ai du mal a comprendre comment on pourrait avoir un timer
- > >>correct avec cette methode etant donne que le timeout revient a sa
- > >>valeur initial a chaque fois que select debloque.
- > > Et bien tu calcul la nouvelle valeur ‡ chaque fois !
- > > c'est tout l'objet de la choses bien calculer la valeur du
- > > time_out. disons que j'ai un truc a faire ‡ 13h il est
- > > maintenant 8h.
- > > je fais select avec un time out de 5h , 2h plus tard un mec
- > > m'interromps et traitÈ son cas prend 30 min, aprËs je fait
- > > un select avec un time-out de 2h30 ....
- > > Enfin c'est plutÙt simple.
- > >
- >
- > Oui mais le probleme c'est justement pour savoir a quel moment j'ai
- > ete interompu.
- > Sous linux je sais qu'on peut recuperer la valeur du timeout restant
- > mais sous BSD, cette valeur ne change pas donc j'aurais toujours un
- > timeout a 5.
- Tu rÈcupËre l'heure.
- --
- Nicolas Sadirac Epitech, 14 rue Voltaire, 94270 Kremlin BicÍtre
- http://www.epitech.net/ Tel: (33 1) 44080196 Fax: (33 1) 44080199
- E-mail : rn@epitech.net
- "caesarvanou" <vanoud_j@epitech.net> wrote
- >
- > Il y a-t-il un ramassage pour le suivi zappy ?
- oui
- --
- Sebastien BENOIT
- On 6/5/06, maxime mari <maxime.mari@epita.fr> wrote:
- > Au dÈbut le client possËde 10 unitÈ de vie, il peut donc survivre 1260
- > unitÈs de temps, soit 1260/t secondes.
- >
- > cest a dire quil a au debu 1260 de nourriture ou 10 ?
- c'est pourtant clair: il a 10 unites de vie qui lui permettent de
- survivre 1260 unites de temps
- > Une unitÈ de nourriture permet de survivre 126/t unitÈ de temps.
- non, une unite de nourriture permet de survivre 126 unites de temps,
- soit 126 * 1/t = 126/t secondes
- > cest a dire que chaque cicle il pet 1 ou 126 de nourriture ?
- il n'y a pas de cycle, juste du temps qui passe
- si un client ramasse une nourriture, sa mort surviendra 126 unites de
- temps plus tard
- si un client pose un nourriture, sa mort surviendra 126 unites de
- temps plus tot (ce qui implique qu'il lui reste au moins 126 unites de
- temps a vivre pour pouvoir poser de la nourriture)
- --
- Sebastien BENOIT
- On 6/6/06, juanito <juanito@epitech.net> wrote:
- > Sebastien BENOIT wrote:
- > > "caesarvanou" <vanoud_j@epitech.net> wrote in message
- > > news:e5mg87$1fe$1@news.epita.fr...
- > >
- > >>Il y a-t-il un ramassage pour le suivi zappy ?
- > >
- > >
- > > oui
- > >
- > > --
- > > Sebastien BENOIT
- > >
- > >
- >
- > Peut on avoir plus d'info, l'heure et le jour par exemple !?
- au debut de chaque jour de soutenance, 1h avant le debut de la
- premiere soutenance, donc aujourd'hui par exemple je vais ramasser a
- 13h (reponse faite le 6 juin 2006)
- --
- Sebastien BENOIT
- On 6/8/06, lionel ramos <ramos_l@epita.fr> wrote:
- > Bonjour,
- >
- > Nous sommes passe dans l'apres midi avec de-ker_m avec lequel on a
- > discute a propos de notr e maniere de gerer le timer pour les commandes,
- > en lui montrant notre code, il nous a demande de lui detailler la
- > maniere dont on traitait la chose, et nous a dit que c'etait ce qu'il
- > fallait faire. Or, en discutant avec un autre groupe qui est passe avec
- > vous, et en se concertant sur nos differentes methodes, il s'est avere
- > que leur technique ne vous convenait pas et qu'elle vaudrait en
- > soutenance soit des points en moins soit un 0. Apres verification on
- > appliquait la meme methode pour gerer ce timer, a savoir dans notre
- > select, mis a 1sec par default, on verifiait le gettimeofday a chaque
- > boucle, tout en additionnant au temps recupere le nombre de cycle
- > necessaire pour la commande en question, tout ceci stocke dans notre
- > liste chainee generique de commande. Cela donnait une verification du
- > time de la commande a chaque tour, comparant ainsi les timing recuperes
- > et ceux de notre liste chainee de commande, ce qui conduisait ou non a
- > l'envoi de la commande dont le time serait atteint. Etant donne que
- > de-ker_m nous a dit que c'etait bon on se pose maintenant quelques
- > questions concernant la methode, et meme avec les news postes tout le
- > monde se contredit donc ce n'est pas clair pour nos deux groupes respectifs.
- pour moi la methode que vous utilisez est mauvaise
- voici ce que j'ai explique aux autres groupes pour leur faire
- comprendre pourquoi:
- - imaginez que je vous dise que la soutenance finale aura lieu dans 12
- jours 4 heures et 38 minutes, et que toutes les minutes d'ici la
- soutenance vous deviez enlever une minute a ce compte a rebour et
- qu'une fois qu'il sera a 0 vous irez en soutenance. d'une part ca va
- vous donner beaucoup de travail inutile, et en plus la nuit vous ne
- pourrez pas dormir plus d'une minute d'affilee, c'est un peu embetant.
- par ailleurs si a chaque fois que vous enlevez une minute au compte a
- rebours vous perdez 1 secondes sans vous en rendre compte, vous allez
- arriver a la soutenance avec plusieurs heures de retard.
- - imaginez que je vous dise que la soutenance finale est le 31 juin
- 2006 a 23h42, vous pouvez ne rien faire pendant plusieurs jours et
- vous serez quand meme capables de dire combien de temps il reste avant
- la soutenance, et de facon toujours precise.
- vous avez donc 2 problemes dans votre code:
- - vous sortez inutilement de votre select pour faire n fois une
- soustraction de 1 au lieu de ne sortir qu'une fois pour faire une
- soustraction de n --> c'est le 0 assure au serveur lors de la
- soutenance.
- - vous stockez les evenements sous forme de compte a rebours plutot
- que sous forme de date. ca ne vous enlevera pas directement de points
- en soutenance, par contre c'est tellement lourd a gerer que ca vous
- fait perdre du temps que vous auriez pu passer a ameliorer le reste.
- --
- Sebastien BENOIT
- On 6/8/06, lionel ramos <ramos_l@epita.fr> wrote:
- > Tres bien donc dans ce cas la ca sous entend que notre code n'est pas
- > bon, on sort a chaque fois de notre select toutes les 1sec, sans faire
- > de soustraction mais en verifiant le time quand meme donc on part du
- > principe qu on va le refaire en modifiant si j'ai bien compris ce qui
- > s'est dit sur les news, en modifiant le timeout du select en fonction de
- > la commande a executer, mettre par exemple le timeout du select a 7 pour
- > une banale commande avance, et si l'on interromp pour rajouter une
- > commande, faire un gettimeofday pour aller faire la difference entre le
- > moment ou l'on a ete interrompu et le moment a finir de la commande pour
- > remettre le select au bon compteur, donc par exemple on a ete interrompu
- > a 3sec, on doit donc calculer si j'ai bien compris les 4 sec restantes
- > et finir sur un timeout du select a 4sec et ainsi de suite.
- oui
- > Cela dit,
- > quand toutes les commandes se sont executes et que par exemple il est en
- > attente, on laisse le derniere timeout du select opere ?
- le select doit toujours avoir un timeout correspondant a la prochaine
- echeance, mais s'il n'y a pas de prochaine echeance vous devez mettre
- un timeout infini (il suffit pour ca de remplacer le pointeur sur
- struct timeval par NULL)
- neammoins il n'y a que 2 cas ou il n'y a pas d'echeance:
- - le serveur vient de demarrer et aucun client n'est connecte
- - tous les clients sont mort de faim
- car la mort de faim est aussi une echeance qui doit faire l'objet d'un
- timeout au niveau du select
- > s'il est a
- > 7secondes parce que la derniere commande etait un 'avance' on le laisse
- > continuer, ou doit on le remettre a une valeur par default du genre 1sec
- > ? a 0?
- meme chose que precedement
- > De la meme maniere, de-ker_m nous a indique qu'au lancement du
- > serveur, tant qu'il n'y avait aucune connection, on devait mettre le
- > timeout du select a 0 jusqu'a la premiere connection,
- il veux dire a NULL, car on peut aussi mettre son timeout non NULL
- mais dont les champs tv_sec et tv_usec sont tous les 2 egaux a 0, ce
- qui donne un select qui fait immediatement un timeout car il arrive
- tout de suite a sa limite de temps qui est 0 seconde et 0 microseconde
- > mais a la premiere
- > connection on doit le mettre a 1 en attendant qu'une commande soit envoye ?
- non, vous devez le mettre a la prochaine echeance du client ou a NULL
- dans le cas d'un client qui vient de se connecter, il a en arrivant 10
- nourriture, soit de quoi survivre pendant 1260 unites de temps, soit
- 1260/t secondes. vous devez calculer l'heure de sa mort et vous en
- servir comme echeance pour le timeout. bien evidemment l'heure de sa
- mort sera repoussee de 126/t secondes a chaque "prend nourriture" qui
- reussira.
- --
- Sebastien BENOIT
- On 6/9/06, raphael malie <malie_r@epita.fr> wrote:
- > Bonjour,
- > concernant la prise d'object le sujet est assez flou. Dans la commande
- > "prend objet", on doit remplacer objet par le nom de l'objet en question ?
- oui, par exemple "prend sibur"
- > (Question probablement bete
- oui ;)
- > mais ce n'est preciser nulle part).
- > Ensuite les objets presents sur les cases sont limites ou illimites ?
- illimites
- > Enfin lors du rituel de l'elevation, le prerequis de ressource est il
- > pour chaque bebete ou bien
- > pour toutes les bebetes en meme temps ? Par exemple pour le rituel 3-4,
- > il faut
- > 2 linemate par joueur, ou bien 2 linemate en tout sur la case ?
- 2 linemate en tout sur la case, et pas d'autres pierres (on ne prend
- pas en compte les nourritures et joueurs sur la case)
- --
- Sebastien BENOIT
- On 6/17/06, raphael malie <malie_r@epita.fr> wrote:
- > Bonjour,
- > lors de l'incantation, si celle ci echoue, seul l'incanteur recoit ko ou
- > bien tous les joueurs sur la case recoivent ko ?
- tous recoivent ko
- --
- Sebastien BENOIT
- On 6/17/06, Sebastien <pahl_s@epitech.net> wrote:
- > Bonsoir,
- >
- > lors d'un fork dans le zappy, lorsque l'oeuf Èclos quel sera le niveau
- > du joueur qui se connecte?
- > le mÍme que celui qui a pondu ou alors 1?
- 1
- --
- Sebastien BENOIT
- "Elthariel" <elthariel@free.fr> wrote
- > Bonjour,
- >
- > Est-il possible de faire en lieu et place d'une visualisation globale du
- > monde, une vision partielle du monde sur chaque client, en considerant
- > que la partie graphique du client se souvient du monde explore ?
- non, par contre vous pouvez le faire en plus
- --
- Sebastien BENOIT
- "Stylerz" <Stylerz@gmail.com> wrote
- > popeye wrote:
- >> Au dÈbut le client possËde 10 unitÈ de vie, il peut donc survivre 1260
- >> unitÈs de temps, soit 1260/t secondes.
- >>
- >> cest a dire quil a au debu 1260 de nourriture ou 10 ?
- >> Une unitÈ de nourriture permet de survivre 126/t unitÈ de temps.
- >> cest a dire que chaque cicle il pet 1 ou 126 de nourriture ?
- >
- > il faut stocker la nourriture sous forme de nombre d'unite de temps
- > restant a vivre, et recalculer le nombre de nourriture restante a chaque
- > fois que le joueur demande son inventaire. ca permet de prevoir de
- > ressortir du select seulement quand le nombre d'unite de temps restant a
- > vivre est a 0.
- encore mieux, stocker le moment ou surviendra la mort dans un struct timeval
- que l'on avance ou recule de 126/t a chaque pose ou prend nourriture
- --
- Sebastien BENOIT
- "Zeux G" <gau_z@epitech.net> wrote in message news:e61ce1$6ep$1@news.epita.fr...
- > bonjour, j'ai vu ca dans la faq :
- >
- > ------------------------------------------------------------------------
- > "jibix" <arnoul_j@epitech.net> wrote
- > > bonjour,
- > >
- > > lorsque le client envoye connect_nbr, le serveur doit lui renvoyer0 si
- > > aucun client ne peut se connecter et 1 ou plus dans le cas contraire ou
- > > comme lors de l'identification Le NUM-CLIENT indique le nombre de
- > > clients pouvant encore Ítre acceptÈs par le serveur pour l'Èquipe
- > > NOM-EQUIPE? (Si ce nombre est supÈrieur ‡ 1 un nouveau client se
- > connecte)
- > > perso je prefere la premiere solution (celle qui est pour moi la plus
- > > logique)
- >
- > c'est la premiere solution: 0 si aucun client ne peut se connecter et 1
- > ou plus dans le cas contraire
- > ------------------------------------------------------------------------
- >
- > donc en gros on affiche le nombre de joueurs total pouvant encore se
- > connecter si on suit la faq.
- >
- >
- > et j'ai vu ca dans le sujet :
- >
- > ------------------------------------------------------------------------
- > 15.0.0.1
- >
- > "La commande connect_nbr renvoie le nombre de connections autorisÈes et
- > non autorisÈes pour cette famille."
- >
- > ------------------------------------------------------------------------
- >
- > et la on parle de "famille". doit-on suivre le sujet en considerant
- > qu'une famille correspond a une equipe et donc afficher le nombre de
- > joueurs pouvant se connecter pour telle equipe ?
- oui, famille ici designe l'equipe du joueur qui envoie connect_nbr
- --
- Sebastien BENOIT
- On 6/18/06, eric renard <eric.renard@epita.fr> wrote:
- > Bonjour,
- >
- > Je me pose une question a propos du mode de fonctionnement du serveur zappy
- > avec l'inventaire.
- > Une unite de nourriture represente 126 unites de temps de vie. A mon sens,
- > l'IA doit s'attendre a ce que la commande inventaire renvoie 10 en ce qui
- > concerne la nourriture or le serveur de test renvoie lui 1260. Quelle est la
- > version attendue ? Doit on suivre ce qui nous semble plus "logique"
- > (un inventaire est cense decompter des objets "physiques" apres tout) ou la
- > facon utilisee par le serveur de test, donc le nombre d'unites de temps ?
- vous devez renvoyer 10 dans ce cas, ne suivez pas le serveur de test
- qui effectivement n'est pas logique sur ce point
- --
- Sebastien BENOIT
- On 6/20/06, eric renard <eric.renard@epita.fr> wrote:
- > Bonjour,
- >
- > Une derniere petite question a propos du client IA zappy. En fait je me
- > prends la tete depuis 2 jours sur un probleme qui n'en est peut etre pas un.
- > Je suis toujours parti de l'idee qu'un joueur = un client. Il fallait donc
- > laisser x fois le client IA pour avoir x joueurs, ce qui pose des tas de
- > problemes pour les processus d'elevation et particulierement pour savoir
- > quand il faut fork car les clients ne sont pas capables de communiquer entre
- > eux (mis a part a coup de broadcast mais bon..).
- c'est justement tout le but de la chose: n'avoir que le broadcast pour
- retrouver les membres de son equipe afin de faire une elevation en
- groupe
- > Je viens de penser a une autre approche qui est sans doute celle attendue :
- > que le client IA gere toute l'equipe dans le meme processus. Le client
- > demarre, cree des joueurs jusqu'a ce que connect_nbr = 0, ce qui lui permet
- > de savoir combien il en a et donc de prevoir les forks necessaires aux
- > elevations, ainsi que gerer le timing entre les broadcast et leur analyse,
- > voire creer des strats plus complexes a base d'un leader d'equipe, ect...
- >
- > Est ce que je suis sur la bonne voie ? :x
- pas du tout. il ne doit y avoir aucune communiquation ni echange
- d'infos entre joueurs autrement que par broadcast.
- vous pouvez controler plusieurs joueurs avec un seul et meme
- programme, voir processus, mais ca ne doit pas vous servir a
- communiquer sans passer par le serveur
- le broadcast doit etre votre seul moyen de communication
- --
- Sebastien BENOIT
- On 5/14/07, Charles Henri Bruyand <charleshenri.bruyand@gmail.com> wrote:
- > Salut beeone,
- >
- > Nous avons, moi et mon groupe quelques questions a poser concernant le
- > projet Zappy :
- >
- >
- > Nous avons vu que le client IA pouvait etre developpe en C / Perl (sujet) et
- > C++ (FAQ), peut-on donc le developper en d'autres langages (comme Python,
- > Lua)?
- oui
- > Concernant le client graphique, la seule precision technologique est le X11,
- > nous savons que certains groupes l'ont fait en 3D, peut-on pour cela le
- > developper grace au SDK Ogre + librairies de moteurs physique (type Newton
- > Dynamic Engine ou autre ?) ?
- oui
- > Dans le cas ou Ogre n'est pas authorise, SDL + SDL_Image est-il authorise ?
- > Merci d'avance pour les reponse a ces questions.
- tout est permis, tant que le serveur est fait strictement en C/Unix
- > Ogre ne fonctionne pas sous NetBSD, que faire ?
- vous pourrez passer la partie graphique de la soutenance sur rack
- faites en sorte que votre rack soit le plus pres possible de la salle
- de soutenance
- --
- Sebastien BENOIT
- On 5/17/07, Spouwny <lafont_j@epitech.net> wrote:
- > Bonjour,
- >
- > dans le cas ou l'affichage graphiqe ce fait dans le serveur ou le
- > client, le select etant bloquant, la boucle input/rendu se voit bloquer
- > au niveau du select.
- >
- > Je sais que GTK offre une possibilitee de monitoring des fd. Mais je
- > n'ai rien trouve de tel pour la SDL que je voudrais utiliser.
- >
- > La question est donc, pour eviter ce blocage si l'on pouvait utiliser un
- > timeout max afin de sortir du select regulierement ou bien meme un
- > timeout de 0?
- non en aucun cas
- > Si non, utilisation des threads pour l'affichage?
- non plus
- > Et si toujours non, une suggestion pour resoudre le probleme (autre que:
- > faire un client graphique en reseau)?
- non, la seule solution correcte est le client graphique en reseau
- --
- Sebastien BENOIT
- On 6/7/07, bastien landre <landre_b@epitech.net> wrote:
- > Bonjour,
- > J'aurais voulu savoir si quand un client fait une demande d'inventaire
- > on devait lui donner son nombre de nouriture restante?
- oui
- > Et si oui doit on decrementer le nombre de nouriture total tout les 126
- > unitee de temps?
- non surtout pas, on ne va pas sortir du select pour ca
- > ou alors recalculer le nombre de nouriture qu'il a au
- > total, avec le moment de sa mort et le moment actuel, au moment de la
- > demande d'inventaire?
- oui c'est la bonne solution
- --
- Sebastien BENOIT
- On 6/19/07, Chry <guille_c@epitech.net> wrote:
- > Bonjour,
- > dans la FAQ, il est ecrit ceci :
- >
- > -------
- >
- > On 5/14/07, Charles Henri Bruyand <charleshenri.bruyand@gmail.com> wrote:
- > > Salut beeone,
- > >
- > > Nous avons, moi et mon groupe quelques questions a poser concernant le
- > > projet Zappy :
- > >
- > >
- > > Nous avons vu que le client IA pouvait etre developpe en C / Perl (sujet) et
- > > C++ (FAQ), peut-on donc le developper en d'autres langages (comme Python,
- > > Lua)?
- >
- > oui
- >
- > -------
- >
- > Je suppose que la reponse est oui,mais dans le doute, autant demander :
- > peut-on faire le client IA en php ?
- oui, vous pouvez le faire en n'importe quel langage ca n'a aucune importance
- --
- Sebastien BENOIT
- >> Comment gerer les fins de lignes ?
- Lorsqu'il se connecte, le client determine lorsqu'il envoie son nom d'equipe s'il est en mode telnet (fin de ligne terminee par '\r\n') ou en mode netcat (fin de ligne terminee par '\n'). Une fois ce mode etabli, le serveur devra se conformer aux exigeances du client et terminer ses reponses en fonction du mode choisi ('\r\n', ou '\n').
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement