Cette fois, je reboot vraiment ECLERD!
#21
1) pas de requete dédiée :
à mon sens, tu ne dois pas faire de requete ajax dont le seul but est de faire
Citation :avancer le temps d'1 journée toutes les X minutes
le js coté client suffit

2) par contre quand, par exemple le joueur lance une production, parce qu'il a le stock (donc qu'il a eu temps de faire le stock)
alors le retour de la requête ajax "Produis duchmol" renvoie dans le cas où y a un problème (pas encore assez de stock) une régularisation globale se fait 'vala le stock, vala la date"
[WIP]projet Rivages
[WIP]projet Arthur (comme si ça suffisait pas d'un...)
Répondre
#22
Ça me fait bizarre de voir cette proposition de requête Ajax régulière pour faire avancer le monde de la part de Xenos. :o

Maintenant que j'ai goutté aux systèmes persistants (en opposition au Web + BDD) je n'a plus du tout la même approche face à ces considérations !
Répondre
#23
@Sephi: oui, car là, la différence est la notion de pendant que le joueur joue 16 Ce n'est pas un avancement du temps en continue par le serveur, et je ne vois pas de moyen de faire autrement qu'un AJAX (ou assimilé) régulièr en arrière-plan...! D'ailleurs, je ne pense pas que la notion de "persistance" change quoi que ce soit dans le cas présent?!

@Ter: Le joueur ne lance pas une production à la mano, la production ne se fait que lorsque le temps avance. A la limite, là, ce serait "quand le joueur construit un bâtiment et qu'il n'a pas les stocks nécessaires". Le truc, c'est que je ne peux pas là non plus savoir (côté serveur) ce qu'il convient de faire: avancer le temps ne va peut-être pas forcément augmenter le stock des ressources nécessaires à la construction, cela pourrait même le diminuer (supposons qu'il faille du pétrole pour construire, et que je n'en produise pas mais que j'ai une centrale thermique qui en consomme: avancer le temps ne va faire que flinguer le stock du joueur 16 )

Bon, en pratique, je vais laisser tomber le concept d'avancement du temps automatique, et le faire uniquement quand le joueur le souhaite. C'est le joueur qui pilotera l'avancement du calendrier, ce qui fera un gameplay simple et sain.

Un autre truc que je trouve chouette avec l'avancement du temps manuel d'ailleurs, c'est que je règle un gros soucis d'équilibre entre les bleus et les vétérans: dans la plupart des jeux, les bleus qui arrivent 3 mois (IRL) après les autres ne peuvent généralement pas remonter la pente. Là, supposons qu'on est le 1er Janvier 2000 in game au lancement du jeu, et qu'un joueur vient jouer. Il joue 1 heure tous les jours, pendant plus de 3 mois (= 100 heures de jeu). C'est donc un vétéran, et son pays est maintenant à la date 2100 (la date maxi du jeu à ce moment-là; pour rappel, la "date maxi" du jeu, c'est la date que les joueurs ne peuvent pas dépasser, et elle, elle augmente toute seule, automatiquement et de manière continue). Un nouveau joueur arrive. Quid?!
Dans un jeu classique, le nouveau joueur arrive dans un jeu qui est à l'an 2100: il y a plein de ressources nouvelles, des bâtiments futuristes, pas de pétrole, et des vétérans balèze partout. Il fait quoi le bleu? Soit le trouve un gentil vétéran copain, soit il pleure de ne pas pouvoir remonter la pente (les 3 mois de retard qu'il a)...
Dans ECLERD, avec un avancement du temps au choix du joueur, si le joueur prend la tête d'une région qui est encore à l'année 2000 (le temps n'y a pas du tout avancé depuis le début du jeu), alors ce "bleu" aura ses chances: il pourra combler son retard en faisant défiler les années un peu plus vite que les vétérans, mais il devra toujours jouer (environ) 100 heures pour rattraper les vétérans (ce qu'il peut donc faire en moins d'une semaine s'il est hyper-accroc). S'il joue "trop vite", = s'il passe les 100 années en 1 heure au lieu de 100 heures, alors il risque de mal jouer (ou bien il est 100x plus doué que les vétérans) car si on "saute" des années trop vite, on peut rapidement faire dégénérer son pays (démographie bancale, troubles, épidémies, etc)

Ca pourrait donc être un superbe avantage de laisser les joueurs avancer le temps manuellement, car je sépare totalement la timeline du jeu et la timeline IRL, ce qui me permettra de bien les équilibrer (rien ne m'interdit, en bonus, de filer un truc aux joueurs inscrits depuis plus de 3 mois, aka aux vétérans). 2
Répondre
#24
Justement, ça fait le cul entre 2 chaises entre la solution que tu préconises en temps normal (calculer à la demande) et les solutions de mises à jour réelles régulières associé à des push.
Répondre


Sujets apparemment similaires...
Sujet Auteur Réponses Affichages Dernier message
  VariiSpace [Reboot] Xenos 23 4 354 01-14-2019, 01:18 PM
Dernier message: Xenos



Utilisateur(s) parcourant ce sujet : 1 visiteur(s)