17-03-2009, 08:48 PM
Voila j'arrive au dernier script de mon jeu qui est la création des unités, je l'avait laisser de coter pensant trouver une solutions pendant que je codait le reste mais finalement rien..
Je suppose que certains ont déjà rencontrer ce problème la.. je dois gérer la créations des unités de mes joueurs. Sur le papier c'est simple en réalité c'est plus compliquer
En effet l'idéal serait que les unités se créait au fur et a mesures, c'est a dire que si ils créait 100 unités, ils ne faut pas qu'il attendent que ces 100 unités soit crée pour qu'elles apparaissent dans sa base mais qu'elles apparaissent donc au fur et a mesures.
Mais la ce crée le problème du stockage dans la bdd.
J'ai vu deux solutions, et pas mal de dérivé de ces deux la.
La première est de mettre le nombre total d'unité a crée, et la fin du temps de création de la première. On update pour mettre a jour la fin de la prochaine création d'unité et le nombre d'unités restant a crée.
Le problème se situe au niveau du temps, par exemple si entre deux mises a jour de la table (Je lance ces mises a jour a chaque fois qu'un joueur lance une page) il y a eut le temps pour crée 2 unités la devient galère. J'ai alors penser a mettre le timestamps de la dernière mis a jour et calculer si y'a eut le temps de crée une unité.. le problème est que si il n'y a pas des mises a jour régulière le timestamp risque d'être décaler.
Deuxième solution, stocker dans ma tables les unités une par une, si je crée 1000 unités ca me fait 1000 ligne dans ma table, et la c'est plutôt le nombre de ligne au final dans ma table qui me pose problème, aussi pour ce cas la j'ai penser pour améliorer les perf passer par une table memory mais le problème c'est que c'est volatiles et que si le serveur plante on perd tout grrr
Au final je galère je voudrais pas faire un truc bancale et ce petit problème me fait prendre pas mal de retard sur mon projets :-(
Je suppose que certains ont déjà rencontrer ce problème la.. je dois gérer la créations des unités de mes joueurs. Sur le papier c'est simple en réalité c'est plus compliquer
En effet l'idéal serait que les unités se créait au fur et a mesures, c'est a dire que si ils créait 100 unités, ils ne faut pas qu'il attendent que ces 100 unités soit crée pour qu'elles apparaissent dans sa base mais qu'elles apparaissent donc au fur et a mesures.
Mais la ce crée le problème du stockage dans la bdd.
J'ai vu deux solutions, et pas mal de dérivé de ces deux la.
La première est de mettre le nombre total d'unité a crée, et la fin du temps de création de la première. On update pour mettre a jour la fin de la prochaine création d'unité et le nombre d'unités restant a crée.
Le problème se situe au niveau du temps, par exemple si entre deux mises a jour de la table (Je lance ces mises a jour a chaque fois qu'un joueur lance une page) il y a eut le temps pour crée 2 unités la devient galère. J'ai alors penser a mettre le timestamps de la dernière mis a jour et calculer si y'a eut le temps de crée une unité.. le problème est que si il n'y a pas des mises a jour régulière le timestamp risque d'être décaler.
Deuxième solution, stocker dans ma tables les unités une par une, si je crée 1000 unités ca me fait 1000 ligne dans ma table, et la c'est plutôt le nombre de ligne au final dans ma table qui me pose problème, aussi pour ce cas la j'ai penser pour améliorer les perf passer par une table memory mais le problème c'est que c'est volatiles et que si le serveur plante on perd tout grrr
Au final je galère je voudrais pas faire un truc bancale et ce petit problème me fait prendre pas mal de retard sur mon projets :-(