23-08-2007, 03:11 PM
mauvaise réponse ^^
Dans un système "non linéaire" et très complexe, éventuellement. Mais dans ton cas, les autres joueurs n'ont besoin des ressources d'une personne qu'à deux occasions : l'exploration/espionnage/recherche du magot d'un autre joueur, et le vol/pillage de ce dernier.
Dans tous les cas, tu n'as pas besoin que le montant réel des ressources préexiste. Il peut être calculé au moment de l'action qui en a besoin. Pour cela tu peux créer une fonction de mise à jour qui réalise deux choses :
->Elle lit le timestamp de la dernière mise à jour, ajoute la différente avec le timestamp actuel en fonction du taux de production (ou perte) puis renvoie la nouvelle somme au reste du script.
->Elle note dans la table de la ressource le timestamp de sa dernière intervention (celui utilisé pour le calcul de l'ajout)
De cette manière, dès qu'une ressource doit être connue ou employée, elle se retrouve à jour et seulement à ce moment là. De quoi économiser beaucoup de "ressources" serveur.
Le seul problème peut survenir si le taux de production d'une ressource est modifié. Si ce genre d'évènement est bien connu et concerne qu'un joueur à la fois, tu peux parfaitement, faire l'update de ressources à cet instant, puis appliquer le changement de taux.
Dans un système "non linéaire" et très complexe, éventuellement. Mais dans ton cas, les autres joueurs n'ont besoin des ressources d'une personne qu'à deux occasions : l'exploration/espionnage/recherche du magot d'un autre joueur, et le vol/pillage de ce dernier.
Dans tous les cas, tu n'as pas besoin que le montant réel des ressources préexiste. Il peut être calculé au moment de l'action qui en a besoin. Pour cela tu peux créer une fonction de mise à jour qui réalise deux choses :
->Elle lit le timestamp de la dernière mise à jour, ajoute la différente avec le timestamp actuel en fonction du taux de production (ou perte) puis renvoie la nouvelle somme au reste du script.
->Elle note dans la table de la ressource le timestamp de sa dernière intervention (celui utilisé pour le calcul de l'ajout)
De cette manière, dès qu'une ressource doit être connue ou employée, elle se retrouve à jour et seulement à ce moment là. De quoi économiser beaucoup de "ressources" serveur.
Le seul problème peut survenir si le taux de production d'une ressource est modifié. Si ce genre d'évènement est bien connu et concerne qu'un joueur à la fois, tu peux parfaitement, faire l'update de ressources à cet instant, puis appliquer le changement de taux.