02/11/2012, 12:27
C'est pas du php qu'il faut, enfin pas que.
Déjà il faut un langage côté client (pour dessiner/bouger les cartes, faire des actions, communiquer avec le serveur etc.), le plus courant de ces langages est surement le javascript, qui est suffisant ici.
Ensuite côté serveur, en php le client envoie des requêtes et le serveur répond, et on ne peux pas faire en sorte d'envoyer quelque chose si le client a rien demandé. Donc par exemple, si un joueur fait quelque chose, il va le "dire" au serveur, mais le serveur ne pourra pas le "dire" à son adversaire. Il y a moyen de bricoler en faisant que le client envoie une requête toutes les quelques secondes, mais c'est pas vraiment ça en terme de performances (spam du serveur, délais d'attente pour le joueurs, scripts à recharger à chaque requête...).
Il existe plusieurs solutions à ce problème, notamment node.js (en javascript, mais côté serveur) dont j'ai parlé plus haut, qui peut faire du push c'est à dire que que la requête du client dure longtemps (en php on est limité à quelques secondes), et que du coup on peut répondre au client quand on veut. L'autre avantage c'est que node étant en javascript, une partie du code sera en commun avec le client (les règles du jeu).
Là dedans le php ne servirait qu'à faire l'inscription des joueurs, leur connexion, le côté admin (modération, création/modification des cartes...) et éventuellement quelques pages supplémentaires (news, tutoriel, liste des cartes, création de deck...). Ce côté là est relativement simple à faire avec un framework, perso ça me poserais pas trop de problèmes de le faire en python avec Django.
Déjà il faut un langage côté client (pour dessiner/bouger les cartes, faire des actions, communiquer avec le serveur etc.), le plus courant de ces langages est surement le javascript, qui est suffisant ici.
Ensuite côté serveur, en php le client envoie des requêtes et le serveur répond, et on ne peux pas faire en sorte d'envoyer quelque chose si le client a rien demandé. Donc par exemple, si un joueur fait quelque chose, il va le "dire" au serveur, mais le serveur ne pourra pas le "dire" à son adversaire. Il y a moyen de bricoler en faisant que le client envoie une requête toutes les quelques secondes, mais c'est pas vraiment ça en terme de performances (spam du serveur, délais d'attente pour le joueurs, scripts à recharger à chaque requête...).
Il existe plusieurs solutions à ce problème, notamment node.js (en javascript, mais côté serveur) dont j'ai parlé plus haut, qui peut faire du push c'est à dire que que la requête du client dure longtemps (en php on est limité à quelques secondes), et que du coup on peut répondre au client quand on veut. L'autre avantage c'est que node étant en javascript, une partie du code sera en commun avec le client (les règles du jeu).
Là dedans le php ne servirait qu'à faire l'inscription des joueurs, leur connexion, le côté admin (modération, création/modification des cartes...) et éventuellement quelques pages supplémentaires (news, tutoriel, liste des cartes, création de deck...). Ce côté là est relativement simple à faire avec un framework, perso ça me poserais pas trop de problèmes de le faire en python avec Django.