JeuWeb - Crée ton jeu par navigateur
Gestion déplacement entité - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Gestion déplacement entité (/showthread.php?tid=6333)

Pages : 1 2


RE: Gestion déplacement entité - srm - 20-08-2012

Bah non, si tu as des zombies qui te poursuivent, tu peux dire qu'ils sont liés à la personne.
Et que tant qu'ils sont en mode poursuite tu gères le déplacement, qu'il soient visible ou non.
Et ne plus les gérer dès qu'ils stoppent leur poursuite.


RE: Gestion déplacement entité - Aleskweb - 20-08-2012

Tu veux que le jeu soit online?

Dans ce cas, tu gère avec des threads coté serveur, par groupe de zombies de 1 a XX zombies.
Je pense que gérer par groupe peut apporter:
-Moins de threads
-Une sorte d'organisation des enemis, (ils peuvent t'attaquer en horde)
-Plus simple a gerer
-Il pourra toujours y a voir des zombies solitaires (groupe de 1 zombies)


RE: Gestion déplacement entité - srm - 20-08-2012

J'imagine bien le jeu grandis, il y a maintenant 50000 zombies dans tout le jeu.
Tu vas avoir une tonne de processus pour gérer tout ça, alors que c'est inutile.

Et que tu pourrais faire croire qu'ils sont géré tout en gérant seulement 5000 en même temps.


RE: Gestion déplacement entité - Shidame - 20-08-2012

Est ce qu'il y'aura vraiment des zones, pleines de zombies, éloignées des joueurs ? En quoi est-ce pertinent de les simuler ? Quelle est la taille maximum de la carte ?

A mon avis c'est différents points mérite d'être explicités pour savoir quelle approche utiliser.


RE: Gestion déplacement entité - niahoo - 20-08-2012

(20-08-2012, 05:35 PM)oxman a écrit : J'imagine bien le jeu grandis, il y a maintenant 50000 zombies dans tout le jeu.
Tu vas avoir une tonne de processus pour gérer tout ça, alors que c'est inutile.

Et que tu pourrais faire croire qu'ils sont géré tout en gérant seulement 5000 en même temps.

Ben non tu peux le faire avec un seul processus ...


RE: Gestion déplacement entité - Ter Rowan - 20-08-2012

Partant du principe que l influence ne change qu en fonction d événement (action du joueur, ou word event) je partirais sur un systeme différent :

Les zombies ou groupe de zombies sont stockés en base
Lorsque un événement a lieu a un endroit, on calcule tous les zombies Impactés et, de fait on identifie la nouvelle position = origine + trajectoire avant event + trajectoire après event

Une tache cron toutes les x heures pour éviter des deltas trop importants et voila.


RE: Gestion déplacement entité - Auronake - 21-08-2012

(20-08-2012, 06:10 PM)Shidame a écrit : Est ce qu'il y'aura vraiment des zones, pleines de zombies, éloignées des joueurs ? En quoi est-ce pertinent de les simuler ? Quelle est la taille maximum de la carte ?

A mon avis c'est différents points mérite d'être explicités pour savoir quelle approche utiliser.

Alors le jeu se doit d'être online, oui. Après, non il n'y aura pas de "zones" de zombies précises. Les "zones" se créeront naturellement en fonction de l'influence (les zombies convergent vers un lieu).
Les simuler tous n'est pas pertinent en fait, il faut qu'on arrive à donner l'illusion que ça se passe comme ça Smile (on réfléchie à un autre système).
Et la carte doit être suffisamment grande, on table sur une grande ville et la campagne alentour. Le système que l'on doit trouver ne doit pas tenir compte de la taille de la map Wink.

(20-08-2012, 07:54 PM)Ter Rowan a écrit : Partant du principe que l influence ne change qu en fonction d événement (action du joueur, ou word event) je partirais sur un systeme différent :

Les zombies ou groupe de zombies sont stockés en base
Lorsque un événement a lieu a un endroit, on calcule tous les zombies Impactés et, de fait on identifie la nouvelle position = origine + trajectoire avant event + trajectoire après event

Une tache cron toutes les x heures pour éviter des deltas trop importants et voila.

Le nouveau système serait dans cette veine :

- On va oublier cette effet de convergence de zombies "persistantes"
- Par une tâche périodique genre toutes les 6 heures ou 12 à voir, on va régénérer certains paramètres des "zones" (non visible par un joueur)
- Ces paramètres sont l'influence de la zone et une densité de zombies (nombre de zombies que peut "générer" la zone)
- Quand un joueur se trouve dans une zone, les zones adjacentes vont faire "poper" des zombies en fonction de l'influence de la zone actuelle du joueur (influence = % que les zones adjacentes fassent "poper" un nombre compris entre 0 et la densité)
- Ce test de génération va se faire toutes les 30 secondes (ou 1 minutes, ou à voir)
- Chaque zombie popé va faire diminuer la densité de la zone en question jusqu'à une densité nulle
- L'influence augmente toujours lors d'évènement et diminue dans le temps et se propage au zones adjacentes (sorte de lissage)
- La densité remonte aussi dans le temps et diminue en cas de création de zombie

Cela permet de simuler que si l'on se trouve à un endroit et que l'on "fait" du bruit (combat, explosion, autre) alors l'influence va augmenter, augmentant alors la probabilité des zombies popent dans les zones adjacentes et convergent vers la zone du joueur.

On imagine des combats suivant une courbe plutôt parabolique : peu de zombie puis combat puis encore plus de zombies puis combat puis moins de zombies puis combat puis calme.


En espérant avoir été clair, qu'en dites-vous ? Big Grin (qui a dit qu'on se prenait la tête ? ^^)

Edit : j'ai oublié, quand on quitte une zone, on veillera à stocker le nombre de zombie créé afin de les faire revenir si le joueur revient (non c'est pas le bordel ^^)