Rendre déterministe le choix de l’agresseur lors d’une détection simultanée #38

Open
opened 2026-06-20 11:11:14 +00:00 by Reliodas · 1 comment
Owner

parcourt et démarre la première rencontre détectée. Si plusieurs hostiles perçoivent le héros au même instant, l’agresseur dépend de l’ordre du dictionnaire, sans priorité produit explicite. Cela peut modifier l’identité de la rencontre primaire, le panneau initial et la sélection des participants.

Critères d’acceptation :

  • définir une règle stable de priorité : distance, initiative de perception, identifiant stable ou autre règle documentée ;
  • le résultat ne dépend pas de l’ordre interne d’un Dictionary ;
  • les autres hostiles éligibles peuvent toujours rejoindre via EncounterSetup ;
  • la règle reste cohérente après fuite et déplacement d’entités ;
  • un test avec plusieurs observateurs simultanés vérifie toujours le même agresseur.
parcourt et démarre la première rencontre détectée. Si plusieurs hostiles perçoivent le héros au même instant, l’agresseur dépend de l’ordre du dictionnaire, sans priorité produit explicite. Cela peut modifier l’identité de la rencontre primaire, le panneau initial et la sélection des participants. Critères d’acceptation : - définir une règle stable de priorité : distance, initiative de perception, identifiant stable ou autre règle documentée ; - le résultat ne dépend pas de l’ordre interne d’un Dictionary ; - les autres hostiles éligibles peuvent toujours rejoindre via EncounterSetup ; - la règle reste cohérente après fuite et déplacement d’entités ; - un test avec plusieurs observateurs simultanés vérifie toujours le même agresseur.
Reliodas added this to the 0.15.0 milestone 2026-06-20 11:11:14 +00:00
Author
Owner

Complément technique : la méthode concernée est World.evaluate_perception(), qui parcourt actuellement _entities.values(). Les autres participants continuent ensuite à être rassemblés par EncounterSetup.

Complément technique : la méthode concernée est `World.evaluate_perception()`, qui parcourt actuellement `_entities.values()`. Les autres participants continuent ensuite à être rassemblés par `EncounterSetup`.
Reliodas modified the milestone from 0.15.0 to 0.17.0 2026-06-22 01:53:57 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: jeux/beaulieu-sur-brume#38
No description provided.