From b48f2b15045d3e79db320c84109fac8eaba908ad Mon Sep 17 00:00:00 2001 From: LeRatierBretonnier Date: Tue, 31 Mar 2026 13:36:45 +0200 Subject: [PATCH] =?UTF-8?q?feat:=20anomalies=20dans=20le=20compendium=20?= =?UTF-8?q?=E2=80=94=208=20types=20avec=20descriptions=20compl=C3=A8tes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - _source/anomalies/*.json : fichiers sources JSON (un par type) Entropie, Communication avec les morts, Illusion, Suggestion, Tarot divinatoire, Télékinésie, Télépathie, Voyage astral - packs-system/anomalies/ : compendium LevelDB peuplé via fvtt package pack - Champs remplis : technique (HTML), narratif (HTML), exemples (HTML) subtype, level=2, usesRemaining=2, img anomaly.svg Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- _source/anomalies/communicationaveclesmorts.json | 15 +++++++++++++++ _source/anomalies/entropie.json | 15 +++++++++++++++ _source/anomalies/illusion.json | 15 +++++++++++++++ _source/anomalies/suggestion.json | 15 +++++++++++++++ _source/anomalies/tarotdivinatoire.json | 15 +++++++++++++++ _source/anomalies/telekinesie.json | 15 +++++++++++++++ _source/anomalies/telepathie.json | 15 +++++++++++++++ _source/anomalies/voyageastral.json | 15 +++++++++++++++ packs-system/anomalies/000005.ldb | Bin 0 -> 5158 bytes .../anomalies/{000019.log => 000007.log} | 0 packs-system/anomalies/CURRENT | 2 +- packs-system/anomalies/LOG | 6 +++--- packs-system/anomalies/LOG.old | 12 +++++------- packs-system/anomalies/MANIFEST-000006 | Bin 0 -> 118 bytes packs-system/anomalies/MANIFEST-000018 | Bin 50 -> 0 bytes 15 files changed, 129 insertions(+), 11 deletions(-) create mode 100644 _source/anomalies/communicationaveclesmorts.json create mode 100644 _source/anomalies/entropie.json create mode 100644 _source/anomalies/illusion.json create mode 100644 _source/anomalies/suggestion.json create mode 100644 _source/anomalies/tarotdivinatoire.json create mode 100644 _source/anomalies/telekinesie.json create mode 100644 _source/anomalies/telepathie.json create mode 100644 _source/anomalies/voyageastral.json create mode 100644 packs-system/anomalies/000005.ldb rename packs-system/anomalies/{000019.log => 000007.log} (100%) create mode 100644 packs-system/anomalies/MANIFEST-000006 delete mode 100644 packs-system/anomalies/MANIFEST-000018 diff --git a/_source/anomalies/communicationaveclesmorts.json b/_source/anomalies/communicationaveclesmorts.json new file mode 100644 index 0000000..6f7bd64 --- /dev/null +++ b/_source/anomalies/communicationaveclesmorts.json @@ -0,0 +1,15 @@ +{ + "_id": "anomCommMorts001", + "name": "Communication avec les morts", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "communicationaveclesmorts", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'une Spécialisation de l'Esprit (Instruction, Merveilleux technologique, Raisonnement, Traitement), le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

Le personnage entre en contact avec l'esprit d'un défunt. Il peut lui poser une question fermée (réponse par oui ou par non uniquement). Le contact est bref et les réponses peuvent être fragmentées ou métaphoriques, à la discrétion du narrateur.

", + "exemples": "" + }, + "_key": "!items!anomCommMorts001" +} diff --git a/_source/anomalies/entropie.json b/_source/anomalies/entropie.json new file mode 100644 index 0000000..8fc1957 --- /dev/null +++ b/_source/anomalies/entropie.json @@ -0,0 +1,15 @@ +{ + "_id": "anomEntropie0001", + "name": "Entropie", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "entropie", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, le protagoniste gagne la possibilité de relancer le Dé de Lune un nombre de fois égal à son Niveau d'Anomalie. Il peut choisir de conserver le résultat préféré.

Cette capacité ne s'applique pas aux tests de chance.

", + "narratif": "

Le personnage peut influencer le hasard à sa façon, en déclenchant ou en évitant de petits événements aléatoires dans son environnement proche. Ces manifestations sont mineures, subtiles, et ne semblent jamais surnaturelles aux yeux des témoins.

", + "exemples": "" + }, + "_key": "!items!anomEntropie0001" +} diff --git a/_source/anomalies/illusion.json b/_source/anomalies/illusion.json new file mode 100644 index 0000000..056dc8d --- /dev/null +++ b/_source/anomalies/illusion.json @@ -0,0 +1,15 @@ +{ + "_id": "anomIllusion0001", + "name": "Illusion", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "illusion", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test de Coercition, Échauffourée, Effacement ou Traque, le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

Le personnage peut générer une petite illusion mineure — visuelle, auditive ou olfactive, au choix — sans détail ni précision, pour une durée d'une minute. L'illusion ne peut représenter un être vivant en détail et ne résiste pas à un examen rapproché.

", + "exemples": "" + }, + "_key": "!items!anomIllusion0001" +} diff --git a/_source/anomalies/suggestion.json b/_source/anomalies/suggestion.json new file mode 100644 index 0000000..079a38c --- /dev/null +++ b/_source/anomalies/suggestion.json @@ -0,0 +1,15 @@ +{ + "_id": "anomSuggestion01", + "name": "Suggestion", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "suggestion", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'une Spécialisation de l'Âme (Artifice, Attraction, Coercition, Faveur), le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

Le personnage est capable d'influencer la prise de décision d'une personne en lui parlant à voix haute et en la regardant dans les yeux. Cette décision doit avoir un impact immédiat sur l'action de la personne concernée.

Cette capacité fonctionne également sur les automates sophistiqués de 4e et 5e génération.

", + "exemples": "" + }, + "_key": "!items!anomSuggestion01" +} diff --git a/_source/anomalies/tarotdivinatoire.json b/_source/anomalies/tarotdivinatoire.json new file mode 100644 index 0000000..2fd7f92 --- /dev/null +++ b/_source/anomalies/tarotdivinatoire.json @@ -0,0 +1,15 @@ +{ + "_id": "anomTarot00001", + "name": "Tarot divinatoire", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "tarotdivinatoire", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'une Spécialisation du Cœur (Appréciation, Arts, Inspiration, Traque), le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

En tirant les cartes, le personnage peut apprendre une information sur une personne concernant son passé, son présent ou son avenir. L'information reste sujette à interprétation et le narrateur peut choisir de la formuler de façon symbolique ou métaphorique.

", + "exemples": "" + }, + "_key": "!items!anomTarot00001" +} diff --git a/_source/anomalies/telekinesie.json b/_source/anomalies/telekinesie.json new file mode 100644 index 0000000..dff85d7 --- /dev/null +++ b/_source/anomalies/telekinesie.json @@ -0,0 +1,15 @@ +{ + "_id": "anomTelekines01", + "name": "Télékinésie", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "telekinesie", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'une Spécialisation du Corps (Échauffourée, Effacement, Mobilité, Prouesse), le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

Dans un rayon de 8 mètres, le personnage peut déplacer par la pensée un petit objet léger sans attaches, sur 4 mètres (dans n'importe quelle direction) pendant 2 tours. L'objet doit être visible et accessible par le regard.

", + "exemples": "" + }, + "_key": "!items!anomTelekines01" +} diff --git a/_source/anomalies/telepathie.json b/_source/anomalies/telepathie.json new file mode 100644 index 0000000..3aa194a --- /dev/null +++ b/_source/anomalies/telepathie.json @@ -0,0 +1,15 @@ +{ + "_id": "anomTelepathi01", + "name": "Télépathie", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "telepathie", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'Appréciation, Attraction, Échauffourée ou Faveur, le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

Cette capacité fonctionne également sur les automates sophistiqués de 4e et 5e génération.

", + "narratif": "

Le personnage est capable de percevoir les pensées superficielles d'un tiers. Il peut comprendre l'état émotionnel d'une personne ou capter une image ou un mot dans son esprit (à la discrétion du narrateur), simplement en l'observant.

", + "exemples": "" + }, + "_key": "!items!anomTelepathi01" +} diff --git a/_source/anomalies/voyageastral.json b/_source/anomalies/voyageastral.json new file mode 100644 index 0000000..8c0206e --- /dev/null +++ b/_source/anomalies/voyageastral.json @@ -0,0 +1,15 @@ +{ + "_id": "anomVoyAstral01", + "name": "Voyage astral", + "type": "anomaly", + "img": "systems/fvtt-celestopol/assets/icons/anomaly.svg", + "system": { + "subtype": "voyageastral", + "level": 2, + "usesRemaining": 2, + "technique": "

Durant un scénario, lors d'un test d'Appréciation, Merveilleux technologique, Traitement ou Traque, le protagoniste gagne la possibilité de relancer les 2d8 un nombre de fois égal à son Niveau d'Anomalie.

Il doit conserver le dernier résultat.

", + "narratif": "

L'esprit du personnage quitte son enveloppe corporelle et se déplace de 8 mètres par tour pendant 4 tours, dans n'importe quelle direction. L'esprit est invisible et peut traverser tous les obstacles matériels. Les sens du personnage restent les mêmes durant le voyage.

Le corps reste immobile et vulnérable durant le voyage.

", + "exemples": "" + }, + "_key": "!items!anomVoyAstral01" +} diff --git a/packs-system/anomalies/000005.ldb b/packs-system/anomalies/000005.ldb new file mode 100644 index 0000000000000000000000000000000000000000..12b2238ea2c5db0fab148f7bbf65200893e3edb0 GIT binary patch literal 5158 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 Xx}IoDd7u9J>++8e+}!GZ`M>`kCdkfD literal 0 HcmV?d00001 diff --git a/packs-system/anomalies/000019.log b/packs-system/anomalies/000007.log similarity index 100% rename from packs-system/anomalies/000019.log rename to packs-system/anomalies/000007.log diff --git a/packs-system/anomalies/CURRENT b/packs-system/anomalies/CURRENT index e417a51..f7753e2 100644 --- a/packs-system/anomalies/CURRENT +++ b/packs-system/anomalies/CURRENT @@ -1 +1 @@ -MANIFEST-000018 +MANIFEST-000006 diff --git a/packs-system/anomalies/LOG b/packs-system/anomalies/LOG index ca546fd..80bd624 100644 --- a/packs-system/anomalies/LOG +++ b/packs-system/anomalies/LOG @@ -1,3 +1,3 @@ -2026/03/30-23:54:32.064751 7ff9c7fff6c0 Recovering log #16 -2026/03/30-23:54:32.074311 7ff9c7fff6c0 Delete type=3 #14 -2026/03/30-23:54:32.074383 7ff9c7fff6c0 Delete type=0 #16 +2026/03/31-13:36:07.683498 7f59c2ffd6c0 Recovering log #4 +2026/03/31-13:36:07.693353 7f59c2ffd6c0 Delete type=0 #4 +2026/03/31-13:36:07.693402 7f59c2ffd6c0 Delete type=3 #2 diff --git a/packs-system/anomalies/LOG.old b/packs-system/anomalies/LOG.old index e2bb26b..7573b73 100644 --- a/packs-system/anomalies/LOG.old +++ b/packs-system/anomalies/LOG.old @@ -1,7 +1,5 @@ -2026/03/30-09:43:32.818417 7f4bda7ed6c0 Recovering log #12 -2026/03/30-09:43:32.832361 7f4bda7ed6c0 Delete type=3 #10 -2026/03/30-09:43:32.832436 7f4bda7ed6c0 Delete type=0 #12 -2026/03/30-14:14:04.399110 7f4bd8fea6c0 Level-0 table #17: started -2026/03/30-14:14:04.399143 7f4bd8fea6c0 Level-0 table #17: 0 bytes OK -2026/03/30-14:14:04.436937 7f4bd8fea6c0 Delete type=0 #15 -2026/03/30-14:14:04.520163 7f4bd8fea6c0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) +2026/03/31-13:35:04.014253 7f4a97fff6c0 Delete type=3 #1 +2026/03/31-13:35:04.017150 7f4a96ffd6c0 Level-0 table #5: started +2026/03/31-13:35:04.021272 7f4a96ffd6c0 Level-0 table #5: 5158 bytes OK +2026/03/31-13:35:04.029362 7f4a96ffd6c0 Delete type=0 #3 +2026/03/31-13:35:04.029539 7f4a96ffd6c0 Manual compaction at level-0 from '!items!anomCommMorts001' @ 72057594037927935 : 1 .. '!items!anomVoyAstral01' @ 0 : 0; will stop at (end) diff --git a/packs-system/anomalies/MANIFEST-000006 b/packs-system/anomalies/MANIFEST-000006 new file mode 100644 index 0000000000000000000000000000000000000000..8c26b799fc8519ccf254ceea3063d5fb10764a44 GIT binary patch literal 118 zcmbRGYQ={H21Z7yoYb<^oRlOzr^=Gl^338?=ltA)#G=HK{33QH)@2&