15-07-2010, 01:45 PM
Ho, ça me rappelle un développement de Magdales ... table effet/effet en cours/type effet.
Une des autres problématique que tu vas rencontrer je pense, c'est "la conjoncture de l'espace-temps des jeux en tour par tour". Je vais t'exposer la problèmatique, et ensuite, la méthode que j'ai trouvé pour essayer de corriger ce problème.
Dans les jeux en tours par tours, chaque joueurs disposent d'un capital temps (appelle ça points d'actions, PA, nombre de tours, etc.). Dans Magdales, les donjons sont sombres. Il est possible d'éclairer à l'aide de torches. Les torches ont une durée limitée à quelques heures. Cela correspond dans le jeu admettons à 150 tours (réellement c'est tiré entre 120 et 180 tours au moment où la torche est fabriquée).
1er cas :
Un joueur A ayant 310 tours de jeu allume la torche. Il marche et fait des combats. lorsqu'il arrive à 160 tours, la torche s'éteind il est plongé dans le noir.
2eme cas :
Une équipe de 2 joueurs : B et C ont aussi 310 tours de jeu. B allume sa torche. C profite de la lumière et joue ses 310 tours bien éclairé.
Paradox spoted :
- Comment se fait-il que C puisse jouer 310 tours alors qu'une torche ne fonctionne que 150 tours ?
- Quid du cas ou B arrête de jouer la torche à la main ?
3eme cas :
Une équipe de 2 joueurs : D et E ont aussi 310 tours de jeu. D allume sa torche et joue tous ses tours. La torche s'éteind au bout de 150 tours ...
Paradox spoted :
- comment se fait-il que E n'ai pas pu jouer 150 tours en pleine lumière alors que la torche a bien été allumée ?
On comprend qu'il y a un certain malaise qui au mieux avantagerait certains joueurs, au pire générait de la frustration.
L'idéal serait de faire un jeu où toutes les actions sont consignées avec un horaire bien défini. Chaque joueur serait dans son univers et, lorsqu'il ne joue pas, le temps serait figé. Cela (dans mon cas) nécessiterait de tout reprogrammer. Deplus, le jeu deviendrait très compliqué : 2 joueurs qui souhaiteraient échanger de l'équipement devraient se retrouver dans le même temps In game et Out game.
Je n'ai pas retenu cette solution (qui, je pense est la seule véritable solution qui puisse appréhender tous les problèmes des effets).
La solution que j'ai retenu n'est pas la plus évidente et ne résout pas tous les cas tordus. J'ai préféré considérer les effets selon plusieurs voies :
1°/ Tout effet est limité en temps et en point d'action.
Ainsi si j'allume ma torche qui dure 150 tours, je sais que dans 12h30 (1 tours = 5 minutes dans le jeu => 150 tours = 12h et demi) au plus tard, ma torche sera consommée entièrement. Peut importe que j'use mes tours ou non. (je regarde ma montre il est 11h00, la torche sera consommée à 23h30)
Si j'utilise mes tours, alors la durée maximale diminue en proportion.
Exemple : 5 minutes après, j'ai consommé 100 tours. La torche sera maintenant consommée dans 50 tours soit 4h10.(je regarde ma montre, il est 11h05, la torche sera consommée à 15h15)
==> Pourquoi ? Si le temps ne rentre jamais en jeu, alors on pourrait fabriquer des joueurs qui serviraient de phares perpétuels...
2°/Autant d'effets que d'espace temps (dans la sphère d'influence).
Ca peut sembler bizarre, mais lorsqu'on allume une torche, j'offre un bonus de vision aux joueurs à proximité. Ces effets sont liés à un effet père et sont limités en temps et en action.
Si l'effet père disparait (le joueur qui a allumé la torche est mort, ou s'il change de lieu), on soustrait le nombre de point d'action restant au père à tous ses fils et on recacul le temps restant.
Exemple :
D et E sont dans le donjon. D allume sa torche. les joueurs D et E ont donc maintenant un effet de vision qui dure 150 tours. Il existe un effet père sur la torche. D souhaite jouer tous ses tours ... mais meurt au bout de 100 tours. La torche tombe et s'éteind. Il reste donc 50 tours à la torche. Avant de détruire l'effet père, on reporte le nouveau délais au joueur E qui ne disposera finalement que d'un effet de vision durant 100 tours.
A noter que ce point 2 peut aussi fonctionner si le joueur quitte la pièce, le donjon ... En fait, dès qu'il sort de la sphère d'affluence de l'effet père.
3°/Noter des dates de fin d'effet plutôt que des durées restantes.
En effet, au niveau calcul, les durées restantes se décrémentent à chaque secondes ... ce qui peut générer des monstres de calcul selon le nombre de joueur et d'effet.
Si tu notes une date de fin d'effet, tu te soustrais de ces calculs, et il est très facile de connaitre la durée restante à chaque instant.
Je pense t'avoir fait part de quelques mois de réflexion personnelle sur le sujet ...
Je pourrais te parler des effets génériques, des effets complexes, des catalogues d'effets de Magdales ^^.
Bon courage à toi. Le dév est assez long, mais lorsqu'on arrive au bout ... quel soulagement
kéké
Une des autres problématique que tu vas rencontrer je pense, c'est "la conjoncture de l'espace-temps des jeux en tour par tour". Je vais t'exposer la problèmatique, et ensuite, la méthode que j'ai trouvé pour essayer de corriger ce problème.
Dans les jeux en tours par tours, chaque joueurs disposent d'un capital temps (appelle ça points d'actions, PA, nombre de tours, etc.). Dans Magdales, les donjons sont sombres. Il est possible d'éclairer à l'aide de torches. Les torches ont une durée limitée à quelques heures. Cela correspond dans le jeu admettons à 150 tours (réellement c'est tiré entre 120 et 180 tours au moment où la torche est fabriquée).
1er cas :
Un joueur A ayant 310 tours de jeu allume la torche. Il marche et fait des combats. lorsqu'il arrive à 160 tours, la torche s'éteind il est plongé dans le noir.
2eme cas :
Une équipe de 2 joueurs : B et C ont aussi 310 tours de jeu. B allume sa torche. C profite de la lumière et joue ses 310 tours bien éclairé.
Paradox spoted :
- Comment se fait-il que C puisse jouer 310 tours alors qu'une torche ne fonctionne que 150 tours ?
- Quid du cas ou B arrête de jouer la torche à la main ?
3eme cas :
Une équipe de 2 joueurs : D et E ont aussi 310 tours de jeu. D allume sa torche et joue tous ses tours. La torche s'éteind au bout de 150 tours ...
Paradox spoted :
- comment se fait-il que E n'ai pas pu jouer 150 tours en pleine lumière alors que la torche a bien été allumée ?
On comprend qu'il y a un certain malaise qui au mieux avantagerait certains joueurs, au pire générait de la frustration.
L'idéal serait de faire un jeu où toutes les actions sont consignées avec un horaire bien défini. Chaque joueur serait dans son univers et, lorsqu'il ne joue pas, le temps serait figé. Cela (dans mon cas) nécessiterait de tout reprogrammer. Deplus, le jeu deviendrait très compliqué : 2 joueurs qui souhaiteraient échanger de l'équipement devraient se retrouver dans le même temps In game et Out game.
Je n'ai pas retenu cette solution (qui, je pense est la seule véritable solution qui puisse appréhender tous les problèmes des effets).
La solution que j'ai retenu n'est pas la plus évidente et ne résout pas tous les cas tordus. J'ai préféré considérer les effets selon plusieurs voies :
1°/ Tout effet est limité en temps et en point d'action.
Ainsi si j'allume ma torche qui dure 150 tours, je sais que dans 12h30 (1 tours = 5 minutes dans le jeu => 150 tours = 12h et demi) au plus tard, ma torche sera consommée entièrement. Peut importe que j'use mes tours ou non. (je regarde ma montre il est 11h00, la torche sera consommée à 23h30)
Si j'utilise mes tours, alors la durée maximale diminue en proportion.
Exemple : 5 minutes après, j'ai consommé 100 tours. La torche sera maintenant consommée dans 50 tours soit 4h10.(je regarde ma montre, il est 11h05, la torche sera consommée à 15h15)
==> Pourquoi ? Si le temps ne rentre jamais en jeu, alors on pourrait fabriquer des joueurs qui serviraient de phares perpétuels...
2°/Autant d'effets que d'espace temps (dans la sphère d'influence).
Ca peut sembler bizarre, mais lorsqu'on allume une torche, j'offre un bonus de vision aux joueurs à proximité. Ces effets sont liés à un effet père et sont limités en temps et en action.
Si l'effet père disparait (le joueur qui a allumé la torche est mort, ou s'il change de lieu), on soustrait le nombre de point d'action restant au père à tous ses fils et on recacul le temps restant.
Exemple :
D et E sont dans le donjon. D allume sa torche. les joueurs D et E ont donc maintenant un effet de vision qui dure 150 tours. Il existe un effet père sur la torche. D souhaite jouer tous ses tours ... mais meurt au bout de 100 tours. La torche tombe et s'éteind. Il reste donc 50 tours à la torche. Avant de détruire l'effet père, on reporte le nouveau délais au joueur E qui ne disposera finalement que d'un effet de vision durant 100 tours.
A noter que ce point 2 peut aussi fonctionner si le joueur quitte la pièce, le donjon ... En fait, dès qu'il sort de la sphère d'affluence de l'effet père.
3°/Noter des dates de fin d'effet plutôt que des durées restantes.
En effet, au niveau calcul, les durées restantes se décrémentent à chaque secondes ... ce qui peut générer des monstres de calcul selon le nombre de joueur et d'effet.
Si tu notes une date de fin d'effet, tu te soustrais de ces calculs, et il est très facile de connaitre la durée restante à chaque instant.
Je pense t'avoir fait part de quelques mois de réflexion personnelle sur le sujet ...
Je pourrais te parler des effets génériques, des effets complexes, des catalogues d'effets de Magdales ^^.
Bon courage à toi. Le dév est assez long, mais lorsqu'on arrive au bout ... quel soulagement
kéké