14-02-2011, 08:40 PM
Parceque les conséquences ne sont pas pré-calculés.
Admettons des choses plus concrètes :
L'evenement 1 est l'attaque d'un dépot de nourriture par un joueur.
L'evenement 2 est une expédition d'une IA se rendant à ce même dépôt pour acheter des denrées.
L'evenement 3 n'a rien à voir avec tout ca.
L'evenement 4 n'a rien à voir avec tout ca.
L'evenement 5 n'a rien à voir avec tout ca.
L'evenement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Le script de résolution de l'attaque est lancé, le dépôt est détruit et le joueur l'a pillé...
L'IA est avisé des informations qu'elle est censé pouvoir prendre en compte. (Disons qu'un messager préviens le convois)
Après avoir pris en compte ces nouvelles informations, l'IA n'a plus trop d'intérêt à aller acheter des denrées à ce dépôt.
Elle revoit donc ses plan et change de route.
L'IA décide d'envoyer son convoi au dépôt d'arme le plus proche afin d'acheter au meilleur prix un stock à revendre ailleurs.
Après traitement de l'évènement 1 et ré-examen des nouvelles variables d'environnement par l'IA la pile à changée (je laisse les numéros pour illustrer:
L'évènement 1 est résolu.
L'évènement 2 est annulé, une autre action est venu s'intercaler dans la pile.
L'évènement 3 n'a rien à voir avec tout ca.
L'évènement 4 est l'expédition qui arrive au dépôt d'arme.
L'évènement 5 n'a rien à voir avec tout ca.
L'évènement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Dans ce cas simple, on supprime une entrée pour une autre, exécuté plus tard.
Dans des cas plus complexes, concours de circonstances ou je ne sais quoi, des entrées pourraient simplement apparaitre :
Avant même l'exécution et la résolution de l'évènement 4, le convoi rencontre (passe dans la zone d'action) d'une troupe de bandit itinérants, le moteur génère un nouvel évènement :
L'évènement 1 est résolu.
L'événement 2 est annulé, une autre action est venu s'intercaler dans la pile.
L'évènement 3 n'a rien à voir avec tout ca.
Nouvel évènement : les bandit interceptent le convoi.
L'évènement 4 est l'expédition qui arrive au dépôt d'arme.
L'évènement 5 n'a rien à voir avec tout ca.
L'évènement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Dans ce cas, un nouvel évènement est apparu, mais ce n'est rien encore.
Admettons que l'évènement 3 arrive, soit exécuté.
Aucun influence sur notre affaire, mais 1 minute avant l'interception des bandits, l'IA du convoi se rend compte qu'elle est suivit de très prêt et engage une manœuvre de fuite vers la bâtiment le plus proche.
Hop l'évènement 4 est annulé et l'interception par les bandits est repoussée dans le temps... (Oui si le convoi fuit, cela prendra plus de temps).
Une fois le convoi détruit et pillé, la "police" locale est avertit et mobilise deux patrouilles pour traquer les criminels... Etc etc etc.
Quelle histoire hein? :hahahaha:
J'aurais pu être plus inventif, et trouver des interactions plus étroites entre les évènements, désolé pour le manque de créativité.
Ce que je voudrais démontrer avec tout ceci, c'est que chaque évènement influe sur les suivants, bien entendu dans un univers vaste et riche, les conséquences sont parfois minces, ou subtiles, mais parfois elles seront catastrophiques.
Il est impossible d'établir une sorte de déterminisme absolu en pré calculant tout cela, par exemple, qui aurait pu prévoir le résultat de l'attaque sur le dépôt de denrées?
certes on peut le pré calculer, mais dans un environnement de jeu ou les joueurs peuvent intervenir soudainement, et protéger le dépôt alors le calculs devient obsolète.
Ainsi tout les calculs liés à ce mauvais calcul le deviennent et doivent être modifiés.
Un univers en permanente mutation, avec un calcul en temps "réel" des mouvements et changements qu'un calcul à la connexion des joueurs ne peut satisfaire.
Admettons des choses plus concrètes :
L'evenement 1 est l'attaque d'un dépot de nourriture par un joueur.
L'evenement 2 est une expédition d'une IA se rendant à ce même dépôt pour acheter des denrées.
L'evenement 3 n'a rien à voir avec tout ca.
L'evenement 4 n'a rien à voir avec tout ca.
L'evenement 5 n'a rien à voir avec tout ca.
L'evenement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Le script de résolution de l'attaque est lancé, le dépôt est détruit et le joueur l'a pillé...
L'IA est avisé des informations qu'elle est censé pouvoir prendre en compte. (Disons qu'un messager préviens le convois)
Après avoir pris en compte ces nouvelles informations, l'IA n'a plus trop d'intérêt à aller acheter des denrées à ce dépôt.
Elle revoit donc ses plan et change de route.
L'IA décide d'envoyer son convoi au dépôt d'arme le plus proche afin d'acheter au meilleur prix un stock à revendre ailleurs.
Après traitement de l'évènement 1 et ré-examen des nouvelles variables d'environnement par l'IA la pile à changée (je laisse les numéros pour illustrer:
L'évènement 1 est résolu.
L'évènement 2 est annulé, une autre action est venu s'intercaler dans la pile.
L'évènement 3 n'a rien à voir avec tout ca.
L'évènement 4 est l'expédition qui arrive au dépôt d'arme.
L'évènement 5 n'a rien à voir avec tout ca.
L'évènement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Dans ce cas simple, on supprime une entrée pour une autre, exécuté plus tard.
Dans des cas plus complexes, concours de circonstances ou je ne sais quoi, des entrées pourraient simplement apparaitre :
Avant même l'exécution et la résolution de l'évènement 4, le convoi rencontre (passe dans la zone d'action) d'une troupe de bandit itinérants, le moteur génère un nouvel évènement :
L'évènement 1 est résolu.
L'événement 2 est annulé, une autre action est venu s'intercaler dans la pile.
L'évènement 3 n'a rien à voir avec tout ca.
Nouvel évènement : les bandit interceptent le convoi.
L'évènement 4 est l'expédition qui arrive au dépôt d'arme.
L'évènement 5 n'a rien à voir avec tout ca.
L'évènement 6 n'a rien à voir avec tout ca.
L'évènement 7 n'a rien à voir avec tout ca.
L'évènement 8 n'a rien à voir avec tout ca.
Dans ce cas, un nouvel évènement est apparu, mais ce n'est rien encore.
Admettons que l'évènement 3 arrive, soit exécuté.
Aucun influence sur notre affaire, mais 1 minute avant l'interception des bandits, l'IA du convoi se rend compte qu'elle est suivit de très prêt et engage une manœuvre de fuite vers la bâtiment le plus proche.
Hop l'évènement 4 est annulé et l'interception par les bandits est repoussée dans le temps... (Oui si le convoi fuit, cela prendra plus de temps).
Une fois le convoi détruit et pillé, la "police" locale est avertit et mobilise deux patrouilles pour traquer les criminels... Etc etc etc.
Quelle histoire hein? :hahahaha:
J'aurais pu être plus inventif, et trouver des interactions plus étroites entre les évènements, désolé pour le manque de créativité.
Ce que je voudrais démontrer avec tout ceci, c'est que chaque évènement influe sur les suivants, bien entendu dans un univers vaste et riche, les conséquences sont parfois minces, ou subtiles, mais parfois elles seront catastrophiques.
Il est impossible d'établir une sorte de déterminisme absolu en pré calculant tout cela, par exemple, qui aurait pu prévoir le résultat de l'attaque sur le dépôt de denrées?
certes on peut le pré calculer, mais dans un environnement de jeu ou les joueurs peuvent intervenir soudainement, et protéger le dépôt alors le calculs devient obsolète.
Ainsi tout les calculs liés à ce mauvais calcul le deviennent et doivent être modifiés.
Un univers en permanente mutation, avec un calcul en temps "réel" des mouvements et changements qu'un calcul à la connexion des joueurs ne peut satisfaire.