Compare commits
1 Commits
foundryvtt
...
v3
Author | SHA1 | Date | |
---|---|---|---|
41287639c3 |
@ -18,9 +18,9 @@ It aims to translate all text, including :
|
||||
Pour l'installer, suivre ces instructions :
|
||||
|
||||
1. Au sein de Foundry, allez dans le menu "Configuration and Setup", puis sur l'onglet "Modules"
|
||||
2. Installez le module de françisation de l'interface principale ("core FR" dans la recherche de modules)
|
||||
3. Installez le module 'babele' ("babele" dans la recherche de modules)
|
||||
4. Installez ce module WH4-fr : ("Translation" ou "French" ou "wfrp4" dans la recherche de modules)
|
||||
2. Installez le module de françisation de l'interface principale : https://gitlab.com/baktov.sugar/foundryvtt-lang-fr-fr/raw/master/fr-FR/module.json
|
||||
3. Installez le module 'babele' : https://gitlab.com/riccisi/foundryvtt-babele/raw/master/module/module.json
|
||||
4. Installez ce module WH4-fr : https://gitlab.com/LeRatierBretonnien/foundryvtt-wh4-lang-fr-fr/-/raw/master/module.json
|
||||
|
||||
[IN FRENCH ONLY BELOW]
|
||||
|
||||
@ -48,7 +48,6 @@ Pournous remonter des bugs, assurez vous d'être dans les versions cités ci-des
|
||||
|
||||
**Fait**
|
||||
|
||||
* compendiums/careers description -> Uruvela (Discord) et Thargos (Discord)
|
||||
* fr.json -> Celewyr (FB/Discord)
|
||||
* compendium/bestiary -> Louis Lebeke (FB)
|
||||
* tables/delirium -> Louis Lebeke (FB)
|
||||
|
@ -4,120 +4,106 @@ import { WH4FRPatchConfig } from "./modules/config-patch.js";
|
||||
|
||||
/************************************************************************************/
|
||||
const _patch_eis = () => {
|
||||
if (game.wfrp4e.config && game.wfrp4e.config.symptoms && game.wfrp4e.config.symptoms["delirium"] ) {
|
||||
game.wfrp4e.config.symptoms["delirium"] = "Délire";
|
||||
if ( WFRP4E && WFRP4E.symptoms && WFRP4E.symptoms["delirium"] == undefined ) {
|
||||
WFRP4E.symptoms["delirium"] = "Délire";
|
||||
|
||||
game.wfrp4e.config.symptomDescriptions["delirium"] = "Votre sensibilité va et vient, avec des moments de clarté remplaçés subitement Your sensibility comes and goes, with moments of clarity replaced suddenly par des accès de délire, des hallucinations et de la terreur. Faites un <b>Test de Force Mentale Intermédiaire (+0)</b> chaque heure, et consultez la table <b><a class='table-click' data-table='delirium'>Délires</a></b> table.";
|
||||
game.wfrp4e.config.symptomTreatment["delirium"] = "Certaines autorités traitent le délire comme un fièvre, avec les mêmes prescriptions. Les médicaments coutent quelques sous à quelques pistoles, en seulement 10% sont efficaces.<br><br>Avec des soins corrects, un test de <b>Guérison Intermédiaire (0)</b> arrêtes les hallucinations pour <b><a class = 'chat-roll'>1d10</a></b> heures.<br><br>Il est aussi courant de soigner les patients délirants avec des drogues tranquillisantes, comme la Fleur de Lune ou même de la Racine de Mandragore, pour garder les patients calmes pendant la crise, les envoyant dans un sommeil agité jusqu'à ce qu'il erécupèrent ou meurent.";
|
||||
WFRP4E.symptomDescriptions["delirium"] = "Votre sensibilité va et vient, avec des moments de clarté remplaçés subitement Your sensibility comes and goes, with moments of clarity replaced suddenly par des accès de délire, des hallucinations et de la terreur. Faites un <b>Test de Force Mentale Intermédiaire (+0)</b> chaque heure, et consultez la table <b><a class='table-click' data-table='delirium'>Délires</a></b> table.";
|
||||
// '<br>' creates a new line
|
||||
// This is how you can roll from chat cards. Wrap 'd10' in <b><a class = 'chat-roll'>___</a></b>
|
||||
WFRP4E.symptomTreatment["delirium"] = "Certaines autorités traitent le délire comme un fièvre, avec les mêmes prescriptions. Les médicaments coutent quelques sous à quelques pistoles, en seulement 10% sont efficaces.<br><br>Avec des soins corrects, un test de <b>Guérison Intermédiaire (0)</b> arrêtes les hallucinations pour <b><a class = 'chat-roll'>1d10</a></b> heures.<br><br>Il est aussi courant de soigner les patients délirants avec des drogues tranquillisantes, comme la Fleur de Lune ou même de la Racine de Mandragore, pour garder les patients calmes pendant la crise, les envoyant dans un sommeil agité jusqu'à ce qu'il erécupèrent ou meurent.";
|
||||
|
||||
game.wfrp4e.config.symptoms["swelling"] = "Gonflement";
|
||||
game.wfrp4e.config.symptomDescriptions["swelling"] = "Une partie du corps gonfle jusqu'à plusieurs fois sa taille normale, devenant rouge vif ou violette et devenant presque inutilisable. La partie du corps affectée correspond normalement à une plaie ou une morsure provoquant le gonflement, ou l'endroit où une maladie ou une infection est entrée dans le corps. <br> <br> <b> Tête </b>: Les yeux et la langue enflent, les joues deviennent livides, la mâchoire est toujours ouverte. Il est impossible de manger, mais des liquides légers peuvent être sirotés en petites quantités. Tous les tests nécessitant la parole sont plus difficiles de 3 niveaux. <br> <b> Bras </b>: le bras et la main gonflent, les articulations des épaules et du coude ne peuvent plus bouger et la main devient inutile. Pour la durée du gonflement, le bras compte comme Amputé. <br> <b> Corps </b>: Le corps entier gonfle jusqu'à ce que la victime ne puisse plus porter de vêtements. Tous les tests impliquant le mouvement deviennent difficiles de 3 niveaux. <br> <b> Jambe </b>: La jambe gonfle de manière grotesque, devenant aussi large que la partie la plus large de la cuisse sur toute sa longueur. Le pied est presque indiscernable. Pour la durée du gonflement, la jambe compte comme amputée (WFRP, page 180).";
|
||||
WFRP4E.symptoms["swelling"] = "Gonflement";
|
||||
|
||||
game.wfrp4e.config.symptomTreatment["swelling"] = "La plupart des traitements consistent à plonger la partie affectée, ou parfois tout le corps, dans un bain d'eau glacée pour réduire la chaleur qui accompagne les gonflements. Un <b> Test de Guérison Difficile (-20) étendu </b> nécessitant +3 DR réduit le renflement de <b> <a class ='chat-roll'> 2d10 </a> </b> heures. Chaque test dure une heure. Le patient se retrouve avec l'Etat Exténué +1 pour chaque test effectué au cours du processus. <br> <br> A la place, certains médecins saignent le patient avec une lame ou des sangsues. Un <b>Test de Guérison étendu </b> réussi nécessitant +4 SL et des Outils (médecin) réduit le renflement de (<a class ='chat-roll'> 1d10 </a> + Bonus d'Endurance du patient) heures. Chaque test a une difficulté de base <b> impossible (-50) </b> et dure une demi-heure.";
|
||||
WFRP4E.symptomDescriptions["swelling"] = "Une partie du corps gonfle jusqu'à plusieurs fois sa taille normale, devenant rouge vif ou violette et devenant presque inutilisable. La partie du corps affectée correspond normalement à une plaie ou une morsure provoquant le gonflement, ou l'endroit où une maladie ou une infection est entrée dans le corps. <br> <br> <b> Tête </b>: Les yeux et la langue enflent, les joues deviennent livides, la mâchoire est toujours ouverte. Il est impossible de manger, mais des liquides légers peuvent être sirotés en petites quantités. Tous les tests nécessitant la parole sont plus difficiles de 3 niveaux. <br> <b> Bras </b>: le bras et la main gonflent, les articulations des épaules et du coude ne peuvent plus bouger et la main devient inutile. Pour la durée du gonflement, le bras compte comme Amputé. <br> <b> Corps </b>: Le corps entier gonfle jusqu'à ce que la victime ne puisse plus porter de vêtements. Tous les tests impliquant le mouvement deviennent difficiles de 3 niveaux. <br> <b> Jambe </b>: La jambe gonfle de manière grotesque, devenant aussi large que la partie la plus large de la cuisse sur toute sa longueur. Le pied est presque indiscernable. Pour la durée du gonflement, la jambe compte comme amputée (WFRP, page 180).";
|
||||
|
||||
game.wfrp4e.config.loreEffects["tzeentch"] = {
|
||||
label: "Domaine de Tzeentch",
|
||||
icon: "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
transfer: true,
|
||||
flags: {
|
||||
wfrp4e: {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"lore": true,
|
||||
"script": `
|
||||
if (this.actor.isOwner)
|
||||
args.actor.setupSkill("Résistance", {context : {failure: "1 Point de Corruption reçu", success : "1 Point de Chance gagné"}}).then(setupData => {
|
||||
args.actor.basicTest(setupData).then(test =>
|
||||
{
|
||||
if (test.result.result == "success" && args.actor.data.type == "character")
|
||||
{
|
||||
args.actor.update({"data.status.fortune.value" : args.actor.data.data.status.fortune.value + 1})
|
||||
}
|
||||
else if (test.result.result == "failure" && args.actor.data.type == "character")
|
||||
{
|
||||
args.actor.update({"data.status.corruption.value" : args.actor.data.data.status.corruption.value + 1})
|
||||
}
|
||||
})
|
||||
})`
|
||||
}
|
||||
}
|
||||
}
|
||||
WFRP4E.symptomTreatment["swelling"] = "La plupart des traitements consistent à plonger la partie affectée, ou parfois tout le corps, dans un bain d'eau glacée pour réduire la chaleur qui accompagne les gonflements. Un <b> Test de Guérison Difficile (-20) étendu </b> nécessitant +3 DR réduit le renflement de <b> <a class ='chat-roll'> 2d10 </a> </b> heures. Chaque test dure une heure. Le patient se retrouve avec l'Etat Exténué +1 pour chaque test effectué au cours du processus. <br> <br> A la place, certains médecins saignent le patient avec une lame ou des sangsues. Un <b>Test de Guérison étendu </b> réussi nécessitant +4 SL et des Outils (médecin) réduit le renflement de (<a class ='chat-roll'> 1d10 </a> + Bonus d'Endurance du patient) heures. Chaque test a une difficulté de base <b> impossible (-50) </b> et dure une demi-heure.";
|
||||
|
||||
WFRP4E.difficultyModifiers["futile"] = -40;
|
||||
|
||||
WFRP4E.difficultyModifiers["impossible"] = -50;
|
||||
|
||||
WFRP4E.difficultyLabels["futile"] = "Futile (-40)";
|
||||
|
||||
WFRP4E.difficultyLabels["impossible"] = "Impossible (-50)";
|
||||
|
||||
WFRP4E.loreEffect["tzeentch"] = "Les cibles des sorts de Tzeentch sont déchirées par la magie transformatrice du Chaos. Les cibles affectées par un sort du savoir de Tzeentch doivent réussir un test d'endurance Intermédiaire (+0) ou gagner +1 Point de Corruption. S'ils réussissent leur test, ils gagnent à la place +1 Point de Chance, qui peut être utilisé normalement. Tels sont les caprices de Tzeentch";
|
||||
}
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
/* Manages /auberge command */
|
||||
const _manage_inn_roll = async (content, msg) => {
|
||||
// Split input into arguments
|
||||
let command = content.split(" ").map(function (item) {
|
||||
return item.trim();
|
||||
})
|
||||
|
||||
console.log("COMMANDES", command);
|
||||
if (command[0] == "/auberge" && command[1]) {
|
||||
msg["type"] = 0;
|
||||
msg["rollMode"] = "gmroll";
|
||||
var compendium = game.packs.get('WH4-fr-translation.plats-dauberges');
|
||||
let rollList = [];
|
||||
await compendium.getIndex().then(index => rollList = index);
|
||||
rollList = rollList.contents;
|
||||
for (var i = 0; i < rollList.length; i++) {
|
||||
var rollTab = rollList[i];
|
||||
console.log("Got compendium...", rollList, rollTab.name);
|
||||
if (rollTab.name.toLowerCase().includes(command[1].toLowerCase())) {
|
||||
let my_rollTable;
|
||||
await compendium.getDocument(rollTab._id).then(mytab => my_rollTable = mytab);
|
||||
my_rollTable.draw({ rollMode: "gmroll" });
|
||||
return false;
|
||||
// Split input into arguments
|
||||
let command = content.split(" ").map(function(item) {
|
||||
return item.trim();
|
||||
})
|
||||
//console.log(game.wfrp4e.tables["talents"]);
|
||||
|
||||
if (command[0] == "/auberge" && command[1] )
|
||||
{
|
||||
msg["type"] = 0;
|
||||
msg["rollMode"] = "gmroll";
|
||||
var compendium = game.packs.get('WH4-fr-translation.plats-dauberges');
|
||||
let rollList = [];
|
||||
await compendium.getIndex().then(index => rollList = index);
|
||||
//console.log("Got compendium...", rollList.length);
|
||||
for (var i=0; i< rollList.length; i++) {
|
||||
var rollTab = rollList[i];
|
||||
if ( rollTab.name.toLowerCase().includes(command[1].toLowerCase()) ) {
|
||||
let my_rollTable;
|
||||
await compendium.getEntity(rollTab._id).then(mytab => my_rollTable = mytab);
|
||||
let myroll = my_rollTable.roll();
|
||||
//console.log("RES: ", myroll );
|
||||
msg.content = my_rollTable.name + " : " + myroll.results[0].text;
|
||||
//my_rollTable.draw();
|
||||
ChatMessage.create(msg);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (content.includes("/auberge")) {
|
||||
msg["type"] = 0;
|
||||
msg["rollMode"] = "gmroll";
|
||||
msg["content"] = "Syntaxe : /auberge MOT_CLE, avec MOT_CLE parmi:<br>BoissonsBase, BoissonsFortes, Desserts, PlatsCommuns, PlatsExcellents, PlatsMaritimes, PlatsMédiocres, PlatsQualité, PlatsRivières<br>Des raccourcis sont possibles avec une partie du nom : /auberge Base (correspond à BoissonBase) ou /auberge Mari (correspond à PlatsMaritimes), etc."
|
||||
ChatMessage.create(msg);
|
||||
return false;
|
||||
}
|
||||
if ( content.includes("/auberge") ) {
|
||||
msg["type"] = 0;
|
||||
msg["rollMode"] = "gmroll";
|
||||
msg["content"] = "Syntaxe : /auberge MOT_CLE, avec MOT_CLE parmi:<br>BoissonsBase, BoissonsFortes, Desserts, PlatsCommuns, PlatsExcellents, PlatsMaritimes, PlatsMédiocres, PlatsQualité, PlatsRivières<br>Des raccourcis sont possibles avec une partie du nom : /auberge Base (correspond à BoissonBase) ou /auberge Mari (correspond à PlatsMaritimes), etc."
|
||||
ChatMessage.create(msg);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
let __eis_tables = {
|
||||
"animalmishap": 1, "beasthead": 1, "coincedentalenc": 1, "demonic-mien": 1,
|
||||
"expandedmutatemental": 1, "expandedmutatephys": 1, "fixations": 1,
|
||||
"harmfulenc": 1, "positiveenc": 1, "weather": 1, "mutatephys": 1,
|
||||
"vehiclemishap": 1, "quadruped": 1, "ridingmishap": 1, "weather": 1,
|
||||
"delirium": 1
|
||||
}
|
||||
let __dotr_tables = {
|
||||
"rowingboat": 1, "sailingboat": 1, "wind-direction": 1, "waterborne": 1, "traderumour": 1
|
||||
}
|
||||
let __wfrp4e_tables = {
|
||||
"career": 1, "critbody": 1, "critleg": 1, "doom": 1, "doom2": 1, "eyes": 1, "majormis": 1, "mutatemental": 1, "oops": 1, "species": 1, "travel": 1,
|
||||
"hitloc": 1, "critarm": 1, "crithead": 1, "delirium": 1, "event": 1, "hair": 1, "minormis": 1, "mutatephys": 1, "talents": 1, "wrath": 1,
|
||||
"astral": 1, "corruption": 1, "snake": 1, "spider": 1, "job": 1
|
||||
let __eis_tables = { "animalmishap":1, "beasthead":1, "coincedentalenc":1, "demonic-mien":1,
|
||||
"expandedmutatemental":1, "expandedmutatephys":1, "fixations":1,
|
||||
"harmfulenc":1, "positiveenc":1, "weather":1, "mutatephys": 1,
|
||||
"vehiclemishap": 1,"quadruped": 1, "ridingmishap": 1, "weather": 1,
|
||||
"delirium": 1
|
||||
}
|
||||
let __dotr_tables = { "rowingboat":1, "sailingboat":1, "wind-direction": 1, "waterborne": 1, "traderumour": 1
|
||||
}
|
||||
let __wfrp4e_tables = { "career": 1, "critbody":1, "critleg": 1, "doom": 1, "eyes": 1, "majormis": 1, "mutatemental": 1, "oops": 1, "species":1, "travel": 1,
|
||||
"hitloc": 1, "critarm": 1, "crithead": 1, "delirium": 1, "event": 1, "hair": 1, "minormis": 1, "mutatephys": 1, "talents": 1, "wrath": 1,
|
||||
"astral": 1, "corruption": 1, "snake": 1, "spider": 1
|
||||
|
||||
}
|
||||
let __to_table_translate = [{ name: "traits", transl: "Traits" }, { name: "talents", transl: "Talents" }, { name: "skills", transl: "Compétences" },
|
||||
{ name: "careers", transl: "Carrières" }, { name: "spells", transl: "Sorts" }, { name: "prayers", transl: "Bénédictions et Miracles" },
|
||||
{ name: "injuries", transl: "Blessures" }, { name: "criticals", transl: "Critiques" }, { name: "trappings", transl: "Equipement" },
|
||||
{ name: "bestiary", transl: "Bestiaire" }, { name: "diseases", transl: "Maladies" }
|
||||
]
|
||||
}
|
||||
let __to_table_translate = [ { name:"traits", transl:"Traits"}, {name:"talents", transl:"Talents"}, {name:"skills", transl:"Compétences"} ,
|
||||
{ name:"careers", transl:"Carrières"}, {name:"spells", transl:"Sorts"}, {name:"prayers", transl:"Bénédictions et Miracles" } ,
|
||||
{ name:"injuries", transl:"Blessures"}, {name:"criticals", transl:"Critiques"}, {name:"trappings", transl:"Equipement" },
|
||||
{ name:"bestiary", transl:"Bestiaire"}, { name:"diseases", transl:"Maladies"}
|
||||
]
|
||||
|
||||
/************************************************************************************/
|
||||
const __create_translation_tables = async (compmod) => {
|
||||
for (let iterData of __to_table_translate) {
|
||||
|
||||
let entityName = compmod + '.' + iterData.name;
|
||||
let compData = game.packs.get(entityName);
|
||||
|
||||
let entityName = compmod+'.' + iterData.name;
|
||||
let compData = game.packs.get( entityName);
|
||||
let compFull = await compData.getContent();
|
||||
let htmlTab = "<table border='1'><tbody>";
|
||||
for (let entryData of compFull) {
|
||||
htmlTab += "<tr><td>" + entryData.data.originalName + "</td><td>@Compendium[" + entityName + '.' + entryData.id + "]{" + entryData.name + "}</td></tr>\n";
|
||||
};
|
||||
for (let entryData of compFull ) {
|
||||
htmlTab += "<tr><td>"+ entryData.data.originalName + "</td><td>@Compendium["+ entityName + '.' + entryData.id + "]{"+ entryData.name +"}</td></tr>\n";
|
||||
};
|
||||
htmlTab += "</table>";
|
||||
let myjournal = await JournalEntry.create({ name: 'Traduction des ' + iterData.transl, content: htmlTab });
|
||||
game.journal.insert(myjournal);
|
||||
let myjournal = await JournalEntry.create( {name: 'Traduction des ' + iterData.transl, content: htmlTab } );
|
||||
game.journal.insert( myjournal );
|
||||
}
|
||||
}
|
||||
|
||||
@ -127,256 +113,176 @@ const __create_translation_tables = async (compmod) => {
|
||||
* */
|
||||
const __auto_patch_translation_journal_compendium = async (compmod) => {
|
||||
if (game.user.isGM) {
|
||||
let compData = game.packs.get("WH4-fr-translation.tables-des-traductions");
|
||||
let compData = game.packs.get( "WH4-fr-translation.tables-des-traductions" );
|
||||
compData.locked = false;
|
||||
let translEntries = await compData.getContent();
|
||||
for (let entryData of translEntries) {
|
||||
let mydata = duplicate(entryData.data);
|
||||
mydata.content = mydata.content.replace(/wfrp4e-content/g, compmod);
|
||||
entryData.update(mydata);
|
||||
for (let entryData of translEntries ) {
|
||||
let mydata = duplicate(entryData.data);
|
||||
mydata.content = mydata.content.replace(/wfrp4e-content/g, compmod );
|
||||
entryData.update( mydata );
|
||||
}
|
||||
compData.locked = true;
|
||||
}
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const loadCompendiumData = async (compendium) => {
|
||||
const pack = game.packs.get(compendium);
|
||||
return await pack?.getDocuments() ?? [];
|
||||
}
|
||||
|
||||
/* -------------------------------------------- */
|
||||
/************************************************************************************/
|
||||
const loadCompendium = async (compendium, filter = item => true) => {
|
||||
let compendiumData = await loadCompendiumData(compendium);
|
||||
return compendiumData.filter(filter);
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const patch_core_tables = (tableList) => {
|
||||
if (game.version) { // v9 and above
|
||||
return;
|
||||
}
|
||||
FilePicker.browse("data", "modules/WH4-fr-translation/tables/").then(resp => {
|
||||
for (var file of resp.files) {
|
||||
let filename = file.substring(file.lastIndexOf("/") + 1, file.indexOf(".json"))
|
||||
if (tableList[filename] == 1) { // Matching table name -> patch !
|
||||
fetch(file).then(r => r.json()).then(records => {
|
||||
let filename = file.substring(file.lastIndexOf("/")+1, file.indexOf(".json"));
|
||||
if ( tableList[filename] == 1 ) { // Matching table name -> patch !
|
||||
fetch(file).then(r=>r.json()).then(records => {
|
||||
//console.log("Patch !!!", filename, records);
|
||||
//WFRP_Tables[filename] = records;
|
||||
game.wfrp4e.tables[filename] = records;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const patch_trade_gazeteer = () => {
|
||||
if (game.wfrp4e.config.trade?.gazetteer) {
|
||||
fetch("modules/WH4-fr-translation/tables/gazetteer.json").then(r => r.json()).then(records => {
|
||||
if ( game.wfrp4e.config.trade?.gazetteer) {
|
||||
fetch( "modules/WH4-fr-translation/tables/gazetteer.json").then( r => r.json()).then(records => {
|
||||
game.wfrp4e.config.trade.gazetteer = records;
|
||||
});
|
||||
}) ;
|
||||
}
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const __check_fix_wrong_modules = (chatFlag, patchFinished) => {
|
||||
|
||||
const __check_fix_wrong_modules = ( chatFlag, patchFinished ) => {
|
||||
|
||||
WH4FRPatchConfig.perform_patch();
|
||||
|
||||
game.modules.forEach((module, name) => {
|
||||
|
||||
if (name == "wfrp4e-core" && module.active) {
|
||||
patch_core_tables(__wfrp4e_tables);
|
||||
if ( name == "wfrp4e-core" && module.active) {
|
||||
patch_core_tables( __wfrp4e_tables );
|
||||
}
|
||||
if (name == "wfrp4e-eis" && module.active) {
|
||||
patch_core_tables(__eis_tables);
|
||||
_patch_eis();
|
||||
if ( name == "wfrp4e-eis" && module.active) {
|
||||
patch_core_tables( __eis_tables );
|
||||
}
|
||||
if (name == "wfrp4e-dotr" && module.active) {
|
||||
patch_core_tables(__dotr_tables);
|
||||
if ( name == "wfrp4e-dotr" && module.active) {
|
||||
patch_core_tables( __dotr_tables );
|
||||
patch_trade_gazeteer()
|
||||
}
|
||||
|
||||
if ( name == "wfrp4e-rnhd" && module.active && game.wfrp4e.tables.career) {
|
||||
game.wfrp4e.tables.career.name = "Carrières aléatoires";
|
||||
|
||||
if (name == 'ogre-kingdom-wfrp4e' && module.active) {
|
||||
/*FilePicker.browse("data", "modules/WH4-fr-translation/tables/").then(resp => {
|
||||
for (var file of resp.files) {
|
||||
if ( file.match("career_gnome.json") ) {
|
||||
fetch(file).then(r=>r.json()).then(records => {
|
||||
let mycareer = records;
|
||||
game.wfrp4e.tables.career.columns = mycareer.columns;
|
||||
for (let k=0; k<game.wfrp4e.tables.career.rows.length; k++) {
|
||||
game.wfrp4e.tables.career.rows[k].range = mycareer.rows[k].range;
|
||||
game.wfrp4e.tables.career.rows[k].name = mycareer.rows[k].name; // Patch !!!
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
});*/
|
||||
WH4FRPatchConfig.perform_rnhd_patch();
|
||||
|
||||
if (game.user.isGM && chatFlag)
|
||||
ChatMessage.create( { title: "Module RNHD patché", content: "<strong>Le module RHND a été detecté et automatiquement patché.</strong>", whisper: ChatMessage.getWhisperRecipients("GM") } );
|
||||
}
|
||||
|
||||
if ( name == 'ogre-kingdom-wfrp4e' && module.active) {
|
||||
WH4FRPatchConfig.perform_ogrekingdom_patch();
|
||||
if (game.user.isGM && chatFlag)
|
||||
ChatMessage.create({ content: "<div><strong>Le module Ogre-Kingdom a été detecté et automatiquement patché.</strong></div>", whisper: ChatMessage.getWhisperRecipients("GM") });
|
||||
ChatMessage.create( { title: "Module Ogre-Kingdom patché", content: "<strong>Le module Ogre-Kingdom a été detecté et automatiquement patché.</strong>", whisper: ChatMessage.getWhisperRecipients("GM") } );
|
||||
}
|
||||
|
||||
if (name == "wfrp4e-ew" && module.active && game.user.isGM && chatFlag) {
|
||||
ChatMessage.create({
|
||||
content: "<div><strong>Vous avez le module EW (wfrp4e-ew ?) installé. Malheureusement, ce module n'est pas compatible avec" +
|
||||
" les traductions et vient casser le fonctionnement de la traduction. Veuillez recopier les compendiums dans votre monde, désactiver le module et re-démarrer le monde</strong></div>",
|
||||
if ( name == "wfrp4e-ew" && module.active && game.user.isGM && chatFlag) {
|
||||
ChatMessage.create( { title: "Module non compatible detecté !", content: "<strong>Vous avez le module EW (wfrp4e-ew ?) installé. Malheureusement, ce module n'est pas compatible avec" +
|
||||
" les traductions et vient casser le fonctionnement de la traduction. Veuillez recopier les compendiums dans votre monde, désactiver le module et re-démarrer le monde</strong>",
|
||||
whisper: ChatMessage.getWhisperRecipients("GM")
|
||||
});
|
||||
} );
|
||||
}
|
||||
});
|
||||
if (game.user.isGM && patchFinished) {
|
||||
ChatMessage.create({
|
||||
content: "<div>Les modules WFRP4E ont été <strong>patchés avec succés</strong>. Vous pouvez y aller et que <strong>Shallya vous garde !</strong></div>",
|
||||
user: game.user.id,
|
||||
whisper: ChatMessage.getWhisperRecipients("GM")
|
||||
});
|
||||
}
|
||||
|
||||
if (game.user.isGM && patchFinished)
|
||||
ChatMessage.create( { title: "Patch fini !", content: "Les modules WFRP4E ont été patchés <strong>avec succès</strong>. Vous pouvez y aller et que <strong>Shallya vous garde !</strong>", whisper: ChatMessage.getWhisperRecipients("GM") } );
|
||||
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const convertColumnToMulti = (table) => {
|
||||
let columns = table.columns;
|
||||
let newTable = duplicate(table)
|
||||
|
||||
delete newTable.columns;
|
||||
newTable.rows = table.rows.map(i => { return { range: {} } })
|
||||
newTable.multi = table.columns
|
||||
|
||||
for (let column of columns) {
|
||||
for (let row of newTable.rows) {
|
||||
row[column] = {}
|
||||
row.range[column] = []
|
||||
}
|
||||
}
|
||||
|
||||
for (let index in newTable.rows) {
|
||||
for (let column in table.rows[index].range) {
|
||||
newTable.rows[index][column] = { name: table.rows[index].name }
|
||||
newTable.rows[index].range[column] = table.rows[index].range[column]
|
||||
}
|
||||
}
|
||||
return newTable;
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const __patchStyleSheet = () => {
|
||||
for (let styleSheet of document.styleSheets) {
|
||||
if (styleSheet.href && styleSheet.href.includes("wfrp4e.css")) {
|
||||
let found = 0
|
||||
for (let i = 0; i < styleSheet.cssRules.length; i++) {
|
||||
let rule = styleSheet.cssRules[i]
|
||||
if (rule.selectorText == '.sidebar-popout') {
|
||||
console.log("DELETE RULE", rule)
|
||||
found = i
|
||||
/*rule.cssText = ".sidebar-popout { }"
|
||||
rule.style.width = ""
|
||||
console.log("Found rul2", rule)*/
|
||||
}
|
||||
}
|
||||
styleSheet.deleteRule(found)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
const __add_actors_translation = () => {
|
||||
const __add_actors_translation = ( ) => {
|
||||
const lang = game.settings.get('core', 'language');
|
||||
if (lang == "fr") {
|
||||
if ( lang == "fr" ) {
|
||||
let pack_array = [];
|
||||
for (let metadata of game.data.packs) {
|
||||
if (!game.babele.isTranslated(metadata) && metadata.documentName === 'Actor') {
|
||||
//console.log("PACK : ", metadata);
|
||||
game.packs.forEach((pack, name) => {
|
||||
let newpack = pack;
|
||||
if(!pack.translated && pack.entity === 'Actor') {
|
||||
let translations = {
|
||||
"label": metadata.name,
|
||||
"mapping": {
|
||||
"name": "name",
|
||||
"description": "details.biography.value",
|
||||
"items": {
|
||||
"path": "items",
|
||||
"converter": "bestiary_traits"
|
||||
},
|
||||
"characteristics": {
|
||||
"path": "data.characteristics",
|
||||
"converter": "npc_characteristics"
|
||||
},
|
||||
"details": {
|
||||
"path": "data.details",
|
||||
"converter": "npc_details"
|
||||
}
|
||||
},
|
||||
"entries": [
|
||||
]
|
||||
};
|
||||
game.babele.packs.set(collection, new TranslatedCompendium(metadata, translation));
|
||||
//newpack = new TranslatedCompendium(pack, translations);
|
||||
//console.log("Actor compendium has been replaced !!!!", pack.metadata.name);
|
||||
"label": pack.metadata.name,
|
||||
"mapping": {
|
||||
"name": "name",
|
||||
"description": "details.biography.value",
|
||||
"items": {
|
||||
"path": "items",
|
||||
"converter": "bestiary_traits"
|
||||
},
|
||||
"characteristics": {
|
||||
"path": "data.characteristics",
|
||||
"converter": "npc_characteristics"
|
||||
},
|
||||
"details": {
|
||||
"path": "data.details",
|
||||
"converter": "npc_details"
|
||||
}
|
||||
},
|
||||
"entries": [
|
||||
]
|
||||
};
|
||||
newpack = new TranslatedCompendium(pack, translations);
|
||||
console.log("Actor compendium has been replaced !!!!", pack.metadata.name);
|
||||
}
|
||||
}
|
||||
}
|
||||
//console.log("Parsing pack", newpack);
|
||||
if (newpack.metadata.name == "forien-armoury" ) {
|
||||
newpack.mapping.mapping["qualities"] = {
|
||||
"path": "data.qualities.value",
|
||||
"converter": "trapping_qualities_flaws"
|
||||
};
|
||||
newpack.mapping.mapping["flaws"] = {
|
||||
"path": "data.flaws.value",
|
||||
"converter": "trapping_qualities_flaws"
|
||||
};
|
||||
console.log("Forien armoury patched !!");
|
||||
}
|
||||
pack_array.push( [name, newpack ] );
|
||||
} );
|
||||
game.packs = new Collection( pack_array );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/************************************************************************************/
|
||||
/* Hook for specific command */
|
||||
Hooks.on("chatMessage", (html, content, msg) => {
|
||||
|
||||
if (content.toLowerCase().includes('auberge')) {
|
||||
_manage_inn_roll(content, msg);
|
||||
|
||||
if ( content.includes("/auberge") ) {
|
||||
_manage_inn_roll( content, msg );
|
||||
return false;
|
||||
}
|
||||
});
|
||||
|
||||
} );
|
||||
|
||||
/************************************************************************************/
|
||||
/* Additionnal hooks ready */
|
||||
Hooks.once('ready', () => {
|
||||
|
||||
if (game.user.isGM) {
|
||||
let chatData = {
|
||||
user: game.user.id,
|
||||
rollMode: game.settings.get("core", "rollMode"),
|
||||
whisper: ChatMessage.getWhisperRecipients('GM'),
|
||||
content: `<div>Les modules WFRP4E sont <strong>en cours de patch pour traduction</strong>... Merci <strong>d'attendre le message de fin</strong> (dans environ 20 secondes)<p>Pour rappel et à titre informatif, il faut activer ce module de traduction FR <strong>avant</strong> de procéder à l'importation des données des modules C7 (core compris). Autrement dit, activez ce module FR <strong>AVANT</strong> tout autre module.</p><p>Support et informations sur le Discord FR de Foundry : https://discord.gg/pPSDNJk</p></div>`
|
||||
}
|
||||
ChatMessage.create(chatData);
|
||||
}
|
||||
|
||||
/** New modifiers */
|
||||
game.wfrp4e.config.difficultyModifiers = {
|
||||
"veasy": 60,
|
||||
"easy": 40,
|
||||
"banal": 30,
|
||||
"average": 20,
|
||||
"medium": 10,
|
||||
"challenging": 0,
|
||||
"difficult": -10,
|
||||
"hard": -20,
|
||||
"vhard": -30,
|
||||
"doom": -40
|
||||
}
|
||||
game.wfrp4e.config.difficultyLabels = {
|
||||
|
||||
"veasy": "Trés Facile (+60)",
|
||||
"easy": "Facile (+40)",
|
||||
"banal": "Banal (+30)",
|
||||
"average": "Accessible (+20)",
|
||||
"medium": "Faisable (+10)",
|
||||
"challenging": "Intermédiaire (+0)",
|
||||
"difficult": "Complexe (-10)",
|
||||
"hard": "Difficile (-20)",
|
||||
"vhard": "Très Difficile (-30)",
|
||||
"doom": "Maudit (-40)"
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (game.user.isGM)
|
||||
ChatMessage.create( { title: "Patch en progression", content: "Les modules WFRP4E sont <strong>en cours de patch pour traduction</strong>... Merci <strong>d'attendre le message de fin</strong> (dans environ 20 secondes)", whisper: ChatMessage.getWhisperRecipients("GM") } );
|
||||
|
||||
//setTimeout( __check_fix_wrong_modules, 2000, true, false);
|
||||
setTimeout(__check_fix_wrong_modules, 20000, true, true);
|
||||
setTimeout(__add_actors_translation, 21000, false, true);
|
||||
|
||||
//__patchStyleSheet()
|
||||
|
||||
/* ATTEMPT !!
|
||||
loadCompendium("wfrp4e-core.spells").then( comp => {
|
||||
let sorted = {};
|
||||
for (let spell of comp) {
|
||||
if ( !sorted[spell.data.data.lore.value]) {
|
||||
sorted[spell.data.data.lore.value] = [];
|
||||
}
|
||||
sorted[spell.data.data.lore.value].push( duplicate(spell.data) );
|
||||
}
|
||||
console.log("SORTED", sorted);
|
||||
});*/
|
||||
|
||||
/*
|
||||
setTimeout( __check_fix_wrong_modules, 10000, true, false);
|
||||
setTimeout( __check_fix_wrong_modules, 20000, false, true);
|
||||
setTimeout( __add_actors_translation, 21000, false, true);
|
||||
|
||||
let compmod = "wfrp4e";
|
||||
// Check various settings in the installation
|
||||
game.modules.forEach((module, name) => {
|
||||
@ -389,5 +295,6 @@ Hooks.once('ready', () => {
|
||||
Auto-create translation journal tables
|
||||
__create_translation_tables(compmod);
|
||||
*/
|
||||
|
||||
});
|
||||
//__create_translation_tables(compmod);
|
||||
|
||||
} );
|
||||
|
@ -2,7 +2,7 @@
|
||||
import statParserFR from "./modules/import-stat-2.js";
|
||||
|
||||
/************************************************************************************/
|
||||
var compmod = "wfrp4e-core";
|
||||
var compmod = "wfrp4e";
|
||||
const vo_conditions = {
|
||||
"ablaze": "Ablaze",
|
||||
"bleeding": "Bleeding",
|
||||
@ -34,66 +34,120 @@ Hooks.once('init', () => {
|
||||
vo_conditions: vo_conditions }
|
||||
|
||||
game.wfrp4e.apps.StatBlockParser.parseStatBlock = async function( statString, type = "npc") {
|
||||
return statParserFR( statString, type);
|
||||
}
|
||||
|
||||
return statParserFR( statString, type);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------*/
|
||||
game.wfrp4e.entities.ItemWfrp4e.prototype.computeSpellDamage = function(formula, isMagicMissile) {
|
||||
try {
|
||||
game.wfrp4e.utility.handleConditionClick = function(event) {
|
||||
let cond = $(event.currentTarget).attr("data-cond")
|
||||
if (!cond)
|
||||
cond = event.target.text;
|
||||
cond = cond.trim();
|
||||
let condkey
|
||||
// En vo, les noms d'états sont égaux aux clés en minuscules
|
||||
if ( game.wfrp4e.config.conditions[cond.toLowerCase()] ) {
|
||||
condkey = cond.toLowerCase();
|
||||
} else {
|
||||
try {
|
||||
condkey = game.wfrp4e.utility.findKey(cond.toLowerCase(), game.wfrp4e.config.conditions, {caseInsensitive: true});
|
||||
}
|
||||
catch {
|
||||
ui.notifications.error("L'état est inconnu : " + cond);
|
||||
}
|
||||
}
|
||||
let condName = game.wfrp4e.config.conditions[condkey];
|
||||
let condDescr = game.wfrp4e.config.conditionDescriptions[condkey];
|
||||
let messageContent = `<b>${condName}</b><br>${condDescr}`
|
||||
|
||||
let chatData = game.wfrp4e.utility.chatDataSetup(messageContent)
|
||||
ChatMessage.create(chatData);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------*/
|
||||
game.wfrp4e.entities.ActorWfrp4e.prototype.calculateRangeOrDamage = function(formula)
|
||||
{
|
||||
//console.log("FR function calculateRangeOrDamage !", formula);
|
||||
let actorData = this.data
|
||||
try
|
||||
{
|
||||
formula = formula.toLowerCase();
|
||||
// Iterate through characteristics
|
||||
for(let ch in actorData.data.characteristics)
|
||||
{
|
||||
// Determine if the formula includes the characteristic's abbreviation + B (SB, WPB, etc.)
|
||||
if (formula.includes(ch.concat('b')))
|
||||
{
|
||||
// Replace that abbreviation with the Bonus value
|
||||
formula = formula.replace(ch.concat('b'), actorData.data.characteristics[ch].bonus.toString());
|
||||
}
|
||||
}
|
||||
if (formula.includes("yard") )
|
||||
formula = formula.replace('yard', "mètre" );
|
||||
if (formula.includes("yds") )
|
||||
formula = formula.replace('yds', "m." );
|
||||
// To evaluate multiplication, replace x with *
|
||||
formula = formula.replace('x', '*');
|
||||
//console.log("FOEM", formula);
|
||||
return eval(formula);
|
||||
}
|
||||
catch
|
||||
{
|
||||
//console.log("FOEM2", formula);
|
||||
return formula;
|
||||
}
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------*/
|
||||
game.wfrp4e.entities.ActorWfrp4e.prototype.calculateSpellDamage = function(formula, isMagicMissile) {
|
||||
//console.log("Compute FR")
|
||||
let actorData = this.data
|
||||
formula = formula.toLowerCase();
|
||||
|
||||
if (isMagicMissile) // If it's a magic missile, damage includes willpower bonus
|
||||
{
|
||||
formula += "+ " + this.actor.characteristics["wp"].bonus
|
||||
formula += "+ " + actorData.data.characteristics["wp"].bonus
|
||||
}
|
||||
|
||||
|
||||
// Specific case, to avoid wrong matching with "Force"
|
||||
if (formula.includes("toughness bonus")) {
|
||||
formula = formula.replace( "toughness bonus", this.actor.characteristics["t"].bonus);
|
||||
formula = formula.replace( "toughness bonus", actorData.data.characteristics["t"].bonus);
|
||||
}
|
||||
|
||||
|
||||
// Specific case, to avoid wrong matching with "Force"
|
||||
if (formula.includes("force mentale"))
|
||||
{
|
||||
// Determine if it's looking for the bonus or the value
|
||||
if (formula.includes('bonus')) {
|
||||
formula = formula.replace( "bonus de force mentale", this.actor.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "force mentale bonus", this.actor.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "bonus de force mentale", actorData.data.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "force mentale bonus", actorData.data.characteristics["wp"].bonus);
|
||||
} else
|
||||
formula = formula.replace("force mentale", this.actor.characteristics["wp"].value);
|
||||
formula = formula.replace("force mentale", actorData.data.characteristics["wp"].value);
|
||||
}
|
||||
|
||||
|
||||
// Iterate through characteristics
|
||||
for(let ch in this.actor.characteristics)
|
||||
for(let ch in actorData.data.characteristics)
|
||||
{
|
||||
// If formula includes characteristic name
|
||||
while (formula.includes(this.actor.characteristics[ch].label.toLowerCase()))
|
||||
while (formula.includes(actorData.data.characteristics[ch].label.toLowerCase()))
|
||||
{
|
||||
// Determine if it's looking for the bonus or the value
|
||||
if (formula.includes('bonus')) {
|
||||
formula = formula.replace("bonus de " + game.wfrp4e.config.characteristics[ch].toLowerCase(), this.actor.characteristics[ch].bonus);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase() + " bonus", this.actor.characteristics[ch].bonus);
|
||||
formula = formula.replace("bonus de " + game.wfrp4e.config.characteristics[ch].toLowerCase(), actorData.data.characteristics[ch].bonus);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase() + " bonus", actorData.data.characteristics[ch].bonus);
|
||||
}
|
||||
else
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase(), this.actor.characteristics[ch].value);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase(), actorData.data.characteristics[ch].value);
|
||||
}
|
||||
}
|
||||
|
||||
return eval(formula);
|
||||
}
|
||||
catch (e) {
|
||||
throw ui.notifications.error("Error: could not parse spell damage. See console for details")
|
||||
}
|
||||
}
|
||||
|
||||
//console.log("calculateSpellDamage -> " + formula );
|
||||
return eval(formula);
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------*/
|
||||
game.wfrp4e.entities.ItemWfrp4e.prototype.computeSpellPrayerFormula = function(type, aoe=false, formulaOverride) {
|
||||
let formula = formulaOverride || this[type]?.value
|
||||
if (Number.isNumeric(formula))
|
||||
return formula
|
||||
|
||||
game.wfrp4e.entities.ActorWfrp4e.prototype.calculateSpellAttributes = function(formula, aoe=false) {
|
||||
//console.log("Compute FR")
|
||||
let actorData = this.data
|
||||
formula = formula.toLowerCase();
|
||||
|
||||
// Do not process these special values
|
||||
@ -104,18 +158,18 @@ Hooks.once('init', () => {
|
||||
{
|
||||
// Determine if it's looking for the bonus or the value
|
||||
if (formula.includes('bonus')) {
|
||||
formula = formula.replace( "bonus de force mentale", this.actor.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "force mentale bonus", this.actor.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "bonus de force mentale", actorData.data.characteristics["wp"].bonus);
|
||||
formula = formula.replace( "force mentale bonus", actorData.data.characteristics["wp"].bonus);
|
||||
}
|
||||
else
|
||||
formula = formula.replace("force mentale", this.actor.characteristics["wp"].value);
|
||||
formula = formula.replace("force mentale", actorData.data.characteristics["wp"].value);
|
||||
}
|
||||
if (formula.includes("yard") )
|
||||
formula = formula.replace('yard', "mètre" );
|
||||
if (formula.includes("yds") )
|
||||
formula = formula.replace('yds', "m." );
|
||||
// Iterate through remaining characteristics
|
||||
for(let ch in this.actor.characteristics)
|
||||
for(let ch in actorData.data.characteristics)
|
||||
{
|
||||
// If formula includes characteristic name
|
||||
//console.log("Testing :", ch, WFRP4E.characteristics[ch].toLowerCase());
|
||||
@ -123,11 +177,11 @@ Hooks.once('init', () => {
|
||||
{
|
||||
// Determine if it's looking for the bonus or the value
|
||||
if (formula.includes('bonus')) {
|
||||
formula = formula.replace("bonus de " + game.wfrp4e.config.characteristics[ch].toLowerCase(), this.actor.characteristics[ch].bonus);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase() + " bonus", this.actor.characteristics[ch].bonus);
|
||||
formula = formula.replace("bonus de " + game.wfrp4e.config.characteristics[ch].toLowerCase(), actorData.data.characteristics[ch].bonus);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase() + " bonus", actorData.data.characteristics[ch].bonus);
|
||||
}
|
||||
else
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase(), this.actor.characteristics[ch].value);
|
||||
formula = formula.replace(game.wfrp4e.config.characteristics[ch].toLowerCase(), actorData.data.characteristics[ch].value);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -145,14 +199,14 @@ Hooks.once('init', () => {
|
||||
if(typeof Babele !== 'undefined') {
|
||||
|
||||
Babele.get().register({
|
||||
module: 'wh4-fr-translation',
|
||||
module: 'WH4-fr-translation',
|
||||
lang: 'fr',
|
||||
dir: 'compendium'
|
||||
});
|
||||
|
||||
Babele.get().registerConverters({
|
||||
|
||||
"career_skills": (skills_list) => {
|
||||
var compendium = game.packs.find(p => p.collection === compmod+'.skills');
|
||||
//console.log( "Thru here ...", compendium, skills_list);
|
||||
if ( skills_list ) {
|
||||
var i;
|
||||
@ -160,7 +214,7 @@ Hooks.once('init', () => {
|
||||
var re = /(.*)\((.*)\)/i;
|
||||
for (i = 0; i < len; i++) {
|
||||
skills_list[i] = skills_list[i].trim();
|
||||
var transl = game.babele.translate(compmod+'.skills', { name: skills_list[i] }, true ).name;
|
||||
var transl = compendium.translate( { name: skills_list[i] } ).name;
|
||||
//console.log("List ...", skills_list[i]);
|
||||
if ( transl == skills_list[i] ) {
|
||||
var res = re.exec( skills_list[i] );
|
||||
@ -168,13 +222,13 @@ Hooks.once('init', () => {
|
||||
//console.log("Matched/split:", res[1], res[2]);
|
||||
var subword = game.i18n.localize(res[2].trim() );
|
||||
var s1 = res[1].trim() + " ()";
|
||||
var translw = game.babele.translate(compmod+'.skills', { name: s1}, true ).name;
|
||||
var translw = compendium.translate( { name: s1} ).name;
|
||||
if (translw != s1) {
|
||||
var res2 = re.exec(translw);
|
||||
transl = res2[1] + "(" + subword + ")";
|
||||
} else {
|
||||
s1 = res[1].trim() + " ( )";
|
||||
translw = game.babele.translate(compmod+'.skills', { name: s1}, true ).name;
|
||||
translw = compendium.translate( { name: s1} ).name;
|
||||
var res2 = re.exec(translw);
|
||||
transl = res2[1] + "(" + subword + ")";
|
||||
}
|
||||
@ -185,7 +239,6 @@ Hooks.once('init', () => {
|
||||
}
|
||||
return skills_list;
|
||||
},
|
||||
|
||||
"npc_details": (details) => {
|
||||
//console.log("DETAILS: ", details);
|
||||
let newDetails = duplicate(details);
|
||||
@ -197,7 +250,6 @@ Hooks.once('init', () => {
|
||||
newDetails.class.value = game.i18n.localize(details.class.value);
|
||||
return newDetails;
|
||||
},
|
||||
|
||||
"career_talents": (talents_list) => {
|
||||
var compendium = game.packs.find(p => p.collection === compmod+'.talents');
|
||||
var i;
|
||||
@ -205,21 +257,21 @@ Hooks.once('init', () => {
|
||||
var len = talents_list.length;
|
||||
var re = /(.*)\((.*)\)/i;
|
||||
for (i = 0; i < len; i++) {
|
||||
var transl = game.babele.translate(compmod+'.talents', { name: talents_list[i]}, true ).name;
|
||||
var transl = compendium.translate( { name: talents_list[i]} ).name;
|
||||
if ( transl == talents_list[i] ) {
|
||||
var res = re.exec( talents_list[i]);
|
||||
if (res) {
|
||||
//console.log("Matched/split:", res[1], res[2]);
|
||||
var subword = game.i18n.localize(res[2].trim() );
|
||||
var s1 = res[1].trim(); // No () in talents table
|
||||
var translw = game.babele.translate(compmod+'.talents', { name: s1 }, true ).name;
|
||||
var translw = compendium.translate( { name: s1 } ).name;
|
||||
if (translw != s1) {
|
||||
transl = translw + " (" + subword + ")";
|
||||
transl = translw + "(" + subword + ")";
|
||||
} else {
|
||||
s1 = res[1].trim() + " ( )";
|
||||
translw = game.babele.translate(compmod+'.talents', { name: s1 }, true ).name;
|
||||
translw = compendium.translate( { name: s1 } ).name;
|
||||
var res2 = re.exec(translw);
|
||||
transl = res2[1] + " (" + subword + ")";
|
||||
transl = res2[1] + "(" + subword + ")";
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -242,6 +294,18 @@ Hooks.once('init', () => {
|
||||
return chars;
|
||||
},
|
||||
"bestiary_traits": (beast_traits, translations) => {
|
||||
var fulltraits = game.packs.get(compmod+'.traits');
|
||||
var fullskills = game.packs.get(compmod+'.skills');
|
||||
var fulltalents = game.packs.get(compmod+'.talents');
|
||||
var fullcareers = game.packs.get(compmod+'.careers');
|
||||
var fulltrappings = game.packs.get(compmod+'.trappings');
|
||||
var fullspells = game.packs.get(compmod+'.spells');
|
||||
var fullprayers = game.packs.get(compmod+'.prayers');
|
||||
var eisitems = game.packs.get('eis.eisitems');
|
||||
var eisspells = game.packs.get('eis.eisspells');
|
||||
var ugtalents = game.packs.get('wfrp4e-unofficial-grimoire.ug-careerstalentstraits');
|
||||
var ugspells = game.packs.get('wfrp4e-unofficial-grimoire.ug-spells');
|
||||
//console.log("Comp :", compmod, fulltraits);
|
||||
|
||||
for (let trait_en of beast_traits)
|
||||
{
|
||||
@ -262,13 +326,13 @@ Hooks.once('init', () => {
|
||||
name_en = res[1]; // Get the root traits name
|
||||
special = " (" + game.i18n.localize( res[2].trim() ) + ")"; // And the special keyword
|
||||
}
|
||||
var trait_fr = game.babele.translate( compmod+'.traits', { name: name_en }, true );
|
||||
//console.log(">>>>> Trait ?", name_en, nbt, trait_fr, trait_fr.name, special);
|
||||
var trait_fr = fulltraits.translate( { name: name_en } );
|
||||
//console.log(">>>>> Trait ?", name_en, nbt, trait_fr.name, special);
|
||||
trait_en.name = nbt + trait_fr.name + special;
|
||||
if ( trait_fr.data && trait_fr.data.description && trait_fr.data.description.value ) {
|
||||
trait_en.data.description.value = trait_fr.data.description.value;
|
||||
} else if ( game.modules.get( 'wfrp4e-eis') ) { // No description in the FR compendium -> test other compendium if presenr
|
||||
trait_fr = game.babele.translate( 'wfrp4e-eis.eisitems', { name: name_en }, true);
|
||||
} else if ( eisitems ) { // No description in the FR compendium -> test other compendium if presenr
|
||||
trait_fr = eisitems.translate( { name: name_en } );
|
||||
trait_en.name = nbt + trait_fr.name + special;
|
||||
if ( trait_fr.data && trait_fr.data.description && trait_fr.data.description.value )
|
||||
trait_en.data.description.value = trait_fr.data.description.value;
|
||||
@ -284,29 +348,27 @@ Hooks.once('init', () => {
|
||||
name_en = res[1].trim(); // Get the root skill name
|
||||
special = " (" + game.i18n.localize( res[2].trim() ) + ")"; // And the special keyword
|
||||
}
|
||||
var trait_fr = game.babele.translate( compmod+'.skills', { name: name_en }, true );
|
||||
var trait_fr = fullskills.translate( { name: name_en } );
|
||||
//console.log(">>>>> Skill ?", name_en, special, trait_fr.name, trait_fr);
|
||||
if (trait_fr.name != name_en) { // Translation OK
|
||||
if (trait_fr.translated) {
|
||||
trait_en.name = trait_fr.name + special;
|
||||
if ( trait_fr.data ) {
|
||||
trait_en.data.description.value = trait_fr.data.description.value;
|
||||
}
|
||||
}
|
||||
|
||||
} else if ( trait_en.type == "prayer") {
|
||||
var trait_fr = game.babele.translate( compmod+'.prayers', { name: name_en }, true);
|
||||
var trait_fr = fullprayers.translate( { name: name_en } );
|
||||
//console.log(">>>>> Prayer ?", name_en, special, trait_fr.name );
|
||||
trait_en.name = trait_fr.name + special;
|
||||
if ( trait_fr.data && trait_fr.data.description && trait_fr.data.description.value )
|
||||
trait_en.data.description.value = trait_fr.data.description.value;
|
||||
|
||||
} else if ( trait_en.type == "spell") {
|
||||
var trait_fr = game.babele.translate( compmod+'.spells', { name: name_en }, true);
|
||||
if ( trait_fr.name == name_en ) { // If no translation, test eisspells
|
||||
trait_fr = game.babele.translate( 'wfrp4e-eis.eisspells', { name: name_en }, true);
|
||||
var trait_fr = fullspells.translate( { name: name_en } );
|
||||
if ( (!trait_fr.data || !trait_fr.data.description || !trait_fr.data.description.value) && eisspells) { // If no translation, test eisspells
|
||||
trait_fr = eisspells.translate( { name: name_en } );
|
||||
}
|
||||
if ( trait_fr.name == name_en ) { // If no translation, test unofficial grimoire
|
||||
trait_fr = game.babele.translate( 'wfrp4e-unofficial-grimoire.ug-spells', { name: name_en }, true);
|
||||
if ( (!trait_fr.data || !trait_fr.data.description || !trait_fr.data.description.value) && ugspells) { // If no translation, test eisspells
|
||||
trait_fr = ugspells.translate( { name: name_en } );
|
||||
}
|
||||
//console.log(">>>>> Spell ?", name_en, special, trait_fr.name );
|
||||
trait_en.name = trait_fr.name + special;
|
||||
@ -319,24 +381,24 @@ Hooks.once('init', () => {
|
||||
name_en = res[1].trim(); // Get the root talent name, no parenthesis this time...
|
||||
special = " (" + game.i18n.localize( res[2].trim() ) + ")"; // And the special keyword
|
||||
}
|
||||
var trait_fr = game.babele.translate( compmod+'.talents', { name: name_en }, true );
|
||||
//console.log(">>>>> Talent ?", trait_fr, name_en, special, trait_fr.name);
|
||||
if ( trait_fr.name != "Sprinter" && trait_fr.name == name_en) { // If no translation, test ugtalents
|
||||
trait_fr = game.babele.translate( 'wfrp4e-unofficial-grimoire.ug-careerstalentstraits', { name: name_en }, true );
|
||||
var trait_fr = fulltalents.translate( { name: name_en } );
|
||||
//console.log(">>>>> Talent ?", name_en, special, trait_fr.name);
|
||||
if ( (!trait_fr.data || !trait_fr.data.description || !trait_fr.data.description.value) && ugtalents) { // If no translation, test ugtalents
|
||||
trait_fr = ugtalents.translate( { name: name_en } );
|
||||
}
|
||||
if ( trait_fr.name == "Sprinter" || trait_fr.name != name_en) { // Talent translated!
|
||||
trait_en.name = trait_fr.name.trim() + special;
|
||||
if ( trait_fr.translated) {
|
||||
trait_en.name = trait_fr.name + special;
|
||||
if ( trait_fr.data ) { // Why ???
|
||||
trait_en.data.description.value = trait_fr.data.description.value;
|
||||
}
|
||||
}
|
||||
} else if ( trait_en.type == "career") {
|
||||
var career_fr = game.babele.translate( compmod+'.careers', trait_en, true );
|
||||
var career_fr = fullcareers.translate( trait_en );
|
||||
console.log(">>>>> Career ?", name_en, career_fr.name );
|
||||
trait_en.name = career_fr.name;
|
||||
trait_en.data = duplicate(career_fr.data);
|
||||
} else if ( trait_en.type == "trapping" || trait_en.type == "weapon" || trait_en.type == "armour" || trait_en.type == "container" || trait_en.type == "money") {
|
||||
var trapping_fr = game.babele.translate( compmod+'.trappings', trait_en, true );
|
||||
var trapping_fr = fulltrappings.translate( trait_en );
|
||||
//console.log(">>>>> Trapping ?", name_en, trapping_fr.name);
|
||||
trait_en.name = trapping_fr.name;
|
||||
if ( trapping_fr.data) {
|
||||
@ -353,26 +415,33 @@ Hooks.once('init', () => {
|
||||
},
|
||||
"trapping_qualities_flaws": (value) => {
|
||||
if ( value ) {
|
||||
let newQF = [];
|
||||
//console.log("ATOUTS", value);
|
||||
var list = value.split( "," );
|
||||
var i=0;
|
||||
//var re = /(.*) (\d+)/i;
|
||||
for (i=0; i<value.length; i++) {
|
||||
newQF[i] = duplicate(value[i]);
|
||||
if ( newQF[i].name == "Trap Blade") {
|
||||
newQF[i].name = "TrapBlade"; // Auto-patch, without space!
|
||||
var re = /(.*) (\d+)/i;
|
||||
for (i=0; i<list.length; i++) {
|
||||
let trim = list[i].trim();
|
||||
if ( trim == "Trap Blade") {
|
||||
trim = "TrapBlade"; // Auto-patch, without space!
|
||||
//console.log("PATCHED", trim);
|
||||
}
|
||||
var splitted = re.exec( trim );
|
||||
//console.log("Current quality", splitted, trim );
|
||||
if ( splitted ) {
|
||||
//console.log("FOund:", splitted[0], splitted[1], splitted[2] );
|
||||
list[i] = game.i18n.localize( splitted[1] ) + " " + splitted[2];
|
||||
} else {
|
||||
list[i] = game.i18n.localize( trim ) ;
|
||||
}
|
||||
newQF[i].name = game.i18n.localize( newQF[i].name ) ;
|
||||
}
|
||||
return newQF;
|
||||
return list.toString();
|
||||
}
|
||||
},
|
||||
// Search back in careers the translated name of the groupe (as it is the name of the level career itself)
|
||||
"career_careergroup": (value) => {
|
||||
// Manage exception - Dirty hack
|
||||
if ( value == 'Slayer' ) {
|
||||
return "Tueur";
|
||||
return "Tueur Nains";
|
||||
}
|
||||
if ( value == 'Druidic Priest' ) {
|
||||
return "Druide";
|
||||
@ -380,7 +449,7 @@ Hooks.once('init', () => {
|
||||
// Per default
|
||||
var compendium = game.packs.find(p => p.collection === compmod+'.careers');
|
||||
if ( compendium )
|
||||
return game.babele.translate(compmod+'.careers', { name: value } ).name;
|
||||
return compendium.translate( { name: value } ).name;
|
||||
else
|
||||
ui.notifications.error("Impossible de trouver la carrière " + value + ". Elle n'est probablement pas traduite.", { permanent: true })
|
||||
},
|
||||
@ -484,33 +553,3 @@ Hooks.once('init', () => {
|
||||
|
||||
} );
|
||||
|
||||
/* -------------------------------------------- */
|
||||
// Register world usage statistics
|
||||
function registerUsageCount( registerKey ) {
|
||||
if ( game.user.isGM ) {
|
||||
game.settings.register(registerKey, "world-key", {
|
||||
name: "Unique world key",
|
||||
scope: "world",
|
||||
config: false,
|
||||
default: "",
|
||||
type: String
|
||||
});
|
||||
|
||||
let worldKey = game.settings.get(registerKey, "world-key")
|
||||
if ( worldKey == undefined || worldKey == "" ) {
|
||||
worldKey = randomID(32)
|
||||
game.settings.set(registerKey, "world-key", worldKey )
|
||||
}
|
||||
// Simple API counter
|
||||
let regURL = `https://www.uberwald.me/fvtt_appcount/count.php?name="${registerKey}"&worldKey="${worldKey}"&version="${game.release.generation}.${game.release.build}"&system="${game.system.id}"&systemversion="${game.system.version}"`
|
||||
$.ajax(regURL)
|
||||
/* -------------------------------------------- */
|
||||
}
|
||||
}
|
||||
|
||||
/*---------------------------------------------------------------------*/
|
||||
Hooks.once('ready', () => {
|
||||
|
||||
registerUsageCount("wh4-fr-translation")
|
||||
|
||||
});
|
90
compendium/CarriereFR.db
Normal file
90
compendium/CarriereFR.db
Normal file
File diff suppressed because one or more lines are too long
@ -1,19 +0,0 @@
|
||||
{
|
||||
"label": "Tables (Archives Vol. I)",
|
||||
"entries": [
|
||||
{
|
||||
"id": "Career - Wood Elf (Toriour)",
|
||||
"name": "Carrière - Elfe Sylvain (Toriour)"
|
||||
},
|
||||
{
|
||||
"id": "Random Euphemisms - Noun",
|
||||
"name": "Euphémismes aléatoires - Nom",
|
||||
"results": {"6-6":"...la Saucisse de Sigmar","7-7":"...la croute des Tourtes","8-8":"...les Dingleberries","9-9":"...les Morveux","10-10":"...la tour du Sorcier","1-1":"...le Mouton","2-2":"...le Manche à balai","3-3":"...le Tromblon","4-4":"...le vieux Quinsberry","5-5":"...les Royaumes du Chaos"}
|
||||
},
|
||||
{
|
||||
"id": "Random Euphemisms - Participle",
|
||||
"name": "Euphémismes aléatoires - Participe",
|
||||
"results": {"1-1":"En polissant","2-2":"En visitant","3-3":"Aggravant","4-4":"En cuisinant","5-5":"En secouant","6-6":"En grignotant","7-7":"En enchantant","8-8":"En mutant","9-9":"En tirant","10-10":"En pillant"}
|
||||
}
|
||||
]
|
||||
}
|
File diff suppressed because one or more lines are too long
@ -17,7 +17,7 @@
|
||||
"path": "data.careergroup.value",
|
||||
"converter": "career_careergroup"
|
||||
},
|
||||
"trappings": "system.trappings"
|
||||
"trappings": "data.trappings"
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
@ -92,7 +92,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Apothecary-General",
|
||||
"name": "Apothicaire de Renom",
|
||||
"name": "Eminent Apothicaire",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Bon de commande",
|
||||
@ -145,7 +145,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Attendant",
|
||||
"name": "Valet",
|
||||
"name": "Suivant",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Livrée de qualité",
|
||||
@ -172,7 +172,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Barge Master",
|
||||
"name": "Capitaine",
|
||||
"name": "Maître de barge",
|
||||
"trappings": [
|
||||
"Chapeau",
|
||||
"Bateau de rivière et équipage"
|
||||
@ -180,7 +180,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Bargeswain",
|
||||
"name": "Chef de bord",
|
||||
"name": "Conducteur de barges",
|
||||
"trappings": [
|
||||
"Sac à dos",
|
||||
"Outils de la profession (Charpentier)"
|
||||
@ -323,7 +323,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Busker",
|
||||
"name": "Musicien de rues",
|
||||
"name": "Musicien des rues",
|
||||
"trappings": [
|
||||
"Bol",
|
||||
"Instrument"
|
||||
@ -331,7 +331,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Cargo Scavenger",
|
||||
"name": "Pilleur d'épaves",
|
||||
"name": "Charognard de fret",
|
||||
"trappings": [
|
||||
"Pied de piche",
|
||||
"Grand sac",
|
||||
@ -391,7 +391,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Clerk",
|
||||
"name": "Employé",
|
||||
"name": "Greffier",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Hébergement",
|
||||
@ -545,7 +545,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Doktor",
|
||||
"name": "Docteur en médecine",
|
||||
"name": "Docteur en médécine",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Apprenti",
|
||||
@ -688,7 +688,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Gang Boss",
|
||||
"name": "Chef de gang",
|
||||
"name": "Boss de gang",
|
||||
"trappings": [
|
||||
"Arbalète de poing avec 10 carreaux",
|
||||
"Bande de Voyous et Rançonneurs",
|
||||
@ -720,7 +720,7 @@
|
||||
"trappings": [
|
||||
"Sac à dos",
|
||||
"Arme à 1 main",
|
||||
"Bêche",
|
||||
"Epieu",
|
||||
"Lampe tempête et huile"
|
||||
]
|
||||
},
|
||||
@ -745,14 +745,14 @@
|
||||
},
|
||||
{
|
||||
"id": "Guard Officer",
|
||||
"name": "Garde officier",
|
||||
"name": "Officier de la garde",
|
||||
"trappings": [
|
||||
"Cuirasse"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Guide",
|
||||
"name": "Coureur des bois",
|
||||
"name": "Coureur de bois",
|
||||
"trappings": [
|
||||
"Arme à 1 main",
|
||||
"Veste de cuir",
|
||||
@ -762,7 +762,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Guildmaster",
|
||||
"name": "Maître de guilde",
|
||||
"name": "Maître de Guilde",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Guilde",
|
||||
@ -843,7 +843,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Herbwise",
|
||||
"name": "Herboriste de renom",
|
||||
"name": "Herboriste suprême",
|
||||
"trappings": [
|
||||
"Poney et charette"
|
||||
]
|
||||
@ -860,7 +860,7 @@
|
||||
},
|
||||
{
|
||||
"id": "High Priest",
|
||||
"name": "Grand Prêtre",
|
||||
"name": "Haut Prêtre",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Robes de qualité",
|
||||
@ -890,7 +890,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Horseman",
|
||||
"name": "Apprenti Cavalier",
|
||||
"name": "Page",
|
||||
"trappings": [
|
||||
"Veste de cuir",
|
||||
"Cheval de selle avec fontes et selle"
|
||||
@ -914,7 +914,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Huntsmaster",
|
||||
"name": "Maître de la Chasse",
|
||||
"name": "Maître Chasseur",
|
||||
"trappings": [
|
||||
"Cheval de selle avec fontes et selle",
|
||||
"Meute de chiens de chasse"
|
||||
@ -1038,7 +1038,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Light Cavalry Officer",
|
||||
"name": "Officier de Cavalerie Légère",
|
||||
"name": "Officier de cavalerie",
|
||||
"trappings": [
|
||||
"Paquet de cartes",
|
||||
"Vêtements de qualité"
|
||||
@ -1046,7 +1046,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Light Cavalry Sergeant",
|
||||
"name": "Sergent de Cavalerie légère",
|
||||
"name": "Sergent de cavalerie",
|
||||
"trappings": [
|
||||
"Insigne"
|
||||
]
|
||||
@ -1085,7 +1085,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Master Apothecary",
|
||||
"name": "Maître Apothicaire",
|
||||
"name": "Maitre Apothicaire",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Bibliothèque (Apothicaire)",
|
||||
@ -1095,7 +1095,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Master Artisan",
|
||||
"name": "Maître artisan",
|
||||
"name": "Maître Artisan",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Apprenti",
|
||||
@ -1104,7 +1104,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Master Artist",
|
||||
"name": "Artiste de renom",
|
||||
"name": "Maître Artiste",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Apprenti",
|
||||
@ -1147,7 +1147,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Master Investigator",
|
||||
"name": "Maître Enquêteur",
|
||||
"name": "Maître investigateur",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Assistant",
|
||||
@ -1255,7 +1255,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Mine Foreman",
|
||||
"name": "Contremaître de la mine",
|
||||
"name": "Contremaître de Mine",
|
||||
"trappings": [
|
||||
"Equipe de mineurs",
|
||||
"Nécessaire d'écriture"
|
||||
@ -1305,7 +1305,7 @@
|
||||
},
|
||||
{
|
||||
"id": "OERQpwcRziRTeQRb",
|
||||
"name": "Novice (Prêtre Guerrier)",
|
||||
"name": "Novice",
|
||||
"trappings": [
|
||||
"Livre (Religion)",
|
||||
"Pourpoint de cuir",
|
||||
@ -1315,15 +1315,12 @@
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Novitiate (Warrior Priest)",
|
||||
"name": "Novice (Prêtre Guerrier)",
|
||||
"id": "Novitiate",
|
||||
"name": "Novice",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Livre (Religion)",
|
||||
"Pourpoint de cuir",
|
||||
"Symbole Religieux",
|
||||
"Robes",
|
||||
"Arme (Au choix)"
|
||||
"Symbole Religieux",
|
||||
"Robes"
|
||||
]
|
||||
},
|
||||
{
|
||||
@ -1442,7 +1439,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Physician's Apprentice",
|
||||
"name": "Etudiant en Médecine",
|
||||
"name": "Apprenti Medecin",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Bandages",
|
||||
@ -1530,7 +1527,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Professor",
|
||||
"name": "Professeur",
|
||||
"name": "Pofesseur",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Etude"
|
||||
@ -1538,7 +1535,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Prophet of Doom",
|
||||
"name": "Prophète du destin",
|
||||
"name": "Prophète du Destin",
|
||||
"trappings": [
|
||||
"Livre (Religion)",
|
||||
"Suivants (avec des Penitents)",
|
||||
@ -1649,7 +1646,7 @@
|
||||
},
|
||||
{
|
||||
"id": "River Elder",
|
||||
"name": "Ancienne du fleuve",
|
||||
"name": "Sage des rivières",
|
||||
"trappings": [
|
||||
"Hutte ou barge fluviale"
|
||||
]
|
||||
@ -1684,7 +1681,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Riverguide",
|
||||
"name": "Guide fluvial",
|
||||
"name": "Guide de rivière",
|
||||
"trappings": [
|
||||
"Arme à 1 main (Gaffe)",
|
||||
"Lampe Tempête et Huile"
|
||||
@ -1701,7 +1698,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Riverwise",
|
||||
"name": "Sage des rives",
|
||||
"name": "Sage des rivières",
|
||||
"trappings": [
|
||||
"Barque à rames",
|
||||
"Lampte Temête et Huile"
|
||||
@ -1719,7 +1716,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Road Captain",
|
||||
"name": "Capitaine Patrouilleur",
|
||||
"name": "Capitaine de la Route",
|
||||
"trappings": [
|
||||
"Cheval de guerre léger",
|
||||
"Pistolet avec 10 balles",
|
||||
@ -1729,7 +1726,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Road Sergeant",
|
||||
"name": "Sergent Patrouilleur",
|
||||
"name": "Sergent de la route",
|
||||
"trappings": [
|
||||
"Escouade de patrouilleurs",
|
||||
"Pistolet avec 10 balles",
|
||||
@ -1801,7 +1798,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Scoundrel",
|
||||
"name": "Escroc",
|
||||
"name": "Vaurien",
|
||||
"trappings": [
|
||||
"Faux sceau",
|
||||
"Nécessaire d'écriture"
|
||||
@ -1877,7 +1874,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Ship's Master",
|
||||
"name": "Capitaine de Navire",
|
||||
"name": "Commandant de navire",
|
||||
"trappings": [
|
||||
"Règles de navigation",
|
||||
"Navire et équipage",
|
||||
@ -1996,7 +1993,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Student",
|
||||
"name": "Etudiant",
|
||||
"name": "Etudiant érudit",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Alcool",
|
||||
@ -2007,7 +2004,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Student Engineer",
|
||||
"name": "Etudiant Ingénieur",
|
||||
"name": "Ingénieur étudiant",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Livre (Ingénieur)",
|
||||
@ -2016,7 +2013,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Student Lawyer",
|
||||
"name": "Etudiant en Droit",
|
||||
"name": "Juriste étudiant",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Livre (Loi)",
|
||||
@ -2025,7 +2022,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Swindler",
|
||||
"name": "Filou",
|
||||
"name": "Escroc",
|
||||
"trappings": [
|
||||
"Sac à Dos",
|
||||
"2 ensemble de vêtements",
|
||||
@ -2060,7 +2057,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Thug",
|
||||
"name": "Coupe-jarret",
|
||||
"name": "Voyou",
|
||||
"trappings": [
|
||||
"Coup-de-poing",
|
||||
"Veste de cuir"
|
||||
@ -2068,7 +2065,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Toll Keeper",
|
||||
"name": "Péager",
|
||||
"name": "Garde barrière",
|
||||
"trappings": [
|
||||
"Arbalète avec 10 carreaux",
|
||||
"Veste de cuir"
|
||||
@ -2126,7 +2123,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Trapper",
|
||||
"name": "Traqueur",
|
||||
"name": "Trappeur",
|
||||
"trappings": [
|
||||
"Assortiment de pièges à animaux",
|
||||
"Arme à 1 main",
|
||||
@ -2136,7 +2133,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Treasure Hunter",
|
||||
"name": "Chasseur de trésors",
|
||||
"name": "Chasseur de trésor",
|
||||
"trappings": [
|
||||
"Sac de couchage",
|
||||
"Cartes",
|
||||
@ -2235,7 +2232,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Watch Captain",
|
||||
"name": "Capitaine de la Milice",
|
||||
"name": "Capitaine de Milice",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Cheval de selle avec selle et harnais",
|
||||
@ -2256,7 +2253,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Watch Sergeant",
|
||||
"name": "Sergent de la Milice",
|
||||
"name": "Sergent de Milice",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Cuirasse",
|
||||
@ -2276,7 +2273,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Witch",
|
||||
"name": "Sorcier dissident",
|
||||
"name": "Sorcier sauvage",
|
||||
"trappings": [
|
||||
"Baton de combat",
|
||||
"Sac",
|
||||
@ -2324,7 +2321,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Wizard's Apprentice",
|
||||
"name": "Sorcier novice",
|
||||
"name": "Apprenti Sorcier",
|
||||
"description": "",
|
||||
"trappings": [
|
||||
"Grimoire",
|
||||
|
@ -44,7 +44,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "takeDamage",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"body\")\n args.actor.addCondition(\"bleeding\", 2)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"body\")\n args.actor.addCondition(\"bleeding\", 2)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -240,7 +240,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"body\") \n args.actor.addCondition(\"bleeding\", 1)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"body\") \n args.actor.addCondition(\"bleeding\", 1)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -288,7 +288,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"arm\") \n args.actor.addCondition(\"bleeding\", 1)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"body\") \n args.actor.addCondition(\"bleeding\", 1)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -297,7 +297,7 @@
|
||||
"transfer": true
|
||||
}
|
||||
],
|
||||
"id": "Gaping Arm Wound",
|
||||
"id": "Gaping Chest Wound",
|
||||
"name": "Blessure béante"
|
||||
},
|
||||
{
|
||||
@ -423,7 +423,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"body\") \n args.actor.addCondition(\"bleeding\", 2)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"body\") \n args.actor.addCondition(\"bleeding\", 2)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -508,7 +508,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"skill\" && args.item.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
"script": "if (args.type == \"skill\" && args.item.data.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -557,7 +557,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.fBcZhOBn8IpoVqQ1\").then(injury => {\n let teeth = new Roll(\"1d10\").roll({async: false}).total\n ChatMessage.create({content : `<b>${this.actor.data.token.name}</b> a perdu ${teeth} dents`, speaker : {alias: this.effect.label}})\ninjury.location.value = `${teeth} ${injury.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.fBcZhOBn8IpoVqQ1\").then(injury => {\n let teeth = new Roll(\"1d10\").roll().total\n ChatMessage.create({content : `<b>${this.actor.data.token.name}</b> a perdu ${teeth} dents`, speaker : {alias: this.effect.label}})\ninjury.data.data.location.value = `${teeth} ${injury.data.data.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -640,7 +640,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "if (args.actor.isOwner)\n{\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"difficult\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.4lj1ik958mbgAlaF\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\n}"
|
||||
"script": "if (args.actor.owner)\n{\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"difficult\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.4lj1ik958mbgAlaF\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -760,7 +760,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"skill\" && args.item.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
"script": "if (args.type == \"skill\" && args.item.data.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -778,34 +778,6 @@
|
||||
"id": "Jarred Arm",
|
||||
"name": "Choc au bras"
|
||||
},
|
||||
{
|
||||
"id": "Badly Twisted Knee",
|
||||
"name": "Genou gravement tordu",
|
||||
"description": "<p>Vous vous tordez gravement le genou en essayant d'esquie le coup. Recevez un @Compendium[wfrp4e-core.injuries.3S4OYOZLauXctmev]{Déchirure Musculaire Jambe (Majeure)} injury.</p>",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "yJmV5ry9bcyqV5fL",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
"label": "Genou gravement tordu",
|
||||
"tint": null,
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "actor",
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.3S4OYOZLauXctmev\").then(injury => {\n args.actor.createEmbeddedDocuments(\"Item\", [injury.toObject()])\n})",
|
||||
"preventDuplicateEffects": false,
|
||||
"hide": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Vous recevez un coup particulièrement violent au cours de l'attaque. Vous lâchez ce que vous teniez en main, et cette dernière devient inutilisable pour <a class = 'chat-roll'><i class='fas fa-dice'></i> 1d10</a> - Bonus d'Endurance rounds (minimum 1). Pendant ce temps, considérez votre main comme perdue.",
|
||||
"effects": [],
|
||||
@ -930,7 +902,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "args.actor.addCondition(\"stunned\", new Roll(\"1d10\").roll({async: false}).total)"
|
||||
"script": "args.actor.addCondition(\"stunned\", new Roll(\"1d10\").roll().total)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -954,7 +926,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "takeDamage",
|
||||
"script": "if(args.opposedTest.result.hitloc.value == \"head\" && (args.opposedTest.attackerTest.result.critical || args.actor.status.wounds.value - args.totalWoundLoss < 0))\n{\n\n if (args.actor.isOwner) {\n args.actor.setupSkill(\"Résistance\", { absolute: { difficulty: \"average\" } }).then(setupData => {\n args.actor.basicTest(setupData).then(test => {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })\n }\n}"
|
||||
"script": "if(args.opposeData.hitloc.value == \"head\" && (args.opposeData.attackerTestResult.extra.critical || args.actor.data.data.status.wounds.value - args.totalWoundLoss < 0))\n{\n\n if (args.actor.owner) {\n args.actor.setupSkill(\"Résistance\", { absolute: { difficulty: \"average\" } }).then(setupData => {\n args.actor.basicTest(setupData).then(test => {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })\n }\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -1102,7 +1074,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -1152,7 +1124,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"easy\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"easy\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -1321,7 +1293,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "endCombat",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "if (this.actor.isOwner)\n this.actor.setupSkill(\"Résistance\").then(setupData => {\n this.actor.basicTest(setupData).then(test => {\n if (test.result.outcome == \"failure\") {\n fromUuid(\"Compendium.wfrp4e-core.injuries.ZhMADOqoo0y8Q9bx\").then(injury => {\n this.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n this.actor.deleteEmbeddedEntity(\"ActiveEffect\", this.effect._id)\n })\n }\n })\n })"
|
||||
"script": "if (this.actor.owner)\n this.actor.setupSkill(\"Résistance\").then(setupData => {\n this.actor.basicTest(setupData).then(test => {\n if (test.result.result == \"failure\") {\n fromUuid(\"Compendium.wfrp4e-core.injuries.ZhMADOqoo0y8Q9bx\").then(injury => {\n this.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n this.actor.deleteEmbeddedEntity(\"ActiveEffect\", this.effect._id)\n })\n }\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -1334,7 +1306,7 @@
|
||||
"name": "Coupure à l'orteil"
|
||||
},
|
||||
{
|
||||
"description": "Le coup vous entaille la jambe et le sang dégouline partout. Gagnez 1 État Hémorragique.",
|
||||
"description": "Le coup vous entaille la joue et le sang dégouline partout. Gagnez 1 État Hémorragique.",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "C28zNPsk79lesc2H",
|
||||
@ -1358,7 +1330,7 @@
|
||||
"name": "Coupure mineure"
|
||||
},
|
||||
{
|
||||
"description": "Gagnez 1 État Hémorragique car vous saignez abondamment au niveau du front.",
|
||||
"description": "Gagnez 1 État Hémorragique car vous saignez abondamment au niveau de 1'avant-bras.",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "C28zNPsk79lesc2H",
|
||||
@ -1378,7 +1350,7 @@
|
||||
"transfer": true
|
||||
}
|
||||
],
|
||||
"id": "Minor Head Cut",
|
||||
"id": "Minor Leg Cut",
|
||||
"name": "Coupure mineure"
|
||||
},
|
||||
{
|
||||
@ -1461,7 +1433,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.GlShFJF2TpsNh1FX\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.GlShFJF2TpsNh1FX\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -1509,7 +1481,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "takeDamage",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"LEG_LOCATION_HERE\") // rLeg or lLeg\n args.actor.addCondition(\"bleeding\", 1)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"LEG_LOCATION_HERE\") // rLeg or lLeg\n args.actor.addCondition(\"bleeding\", 1)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -1533,7 +1505,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -1564,7 +1536,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"stunned\", 3)\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"stunned\", 3)\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -1692,7 +1664,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "takeDamage",
|
||||
"script": "if (args.opposedTest.result.hitloc.value == \"ARM_LOCATION_HERE\") // lArm or rArm\n args.actor.addCondition(\"bleeding\", 2)"
|
||||
"script": "if (args.opposeData.hitloc.value == \"ARM_LOCATION_HERE\") // lArm or rArm\n args.actor.addCondition(\"bleeding\", 2)"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -1994,7 +1966,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -2025,7 +1997,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n {\n args.actor.addCondition(\"prone\")\n args.actor.addCondition(\"stunned\")\n }\n \n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n {\n args.actor.addCondition(\"prone\")\n args.actor.addCondition(\"stunned\")\n }\n \n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -2206,7 +2178,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -2237,7 +2209,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"skill\" && args.item.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 20\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 20"
|
||||
"script": "if (args.type == \"skill\" && args.item.data.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 20\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 20"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -2268,7 +2240,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"skill\" && args.item.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 20\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 20"
|
||||
"script": "if (args.type == \"skill\" && args.item.data.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 20\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 20"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -2319,7 +2291,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.QluSTTTq3viHJJUh\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.QluSTTTq3viHJJUh\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -2438,7 +2410,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.7mCcI3q7hgWcmbBU\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.7mCcI3q7hgWcmbBU\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -2521,7 +2493,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.hCadFsTRvLN9faaY\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.hCadFsTRvLN9faaY\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -2640,7 +2612,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.fBcZhOBn8IpoVqQ1\").then(injury => {\n let teeth = new Roll(\"1d10\").roll({async: false}).total\n ChatMessage.create({content : `<b>${this.actor.data.token.name}</b> loses ${teeth} teeth`, speaker : {alias: this.effect.label}})\ninjury.location.value = `${teeth} ${injury.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.rkJA1DlK51QuRlJy\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.hCadFsTRvLN9faaY\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.fBcZhOBn8IpoVqQ1\").then(injury => {\n let teeth = new Roll(\"1d10\").roll().total\n ChatMessage.create({content : `<b>${this.actor.data.token.name}</b> loses ${teeth} teeth`, speaker : {alias: this.effect.label}})\ninjury.data.data.location.value = `${teeth} ${injury.data.data.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.rkJA1DlK51QuRlJy\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.injuries.hCadFsTRvLN9faaY\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -2696,7 +2668,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.zyocWSzEZEC826NS\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n { \n args.actor.addCondition(\"prone\")\n args.actor.addCondition(\"stunned\")\n }\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.zyocWSzEZEC826NS\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n { \n args.actor.addCondition(\"prone\")\n args.actor.addCondition(\"stunned\")\n }\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -2812,7 +2784,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -2860,7 +2832,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"stunned\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/head.png",
|
||||
@ -3102,7 +3074,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"skill\" && args.item.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
"script": "if (args.type == \"skill\" && args.item.data.characteristic.value == \"ag\")\n args.prefillModifiers.modifier -= 10\n\nif (args.type == \"characteristic\" && args.item == \"ag\")\n args.prefillModifiers.modifier -= 10"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -3133,7 +3105,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\").then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -3182,7 +3154,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "if(args.actor.isOwner) {\n args.actor.setupSkill(\"Résistance\", { absolute: { difficulty: \"average\" } }).then(setupData => {\n args.actor.basicTest(setupData).then(test => {\n if (test.result.outcome == \"failure\") {\n args.actor.addCondition(\"prone\")\n fromUuid(\"Compendium.wfrp4e-core.injuries.ZhMADOqoo0y8Q9bx\").then(injury => {\n injury.location.value = `${Math.clamped(Math.abs(test.result.outcome.SL) + 1, 1, 5)} ${injury.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n })\n }\n })\n })\n }"
|
||||
"script": "if(args.actor.owner) {\n args.actor.setupSkill(\"Résistance\", { absolute: { difficulty: \"average\" } }).then(setupData => {\n args.actor.basicTest(setupData).then(test => {\n if (test.result.result == \"failure\") {\n args.actor.addCondition(\"prone\")\n fromUuid(\"Compendium.wfrp4e-core.injuries.ZhMADOqoo0y8Q9bx\").then(injury => {\n injury.data.data.location.value = `${Math.clamped(Math.abs(test.result.SL) + 1, 1, 5)} ${injury.data.data.location.value}`\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury.data)\n })\n }\n })\n })\n }"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -3346,7 +3318,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
"script": "if (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"prone\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -3370,7 +3342,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornbody.png",
|
||||
@ -3492,7 +3464,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.3S4OYOZLauXctmev\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.3S4OYOZLauXctmev\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -3582,7 +3554,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.MnMZv7ZXoRqoH9dS\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.isOwner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.injuries.MnMZv7ZXoRqoH9dS\").then(injury => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", injury)\n})\n\n\nif (args.actor.owner)\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty: \"hard\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.result == \"failure\")\n args.actor.addCondition(\"unconscious\")\n })\n })"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornarm.png",
|
||||
@ -3690,33 +3662,6 @@
|
||||
],
|
||||
"id": "Poked Eye",
|
||||
"name": "Vision brouillée"
|
||||
},
|
||||
{
|
||||
"id": "Minor Arm Cut",
|
||||
"name": "Coupure mineure",
|
||||
"description": "<p>Le coup vous entaille le bras et le sang dégouline partout. Gagnez 1 État Hémorragique.</p>",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "d2Gh2PYEwe7NdMWQ",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "systems/wfrp4e/icons/conditions/bleeding.png",
|
||||
"label": "Bleeding",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"trigger": "endRound",
|
||||
"value": 1
|
||||
},
|
||||
"core": {
|
||||
"statusId": "bleeding"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -1,764 +1,116 @@
|
||||
{
|
||||
"mapping": {
|
||||
"durationValue": "data.duration.value",
|
||||
"durationUnit": "data.duration.unit",
|
||||
"duration": "data.duration.value",
|
||||
"contraction": "data.contraction.value",
|
||||
"incubationValue": "data.incubation.value",
|
||||
"incubationUnit": "data.incubation.unit",
|
||||
"incubation": "data.incubation.value",
|
||||
"symptoms": "data.symptoms.value",
|
||||
"permanent": "data.permanent.value",
|
||||
"effects": "effects"
|
||||
"effects": {
|
||||
"path": "effects",
|
||||
"converter": "diseases_effects"
|
||||
}
|
||||
},
|
||||
"label": "Maladies",
|
||||
"entries": [
|
||||
{
|
||||
"id": "Festering Wound",
|
||||
"name": "Blessure Purulente",
|
||||
"description": "<p>Les coupures infectées et les égratignures sont monnaie courante, ce qui explique qu'il existe de nombreuses superstitions quant à la meilleure façon de les traiter. Les cataplasmes confectionnés à parti du fumier enveloppé dans des feuilles, la peau de crapaud, ou encore les plumes de colombe sont très répandus, tout comme le fait de frotter la blessure avec de la bonne terre de Sigmar. La plupart des médecins considèrent ces pratiques comme de pures âneries et vont préférer des remèdes plus scientifiques, comme le mélange de la bile d'un boeuf noir avec trois cuillères de l'urine du patient et une demi-cuillère de sel de mer, mixture ensuite appliquée sur la blessure purulente. Les hurlements qui suivent généralement cette application sont bien la preuve de son efficacité.</p>",
|
||||
"durationValue": "1d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Facile (+40) après un combat vous ayant opposé à une créature avec le Trait Parasité. Vous pouvez également développer une infection à partir d'une Infection Mineure. L'incubation est instantanée si développée à partir d'autres symptômes",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Fièvre, Persistant (Intermédiaire), Malaise, Blessé",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "InNO9elKVbhdUMyB",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Fièvre",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }",
|
||||
"otherEffects": [
|
||||
"blight",
|
||||
"wounded"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "nKPv1wHQXwUsBdf7",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Persistente (Intermédiaire)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "2cuvlgkALYIx6KCh",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "Bhn6hjQFNCEMU6et",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Blessé",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"symptom": true,
|
||||
"script": "if (this.actor.isOwner)\n {\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty : \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n fromUuid(\"Compendium.wfrp4e-core.diseases.kKccDTGzWzSXCBOb\").then(disease => {\n args.actor.createEmbeddedDocuments(\"Item\", [disease.toObject()])\n })\n })\n })\n }"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Galloping Trots",
|
||||
"name": "Courante Galopante",
|
||||
"description": "<p>On raconte que la nourriture des Halflings ne peut pas donner de Courante Galopante, une maladie peu râgoutante et malheureusement trop répandue au sein de l'Empire à cause du manque de soins apportés à la préparation de la nourriture. Même si ceux souffrant de Vengeance des Rumsters après avoir ingurgité des Tourtes bon marché des Halflings vendues à Altdorf vous diront le contraire, s'ils peuvent quitter les toilettes assez longtemps...</p>",
|
||||
"durationValue": "1d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test d'Endurance Facile (+40) après avoir ingurgité de la matière infectée.",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Heures",
|
||||
"symptoms": "Intoxication Alimentaire (Modérée), Malaise, Nausée",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "Sp93ZiJ4eq26v8UO",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Intoxication Alimentaire (Modérée)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "fquDNK6fxIYlnWX1",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "heL1cJFCuElfQoeS",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Nausée",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "rollTest",
|
||||
"symptom": true,
|
||||
"script": "\nif (this.actor.isOwner && args.test.result.outcome == \"failure\")\n {\n let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (applicableCharacteristics.includes(args.test.characteristicKey))\n this.actor.addCondition(\"stunned\")\n \n }\n "
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Ratte Fever",
|
||||
"name": "Fièvre du rongeur",
|
||||
"description": "<p>La très redoutée Fièvre du rongeur est transmise comme son nom l'indique, par des rongeurs infectés et cause des irritations douloureuses et des ulcérations avant que la fièvre ne monte et que le corps ne soit secoué de spasmes. Même si cette maladie est rarement fatale, elle est débilitante et il faut patienter longtemps avant de s'en remettre totalement. C'est pourquoi chacun cherchera à en atténuer les symptômes. Parmi les remèdes les plus connus, il y a, à Altdorf, l'auto-flagellation, réputée soulager toutes les infections cutanées. A Talabheim, on préconise de se recouvrir d'une mixture composée d'un mélange de fromage de chèvre relevé de poivre glacé importé de Kislev. Dans les villes et les cités les plus importantes, la Fièvre du rongeur est également connue sous le nom de Fièvre de la tourte, car il est notoire que, bien souvent, on remplace la viande la plus chère par du rat infecté dans ce genre de mets.</p>",
|
||||
"durationValue": "3d10+10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Accessible (+20) après un combat où vous avez été blessé par des rongeurs (dont les skavens) possédant le Trait Infecté, ou sur un échec d'un Test de Résistance Facile (+40) après qu'une source infectée est entrée en contact avec votre bouche.",
|
||||
"incubationValue": "3d10+5",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Blessé, Convulsions, Démangeaisons, Fièvre, Malaise, Persistant (Accessible)",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "NZTzhqDUMfcFyOK2",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Convulsions",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\nlet modifier = 0\n if (this.effect.label.includes(\"Modérée\"))\n modifier = -20\n else\n modifier = -10\n \n let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier += modifier\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier += modifier\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier += modifier\n }"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "0Tr1JZZBjSXaP6Sa",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Fièvre",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }",
|
||||
"otherEffects": [
|
||||
"blight",
|
||||
"wounded"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "PfGvYCS6yUbrcpYr",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Persistant (Accessible)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "QdZZlcWkKdwev0VI",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "i4ivBVyls07XXZ8h",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Démangeaisons",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\n\nif (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"skill\")\n {\n if (args.item.characteristic.key == \"fel\")\n args.prefillModifiers.modifier -= 10\n }"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "hUAPgI4Gb09zd1ut",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Blessé",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"symptom": true,
|
||||
"script": "if (this.actor.isOwner)\n {\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty : \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n fromUuid(\"Compendium.wfrp4e-core.diseases.kKccDTGzWzSXCBOb\").then(disease => {\n args.actor.createEmbeddedDocuments(\"Item\", [disease.toObject()])\n })\n })\n })\n }"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "The Bloody Flux",
|
||||
"name": "Flux Sanglant",
|
||||
"description": "<p>Le flux sanglant est un problème récurrent au sein de l'Empire et d'une manière générale, est considéré comme une malédiction infligée par les Dieux aux impies. Cette maladie infâme oblige la pauvre victime à se vider sans cesse. Le flux sanglant est endémique au sein des Armées de l'Etat, où il tue bien plus de soldats que les forces ennemies. Parmi les remèdes les plus fréquents, il y a l'ingurgitation de boudin pour remplacer les humeurs perdues, le bouchonnage et le massage des parties avec des substances grasses afin d'atténuer la douleur aigüe.</p>",
|
||||
"durationValue": "1d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test d'Endurance Facile (+40) après avoir ingéré de la matière infectée.",
|
||||
"incubationValue": "2d10",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Fièvre, Intoxication Alimentaire (Grave), Malaise, Nausée, Persistant (Intermédiaire)",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "Sc30lmNSCIJ0DGab",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Intoxication Alimentaire (Grave)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "DjYLhjvUbllWMrKk",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Persistent (Intermédiaire)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "KnlIy1IoRQ4KsvuV",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Fièvre",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }",
|
||||
"otherEffects": [
|
||||
"blight",
|
||||
"wounded"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "VBP4fo86uuFd6YiW",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "55OiJcxPalh86HH8",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Nausée",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "rollTest",
|
||||
"symptom": true,
|
||||
"script": "\nif (this.actor.isOwner && args.test.result.outcome == \"failure\")\n {\n let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (applicableCharacteristics.includes(args.test.characteristicKey))\n this.actor.addCondition(\"stunned\")\n \n }\n "
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Blood Rot",
|
||||
"name": "Infection du Sang",
|
||||
"description": "<p>Votre sang est infecté et votre coeur répand la maladie dans votre corps. Il est possible de vous soigner par l'intermédiaire de saignées, mais certains diktors préfèrent effectuer des incisions à un endroit très précis ayu niveau du cou pour expluser le sang contaminé et demandent au patient d'ingérer d'énormes quantité de sang sain pour remplacer celui qui a été perdu. Que le patient accepte ou np, ce remère, si aucun traitement n'est appliqué l'Infection du sang est mortelle et se concluera par une visite à la Guilde de Thanatopracteurs et du Culte de Morr.</p>",
|
||||
"durationValue": "1d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "C'est le développement d'une autre maladie, ou cela intervient après une Blessure critique?",
|
||||
"incubationValue": "0",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Toxine, Fièvre (Grave), Malaise",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "TH7hPoURLnjdJSSl",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Toxine",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"symptom": true,
|
||||
"script": "\n let difficulty = \"\"\n if (this.effect.label.includes(\"Modérée\"))\n difficulty = \"easy\"\n else if (this.effect.label.includes(\"Grave\"))\n difficulty = \"average\"\n else\n difficulty = \"veasy\"\n \n if (this.actor.isOwner)\n {\n args.actor.setupSkill(\"Résistance\", {context : {failure : args.actor.name + \" meurt de la Toxine\"}, absolute: {difficulty}, appendTitle : \" - Toxine\"}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"dead\")\n })\n })\n }"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "V2oU1zPnQR94HCJQ",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Fièvre (Grave)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }",
|
||||
"otherEffects": [
|
||||
"blight",
|
||||
"wounded"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "NHyxRtRt9rsjjz4r",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Minor Infection",
|
||||
"name": "Infection Mineure",
|
||||
"description": "<p>Les Infections mineures - des blessures guérissant lentement, qui n'enflent quasiment pas et ne provoquent pas de fièvre - sont trés répandues. La plupart guérissent d'elles-mêmes, donc peu de personnes s'en soucient réellement avant qu'il ne soit trop tard et que les Portes de Morr ne s'ouvrent.</p>",
|
||||
"durationValue": "1d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "sur un échec d'un Test de Résistance Très Facile (+60) après un combat où vous subi une BLessure critique.",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Blessé, Fièvre, Malaise, Persistant (Facile)",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "FLB8zGutyEQWgRlb",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Persistent (Facile)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "tf4IaDGr6PVsHl7w",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "TbXenWmw4yRg7qlf",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Blessé",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"symptom": true,
|
||||
"script": "if (this.actor.isOwner)\n {\n args.actor.setupSkill(\"Résistance\", {absolute: {difficulty : \"average\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n fromUuid(\"Compendium.wfrp4e-core.diseases.kKccDTGzWzSXCBOb\").then(disease => {\n args.actor.createEmbeddedDocuments(\"Item\", [disease.toObject()])\n })\n })\n })\n }"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "The Black Plague",
|
||||
"name": "Peste Noire",
|
||||
"description": "<p>Les historiens affirment qu'il y a des siècles de cela, les rats ont déferlé sur l'Empire et la Peste Noire s'ensuivit, décimant neuf âmes sur dix. Des recrudescences inexpliquées de cette horrible maladie apparaissent encore de nos Jours et sont systématiquement accompagnées de la présence des pragmatiques nonnes blanches. Le Culte de Shalllya a juré de faire tout ce qui était en son pouvoir pour éradiquer cette terrible maladie, et, en application de droits ancestraux qui lui sont conférés, des cordons sanitaires, délimités par des cordes blanches, sont déployées partout ou l'épidémie surgit, afin d'être certain que personne ne puisse entrer ou sortir de la zone de quarantaine. Et ce, jusqu'à ce que les corps ait été correctement traités.</p>",
|
||||
"durationValue": "3d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Effectuer un Test de Résistance Accessible (+20) pour chaque heure entamée passée dans la zone infectée, ou lorsque vous vous retrouvez en présence de fluides infectés.",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Minutes",
|
||||
"symptoms": "Bubons, Toxine (Modérée), Fièvre, Gangrène, Malaise",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "NKiIPNQehPO9eaxm",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Toxine (Modérée)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"symptom": true,
|
||||
"script": "\n let difficulty = \"\"\n if (this.effect.label.includes(\"Modérée\"))\n difficulty = \"easy\"\n else if (this.effect.label.includes(\"Grave\"))\n difficulty = \"average\"\n else\n difficulty = \"veasy\"\n \n if (this.actor.isOwner)\n {\n args.actor.setupSkill(\"Résistance\", {context : {failure : args.actor.name + \" meurt de la Toxine\"}, absolute: {difficulty}, appendTitle : \" - Toxine\"}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\")\n args.actor.addCondition(\"dead\")\n })\n })\n }"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "NcJoF1DR82jScspx",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Bubons",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\n let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item.key))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }\n "
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "BdDKgmnnXyID5l9r",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Fièvre",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "let applicableCharacteristics = [\"ws\", \"bs\", \"s\", \"fel\", \"ag\", \"t\", \"dex\"]\n if (args.type == \"weapon\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"characteristic\")\n {\n if (applicableCharacteristics.includes(args.item))\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (applicableCharacteristics.includes(args.item.characteristic.key))\n args.prefillModifiers.modifier -= 10\n }",
|
||||
"otherEffects": [
|
||||
"blight",
|
||||
"wounded"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "qNWBcG8TYO5QGmLk",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Gangrène",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\n if (args.type == \"characteristic\" && args.item == \"fel\")\n {\n if (args.item == \"fel\")\n args.prefillModifiers.modifier -= 10\n }\n else if (args.type == \"skill\")\n {\n if (args.item.characteristic.key == \"fel\")\n args.prefillModifiers.modifier -= 10\n }\n }"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "1J3ape1RdCwgziZe",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Malaise",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prepareData",
|
||||
"symptom": true,
|
||||
"script": "if (game.user.isUniqueGM)\n {\n let fatigued = args.actor.hasCondition(\"fatigued\")\n if (!fatigued)\n {\n args.actor.addCondition(\"fatigued\")\n ui.notifications.notify(\"Etat exténué ajouté à \" + args.actor.name + \" qui ne peut être enlevé tant que le Malaise est présent.\")\n }\n }\n "
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Packer's Pox",
|
||||
"name": "Vérole du Tanneur",
|
||||
"description": "<p>C'est une maladie très répandue parmi les chasseurs, les fourreurs et les marchands, transmises par les moutons et le bétail, respectivement par la laine et la peau, et par les cadavres de ceux qui sont morts de cette maladie. Elle se manifeste au départ par de légères démangeaisons, trés vite remplacées par des boursufflures roses qui vont se progager sur tout le corps, et particulièrement sur le torse et les bras. Ce n'est pas la forme de vérole la plus grave de l'Empire, mais elle persiste assez longtemps et peut quelquefois s'avérer mortelle.</p>",
|
||||
"durationValue": "5d10",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Facile (+40) après être entré en contact avec un animal, de la peau, ou des cadavres infectés.",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Démangeaisons, Persistant (Intermédiaire)",
|
||||
"permanent": "",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "1PIxT3ieQbomnHR5",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Persistent (Intermédiaire)",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "aHhqh3ReDbl1CC33",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Démangeaisons",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\n\nif (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"skill\")\n {\n if (args.item.characteristic.key == \"fel\")\n args.prefillModifiers.modifier -= 10\n }"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Itching Pox",
|
||||
"name": "Vérole Urticante",
|
||||
"description": "<p>Tous les ans, la plupart des villes et cités de l'Empire subissent une épidémie de Vérole urticante. La maladie, qui fait apparaître des boursuflures qui démangent sur la quasi-totalité du corps, reste relativement bénigne et ne provoque que très rarement des complications, et n'est donc un réel souci que pour les patients inquiets de nature et les nobliaux oisifs. La maladie est tellement répandue qu'on trouve dans la plupart des temples de Shallya des ampoules remplies de pâte blanche qui permettent de soulager les démangeaisons des malades.</p>",
|
||||
"durationValue": "1d10+7",
|
||||
"durationUnit": "Jours",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Accessible (+20) lorsque vous touchez une personne infectée ou que vous échouez à ce même Test après qu'un patient contagieux a toussé ou éternué juste à côté de vous (effectue un Test par heure)",
|
||||
"incubationValue": "1d10",
|
||||
"incubationUnit": "Jours",
|
||||
"symptoms": "Démangeaisons, Toux et éternuements",
|
||||
"permanent": "Vous ne pouvez pas l'attraper une seconde fois, si vous l'avez déjà contractée dans le passé.",
|
||||
"effects": [
|
||||
{
|
||||
"_id": "vgz3aqUkKvksDs7X",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Toux et éternuements",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"symptom": true
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "c9ty7yoIpDJfwDqo",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/diseases/disease.png",
|
||||
"label": "Démangeaisons",
|
||||
"transfer": true,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"symptom": true,
|
||||
"script": "\n\nif (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 10\n else if (args.type == \"skill\")\n {\n if (args.item.characteristic.key == \"fel\")\n args.prefillModifiers.modifier -= 10\n }"
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
"entries": [
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Toxine, Fièvre (Grave), Malaise",
|
||||
"duration": "1d10 jours",
|
||||
"id": "Blood Rot",
|
||||
"contraction": "C'est le développement d'une autre maladie, ou cela intervient après une Blessure critique?",
|
||||
"incubation": "instantanée",
|
||||
"name": "Infection du Sang",
|
||||
"description": "<p>Votre sang est infecté et votre coeur répand la maladie dans votre corps. Il est possible de vous soigner par l'intermédiaire de saignées, mais certains diktors préfèrent effectuer des incisions à un endroit très précis ayu niveau du cou pour expluser le sang contaminé et demandent au patient d'ingérer d'énormes quantité de sang sain pour remplacer celui qui a été perdu. Que le patient accepte ou np, ce remère, si aucun traitement n'est appliqué l'Infection du sang est mortelle et se concluera par une visite à la Guilde de Thanatopracteurs et du Culte de Morr.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Fièvre, Persistant (Facile), Malaise, Nausée",
|
||||
"duration": "1d10 jours",
|
||||
"id": "Bronze Fever",
|
||||
"contraction": "Si vous échouez à un Test d'Endurance Accessible (+20) après avoir été piqué par des Moustiques. Si du sang infecté est injecté ou absorbé, vous contractez la Fièvre Dorée automatiquement.",
|
||||
"incubation": "1d10 jours",
|
||||
"name": "Fièvre Dorée",
|
||||
"description": "<p>La Fièvre Dorée est fréquente dans le sud du Vieux Monde, dans les climats chauds et humides, où elle se propage par les piqûres d'insectes. La plupart des malades se rétablissent en quelques jours, mais dans de rares cas, elle peut entraîner des complications, voire la mort..</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Fièvre, Persistant (Intermédiaire), Malaise, Blessé",
|
||||
"duration": "1d10 jours",
|
||||
"id": "Festering Wound",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Facile (+40) après un combat vous ayant opposé à une créature avec le Trait Parasité. Vous pouvez également développer une infection à partir d'une Infection Mineure.",
|
||||
"incubation": "1d10 jours, ou instantanée si développée à partir d'autres symptômes.",
|
||||
"name": "Blessure Purulente",
|
||||
"description": "<p>Les coupures infectées et les égratignures sont monnaie courante, ce qui explique qu'il existe de nombreuses superstitions quant à la meilleure façon de les traiter. Les cataplasmes confectionnés à parti du fumier enveloppé dans des feuilles, la peau de crapaud, ou encore les plumes de colombe sont très répandus, tout comme le fait de frotter la blessure avec de la bonne terre de Sigmar. La plupart des médecins considèrent ces pratiques comme de pures âneries et vont préférer des remèdes plus scientifiques, comme le mélange de la bile d'un boeuf noir avec trois cuillères de l'urine du patient et une demi-cuillère de sel de mer, mixture ensuite appliquée sur la blessure purulente. Les hurlements qui suivent généralement cette application sont bien la preuve de son efficacité.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Intoxication Alimentaire (Modérée), Malaise, Nausée",
|
||||
"duration": "1d10 jours",
|
||||
"id": "Galloping Trots",
|
||||
"contraction": "Sur un échec d'un Test d'Endurance Facile (+40) après avoir ingurgité de la matière infectée.",
|
||||
"incubation": "1d10 heures",
|
||||
"name": "Courante Galopante",
|
||||
"description": "<p>On raconte que la nourriture des Halflings ne peut pas donner de Courante Galopante, une maladie peu râgoutante et malheureusement trop répandue au sein de l'Empire à cause du manque de soins apportés à la préparation de la nourriture. Même si ceux souffrant de Vengeance des Rumsters après avoir ingurgité des Tourtes bon marché des Halflings vendues à Altdorf vous diront le contraire, s'ils peuvent quitter les toilettes assez longtemps...</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "Vous ne pouvez pas l'attraper une seconde fois, si vous l'avez déjà contractée dans le passé.",
|
||||
"symptoms": "Démangeaisons, Toux et éternuements",
|
||||
"duration": "1d10+7 jours",
|
||||
"id": "Itching Pox",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Accessible (+20) lorsque vous touchez une personne infectée ou que vous échouez à ce même Test après qu'un patient contagieux a toussé ou éternué juste à côté de vous (effectue un Test par heure)",
|
||||
"incubation": "1d10 jours",
|
||||
"name": "Vérole Urticante",
|
||||
"description": "<p>Tous les ans, la plupart des villes et cités de l'Empire subissent une épidémie de Vérole urticante. La maladie, qui fait apparaître des boursuflures qui démangent sur la quasi-totalité du corps, reste relativement bénigne et ne provoque que très rarement des complications, et n'est donc un réel souci que pour les patients inquiets de nature et les nobliaux oisifs. La maladie est tellement répandue qu'on trouve dans la plupart des temples de Shallya des ampoules remplies de pâte blanche qui permettent de soulager les démangeaisons des malades.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Blessé, Fièvre, Malaise, Persistant (Facile)",
|
||||
"duration": "1d10 jours",
|
||||
"id": "Minor Infection",
|
||||
"contraction": "sur un échec d'un Test de Résistance Très Facile (+60) après un combat où vous subi une BLessure critique.",
|
||||
"incubation": "1d10 jours",
|
||||
"name": "Infection Mineure",
|
||||
"description": "<p>Les Infections mineures - des blessures guérissant lentement, qui n'enflent quasiment pas et ne provoquent pas de fièvre - sont trés répandues. La plupart guérissent d'elles-mêmes, donc peu de personnes s'en soucient réellement avant qu'il ne soit trop tard et que les Portes de Morr ne s'ouvrent.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Démangeaisons, Persistant (Intermédiaire)",
|
||||
"duration": "5d10 jours",
|
||||
"id": "Packer's Pox",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Facile (+40) après être entré en contact avec un animal, de la peau, ou des cadavres infectés.",
|
||||
"incubation": "1d10 jours",
|
||||
"name": "Vérole du Tanneur",
|
||||
"description": "<p>C'est une maladie très répandue parmi les chasseurs, les fourreurs et les marchands, transmises par les moutons et le bétail, respectivement par la laine et la peau, et par les cadavres de ceux qui sont morts de cette maladie. Elle se manifeste au départ par de légères démangeaisons, trés vite remplacées par des boursufflures roses qui vont se progager sur tout le corps, et particulièrement sur le torse et les bras. Ce n'est pas la forme de vérole la plus grave de l'Empire, mais elle persiste assez longtemps et peut quelquefois s'avérer mortelle.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Blessé, Convulsions, Démangeaisons, Fièvre, Malaise, Persistant (Accessible)",
|
||||
"duration": "3d10+10 jours",
|
||||
"id": "Ratte Fever",
|
||||
"contraction": "Sur un échec d'un Test de Résistance Accessible (+20) après un combat où vous avez été blessé par des rongeurs (dont les skavens) possédant le Trait Infecté, ou sur un échec d'un Test de Résistance Facile (+40) après qu'une source infectée est entrée en contact avec votre bouche.",
|
||||
"incubation": "3d10+5 jours",
|
||||
"name": "Fièvre du rongeur",
|
||||
"description": "<p>La très redoutée Fièvre du rongeur est transmise comme son nom l'indique, par des rongeurs infectés et cause des irritations douloureuses et des ulcérations avant que la fièvre ne monte et que le corps ne soit secoué de spasmes. Même si cette maladie est rarement fatale, elle est débilitante et il faut patienter longtemps avant de s'en remettre totalement. C'est pourquoi chacun cherchera à en atténuer les symptômes. Parmi les remèdes les plus connus, il y a, à Altdorf, l'auto-flagellation, réputée soulager toutes les infections cutanées. A Talabheim, on préconise de se recouvrir d'une mixture composée d'un mélange de fromage de chèvre relevé de poivre glacé importé de Kislev. Dans les villes et les cités les plus importantes, la Fièvre du rongeur est également connue sous le nom de Fièvre de la tourte, car il est notoire que, bien souvent, on remplace la viande la plus chère par du rat infecté dans ce genre de mets.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Bubons, Toxine (Modérée), Fièvre, Gangrène, Malaise",
|
||||
"duration": "3d10 jours",
|
||||
"id": "The Black Plague",
|
||||
"contraction": "Effectuer un Test de Résistance Accessible (+20) pour chaque heure entamée passée dans la zone infectée, ou lorsque vous vous retrouvez en présence de fluides infectés.",
|
||||
"incubation": "1d10 Minutes",
|
||||
"name": "Peste Noire",
|
||||
"description": "<p>Les historiens affirment qu'il y a des siècles de cela, les rats ont déferlé sur l'Empire et la Peste Noire s'ensuivit, décimant neuf âmes sur dix. Des recrudescences inexpliquées de cette horrible maladie apparaissent encore de nos jours et sont systématiquement accompagnées de la présence des pragmatiques nonnes blanches. Le Culte de Shalllya a juré de faire tout ce qui était en son pouvoir pour éradiquer cette terrible maladie, et, en application de droits ancestraux qui lui sont conférés, des cordons sanitaires, délimités par des cordes blanches, sont déployées partout ou l'épidémie surgit, afin d'être certain que personne ne puisse entrer ou sortir de la zone de quarantaine. Et ce, jusqu'à ce que les corps ait été correctement traités.</p>"
|
||||
},
|
||||
{
|
||||
"permanent": "",
|
||||
"symptoms": "Fièvre, Intoxication Alimentaire (Grave), Malaise, Nausée, Persistant (Intermédiaire)",
|
||||
"duration": "1d10 jours",
|
||||
"id": "The Bloody Flux",
|
||||
"contraction": "Sur un échec d'un Test d'Endurance Facile (+40) après avoir ingéré de la matière infectée.",
|
||||
"incubation": "2d10 jours",
|
||||
"name": "Flux Sanglant",
|
||||
"description": "<p>Le flux sanglant est un problème récurrent au sein de l'Empire et d'une manière générale, est considéré comme une malédiction infligée par les Dieux aux impies. Cette maladie infâme oblige la pauvre victime à se vider sans cesse. Le flux sanglant est endémique au sein des Armées de l'Etat, où il tue bien plus de soldats que les forces ennemies. Parmi les remèdes les plus fréquents, il y a l'ingurgitation de boudin pour remplacer les humeurs perdues, le bouchonnage et le massage des parties avec des substances grasses afin d'atténuer la douleur aigüe.</p>"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -28,7 +28,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 5\n\n else if (args.type == \"skill\") {\n if (args.item.characteristic.value == \"fel\")\n args.prefillModifiers.modifier -= 5\n }"
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 5\n\n else if (args.type == \"skill\") {\n if (args.item.data.characteristic.value == \"fel\")\n args.prefillModifiers.modifier -= 5\n }"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/amputatedear.png",
|
||||
@ -137,7 +137,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/amputatedfoot.png",
|
||||
@ -410,7 +410,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 5\n\n else if (args.type == \"skill\") {\n if (args.item.characteristic.value == \"fel\")\n args.prefillModifiers.modifier -= 5\n }"
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"fel\")\n args.prefillModifiers.modifier -= 5\n\n else if (args.type == \"skill\") {\n if (args.item.data.characteristic.value == \"fel\")\n args.prefillModifiers.modifier -= 5\n }"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/amputatedeye.png",
|
||||
@ -443,7 +443,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/amputatedleg.png",
|
||||
@ -546,7 +546,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/broken-leg.png",
|
||||
@ -643,7 +643,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/broken-body.png",
|
||||
@ -745,7 +745,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/broken-leg.png",
|
||||
@ -856,7 +856,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/broken-body.png",
|
||||
@ -953,7 +953,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
@ -1103,7 +1103,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "prePrepareData",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "args.actor.details.move.value /= 2"
|
||||
"script": "args.actor.data.data.details.move.value /= 2"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/injuries/tornleg.png",
|
||||
|
File diff suppressed because one or more lines are too long
@ -55,10 +55,10 @@
|
||||
{
|
||||
"description": "",
|
||||
"effects": {
|
||||
"label0": "Formication"
|
||||
"label0": "Fornication"
|
||||
},
|
||||
"id": "Crawling Skin",
|
||||
"name": "Formication"
|
||||
"name": "Fornication"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
|
@ -23,8 +23,8 @@
|
||||
{
|
||||
"description": "<p>Vous énoncez l'une des énigmes de Ranald concernant des portails, s'ils existent ou pas lorsqu'ils sont fermés. L'un des systèmes de verrouillage d'une porte, une fenêtre ou d'une trappe ciblée cède : une serrure se déverouille, un loquet se débloque, une corde se détache. Pour chaque +2 DR, vous pouvez cibler un autre système de verrouillage de la porte, fenêtre ou trappe.</p>",
|
||||
"effects": [],
|
||||
"id": "An Invitation",
|
||||
"name": "Invitation"
|
||||
"id": "An Invitation ",
|
||||
"name": "Invitation "
|
||||
},
|
||||
{
|
||||
"description": "<p>Vos prières sincères à Shallya accordent à la cible la force de résister. La cible ne ressent aucune douleur, et ne subit aucune pénalité causée par les Etats.</p>",
|
||||
@ -67,7 +67,7 @@
|
||||
"description": "<p>En demandant à Verena d'être votre témoin, la véracité de vos paroles est évidente pour tous. Pour la durée du Miracle, à condition que vous ne disiez que la vérité, tous les auditeurs croiront ce que vous dites. Evidemment, cela ne signifie pas qu'ils seront d'accord avec vos conclusions.</span> </p>",
|
||||
"effects": [],
|
||||
"id": "As Verena is My Witness",
|
||||
"name": "Verena est mon témoin"
|
||||
"name": "Véréna est mon témoin"
|
||||
},
|
||||
{
|
||||
"description": "<p>Vous faites appel à Shallya pour apaiser les esprits tourmentés de vos cibles. Tout les Traits de Psychologie sont retirés pour la durée du Miracle et les cibles plongent ensuite dans un sommeil profond et réparateur jusqu'au lever de soleil suivant, en supposant qu'elles ne soient pas dérangées. Des cibles non volontaires peuvent effectyuer un <strong>Test de Calme Intermédiaire (+0)</strong> pour résister au sommeil.</p>",
|
||||
@ -135,7 +135,7 @@
|
||||
"description": "<p>Vous volez le vent des voiles d'un navire ou d'un bateau. Il est complètement encalaminé. Même en cas de tempêtes, des eaux étrangement calmes et lisses entoure le vaisseau tandis que des vents violents, des pluies cinglantes et des crêtes imposantes s'élèvent et s'écrasent tout autour de lui. Cette zone de calme s'étend autour du vaisseau sur une distance en mètre égale au Bonus d'Initiative, et si le navire est propulsé par un autre moyen, tel que des rames, la zone se déplace avec lui.</p>",
|
||||
"effects": [],
|
||||
"id": "Becalm",
|
||||
"name": "Encalminé"
|
||||
"name": "Encalaminé"
|
||||
},
|
||||
{
|
||||
"description": "<p>En réponse à vos prières, Shallya aspire un poison ou une maladie de la cible, le retirant complètement de son organisme. Pour chaque +2 DR, vous pouvez purger une autre maladie ou poison. Pour chaque poison retiré ou maladie guérie de cette manière, vous subissez un nombre de Points de Blessures égale à 1d10 - votre Bonus de Sociabilité, non modifié par votre Bonus d'Endurance ou vos PA.</p>",
|
||||
@ -166,13 +166,13 @@
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
"label": "Soleil flamboyant",
|
||||
"label": "Ardent Soleil",
|
||||
"tint": "",
|
||||
"transfer": false
|
||||
}
|
||||
],
|
||||
"id": "Blazing Sun",
|
||||
"name": "Soleil flamboyant"
|
||||
"name": "Ardent Soleil"
|
||||
},
|
||||
{
|
||||
"description": "<p>Votre cible gagne +10 en CC.</p>",
|
||||
@ -224,7 +224,7 @@
|
||||
{
|
||||
"key": "data.characteristics.fel.modifier",
|
||||
"mode": 2,
|
||||
"value": "10"
|
||||
"value": ""
|
||||
}
|
||||
],
|
||||
"disabled": false,
|
||||
@ -306,7 +306,7 @@
|
||||
{
|
||||
"key": "data.characteristics.dex.modifier",
|
||||
"mode": 2,
|
||||
"value": "10"
|
||||
"value": ""
|
||||
}
|
||||
],
|
||||
"disabled": false,
|
||||
@ -443,7 +443,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "let wounds = args.actor.status.wounds\n\nif (wounds.value < wounds.max)\n args.actor.update({\"data.status.wounds.value\" : wounds.value + 1})"
|
||||
"script": "let wounds = args.actor.data.data.status.wounds\n\nif (wounds.value < wounds.max)\n args.actor.update({\"data.status.wounds.value\" : wounds.value + 1})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/blessings.png",
|
||||
@ -554,7 +554,7 @@
|
||||
"description": "<p>Votre cible peut retirer 1 Etat.</p>",
|
||||
"effects": [],
|
||||
"id": "Blessing of Tenacity",
|
||||
"name": "Bénédiction de Ténacité"
|
||||
"name": "Bénédiction de Tenacité"
|
||||
},
|
||||
{
|
||||
"description": "<p>Votre cible gagne +10 en Capacité de Tir.</p>",
|
||||
@ -698,7 +698,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.has(\"Mort-vivant\"))\n{\n let damage = (await new Roll(\"1d10\")).roll({async: false}).total\n args.actor.applyBasicDamage(damage, {damageType : game.wfrp4e.config.DAMAGE_TYPE.IGNORE_ALL})\n}"
|
||||
"script": "if (args.actor.data.traits.find(t => t.name == \"Mort-vivant\"))\n{\n let damage = new Roll(\"1d10\").roll().total\n args.actor.applyBasicDamage(damage, {damageType : game.wfrp4e.config.DAMAGE_TYPE.IGNORE_ALL})\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -753,7 +753,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.psychologies.5hH73j2NgPdsLCZN\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.psychologies.5hH73j2NgPdsLCZN\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -802,7 +802,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.J9MK0AIaTbvd5oF6\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.J9MK0AIaTbvd5oF6\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -839,7 +839,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "if (args.actor.has(\"Mort-vivant\") && args.actor.has(\"Construct\"))\n args.actor.addCondition(\"dead\")"
|
||||
"script": "if (args.actor.data.traits.find(t => t.name == \"Mort-vivant\") && args.actor.data.traits.find(t => t.name == \"Construct\"))\n args.actor.addCondition(\"dead\")"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -898,7 +898,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.CV9btQn09S9Fn8Jk\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.CV9btQn09S9Fn8Jk\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -920,7 +920,7 @@
|
||||
"description": "<p>Vous implorez Mannan de vous fournir de la nourriture. En restant dans un plan d'eau, vous attrapez suffisament de poisson pour nourrir 1 personne; si c'est en mer, vous en obtenez suffisamment pour 2 personnes. Pour chaque +2 DR vous pouvez nourrir une autre personne.</p>",
|
||||
"effects": [],
|
||||
"id": "Manann's Bounty",
|
||||
"name": "Générosité de Manann"
|
||||
"name": "Générosité de Mannan"
|
||||
},
|
||||
{
|
||||
"description": "<p>Vous entonnez des Prières sur le besoin de Shallya de supporter la douleur du monde. Vous recevez tous les Dégâts subis en principe par vos cibles. Si vous prenez des Dégâts à cause de ce Miracle, votre Bonus d'Endurance est doublé pour le calcul des Points de Blessure subis à cause de ces Dégâts.</p>",
|
||||
@ -969,7 +969,7 @@
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
"label": "Grâce de Ranald",
|
||||
"label": "Grace de Ranald",
|
||||
"tint": "",
|
||||
"transfer": false
|
||||
},
|
||||
@ -989,7 +989,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.g4Q6AtzZuo5iIvD4\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.talents.g4Q6AtzZuo5iIvD4\").then(item => {\n args.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -999,7 +999,7 @@
|
||||
}
|
||||
],
|
||||
"id": "Ranald's Grace",
|
||||
"name": "Grâce de Ranald"
|
||||
"name": "Grace de Ranald"
|
||||
},
|
||||
{
|
||||
"description": "<p>Posant les mains à terre, vous psalmodiez une Prière pour Rhya réclamant son aide pour mieux comprendre son Royaume. Ce Miracle peut seulement être invoqué à l'extérieur, en dehors des zones habitées. Vous ressentez la présence et le passage de toutes créatures conscientes dans un rayon de (Sociabilité) mètres. Chaque + 2 DR étend la zone d'effet de +(Sociabilité) mètres.</p>",
|
||||
@ -1105,7 +1105,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "prepareData",
|
||||
"script": "let AP = args.actor.status.armour\n\nAP[\"head\"].value += 1\nAP[\"rArm\"].value += 1\nAP[\"lArm\"].value += 1\nAP[\"body\"].value += 1\nAP[\"lLeg\"].value += 1\nAP[\"rLeg\"].value += 1"
|
||||
"script": "let AP = args.actor.data.AP\n\nAP[\"head\"].value += 1\nAP[\"rArm\"].value += 1\nAP[\"lArm\"].value += 1\nAP[\"body\"].value += 1\nAP[\"lLeg\"].value += 1\nAP[\"rLeg\"].value += 1"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -1142,17 +1142,17 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"script": "let damage = (await new Roll(\"1d10\")).roll({async: false}).total\n args.actor.applyBasicDamage(damage, {damageType : game.wfrp4e.config.DAMAGE_TYPE.IGNORE_ALL})\n\nif (args.actor.has(\"Mort-vivant\") || args.actor.data.has(\"Démoniaque\"))\n{\n args.actor.addCondition(\"ablaze\")\n}"
|
||||
"script": "let damage = new Roll(\"1d10\").roll().total\n args.actor.applyBasicDamage(damage, {damageType : game.wfrp4e.config.DAMAGE_TYPE.IGNORE_ALL})\n\nif (args.actor.data.traits.find(t => t.name == \"Mort-vivant\") || args.actor.data.traits.find(t => t.name == \"Démoniaque\"))\n{\n args.actor.addCondition(\"ablaze\")\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
"label": "Feu de l'âme",
|
||||
"label": "Soufre",
|
||||
"tint": "",
|
||||
"transfer": false
|
||||
}
|
||||
],
|
||||
"id": "Soulfire",
|
||||
"name": "Feu de l'âme"
|
||||
"name": "Soufre"
|
||||
},
|
||||
{
|
||||
"description": "<p>Si vous portez une lance, elle gagne l'atout <em>Percutante</em>, et est considérée comme Magique.</p>",
|
||||
@ -1235,7 +1235,7 @@
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.traits.pLW9SVX0TVTYPiPv\").then(item => {\n item.specification.value = 3\n this.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.traits.AtpAudHA4ybXVlWM\").then(item => {\n item.specification.value = 4\n this.actor.createEmbeddedEntity(\"OwnedItem\", item)\n})"
|
||||
"script": "fromUuid(\"Compendium.wfrp4e-core.traits.pLW9SVX0TVTYPiPv\").then(item => {\n item.data.data.specification.value = 3\n this.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})\n\nfromUuid(\"Compendium.wfrp4e-core.traits.AtpAudHA4ybXVlWM\").then(item => {\n item.data.data.specification.value = 4\n this.actor.createEmbeddedEntity(\"OwnedItem\", item.data)\n})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -1251,7 +1251,7 @@
|
||||
"description": "<p>Vous entonnez des Prières sur la capacité de Verena à trouver la vérité. Vous pouvez poser une seule question aux cibles. Elles y répondront immédiatement, sincèrement et entièrement. Les cibles peuvent tenter de résister en contestant votre DR avec un <strong>Test de Calme Accessible (+20)</strong>. Sur un succès, elles peuvent refuser obstinément de répondre. Si elles obtiennent un +2 DR, elles peuvent cacher des informations mineures, +4 DR leur permet de dissimuler des informations importantes alors que +6 DR leur permet de mentir ouvertement. Vous saurez si elles résistent avec succès, même si vous manquerez d'informations sur l'ampleur de leur tromperie ou de preuve de leur malhonnêteté.</p>",
|
||||
"effects": [],
|
||||
"id": "Truth Will Out",
|
||||
"name": "La Vérité éclatera"
|
||||
"name": "La Vérité Eclatera"
|
||||
},
|
||||
{
|
||||
"description": "<p>Vous invoquez des litanies pour Sigmar, faisant appel à lui pour châtier ses ennemis. Une comète à Deux Queues, laissant une traînée de feu dans son sillage, tombe du ciel pour frapper un point dans la Ligne de Vue et dans la zone d'effet. Tout ce qui se trouve dans un rayon de (Bonus de Sociabilité) mètres du point d'impact subit 1d10 + DR Dégâts, qui ignorent le Bonus d'Endurance et les PA, et gagne l'Etat <em>Enflammé</em>. L'endroit ciblé doit se trouver à l'extérieur, et peut seulement cibler que ceux que Sigmar jugerait être des ennemis.</p>",
|
||||
@ -1277,13 +1277,13 @@
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
"label": "Comète à Deux-Queues",
|
||||
"label": "Comètes à Deux-Queues",
|
||||
"tint": "",
|
||||
"transfer": false
|
||||
}
|
||||
],
|
||||
"id": "Twin-tailed Comet",
|
||||
"name": "Comète à Deux-Queues"
|
||||
"name": "Comètes à Deux-Queues"
|
||||
},
|
||||
{
|
||||
"description": "<p>Vous psalmodiez frénétiquement les Prières et la férocité d'Ulric se répand. Les cibles gagnent le Trait de créature <em>Frénésie</em>.</p>",
|
||||
@ -1334,7 +1334,7 @@
|
||||
"wfrp4e": {
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"int\")\n {\n args.prefillModifiers.modifier += 20\n }\n else if (args.type == \"skill\")\n {\n if (args.item.characteristic.value == \"int\")\n args.prefillModifiers.modifier += 20\n }"
|
||||
"script": "if (args.type == \"characteristic\" && args.item == \"int\")\n {\n args.prefillModifiers.modifier += 20\n }\n else if (args.type == \"skill\")\n {\n if (args.item.data.characteristic.value == \"int\")\n args.prefillModifiers.modifier += 20\n }"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/prayers/miracles.png",
|
||||
@ -1350,7 +1350,7 @@
|
||||
"description": "<p>Vous énoncez une énigme complexe concernant la réalité de ce qui ne peut être perçu. Les cibles affectées par ce Miracle peuvent passer inaperçues, à condition qu'elles n'attirent pas l'attention sur elles, en touchant, attaquant, appelant quelqu'un, lancer un Sort ou en faisant du bruit. Vous pouvez invoquer ce Miracle uniquement si personne ne vous regarde directement.</p>",
|
||||
"effects": [],
|
||||
"id": "You Ain’t Seen Me, Right?",
|
||||
"name": "Vous ne m'avez pas vu, n'est ce pas ?"
|
||||
"name": "Vous ne m'avez pas vu, N'est ce pas ?"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -3,7 +3,7 @@
|
||||
"entries": [
|
||||
{
|
||||
"id": "Animal Care",
|
||||
"name": "Soin aux animaux",
|
||||
"name": "Soins aux animaux",
|
||||
"description": "<p>La Compétence Soin aux animaux vous permet de vous occuper des animaux et de les soigner quand ils tombent malades ou sont blessés</p>\n <p>Posséder une seule Augmentation en Soin aux animaux signifie que vous pouvez garder les animaux en bonne santé sans avoir besoin de faire de Test. Vous pouvez également effectuer un Test de Soin aux animaux pour identifier et résoudre des problèmes avec les animaux tels que :</p>\n <p> </p>\n <p>• Déceler une maladie.</p>\n <p>• Comprendre les raisons de la désobéissance ou de l'inconfort.</p>\n <p>• Déterminer les caractéristiques de l'animal.</p>\n <p>• Guérir un nombre de blessures égal au Bonus d'Intelligence + DR (Remarque : un animal ne peut bénéficier que d'un lancer de Guérison après chaque rencontre).</p>\n <p>• Stopper un Etat Hémorragique.</p>\n <p>• Préparer l'animal pour une démonstration.</p>\n <p> </p>\n <p>En combat, vous pouvez évaluer un animal ennemi avec Test de Soin aux animaux. Sur un succès, vous, et tous ceux que vous en informez, gagnez +10 pour toucher lorsque vous attaquez cet animal — ou quiconque l'utilise comme monture — jusqu'à la fin de votre prochain tour, car vous remarquez un harnachement détaché, une boiterie causée par une blessure mineure, ou mettez en lumière n'importe quelle autre faiblesse ou vulnérabilité. Soin aux animaux ne peut fournir qu'un maximum de +10 pour toucher par animal, quel que soit le nombre de Tests effectués pour déceler une faiblesse.</p>\n <p> </p>\n <h3>Animaux</h3>\n <p>C'est au MJ de décider si Soin aux animaux et Dressage fonctionnent ou non avec une créature. Alors que pour certaines - chien, cheval, hippogriffe - la réponse semble évidente, pour d'autres, ça l'est beaucoup moins. Vous pouvez débattre sur le fait qu'un dragon pourrait ou non bénéficier de Dressage, mais essayez d'expliquer ça au dragon en question...</p>"
|
||||
},
|
||||
{
|
||||
@ -23,8 +23,8 @@
|
||||
},
|
||||
{
|
||||
"id": "Animal Training (Demigryph)",
|
||||
"name": "Dressage (Demigriffon)",
|
||||
"description": "<p>Dressage représente votre compréhension d'un Demigriffon, et votre capacité à l'entraîner. Une utilisation réussie de cette Compétence vous permet d'identifier les capacités Entraînées possédées par un Pégase. La Compétence Dressage permet aussi d'entreprendre l'Activité Dressage entre deux aventures.</p>\n<p> </p>\n<p>En combat, un Test opposé de Dressage/Force Mentale réussi vous permet d'intimider un seul Demigriffon; vous instillez la peur chez l'Demigriffon ciblé jusqu'à la fin de votre prochain tour. Quand vous insufflez la peur de cette façon, vous pouvez par la suite utiliser votre compétence Dressage au lieu de Corps à corps quand vous vous défendez contre votre cible ; avec l'accord du MJ, vous pouvez aussi utiliser Dressage pour attaquer votre cible, en donnant des instructions spécifiques.</p>\n<p> </p>\n<h3><span style=\"text-decoration: underline;\">Animaux</span></h3>\n<p>C'est au MJ de décider si Soin aux animaux et Dressage fonctionnent ou non avec une créature. Alors que pour certaines - chien, cheval, Demigriffon - la réponse semble évidente, pour d'autres, ça l'est beaucoup moins. Vous pouvez débattre sur le fait qu'un dragon pourrait ou non bénéficier de Dressage, mais essayez d'expliquer ça au dragon en question...</p>\n<p> </p>\n<p><strong>Example</strong>: <em>Affrontant un chein de guerre affamé, Ilse réussi un Test opposé de Dressage (Chien) au premier round de combat, en faisant peur à la bête et gagnant +1 Avantage. Pendant le round suivant, elle ‘attaque’ sa cible avec sa Compétence Dressage, contournant la défense du chien. Son MJ lui permet d'ordonner à la bête de fuir, ce qu'elle fait, la queue entre les jambes. </em></p>"
|
||||
"name": "Dressage (Hippogriffe)",
|
||||
"description": "<p>Dressage représente votre compréhension d'un hippogriffe, et votre capacité à l'entraîner. Une utilisation réussie de cette Compétence vous permet d'identifier les capacités Entraînées possédées par un Hippogriffe. La Compétence Dressage permet aussi d'entreprendre l'Activité Dressage entre deux aventures.</p>\n<p> </p>\n<p>En combat, un Test opposé de Dressage/Force Mentale réussi vous permet d'intimider un seul hippogriffe; vous instillez la peur chez l'hippogriffe ciblé jusqu'à la fin de votre prochain tour. Quand vous insufflez la peur de cette façon, vous pouvez par la suite utiliser votre compétence Dressage au lieu de Corps à corps quand vous vous défendez contre votre cible ; avec l'accord du MJ, vous pouvez aussi utiliser Dressage pour attaquer votre cible, en donnant des instructions spécifiques.</p>\n<p> </p>\n<h3><span style=\"text-decoration: underline;\">Animaux</span></h3>\n<p>C'est au MJ de décider si Soin aux animaux et Dressage fonctionnent ou non avec une créature. Alors que pour certaines - chien, cheval, hippogriffe - la réponse semble évidente, pour d'autres, ça l'est beaucoup moins. Vous pouvez débattre sur le fait qu'un dragon pourrait ou non bénéficier de Dressage, mais essayez d'expliquer ça au dragon en question...</p>\n<p> </p>\n<p><strong>Example</strong>: <em>Affrontant un chein de guerre affamé, Ilse réussi un Test opposé de Dressage (Chien) au premier round de combat, en faisant peur à la bête et gagnant +1 Avantage. Pendant le round suivant, elle ‘attaque’ sa cible avec sa Compétence Dressage, contournant la défense du chien. Son MJ lui permet d'ordonner à la bête de fuir, ce qu'elle fait, la queue entre les jambes. </em></p>"
|
||||
},
|
||||
{
|
||||
"id": "Animal Training (Dog)",
|
||||
@ -62,7 +62,7 @@
|
||||
"description": "<p>Créez des œuvres d'art avec le moyen d'expression de votre choix. Ne pas avoir accès aux Outils de la profession appropriés entraînera une pénalité à vos Tests. Le DR obtenu détermine la qualité de l'œuvre finale. Un Test étendu peut être nécessaire pour la réalisation d'une œuvre d'art complexe ou de grande taille. La Compétence Art est peu utilisée en combat, mais les bustes de marbre peuvent faire de formidables armes improvisées.</p>\n<p> </p>\n<p><span style=\"font-weight: bold;\">Spécialisations : </span>Cartographie, Gravure, Mosaïque, Peinture, Sculpture, Tatouage, Tissage </p>\n<p> </p>\n<p><strong>Exemple</strong> : <em>Irina a reçu une commande pour peindre le portrait d'un noble local, dont son groupe cherche à obtenir les faveurs. Son MJ décide que cela nécessite un total de 10 DR à un Test étendu d'Art, et chaque Test représente une semaine de travail.</em></p>"
|
||||
},
|
||||
{
|
||||
"id": "Art (Cartography)",
|
||||
"id": "Art (Cartogrpahy)",
|
||||
"name": "Art (Cartographie)",
|
||||
"description": "<p>Créez des œuvres d'art en cartographie. Ne pas avoir accès aux Outils de la profession appropriés entraînera une pénalité à vos Tests. Le DR obtenu détermine la qualité de l'œuvre finale. Un Test étendu peut être nécessaire pour la réalisation d'une œuvre d'art complexe ou de grande taille. La Compétence Art est peu utilisée en combat, mais les bustes de marbre peuvent faire de formidables armes improvisées.</p>\n<p> </p>\n<p><strong>Example</strong> :<em> Irina a reçu une commande pour peindre le portrait d'un noble local, dont son groupe cherche à obtenir les faveurs. Son MJ décide que cela nécessite un total de 10 DR à un Test étendu d'Art, et chaque Test représente une semaine de travail. </em></p>\n<p> </p>"
|
||||
},
|
||||
@ -88,7 +88,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Art (Tattoo)",
|
||||
"name": "Art (Tatouage)",
|
||||
"name": "Art (Tattouage)",
|
||||
"description": "<p>Créez des œuvres d'art en tattouage. Ne pas avoir accès aux Outils de la profession appropriés entraînera une pénalité à vos Tests. Le DR obtenu détermine la qualité de l'œuvre finale. Un Test étendu peut être nécessaire pour la réalisation d'une œuvre d'art complexe ou de grande taille. La Compétence Art est peu utilisée en combat, mais les bustes de marbre peuvent faire de formidables armes improvisées.</p>\n<p> </p>\n<p><strong>Example</strong> :<em> Irina a reçu une commande pour peindre le portrait d'un noble local, dont son groupe cherche à obtenir les faveurs. Son MJ décide que cela nécessite un total de 10 DR à un Test étendu d'Art, et chaque Test représente une semaine de travail. </em></p>\n<p> </p>"
|
||||
},
|
||||
{
|
||||
@ -218,8 +218,8 @@
|
||||
},
|
||||
{
|
||||
"id": "Entertain (Comedy)",
|
||||
"name": "Divertissement (Interprétation)",
|
||||
"description": "<p>Cette Compétence vous permet de ravir les foules par la parole, peut-être en chantant, en jouant la comédie ou en faisant quelques blagues. Une utilisation réussie de la Compétence Divertissement signifie que vous avez assez amusé les spectateurs alentour pour qu'ils vous écoutent ; le DR indique à quel point vous avez réussi.</p>\n<p>En combat, il est peu probable que Divertissement soit d'une grande utilité, bien que vous puissiez trouver une façon intéressante d'utiliser Divertissement(Interprétation) pour troubler ou leurrer vos adversaires.</p>"
|
||||
"name": "Divertissement (Comédie)",
|
||||
"description": "<p>Cette Compétence vous permet de ravir les foules par la parole, peut-être en chantant, en jouant la comédie ou en faisant quelques blagues. Une utilisation réussie de la Compétence Divertissement signifie que vous avez assez amusé les spectateurs alentour pour qu'ils vous écoutent ; le DR indique à quel point vous avez réussi.</p>\n<p>En combat, il est peu probable que Divertissement soit d'une grande utilité, bien que vous puissiez trouver une façon intéressante d'utiliser Divertissement(Comédie) pour troubler ou leurrer vos adversaires.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Entertain (Singing)",
|
||||
@ -328,7 +328,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Language (Mootish)",
|
||||
"name": "Langue (Halfling)",
|
||||
"name": "Langue (Mootland)",
|
||||
"description": "<p>La Compétence Langue indique votre aisance avec différentes langues. Tous les Personnages sont considérés comme capables de parler le « reikspiel » - la langue de l'Empire - et leur langue maternelle (si votre Personnage en possède une différente du reikspiel), sans avoir besoin de faire de Test. Si votre partie ne se déroule pas dans l'Empire, remplacez le reikspiel par la langue locale.</p>\n<p> </p>\n<p>Si vous possédez l'une de ces Compétences, vous êtes généralement capable de vous faire comprendre dans cette langue, ou de comprendre des concepts simples. Vous serez amené à faire un Test de votre Compétence de Langue quand un concept particulièrement difficile doit être transmis, ou qu'un dialecte ou vocabulaire obscur est utilisé.</p>\n<p> </p>\n<p><span style=\"font-weight: bold;\">Halfling </span><strong>: </strong>Parlée par le peuple du Moot ; la grande province halfling de l'Empire. Cette langue est peu connue en dehors du Moot.</p>"
|
||||
},
|
||||
{
|
||||
@ -348,7 +348,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Language (Thieves Tongue)",
|
||||
"name": "Langue (Voleur)",
|
||||
"name": "Langue (Langage des voleurs)",
|
||||
"description": "<p>La Compétence Langue indique votre aisance avec différentes langues. Tous les Personnages sont considérés comme capables de parler le « reikspiel » - la langue de l'Empire - et leur langue maternelle (si votre Personnage en possède une différente du reikspiel), sans avoir besoin de faire de Test. Si votre partie ne se déroule pas dans l'Empire, remplacez le reikspiel par la langue locale.</p>\n<p> </p>\n<p>Si vous possédez l'une de ces Compétences, vous êtes généralement capable de vous faire comprendre dans cette langue, ou de comprendre des concepts simples. Vous serez amené à faire un Test de votre Compétence de Langue quand un concept particulièrement difficile doit être transmis, ou qu'un dialecte ou vocabulaire obscur est utilisé.</p>\n<p> </p>\n<p><span style=\"font-weight: bold;\">Langage des voleurs</span><strong> : </strong>Parlée par le peuple des rues du Vieux Monde. Les expressions de ce langage sont très localisées et propres à chaque royaume ; par exemples les Tiléens utilisent un « Langage des voleurs » radicalement différent de celui du peuple de l'Empire.</p>"
|
||||
},
|
||||
{
|
||||
@ -388,7 +388,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Lore (Heraldry)",
|
||||
"name": "Savoir (Héraldique)",
|
||||
"name": "Savoir (Généalogie)",
|
||||
"description": "<p>Posséder une Compétence Savoir signifie que vous avez officiellement étudié, ou avez appris d'une façon ou d'une autre, une branche de connaissances avancées. Vous possédez des données approfondies dans une spécialisation et n'avez donc pas besoin d'effectuer de Test pour que le MJ vous donne les éléments d'information utiles. Si vous cherchez des informations spécifiques moins connues, vous aurez besoin d'effectuer un Test de Savoir, modifié selon la nature obscure de l'information, où les DR indiqueront combien de détails vous vous souvenez.</p>\n<p> </p>\n<p>En combat, un Test de Savoir réussi peut éventuellement vous accorder +1 Avantage (avec l'accord de votre MJ). Par exemple, Savoir (Géologie) peut vous donner un Avantage si vous combattez dans une caverne, ou Savoir (Ingénierie) peut vous aider si vous combattez un ennemi armé d'un appareil mécanique complexe. Vous pouvez continuer à renforcer votre Avantage lors des tours ultérieurs, à condition que les circonstances le permettent (déterminé par le MJ) et que vous ne soyez pas interrompu ; de cette façon, vous pouvez gagner un maximum d'Avantages, égal à votre Bonus d'intelligenece.</p>"
|
||||
},
|
||||
{
|
||||
@ -508,7 +508,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Perform (Dancing)",
|
||||
"name": "Représentation (Danse)",
|
||||
"name": "Représentation (Danser)",
|
||||
"description": "<p>Vous avez appris un art physiquement exigeant, probablement pour gagner votre vie, peut-être en tant que saltimbanque ou membre d'un carnaval itinérant. Une utilisation réussie de la Compétence Représentation vous permet de divertir tous les spectateurs suffisamment proches pour vous voir et vous entendre ; le DR indique à quel point vous avez réussi.</p>\n<p> </p>\n<p>En combat, certaines spécialisations physiques de Représentation peuvent vous donner un Avantage au combat. Avec l'accord de votre MJ, Représentation (Acrobaties) peut être utilisée à la place d'Esquive. D'autres Compétences Représentation peuvent être directement utilisées comme arme si vous possédez l'équipement approprié, comme avec Représentation (Cracheur de feu) !</p>"
|
||||
},
|
||||
{
|
||||
@ -643,8 +643,8 @@
|
||||
},
|
||||
{
|
||||
"id": "Ride (Demigryph)",
|
||||
"name": "Chevaucher (Demigriffon)",
|
||||
"description": "<p>C'est la façon dont vous maîtrisez le fait de chevaucher des Demigriffon. Vous aurez besoin de faire un Test uniquement lorsque vous voudrez effectuer quelque chose d'inhabituel, comme une course, du dressage, traverser un terrain dangereux ou charger en combat. Autrement, si vous possédez la Compétence, vous êtes considéré comme capable de chevaucher sans avoir besoin de Test.</p>\n<p> </p>\n<p>Si vous êtes monté sur un destrier, vous vous déplacez en utilisant les statistiques de Mouvement du destrier ; si vous voulez courir, sauter, ou bondir, vous utilisez votre compétence Chevaucher, et pas Athlétisme. Un Test de Chevaucher étendu peut être nécessaire si vous vous rendez quelque part, le DR cible dépendant de la longueur du voyage, et le nombre de Tests indiquant combien de temps vous mettez à arriver. Un Test de Chevaucher peut être modifié par les conditions environnementales et le tempérament de la monture. Pour plus d'information sur les montures, voir le Chapitre 12 : Bestiaire. Le Compétence Chevaucher peut être activement utilisée en combat. Voir Chapitre 5 : Règles pour plus d'informations sur le combat monté.</p>"
|
||||
"name": "Chevaucher (Hippogriffe)",
|
||||
"description": "<p>C'est la façon dont vous maîtrisez le fait de chevaucher des hippogriffe. Vous aurez besoin de faire un Test uniquement lorsque vous voudrez effectuer quelque chose d'inhabituel, comme une course, du dressage, traverser un terrain dangereux ou charger en combat. Autrement, si vous possédez la Compétence, vous êtes considéré comme capable de chevaucher sans avoir besoin de Test.</p>\n<p> </p>\n<p>Si vous êtes monté sur un destrier, vous vous déplacez en utilisant les statistiques de Mouvement du destrier ; si vous voulez courir, sauter, ou bondir, vous utilisez votre compétence Chevaucher, et pas Athlétisme. Un Test de Chevaucher étendu peut être nécessaire si vous vous rendez quelque part, le DR cible dépendant de la longueur du voyage, et le nombre de Tests indiquant combien de temps vous mettez à arriver. Un Test de Chevaucher peut être modifié par les conditions environnementales et le tempérament de la monture. Pour plus d'information sur les montures, voir le Chapitre 12 : Bestiaire. Le Compétence Chevaucher peut être activement utilisée en combat. Voir Chapitre 5 : Règles pour plus d'informations sur le combat monté.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Ride (Great Wolf)",
|
||||
@ -733,7 +733,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Secret Signs (Scout)",
|
||||
"name": "Signes secrets (Eclaireur)",
|
||||
"name": "Signes secrets (Guetteur)",
|
||||
"description": "<p>Vous avez été formé à utiliser des marques clandestines intelligibles pour les membres d'un groupe sélectionné. Les raisons pour lesquelles quelqu'un peut vouloir délivrer un message secret sont nombreuses : les vagabonds peuvent indiquer quels propriétaires sont susceptibles d'offrir la charité, les voleurs peuvent vouloir indiquer des failles, ou des cibles potentielles, alors que les guetteurs peuvent vouloir alerter les autres sur l'emplacement proche d'un monstre dangereux.</p>\n<p> </p>\n<p>Cette Compétence ne nécessite généralement pas de Test - vous pouvez déchiffrer n'importe quels signes appropriés que vous pouvez voir si vous possédez cette Compétence. Mais si les signes ont été modifiés, effacés, ou si vous êtes pressé par le temps, un Test sera probablement nécessaire. La plupart des messages sont très simples, et ne comptent pas plus de trois mots.</p>\n <p> </p>\n <p><strong>Guetteur : </strong>Utilisés par les éclaireurs, en particuliers ceux engagés par les compagnies militaires et mercenaires. Les signes sont le plus souvent utilisés pour signaler des zones de ravitaillement, les itinéraires pour les convois de nourriture, et les dangers notables en amont.</p>\n <p> </p>"
|
||||
},
|
||||
{
|
||||
@ -808,7 +808,7 @@
|
||||
},
|
||||
{
|
||||
"id": "Trade (Calligrapher)",
|
||||
"name": "Métier (Calligraphe)",
|
||||
"name": "Métier (Calligraphie)",
|
||||
"description": "<p>Beaucoup de gens au Reikland embrassent une profession ; même les aventuriers ont souvent une Carrière plus fiable ou plus respectable sur laquelle compter entre deux épisodes palpitants. La Compétence Métier représente votre capacité à créer quelque chose ou à fournir un service, ainsi que votre connaissance du savoir essentiel entourant votre profession.</p>\n<p> </p>\n<p>Posséder la Compétence est suffisant pour effectuer automatiquement les tâches associées à votre profession, en partant du principe que vous possédez les ressources et des outils adaptés. Vous avez besoin d'effectuer un Test de Métier uniquement si vous cherchez à créer quelque chose rapidement, que les conditions sont défavorables ou que vous cherchez à inventer ou créer un objet de grande qualité.</p>\n<p> </p>\n<p>Les Tests de Métier de ce type sont souvent des Tests étendus, dont le DR et le temps nécessaires dépendent de la portée ou de l'ampleur de ce qui est produit ; un repas rapide avec Métier (Cuisinier) pour impressionner un seigneur local prendra bien moins de temps que la construction d'un navire de guerre avec Métier (Charpentier de marine).</p>\n<p> </p>\n<p>Vous pouvez aussi effectuer un Test de Métier comme une Compétence Savoir pour déterminer une information importante concernant la profession en question. Dans de telles circonstances, le MJ peut préférer utiliser l'Int plutôt que la Dex comme Caractéristique de base, bien que cela soit souvent ignoré pour simplifer.</p>\n<p> </p>\n<p>Bien que beaucoup de Compétences Métier aient peu d'utilité en combat, il y a autant de Compétences Métier que de professions, et certaines peuvent être utilisées en fonction des circonstances. Par exemple, réussir un Test de Métier (Apothicaire) peut être utile si vous combattez dans une échoppe d'Apothicaire, car vous identifiez des substances âcres à jeter sur vos ennemis.</p>\n<p> </p>\n<p>La Compétence Métier est aussi utilisée pour effectuer une Activité Artisanat (voir page 196).</p>"
|
||||
},
|
||||
{
|
||||
@ -827,7 +827,7 @@
|
||||
"description": "<p>Beaucoup de gens au Reikland embrassent une profession ; même les aventuriers ont souvent une Carrière plus fiable ou plus respectable sur laquelle compter entre deux épisodes palpitants. La Compétence Métier représente votre capacité à créer quelque chose ou à fournir un service, ainsi que votre connaissance du savoir essentiel entourant votre profession.</p>\n<p> </p>\n<p>Posséder la Compétence est suffisant pour effectuer automatiquement les tâches associées à votre profession, en partant du principe que vous possédez les ressources et des outils adaptés. Vous avez besoin d'effectuer un Test de Métier uniquement si vous cherchez à créer quelque chose rapidement, que les conditions sont défavorables ou que vous cherchez à inventer ou créer un objet de grande qualité.</p>\n<p> </p>\n<p>Les Tests de Métier de ce type sont souvent des Tests étendus, dont le DR et le temps nécessaires dépendent de la portée ou de l'ampleur de ce qui est produit ; un repas rapide avec Métier (Cuisinier) pour impressionner un seigneur local prendra bien moins de temps que la construction d'un navire de guerre avec Métier (Charpentier de marine).</p>\n<p> </p>\n<p>Vous pouvez aussi effectuer un Test de Métier comme une Compétence Savoir pour déterminer une information importante concernant la profession en question. Dans de telles circonstances, le MJ peut préférer utiliser l'Int plutôt que la Dex comme Caractéristique de base, bien que cela soit souvent ignoré pour simplifer.</p>\n<p> </p>\n<p>Bien que beaucoup de Compétences Métier aient peu d'utilité en combat, il y a autant de Compétences Métier que de professions, et certaines peuvent être utilisées en fonction des circonstances. Par exemple, réussir un Test de Métier (Apothicaire) peut être utile si vous combattez dans une échoppe d'Apothicaire, car vous identifiez des substances âcres à jeter sur vos ennemis.</p>\n<p> </p>\n<p>La Compétence Métier est aussi utilisée pour effectuer une Activité Artisanat (voir page 196).</p>"
|
||||
},
|
||||
{
|
||||
"id": "Trade (Embalmer)",
|
||||
"id": "Trade (Embalmber)",
|
||||
"name": "Métier (Embaumeur)",
|
||||
"description": "<p>Beaucoup de gens au Reikland embrassent une profession ; même les aventuriers ont souvent une Carrière plus fiable ou plus respectable sur laquelle compter entre deux épisodes palpitants. La Compétence Métier représente votre capacité à créer quelque chose ou à fournir un service, ainsi que votre connaissance du savoir essentiel entourant votre profession.</p>\n<p> </p>\n<p>Posséder la Compétence est suffisant pour effectuer automatiquement les tâches associées à votre profession, en partant du principe que vous possédez les ressources et des outils adaptés. Vous avez besoin d'effectuer un Test de Métier uniquement si vous cherchez à créer quelque chose rapidement, que les conditions sont défavorables ou que vous cherchez à inventer ou créer un objet de grande qualité.</p>\n<p> </p>\n<p>Les Tests de Métier de ce type sont souvent des Tests étendus, dont le DR et le temps nécessaires dépendent de la portée ou de l'ampleur de ce qui est produit ; un repas rapide avec Métier (Cuisinier) pour impressionner un seigneur local prendra bien moins de temps que la construction d'un navire de guerre avec Métier (Charpentier de marine).</p>\n<p> </p>\n<p>Vous pouvez aussi effectuer un Test de Métier comme une Compétence Savoir pour déterminer une information importante concernant la profession en question. Dans de telles circonstances, le MJ peut préférer utiliser l'Int plutôt que la Dex comme Caractéristique de base, bien que cela soit souvent ignoré pour simplifer.</p>\n<p> </p>\n<p>Bien que beaucoup de Compétences Métier aient peu d'utilité en combat, il y a autant de Compétences Métier que de professions, et certaines peuvent être utilisées en fonction des circonstances. Par exemple, réussir un Test de Métier (Apothicaire) peut être utile si vous combattez dans une échoppe d'Apothicaire, car vous identifiez des substances âcres à jeter sur vos ennemis.</p>\n<p> </p>\n<p>La Compétence Métier est aussi utilisée pour effectuer une Activité Artisanat (voir page 196).</p>"
|
||||
},
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because one or more lines are too long
@ -85,13 +85,13 @@
|
||||
{
|
||||
"description": "",
|
||||
"effects": [],
|
||||
"id": "Baton",
|
||||
"id": "Baton ",
|
||||
"name": "Baton "
|
||||
},
|
||||
{
|
||||
"description": "<p>Les Test de Résistance effectués pour résister au foid (cf. page 181) gagnent un bonus de +20 quand vous l'utilisez pour vous reposer.</p>",
|
||||
"effects": [],
|
||||
"id": "Bedroll",
|
||||
"id": "Bedroll ",
|
||||
"name": "Sac de couchage "
|
||||
},
|
||||
{
|
||||
@ -226,8 +226,8 @@
|
||||
{
|
||||
"description": "<p>Une chope de cervoise de Burgman compte pour 4 chopes de cervoise normale pour le calcul de l'intoxication (cf page 129), et confère une immunité aux Tests de Peur pour 1d10 heures.</p>",
|
||||
"effects": [],
|
||||
"id": "Bugman’s XXXXXX Ale, pint",
|
||||
"name": "Cervoise de Bugman, pinte"
|
||||
"id": "Bugman’s XXXXXX Ale, pint ",
|
||||
"name": "Cervoise de Bugman, pinte "
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
@ -332,7 +332,7 @@
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"id": "Courtly Garb",
|
||||
"id": "Courtly Garb ",
|
||||
"name": "Habit de Cour"
|
||||
},
|
||||
{
|
||||
@ -494,9 +494,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"preventDuplicateEffects": false,
|
||||
"reduceQuantity":true,
|
||||
"hide":false,
|
||||
"script": "let bleeding = this.actor.hasCondition(\"bleeding\")\nif (bleeding){\nui.notifications.notify(`Suppression ${bleeding.flags.wfrp4e.value} d'états Hemoragiques`)\nthis.actor.removeCondition(\"bleeding\", bleeding.flags.wfrp4e.value)\n}"
|
||||
"script": "let item = duplicate(this.item)\nitem.data.quantity.value--\nif (item.data.quantity.value < 0)\n return ui.notifications.error(\"Plus de Faxtoryll\")\n\nthis.actor.updateEmbeddedEntity(\"OwnedItem\", item)\n\nlet bleeding = this.actor.hasCondition(\"bleeding\")\nif (bleeding)\n{\n ui.notifications.notify(`Cleared ${bleeding.flags.wfrp4e.value} Bleeding Conditions`)\n this.actor.removeCondition(\"bleeding\", bleeding.flags.wfrp4e.value)\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/equipment/herbs_and_draughts/faxtoryll.png",
|
||||
@ -653,9 +651,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"preventDuplicateEffects": false,
|
||||
"reduceQuantity":true,
|
||||
"hide":false,
|
||||
"script": "let wounds = this.actor.status.wounds\nif (wounds.value == 0) return ui.notifications.error(\"Aucun effet à 0 Blessures\")\nui.notifications.notify(`Guérison de ${this.actor.characteristics.t.bonus} Blessures`)\nthis.actor.modifyWounds(this.actor.characteristics.t.bonus)"
|
||||
"script": "let item = duplicate(this.item)\nitem.data.quantity.value--\nif (item.data.quantity.value < 0)\n return ui.notifications.error(\"Plus de potions\")\n\nthis.actor.updateEmbeddedEntity(\"OwnedItem\", item)\n\nlet wounds = this.actor.data.data.status.wounds\nif (wounds.value == 0)\n return ui.notifications.error(\"Aucun effet à 0 points de blessure\")\nwounds.value += this.actor.data.data.characteristics.t.bonus\n\nui.notifications.notify(`Healed ${this.actor.data.data.characteristics.t.bonus} Wounds`)\n\nif (wounds.value > wounds.max)\n wounds.value = wounds.max\n\nthis.actor.update({\"data.status.wounds\" : wounds})"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/equipment/herbs_and_draughts/healing-draught.png",
|
||||
@ -1010,8 +1006,8 @@
|
||||
{
|
||||
"description": "",
|
||||
"effects": [],
|
||||
"id": "Nails",
|
||||
"name": "Clous"
|
||||
"id": "Nails ",
|
||||
"name": "Clous "
|
||||
},
|
||||
{
|
||||
"description": "<p>La consommation de cette herbe plonge la victime dans un profond sommeil au bout de 2-3 heures, à moins qu'elle ne réussisse un <strong>Test de Résistance</em>. Un sommeil induit par la Belladone dure 1d10+4 heures. Dose : 1 par personne.</p>",
|
||||
@ -1360,9 +1356,7 @@
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "oneTime",
|
||||
"preventDuplicateEffects": false,
|
||||
"reduceQuantity":true,
|
||||
"hide":false,
|
||||
"script": "let stunned= this.actor.hasCondition(\"stunned\")\nif (stunned) {\nui.notifications.notify(`1 état Assommé enlevé`)\nthis.actor.removeCondition(\"stunned\", 1)\n}"
|
||||
"script": "let item = duplicate(this.item)\nitem.data.quantity.value--\nif (item.data.quantity.value < 0)\n return ui.notifications.error(\"Plus de Soude Commune disponible\")\n\nthis.actor.updateEmbeddedEntity(\"OwnedItem\", item)\n\nlet stunned= this.actor.hasCondition(\"stunned\")\nif (stunned)\n{\n ui.notifications.notify(`Un Etat Assomé a été enlevé`)\n this.actor.removeCondition(\"stunned\", 1)\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/equipment/herbs_and_draughts/salwort.png",
|
||||
@ -1598,9 +1592,7 @@
|
||||
"effectApplication": "actor",
|
||||
"effectTrigger": "invoke",
|
||||
"preventDuplicateEffects": false,
|
||||
"reduceQuantity":true,
|
||||
"hide":false,
|
||||
"script": "let fatigued= this.actor.hasCondition(\"fatigued\")\nif (fatigued){\nui.notifications.notify(`Suppression de ${fatigued.conditionValue} étast Extenués`)\nthis.actor.removeCondition(\"fatigued\", fatigued.conditionValue)}"
|
||||
"script": "let item = duplicate(this.item)\nitem.data.quantity.value--\nif (item.data.quantity.value < 0)\n return ui.notifications.error(\"Plus de potion disponible\")\n\nthis.actor.updateEmbeddedEntity(\"OwnedItem\", item)\n\nlet fatigued = this.actor.hasCondition(\"fatigued\")\nif (fatigued)\n{\n ui.notifications.notify(`${fatigued.flags.wfrp4e.value} Etats Extenué enlevés`)\n this.actor.removeCondition(\"fatigued\", fatigued.flags.wfrp4e.value)\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/equipment/herbs_and_draughts/vitality-draught.png",
|
||||
@ -1656,7 +1648,7 @@
|
||||
"effectApplication": "apply",
|
||||
"effectTrigger": "prefillDialog",
|
||||
"preventDuplicateEffects": false,
|
||||
"script": "if (args.type == \"characteristic\") {\n if (args.item == \"wp\" || args.item == \"t\")\n args.prefillModifiers.modifier += 10\n else if (args.item == \"ag\" || args.item == \"i\" || args.item == \"int\")\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"skill\") {\n if (args.item.characteristic.value == \"wp\" || args.item.characteristic.value == \"t\")\n args.prefillModifiers.modifier += 10\n else if (args.item.characteristic.value == \"ag\" || args.item.characteristic.value == \"i\" || args.item.characteristic.value == \"int\")\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"cast\") {\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"channelling\") {\n args.prefillModifiers.modifier += 10\n}"
|
||||
"script": "if (args.type == \"characteristic\") {\n if (args.item == \"wp\" || args.item == \"t\")\n args.prefillModifiers.modifier += 10\n else if (args.item == \"ag\" || args.item == \"i\" || args.item == \"int\")\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"skill\") {\n if (args.item.data.characteristic.value == \"wp\" || args.item.data.characteristic.value == \"t\")\n args.prefillModifiers.modifier += 10\n else if (args.item.data.characteristic.value == \"ag\" || args.item.data.characteristic.value == \"i\" || args.item.data.characteristic.value == \"int\")\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"cast\") {\n args.prefillModifiers.modifier -= 10\n}\nelse if (args.type == \"channelling\") {\n args.prefillModifiers.modifier += 10\n}"
|
||||
}
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/equipment/drugs_and_poisons/weirdroot.png",
|
||||
@ -1712,18 +1704,6 @@
|
||||
"effects": [],
|
||||
"id": "Zweihander",
|
||||
"name": "Zweihander"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"effects": [],
|
||||
"id": "Costume",
|
||||
"name": "Costume"
|
||||
},
|
||||
{
|
||||
"description": "",
|
||||
"effects": [],
|
||||
"id": "Crutch",
|
||||
"name": "Béquille"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -322,7 +322,7 @@
|
||||
{
|
||||
"id": "Luxury Cabin",
|
||||
"name": "Luxury Cabin",
|
||||
"description": "<p>The Empire’s wealthy like to travel in comfort and the kind of cabin that one finds on a noble’s barge is very different from one on a trading or passenger vessel. For the indicated cost, and taking the space of two normal cabins, a traveller can ply the rivers in comfort and style. At your discretion, any <strong>Fellowship </strong>Tests made by the.isOwner of a luxury cabin gain a +10 bonus, provided they are made within the cabin itself.</p>"
|
||||
"description": "<p>The Empire’s wealthy like to travel in comfort and the kind of cabin that one finds on a noble’s barge is very different from one on a trading or passenger vessel. For the indicated cost, and taking the space of two normal cabins, a traveller can ply the rivers in comfort and style. At your discretion, any <strong>Fellowship </strong>Tests made by the owner of a luxury cabin gain a +10 bonus, provided they are made within the cabin itself.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Mage-Leaf",
|
||||
@ -357,27 +357,27 @@
|
||||
{
|
||||
"id": "Racing Hull",
|
||||
"name": "Racing Hull",
|
||||
"description": "<p>Wealthy nobles are addicted to contests and wagering, as everyone knows. In an effort to outdo their fellows, some wealthy boat.isOwners have sunk immense sums into research and craftsmanship, in search of the perfect hull shape for speed. A racing hull is as smooth as glass and cunningly shaped to reduce drag to a bare minimum, allowing the boat to travel at up to twice its normal Movement rate.</p>\n<p>A boat with a racing hull is tricky to control, though, and requires a <strong>Difficult (−10) Boat Handling</strong> Test every hour. On a Marginal (−1 SL) or Normal Failure, Movement cannot exceed the normal rate; on an Impressive Failure (−4 SL), Movement is half normal; and on an Astounding Failure (−6 SL or less), the hull is damaged and the boat cannot exceed half normal Movement until it is repaired at a cost equal to half the cost of the hull, as above.</p>\n<p>Normal repairs to a racing hull cost twice the @JournalEntry[Repairing Boats]{normal rate given}, and require finer craftsmanship: all relevant Tests are one step more difficult than usual.</p>\n<blockquote>\n<p><strong>Foundry Note: </strong><em>Encumbrance and Price reflects 10 ft. of length. Modify this item according to the ship it's being applied to.</em></p>\n</blockquote>"
|
||||
"description": "<p>Wealthy nobles are addicted to contests and wagering, as everyone knows. In an effort to outdo their fellows, some wealthy boat owners have sunk immense sums into research and craftsmanship, in search of the perfect hull shape for speed. A racing hull is as smooth as glass and cunningly shaped to reduce drag to a bare minimum, allowing the boat to travel at up to twice its normal Movement rate.</p>\n<p>A boat with a racing hull is tricky to control, though, and requires a <strong>Difficult (−10) Boat Handling</strong> Test every hour. On a Marginal (−1 SL) or Normal Failure, Movement cannot exceed the normal rate; on an Impressive Failure (−4 SL), Movement is half normal; and on an Astounding Failure (−6 SL or less), the hull is damaged and the boat cannot exceed half normal Movement until it is repaired at a cost equal to half the cost of the hull, as above.</p>\n<p>Normal repairs to a racing hull cost twice the @JournalEntry[Repairing Boats]{normal rate given}, and require finer craftsmanship: all relevant Tests are one step more difficult than usual.</p>\n<blockquote>\n<p><strong>Foundry Note: </strong><em>Encumbrance and Price reflects 10 ft. of length. Modify this item according to the ship it's being applied to.</em></p>\n</blockquote>"
|
||||
},
|
||||
{
|
||||
"id": "Racing Rig (Fishing Skiff)",
|
||||
"name": "Racing Rig (Fishing Skiff)",
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat.isOwners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Fishing Skiff)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat-owners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Fishing Skiff)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Racing Rig (Large Barge)",
|
||||
"name": "Racing Rig (Large Barge)",
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat.isOwners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Large Barge)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat-owners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Large Barge)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Racing Rig (Row Boat)",
|
||||
"name": "Racing Rig (Row Boat)",
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat.isOwners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Row Boat)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat-owners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Row Boat)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Racing Rig (Typical Barge or Patrol Boat)",
|
||||
"name": "Racing Rig (Typical Barge or Patrol Boat)",
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat.isOwners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Typical Barge or Patrol Boat)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
"description": "<p>As well as developing racing hulls (see above), the wealthy boat-owners of the Empire — or rather, the talented boat-builders in their employ — have developed a system of sails and rigging designed for speed, at the expense of some sturdiness. A racing rig allows a boat an extra +10% Movement over the amount given in the @Table[wind]{wind table}, but only in a tailwind or a sidewind. In a headwind, the Movement penalty is reduced by -5%</p>\n<p>A racing rig includes a @Item[Flying Jib (Typical Barge or Patrol Boat)]{flying jib}, and the advantages of the two do not stack.</p>\n<p>This speed comes at a cost, though. The complex racing rig requires an expert crew, imposing a penalty of −10 to all <strong>Boat Handling</strong> Tests. In addition, all hits to the rigging cause double normal Damage.</p>"
|
||||
},
|
||||
{
|
||||
"id": "Raised Gunwales (Fishing Skiff)",
|
||||
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,479 +1,178 @@
|
||||
{
|
||||
"label": "Sorts Ennemi Intérieur",
|
||||
"mapping": {
|
||||
"sduration": {
|
||||
"path": "data.duration.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"srange": {
|
||||
"path": "data.range.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"starget": {
|
||||
"path": "data.target.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"sdamage": {
|
||||
"path": "data.damage.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"effets": "effects"
|
||||
},
|
||||
"mapping": {
|
||||
"sduration": {
|
||||
"path": "data.duration.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"srange": {
|
||||
"path": "data.range.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"starget": {
|
||||
"path": "data.target.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
},
|
||||
"sdamage": {
|
||||
"path": "data.damage.value",
|
||||
"converter": "spells_duration_range_target_damage"
|
||||
}
|
||||
},
|
||||
"entries": [
|
||||
{
|
||||
"id": "Demonic Mien (Undivided)",
|
||||
"name": "Allure Démoniaque (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez le pouvoir de transformation du Chaos dans votre propre chair, sacrifiant temporairement votre forme mortelle sur l’autel de la volonté de votre dieu. Votre corps est déformé, prenant les aspects d’un démon loyal à votre dieu protecteur. Lancez 1d10 sur le <a class=\"table-click\" data-table=\"demonic-mien\">Tableau de la page 78</a>, et appliquez le Trait pertinent pour toute la durée du Sort. Pour chaque +2 DR, vous pouvez à la fois prolonger la durée et refaire un jet sur le Tableau. Si vous obtenez le Trait <span class=\"fontstyle3\">@Compendium[wfrp4e.traits.v3uzEthcq0JRar0J]Démoniaque</span> et que vous êtes réduit à 0 Blessure, votre âme est aspirée dans les Royaumes du Chaos, comme décrit dans les règles des Traits de créature.</span></p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Demonic Mien (Tzeentch)",
|
||||
"name": "Allure Démoniaque (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez le pouvoir de transformation du Chaos dans votre propre chair, sacrifiant temporairement votre forme mortelle sur l’autel de la volonté de votre dieu. Votre corps est déformé, prenant les aspects d’un démon loyal à votre dieu protecteur. Lancez 1d10 sur le <a class=\"table-click\" data-table=\"demonic-mien\">Tableau de la page 78</a>, et appliquez le Trait pertinent pour toute la durée du Sort. Pour chaque +2 DR, vous pouvez à la fois prolonger la durée et refaire un jet sur le Tableau. Si vous obtenez le Trait <span class=\"fontstyle3\">@Compendium[wfrp4e.traits.v3uzEthcq0JRar0J]Démoniaque</span> et que vous êtes réduit à 0 Blessure, votre âme est aspirée dans les Royaumes du Chaos, comme décrit dans les règles des Traits de créature.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Joyous Aspect (Undivided)",
|
||||
"name": "Aspect Sublimé (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Le lanceur de sorts imprègne la Cible (peut-être lui-même) avec un vernis corrompu d’<i>Ulgu</i> infusé par <i>Dhar</i>, l’enveloppant dans une aura de dissimulation. Tant que le Sort est en vigueur, la Cible apparaît sans défaut, ni tache. Les cicatrices, les difformités et, surtout, les Mutations sont indétectables, sauf par des moyens divins. Si les vices évidents sont cachés, les Cibles peuvent paraître étranges ou excentriques, trop débordantes de vie ou anormalement séduisantes. La réussite d’un Test de <strong>Perception Difficile (-20)</strong> révèle que quelque chose ne va pas, mais sans révéler quoi. Pour les Personnages possédant le Talent Seconde vue, le Test est <strong>Intermédiaire (+0)</strong>, et s’ils le réussissent, ils se rendront compte qu’un Sort est en place, mais pas ce qu’il dissimule.</span> </p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Joyous Aspect (Tzeentch)",
|
||||
"name": "Aspect Sublimé (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Le lanceur de sorts imprègne la Cible (peut-être lui-même) avec un vernis corrompu d’<i>Ulgu</i> infusé par <i>Dhar</i>, l’enveloppant dans une aura de dissimulation. Tant que le Sort est en vigueur, la Cible apparaît sans défaut, ni tache. Les cicatrices, les difformités et, surtout, les Mutations sont indétectables, sauf par des moyens divins. Si les vices évidents sont cachés, les Cibles peuvent paraître étranges ou excentriques, trop débordantes de vie ou anormalement séduisantes. La réussite d’un Test de <strong>Perception Difficile (-20)</strong> révèle que quelque chose ne va pas, mais sans révéler quoi. Pour les Personnages possédant le Talent Seconde vue, le Test est <strong>Intermédiaire (+0)</strong>, et s’ils le réussissent, ils se rendront compte qu’un Sort est en place, mais pas ce qu’il dissimule.</span> </p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Tzeentch's Golden Aura",
|
||||
"name": "Aura Dorée de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Ce Sort est l’un des plus simples et des plus pratiques dans l’arsenal d’un sorcier de Tzeentch. Un tourbillon de feu jaune est invoqué à partir de l’Aethyr et enveloppe le corps du Lanceur, le protégeant des coups et des projectiles. Tant que le Sort est en vigueur, le Lanceur bénéficie du Trait de créature @Compendium[wfrp4e.traits.Bvd2aZ0gQUXHfCTh]{Protection 9+}.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Boon of Tzeentch",
|
||||
"name": "Avantage de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos paroles, imprégnées de la prescience labyrinthique du Changeur de Voies, remodèlent votre esprit, vous donnant accès à de nouvelles connaissances arcaniques. Choisissez un Sort dans n’importe quel Domaine (pour assurer un jeu rapide, le MJ peut imposer une limite de temps de neuf secondes). Pendant que l’Avantage de Tzeentch est en vigueur, vous pouvez lancer votre nouveau Sort comme si vous l’aviez mémorisé, sans pouvoir le transcrire dans un grimoire, un parchemin ou autre. Si vous focalisez pour lancer le nouveau Sort, vous pouvez utiliser soit Focalisation (<i>Dhar</i>), soit la Compétence de Focalisation appropriée au Domaine que le Sort requiert normalement, si vous la possédez. </span></p><p><span class=\"fontstyle0\">Si vous subissez une Incantation Imparfaite lors d'une Focalisation ou d'une Incantation en lançant ce nouveau sort, le sort Avantage de Tzeentch quitte votre esprit avec dégoût, et s'efface également de votre Grimoire si toutefais il y était inscrit.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"id": "Blast of Corruption (Tzeentch)",
|
||||
"name": "Explosion de Corruption (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous focalisez une magie impie sous la forme d’une explosion corruptrice. Il s’agit d’un projectile magique avec Dégâts +5 qui cible toutes les personnes dans la Zone d’Effet. Toutes les personnes touchées par le sort doivent réussir un test d'</span><span class=\"fontstyle2\">Endurance Intermédiaire (+0)</span><span class=\"fontstyle0\">,ou gagner + 1 point de Corruption.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Blast of Corruption (Undivided)",
|
||||
"name": "Décharge de Corruption (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la Magie noire en un éclair de puissance corrosive. Il s’agit d’un <i>Projectile magique</i> infligeant Dégâts +6. Les Cibles affectées par le Sort doivent réussir un Test de <strong>Résistance Intermédiaire (+0)</strong>, ou gagner 1 Corruption. /span></p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "f0ylOlHNyqtg71Qx",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/undivided.png",
|
||||
"label": "Décharge de Corruption (Indivisible)",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "apply",
|
||||
"script": "args.actor.setupSkill(\"Résistance\", {context : {failure: \"1 Point de Corruption acquis\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\" && args.actor.data.type == \"character\")\n {\n args.actor.update({\"data.status.corruption.value\" : parseInt(args.actor.status.corruption.value) + 1})\n args.actor.checkCorruption()\n }\n })\n })",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Blast of Corruption (Tzeentch)",
|
||||
"name": "Décharge de Corruption (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la Magie noire en un éclair de puissance corrosive. Il s’agit d’un <i>Projectile magique</i> infligeant Dégâts +6. Les Cibles affectées par le Sort doivent réussir un Test de Résistance Intermédiaire (+0), ou gagner 1 Corruption. /span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de <strong>Résistance Intermédiaire (+0)</strong> ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "88oX5VldSmMJdpxI",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Décharge de Corruption (Tzeentch)",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "apply",
|
||||
"script": "args.actor.setupSkill(\"Résistance\", {context : {failure: \"1 Point de Corruption acquis\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\" && args.actor.data.type == \"character\")\n {\n args.actor.update({\"data.status.corruption.value\" : parseInt(args.actor.status.corruption.value) + 1})\n args.actor.checkCorruption()\n }\n })\n })",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Rend Aethyr (Undivided)",
|
||||
"name": "Déchirer l'Aethyr (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos mots ignobles et profanes déchirent le tissu de la réalité, creusant une brèche dans le monde, au travers de laquelle les serviteurs des Dieux Sombres sont libres de passer. Un portail déchiqueté vers l’Aethyr apparaît.</span></p><p><span class=\"fontstyle0\">À la fin de chaque round, un démon mineur traverse le portail depuis les Royaumes du Chaos. Ces démons ne sont pas sous votre contrôle, mais sont susceptibles de vous défendre et d’attaquer vos ennemis, si telle est la volonté de votre maître impie. Les démons invoqués dépendent de votre Domaine du Chaos : démonettes de Slaanesh, porte-peste de Nurgle, horreurs de Tzeentch, sanguinaires de Khorne, et, pour les sorciers du Chaos Indivisible, des furies du Chaos. Pendant toute la durée du sort, tous les démons qu’il invoque sont immunisés aux effets du Trait de créature Instable.</span></p><p><span class=\"fontstyle0\">Pour chaque +5 DR de Surincantation, vous pouvez augmenter le rythme d’arrivée des démons de +1. </span></p><p><span class=\"fontstyle0\">Les créatures vivantes doivent réussir un Test de <strong>Résistance Accessible (+20)</strong> à la fin de chaque Round où elles voient la déchirure, ou gagner +1 Corruption. Toute créature vivante assez stupide ou malchanceuse pour entrer dans la faille choit dans les Royaumes du Chaos et est immédiatement tuée, à moins qu’un Point de Destin ne soit dépensé. Dans ce cas, elle est renvoyée dans la réalité, peut-être sauvée par une Puissance quelconque dans un but encore inachevé.</span></p><p><span class=\"fontstyle0\">Si vous ratez l’Incantation de ce Sort, les démons qui traversent les Royaumes du Chaos appartiennent à une divinité rivale et peuvent être immédiatement hostiles à leur invocateur !</span></p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Rend Aethyr (Tzeentch)",
|
||||
"name": "Déchirer l'Aethyr (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos mots ignobles et profanes déchirent le tissu de la réalité, creusant une brèche dans le monde, au travers de laquelle les serviteurs des Dieux Sombres sont libres de passer. Un portail déchiqueté vers l’Aethyr apparaît.</span></p><p><span class=\"fontstyle0\">À la fin de chaque round, un démon mineur traverse le portail depuis les Royaumes du Chaos. Ces démons ne sont pas sous votre contrôle, mais sont susceptibles de vous défendre et d’attaquer vos ennemis, si telle est la volonté de votre maître impie. Les démons invoqués dépendent de votre Domaine du Chaos : démonettes de Slaanesh, porte-peste de Nurgle, horreurs de Tzeentch, sanguinaires de Khorne, et, pour les sorciers du Chaos Indivisible, des furies du Chaos. Pendant toute la durée du sort, tous les démons qu’il invoque sont immunisés aux effets du Trait de créature Instable.</span></p><p><span class=\"fontstyle0\">Pour chaque +5 DR de Surincantation, vous pouvez augmenter le rythme d’arrivée des démons de +1. </span></p><p><span class=\"fontstyle0\">Les créatures vivantes doivent réussir un Test de <strong>Résistance Accessible (+20)</strong> à la fin de chaque Round où elles voient la déchirure, ou gagner +1 Corruption. Toute créature vivante assez stupide ou malchanceuse pour entrer dans la faille choit dans les Royaumes du Chaos et est immédiatement tuée, à moins qu’un Point de Destin ne soit dépensé. Dans ce cas, elle est renvoyée dans la réalité, peut-être sauvée par une Puissance quelconque dans un but encore inachevé.</span></p><p><span class=\"fontstyle0\">Si vous ratez l’Incantation de ce Sort, les démons qui traversent les Royaumes du Chaos appartiennent à une divinité rivale et peuvent être immédiatement hostiles à leur invocateur !</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Bolt of Change",
|
||||
"name": "Éclair du changement",
|
||||
"description": "<p><span class=\"fontstyle0\">Un éclair pulsant d’une scintillante énergie chaotique déchire l'air. L'Éclair du changement est un <i>Projectile magique</i>, et la Cible subit des Dégâts +7. De plus, elle doit effectuer un Test de </strong>Résistance Intermédiaire (+0)</strong>. Une Cible qui échoue gagne +1 Point de Corruption. En cas de Maladresse, la Cible effectue immédiatement un jet de Mutation, et gagne le Talent Compendium[wfrp4e.talents.hiU7vhBOVpVI8c7C]{Magie du Chaos (Tzeentch)}. Un Personnage affecté par ce sort peut résister à une Mutation en dépensant un Point de Détermination.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "35UAihuCR5o2saMI",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Eclair du Changement",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "apply",
|
||||
"script": "args.actor.setupSkill(\"Résistance\", { context: { failure: \"1 Point de Corruption acquis\" } }).then(setupData => {\n args.actor.basicTest(setupData).then(test => {\n if (test.result.outcome == \"failure\" && args.actor.data.type == \"character\") {\n let msg = \"\"\n args.actor.update({ \"data.status.corruption.value\": parseInt(args.actor.status.corruption.value) + 1 })\n msg += `<b>${args.actor.data.token.name}</b> gains a Corruption point<br>`\n if ((test.result.outcome.roll % 11 == 0) || test.result.outcome.roll == 100 || test.result.outcome.roll == 99)\n msg += `<b>${args.actor.data.token.name}</b> reçoit une mutation (@Table[expandedmutatephys]{Physique} ou @Table[expandedmutatemental]{Mentale}) et reçoit @Compendium[wfrp4e-core.talents.hiU7vhBOVpVI8c7C]{Chaos Magic (Tzeentch)}`\n ChatMessage.create({content : msg, speaker : {alias : this.effect.label}})\n args.actor.checkCorruption()\n }\n })\n})",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Slave to Darkness (Undivided)",
|
||||
"name": "Esclave des ténèbres (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous implorez votre divinité pour qu’elle s’empare de l’âme de votre Cible et la remplace par quelque chose de terrible. Faites un Test opposé de <strong>Force Mentale</strong>, que vous devez gagner d’au moins +2 DR. Si vous y parvenez, l’âme de la victime est envoyée dans les Royaumes du Chaos et le corps est possédé par un démon. À moins que la Cible ne dépense un Point de Destin, le contrôle du Personnage passe au MJ. Si vous ne gagnez pas le Test opposé par au moins +2 DR, vous subissez une <a class=\"table-click\" data-table=\"majormis\">Incantation imparfaite majeure</table>, et le Sort échoue. Si vous ne réussissez pas le Test, votre arrogance est punie par votre dieu. Votre âme est arrachée à son corps, pour ne jamais revenir, à moins que vous ne dépensiez un Point de Destin pour y résister. Mais votre dieu ne sera guère ravi si vous rejetez son autorité de manière aussi flagrante.</span></p> <p><span class=\"fontstyle0\"> Étant donné les risques et les limites inhérents à ce Sort, il est généralement lancé sur des victimes qui ont été « préparées » pour leur sacrifice ; elles ont été attachées, droguées et/ou autrement neutralisées.</span></p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Slave to Darkness (Tzeentch)",
|
||||
"name": "Esclave des ténèbres (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous implorez votre divinité pour qu’elle s’empare de l’âme de votre Cible et la remplace par quelque chose de terrible. Faites un Test opposé de </strong>Force Mentale</strong>, que vous devez gagner d’au moins +2 DR. Si vous y parvenez, l’âme de la victime est envoyée dans les Royaumes du Chaos et le corps est possédé par un démon. À moins que la Cible ne dépense un Point de Destin, le contrôle du Personnage passe au MJ. Si vous ne gagnez pas le Test opposé par au moins +2 DR, vous subissez une <a class=\"table-click\" data-table=\"majormis\">Incantation imparfaite majeure</table>, et le Sort échoue. Si vous ne réussissez pas le Test, votre arrogance est punie par votre dieu. Votre âme est arrachée à son corps, pour ne jamais revenir, à moins que vous ne dépensiez un Point de Destin pour y résister. Mais votre dieu ne sera guère ravi si vous rejetez son autorité de manière aussi flagrante.</span></p> <p><span class=\"fontstyle0\"> Étant donné les risques et les limites inhérents à ce Sort, il est généralement lancé sur des victimes qui ont été « préparées » pour leur sacrifice ; elles ont été attachées, droguées et/ou autrement neutralisées.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Bolt of Corruption (Undivided)",
|
||||
"name": "Explosion de Corruption (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la Magie profane en un souffle explosif de Corruption. Il s’agit d’un <i>Projectile magique</i> infligeant Dégâts +5 qui Cible tout le monde dans la Zone d’Effet. Toute personne affectée par le Sort doit réussir un Test de <strong>Résistance Intermédiaire (+0)</strong>, ou gagner 1 Corruption.</span></p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "g3X027r29G9dcaOm",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/undivided.png",
|
||||
"label": "Explosion de Corruption (Indivisible)",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "apply",
|
||||
"script": "args.actor.setupSkill(\"Résistance\", {context : {failure: \"1 Point de Corruption acquis\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\" && args.actor.data.type == \"character\")\n {\n args.actor.update({\"data.status.corruption.value\" : parseInt(args.actor.status.corruption.value) + 1})\n args.actor.checkCorruption()\n }\n })\n })",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "Bolt of Corruption (Tzeentch)",
|
||||
"name": "Explosion de Corruption (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la Magie profane en un souffle explosif de Corruption. Il s’agit d’un <i>Projectile magique</i> infligeant Dégâts +5 qui Cible tout le monde dans la Zone d’Effet. Toute personne affectée par le Sort doit réussir un Test de </strong>Résistance Intermédiaire (+0)</strong>, ou gagner 1 Corruption.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "BcIqqg2LrTJdON5l",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Explosion de Corruption (Tzeentch)",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "oneTime",
|
||||
"effectApplication": "apply",
|
||||
"script": "args.actor.setupSkill(\"Résistance\", {context : {failure: \"1 Point de Corruption acquis\"}}).then(setupData => {\n args.actor.basicTest(setupData).then(test => \n {\n if (test.result.outcome == \"failure\" && args.actor.data.type == \"character\")\n {\n args.actor.update({\"data.status.corruption.value\" : parseInt(args.actor.status.corruption.value) + 1})\n args.actor.checkCorruption()\n }\n })\n })",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"name": "Explosion de Corruption (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous focalisez une magie impie sous la forme d’une explosion corruptrice. Il s’agit d’un projectile magique avec Dégâts +5 qui cible toutes les personnes dans la Zone d’Effet. Toutes les personnes touchées par le sort doivent réussir un test d'</span><span class=\"fontstyle2\">Endurance Intermédiaire (+0)</span><span class=\"fontstyle0\">,ou gagner + 1 point de Corruption.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Blue Fire of Tzeentch",
|
||||
"name": "Feu Bleu de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos mots invoquent une boule de feu d’un bleu scintillant qui engloutit vos ennemis. Le Feu bleu de Tzeentch est un <i>Projectile magique</i>. Toute personne se trouvant dans les limites de votre Bonus d’Initiative en mètres autour de la cible subit +3 Points de Dégâts, et gagne 1 État <i>En flammes</i>.</span></p><p><span class=\"fontstyle0\">Si un Personnage de Taille Petite ou supérieure est réduit à 0 Blessure par ce Sort, alors qu’il est sous l’effet de l’État En flammes dû au Feu bleu de Tzeentch, lancez 1d10. Sur un résultat de 9, deux horreurs bleues (voir page 85) se frayent un chemin à travers la chair hurlante du Personnage, le tuant au passage.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "kpfKJaxLFqOnbIli",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Feu Bleu de Tzeentch",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectApplication": "damage",
|
||||
"effectTrigger": "applyDamage",
|
||||
"script": "args.actor.addCondition(\"ablaze\")",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"name": "Flamme Bleue de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos paroles conjurent une sphère tourbillonnante de flammes bleues étincelantes qui dévore vos ennemis. </span><em><span class=\"fontstyle2\">Flamme Bleue de Tzeentch</span></em><span class=\"fontstyle0\">est un</span><em><span class=\"fontstyle2\">projectile magique</span></em><span class=\"fontstyle0\">. . Toutes les personnes situées dans une distance de Bonus d’Initiative mètre de votre cible subissent un coup de Dégâts +3 et gagnent +1 Etat </span><em><span class=\"fontstyle2\">En Flammes </span></em><span class=\"fontstyle0\">.<br></span></p>\n<p><span class=\"fontstyle0\">Si un Personnage de taille Petite ou supérieure est amené à 0<br>Blessures par le sort, ou sous l’effet d’un Etat <em>En Flammes</em> dû à la</span><em><span class=\"fontstyle2\">Flamme Bleue de Tzeentch</span></em><span class=\"fontstyle0\">, jetez un <strong><a class=\"chat-roll\">1d10</a></strong>. Sur un résultat de 9, deux Horreurs Bleues surgissent du corps, dévorant la chair hurlante du Personnage, qui meurt sur le coup.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Pink Fire of Tzeentch",
|
||||
"name": "Feu Rose de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Des éclairs de feu rose tourbillonnent du bout de vos doigts tendus, faisant hurler d’angoisse la réalité. Le Feu rose de Tzeentch est un <i>Projectile magique</i>. La Cible touchée subit Dégâts +6, et gagne +1 État <i>En flammes</i>.</span></p><p><span class=\"fontstyle0\">Si un Personnage de Taille petite ou plus grande est réduit à 0 Blessure par ce Sort, alors qu’il est sous l’effet de l’État En flammes causé par le Feu rose de Tzeentch, lancez un d10. Sur un résultat de 9, une horreur rose (voir page 85) se fraie un chemin hors du corps convulsé de la Cible, la tuant aussitôt.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "1a0uY9XWM9tSfqEl",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Feu Rose de Tzeentch",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "applyDamage",
|
||||
"effectApplication": "damage",
|
||||
"script": "args.actor.addCondition(\"ablaze\")",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"id": "Bolt of Change",
|
||||
"name": "Eclair de Changement",
|
||||
"description": "<p><span class=\"fontstyle0\">Un éclair palpitant d’énergie chaotique déchire l’air. </span><em><span class=\"fontstyle2\">Eclair de Changement </span></em><span class=\"fontstyle0\">est un</span><em><span class=\"fontstyle2\">projectile magique</span></em><span class=\"fontstyle0\">, avec Dégâts +7. Toutes les personnes touchées par le sort doivent réussir un test d’</span><strong><span class=\"fontstyle3\">Endurance Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">. En cas d’échec, la cible gagne un point de corruption. En cas d’échec critique, la cible effectue un lancer sur le tableau des Mutations, et gagne le talent </span><span class=\"fontstyle2\">@Compendium[wfrp4e.talents.hiU7vhBOVpVI8c7C]{Chaos Magic (Tzeentch)} </span><span class=\"fontstyle0\">. Un Personnage touché par ce sort peut dépenser un point de Détermination pour résister à la mutation.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Mindfire",
|
||||
"name": "Feu Spirituel",
|
||||
"description": "<p><span class=\"fontstyle0\">L’air se déforme au bout de vos doigts, formant un éclair d’énergie magique brumeuse et chatoyante que vous pouvez lancer sur votre Cible. Toute personne affectée par Feu spirituel doit réussir un Test de <strong>Calme Intermédiaire (+0)</strong>, ou gagner 1 Point de Corruption. Pour chaque +2 DR, vous pouvez faire gagner un Point de Corruption supplémentaire à la Cible dont le Test de <strong>Calme</strong> est raté. Si une Mutation se produit à la suite de ce Sort, la Cible effectue automatiquement un jet sur le tableau des <a class=\"table-click\" data-table=\"expandedmutatemental\">Mutations mentales</a>, et gagne +1 État <i>En flammes</i> alors que du feu surnaturel jaillit de chaque orifice de sa tête.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"id": "Bolt of Corruption (Tzeentch)",
|
||||
"name": "Eclair de Corruption (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous focalisez une sombre magie dans un éclair destructeur et corrosif. Il s’agit d’un projectile magique avec Dégâts +5. Toutes les personnes touchées par le sort doivent réussir un test d’</span><span class=\"fontstyle2\">Endurance Intermédiaire (+0)</span><span class=\"fontstyle0\">,ou gagner 1 point de Corruption.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "The Flickering Flames of Fickle Fate",
|
||||
"name": "Flammes vacillantes du capricieux destin",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous invoquez un torrent de feu magique, qui crache, crépite et brûle sans aucun combustible matériel. Ce feu n’a aucune propriété physique et ne brûle pas, n’endommage pas et n’émet pas de chaleur. Toutes les créatures vivantes et les démons qui peuvent le percevoir peuvent choisir de relancer chaque Test une fois, comme s’ils avaient dépensé un Point de Chance, même s’ils ont réussi le Test. Chaque fois, ils doivent réussir un Test de <strong>Résistance Intermédiaire (+0)</strong> ou gagner +1 Point de Corruption. Les Personnages portant la marque de Tzeentch sont immunisés à cette Corruption. Le Test pour résister au gain de Corruption ne peut pas être relancé en utilisant l’effet de ce Sort.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"id": "Bolt of Corruption (Undivided)",
|
||||
"name": "Eclair de Corruption (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous focalisez une sombre magie dans un éclair destructeur et corrosif. Il s’agit d’un projectile magique avec Dégâts +5. Toutes les personnes touchées par le sort doivent réussir un test d’</span><span class=\"fontstyle2\">Endurance Intermédiaire (+0)</span><span class=\"fontstyle0\">,ou gagner 1 point de Corruption.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Master of Fortune",
|
||||
"name": "Maître du Destin",
|
||||
"description": "<p><span class=\"fontstyle0\">Les sorciers de Tzeentch négocient souvent avec leur maître pour obtenir des indications sur leur destin. Cette recherche est dangereuse, car Tzeentch est un dieu capricieux, même envers ses serviteurs favoris. Une fois que le Sort est lancé, il ne peut plus l’être à nouveau, jusqu’à ce que sa durée soit écoulée.</span></p><p><span class=\"fontstyle0\">Calculez la réussite du Test de <strong>Langue (Magick)</strong> nécessaire pour lancer le Sort. Pour chaque DR positif, le Lanceur bénéficie d’un Point de Chance qu’il peut utiliser normalement pendant la durée du Sort. Cependant, si le Sort échoue, pour chaque DR négatif, le Lanceur reçoit un Point de Corruption pour avoir examiné un éventail vertigineux d’inquiétants échos futurs.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "qRYINhWYqnpN1MHC",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Maître du Destin",
|
||||
"transfer": false,
|
||||
"flags": {}
|
||||
}
|
||||
]
|
||||
"id": "Boon of Tzeentch",
|
||||
"name": "Aubaine de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos paroles, imprégnées par la prescience labyrinthique de l’Architecte des Destinées, tordent votre esprit, vous donnant accès à un nouveau domaine d’arcane. Choisissez un sort provenant de n’importe quel Domaine (pour maintenir une fluidité de jeu, le Conteur peut fixer une limite de neuf secondes pour la décision).Tant qu’</span><em><span class=\"fontstyle2\">Aubaine de Tzeentch </span></em><span class=\"fontstyle0\">est actif, vous pouvez incanter ce nouveau sort comme si vous l’aviez mémorisé, mais sans pouvoir le copier dans un grimoire, un parchemin, ou autre. Si vous focalisez pour incanter, vous pouvez utiliser au choix Focalisation (</span><em><span class=\"fontstyle2\">Dhar</span></em><span class=\"fontstyle0\">) ou la focalisation adaptée au domaine du sort, si vous la possédez. <br></span></p>\n<p><span class=\"fontstyle0\">En cas d’incantation imparfaite en focalisant ou incantant ce nouveau sort, le sort </span><em><span class=\"fontstyle2\">Aubaine de Tzeentch </span></em><span class=\"fontstyle0\">quitte votre esprit avec dégout et s’efface de votre grimoire si jamais il avait autorisé son écriture à l’intérieur de celui-ci.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Curse of Tzeentch",
|
||||
"name": "Malédiction de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Selon la tradition tzeentchienne, tous les Sorts découlent de la volonté du Dieu et lui appartiennent donc. En utilisant ce Sort, un sorcier de Tzeentch peut faire perdre à un autre sorcier la connaissance et la capacité de lancer un Sort dont il avait auparavant la maîtrise.</span></p><p><span class=\"fontstyle0\">Si la Malédiction de Tzeentch est un succès, le Lanceur doit alors faire un Test opposé de <strong>Force Mentale</strong> contre la Cible. Si le Lanceur gagne, la Cible perd l’accès à un Sort pris au hasard. Les effets de la Malédiction durent un jour pour chaque DR obtenu par le Lanceur lors du Test opposé.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"description": "<p><span class=\"fontstyle0\">Dans le Domaine de Tzeentch, tous les sorts proviennent en dernière instance de la volonté du Dieu et à ce titre ils lui appartiennent. En utilisant ce sort, un magus de Tzeentch peut amener un autre sorcier à perdre la connaissance et la capacité à incanter un sort qu’il avait déjà maitrisé.<br></span></p>\n<p><span class=\"fontstyle0\">Si l’incantation de la Malédiction de Tzeentch est réussie, le magus doit réussir un test opposé de </span><span class=\"fontstyle2\"><strong>Force Mentale</strong> </span><span class=\"fontstyle0\"> contre la cible. En cas de réussite, la cible perd l’accès à un sort aléatoirement choisi. Les effets de la Malédiction de Tzeentch durent un jour par DR obtenu au test opposé.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Word of Tzeentch",
|
||||
"name": "Parole de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Alors que votre langue émet les motifs sonores déformés de ce Sort blasphématoire, deux voix semblent sortir de votre gorge, en une harmonie impie et contre nature. Vos mots renferment une signification supplémentaire pour ceux qui sont affectés par le Sort, même si les Cibles ne peuvent pas se souvenir de ce qui a été dit. Elles en conservent un sentiment obsédant de pressentiment, comme si elles avaient oublié quelque chose de très important concernant leur propre avenir.</span></p>\n<p><span class=\"fontstyle0\"><br>. Les Cibles vivantes affectées par le Sort doivent faire un Test opposé d’<strong>Intelligence</strong>. Si la Cible perd, elle gagne 1 État <i>Sonné</i>, +1 État <i>Sonné</i> supplémentaire pour chaque DR d’écart. En cas de Maladresse, elle gagne l’État <i>Inconscient</i>, et +1 Point de Corruption.<br></span></p>\n<p><span class=\"fontstyle0\">Une fois que tous les États ont été retirés, les Cibles affectées doivent réussir un Test de <strong>Résistance Accessible (+20)</strong>, ou gagner +1 Corruption. Si elles obtiennent une Maladresse, elles gagnent immédiatement 1 Mutation mentale, et ne peuvent pas prendre d’Ambition à court terme pendant les 1d10 semaines suivantes.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"id": "Demonic Mien (Tzeentch)",
|
||||
"name": "Aspect Démoniaque (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la puissance mutagène du Chaos dans votre propre chair, sacrifiant temporairement votre enveloppe mortelle pour en faire un autel à la volonté de votre de dieu. Votre corps est déformé, arborant des traits d’un démon serviteur de votre divinité patronne. Jetez 1d10 sur la table <a class=\"table-click\" data-table=\"demonic-mien\"> Demonic Miens </a>et appliquez les traits adaptés pour la durée du sort. Pour chaque +2 </span><span class=\"fontstyle2\">DR </span><span class=\"fontstyle0\">vous pouvez étendre la durée du sort et lancer à nouveau 1d10 sur la table Demonic Miens. Si vous obtenez le trait </span><span class=\"fontstyle3\">@Compendium[wfrp4e.traits.v3uzEthcq0JRar0J]{Daemonic} </span><span class=\"fontstyle0\"> et que vous tombez à 0 Blessures, votre âme est aspirée dans les Royaumes du Chaos comme décrit dans les règles concernant les Traits de Créatures.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Obsession (Undivided)",
|
||||
"name": "Obsession (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous devez posséder un objet chéri ou précieux appartenant à la Cible. Vous instillez magiquement de la matière brute du Chaos dans l’objet qui, à son tour, affecte la Cible. Elle devient obsédée par quelque chose : la nature précise de l’obsession dépend de l’individu en question, et de votre Domaine. Par exemple, lorsqu’il s’agit de Nurgle, <i>Obsession</i> peut pousser la Cible récemment blessée à gratter frénétiquement ses croûtes. Le Domaine de Slaanesh peut pousser un épicurien ou un gourmand à se goinfrer.</span></p><p><span class=\"fontstyle0\">La Cible doit réussir un Test de <strong>Résistance Accessible (+20)</strong> toutes les heures, ou succomber à son obsession. En cas d’échec, les Tests suivants deviennent <strong>Intermédiaire (+0)</strong>, puis si les échecs s’enchaînent, les Tests sont de plus en plus difficiles, jusqu’à ce qu’ils deviennent <strong>Très difficiles (-30)</strong>. Si la Cible obtient une Maladresse à l’un d’entre eux (en lançant un double), elle devient complètement obsédée. Elle ne peut rien faire d’autre que céder à cette obsession, quels qu’en soient le coût et les conséquences, pendant un nombre d’heures égal à 1d10 - Bonus de Force Mentale (minimum 1 heure). À la fin de la durée du Sort, en plus de toutes les autres implications physiques, sociales ou financières, la Cible doit réussir un Test de <strong>Résistance Intermédiaire (+0)</strong> ou gagner +1 Point de Corruption.</span></p><p><span class=\"fontstyle0\">Une Cible ne peut être affectée par ce Sort qu’une seule fois pour chaque Domaine avec lequel il est lancé. Toute tentative ultérieure sur la même Cible avec ce Sort est sans effet.</span> </p>",
|
||||
"effets": []
|
||||
"id": "Demonic Mien (Undivided)",
|
||||
"name": "Aspect Démoniaque (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous canalisez la puissance mutagène du Chaos dans votre propre chair, sacrifiant temporairement votre enveloppe mortelle pour en faire un autel à la volonté de votre de dieu. Votre corps est déformé, arborant des traits d’un démon serviteur de votre divinité patronne. Jetez 1d10 sur la table <a class=\"table-click\" data-table=\"demonic-mien\"> Demonic Miens </a>et appliquez les traits adaptés pour la durée du sort. Pour chaque +2 </span><span class=\"fontstyle2\">DR </span><span class=\"fontstyle0\">vous pouvez étendre la durée du sort et lancer à nouveau 1d10 sur la table Demonic Miens. Si vous obtenez le trait </span><span class=\"fontstyle3\">@Compendium[wfrp4e.traits.v3uzEthcq0JRar0J]{Daemonic} </span><span class=\"fontstyle0\"> et que vous tombez à 0 Blessures, votre âme est aspirée dans les Royaumes du Chaos comme décrit dans les règles concernant les Traits de Créatures.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Foul Messenger (Tzeentch)",
|
||||
"name": "Messager Infect (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous conjurez devant vous une horde de démons mineurs enchainés à votre volonté. La forme des démons variera selon votre divinité. Les démons transporteront un cout message (environ 25 mots) à votre cible. Ceux-ci voyagent instantanément, sont invisibles (et inaudibles) pour tout le monde sauf pour ceux avec le talent</span><span class=\"fontstyle2\">Seconde Vue</span><span class=\"fontstyle0\"> ceci même au moment où ils transmettent leur message. Toute personne avec le talent peut faire un test de </span><strong><span class=\"fontstyle3\">Perception Difficile Difficile (-20)</span></strong><span class=\"fontstyle0\"><strong>Test</strong> pour repérer la horde et entendre leur message. Pour chaque +2DR obtenu vous pouvez doubler la longueur du message.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Foul Messenger (Undivided)",
|
||||
"name": "Messager Infect (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous conjurez devant vous une horde de démons mineurs enchainés à votre volonté. La forme des démons variera selon votre divinité. Les démons transporteront un cout message (environ 25 mots) à votre cible. Ceux-ci voyagent instantanément, sont invisibles (et inaudibles) pour tout le monde sauf pour ceux avec le talent</span><span class=\"fontstyle2\">Seconde Vue</span><span class=\"fontstyle0\"> ceci même au moment où ils transmettent leur message. Toute personne avec le talent peut faire un test de </span><strong><span class=\"fontstyle3\">Perception Difficile Difficile (-20)</span></strong><span class=\"fontstyle0\"><strong>Test</strong> pour repérer la horde et entendre leur message. Pour chaque +2DR obtenu vous pouvez doubler la longueur du message.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Joyous Aspect (Tzeentch)",
|
||||
"name": "Aspect Joyeux (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Le magus entoure la cible (éventuellement lui-même) d’une coiffe corrompue de </span><em><span class=\"fontstyle2\">Dhar</span></em><span class=\"fontstyle0\">teinté d’ </span><em><span class=\"fontstyle2\">Ulgu</span></em><span class=\"fontstyle0\">, ce qui l’enveloppe d’une aura de dissimulation. Tant que le sort fait effet, la cible apparait sans défaut ni imperfections. Les cicatrices, les déformations et, plus important, les mutations deviennent indétectables sauf par des moyens divins. </span></p>\n<p><span class=\"fontstyle0\">Bien que les déformations les plus visibles soient cachées, la cible peut apparaitre étrange ou bizarre, comme débordante de vitalité ou fabuleusement attrayante. Réussir un test de </span><strong><span class=\"fontstyle2\"> Perception Difficile (-20)</span></strong><span class=\"fontstyle0\"><strong>Test</strong> révèle que quelque chose n’est pas normal, sans pour autant préciser ce que c’est. Pour les Personnages avec le talent </span><em><span class=\"fontstyle3\">Seconde Vue </span></em><span class=\"fontstyle0\"> le test es <strong>C</strong></span><strong><span class=\"fontstyle2\">Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">. En cas de succès, les personnages auront conscience qu’un sort est présent mais pas de ce qu’il dissimule.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Joyous Aspect (Undivided)",
|
||||
"name": "Aspect Joyeux (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Le magus entoure la cible (éventuellement lui-même) d’une coiffe corrompue de </span><em><span class=\"fontstyle2\">Dhar</span></em><span class=\"fontstyle0\">teinté d’ </span><em><span class=\"fontstyle2\">Ulgu</span></em><span class=\"fontstyle0\">, ce qui l’enveloppe d’une aura de dissimulation. Tant que le sort fait effet, la cible apparait sans défaut ni imperfections. Les cicatrices, les déformations et, plus important, les mutations deviennent indétectables sauf par des moyens divins. </span></p>\n<p><span class=\"fontstyle0\">Bien que les déformations les plus visibles soient cachées, la cible peut apparaitre étrange ou bizarre, comme débordante de vitalité ou fabuleusement attrayante. Réussir un test de </span><strong><span class=\"fontstyle2\"> Perception Difficile (-20)</span></strong><span class=\"fontstyle0\"><strong>Test</strong> révèle que quelque chose n’est pas normal, sans pour autant préciser ce que c’est. Pour les Personnages avec le talent </span><em><span class=\"fontstyle3\">Seconde Vue </span></em><span class=\"fontstyle0\"> le test es <strong>C</strong></span><strong><span class=\"fontstyle2\">Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">. En cas de succès, les personnages auront conscience qu’un sort est présent mais pas de ce qu’il dissimule.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Master of Fortune",
|
||||
"name": "Maître de la Chance",
|
||||
"description": "<p><span class=\"fontstyle0\">Les magus de Tzeentch négocient souvent avec leur maitre pour que ce dernier leur fournisse des aperçus de leur potentiel destin. Faire de la divination sur ce sujet est dangereux car Tzeentch est un dieu capricieux, même à l’encontre de ses serviteurs favoris. Une fois que le sort est lancé, il ne peut plus être lancé à nouveau avant que sa durée expire.</span></p>\n<p><span class=\"fontstyle0\"><br>. Le résultat est déterminé par un test de </span><strong><span class=\"fontstyle2\">Langage (Magick) </span></strong><span class=\"fontstyle0\"> nécessaire pour incanter le sort. Pour chaque DR sur ce jet, le magus bénéficie d’un point de Fortune utilisable normalement pendant toute la durée du sort. Cependant, si l’incantation échoue, le magus reçoit 1 point de corruption pour chaque degré d’échec, alors que son esprit est troublé par des échos issus la vertigineuse gamme des futurs possibles.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Mindfire",
|
||||
"name": "Esprit Enflammé",
|
||||
"description": "<p><span class=\"fontstyle0\">L’air se déforme autour du bout de vos doigts d’où l’énergie magique forme un éclair scintillant et brumeux qui peut être projeté sur votre cible. Toute personne affectée par </span><em><span class=\"fontstyle2\">Enflammé </span></em><span class=\"fontstyle0\">doit réussir un test de <strong>C</strong></span><strong><span class=\"fontstyle3\">Calme Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">,ou gagner 1 point de Corruption. Pour chaque +2DR vous pouvez faire que votre cible gagne un point de corruption supplémentaire si le test de Calme a échoué. Si du fait du sort une mutation est déclenchée, la cible lance automatiquement sur la table des <a class=\"table-click\" data-table=\"expandedmutatemental\"> Mental Mutation </a>.Elle gagne en même temps +1 Etat </span><em><span class=\"fontstyle2\">Enflammé </span></em><span class=\"fontstyle0\"> alors que des flammes surnaturelles jaillissent depuis tous les orifices de sa tête.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Obsession (Tzeentch)",
|
||||
"name": "Obsession (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous devez posséder un objet chéri ou précieux appartenant à la Cible. Vous instillez magiquement de la matière brute du Chaos dans l’objet qui, à son tour, affecte la Cible. Elle devient obsédée par quelque chose : la nature précise de l’obsession dépend de l’individu en question, et de votre Domaine. Par exemple, lorsqu’il s’agit de Nurgle, <i>Obsession</i> peut pousser la Cible récemment blessée à gratter frénétiquement ses croûtes. Le Domaine de Slaanesh peut pousser un épicurien ou un gourmand à se goinfrer.</span></p><p><span class=\"fontstyle0\">La Cible doit réussir un Test de <strong>Résistance Accessible (+20)</strong> toutes les heures, ou succomber à son obsession. En cas d’échec, les Tests suivants deviennent <strong>Intermédiaire (+0)</strong>, puis si les échecs s’enchaînent, les Tests sont de plus en plus difficiles, jusqu’à ce qu’ils deviennent <strong>Très difficiles (-30)</strong>. Si la Cible obtient une Maladresse à l’un d’entre eux (en lançant un double), elle devient complètement obsédée. Elle ne peut rien faire d’autre que céder à cette obsession, quels qu’en soient le coût et les conséquences, pendant un nombre d’heures égal à 1d10 - Bonus de Force Mentale (minimum 1 heure). À la fin de la durée du Sort, en plus de toutes les autres implications physiques, sociales ou financières, la Cible doit réussir un Test de <strong>Résistance Intermédiaire (+0)</strong> ou gagner +1 Point de Corruption.</span></p><p><span class=\"fontstyle0\">Une Cible ne peut être affectée par ce Sort qu’une seule fois pour chaque Domaine avec lequel il est lancé. Toute tentative ultérieure sur la même Cible avec ce Sort est sans effet.</span> </p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"description": "<p><span class=\"fontstyle0\">Vous devez posséder un objet cher ou précieux appartenant à la cible. Vous enroulez au sein de l’objet une magie infusée avec la matière brute du Chaos qui, à son tour, affecte la cible. Celle-ci devient obsédée par quelque chose : la nature en question de l’obsession dépend de la personnalité de la cible et de votre Domaine. Par exemple, incantée depuis le Domaine de Nurgle, </span><em><span class=\"fontstyle2\">Obsession </span></em><span class=\"fontstyle0\">pourrait amener une cible récemment blessée à devenir obsédée par le fait de gratter les croutes de ses blessures. Le domaine de Slaanesh pourrait amener un épicurien ou un gourmand à manger excessivement. </span></p>\n<p><span class=\"fontstyle0\"><br>La cible doit réussir un test d’</span><strong><span class=\"fontstyle3\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"><strong>Test</strong> chaque heure ou succomber à son obsession. Sur un échec, les tests suivants deviennent </span><strong><span class=\"fontstyle3\">Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">. Chaque échec supplémentaire rend les futurs tests de plus en plus difficiles, jusque </span><strong><span class=\"fontstyle3\">Très Difficile (-30)</span></strong><span class=\"fontstyle0\">. Si jamais un échec critique survient lors d’un de ses test (échouer le jet en faisant un double), la cible devient complétement obsédée. Celle-ci ne peut rien faire que de céder à son obsession peu importe le cout ou les conséquences, et ceci pour 10-Bonus de Force Mentale heures (minimum 1 heure). A la fin du sort, en plus de toutes les conséquences physiques, sociales ou financières, la cible doit réussir un test d’ </span><strong><span class=\"fontstyle3\">Endurance Intermédiaire (+0) </span></strong><span class=\"fontstyle0\"><strong>Test</strong> ou gagner +1 point de corruption.<br></span></p>\n<p><span class=\"fontstyle0\">Une cible ne peut être affectée qu’une seule fois par ce sort pour chaque Domaine avec lequel il est incanté. Tout essai supplémentaire provenant du même Domaine sur la même cible avec ce sort n’a aucun effet.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Foul Messenger (Undivided)",
|
||||
"name": "Odieux Messager (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous invoquez un essaim de démons mineurs asservis à votre volonté. Leur forme varie en fonction de la divinité révérée. Les démons porteront un court message (environ vingt-cinq mots) à votre Cible. Ils voyagent presque instantanément et sont invisibles (et inaudibles) pour toute personne ne possédant pas le Talent Seconde vue, même lorsqu’ils délivrent leur message. Toute personne possédant ce Talent peut effectuer un Test de <strong>Perception Difficile (-20)</strong> pour remarquer l’essaim et entendre son message. Pour chaque +2 DR, vous pouvez doubler la longueur du message.</span></p>",
|
||||
"effets": []
|
||||
"id": "Obsession (Undivided)",
|
||||
"name": "Obsession (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous devez posséder un objet cher ou précieux appartenant à la cible. Vous enroulez au sein de l’objet une magie infusée avec la matière brute du Chaos qui, à son tour, affecte la cible. Celle-ci devient obsédée par quelque chose : la nature en question de l’obsession dépend de la personnalité de la cible et de votre Domaine. Par exemple, incantée depuis le Domaine de Nurgle, </span><em><span class=\"fontstyle2\">Obsession </span></em><span class=\"fontstyle0\">pourrait amener une cible récemment blessée à devenir obsédée par le fait de gratter les croutes de ses blessures. Le domaine de Slaanesh pourrait amener un épicurien ou un gourmand à manger excessivement. </span></p>\n<p><span class=\"fontstyle0\"><br>La cible doit réussir un test d’</span><strong><span class=\"fontstyle3\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"><strong>Test</strong> chaque heure ou succomber à son obsession. Sur un échec, les tests suivants deviennent </span><strong><span class=\"fontstyle3\">Intermédiaire (+0)</span></strong><span class=\"fontstyle0\">. Chaque échec supplémentaire rend les futurs tests de plus en plus difficiles, jusque </span><strong><span class=\"fontstyle3\">Très Difficile (-30)</span></strong><span class=\"fontstyle0\">. Si jamais un échec critique survient lors d’un de ses test (échouer le jet en faisant un double), la cible devient complétement obsédée. Celle-ci ne peut rien faire que de céder à son obsession peu importe le cout ou les conséquences, et ceci pour 10-Bonus de Force Mentale heures (minimum 1 heure). A la fin du sort, en plus de toutes les conséquences physiques, sociales ou financières, la cible doit réussir un test d’ </span><strong><span class=\"fontstyle3\">Endurance Intermédiaire (+0) </span></strong><span class=\"fontstyle0\"><strong>Test</strong> ou gagner +1 point de corruption.<br></span></p>\n<p><span class=\"fontstyle0\">Une cible ne peut être affectée qu’une seule fois par ce sort pour chaque Domaine avec lequel il est incanté. Tout essai supplémentaire provenant du même Domaine sur la même cible avec ce sort n’a aucun effet.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Foul Messenger (Tzeentch)",
|
||||
"name": "Odieux Messager (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous invoquez un essaim de démons mineurs asservis à votre volonté. Leur forme varie en fonction de la divinité révérée. Les démons porteront un court message (environ vingt-cinq mots) à votre Cible. Ils voyagent presque instantanément et sont invisibles (et inaudibles) pour toute personne ne possédant pas le Talent Seconde vue, même lorsqu’ils délivrent leur message. Toute personne possédant ce Talent peut effectuer un Test de </strong>Perception Difficile (-20)</strong> pour remarquer l’essaim et entendre son message. Pour chaque +2 DR, vous pouvez doubler la longueur du message.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Sense the Skein",
|
||||
"name": "Percevoir l’écheveau",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos yeux brillent de rose et bleu tandis que vous prononcez des mots de pouvoir interdits. Vos yeux se dessillent et vous percevez, pendant quelques instants fugaces, le destin interconnecté de toutes choses. Vous pouvez choisir une Cible que vous pouvez voir, et le MJ doit révéler la Motivation, l’Ambition à court terme et l’Ambition à long terme de cette Cible.</span> </p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
},
|
||||
{
|
||||
"id": "Power of Chaos (Undivided)",
|
||||
"name": "Pouvoir du Chaos (Indivisible)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous appelez les Dieux Sombres du Chaos à vous aider en pratiquant une petite déchirure dans l’Aethyr. Tous les Sorts lancés dans un rayon de quelques mètres du point ciblé par le Sort voient leur NI réduit de moitié. Toute personne se trouvant dans la Zone d’Effet doit réussir un Test de </strong>Résistance Accessible (+20)</strong> à la fin de chaque Round ou gagner +1 Point de Corruption. Quiconque lance un Sort dans la Zone d’Effet fait son Test avec une </strong>Difficulté Accessible (+20)</strong>.</span></p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "TVALIiKAB2dgDNgV",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/undivided.png",
|
||||
"label": "NI Divisé par 2",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "prePrepareItem",
|
||||
"effectApplication": "apply",
|
||||
"script": "if (args.item.type == \"spell\")\n args.item.cn.value = args.item.cn.value / 2",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "w1U6DcQY33Zo6VyU",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/undivided.png",
|
||||
"label": "Difficulté d'Incantation",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "prefillDialog",
|
||||
"effectApplication": "apply",
|
||||
"script": "if (args.type == \"cast\")\n args.prefillModifiers.difficulty = \"average\"",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"id": "Pink Fire of Tzeentch",
|
||||
"name": "Flammes Roses de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Des éclairs tourbillonnants de flammes roses forment un arc émergeant depuis vos doigts tendus, ce qui amène la réalité à hurler de détresse. </span><em><span class=\"fontstyle2\">Flammes Roses de Tzeentch </span></em><span class=\"fontstyle0\">est un </span><em><span class=\"fontstyle2\">projectile magique</span></em><span class=\"fontstyle0\">. Les cibles touchées reçoivent un coup de dégâts +6 et gagnent +1 Etat </span><em><span class=\"fontstyle2\">Enflammé </span></em><span class=\"fontstyle0\">.</span></p>\n<p><span class=\"fontstyle0\"><br>Si un Personnage de taille Petite ou supérieure est amené à 0 Blessures par le sort, ou sous l’effet d’un Etat <em>Enflammé</em> dû aux </span><em><span class=\"fontstyle2\">Flammes Roses de Tzeentch</span></em><span class=\"fontstyle0\">, jetez <strong><a class=\"chat-roll\">1d10</a></strong>. Sur un résultat de 9, une Horreur Rose surgit, dévorant la chair hurlante du Personnage depuis l’intérieur. Ce dernier meurt sur le coup.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Power of Chaos (Tzeentch)",
|
||||
"name": "Pouvoir du Chaos (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous appelez les Dieux Sombres du Chaos à vous aider en pratiquant une petite déchirure dans l’Aethyr. Tous les Sorts lancés dans un rayon de quelques mètres du point ciblé par le Sort voient leur NI réduit de moitié. Toute personne se trouvant dans la Zone d’Effet doit réussir un Test de <strong>Résistance Accessible (+20)</strong> à la fin de chaque Round ou gagner +1 Point de Corruption. Quiconque lance un Sort dans la Zone d’Effet fait son Test avec une <strong>Difficulté Accessible (+20)</strong>.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "UwwqUEOhr0SuW8g1",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "NI divisé par 2",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "prePrepareItem",
|
||||
"effectApplication": "apply",
|
||||
"script": "if (args.item.type == \"spell\")\n args.item.cn.value = args.item.cn.value / 2",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"_id": "zLJTAjStuXaDNifw",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Difficulté d'Incantation",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "prefillDialog",
|
||||
"effectApplication": "apply",
|
||||
"script": "if (args.type == \"cast\")\n args.prefillModifiers.difficulty = \"average\"",
|
||||
"preventDuplicateEffects": false
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"name": "Puissance du Chaos (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous appelez les Puissances de la Ruine pour vous aider dans vos efforts en déchirant une partie de l’Aethyr. Tous les sorts incantés depuis Bonus de Sociabilité mètre du point ciblé ont leurs NI divisés par deux. Toute personne au sein de la Zone d’Effet doit réussir un test d’ </span><strong><span class=\"fontstyle2\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"><strong></strong>à la fin de chaque round ou gagner + 1 point de Corruption. Toute personne incantant un sort au sein de la Zone d’Effet, fait ses tests d’incantation à une difficulté </span><span class=\"fontstyle2\"><strong>Accessible (+20)</strong>.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Tzeentch's Firestorm",
|
||||
"name": "Tempête de feu de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Une tempête tourbillonnante de feu arcanique violet jaillit, invoquée par vos gloussements impies. La Tempête de feu de Tzeentch est un <i>Projectile magique</i>. Les personnes touchées subissent +9 Points de Dégâts et gagnent +1 Etat <i>En flammes</i>.</span></p>\n<p><span class=\"fontstyle0\"><br>Si un Personnage de Taille petite ou plus grande est réduit à 0 Blessure par ce Sort, ou pendant qu’il souffre d’un État <i>En flammes</i> dû à la <i>Tempête de feu de Tzeentch</i>, lancez 1d10. Sur un résultat de 9, deux horreurs roses (voir page 85) s’extirpent du corps de la Cible, qui brûle magiquement, et tuent le pauvre malheureux.</span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": [
|
||||
{
|
||||
"_id": "upb0Smw09GRxyT8a",
|
||||
"changes": [],
|
||||
"disabled": false,
|
||||
"duration": {
|
||||
"startTime": null
|
||||
},
|
||||
"icon": "modules/wfrp4e-core/icons/spells/tzeentch.png",
|
||||
"label": "Tempête de feu de Tzeentch",
|
||||
"tint": null,
|
||||
"transfer": false,
|
||||
"flags": {
|
||||
"wfrp4e": {
|
||||
"effectTrigger": "applyDamage",
|
||||
"effectApplication": "damage",
|
||||
"script": "args.actor.addCondition(\"ablaze\")",
|
||||
"preventDuplicateEffects": true
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
"id": "Power of Chaos (Undivided)",
|
||||
"name": "Puissance du Chaos (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous appelez les Puissances de la Ruine pour vous aider dans vos efforts en déchirant une partie de l’Aethyr. Tous les sorts incantés depuis Bonus de Sociabilité mètre du point ciblé ont leurs NI divisés par deux. Toute personne au sein de la Zone d’Effet doit réussir un test d’ </span><strong><span class=\"fontstyle2\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"><strong></strong>à la fin de chaque round ou gagner + 1 point de Corruption. Toute personne incantant un sort au sein de la Zone d’Effet, fait ses tests d’incantation à une difficulté </span><span class=\"fontstyle2\"><strong>Accessible (+20)</strong>.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "The Purple Hand",
|
||||
"name": "La Main Pourpre",
|
||||
"description": "<p>Ce sort est une malédiction mesquine utilisée par les sorciers de la Main Pourpre pour intimider et calmer les co-conspirateurs agressifs. De tous les codes non verbaux utilisés par la Main Pourpre, le sens de cette malédiction est clair : corrigez vos actes immédiatement ou soyez punis.</span></p><p><span class=\"fontstyle0\">Pour lancer le Sort, le sorcier doit d'abord obtenir un petit morceau de sa Cible : un cheveu perdu ou une rognure d'ongle d'orteil suffisent. Si cet objet est obtenu et que le Sort est lancé avec succès, les paumes des mains de la Cible deviennent d'un profond violet. Les effets du Sort durent une heure pour chaque niveau de réussite obtenu par le Lanceur lors de l'Incantation. </span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"id": "Rend Aethyr (Tzeentch)",
|
||||
"name": "Déchirement d'Aethyr (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos paroles immondes et malsaines déchirent le tissu de la réalité, créant une faille dans le monde à travers laquelle les serviteurs des Dieux Sombres sont libres de passer. Une déchirure en forme de portail menant à l’Aethyr apparait.</span></p>\n<p><span class=\"fontstyle0\"><br>A la fin de chaque tour, un Démon Mineur traverse le portail depuis les Royaumes du Chaos. Ces démons ne sont pas sous votre contrôle mais auront tendance à vous protéger et à attaquer vos ennemis, si c’est la volonté de votre maitre impie. Les démons invoqués dépendent de votre domaine du Chaos : Démonettes de Slaanesh, Portepestes de Nurgle, Horreurs de Tzeentch, Sanguinaires de Khorne et, pour les Magus du Chaos (Unifié) des Furies du Chaos. Tant que le sort fait effet, tous les démons invoqués sont immunisés à l’état </span><em><span class=\"fontstyle2\">Instable </span></em><span class=\"fontstyle0\">.</span></p>\n<p><span class=\"fontstyle0\"><br>Pour chaque +5 DR vous pouvez augmenter la vitesse d’arrivée des <br> démons de +1 par tour.</span></p>\n<p><span class=\"fontstyle0\"><br>Les créatures vivantes doivent réussir un test d’ </span><strong><span class=\"fontstyle3\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"> à la fin de chaque round où la faille est dans leur champ de vision ou gagner +1 point de Corruption. Toute créature vivante suffisamment folle ou malchanceuse pour traverser la faille tombe dans les Royaumes du Chaos et meurt instantanément sauf dépense d’un point de Destin. Si c’est le cas, ils sont recrachés dans le monde réel, peut-être sauvés par un pouvoir supérieur en vue d’un dessein encore inaccompli.</span></p>\n<p><span class=\"fontstyle0\"><br>En cas d’échec critique sur l’incantation de ce sort, les démons traversant la faille depuis les Royaumes du Chaos sont les serviteurs d’une divinité rivale et seront probablement immédiatement hostiles à leur invocateur!</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Rend Aethyr (Undivided)",
|
||||
"name": "Déchirement d'Aethyr (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos paroles immondes et malsaines déchirent le tissu de la réalité, créant une faille dans le monde à travers laquelle les serviteurs des Dieux Sombres sont libres de passer. Une déchirure en forme de portail menant à l’Aethyr apparait.</span></p>\n<p><span class=\"fontstyle0\"><br>A la fin de chaque tour, un Démon Mineur traverse le portail depuis les Royaumes du Chaos. Ces démons ne sont pas sous votre contrôle mais auront tendance à vous protéger et à attaquer vos ennemis, si c’est la volonté de votre maitre impie. Les démons invoqués dépendent de votre domaine du Chaos : Démonettes de Slaanesh, Portepestes de Nurgle, Horreurs de Tzeentch, Sanguinaires de Khorne et, pour les Magus du Chaos (Unifié) des Furies du Chaos. Tant que le sort fait effet, tous les démons invoqués sont immunisés à l’état </span><em><span class=\"fontstyle2\">Instable </span></em><span class=\"fontstyle0\">.</span></p>\n<p><span class=\"fontstyle0\"><br>Pour chaque +5 DR vous pouvez augmenter la vitesse d’arrivée des <br> démons de +1 par tour.</span></p>\n<p><span class=\"fontstyle0\"><br>Les créatures vivantes doivent réussir un test d’ </span><strong><span class=\"fontstyle3\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\"> à la fin de chaque round où la faille est dans leur champ de vision ou gagner +1 point de Corruption. Toute créature vivante suffisamment folle ou malchanceuse pour traverser la faille tombe dans les Royaumes du Chaos et meurt instantanément sauf dépense d’un point de Destin. Si c’est le cas, ils sont recrachés dans le monde réel, peut-être sauvés par un pouvoir supérieur en vue d’un dessein encore inaccompli.</span></p>\n<p><span class=\"fontstyle0\"><br>En cas d’échec critique sur l’incantation de ce sort, les démons traversant la faille depuis les Royaumes du Chaos sont les serviteurs d’une divinité rivale et seront probablement immédiatement hostiles à leur invocateur!</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Sense the Skein",
|
||||
"name": "Sens de la Vie",
|
||||
"description": "<p><span class=\"fontstyle0\">Vos yeux brillent d’une lueur rose et bleue alors que vous prononcez des mots de pouvoir interdits. Vos yeux se dessillent et pendant un court instant, vous percevez le destin interconnecté de toutes les choses. Vous pouvez choisir une cible à portée de vue, et le Conteur révélera la Motivation, l’Ambition à Court Terme et l’Ambition à Long Terme de celle-ci.</span> </p>"
|
||||
},
|
||||
{
|
||||
"id": "Slave to Darkness (Tzeentch)",
|
||||
"name": "Esclave des ténèbres (Tzeentch)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous implorez votre divinité tutélaire pour qu’elle s’empare de l’âme de votre cible et qu’elle la remplace par quelque chose de terrible. Vous devez réussir un jet opposé de </span><strong><span class=\"fontstyle2\">Force Mentale </span></strong><span class=\"fontstyle0\">, contre votre cible avec à minima +2 DR. En cas de succès l’âme de votre victime est envoyée hurlante dans les Royaumes du Chaos et le corps restant est possédé par un Démon. A part si la cible dépense un point de Destin, le contrôle du Personnage est donné au Conteur. Si vous ne remportez pas le jet opposé avec le seuil minimum de +2 DR, vous devez lancer un jet sur la table des <a class=\"table-click\" data-table=\"majormis\">Major Miscast</a>, et le sort échoue. En cas d’échec critique, votre dieu vous punit pour votre arrogance. Votre âme est arrachée de votre corps, condamnée à ne jamais y retourner sauf si vous dépensez un point de Destin pour résister. Ceci risque probablement d’irriter votre divinité, puisque par ce geste vous rejetez manifestement son autorité<br></span></p>\n<p><span class=\"fontstyle0\">Du fait des risques et limitations inhérents à ce sortilège, il est généralement incanté sur des victimes qui ont été “préparées” pour le sacrifice. Que ce soit en étant attachées, droguées, ou bien tranquillisées par d’autres moyens.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Slave to Darkness (Undivided)",
|
||||
"name": "Esclave des ténèbres (Undivided)",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous implorez votre divinité tutélaire pour qu’elle s’empare de l’âme de votre cible et qu’elle la remplace par quelque chose de terrible. Vous devez réussir un jet opposé de </span><strong><span class=\"fontstyle2\">Force Mentale </span></strong><span class=\"fontstyle0\">, contre votre cible avec à minima +2 DR. En cas de succès l’âme de votre victime est envoyée hurlante dans les Royaumes du Chaos et le corps restant est possédé par un Démon. A part si la cible dépense un point de Destin, le contrôle du Personnage est donné au Conteur. Si vous ne remportez pas le jet opposé avec le seuil minimum de +2 DR, vous devez lancer un jet sur la table des <a class=\"table-click\" data-table=\"majormis\">Major Miscast</a>, et le sort échoue. En cas d’échec critique, votre dieu vous punit pour votre arrogance. Votre âme est arrachée de votre corps, condamnée à ne jamais y retourner sauf si vous dépensez un point de Destin pour résister. Ceci risque probablement d’irriter votre divinité, puisque par ce geste vous rejetez manifestement son autorité<br></span></p>\n<p><span class=\"fontstyle0\">Du fait des risques et limitations inhérents à ce sortilège, il est généralement incanté sur des victimes qui ont été “préparées” pour le sacrifice. Que ce soit en étant attachées, droguées, ou bien tranquillisées par d’autres moyens.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "The Flickering Flames of Fickle Fate",
|
||||
"name": "Flammes Vacillantes du Destin",
|
||||
"description": "<p><span class=\"fontstyle0\">Vous conjurez devant vous un torrent de feu magique qui crépite, craquète et flambe sans aucun combustible. Le feu n’a pas de propriétés physiques et ne brûle pas, ne cause pas de dommages, ni n’émet de la chaleur. Toutes les créatures vivantes et les démons qui ont le feu dans leur ligne de vue peuvent choisir de rejeter tous les tests une seule fois, comme s’ils utilisaient un Point de Chance. A chaque fois qu’ils utilisent ceci, ils doivent réussir un jet d’</span><strong><span class=\"fontstyle2\">Endurance Intermédiaire (+0) </span></strong><span class=\"fontstyle0\">ou gagner +1 point de Corruption. Les personnages porteurs de la Marque de Tzeentch sont immunisés à cette corruption. Le test visant à résister au gain de Corruption ne peut pas être relancé en utilisant l’effet des Flammes Vacillantes du Destin.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Transformation of Tzeentch",
|
||||
"name": "Transformation de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Sur votre ordre, des liens de feu aethyrique s’élèvent de la terre, puis s’enroulent autour de votre Cible, l’enveloppant dans un cocon d’énergie magique. Les Cibles affectées gagnent l’État <i>À Terre</i> et sont considérées comme impuissantes pour toute la durée du Sort. Lorsque la Transformation de Tzeentch prend fin, la Cible doit faire un Test de <strong>Résistance Intermédiaire (+0)</strong>, auquel vous opposez votre Compétence Langue (Magick). Si elle perd, elle gagne +1 Point de Corruption, +1 Point supplémentaire pour chaque DR d’écart. </span></p><p>\n\n <b>Domaine:</b> Les Cibles des Sorts issus du Domaine de Tzeentch sont déchirées par la Magie transformatrice du Chaos. Celles affectées par un Sort du Domaine de Tzeentch doivent réussir un Test de Résistance Intermédiaire (+0) ou gagner +1 point de Corruption. Si elles réussissent leur Test, elles gagnent +1 Point de Chance, qu'elles peuvent utiliser normalement. Tels sont les caprices de Tzeentch.<p>",
|
||||
"effets": []
|
||||
"description": "<p><span class=\"fontstyle0\">Sur votre ordre, des liens de feu Aethéryques surgissent du sol et s’enroulent autour de votre cible, l’engloutissant dans cocon d’énergie magique. Les cibles touchées gagnent l’état </span><em><span class=\"fontstyle2\">A Terre </span></em><span class=\"fontstyle0\">, et sont considérées comme Sans Défense pendant la durée du sort. Quand </span><em><span class=\"fontstyle2\">Transformation de Tzeentch </span></em><span class=\"fontstyle0\"> se termine, la cible doit réussir un jet d’ </span><strong><span class=\"fontstyle3\">Endurance Intermédiaire (+0) </span></strong><span class=\"fontstyle0\">, opposé à votre score de Langage (Magick). En cas d’échec , celle-ci gagne + 1 point de corruption et +1 point supplémentaire par DR d’échec. </span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Tzeentch's Firestorm",
|
||||
"name": "Tempête de feu de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Une tempête de feu arcanique violet tourbillonne devant vous, invoquée par vos jacassements blasphématoires. </span><em><span class=\"fontstyle2\">Tempête de feu de Tzeentch </span></em><span class=\"fontstyle0\">est un </span><em><span class=\"fontstyle2\">projectile magique</span></em><span class=\"fontstyle0\">. Toutes les personnes situées dans une zone de Bonus d’Initiative mètre de la cible subissent un coup avec +9 Dégâts et gagnent + 1 état </span><em><span class=\"fontstyle2\">Enflammé </span></em><span class=\"fontstyle0\">.</span></p>\n<p><span class=\"fontstyle0\"><br>Si un Personnage de taille Petite ou supérieure est amené à 0 Blessures par le sort, ou sous l’effet d’un état <em>Enflammé </em> dû à la </span><em><span class=\"fontstyle2\">Tempête de feu de Tzeentch</span></em><span class=\"fontstyle0\">, jetez un <strong><a class=\"chat-roll\">1d10</a></strong>. Sur un résultat de 9, deux Horreurs Rose surgissent du corps brulant de la cible. Cette dernière meurt sur le coup.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Tzeentch's Golden Aura",
|
||||
"name": "Aura Doré de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Parmi l’arsenal d’un magus de Tzeentch, ce sort est un des plus simples et pratiques. Un vortex tourbillonnant de feu jaune est invoqué depuis l’Aethyr et enveloppe le corps du sorcier, le protégeant des coups et des projectiles. Tant que le sort fait effet, le magus bénéficie du Trait de Créature @Compendium[wfrp4e.traits.Bvd2aZ0gQUXHfCTh]{Ward 9+}</span><span class=\"fontstyle2\"> </span><span class=\"fontstyle0\">.</span></p>"
|
||||
},
|
||||
{
|
||||
"id": "Word of Tzeentch",
|
||||
"name": "Mot de Tzeentch",
|
||||
"description": "<p><span class=\"fontstyle0\">Alors que votre langue scande les motifs sonores distordus de ce sort blasphématoire, deux voix semblent jaillir depuis votre gorge, dans une harmonie impie et surnaturelle l’une avec l’autre. Vos paroles ont un sens supplémentaire pour tous ceux affectés par le sortilège, bien que les cibles n’arrivent jamais à se rappeler ce qui s’est dit. Elles sont la cible d’un sentiment entêtant d’appréhension, comme si elles avaient oublié quelque chose d’essentiel concernant leur futur. </span></p>\n<p><span class=\"fontstyle0\"><br>. Les créatures vivantes affectées par le sort doivent réussir un test opposé d’</span><strong><span class=\"fontstyle2\"> Intelligence </span></strong><span class=\"fontstyle0\"> contre vous. En cas d’échec, la cible gagne +1 état </span><em><span class=\"fontstyle3\">Assommé </span></em><span class=\"fontstyle0\"> et +1 Etat supplémentaire par DR d’échec. En cas d’échec critique, elle gagne l’Etat </span><em><span class=\"fontstyle3\">Inconscient </span></em><span class=\"fontstyle0\">, et + 1 Point de Corruption.<br></span></p>\n<p><span class=\"fontstyle0\">Une fois tous les états supprimés, la cible doit réussir un test d’</span><strong><span class=\"fontstyle2\">Endurance Accessible (+20) </span></strong><span class=\"fontstyle0\">, ou gagner +1 point de Corruption. En d’échec critique sur ce jet, la cible gagne immédiatement une mutation de catégorie mentale et ne peut pas choisir d’Ambition de Court Terme pour les <strong><a class=\"chat-roll\">1d10</a></strong> prochaines semaines.</span></p>"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -1,68 +0,0 @@
|
||||
{
|
||||
"label": "Tables (Middenheim)",
|
||||
"entries": [
|
||||
{
|
||||
"id": "Athletics - Middenball",
|
||||
"name": "Athlètisme - Middenball",
|
||||
"results": {
|
||||
"55-65": "L'équipe qui reçoit domine légèrement la rencontre. Ajoutez 5 à leur score au prochain tour.",
|
||||
"66-80": "Un joueur de l'équipe qui reçoit est positionné à l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"81-90": "Un joueur de l'équipe qui reçoit est positionné au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"91-98": "Un joueur de l'équipe qui reçoit est positionné au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"99-100": "Un joueur de l'équipe qui reçoit est positionné à l'avant du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"1-2": "Un joueur de l'équipe invitée est positionné à l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"3-10": "Un joueur de l'équipe invitée est positionné à au milieu de l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"11-20": "Un joueur de l'équipe invitée est positionné à au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"21-35": "Un joueur de l'équipe invitée est positionné à l'avant du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"36-46": "L'équipe invitée domine légèrement la rencontre. Ajoutez 5 à leur score au prochain tour.",
|
||||
"47-54": "Aucun effet ce tour."
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "Brutality - Middenball",
|
||||
"name": "Brutalité - Middenball",
|
||||
"results": {
|
||||
"91-98": "Un membre de l'équipe adverse est gravement blessé. Réduisez le score des équipes A et B de 1 point.",
|
||||
"99-100": "An Away Team player suffers a critical injury and is removed from play. Subtract that player’s A and B score from the team total. If there are no sub-stitutes available, one of the Home Team players becomes a Free Player.",
|
||||
"1-2": "A Home Team player suffers a critical injury and is removed from play. Subtract that player’s A and B score from the team total. If there are no sub-stitutes available, one of the Away Team players becomes a Free Player.",
|
||||
"3-10": "A Home Team player is badly hurt. Reduce the Team’s A and B scores by 1 each.",
|
||||
"11-20": "A Home Team player is rattled. Reduce the Team’s A and B scores by 1 each for 1 turn.",
|
||||
"21-35": "An Away Team player interposes themselves between the player in possession and the goal. This either counts as Guarding, or could be used to cancel out the effects of an existing Guard (whatever most benefits the Away Team).",
|
||||
"36-46": "The Away Team show more aggression. Add 5 to their B score next turn.",
|
||||
"47-54": "There is no effect this turn.",
|
||||
"55-65": "The Home Team show more aggression. Add 5 to their B score next turn.",
|
||||
"66-80": "A Home Team player interposes themselves between the player in possession and the goal. This either counts as Guarding, or could be used to cancel out the effects of an existing Guard (whatever most benefits the Home Team).",
|
||||
"81-90": "An Away Team player is rattled. Reduce the Team’s A and B scores by 1 each for 1 turn."
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "Career - Human (Middenheimer)",
|
||||
"name": "Carrière - Humain (Middenheimer)"
|
||||
},
|
||||
{
|
||||
"id": "Career - Human (Middenlander)",
|
||||
"name": "Carrière - Humain (Middenlander)"
|
||||
},
|
||||
{
|
||||
"id": "Career - Human (Nordlander)",
|
||||
"name": "Carrière - Humain (Nordlander)"
|
||||
},
|
||||
{
|
||||
"id": "Middenball Random Events",
|
||||
"name": "Middenball : Evènements Aléatoires",
|
||||
"results": {
|
||||
"80-83": "Un joueur choisi au hasard parmi tous les joueurs présents sur le terrain (sauf un des PJs ou le joueur en possession de la balle) glisse dans la boue, se tord la cheville et est contraint d'abandonné.",
|
||||
"84-86": "Un joueur choisi au hasard parmi tous les joueurs présents sur le terrain (sauf un des PJs ou le joueur en possession de la balle) a bu dans une gourde, désignez le joueur et faites lui un test de Résistance à l'alcool <b>difficile (-20)<\/b>. ",
|
||||
"87-89": "Un joueur choisi au hasard parmi tous les joueurs présents sur le terrain (sauf un des PJs ou le joueur en possession de la balle) a pris un stimulant qui améliore ses performances. Il ressent immédiatement les effets bénifiques pour ensuite souffrir de @Compendium[wfrp4e-core.trappings.jTFOrokjEHbi12rT]{Délice de Ranald}.",
|
||||
"90-95": "Les supporters de l'équipe locale commencent à chanter, leur équipe bénéficie de +5 B au prochain tour.",
|
||||
"96-100": "Les supporters de l'équipe en déplacement donnent de la voie. Leur équipe bénéficie +5 B au prochain tour.",
|
||||
"1-33": "Rien de particulier ne se passe pour ce tour.",
|
||||
"34-34": "La balle se déchire laissant sortir toutes ses plumes à proximité. S'il s'agit d'un morveux, ce dernier se libère de ses liens et peut soit attaquer un de ses bourreaux, soit tenter de fuir. La partie est stoppée le temps de trouver un remplaçant.",
|
||||
"35-40": "Un fan frappe un joueur à proximité. Une rixe à mains nues de 3 tours démarre entre un joueur tiré au hasard et un @Compendium[wfrp4e-core.bestiary.7ihBjcHcewZ2Obul]{Humain} standard.",
|
||||
"41-60": "Le temps devient maussade, les conditions froides et\/ou humides entraînent une pénalité de -10 à tous les tests d'athlétisme et de capacité de tir au prochain tour.",
|
||||
"61-75": "Si les équipes ne sont pas bien réparties, le gardien de l'équipe avec le moins de joueurs quitte le but.",
|
||||
"76-79": "Un fan lance un objet sur un joueur sélectionné au hasard. Les joueur doit réussir un test de Résistance <b>facile (+40)<\/b> ou subir @Condition[Stunned]{Assommé}"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
@ -1,53 +0,0 @@
|
||||
{
|
||||
"label": "Tables (Rough Nights & Hard Days)",
|
||||
"entries": [
|
||||
{
|
||||
"id": "Career - Gnome",
|
||||
"name": "Carrières - Gnome"
|
||||
},
|
||||
{
|
||||
"id": "Eye Colour - Gnome",
|
||||
"name": "Couleur des Yeux - Gnome",
|
||||
"results": {
|
||||
"2-2": "Bleu clair",
|
||||
"3-3": "Bleu",
|
||||
"4-4": "Marron terre",
|
||||
"5-7": "Turquoise",
|
||||
"8-11": "Vert clair",
|
||||
"12-14": "Noisette",
|
||||
"15-17": "Marron clair",
|
||||
"18-18": "Marron",
|
||||
"19-19": "Marron foncé",
|
||||
"20-20": "Violet"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "Hair Colour - Gnome",
|
||||
"name": "Couleur des Cheveux - Gnome",
|
||||
"results": {
|
||||
"2-2": "Noir",
|
||||
"3-3": "Marron Foncé",
|
||||
"4-4": "Auburn",
|
||||
"5-7": "Brun",
|
||||
"8-11": "Brun Clair",
|
||||
"12-14": "Gingembre",
|
||||
"15-17": "Blond roux",
|
||||
"18-18": "Blond doré",
|
||||
"19-19": "Blond cendré",
|
||||
"20-20": "Blanc"
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "Species Table",
|
||||
"name": "Espèces",
|
||||
"results": {
|
||||
"1-89": "Humain",
|
||||
"90-93":"Halfling",
|
||||
"94-97": "Nain",
|
||||
"98-98": "Gnome",
|
||||
"99-99": "Haut Elfe",
|
||||
"100-100": "Elfe Sylvain"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
658
fr.json
658
fr.json
@ -3,80 +3,7 @@
|
||||
"WFRP4E.system.description" : "Un système de jeu pour Warhammer 4 dans l'environnement de Foundry VTT.",
|
||||
"WFRP4E.TrappingType.Cargo": "Cargaison",
|
||||
"WFRP4E.Vehicle": "Véhicule",
|
||||
"WFRP4E.MountButtonNotify": "L'acteur à gauche ({mounter}) a désormais l'acteur à droite ({mountee}) comme monture",
|
||||
"WFRP4E.ConditionName.Dead":"Mort",
|
||||
|
||||
"WFRP4E.Scatter.AtTargetFeet":"Au pied de la cible",
|
||||
"WFRP4E.Scatter.AtYourFeet":"A vos pieds",
|
||||
"WFRP4E.Scatter.BottomLeft":"En bas à gauche",
|
||||
"WFRP4E.Scatter.BottomMiddle":"En bas au milieu",
|
||||
"WFRP4E.Scatter.BottomRight":"En bas à droite",
|
||||
"WFRP4E.Scatter.CenterLeft":"Centre gauche",
|
||||
"WFRP4E.Scatter.CenterRight":"Centre droit",
|
||||
"WFRP4E.Scatter.TopLeft":"En haut à gauche",
|
||||
"WFRP4E.Scatter.TopMiddle":"En plein milieu",
|
||||
"WFRP4E.Scatter.TopRight":"En haut à droite",
|
||||
"WFRP4E.ScatterTable":"Dispersion",
|
||||
|
||||
"WFRP4E.Availability.Special":"Spécial",
|
||||
"WFRP4E.Locations.body":"Corps",
|
||||
"WFRP4E.Locations.head":"Tête",
|
||||
"WFRP4E.Locations.lArm":"Bras gauche",
|
||||
"WFRP4E.Locations.lLeg":"Jambe gauche",
|
||||
"WFRP4E.Locations.rArm":"Bras droit",
|
||||
"WFRP4E.Locations.rLeg":"Jambe gauche",
|
||||
"WFRP4E.LocationsTable":"Localisation",
|
||||
|
||||
"WFRP4E.MagicLores.beasts":"Bêtes",
|
||||
"WFRP4E.MagicLores.daemonology":"Démonologie",
|
||||
"WFRP4E.MagicLores.death":"Mort",
|
||||
"WFRP4E.MagicLores.fire":"Feu",
|
||||
"WFRP4E.MagicLores.heavens":"Cieux",
|
||||
"WFRP4E.MagicLores.hedgecraft":"Magie naturelle",
|
||||
"WFRP4E.MagicLores.life":"Vie",
|
||||
"WFRP4E.MagicLores.light":"Lumière",
|
||||
"WFRP4E.MagicLores.metal":"Métal",
|
||||
"WFRP4E.MagicLores.necromancy":"Nécromancie",
|
||||
"WFRP4E.MagicLores.nurgle":"Nurgle",
|
||||
"WFRP4E.MagicLores.petty":"Mineure",
|
||||
"WFRP4E.MagicLores.shadow":"Ombres",
|
||||
"WFRP4E.MagicLores.slaanesh":"Slaanesh",
|
||||
"WFRP4E.MagicLores.tzeentch":"Tzeentch",
|
||||
"WFRP4E.MagicLores.undivided":"Undivided",
|
||||
"WFRP4E.MagicLores.witchcraft":"Sorcellerie",
|
||||
|
||||
"WFRP4E.MagicWind.beasts":"Ghur",
|
||||
"WFRP4E.MagicWind.daemonology":"Dhar",
|
||||
"WFRP4E.MagicWind.death":"Shyish",
|
||||
"WFRP4E.MagicWind.fire":"Aqshy",
|
||||
"WFRP4E.MagicWind.heavens":"Azyr",
|
||||
"WFRP4E.MagicWind.hedgecraft":"Aucun",
|
||||
"WFRP4E.MagicWind.life":"Ghyran",
|
||||
"WFRP4E.MagicWind.light":"Hysh",
|
||||
"WFRP4E.MagicWind.metal":"Chamon",
|
||||
"WFRP4E.MagicWind.necromancy":"Dhar",
|
||||
"WFRP4E.MagicWind.nurgle":"Dhar",
|
||||
"WFRP4E.MagicWind.petty":"Aucun",
|
||||
"WFRP4E.MagicWind.shadow":"Ulgu",
|
||||
"WFRP4E.MagicWind.slaanesh":"Dhar",
|
||||
"WFRP4E.MagicWind.tzeentch":"Dhar",
|
||||
"WFRP4E.MagicWind.undivided":"Dhar",
|
||||
"WFRP4E.MagicWind.witchcraft":"Aucun",
|
||||
|
||||
"WFRP4E.applyScope.actor":"Acteur",
|
||||
"WFRP4E.applyScope.item":"Item",
|
||||
"WFRP4E.effectApplication.actor":"Acteur",
|
||||
"WFRP4E.effectApplication.apply":"Appliquer avec une cible",
|
||||
"WFRP4E.effectApplication.damage":"Appliquer quand l'Item inflige des dégâts",
|
||||
"WFRP4E.effectApplication.equipped":"Lorsque l'item est équipé",
|
||||
"WFRP4E.hitLocationTables.hitloc":"Standard",
|
||||
"WFRP4E.hitLocationTables.snake":"Serpent ou similaire",
|
||||
"WFRP4E.hitLocationTables.spider":"Araignée ou similaire",
|
||||
"WFRP4E.mutationTypes.mental":"Mental",
|
||||
"WFRP4E.mutationTypes.physical":"Physique",
|
||||
"WFRP4E.prayerTypes.blessing":"Bénédiction",
|
||||
"WFRP4E.prayerTypes.miracle":"Miracle",
|
||||
|
||||
"SETTINGS.InitRule" : "Règles d'initiative",
|
||||
"SETTINGS.InitHint" : "Choisir votre configuration pour l'ordre d'initiative.",
|
||||
"SETTINGS.InitDefault" : "Par défaut (Par ordre d'Initiative, Agilité en cas d'égalité)",
|
||||
@ -135,71 +62,14 @@
|
||||
"SETTINGS.RangeAutoCalculation": "Calcul automatique du modificateur de distance",
|
||||
"SETTINGS.PlayerExperienceEditing": "Edition de l'Expérience du personnage",
|
||||
"SETTINGS.PlayerExperienceEditingHint": "Autoriser les joueurs à modifier l'XP des personnages",
|
||||
"SETTINGS.AdvantageBonusHint": "Configurer le bonus donné par l'avantage",
|
||||
"SETTINGS.AdvantageBonus": "Bonus d'avantage",
|
||||
|
||||
"SETTINGS.MooSizeDamageHint":"Les bonus de dommages sont liés à la taille absolue, au lieu des différences de taille relatives (voir la page de Wiki en lien ci-dessus)",
|
||||
"SETTINGS.MooHomebrewItems":"Modifications d'Items",
|
||||
"SETTINGS.MooHomebrewItemHint":"Change (avec l'application des règles ci-dessus) différents obejts. Voir la page de Wiki indiquée ci-dessus. **ATTENTION: A n'activer que sur un nouveau monde, et avec la plupart des règles ci-dessus activées**",
|
||||
"SETTINGS.MooAdvantage":"Avantage",
|
||||
"SETTINGS.MooAdvantageHint":"Au lieu de +10 avantage, vous gagnez +1DR par Avantage <b>sur un test réussi</b>",
|
||||
"SETTINGS.MooDifficulty":"Options de difficulté",
|
||||
"SETTINGS.MooDifficultyHint":"Les difficultés sont symétriques",
|
||||
"SETTINGS.MooCritsFumbles":"Critiques de MooMan",
|
||||
"SETTINGS.MooCritsFumblesHint":"MooCritsFumblesHint",
|
||||
"SETTINGS.MooConditions":"Changement sur les états",
|
||||
"SETTINGS.MooConditionsHint":"Modifie divers textes d'états",
|
||||
"SETTINGS.MooConditionTriggers":"Déclenchement d'Etat",
|
||||
"SETTINGS.MooConditionTriggersHint":"Les états s'activent à la fin du tour du joueur, au lieu de la fin du round.",
|
||||
"SETTINGS.MooCritModifiers":"Modificateurs de Tables de Critiques",
|
||||
"SETTINGS.MooCritMOdifiersHint":"Lorsque vous encaissez des dommages en dessous de 0 Point de Blessure, ajoutez ou soustrayez 10 du jet sur la table des Coups Critiques pour chaque points de dommages soustrait de votre Bonus d'Endurance.<br><br>Ex. J'ai 4 Points de Blessures restants , 50 en Endurance. J'encaisse 12 Dommages. Cela implique -8. Avec un BE de 5, cela entraîne un +30 sur la table des Coups Critiques.<br><br>Ex. J'ai 4 Points de Blessures restants , 50 en Endurance. J'encaisse 5 Dommages. Cela implique -1. Avec un BE de 5, cela entraine un -40 sur la table des Coups Critiques.",
|
||||
"SETTINGS.MooSLDamage":"Calcule des dommages opposés",
|
||||
"SETTINGS.MooSLDamageHint":"Le calcule des dommages est basé uniquement sur le DR de l'attaquant, au lieu de la différence attaquant/défenseur",
|
||||
"SETTINGS.MooRangedDamage":"Modification des dommages des projectiles",
|
||||
"SETTINGS.MooRangedDamageHint":"Les dommages des projectiles est modifié par les dizaines de la difficultée appliquée : +20 = -2 dommages, -30 = +3 dommages",
|
||||
"SETTINGS.MooMagicAdvantage":"Modification des Avantages en Magie",
|
||||
"SETTINGS.MooMagicAdvantageHint":"Les Avantages s'appliquent à la Folcalisation et pas à l'Incantation. Les avantages sont toujours gagnés grâce à l'Incantation.",
|
||||
"SETTINGS.MooOvercasting":"Dépenses des Sur-Incantation",
|
||||
"SETTINGS.MooOvercastingHint":"Les Sur-Incantations dépensent le DR utilisé, donc si le sort fait des dommages, pour chaque Sur-Incantation utilisée, le sort fait -2 Dommages, et est plus facile à opposer",
|
||||
"SETTINGS.MooCatastrophicMiscasts":"Incantations Imparfaites Catastrophiques",
|
||||
"SETTINGS.MooCatastrophicMiscastsHint":"Ajoute la table des Incantations Imparfaites Catastrophiques et modifie les tables existantes. De plus, obtenir un 100 sur une Incantation ou une Focalisation augmente le niveau d'Incantations Imparfaites de 1",
|
||||
"SETTINGS.MooCriticalChannelling":"Focalisation Critique",
|
||||
"SETTINGS.MooCriticalChannellingHint":"Si vous incantez un sort avec succès à partir d'une Focalisation critique, vous ajoutez +DR égaux au NI du sort. Ces DR ne peuvent pas être utilisés pour Sur-Incanter, seulement le DR généré par le test. Si le Test d'Incantation échoue, vous faites un Incantation Imparfaite ou ce la incrémente l'Incantation Imparfaite de 1.",
|
||||
"SETTINGS.MooCastAfterChannelling":"Incanter après la Focalisation",
|
||||
"SETTINGS.MooCastAfterChannellingHint":"Lors de l'incantation d'un sort Focalisé, une incantation échouée compte comme une interruption. Vous pouvez conserver les DR focalisés si ce Test est échoué.",
|
||||
"SETTINGS.MooPenetrating":"Valeur de Pénétration",
|
||||
"SETTINGS.MooPenetratingHint":"Ajoute une valeur à l'option Pénétrante, Pénétrante X - où l'arme ignore X PA (si aucun chiffre n'est indiqué, la valeur par défaut est de 2)",
|
||||
"SETTINGS.MooQualities":"Nouvelles Qualités",
|
||||
"SETTINGS.MooQualitiesHint":"Ajout les qualités 'Simple' et 'Elan'",
|
||||
"SETTINGS.MooShieldAP":"PA des Boucliers",
|
||||
"SETTINGS.MooShieldAPHint":"Les PA des boucliers et l'atténuation des critiques (cf. ci-dessous) sont appliqués uniquement si vous réussissez un test défensif.",
|
||||
"SETTINGS.MooCriticalMitigation":"Atténuation des Critiques",
|
||||
"SETTINGS.MooCriticalMitigationHint":"(Au lieu de la Déviation) Lorsque vous subissez un Coup Critique, pour chaque PA dans la localisation, le lancer sur la table des Blessures Critiques est réduit de 10. Si le résultat du jet est négatif, aucune blessure critique n'est reçue. Après que la blessure critique ait été résolue, la couche d'armure la plus externe est endommagé et ses PA réduits de 1. Cela s'applique uniquement si l'attaquant a ciblé la localisation.",
|
||||
"SETTINGS.MooRangeBands":"Modificateurs de Portée des Projectiles",
|
||||
"SETTINGS.MooRangeBandsHint":"Les projectiles ont une portée optimale, correspodant à une des distances de portée. Cibler une créature dans hors de cette portée impliquer des malus. Consulter le Wiki pour plus de détails.",
|
||||
"SETTINGS.MooSizeDamage":"Taille et calcul des dommages",
|
||||
"SETTINGS.Moo":"Règles maison de Moo Man",
|
||||
"SETTINGS.MooHint":"Assortiments de modifications qui peuvent - je le pense - améliorer le jeu. Notez que les règles proposées ci-dessous ne sont pas exhaustives, j'ai seulement appliqué ici celles qui peuvent se traduire dans le code.<br><br>Pour une liste complète, consultez <a href='https://github.com/moo-man/WFRP4e-FoundryVTT/wiki/Homebrew-Rules'>le Wiki.</a><br>Notez égalementque ces règlessont généralement prévues pour être utilisées ensemble.<br>Vos retours et remarques sont appréciées. Dans ce cas, merci d'utiliser <a href='https://github.com/moo-man/WFRP4e-FoundryVTT/discussions/categories/moo-s-house-rules'>le Github Discussion Board</a> pour les discussions sur les mécaniques.",
|
||||
|
||||
"ROLL.CatastrophicMis":"Incantations Imparfaites Catastrophiques",
|
||||
|
||||
"SHEET.Close" : "Fermer",
|
||||
"SHEET.Configure" : "Configurer la feuille",
|
||||
"SHEET.Token" : "Configurer le Token",
|
||||
"SHEET.Import" : "Importer",
|
||||
"SHEET.Post" : "Envoyer au tchat",
|
||||
"SHEET.Dismount": "Descendre de la monture",
|
||||
"SHEET.Dismount": "Descende de la monture",
|
||||
"SHEET.RemoveMount": "Enlever la monture",
|
||||
"SHEET.RemoveAttacker":"Enlever l'attaquant",
|
||||
"SHEET.ArmourMax":"Max",
|
||||
"SHEET.ArmourCurrent":"Courant",
|
||||
"SHEET.WeaponDamage":"Dégats sur l'arme",
|
||||
"SHEET.Flaws":"D:",
|
||||
"SHEET.Qualities":"Q:",
|
||||
"SHEET.Unarmed":"Désarmé",
|
||||
"SHEET.Dodge":"Esquive",
|
||||
"SHEET.Improvised":"Improvisé",
|
||||
"SHEET.Stomp":"Piétiner",
|
||||
|
||||
"SHEET.NestedWarning" : "Pas possible d'ajouter plus de 4 niveaux de contenants.",
|
||||
"SHEET.LocationWarning" : "Vider ce contenant avec de le déplacer",
|
||||
@ -254,8 +124,7 @@
|
||||
"SHEET.CharacteristicCurrent": "Courant",
|
||||
"SHEET.ExpChange": "Changement Dépensé / Total",
|
||||
"SHEET.TotalSpentExp": "Valeur Dépensé / Total",
|
||||
"SHEET.ThrowingAmmoError":"Le goupe de munitions 'Lancer' est destiné pour les armes qui utilisent des armes de Lancer comme munition. Les armes de Lancer elle-memes utilisent en général la catégorie 'Aucune'",
|
||||
|
||||
|
||||
"ACTOR.BasicSkillsTitle" : "Ajouter les compétences de base",
|
||||
"ACTOR.BasicSkillsPrompt": "Ajouter les compétences de base ?",
|
||||
"ACTOR.PreparationError" : "Quelque chose s'est mal passé lors de la préparation des données d'Acteurs: ",
|
||||
@ -267,11 +136,7 @@
|
||||
"ACTOR.TypeVehicle": "Véhicule",
|
||||
"ACTOR.TypeCharacter" : "Personnage",
|
||||
"ACTOR.TypeCreature": "Créature",
|
||||
"ACTOR.ClearMount":"Enlever la monture",
|
||||
"ACTOR.AdvancementError":"Impossible de progresser : {action} {item}, pas assez d'expérience disponible",
|
||||
"ACTOR.ErrorAdd":"ajouter",
|
||||
"ACTOR.ErrorImprove":"améliorer",
|
||||
|
||||
|
||||
"ITEM.PenniesValue" : "Valeur (en Sous de Cuivre)",
|
||||
"ITEM.MeleeDamage" : "Dommages Mêlée",
|
||||
"ITEM.RangedDamage" : "Dommages Projectiles",
|
||||
@ -332,14 +197,8 @@
|
||||
"ITEM.TypeContainer": "Conteneur",
|
||||
"ITEM.TypePrayer": "Prière",
|
||||
"ITEM.TypeTrapping": "Equipement",
|
||||
"ITEM.OptimalRange": "Portée optimale",
|
||||
"ITEM.Import":"Etes vous certain de vouloir importer le résultat de votre recherche?<br>({number} Items)",
|
||||
|
||||
"BleedCrit":"L'hémorrage de <b>{name}</b> coagule un peu : 1 Hémorragie peut-être retirée.",
|
||||
"BleedFail":"<b>{name}</b> meur de sa perte de sang !",
|
||||
"BleedRoll":"Jet d'Hémmoragie",
|
||||
"BleedUnc":"<b>{name}</b> tombe Inconscient !",
|
||||
|
||||
"Basic" : "Basic",
|
||||
"Advanced" : "Avancée",
|
||||
"Qualities" : "Atouts",
|
||||
"Flaws" : "Défauts",
|
||||
@ -563,118 +422,6 @@
|
||||
"hours": "heures",
|
||||
"rounds": "rounds",
|
||||
"Subspecies": "Ethnies",
|
||||
"Intruders": "Intrus",
|
||||
"Monsters": "Monstres",
|
||||
"Law": "Loi",
|
||||
"SinReduced":"Péché réduit de 1",
|
||||
"TargetingCancelled":"Ciblage échoué: Un Test opposé est déja en cours",
|
||||
|
||||
"Career Selector":"Selecteur de Carrière",
|
||||
"Completed":"Completé",
|
||||
"CondRound":"- Round {round}",
|
||||
"CondStatus":"Status",
|
||||
"Corruption&Mutation":"Corruption & Mutations",
|
||||
"Delete Confirmation":"Confirmation de Suppression",
|
||||
"Domain":"Domaine",
|
||||
"Dwarf":"Nain",
|
||||
"Halfling":"Halfling",
|
||||
"High Elf":"Haut Elfe",
|
||||
"Human":"Humain",
|
||||
"EXP":"EXP",
|
||||
"Exp Cost":"Coût en Exp",
|
||||
"ExpChange":"Changement d'Experience",
|
||||
"ExpChangeHint":"Raison du changement d'Exp?",
|
||||
"ExtDurHint":"Lorsque le sort se terminera, vous pouvez tenter un Test de Force Mentale pour prolonger sa durée de +1 round.",
|
||||
"ExtendedError1":"Entrez un entier positif pour le nombre à atteindre du Test Etendu",
|
||||
"ExtendedError2":"Impossible de trouver la caractéristique ou la compétence : {name}",
|
||||
"Hit Location Table":"Table de Localisation",
|
||||
"Homebrew Settings":"Règles maison",
|
||||
"ImperialPost":"La Poste Impériale a reçue votre Grief ! Consultez la console pour le lien direct.",
|
||||
"Extreme":"Extreme",
|
||||
"Formula":"Formule",
|
||||
"ImperialPostError":"La Poste Impériale ne peut recevoir votre message. Consultez la console (F12) pour plus de détails.",
|
||||
"Import Results":"Importer les Resultats",
|
||||
"Import or update the content from the WFRP4e Core Module":"Importer ou mettre à jour le contenu du WFRP4e Core Module",
|
||||
"Initialization":"Initialisation",
|
||||
"Invalid Quantity":"Quantité invalide",
|
||||
"Item Properties":"Propriétés d'Item",
|
||||
"Long Range":"Portée longue",
|
||||
"Mask":"Mask",
|
||||
"Minor Infections":"Infection Mineure",
|
||||
"Momentum":"Moment",
|
||||
"Morrslieb - Currently Off":"Morrslieb - Actuellement desactivé",
|
||||
"Morrslieb - Currently On ":"Morrslieb - Actuellement activé ",
|
||||
"Motive Power":"Force Motrice",
|
||||
"MountError":"Vous pouvez seulement monter des créatures de taille identique ou plus grosse.",
|
||||
"New":"Nouveau",
|
||||
"New Effect":"Nouvel effet",
|
||||
"NewRole":"Nouveau Role",
|
||||
"No content found":"Aucune contenu trouvé",
|
||||
"NoneAmmo":"Aucun",
|
||||
"Normal":"Normal",
|
||||
"Off-hand":"Main non directrice",
|
||||
"On Completion":"Sur complément",
|
||||
"PenaltyHint":"Séparé par des virgules si multiple (-20 Discrétion, -10 Perception)",
|
||||
"Point Blank":"Bout Portant",
|
||||
"Possessions":"Possessions",
|
||||
"Post":"Poster",
|
||||
"Post Quantity":"Poster la quantité",
|
||||
"Post Your Grievance":"Envoyer votre Grief",
|
||||
"RevertExperience":"Annuler l'Experience",
|
||||
"Rolled":"Lancé",
|
||||
"Settings for common homebrew/house rules":"Paramètres pour les règles maison communes.",
|
||||
"Setup":"Setup",
|
||||
"Short Range":"Portée courte",
|
||||
"Simple":"Simple",
|
||||
"Snake-Like":"Serpent-Like",
|
||||
"Something went wrong":"Quelque chose a mal tourné",
|
||||
"SpecChar":"<p>Voulez vous appliquer les caractéristiques de cette espèce à votre Acteur ?",
|
||||
"Species Characteristics":"Caractéristiques des espèces",
|
||||
"Spider-Like":"Araignée-Like",
|
||||
"Split":"Séparé",
|
||||
"Standard":"Standard",
|
||||
"Stat Block Parser":"Parser de fiches de PNJ",
|
||||
"Submit":"Soumettre",
|
||||
"SuccessLevels":"DR",
|
||||
"Swim":"Nager",
|
||||
"TBRed":"BE",
|
||||
"TookDamage":"Encaisse {damage} dommages",
|
||||
"ToughnessDesc":"Endurance",
|
||||
"Unmask":"Démasqué",
|
||||
"Updater1":"Ce processus importera de nouveaux documents et remplacer les documents importés precedemment par le contenu des compendiums.",
|
||||
"Updater2":"CELA SIGNIFIE QUE TOUTES LES MODIFICATIONS QUE VOUS AVEZ EFFECTUE SERONT EFFACEES.",
|
||||
"Updater3":"N'utilisez cette fonction que si vous avez déja initialisé ce module.",
|
||||
"UpdaterTitle1":"Mettre à jour",
|
||||
"UpdaterTitle2":"Contenu",
|
||||
"Vehicle Settings":"Paramètres des Véhicules",
|
||||
"WFRP4e Content Initialization":"Initialisation du contenu WFRP4e",
|
||||
"WFRP4e Content Setup":"Setup du contenu WFRP4e",
|
||||
"WFRP4e Homebrew":"WFRP4e Homebrew",
|
||||
"WFRP4e House Rules":"WFRP4e Règles Maison",
|
||||
"WarnUnlinkedMount":"Une monture non liée associée à un Acteur lié n'est pas recommandé.",
|
||||
"Wood Elf":"Elfe des Bois",
|
||||
"XP":"XP",
|
||||
"comma separated":"éparé par des virgules",
|
||||
|
||||
"TABLE.Column":"Colonne de la Table",
|
||||
"TABLE.Key":"Clé de la Table",
|
||||
"UPDATER.OverwriteTables":"Re-écrire les tables",
|
||||
|
||||
"APPLYREQUESTGM":"La demande d'application d'Effet a été envoye au MJ",
|
||||
"APPLYREQUESTOWNER":"La demande d'application d'Effet a été envoyé au propriétaire",
|
||||
"Actor Settings":"Paramètres d'Acteur",
|
||||
"Add Encumbrance for Actors":"Ajouter l'encombrement pour les Acteurs",
|
||||
"BROWSER.Button":"Navigateur",
|
||||
"MOO.Bleeding":"Vous saignez gravement. Perdez 1 Blessure à la fin de chaque round, en ignorant tout autre modificateur. De plus, subissez une pénalité de -10 à tout vos Tests pour résister à une Blessure Purulente, un Infection Mineure ou une Infection du Sang. Si vous atteignez 0 Blessures, faites immédiatement un Test d'Endurance pour rester debout (avec une pénalite de -10 pour chaque étatHémorragique), sinon vous tombez @Condition[Unconscious], et vous devez refaire ce test chaque fois que vous prenez des dommages dus à l'Hémorragie. Si vous êtes à 0 Blessures, que vous soyez Inconscient ou pas, vous avez 10% de mourrir à la fin du Round pour chaque état Hémorragique. Donc, si vous avez 3 états Hémorragiques, vous mourrez sur un jet de 01-30. Si un double est obtenu, votre blessure coagule un peu : retirez 1 état Hémorragique. Vous ne pouvez redevenir conscient que si tout les états Hémorragiques sont soignées (voir Blessures)<br><br>Un état Hémorragique peut être retiré avec : un test réussi de Guérison (chaque DR enlève 1 état Hémorragique); ou avec un sort ou une prière (avec un état enlevé par Point de Blessure gueri).<br><br>Lorsque tout les états Hémorragiques ont été soignés, recevez un état @Condition[Fatigued].",
|
||||
"MOO.Broken":"Vous êtes terrifié, défait en état de panique ou convaincu que vous allez mourrir. A votre tour, votre Action et votre Mouvement doivent être utilisés pour fuir aussi loin que possible jusqu'à ce que vous trouviez un endroit pour vous cacher; vous pourrez alors utiliser votre Action avec une Compétence vous permettant de vous cacher effectivement. Vous recevez également une pénalité de -10 pour tout les Tests n'impliquant pas la course ou la dissimulation.<br><br>Vous ne pouvez faire de test pour récupérer de votre état Brisé si vous êtes au contact d'un ennemi. Si vous êtes désengagé, à la fin de chaque round, vous pouvez tenter un Test de Calme pour enlever un état Brisé par DR. La difficulté est déterminée par les circonstances: il est plus facile de se remettre en état caché à l'abri que d'être à 3 pas d'un démon souhaitant vous démembrer.<br><br>Si vous passez un Round complet à vous cacher hors de la ligne de vue de tout ennemi, vous enlevez 1 état Brisé.<br><br><strike>Lorsque tout les états Brisé sont enlevés, vous recevez 1 Etat Fatigué.</strike>.",
|
||||
"MOO.Items":"Le règles maison des ites ont été appliqués sur les compendiums. Voir la console (F12) pour détail.",
|
||||
"MOO.Momentum":"Ces armes sont lourdes et nécessitent un certain temps pour porter un coup. Elles reçoivent leur qualités et spécialités que lorsque leur porteur dispose d'au moins un Avantage.",
|
||||
"MOO.Penetrating":"Cette arme est très effice pour pénétrer des armures. Elle permet d'ignorer (Rating) PA.",
|
||||
"MOO.Prone":"<br><br><b>Règles Maison de MooMan</b>: Vous êtes considéré une portée plus loin lors de la déterlination de la portée des attaques par projectiles.",
|
||||
"MOO.Simple":"Les armes simples peuvent être utilisées avec Corps à Coprs Simple sans pénalité.",
|
||||
"MOO.CriticalChanelling":"Focalisation Critique DR Bonus",
|
||||
"MOO.FailedCast":"Une Echec d'Incantation pendant une Focalisation compte comme une interruption.",
|
||||
|
||||
"ErrorMountNotFound": "Erreur lors de la recherche de la monture. Essyez de retirer la monture",
|
||||
"ErrorDamagePermission": "Vous n'avez pas la permission pour appliquer des dommages à cette cible",
|
||||
"ErrorMacroItemMissing": "Votre personnage n'a pas d'objet nommé",
|
||||
@ -688,17 +435,7 @@
|
||||
"ErrorTokenMount": "Les Tokens de montures ncessitent que vous visionnez la scène avec la monture",
|
||||
"ErrorLimitedWeapons": "Vous ne pouvez équiper plus aucun arme",
|
||||
"ErrorSpeciesTalents": "Impossible d'ajouer le Talents pour les races",
|
||||
"ErrorMoneyConvert":"Nécessite une origine et une destination pour faire la conversion.",
|
||||
"ErrorTarget":"Sélectionnez une cible pour appliquer les effets.",
|
||||
"ErrorExp":"Ciblez les Tokens pour leur donner l'EXP.",
|
||||
"ErrorMultExp":"a déja reçu cette récompense.",
|
||||
"ErrorCorruption":"Type de Corruption non valide",
|
||||
|
||||
"Roll Characteristic": "Test de Caractéristique",
|
||||
"Infinite": "Infini",
|
||||
"any one": "Au choix",
|
||||
"Sing": "Chant",
|
||||
|
||||
|
||||
"ENTITY.Actor": "Acteur",
|
||||
|
||||
"BROWSER.ItemCategories" : "Catégorie d'items",
|
||||
@ -721,35 +458,12 @@
|
||||
"CHARGEN.RerollCareer" : "Re-tirer la carrière",
|
||||
"CHARGEN.SpeciesInstructions" : "Choisir 6 compétences et les déplacer dans la feuille de personnage si elles ne sont pas déjà présentes. Placer 5 Augmentations dans 3 d'entre elles, et 3 Augmentations dans les 3 autres. Cela ne coûte aucun PX, il ne faut donc pas cliquer sur les boutons d'avancement.",
|
||||
"CHARGEN.RerollInstructions" : "Vous pouvez relancer un talent en double.",
|
||||
"CHARGEN.Or": "Ou",
|
||||
"CHARGEN.ChooseCareerHint":"Si vous n'aimez pas ce tirage, vous pouvez choisir librement votre carrière mais vous n'aurez aucun bonus d'EXP",
|
||||
"CHARGEN.RerollCareerHint":"Si vous n'aimez pas ce tirage, permet de relancer deux fois les dés pour un gain de 25 EXP",
|
||||
|
||||
"CHARGEN.Or": "OU",
|
||||
|
||||
"CAREER.DifferentClass": "Entrée dans une nouvelle Classe",
|
||||
"CAREER.LeaveIncomplete": "Départ d'une carrière incomplète",
|
||||
"CAREER.LeaveComplete": "Départ d'une carrière complétée",
|
||||
"CAREER.AddSkillError":"Une erreur est survenur lors de l'ajout de la compétence {skill}: {error}",
|
||||
"CAREER.AddTalentError":"Une erreur est survenur lors de l'ajout du talent {talent} : {error}",
|
||||
"CAREERAdv":"Avancement de Carrière",
|
||||
"CAREERAdvHint":"<p>Voulez vous appliquer cet avancement de carrière à l'Acteur ?",
|
||||
|
||||
"DIFFICULTY.MooImpossible":"Impossible (-60)",
|
||||
"DIFFICULTY.MooFutile":"Futile (-50)",
|
||||
"DIFFICULTY.MooVHard":"Très Difficile (-40)",
|
||||
"DIFFICULTY.MooHard":"Difficile (-30)",
|
||||
"DIFFICULTY.MooEasy":"Facile (+30)",
|
||||
"DIFFICULTY.MooDifficult":"Difficile (-20)",
|
||||
"DIFFICULTY.MooVEasy":"Très Facile (+40)",
|
||||
"DIFFICULTY.Impossible":"Impossible (-50)",
|
||||
"DIFFICULTY.Futile":"Futile (-40)",
|
||||
"DIFFICULTY.VHard":"Très Difficile (-30)",
|
||||
"DIFFICULTY.Hard":"Difficile (-20)",
|
||||
"DIFFICULTY.Difficult":"Complexe (-10)",
|
||||
"DIFFICULTY.Challenging":"Intermédiaire (+0)",
|
||||
"DIFFICULTY.Average":"Accessible (+20)",
|
||||
"DIFFICULTY.Easy":"Facile (+40)",
|
||||
"DIFFICULTY.VEasy":"Très facile (+60)",
|
||||
|
||||
"DIALOG.CastOrChannel" : "Incanter ou Focaliser",
|
||||
"DIALOG.CastChannel" : "Incanter ou Focaliser ce sort ?",
|
||||
"DIALOG.ChannelSkill" : "Compétence Focaliser",
|
||||
@ -784,15 +498,6 @@
|
||||
"DIALOG.MutateTitle": "Dissolution du Corps et de l'Esprit - Test {test}",
|
||||
"DIALOG.ShowTable": "Visibilité des tables",
|
||||
"DIALOG.RevertExperience": "Annuler ces Points d'Experience ?",
|
||||
"DIALOG.EnterQuantity": "Entrez la quantité?",
|
||||
"DIALOG.PostQuantity": "Envoyer la quantité",
|
||||
"DIALOG.ItemQuantity": "Quantité",
|
||||
"DIALOG.QuantityHint": "La quantité est la quantité d'objets dans chaque note du chat.<br>La quantité totale déduite sera la quantité affichée mutipliée par la quantité d'objets<br>Sélectionner 'Infini' ne déduira pas la quantité",
|
||||
"DIALOG.ShowTableHint":"Montrer les tables aux joueurs et le sous menu '/table'",
|
||||
"DIALOG.GainPrayer":"Apprendre un Miracle",
|
||||
"DIALOG.GainPrayerContent":"Apprendre ce miracle vous coutera {xp} XP.",
|
||||
"DIALOG.MemorizeSpell":"Mémoriser un Sort",
|
||||
"DIALOG.MemorizeSpellContent":"Mémoriser ce sort vous coutera {xp} XP.",
|
||||
|
||||
"CHAT.CareerChoose" : "Choisissez votre carrière",
|
||||
"CHAT.DamageError" : "Erreur de calcul des dégâts:",
|
||||
@ -856,8 +561,7 @@
|
||||
"CHAT.CommandLine.Help.Corruption.Usage.Command" : "/corruption",
|
||||
"CHAT.CommandLine.Help.Corruption.Usage.Example" : "<br>/corruption minor<br>/corruption moderate",
|
||||
"CHAT.CommandLine.Help.Corruption.Usage.Note" : "Utilisez cette commande pour demander à vos joueurs de faire un jet contres les influences corruptrices.",
|
||||
"CHAT.EndCombat": "Statut de fin de combat",
|
||||
"CHAT.InfectionReminder": " Ces personnages ont reçus une blessure critique and doivent réussir un <b>Test de Résistance Trés Facile (+60)</b> ou recevoir une @Compendium[wfrp4e-core.diseases.1hQuVFZt9QnnbWzg]{Infection Mineure}.",
|
||||
|
||||
"CHAT.TestModifiers.AttackingLarger": "Bonus de +10 à <b>{attacker}</b>pour l'attaque d'une créature plus grande",
|
||||
"CHAT.TestModifiers.WeaponLength": "Pénalité de -10 à <b>{attacker}</b> à cause d'une arme plus courte.",
|
||||
"CHAT.TestModifiers.ShootingLarger": "Bonus de +{bonus} à <b>{attacker}</b> pour tir sur une cible plus grande",
|
||||
@ -899,41 +603,7 @@
|
||||
"CHAT.NoGenerator": "Aucun Générateur actif. Utilisez char pour démarrer le processus.",
|
||||
"CHAT.EditItem": "Editer l'item",
|
||||
"CHAT.Haggle": "Marchander",
|
||||
"CHAT.DiseasesRules" : "<br>Référez vous aux maladies pour les règles de Contraction",
|
||||
"CHAT.CorruptionTest": "<br><b>Cliquez sur un lien de Corruption pour lancer un Test de Corruption</b>",
|
||||
"CHAT.AutoWitchcraftMiscast": "Sorcellerie - Lancer automatique sur la table eds Incantations Imparfaites Mineures",
|
||||
"CHAT.MalignantInfluence": "Incantation Imparfaites due à une Influence Maléfique",
|
||||
"CHAT.OverchannellingMiscast": "Incantation Imparfaite due à une Sur-incantation",
|
||||
"CHAT.FumbleMiscast": "Incantation Imparfaite due à une Maladresse",
|
||||
"CHAT.TotalPowerMiscast":"Incantation Imparfaite due à Sur-puissance",
|
||||
"CHAT.CritCastMiscast": "Incantation Imparfaite due à une réussite critique",
|
||||
"CHAT.CritChannelMiscast": "Incantation Imprafaite suite à une réussite critique en Focalisation",
|
||||
"CHAT.DiseaseIncubation":"Incubation de {disease} terminée.",
|
||||
"CHAT.DiseaseDuration":" Le décompte de temps de {duration} {unit} a démarré.",
|
||||
"CHAT.DiseaseDurationError":" Une erreur est survenue lors du jet pour la durée.",
|
||||
"CHAT.DiseaseFinish":"La période de la maladie {disease} s'est terminée.",
|
||||
"CHAT.LingeringExtended":" Persistance: La durée est allongée de {roll} jours.",
|
||||
"CHAT.LingeringFestering":" Persistance: développement d'une Blessure Purulente.",
|
||||
"CHAT.DissolutionTitle":"Dissolution du Corps et de l'Esprit",
|
||||
"CHAT.Dissolution":"Alors que la corruption ravage votre âme, le souffle déformant du Chaos murmure en vous, soit en modifiant votre chair dans une nouvelle forme, soit en fracturant votre psyché en lui insufflant des connaissances innomables qu'elle ne pourra jamais oublier.",
|
||||
"CHAT.CorruptionLoses":"<b>{name}</b> perd {number} Points de Corruption.",
|
||||
"CHAT.CorruptionReroll":"<b>{name}</b> relance une Corruption, avec ce nouveau résultat, la Corruption est désormais de {number}.",
|
||||
"CHAT.MutateSuccess":"Vous avez réussi à contrôler votre Corruption. Pour le moment.",
|
||||
"CHAT.InjuryFinish":"La durée de la Blessure {injury} est finie.",
|
||||
"CHAT.InjuryError":"Impossible d'incrémenter {injury} car ce n'est pas un nombre.",
|
||||
"CHAT.LingeringRot":" Persistance: Vous avez développé une Infection du Sang.",
|
||||
"CHAT.CorruptionFail":"<b>{name}</b> reçoit {number} Points de Corruption.",
|
||||
"CHAT.MutateTable":"Lancer sur la Table des Corruptions:",
|
||||
"CHAT.CausesFear":"provoque {fear} à",
|
||||
"CHAT.OvercastReset":"Reset Sur-Incantation",
|
||||
"CHAT.CommandLine.Help.Properties.Title":"Propriétés d'Item",
|
||||
"CHAT.CommandLine.Help.Properties.Usage.Command":"/prop <nom propriété>",
|
||||
"CHAT.CommandLine.Help.Properties.Usage.Example":"<br>/prop impact<br>/prop shoddy",
|
||||
"CHAT.CommandLine.Help.Properties.Usage.Note":"cherchera la propriété la plus proche syntaxquement et l'affiche (eg. /prop préc == /prop précise)",
|
||||
"CHAT.PowerIngredientMiscast":"Incantations Imparfaites à cause d'un Ingrédient - chiffre 8 dans le jet inversé.",
|
||||
"CHAT.Quickcasting":"Incantation rapide",
|
||||
"CHATOPT.Reroll":"Relancer",
|
||||
|
||||
|
||||
"Error.SpeciesSkills" : "Impossible d'ajouter des compétences pour les races",
|
||||
"Error.SpeciesTalents" : "Impossible d'ajouter des talents pour les races",
|
||||
"Error.CriticalWound" : "Erreur lors de l'application des blessures",
|
||||
@ -943,35 +613,10 @@
|
||||
"Error.NoAmmo" : "Plus de munitions !",
|
||||
"Error.NotLoaded" : "Non chargé - Rechargement",
|
||||
"Error.LimitedWeapons" : "Vous ne pouvez pas équiper plus d'armes.",
|
||||
|
||||
"ERROR.DamagePermission" : "Vous n'avez pas les droits pour appliquer des dommages à cet Acteur.",
|
||||
"ERROR.TokenMount" : "Les Tokens de montures nécessitent d'être sur la scène ou est présent le Token.",
|
||||
"ERROR.MountNotFound" : "Impossible de trouver la monture. Essayez de la supprimer.",
|
||||
"ERROR.CharAssigned" : "Aucun Personnage attaché. Vérifiez la configuration du joueur pour lui assigner un personnage.",
|
||||
"ERROR.ParseDisease":"Impossible d'analyser le jet de Maladie",
|
||||
"ERROR.ParseInjury":"Impossible d'analyser le jet de Blessures",
|
||||
"ERROR.ParseSpell":"Erreurr: Impossible d'analyser les dommages du sort. Consultez la console.",
|
||||
"ERRORParser":"Impossible de trouver {name}",
|
||||
"ERROR.NoSkill":"Impossible de trouver la compétence (ou la spécialisation de) {skill} dans les compendiums ou le monde",
|
||||
"ERROR.NoTalent":"Impossible de trouver le talent {talent} dans les compendiums ou le monde",
|
||||
"ERROR.SpellLore":"Vous ne pouvez pas changer le domaine d'un Sort quand il est attaché à un Acteur",
|
||||
"ERROR.AddEffect":"Foundry ne permet pas d'ajouter des Effets (ActiveEffects) aux Items attachés à un Acteur. Editez plutôt un Item du monde.",
|
||||
"ERROR.EditEffect":"Foundry ne permet pas d'ajouter des Effets (ActiveEffects) aux Items attachés à un Acteur. Editez plutôt un Item du monde.",
|
||||
"ERROR.Table":"Table non trouvée",
|
||||
"ERROR.Found":"{name} n'a pas été trouvé",
|
||||
"ERROR.Species":"Impossible de trouver l'espèce {name}",
|
||||
"ERROR.Experience":"Les points d'EXP doivent être des valeurs numérique.",
|
||||
"ERROR.ID":"ID pour {name} existe déja dans la collection concernée. Ce Document a reçu un ID unique.",
|
||||
"ERROR.EFFECT":"Une erreur est survenue lors de l'execution de l'Effet {effect}, merci de consulter la console (F12)",
|
||||
"ERROR.Column":"Vous devez spécifier une colonne pour réaliser le jet",
|
||||
"ERROR.Opposed":"L'attaquant et le défenseur doivent réaliser un test pour calculer l'opposition",
|
||||
"ERROR.Property":"Les jets doivent indiquer la propriété de l'Item",
|
||||
"ERROR.Speaker":"Les jets doivent indiquer le 'speaker'",
|
||||
"ERROR.EffectNotFound":"Effet non trouvé sur le Test",
|
||||
"ERROR.Parser":"Impossible de trouver {name}",
|
||||
"ERROR.PrayerAoEOvercast":"La zone d'effet des Prières ne peut être augemntée",
|
||||
"WARNING.Target":"Sélectionnez une cible pour appliquer l'effet.",
|
||||
"WARNING.ActorTest":"Les classes de jet d'acteur ne sont plus utilisées. Appelez désormais `roll()` sur l'objet lui-même.",
|
||||
|
||||
"INCOME.YouEarn" : "Vous gagnez",
|
||||
"INCOME.Failure" : "Vous avez eu une très mauvaise semaine, et vous ne gagnez rien (ou votre argent a été volé).",
|
||||
@ -1042,7 +687,7 @@
|
||||
"WFRP4E.Properties.Fast" : "Les armes Rapides sont conçues pour frapper avec une telle rapidité que parer n'est pas une option, laissant un adversaire transpercé avant qu'il n'ait pu réagir. Le porteur d'une arme Rapide peut choisir d'attaquer avec l'arme Rapide en dehors de l'initiative normale, que ce soit pour frapper le premier, le dernier ou au moment où il le souhaite. De plus, tous les Tests de Corps à corps pour se défendre contre des armes Rapides subissent une pénalité de -10 si votre adversaire utilise une arme sans l'Atout Rapide ; les autres Compétences défendent normalement. Deux adversaires avec des armes Rapides combattent dans l'ordre d'Initiative (l'un par rappport à l'autre) normalement. Une arme Rapide ne peut jamais être aussi Lente (Lente prend le dessus).",
|
||||
"WFRP4E.Properties.Hack" : "Les armes de Taille possèdent de lourdes lames qui peuvent entamer les armures avec une horrifiante facilité. Si vous touchez un adversaire, vous endommagez de 1 point une pièce d'armure ou un bouclier, tout en blessant la cible.",
|
||||
"WFRP4E.Properties.Impact" : "Certaines armes sont juste colossales ou causent de terribles dégâts dus à leur poids ou leur conception. Sur une touche réussie, ajoutez le résultat du dé des unités du Test d'attaque à tout Dégât causé par une arme Percutante. Une arme Inoffensive ne peut jamais être également Percutante (Inoffensive prend le dessus).",
|
||||
"WFRP4E.Properties.Impale" : "Les armes Empaleuses peuvent tuer d'une simple frappe nette et causent un Coup Critique sur un multiple de 10 (i.e.: 10, 20, 30, etc.), ainsi que sur un double (i.e.: 11, 22, 33, etc.) obtenu inférieur ou égal au Test approprié de combat. Si l'empalement vient d'une arme à distance, la munition utilisée s'est fermement logée dans le corps de la cible. Les flèches et les carreaux nécessitent un <b>Test de Guérison Intermédiaire (-)</b> pour être retirés - les balles nécessitent un chirurgien (voir le Talent Chirurgie au Chapitre 4 : Compétences et Talents). Vous ne pouvez pas guérir 1 de vos Blessures pour chaque flèche ou balle non retirée.",
|
||||
"WFRP4E.Properties.Impale" : "Les armes Empaleuses peuvent tuer d'une simple frappe nette et causent un Coup Critique sur un mumtiple de 10 (i.e.: 10, 20, 30, etc.), ainsi que sur un double (i.e.: 11, 22, 33, etc.) obtenu inférieur ou égal au Test approprié de combat. Si l'empalement vient d'une arme à distance, la munition utilisée s'est fermement logée dans le corps de la cible. Les flèches et les carreaux nécessitent un <b>Test de Guérison Intermédiaire (-)</b> pour être retirés - les balles nécessitent un chirurgien (voir le Talent Chirurgie au Chapitre 4 : Compétences et Talents). Vous ne pouvez pas guérir 1 de vos Blessures pour chaque flèche ou balle non retirée.",
|
||||
"WFRP4E.Properties.Penetrating" : "L'arme est extrêmement efficace pour pénétrer les armures. Les PA ne provenant pas de métal sont ignorés, et le premier point de toutes les autres armures est ignoré.",
|
||||
"WFRP4E.Properties.Pistol" : "Vous pouvez utiliser cette arme pour attaquer en Combat rapproché.",
|
||||
"WFRP4E.Properties.Precise" : "L'arme trouve facilement sa cible. Gagnez +1DR à tout Test réussi lors d'une attaque avec cette arme.",
|
||||
@ -1125,7 +770,6 @@
|
||||
"MARKET.NotifyUserMustBePlayer": "Seul un joueur peut cliquer sur PAYER",
|
||||
"MARKET.NotifyNoActor": "Aucun acteur n'est selectionné ou associé avec l'utilisateur actuel",
|
||||
"MARKET.ItemAdded": "{item} ajouté à {actor}",
|
||||
"MARKET.d":"d",
|
||||
|
||||
"WFRP4E.TrappingType.Weapon" : "Arme",
|
||||
"WFRP4E.TrappingType.Armour" : "Armure",
|
||||
@ -1150,7 +794,7 @@
|
||||
"WFRP4E.LoreDescription.Metal" : "Les Sorts infligeant des Dégâts ignorent les PA des armures métalliques, et infligent un bonus de Dégâts égal au nombre de PA de l'armure métallique portée à la localisation atteinte. Donc si votre Sort frappe un Bras protégé par 2 PA d'une armure métallique, il inflige +2 Dégâts supplémentaires et ignore les PA.",
|
||||
"WFRP4E.LoreDescription.Life" : "Recevez un bonus de +10 aux lancers pour Incanter ou Focaliser dans un environnement rural ou sauvage. Les créatures vivantes - par exemple les créatures ne possédant pas les Traits Démoniaque ou Mort-vivant - ciblées par les sorts du Domaine de la Vie se voient retirer tous les autres effets Exténué et Hémorragique, après que tous les autres effets ont été appliqués. Les créatures avec Trait Mort-vivant subissent un nombre de Dégâts supplémentaires égal à votre Bonus de Force Mentale, ignorant le Bonus d'Endurance et les PA, si elles sont affectées par un Sort issu du Domaine de la Vie.",
|
||||
"WFRP4E.LoreDescription.Light" : "Vous pouvez infliger un Etat Aveuglé aux cibles des Sorts du Domaine de la Lumière, à moins qu'ils ne possèdent le Talent Magie de Arcanes (Lumière). Si une cible possède les Traits de créature Démoniaque ou Mort-vivant, les Sorts infligent une frappe supplémentaire avec un nombre de Dégâts égal à votre Bonus d'Intelligence qui ignore le Bonus d'Endurance et les PA.",
|
||||
"WFRP4E.LoreDescription.Hedgecraft" : "Les sorts de la Magie Naturelle ne peuvent être lancés sans Ingrédients. Par chance, ceux qu'ils utilisent se trouvent facilement en bordure des villages et ne sont, la plupart du temps, que des herbes et des plantes. Vous récupérez DR+1 Ingédients lorsque vous cherchez de la nourriture en utilisant Savoir (Herboristerie), comme décrit page 131, ou vous pouvez encore les acheter pour 5 sous de cuivre chacun.",
|
||||
"WFRP4E.LoreDescription.Hedgecraft" : "Les sorts de la Magie Sauvage ne peuvent être lancés sans Ingrédients. Par chance, ceux qu'ils utilisent se trouvent facilement en bordure des villages et ne sont, la plupart du temps, que des herbes et des plantes. Vous récupérez DR+1 Ingédients lorsque vous cherchez de la nourriture en utilisant Savoir (Herboristerie), comme décrit page 131, ou vous pouvez encore les acheter pour 5 sous de cuivre chacun.",
|
||||
"WFRP4E.LoreDescription.Witchcraft" : "A chaque fois qu'un adepte du Domaine de la Sorcellerie fait un jet sur le Tableau des Incantations Imparfaites, il gagne 1 point de Corruption. De plus, vous pouvez infliger 1 Etat Hémorragique à toute cible d'un sort de ce Domaine. Enfin, le fait de Focaliser ou lancer des sorts de ce Domaine nécessite systématiquement un lancer sur la Table des Incantations Imparfaites Mineures à moins d'utiliser un Ingrédient. Les Ingrédients sont en général des animaux de petite taille, et peuvent s'acheter pour NI du sort sous de cuivre, au lieu des pistoles habituelles. Un Sorcier peut découvrir lui-même ses Ingrédients, avec la Compétence Survie en Extérieur : un jet réussi permet de trouver DR+1 Ingrédients.",
|
||||
"WFRP4E.LoreDescription.Shadow": "Tout les sorts du Domaine des Ombres infligeant des Dommages ignorent tout les points d'Armure non magiques.",
|
||||
|
||||
@ -1159,17 +803,17 @@
|
||||
"WFRP4E.EncumbrancePenalties.MaxEnc" : "Vous ne pouvez plus vous déplacer.",
|
||||
|
||||
"WFRP4E.Conditions.Ablaze" : "A la fin de chaque round, vous subissez <a class = 'chat-roll'><i class='fas fa-dice'></i> 1d10</a> Points de Blessure, résultat modifié par votre Bonus d'Endurance et les PA de la Localisation la moins protégée, pour un minimum de 1 Blessure. Pour chaque Etat En flammes supplémentaire que vous subissez, ajoutez +1 aux Dégâts subis ; ainsi, si vous avez 3 Etats En flammes, vous subissez 1d10+2 Points de Blessure.<br><br>Un unique Etat En flamme peut être retiré avec un Test d'Athlétisme, et chaque DR obtenu permet de retirer un Etat En flamme supplémentaire, la difficulté du Test étant ajustée en fonction des circonstances : il est plus facile de se défaire des flammes en se roulant dans le sable qu'au milieu d'une cuisine pleine d'huile.",
|
||||
"WFRP4E.Conditions.Bleeding" : "Vous saignez abondamment. Perdez 1 Blessure à la fin de chaque round, en ignorant les modificateurs. De plus, vous subissez une pénalité de -10 lorsqu'il s'agit de faire un Test pour résister à une Blessure Purulente, une Infection Mineure ou Infection du sang (voir page 186). Si vous atteignez 0 Blessure, vous ne perdez plus de Points de Blessure supplémentaires et tombez immédiatement inconscient (gagnez l'Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Inconscient</a>). A la fin du round, vous avez 10% de risque de mourir par Etat Hémorragique que vous possédez ; par exemple, sur un 1-30 si vous en avez 3. Si vous faites un double sur ce jet, vos blessures coagulent un peu et vous perdez 1 Etat Hémorragique. Vous ne pouvez pas reprendre vos esprits tant que tous les Etats Hémorragiques ne sont pas retirés (voir <b>Traumatisme</b> page 172).<br><br>On peut retirer un Etat Hémorragique avec : un Test de Guérison réussi, où chaque DR retire un Etat Hémorragique supplémentaire ; ou avec n'importe quel Sort ou Prière qui guérit les Points de Blessure, avec un Etat retiré par Point de Blessure guéri.<br><br>Une fois tous les Etats Hémorragiques retirés, gagnez un Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Extenué</a>.",
|
||||
"WFRP4E.Conditions.Bleeding" : "Vous saignez abondamment. Perdez 1 Blessure à la fin de chaque round, en ignorant les modificateurs. De plus, vous subissez une pénalité de -10 lorsqu'il s'agit de faire un Test pour résister à une Blessure Purulente, une Infection Mineure ou Infection du sang (voir page 186). Si vous atteignez 0 Blessure, vous ne perdez plus de Points de Blessure supplémentaires et tombez immédiatement inconscient (gagnez l'Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Inconscient</a>). A la fin du round, vous avez 10% de risque de mourir par Etat Hémorragique que vous possédez ; par exemple, sur un 1-30 si vous en avez 3. Si vous faites un double sur ce jet, vos blessures coagulent un peu et vous perdez 1 Etat Hémorragique. Vous ne pouvez pas reprendre vos esprits tant que tous les Etats Hémorragiques ne sont pas retirés (voir <b>Traumatisme</b> page 172).<br><br>On peut retirer un Etat Hémorragique avec : un Test de Guérison réussi, où chaque DR retire un Etat Hémorragique supplémentaire ; ou avec n'importe quel Sort ou Prière qui guérit les Points de Blessure, avec un Etat retiré par Point de Blessure guéri.<br><br>Une fois tous les Etats Hémorragiques retirés, gagnez un Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Exténué</a>.",
|
||||
"WFRP4E.Conditions.Blinded" : "Vous n'êtes plus capables de voir clairement, que ce soit à cause d'un éclair lumineux ou d'un liquide que vous avez reçu dans les yeux. Vous subissez une pénalité de -10 à tous les Tests qui impliquent la vue, et un adversaire qui vous attaque en combat rapproché gagne un bonus de +10 avant d'effectuer son lancer.<br><br>Un Etat Aveuglé est retiré à la fin de chaque round, a partir du prochain round.",
|
||||
"WFRP4E.Conditions.Broken" : "Vous êtes terrifié, vaincu, paniqué ou encore convaincu que vous allez mourir. Pendant votre tour, votre Mouvement et votre Action doivent être utilisés pour vous éloigner le plus vite possible jusqu'à ce que vous vous retrouviez à l'abri, hors de vue de l'ennemi ; vous pourrez alors utiliser une Action sur une Compétence qui vous permettra de vous cacher plus efficacement. Vous subissez également une pénalité de -10 à tous les Tests autres que ceux impliquant la course ou la dissimulation.<br><br> Vous ne pouvez effectuer aucun Test pour récupérer de cet Etat si vous êtes Engagé avec un ennemi (voir page 159). Si vous n'êtes pas engagé, à la fin de chaque round, vous pouvez tenter un Test de Calme pour vous débarasser d'un Etat Brisé, où chaque DR retire un Etat Brisé supplémentaire, et dont la difficulté est dictée par les circonstance dans lesquelles vous vous trouvez; il est plus facile de vous reprendre pour recouvrer vos esprits si vous vous cachez derrière un tonneau au fond d'une impasse située loin du danger (Accessible +20) plutôt que lorsque vous vous trouvez à trois enjambées d'un démon salivant qui réclame votre sang (Très difficile -30).<br><br>Si vous passez un round entier à être caché hors de vue de tout ennemi, vous retirez 1 Etat Brisé.<br><br>Une fois que vous n'avez plus d'Etat Brisé, vous gagnez 1 Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Extenué</a>.",
|
||||
"WFRP4E.Conditions.Broken" : "Vous êtes terrifié, vaincu, paniqué ou encore convaincu que vous allez mourir. Pendant votre tour, votre Mouvement et votre Action doivent être utilisés pour vous éloigner le plus vite possible jusqu'à ce que vous vous retrouviez à l'abri, hors de vue de l'ennemi ; vous pourrez alors utiliser une Action sur une Compétence qui vous permettra de vous cacher plus efficacement. Vous subissez également une pénalité de -10 à tous les Tests autres que ceux impliquant la course ou la dissimulation.<br><br> Vous ne pouvez effectuer aucun Test pour récupérer de cet Etat si vous êtes Engagé avec un ennemi (voir page 159). Si vous n'êtes pas engagé, à la fin de chaque round, vous pouvez tenter un Test de Calme pour vous débarasser d'un Etat Brisé, où chaque DR retire un Etat Brisé supplémentaire, et dont la difficulté est dictée par les circonstance dans lesquelles vous vous trouvez; il est plus facile de vous reprendre pour recouvrer vos esprits si vous vous cachez derrière un tonneau au fond d'une impasse située loin du danger (Accessible +20) plutôt que lorsque vous vous trouvez à trois enjambées d'un démon salivant qui réclame votre sang (Très difficile -30).<br><br>Si vous passez un round entier à être caché hors de vue de tout ennemi, vous retirez 1 Etat Brisé.<br><br>Une fois que vous n'avez plus d'Etat Brisé, vous gagnez 1 Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Exténué</a>.",
|
||||
"WFRP4E.Conditions.Deafened" : "Que ce soit à cause d'un bruit tonitruant ou d'un coup porté à la tête, vous ne parvenez plus à entendre correctement. Vous subissez une pénalité de -10 à tous les Tests impliquant l'audition, et tout adversaire qui vous attaque en combat rapproché par le flanc ou par derrière gagne un bonus supplémentaire de +10 pour vous toucher (ce bonus n'est pas augmenté avec de multiples Etats Assourdi). Un Etat Assourdi est retiré à la fin de chaque round qui suit le premier, souvent remplacé par un acouphène.",
|
||||
"WFRP4E.Conditions.Entangled" : "Vous êtes gêné par quelque chose qui restreint votre déplacement ; cela peut être des cordes, une toile d'araignée, ou les biceps protubérants d'un adversaire.<br><br>Au cours de votre tour, vous ne pouvez pas utiliser votre Mouvement, et toute Action qui implique un déplacement quelconque subit une pénalité de -10 (dont l'Empoignade ; voir page 163).<br><br>Vous pouvez utiliser votre Action pour retirer l'Etat Empêtré en réussissant un <b>Test opposé de Force</b> contre la source de cet empêtrement, et chaque DR obtenu permet de retirer un Etat Empêtré supplémentaire.",
|
||||
"WFRP4E.Conditions.Fatigued" : "Vous êtes épuisé, ou stressé, mais quoi qu'il en soit, vous avez besoin de repos.<br><br>Vous subissez une pénalité de -10 à tous vos Tests.<br><br>Pour retirer un Etat Exténué, il faut normalement du repos, un Sort ou une Prière divine, mais, dans certaines conditions, par exemple lorsque l'Etat Exténué est dû à une charge portée trop importante (voir Encombrement, page 293), le fait de faire des modifications (comme porter moins de matériel, par exemple) peut permettre de retirer l'Etat.",
|
||||
"WFRP4E.Conditions.Poisoned" : "Vous avez été empoisonné ou un venin vous a été injecté. La difficulté de tous les Tests effectués pour éliminer le poison est dictée par le poison ou le venin en question.<br><br>A la fin de chaque round, perdez 1 Point de Blessure, en ignorant tous les modificateurs. De plus, vous subissez une pénalité de -10 à tous vos Tests.<br><br>Si vous atteignez 0 Point de Blessure alors que vous êtes Empoisonné, vous ne pouvez soigner aucune Blessure tant qu'il vous reste des Etats Empoisonnés. Si vous tombez Inconscient alors que vous êtes Empoisonné, réussissez un Test de Résistance après un nombre de rounds équivalent à votre Bonus d'Endurance ou vous mourrez dans d'horribles souffrances (cf. page 172).<br><br>A la fin de chaque round, vous pouvez effectuer un test de Resistance. Sur un succès, retirez un Etat Empoisonné, et chaque DR permet d'en retirer un supplémentaire. Un Test de Guérison permet d'obtenir le même résultat.<br><br>Une fois débarassé de tous les Etats Empoisonné, gagnez 1 Etat Exténué.",
|
||||
"WFRP4E.Conditions.Prone" : "Vous vous retrouvez au sol, sans doute parce que vous n'avez plus de Points de Blessure disponibles, que vous avez chuté ou que vous avez été frappé par quelque chose de très gros.<br><br>Pendant votre tour, votre Mouvement ne peut être utilisé que pour vous relever ou encore ramper de la moitié de votre Mouvement en mètres (Note : s'il ne vous reste plus aucune Blessure, vous ne pouvez que ramper). Vous subissez une pénalité de -20 à tout Test qui implique un déplacement quelconque, et tout adversaire qu itente de vous attaquer en Combat au Corps à corps gagne un bonus de +20 pour vous toucher.<br><br>A l'inverse de la plupart des Etats, A Terre ne se cumule pas. Vous perdez l'Etat A Terre lorsque vous vous relevez.",
|
||||
"WFRP4E.Conditions.Stunned" : "Vous avez reçu un coup sur la tête, ou êtes désorienté ou confus ; vos oreilles bourdonnent et plus rien n'a vraiment de sens.<br><br> Vous êtes incapable d'effectuer votre Action au cours de votre tour et vous ne pouvez vous déplacer que de la moitié de votre Mouvement. Vous pouvez vous défendre lors des Tests opposés - mais pas ceux qui utilisent Langue (Magique). Vous subissez également une pénalité de -10 à tous les Tests, et tout adversaire qui tente de vous frapper en Combat au Corps à corps gagne +1 Avantage avant d'effectuer son attaque.<br><br>A la fin de chaque round, vous pouvez tenter un <b>Test de Résistance Intermédiaire (+0)</b>. Sur un succès, retirez 1 Etat Assommé, et chaque DR obtenu permet de retirer 1 Etat Assommé supplémentaire.<br><br>Une fois débarassé de tous les Etats Assommé, gagnez 1 Etat <a class='condition-chat'><i class='fas fa-user-injured'></i>Extenué</a> si vous n'en possédez pas déjà.",
|
||||
"WFRP4E.Conditions.Stunned" : "Vous avez reçu un coup sur la tête, ou êtes désorienté ou confus ; vos oreilles bourdonnent et plus rien n'a vraiment de sens.<br><br> Vous êtes incapable d'effectuer votre Action au cours de votre tour et vous ne pouvez vous déplacer que de la moitié de votre Mouvement. Vous pouvez vous défendre lors des Tests opposés - mais pas ceux qui utilisent Langue (Magique). Vous subissez également une pénalité de -10 à tous les Tests, et tout adversaire qui tente de vous frapper en Combat au Corps à corps gagne +1 Avantage avant d'effectuer son attaque.<br><br>A la fin de chaque round, vous pouvez tenter un <b>Test de Résistance Intermédiaire (+0)</b>. Sur un succès, retirez 1 Etat Assommé, et chaque DR obtenu permet de retirer 1 Etat Assommé supplémentaire.<br><br>Une fois débarassé de tous les Etats Assommé, gagnez 1 Etat <a class='condition-chat'><i class='fas fa-user-injured'></i>Exténué</a> si vous n'en possédez pas déjà.",
|
||||
"WFRP4E.Conditions.Surprised" : "Vous avez été pris au dépourvu et vous n'êtes absolument pas prêt à réagir à ce qui arrive. Vous ne pouvez effectuer ni votre Mouvement ni votre Action pendant ce tour, et vous ne pouvez pas vous défendre lors de Tests opposés. Tout adversaire qui tente de vous frapper en Combat au Corps à corps gagne +20 à la CC.<br><br>L'Etat Surpris ne se cumule pas, et donc vous ne pouvez pas en subir plusieurs.<br><br>A la fin de chaque round, ou après la première tentative effectuée pour vous toucher, vous perdez l'Etat Surpris.",
|
||||
"WFRP4E.Conditions.Unconscious" : "Vous êtes KO, inconscient, ou frappé d'incapacité. Vous ne pouvez absolument rien faire de votre tour et n'avez aucune conscience de ce qui vous entoure. Un attaquant qui vous cible touche automatiquement, avec un DR maximal et vous inflige 1 Blessure Critique ; ou, si le MJ préfère, une attaque en combat rapproché vou tue automatiquement. Toute attaque à distance est également un succès et occassionne les mêmes Dégâts que si le tireur éait à bout portant.<br><br>L'Etat Inconscient ne se cumule pas.<br><br>Récupérer d'un Etat Inconscient va bien souvent dépendre des circonstances qui ont causé cette inconscience. Reportez-vous aux Traumatismes (page 192) pour en savoir plus sur le sujet. Si vous dépensez un Point de Détermination pour vous débarasser d'un Etat Inconscient, mais que vous êtes toujours sujet aux causes de cette inconscience, vous gagnez un nouvel Etat Inconscient à la fin du round.<br><br>Lorsque vous vous débarassez de l'Etat Inconscient, vous gagnez les Etats <a class='condition-chat'><i class='fas fa-user-injured'></i> A Terre</a> et <a class='condition-chat'><i class='fas fa-user-injured'></i> Extenué</a>.",
|
||||
"WFRP4E.Conditions.Unconscious" : "Vous êtes KO, inconscient, ou frappé d'incapacité. Vous ne pouvez absolument rien faire de votre tour et n'avez aucune conscience de ce qui vous entoure. Un attaquant qui vous cible touche automatiquement, avec un DR maximal et vous inflige 1 Blessure Critique ; ou, si le MJ préfère, une attaque en combat rapproché vou tue automatiquement. Toute attaque à distance est également un succès et occassionne les mêmes Dégâts que si le tireur éait à bout portant.<br><br>L'Etat Inconscient ne se cumule pas.<br><br>Récupérer d'un Etat Inconscient va bien souvent dépendre des circonstances qui ont causé cette inconscience. Reportez-vous aux Traumatismes (page 192) pour en savoir plus sur le sujet. Si vous dépensez un Point de Détermination pour vous débarasser d'un Etat Inconscient, mais que vous êtes toujours sujet aux causes de cette inconscience, vous gagnez un nouvel Etat Inconscient à la fin du round.<br><br>Lorsque vous vous débarassez de l'Etat Inconscient, vous gagnez les Etats <a class='condition-chat'><i class='fas fa-user-injured'></i> A Terre</a> et <a class='condition-chat'><i class='fas fa-user-injured'></i> Exténué</a>.",
|
||||
"WFRP4E.Conditions.Grappling" : "Si vous commencez votre tour Empoigné, vous pouvez briser l'Empoignade si vous disposez d'un Avantage supérieur à celui de votre adversaire, et vous n'êtes pas considéré comme Engagé pour votre Mouvement ; autrement, vous devez effectuer un <b>Test opposé de Force</b> pour votre Action. Sur un succès, vous pouvez choisir une des deux options suivantes :<br><ul><li>Infliger BF+DR Dégâts en utilisant votre lancer de Force pour déterminer la Localisation affectée. Vous ignorez tous les PA car vous ne faites qu'effectuer des clefs de bras tout en tirant sur les muscles.</li><li>Soit : 1) Conférer l'Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Empêtré</a> à votre adversaire, ou 2) vous défaire de l'Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Empêtré</a> et vous débarasser d'un Etat Empêtré supplémentaire pour chaque DR obtenu.</li></ul>",
|
||||
"WFRP4E.Conditions.Fear" : "Lorsque vous êtes sous le coup de la Peur, vous subissez -1DR à tous les Tests en rapport avec la source de votre peur. Vous êtes incapable de vous rapprocher de ce qui provoque cette Peur à moins de réussir un <b>Test de Calme Intermédiaire (+0)</b>. Si la source de votre Peur se rapproche de vous, vous devez réussir un <b>Test de Calme Intermédiaire (+0)</b> ou subir un Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Brisé</a>.",
|
||||
|
||||
@ -1179,7 +823,7 @@
|
||||
"WFRP4E.ConditionName.Broken" : "Brisé",
|
||||
"WFRP4E.ConditionName.Deafened" : "Assourdi",
|
||||
"WFRP4E.ConditionName.Entangled" : "Empêtré",
|
||||
"WFRP4E.ConditionName.Fatigued" : "Extenué",
|
||||
"WFRP4E.ConditionName.Fatigued" : "Exténué",
|
||||
"WFRP4E.ConditionName.Poisoned" : "Empoisonné",
|
||||
"WFRP4E.ConditionName.Prone" : "A Terre",
|
||||
"WFRP4E.ConditionName.Stunned" : "Assommé",
|
||||
@ -1198,7 +842,7 @@
|
||||
"WFRP4E.SymptomDescriptions.Flux" : "Dans un premier temps apparaissent borborygmes et gargouillis, puis c'est la course vers les commodités. Pâle et épuisé, vous avez connu des jours meilleurs. Vous pouvez avoir besoin d'y aller à n'importe quel moment et vous saisissez toute opportunité pour vous soulager, à vous de vous débrouiller. De plus, le ML peut décider, n'importe quand au cours de la partie, que vous devez vous y rendre. Vous disposez alors d'un nombre de rounds égal à votre Bonus d'Endurance pour vous trouver un endroit calme. Que vous y parveniez ou non, votre corps se videra de façons spectaculaire. Si l'Intoxication Alimentaire est indiquée comme (Modérée), le ML peut vous demander de vous isoler deux fois par séance de jeu. Si elle est indiquée (Grave), c'est trois fois, et vous perdrez une Blessure à chaque fois, car le sang que vous avez perdu vous laisse sur les rotules. ",
|
||||
"WFRP4E.SymptomDescriptions.Gangrene" : "Votre chair noircit et pourrit, infectée par quelque chose d'horrible. Et cela ne semble pas s'arranger. Effectuez un lancer de pourcentage pour déterminer une <a class ='table-click' data-table='hitloc'><i class='fas fa-list'></i> Localisation</a>. Si vous obtenez Corps, vous avez de la chance, la Gangrène ne s'est pas propagée au cours de l'infection. Si vous obtenez la Tête, c'est votre nez qui est touché. Si vous obtenez Bras, ce sont vos doigts. Si c'est la Jambe, c'est votre pied qui est atteint. Chaque jour, effectuez un <b>Test de Résistance Accessible (+20)</b>. Sur un succès, la Gangrène est contenue. Sur un échec, elle empire. Si vous obtenez plus d'échecs que votre Bonus d'Endurance, la Localisation devient totalement inutilisable. Si cela se produit, utilisez les mêmes règles que pour l'Amputation (voir Blessures Critiques). Tant que vous souffrez de la Gangrène, subissez une pénalité de –10 à tous vos Tests de Sociabilité, et vous subissez le symptôme Blessé. De plus, comme si ce n'était pas suffisant, vous souffrez également du symptôme Toxine tant que le membre affecté ne sera pas amputé. Et cela perdurera même après que vous avez été guéri de la maladie à l'origine de la Gangrène. ",
|
||||
"WFRP4E.SymptomDescriptions.Lingering" : "Vous avez une infection qui perdure. De ce fait, vous craignez que cela empire... Après que votre maladie est arrivée à la fin de sa Durée, effectuez un Test de Résistance avec la Difficulté indiquée entre parenthèses après le symptôme comme ceci : Persistant (Accessible) ou Persistant (Facile). Sur un Echec Minime (0), rajoutez <a class = 'chat-roll'><i class='fas fa-dice'></i> 1d10</a> jours à la Durée. Sur un Echec (-2), vous subissez une Blessure Purulente. Sur un Echec Stupéfiant (-6), vous développez une Infection du sang.",
|
||||
"WFRP4E.SymptomDescriptions.Malaise" : "Vous ne vous sentez pas bien du tout. Vous êtes fatigué, ressentez des difficultés à vous concentrer. En fait, vous vous sentez malade. Gagnez un Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Extenué</a> dont vous ne pourrez vous défaire qu'une fois votre maladie guérie.",
|
||||
"WFRP4E.SymptomDescriptions.Malaise" : "Vous ne vous sentez pas bien du tout. Vous êtes fatigué, ressentez des difficultés à vous concentrer. En fait, vous vous sentez malade. Gagnez un Etat <a class='condition-chat'><i class='fas fa-user-injured'></i> Exténué</a> dont vous ne pourrez vous défaire qu'une fois votre maladie guérie.",
|
||||
"WFRP4E.SymptomDescriptions.Nausea" : "Vous vous sentez très malade et vous risquez de vomir si vous vous déplacez trop vite. Chaque fois que vous échouez à un Test qui implique un déplacement physique, votre nausée prend le dessus et vous vomissez. Vous gagnez l'Etat <a class = 'condition-chat'><i class='fas fa-user-injured'></i> Assommé</a> qui représente les conséquences de ces vomissements répétitifs ou de la déshydratation, en fonction des circonstances.",
|
||||
"WFRP4E.SymptomDescriptions.Pox" : "Vous êtes recouvert de pustules, de gonflements, d'éruptions cutanées ou de boutons qui vous démangent, et c'est loin de vous rendre attirant. Les démangeaisons constituent surtout un problème esthétique, et impliquent une pénalité de -10 à tous les Tests de Sociabilité. De plus, n'oubliez pas d'interpréter ces démangeaisons en cours de jeu. Si vous voulez vous retenir un tant soit peu, réussissez un <b>Test de Calme Accessible (+20)</b>. Lorsque les démangeaisons s'arrêtent, effectuez un <b>Test de Calme Accessible (+20)</b>. Sur un échec, intervertissez les deux chiffres du résultat et vous recevez une cicatrice permanente à la Localisation correspondante, montrant ainsi l'endroit où ce démangeaisons n'ont pas été correctement traitées. Si la <a class='table-click' data-table = 'hitloc'><i class='fas fa-list'></i> Localisation</a> est la Tête, perdez définitivement 1 point de Sociabilité.",
|
||||
"WFRP4E.SymptomDescriptions.Wounded" : "Vous avez une blessure ou une plaie ouverte qui ne guérit pas correctement à cause d'une infection. Pour chaque symptôme Blessé dont vous souffrez, vous ne pouvez pas guérir l'une de vos Blessures, qui reste donc ouverte et vous fait souffrir. Certains écoulements de pus sont même possibles. Chaque jour, réussissez un <b>Test de Résistance Facile (+20)</b> ou subissez une Blessure Purulente si vous n'en avez pas déjà une.",
|
||||
@ -1226,7 +870,7 @@
|
||||
|
||||
"Blight": "Toxine",
|
||||
"Buboes": "Bubons",
|
||||
"Convulsion": "Convulsion",
|
||||
"Convulsion": "Convulsions",
|
||||
"Convulsions": "Convulsions",
|
||||
"Coughs and Sneezes": "Toux et éternuements",
|
||||
"Fever": "Fièvre",
|
||||
@ -1240,12 +884,8 @@
|
||||
"Delirium": "Délire",
|
||||
"Swelling": "Gonflement",
|
||||
"Treatment": "Traitement",
|
||||
|
||||
"Wounds Healed" : "Blessures soignées",
|
||||
|
||||
"BugReport.ErrorForm":"Merci de remplir le formulaire",
|
||||
"BugReport.ErrorName1":"Merci d'inclure votre Tag Discord ou vitre mail dans la section Nom.",
|
||||
"BugReport.ErrorName2":"Votre Tag Discord ou votre email est requis dans la section Nom.",
|
||||
|
||||
"ITEM.LoreEffectPlaceholder" : "Remplacer le savoir par défaut",
|
||||
"ITEM.ChannelOverride" : "Remplacer la focalisation",
|
||||
"ITEM.ChannelPlaceholder" : "Remplacer la compétence de Focalisation à utiliser.",
|
||||
@ -1253,7 +893,6 @@
|
||||
"ITEM.DiceRoll" : "Jet de Dé",
|
||||
"ITEM.AddSL" : "Ajouter DR",
|
||||
"ITEM.ValuePerOvercast" : "Valeur/Surincantation",
|
||||
"ITEM.CastSkillOverride":"Remplacer la compétence d'incantation",
|
||||
|
||||
"AllowXPSpending": "Forcer l'indicateur d'avancement",
|
||||
"TooltipAllowXPSpending": "Afficher l'indicateur d'avancement indépendamment de la carrière, ce qui vous permet d'automatiser les dépenses de PX",
|
||||
@ -1275,7 +914,7 @@
|
||||
"Vintner": "Vigneron",
|
||||
"Politics": "Politique",
|
||||
"Riverways": "Voies fluviales",
|
||||
"Act": "Interprétation",
|
||||
"Act": "Comédie",
|
||||
"Writing": "Ecriture",
|
||||
"Printing": "Imprimerie",
|
||||
"Plants": "Plantes",
|
||||
@ -1284,11 +923,11 @@
|
||||
"Any color": "Couleur au choix",
|
||||
"Any Color": "Couleur au choix",
|
||||
"Herbs": "Herbes",
|
||||
"Acting": "Interprétation",
|
||||
"Acting": "Comédie",
|
||||
"Thief": "Voleur",
|
||||
"Taunt": "Raillerie",
|
||||
"Gunsmith": "Armurier",
|
||||
"Farrier": "Maréchal-ferrant",
|
||||
"Farrier": "Maréchal-Ferrand",
|
||||
"Batle": "Guerre",
|
||||
"Knighty Order": "Ordre chevaleresque",
|
||||
"Guilder": "Guilde",
|
||||
@ -1304,38 +943,38 @@
|
||||
"Witchery": "Sorcellerie",
|
||||
"Criminals": "Criminels",
|
||||
"Speeches": "Discours",
|
||||
"Daemonology": "Démonologie",
|
||||
"any": "Au choix",
|
||||
"Servants": "Serviteurs",
|
||||
"Geography": "Géographie",
|
||||
"Rural or Urban": "Rurale ou Urbaine",
|
||||
"Rural or Urban": "Rural ou Urbain",
|
||||
"Throwing": "Lancer",
|
||||
"Engineer": "Ingénieur",
|
||||
"Beasts": "Bêtes sauvages",
|
||||
"Animals": "Animaux",
|
||||
"Hunter": "Chasseur",
|
||||
"Medicine": "Remèdes",
|
||||
"Scholar": "Erudit",
|
||||
"Scholars": "Erudits",
|
||||
"Medicine": "Médecine",
|
||||
"Scholar": "Etudes",
|
||||
"Guilders": "Guildes",
|
||||
"Drum or Fife": "Tambour ou Fifre",
|
||||
"Drum or Fife": "Tambour ou Flûte",
|
||||
"Smuggler": "Contrebandier",
|
||||
"Wreckers": "Naufrageurs",
|
||||
"Underground or Urban": "Urbaine ou Souterrains",
|
||||
"Underground or Urban": "Sous-sol ou Urbain",
|
||||
"Crossbow Pistol": "Arbalète à répétition",
|
||||
"Prophecy": "Prophétie",
|
||||
"Prophecy": "Prophéties",
|
||||
"Astrology": "Astrologie",
|
||||
"Genealogy": "Généalogie",
|
||||
"Fortune Telling": "Voyance",
|
||||
"Beastmen": "Hommes-bêtes",
|
||||
"Fortune Telling": "Bonne aventure",
|
||||
"Beastmen": "Hommes Bêtes",
|
||||
"Outlaws": "Hors-la-loi",
|
||||
"Boatbuilder": "Constructeur de bateaux",
|
||||
"Marshes": "Marécages",
|
||||
"Boatbuilder": "Charpentier de marine",
|
||||
"Marshes": "Marais",
|
||||
"Estalian or Tilean": "Estalien ou Tiléen",
|
||||
"Two-handed": "A deux mains",
|
||||
"The Empire": "Empire",
|
||||
"Icons": "Icones",
|
||||
"Rhetoric": "Rhétorique",
|
||||
"Cultists": "Fidèles",
|
||||
"Rhetoric": "Rétorique",
|
||||
"Cultists": "Cultistes",
|
||||
"Fight": "Combat",
|
||||
"Flail or Two-handed": "Fléau ou A deux mains",
|
||||
"Anatomy": "Anatomie",
|
||||
@ -1343,40 +982,20 @@
|
||||
"Barber": "Barbier",
|
||||
"Miner": "Mineur",
|
||||
"Explosives": "Explosifs",
|
||||
"Art Supplies": "Matériel artistique",
|
||||
"Taste or Touch": "Goût ou Toucher",
|
||||
"Art Supplies": "Fournitures artistiques",
|
||||
"Taste or Touch": "Gouter ou Toucher",
|
||||
"Apothecary": "Apothicaire",
|
||||
"Knightly Order": "Ordre chevaleresque",
|
||||
"Knightly Order": "Ordre de Chevalerie",
|
||||
"Sickle": "Faucille",
|
||||
"Taste": "Goût",
|
||||
"Charms": "Colifichets",
|
||||
"Taste": "Gout",
|
||||
"Charms": "Charmes",
|
||||
"Spirits": "Esprits",
|
||||
"Woodlands": "Régions boisées",
|
||||
"Hedgecraft": "Magie Sauvage",
|
||||
"Woodlands": "Forêts",
|
||||
"Giants": "Géants",
|
||||
"Thrown": "Lancer",
|
||||
"RestRecover": "Se Reposer et Guérir",
|
||||
"Metallurgy": "Métallurgie",
|
||||
"Geology": "Géologie",
|
||||
"Local": "Région",
|
||||
"local": "Région",
|
||||
"Coastal": "Littoral",
|
||||
"Riverwardens": "Patrouilleurs fluviaux",
|
||||
"Sight": "Vue",
|
||||
"Heretics": "Hérétiques",
|
||||
"Rocky": "Rocailleux",
|
||||
"Celestial": "Cieux",
|
||||
"Undead": "Morts-vivants",
|
||||
"Boatbuilding": "Construction de bateaux",
|
||||
"Engraver": "Graveur",
|
||||
"Horse": "Cheval",
|
||||
"Lecture": "Conférence",
|
||||
"Cartographer": "Cartographe",
|
||||
"Cartography": "Cartographie",
|
||||
"Road Wardens": "Patrouilleurs routiers",
|
||||
"Bounties": "Primes",
|
||||
"Mootish": "Halfling",
|
||||
"Cook": "Cuisinier",
|
||||
|
||||
|
||||
"Silver": "Argent",
|
||||
"Gold": "Or",
|
||||
"Brass": "Bronze",
|
||||
@ -1394,7 +1013,7 @@
|
||||
"Warrior": "Guerriers",
|
||||
"Ranger": "Itinérants",
|
||||
"Courtier": "Courtisans",
|
||||
|
||||
|
||||
"Calvalry": "Cavalerie",
|
||||
"Flail": "Fléau",
|
||||
"Parry": "Parade",
|
||||
@ -1415,6 +1034,7 @@
|
||||
"Storytelling": "Raconter",
|
||||
|
||||
"Petty": "Mineure",
|
||||
"Beasts": "Bêtes",
|
||||
"Death": "Mort",
|
||||
"Fire": "Feu",
|
||||
"Heavens": "Cieux",
|
||||
@ -1422,7 +1042,7 @@
|
||||
"Life": "Vie",
|
||||
"Light": "Lumière",
|
||||
"Shadow": "Ombres",
|
||||
"Hedgecraft": "Magie naturelle",
|
||||
"Hedgecraft": "Sauvage",
|
||||
"Witchcraft": "Sorcellerie",
|
||||
"Daemonology": "Démonologie",
|
||||
"Necromancy": "Nécromancie",
|
||||
@ -1499,6 +1119,7 @@
|
||||
"CHARBonus.WP": "Bonus de Force Mentale",
|
||||
"CHARBonus.Fel": "Bonus de Sociabilité",
|
||||
"Bonus" : "Bonus",
|
||||
|
||||
"NAME.Armour" : "Armure",
|
||||
"NAME.Hardy" : "Dur à cuire",
|
||||
"NAME.Small" : "Petit",
|
||||
@ -1516,59 +1137,7 @@
|
||||
"NAME.Ward" : "Protection",
|
||||
"NAME.Unstable" : "Instable",
|
||||
"NAME.Infighter": "In-fighter",
|
||||
"NAME.TraitWeapon": "Arme",
|
||||
"NAME.TraitRanged": "A Distance",
|
||||
"NAME.TraitArmour": "Armure",
|
||||
"NAME.MeleeBrawling": "Corps à coprs (Bagarre)",
|
||||
"NAME.AcuteSense":"Sens aiguisé",
|
||||
"NAME.AnimalCare":"Soins des animaux",
|
||||
"NAME.AnimalTraining":"Dressage",
|
||||
"NAME.Art":"Art",
|
||||
"NAME.Athletics":"Athlétisme",
|
||||
"NAME.Bribery":"Subornation",
|
||||
"NAME.Charm":"Charme",
|
||||
"NAME.CharmAnimal":"Emprise sur les animaux",
|
||||
"NAME.Climb":"Escalade",
|
||||
"NAME.DarkVision":"Infravision",
|
||||
"NAME.DeadeyeShot":"Tir mortel",
|
||||
"NAME.Doomed":"Destinée",
|
||||
"NAME.Drive":"Conduite d'attelage",
|
||||
"NAME.Entertain":"Divertissement",
|
||||
"NAME.Etiquette":"Savoir-vivre",
|
||||
"NAME.Evaluate":"Evaluation",
|
||||
"NAME.Fear":"Peur",
|
||||
"NAME.Gamble":"Pari",
|
||||
"NAME.Gossip":"Ragot",
|
||||
"NAME.Haggle":"Marchandage",
|
||||
"NAME.Heal":"Guérison",
|
||||
"NAME.Intimidate":"Intimider",
|
||||
"NAME.Intuition":"Intuition",
|
||||
"NAME.Leadership":"Commandement",
|
||||
"NAME.Lore":"Domaine",
|
||||
"NAME.Luck":"Chance",
|
||||
"NAME.Navigation":"Navigation",
|
||||
"NAME.NightVision":"Vision Nocturne",
|
||||
"NAME.OutdoorSurvival":"Survie en extérieur",
|
||||
"NAME.Perception":"Perception",
|
||||
"NAME.Perform":"Représentation",
|
||||
"NAME.Play":"Musicien",
|
||||
"NAME.Research":"Recherche",
|
||||
"NAME.Resistance":"Résistance",
|
||||
"NAME.Ride":"Chevaucher",
|
||||
"NAME.Row":"Ramer",
|
||||
"NAME.Sail":"Voile",
|
||||
"NAME.Savant":"Savant",
|
||||
"NAME.SecretSigns":"Signes secrets",
|
||||
"NAME.SetTrap":"Piégeage",
|
||||
"NAME.SleightOfHand":"Escamotage",
|
||||
"NAME.Strider":"Bon marcheur",
|
||||
"NAME.StrikeToStun":"Frappe assommante",
|
||||
"NAME.StrongMinded":"Obstiné",
|
||||
"NAME.Swim":"Natation",
|
||||
"NAME.Terror":"Terreur",
|
||||
"NAME.Track":"Pistage",
|
||||
"NAME.Trade":"Métier",
|
||||
|
||||
|
||||
"SPEC.Tiny" : "Minuscule",
|
||||
"SPEC.Little" : "Très petite",
|
||||
"SPEC.Small" : "Petit",
|
||||
@ -1578,8 +1147,6 @@
|
||||
"SPEC.Monstrous" : "Monstrueuse",
|
||||
"SPEC.Vehicle": "Véhicule",
|
||||
|
||||
"SPELL.Lore":"Domaine:",
|
||||
|
||||
"Tiny" : "Minuscule",
|
||||
"Little" : "Très petite",
|
||||
"Small" : "Petit",
|
||||
@ -1599,9 +1166,7 @@
|
||||
"Rich folks": "Gens riches",
|
||||
"Fangs": "Crocs",
|
||||
"Scales": "Ecailles",
|
||||
|
||||
"Commands":"Commandes",
|
||||
|
||||
|
||||
"NAME.BP" : "Sous de Cuivre",
|
||||
"NAME.SS" : "Pistole d'Argent",
|
||||
"NAME.GC" : "Couronne d'Or",
|
||||
@ -1640,7 +1205,7 @@
|
||||
"NAME.Disease" : "Maladie",
|
||||
"NAME.Daemonic" : "Démoniaque",
|
||||
"NAME.Slayer" : "Meurtrier",
|
||||
"NAME.DualWielder" : "Maniement de deux armes",
|
||||
"NAME.DualWielder" : "Maniement de 2 armes",
|
||||
"NAME.Corruption" : "Corruption",
|
||||
"NAME.Trickriding" : "Acrobaties équestres",
|
||||
"NAME.Undead" : "Mort-vivant",
|
||||
@ -1680,11 +1245,6 @@
|
||||
"SHEET.DisabledEffects" : "Effets Désactivés",
|
||||
"SHEET.AppliedEffects" : "Effets en cours",
|
||||
"SHEET.Source" : "Source",
|
||||
"SHEET.CareerSkillNotif":"Changement de {oldname} à {newname} dans {career}",
|
||||
"SHEET.LoadingCareers":"Chargement des carrières...",
|
||||
"SHEET.Target":"Cible",
|
||||
"SHEET.ToggleTraits":"Basculer le(s) Trait(s) de Creature",
|
||||
"SHEET.SortItems":"Trier les items",
|
||||
|
||||
"DISEASE.IncubationFinished" : "Incubation de la maladie {disease} terminée. ",
|
||||
|
||||
@ -1777,8 +1337,7 @@
|
||||
|
||||
"ITEM.IsSpec" : "Est une spécialisation",
|
||||
"ITEM.NoSpec" : "Pas de spécialisation",
|
||||
"ITEM.Reloading": "Rechargement",
|
||||
|
||||
|
||||
"Instant" : "Immédiat",
|
||||
"Casting Number": "Niveau d'Incantation",
|
||||
|
||||
@ -1806,9 +1365,7 @@
|
||||
|
||||
"OPPOSED.DefenderWins" : "<b>{defender}</b> gagne contre <b>{attacker}</b> par {SL} DR",
|
||||
"OPPOSED.AttackerWins" : "<b>{attacker}</b> gagne contre <b>{defender}</b> par {SL} DR",
|
||||
"OPPOSED.DaemonicRoll":"<b>Jet Démoniaque</b>: {roll}",
|
||||
"OPPOSED.WardRoll":"<b>Jet de Garde</b>: {roll}",
|
||||
|
||||
|
||||
"FORTUNE.Use" : "Point de chance utilisé",
|
||||
"FORTUNE.UsageRerollText" : "{character} a utilisé un Point de Chance pour relancer un échec.",
|
||||
"FORTUNE.PointsRemaining" : "Points de Chance restants:",
|
||||
@ -1829,10 +1386,8 @@
|
||||
"CHATOPT.UseFortuneSL":"Utiliser un Point de Chance pour ajouter +1 DR",
|
||||
"CHATOPT.DarkDeal": "Conclure un Sombre Pacte pour relancer (+1 Point de Corruption)",
|
||||
"CHATOPT.OpposeTarget": "Opposé avec les Cibles",
|
||||
"CHATOPT.ApplyAllDamage":"Appliquer tout les dommages",
|
||||
"CHATOPT.CompleteUnopposed":"Finier tout les tests opposés",
|
||||
|
||||
"Shipwright": "Constructeur de bateaux",
|
||||
|
||||
"Shipwright": "Charpentier de Marine",
|
||||
"Riverways or Sea Lanes": "Rivières ou Voies Maritimes",
|
||||
"Embalmer": "Embaumeur",
|
||||
"Strategy": "Stratégie",
|
||||
@ -1850,15 +1405,11 @@
|
||||
"Farmer": "Fermier",
|
||||
"Garneder": "Jardinier",
|
||||
"Woodland": "Forêts",
|
||||
"Routes": "Itinéraires",
|
||||
"Etiquette": "Savoir-vivre",
|
||||
"Watchmen": "Miliciens",
|
||||
|
||||
"Broken": "Dressé",
|
||||
"Home": "Revenir à la maison",
|
||||
"Male": "Homme",
|
||||
"Female": "Femme",
|
||||
"Update": "Mise à jour",
|
||||
|
||||
"TRAVEL.TravelMessageBase": "De <b>{from}</b> à <b>{to}</b> : ",
|
||||
"TRAVEL.TravelMessageRoad": "<br><b>Route</b> : {road_distance} km<br> En chariot : {road_days} jours, danger {road_danger_string}<br> A Cheval : {road_horse_heavy_days} jours, danger {road_danger_string}<br> A Cheval (Rapide) : {road_horse_fast_days} jours, danger {road_danger_string}<br> A Pied : {road_feet_days} jours, danger {road_danger_feet_string}",
|
||||
@ -1889,7 +1440,6 @@
|
||||
"VEHICLE.NoActor": "Assignez un acteur au rôle",
|
||||
"VEHICLE.NoActorOnBoard": "Le personnage qui vous est assigné n'est pas dans le véhicule",
|
||||
"VEHICLE.TestNotPermitted": "Vous n'avez pas la permission de réaliser ce test",
|
||||
"VEHICLE.ft":"ft",
|
||||
|
||||
"CONFIGURE.CalcTokenSize" : "Calculer automatiquement la taille des Tokens",
|
||||
"CONFIGURE.CalcRun" : "Calculer automatiquement la vitesse de course",
|
||||
@ -1899,15 +1449,10 @@
|
||||
"CONFIGURE.CalcCorruption" : "Calculer automatiquement la Corruption",
|
||||
"CONFIGURE.CalcMaxEnc" : "Calculer automatiquement l'Encombrement max.",
|
||||
"CONFIGURE.AddActorEncumbrance" : "Ajouter l'encombrement des Acteurs",
|
||||
"CONFIGURE.EquipPoints": "Points d'équipement - Limiter les armes équipées",
|
||||
|
||||
"BUTTON.PostBug" : "Soumettre un Grief",
|
||||
"BUTTON.CharacterCreation" : "Créer un Personnage",
|
||||
|
||||
"BUGREPORT.Contact":"Informations de contact",
|
||||
"BUGREPORT.ContactPlaceholder":"Tag Discord ou Email.",
|
||||
"BUGREPORT.DescriptionPlaceholder":"Ce qu'il s'est passsé, comment le reproduire, etc.",
|
||||
|
||||
"EFFECT.TabWFRP" : "WFRP",
|
||||
"EFFECT.EffectType" : "Type d'Effet",
|
||||
"EFFECT.EffectApplication" : "Application de l'Effect",
|
||||
@ -1920,45 +1465,9 @@
|
||||
"EFFECT.TabDuration": "Durée",
|
||||
"EFFECT.TabEffects": "Effets",
|
||||
"EFFECT.Tooltip": "Ces effets PEUVENT provoquer ces bonus",
|
||||
"EFFECT.Applied":"{name} appliqué à ",
|
||||
"EFFECT.Prevent":"Ajout de l'effet {name} annulé: l'Effet existe déja",
|
||||
"EFFECT.Target":"Cible: ",
|
||||
"EFFECT.QuantityError":"Quantité insuffisante",
|
||||
"EFFECT.ReduceQuantityOption":"Réduire la quantité à l'usage",
|
||||
"EFFECT.ColdExposure":"Exposition au froid",
|
||||
"EFFECT.ConsumeAlcohol":"Résistance à l'alcool",
|
||||
"EFFECT.DualWielder":"Maniement de deux armes",
|
||||
"EFFECT.Encumbrance":"Encombrement",
|
||||
"EFFECT.HeatExposure":"Exposition à la chaleur",
|
||||
"EFFECT.Infighting":"Combat proche",
|
||||
"EFFECT.MarienburghersCourage":"Coyrage du Marienbourgeois",
|
||||
"EFFECT.OnDefensive":"Sur la défensive [Nom de compétence]",
|
||||
"EFFECT.Starvation":"Affammé",
|
||||
"EFFECT.TestsRelatedToHearing":"Tests relatife à l'audition",
|
||||
"EFFECT.TestsRelatedToMovementOfAnyKind":"Tests relatifs à tout les mouvements",
|
||||
"EFFECT.TestsRelatedToSight":"Tests relatifs à la vision",
|
||||
"EFFECT.TestsToAffect":"Tests affectés",
|
||||
"EFFECT.TheSourceOfFear":"la source de la peur",
|
||||
"EFFECT.Thirst":"Assoiffé",
|
||||
|
||||
"GRIEVANCE.Warning1":"Attention",
|
||||
"GRIEVANCE.Warning2":": Cette information est envoyé sur l'espace Github, qui est un espace publique, donc le Tag Discord est préférable. Sinon, contactez moi (MooMan) directement. Si vous avez l'impression que le bug concerne le module FR, contactez LeRatierBretonnier (Discord Foundry FR)",
|
||||
"GRIEVANCE.Warning3":"Avant de soumettre un rapport de bug",
|
||||
"GRIEVANCE.Warning4":"Merci de vous assurez que vous utilisez bien les dernières versions des modules et du système !",
|
||||
|
||||
"UPDATER.Notification":"Création et mise à jour de {created}/{updated} documents depuis {name} - {version}",
|
||||
"UPDATER.Error":"La mise à jour est possible uniquement si vous avez initialisé le module au moins 1 fois.",
|
||||
"UPDATER.ExcludeHint":"Activer ce choix ne mettra pas à jour les documents si leur nom ont changé",
|
||||
"UPDATER.Exclude":"Exclure les changements de nom",
|
||||
"UPDATER.OverwriteScenes":"Ré-écrire les Scènes",
|
||||
"UPDATER.OverwriteJournals":"Ré-écrire les Journaux",
|
||||
"UPDATER.OverwriteItems":"Ré-écrire les Items",
|
||||
"UPDATER.OverwriteActors":"Ré-écrire les Acteurs",
|
||||
|
||||
"TABLE.ConvertTable": "Convertir en tables WFRP4e",
|
||||
"TABLE.Lookup":"Chercher: ",
|
||||
"TABLE.Cancel":"Jet: {result} - annulé",
|
||||
|
||||
|
||||
"TRADE.ManageCargo": "Gérer le commerce",
|
||||
"TRADE.Encumbrance": "Encombrement",
|
||||
"TRADE.Modifier": "Modificateur à appliquer (+/- X%)",
|
||||
@ -2000,63 +1509,8 @@
|
||||
"TRADE.Good": "Bonne",
|
||||
"TRADE.Excellent": "Excellente",
|
||||
"TRADE.Topshelf": "Suprême",
|
||||
"TRADE.NoCargoFound":"Il n'y a pas de cargaison disponible à l'achat à <b>{town}</b>.",
|
||||
|
||||
"RANDOMIZER.C":"Ca",
|
||||
"RANDOMIZER.S":"C",
|
||||
"RANDOMIZER.T":"T",
|
||||
|
||||
"LOG.GainPrayer":" Prière {name} acquis",
|
||||
"LOG.MemorizedSpell": "Sort {name} mémorisé",
|
||||
|
||||
"EiS.MinorDhar" : "Tout les êtres vivants dans un rayon de FM mètres subissent une @Corruption[minor]{Influence Corruptrice Mineure} et une <a class ='table-click fumble-roll' data-table = 'minormis'><i class='fas fa-list'></i> Incantation Imparfait Mineure</a>; un seul tirage pour toutes les créatures dans l'aire d'effet.",
|
||||
"EiS.MajorDhar" : "Tout les êtres vivants dans un rayon de FM mètres subissent une @Corruption[major]{Influence Corruptrice Majeure} et une <a class 'table-click fumble-roll' data-table = 'majormis'><i class='fas fa-list'></i> Incantation Imparfait Majeure</a>; un seul tirage pour toutes les créatures dans l'aire d'effet.",
|
||||
"EiS.DoubleRolled" : "Compte comme une @Corruption[minor]{Influence Corruptrice Mineure}",
|
||||
|
||||
|
||||
"PROPERTY.Custom":"Custom",
|
||||
"PROPERTY.CustomHint":"FORMAT - {type} 1: {type} 1 Description | {type} 2 (Rating) : {type} 2 Description | etc.",
|
||||
"PROPERTY.Unbalanced":"Déséquilibrée",
|
||||
"VEHICLE.yd":"m.",
|
||||
"as weapon":"comme l'arme",
|
||||
"half weapon":"moitié de l'arme",
|
||||
"quarter weapon":"1/4 de l'arme",
|
||||
"third weapon":"trois fois l'arme",
|
||||
"twice weapon":"deux fois l'arme",
|
||||
|
||||
"Overchannelling":"Overchannelling",
|
||||
"Players":"Joueurs",
|
||||
"ROLL.CalledShot":"Coup placé",
|
||||
"SETTINGS.UnofficialGrimoire":"Grimoire Non-officiel",
|
||||
"SETTINGS.UnofficialGrimoireHint":"Règles inspirées par l'Unofficial Grimoire, pour les détails merci de consulter le wiki: <a href='https://github.com/moo-man/WFRP4e-FoundryVTT/wiki/Homebrew-Rules#magic-insiperd-by-unofficial-grimoire'>ici</a>",
|
||||
"SETTINGS.UseGroupAdvantage":"Utiliser les avantages de groupe",
|
||||
"SETTINGS.UseGroupAdvantageHint":"Grouper les avantages des joueurs et des ennemis ensemble (comme décrit dans Up in Arms). Pour associer un acteur avec le goupe des joeurs, l'acteur doit soit être la propriété d'un joueur ou bien avoir une Token 'Amical'. Sinon, il est considéré dans le groupe 'Ennemi'.",
|
||||
"Sense":"Sentir",
|
||||
"SkillTest":"Test de {skill} ",
|
||||
"Social Group":"Groupe social",
|
||||
"chosen Lore":"Domaine choisi",
|
||||
"the Terrain":"le Terrain",
|
||||
"the associated Threat":"la menace associée",
|
||||
|
||||
"AutoFillAdvantageDisabled":"'Gestion atuo des avantages désactivé",
|
||||
"CharTest":"Test de {char}",
|
||||
"CharacterHeight":"Taille",
|
||||
"ConsumedIngredient":"<p>Ingrédient consommé</p>",
|
||||
"DIALOG.OverchannellingTooltip":"Lorsque vous canalisez, vous êtes supposé évacuer tout excès de DR au-delà de celui qui réduirait le NI du sort à 0 sans danger. Après le test, vous pouvez choisir de conserver l'énergie magique excédentaire que vous avez accumulée et de l'appliquer à la Surincantation une fois le sort lancé. (Exemple : Bianca canalise un sort avec un NI de 3 et obtient 7 DR ; elle choisit d'accumuler les 4 DR supplémentaires pour les effets de Surincantation une fois le sort lancé.) Mais ce pouvoir supplémentaire n'est pas sans coût. Si le test d'incantation échoue, vous perdez toute l'énergie canalisée et subissez une incantation imparfaite mineure. De plus, vous comptez tout double ou tout lancer se terminant par un 0 sur votre Focalisation ou votre compétence Langue (magie) comme un échoué (donc, 00, 99, 90, 88, etc.) et tout critique ou échec sur ces tests est une Incantation Imparfaite Majeure. ",
|
||||
"DIALOG.Quickcasting":"Incantation rapide",
|
||||
"DIALOG.QuickcastingTooltip":"Si vous renoncez à votre mouvement et à toutes les actions gratuites, vous pouvez utiliser votre tour pour focaliser et incanter rapidement la même action. Parce que vous vous précipitez, augmentez la gravité de toute erreur subie d'une table (c'est-à-dire de mineure à majeure ou majeure à catastrophique).",
|
||||
"DIALOG.UseIngredient":"Choisir comment utiliser les ingrédients (if disponible)",
|
||||
"DIALOG.UseIngredientTooltip":"Vous pouvez concentrer votre magie à travers un composant matériel approprié avant de lancer votre sort. Les ingrédients réagissent différemment selon la façon dont vous focalisez votre magie à travers eux. Avant d'incanter ou de focaliser, vous devez choisir d'utiliser l'ingrédient pour le Pouvoir ou le Contrôle. Les ingrédients sont consommés même lorsque le sort échoue. <br/> Ingrédient de pouvoir : Lorsqu'il est utilisé lors d'un test de focalisation, un ingrédient de pouvoir double le nombre de DR acquis en cas de succès (voir sur-focalisation). Lorsqu'il est utilisé lors d'un test d'incantation, un ingrédient de pouvoir vous permet d'inverser les dés et de choisir le résultat de votre test d'incantation. Cependant, si les unités meurent après que l'inverse de votre test d'incantation dépasse votre bonus de Force Mentale, l'énergie dépasse votre emprise et vous déclenchez une Incantation Imparfaite Mineure. <br/> Ingrédient de contrôle : lorsqu'il est utilisé pendant un test de focalisation ou d'incantation, un ingrédient de contrôle agit comme une cible pour la magie incontrôlable. Réduisez la gravité d'un Echec subie d'un tableau : c'est-à-dire de Catastrophique à Majeur, Majeur à Mineur ou Mineur à aucun",
|
||||
"Enemies":"Ennemis",
|
||||
"GroupAdvantageNoCombatant":"Cet acteur doit être membre d'un Combat pour pouvoir modifier son avantage.",
|
||||
"GroupAdvantageUpdated":"Avantage de Groupe mis à jour. Joueurs: {players} | Ennemis: {enemies}",
|
||||
"IngredientControl":"Controller",
|
||||
"IngredientNone":"Aucun",
|
||||
"IngredientPower":"Pouvoir",
|
||||
"LOG.CareerChange":"Changement de carrière: {career}",
|
||||
|
||||
"DIALOG.Advancement":"Coût d'avancement",
|
||||
"DIALOG.AdvancementContent":"Confirmez ou modifiez le coût de cette progression",
|
||||
"SHEET.ArmourDamaged":"Armure endommagée de 1 point",
|
||||
"SHEET.ArmourRepaired":"Armure réparée de 1 point"
|
||||
"EiS.DoubleRolled" : "Compte comme une @Corruption[minor]{Influence Corruptrice Mineure}"
|
||||
}
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 106 KiB |
Binary file not shown.
Before Width: | Height: | Size: 116 KiB |
183
module.json
183
module.json
@ -1,144 +1,143 @@
|
||||
{
|
||||
"name": "WH4-fr-translation",
|
||||
"title": "WFRP4e - Core Module en français.",
|
||||
"description": "Traduction Française pour Warhammer v4.",
|
||||
"authors": [
|
||||
{
|
||||
"name": "LeRatierBretonnien",
|
||||
"flags": {}
|
||||
}
|
||||
],
|
||||
"url": "https://www.uberwald.me/gitea/public/foundryvtt-wh4-lang-fr-fr",
|
||||
"version": "6.1.9",
|
||||
"author": "LeRatierBretonnien",
|
||||
"authors": [],
|
||||
"url": "https://gitlab.com/LeRatierBretonnien/foundryvtt-wh4-lang-fr-fr",
|
||||
"flags": {},
|
||||
"version": "1.6.6",
|
||||
"minimumCoreVersion": "0.7.0",
|
||||
"compatibleCoreVersion": "0.8.7",
|
||||
"scripts": [],
|
||||
"esmodules": [
|
||||
"babele-register.js",
|
||||
"addon-register.js",
|
||||
"modules/import-stat-2.js"
|
||||
],
|
||||
"styles": [
|
||||
"patch-styles.css"
|
||||
],
|
||||
"styles": [],
|
||||
"languages": [
|
||||
{
|
||||
"lang": "fr",
|
||||
"name": "Français",
|
||||
"path": "fr.json",
|
||||
"flags": {}
|
||||
"path": "fr.json"
|
||||
}
|
||||
],
|
||||
"packs": [
|
||||
{
|
||||
"label": "Plats d'Auberges",
|
||||
"type": "RollTable",
|
||||
"entity": "RollTable",
|
||||
"name": "plats-dauberges",
|
||||
"path": "packs/plats-dauberges.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Dons de Rhya",
|
||||
"type": "JournalEntry",
|
||||
"entity": "JournalEntry",
|
||||
"name": "dons-de-rhya",
|
||||
"path": "packs/dons-de-rhya.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Carrières FR",
|
||||
"type": "Item",
|
||||
"name": "carriere-fr",
|
||||
"path": "packs/carriere-fr.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Sorts FR",
|
||||
"type": "Item",
|
||||
"name": "sort-fr",
|
||||
"path": "packs/sort-fr.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Aides de Jeu FR",
|
||||
"type": "JournalEntry",
|
||||
"entity": "JournalEntry",
|
||||
"name": "aides-de-jeu-fr",
|
||||
"path": "packs/aides-de-jeu-fr.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Potions : Drogues et Sédatifs",
|
||||
"type": "Item",
|
||||
"name": "drogues-and-sedatifs",
|
||||
"path": "packs/drogues-and-sedatifs.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Potions : Pansements et Cataplasmes",
|
||||
"type": "Item",
|
||||
"name": "pansements-and-cataplasmes",
|
||||
"path": "packs/pansements-and-cataplasmes.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Potions : Poisons et Toxiques",
|
||||
"type": "Item",
|
||||
"name": "poisons-and-toxiques",
|
||||
"path": "packs/poisons-and-toxiques.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
},
|
||||
{
|
||||
"label": "Potions : Potions et Décoctions",
|
||||
"type": "Item",
|
||||
"name": "potions-and-decoctions",
|
||||
"path": "packs/potions-and-decoctions.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Antidotes et Remèdes",
|
||||
"type": "Item",
|
||||
"name": "antidotes-and-remedes",
|
||||
"entity": "Item",
|
||||
"name": "antidotes-and-remedes.db",
|
||||
"path": "packs/antidotes-and-remedes.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Drogues et Sédatifs",
|
||||
"entity": "Item",
|
||||
"name": "drogues-and-sedatifs",
|
||||
"path": "packs/drogues-and-sedatifs.db",
|
||||
"system": "wfrp4e",
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Pansements et Cataplasmes",
|
||||
"entity": "Item",
|
||||
"name": "pansements-and-cataplasmes",
|
||||
"path": "packs/pansements-and-cataplasmes.db",
|
||||
"system": "wfrp4e",
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Poisons et Toxiques",
|
||||
"entity": "Item",
|
||||
"name": "poisons-and-toxiques",
|
||||
"path": "packs/poisons-and-toxiques.db",
|
||||
"system": "wfrp4e",
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Potions et Décoctions",
|
||||
"entity": "Item",
|
||||
"name": "potions-and-decoctions",
|
||||
"path": "packs/potions-and-decoctions.db",
|
||||
"system": "wfrp4e",
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Potions : Antidotes et Remèdes",
|
||||
"entity": "Item",
|
||||
"name": "antidotes-and-remedes.db",
|
||||
"path": "packs/antidotes-and-remedes.db.db",
|
||||
"system": "wfrp4e",
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Tables des Traductions",
|
||||
"type": "JournalEntry",
|
||||
"entity": "JournalEntry",
|
||||
"name": "tables-des-traductions",
|
||||
"path": "packs/tables-des-traductions.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
},
|
||||
{
|
||||
"label": "Apothicarium",
|
||||
"type": "JournalEntry",
|
||||
"entity": "JournalEntry",
|
||||
"name": "apothicarium",
|
||||
"path": "packs/apothicarium.db",
|
||||
"system": "wfrp4e",
|
||||
"private": false,
|
||||
"flags": {}
|
||||
"module": "WH4-fr-translation",
|
||||
"private": false
|
||||
}
|
||||
],
|
||||
"manifest": "https://www.uberwald.me/gitea/public/foundryvtt-wh4-lang-fr-fr/raw/v4/module.json",
|
||||
"download": "https://www.uberwald.me/gitea/public/foundryvtt-wh4-lang-fr-fr/archive/foundryvtt-wh4-lang-fr-6.1.9.zip",
|
||||
"id": "wh4-fr-translation",
|
||||
"name": "wh4-fr-translation",
|
||||
"minimumCoreVersion": "0.8.0",
|
||||
"compatibleCoreVersion": "9"
|
||||
"system": [],
|
||||
"dependencies": [
|
||||
{
|
||||
"name": "wfrp4e",
|
||||
"type": "system"
|
||||
},
|
||||
{
|
||||
"name": "babele",
|
||||
"type": "module"
|
||||
}
|
||||
],
|
||||
"socket": false,
|
||||
"manifest": "https://gitlab.com/LeRatierBretonnien/foundryvtt-wh4-lang-fr-fr/-/raw/v3/module.json",
|
||||
"download": "https://gitlab.com/LeRatierBretonnien/foundryvtt-wh4-lang-fr-fr/-/archive/v3/foundryvtt-wh4-lang-fr-fr-v3.zip",
|
||||
"protected": false,
|
||||
"coreTranslation": false
|
||||
}
|
File diff suppressed because it is too large
Load Diff
@ -1,366 +0,0 @@
|
||||
/*
|
||||
game.wfrp4e.config.speciesSkills["human"] = [
|
||||
"Soins aux animaux",
|
||||
"Charme",
|
||||
"Calme",
|
||||
"Evaluation",
|
||||
"Ragot",
|
||||
"Marchandage",
|
||||
"Langue (Bretonnien)",
|
||||
"Langue (Wastelander)",
|
||||
"Commandement",
|
||||
"Savoir (Reikland)",
|
||||
"Corps à corps (Base)",
|
||||
"Projectiles (Arc)"
|
||||
];
|
||||
game.wfrp4e.config.speciesSkills["dwarf"] = [
|
||||
"Résistance à l'alcool",
|
||||
"Calme",
|
||||
"Résistance",
|
||||
"Divertissement (Raconter)",
|
||||
"Evaluation",
|
||||
"Intimidation",
|
||||
"Langue (Khazalid)",
|
||||
"Savoir (Nains)",
|
||||
"Savoir (Geologie)",
|
||||
"Savoir (Metallurgie)",
|
||||
"Corps à corps (Base)",
|
||||
"Métier (Au choix)"
|
||||
];
|
||||
game.wfrp4e.config.speciesSkills["halfling"] = [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Esquive",
|
||||
"Pari",
|
||||
"Marchandage",
|
||||
"Intuition",
|
||||
"Langue (Mootland)",
|
||||
"Savoir (Reikland)",
|
||||
"Perception",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)"
|
||||
];
|
||||
game.wfrp4e.config.speciesSkills["helf"] = [
|
||||
"Calme",
|
||||
"Divertissement (Chant)",
|
||||
"Evaluation",
|
||||
"Langue (Eltharin)",
|
||||
"Commandement",
|
||||
"Corps à corps (Base)",
|
||||
"Orientation",
|
||||
"Perception",
|
||||
"Musicien (Au choix)",
|
||||
"Projectiles (Arc)",
|
||||
"Voile",
|
||||
"Natation"
|
||||
];
|
||||
|
||||
game.wfrp4e.config.speciesSkills["welf"] = [
|
||||
"Athlétisme",
|
||||
"Escalade",
|
||||
"Résistance",
|
||||
"Divertissement (Chant)",
|
||||
"Intimidation",
|
||||
"Langue (Eltharin)",
|
||||
"Corps à corps (Base)",
|
||||
"Survie en extérieur",
|
||||
"Perception",
|
||||
"Projectiles (Arc)",
|
||||
"Discrétion (Rural)",
|
||||
"Pistage"
|
||||
];*/
|
||||
game.wfrp4e.config.speciesTalents["human"] = [
|
||||
"Destinée",
|
||||
"Affable, Perspicace",
|
||||
3
|
||||
]
|
||||
game.wfrp4e.config.speciesTalents["dwarf"] = [
|
||||
"Résistance à la Magie",
|
||||
"Vision Nocturne",
|
||||
"Lire/Ecrire, Impitoyable",
|
||||
"Déterminé, Obstiné",
|
||||
"Costaud",
|
||||
0
|
||||
]
|
||||
game.wfrp4e.config.speciesTalents["halfling"] = [
|
||||
"Sens Aiguisé (Gout)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
2
|
||||
];
|
||||
game.wfrp4e.config.speciesTalents["helf"] = [
|
||||
"Sens Aiguisé (Vue)",
|
||||
"Imperturbable, Perspicace",
|
||||
"Vision Nocturne",
|
||||
"Seconde Vue, Sixième Sens",
|
||||
"Lire/Ecrire",
|
||||
0
|
||||
]
|
||||
game.wfrp4e.config.speciesTalents["welf"] = [
|
||||
"Sens Aiguisé (Vue)",
|
||||
"Dur à cuire, Seconde Vue",
|
||||
"Vision Nocturne",
|
||||
"Nomade",
|
||||
"Lire/Ecrire, Très Résistant",
|
||||
0
|
||||
]
|
||||
|
||||
/************************************************************************************/
|
||||
static perform_rnhd_patch() {
|
||||
game.wfrp4e.config.species['gnome'] = 'Gnome';
|
||||
game.wfrp4e.config.speciesSkills["gnome"] = [
|
||||
"Focalisation (Ulgu)",
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Esquive",
|
||||
"Divertissement (Au choix)",
|
||||
"Ragot",
|
||||
"Marchandage",
|
||||
"Langue (Ghassally)",
|
||||
"Langue (Magick)",
|
||||
"Langue (Wastelander)",
|
||||
"Survie en extérieur",
|
||||
"Discrétion (Au choix)"
|
||||
];
|
||||
game.wfrp4e.config.speciesTalents["gnome"] = [
|
||||
"Insignifiant, Imprégné avec Uglu",
|
||||
"Chanceux, Imitation",
|
||||
"Vision Nocturne",
|
||||
"Pêcheur, Lire/Ecrire",
|
||||
"Seconde Vue, Sixième Sens",
|
||||
"Petit",
|
||||
0
|
||||
];
|
||||
}
|
||||
}
|
||||
|
||||
game.wfrp4e.config.subspecies["human"]["reiklander"] = {
|
||||
name: "Reiklander",
|
||||
skills: [
|
||||
"Soins aux animaux",
|
||||
"Charme",
|
||||
"Calme",
|
||||
"Evaluation",
|
||||
"Ragot",
|
||||
"Marchandage",
|
||||
"Langue (Bretonnien)",
|
||||
"Langue (Wastelander)",
|
||||
"Commandement",
|
||||
"Savoir (Reikland)",
|
||||
"Corps à corps (Base)",
|
||||
"Projectiles (Arc)"
|
||||
],
|
||||
talents: [
|
||||
"Destinée",
|
||||
"Affable, Perspicace",
|
||||
3
|
||||
]
|
||||
}
|
||||
|
||||
if (game.wfrp4e.config.subspecies["welf"]["harioth"]) { // Archives Empire
|
||||
game.wfrp4e.config.subspecies["welf"]["harioth"] = {
|
||||
name: "Harioth",
|
||||
talents: [
|
||||
"Sens Aiguisé (Vue)",
|
||||
"Dur à cuire, Seconde Vue",
|
||||
"Vision Nocturne",
|
||||
"Lire/Ecrire, Très Résistant",
|
||||
"Nomade",
|
||||
"Youngblood",
|
||||
0
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies["halfling"]["ashfield"] = {
|
||||
name: "Ashfield",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Calme",
|
||||
"Intuition",
|
||||
"Langue (Mootish)",
|
||||
"Projectiles (Au choix)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Sens Aiguisé (Vue), Etiquette (Soldats)",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["brambledown"] = {
|
||||
name: "Brambledown",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Langue (Mootish) ",
|
||||
"Orientation",
|
||||
"Survie en extérieur ",
|
||||
"Natation"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Sociable, Voyageur aguerri",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["brandysnap"] = {
|
||||
name: "Brandysnap",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Soins aux animaux",
|
||||
"Pari",
|
||||
"Langue (Mootish)",
|
||||
"Métier (Herboriste)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Maître Artisan (Fermier), Costaud",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["hayfoot"] = {
|
||||
name: "Hayfoot",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Gamble",
|
||||
"Pari",
|
||||
"Evaluation",
|
||||
"Langue (Mootish)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Négociateur, Etiquette (Guildes)",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["hollyfoot"] = {
|
||||
name: "Hollyfoot",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Subornation",
|
||||
"Marchandage",
|
||||
"Ragot",
|
||||
"Langue (Mootish)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Maître Artisan (Au choix), Doigts de fée",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["hayfoot—hollyfoot"] = {
|
||||
name: "Hayfoot—Hollyfoot",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Subornation",
|
||||
"Marchandage",
|
||||
"Ragot",
|
||||
"Langue (Mootish)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Ergoteur, Numismate",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["lostpockets"] = {
|
||||
name: "Lostpockets",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Résistance",
|
||||
"Pari",
|
||||
"Ragot",
|
||||
"Intuition"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Dur à cuire, Brouet",
|
||||
1
|
||||
]
|
||||
}
|
||||
game.wfrp4e.config.subspecies.halfling["lowhaven"] = {
|
||||
name: "Lowhaven",
|
||||
skills: [
|
||||
"Charme",
|
||||
"Résistance à l'alcool",
|
||||
"Marchandage",
|
||||
"Savoir (Reikland)",
|
||||
"Escamotage",
|
||||
"Discrétion (Au choix)",
|
||||
"Métier (Cuisinier)",
|
||||
"Subornation",
|
||||
"Marchandage",
|
||||
"Intimidation",
|
||||
"Langue (Mootish)"
|
||||
],
|
||||
talents: [
|
||||
"Sens Aiguisé (Goût)",
|
||||
"Vision Nocturne",
|
||||
"Résistant (Chaos)",
|
||||
"Petit",
|
||||
"Criminel, Etiquette (Criminels ou Guildes)",
|
||||
1
|
||||
]
|
||||
}
|
@ -1,22 +1,5 @@
|
||||
/************************************************************************************/
|
||||
// Some internal test strings
|
||||
let strfr = `LA TERREUR DE LA TEUFEL, TROLL DE RIVIÈRE RUSÉ
|
||||
M
|
||||
CC CT
|
||||
F
|
||||
E
|
||||
I
|
||||
Ag Dex Int FM Soc B
|
||||
4
|
||||
40 15
|
||||
55
|
||||
45
|
||||
20
|
||||
15 15 30 20 5 38
|
||||
Traits : Amphibie, Arme +9, Armure (2), Dur à Cuire, Insensible
|
||||
à la douleur, Morsure +8, Régénération, Taille (Grande), Vision
|
||||
Nocturne, Vomissement`
|
||||
|
||||
let str1 = `JABBERSLYTHE
|
||||
M WS BS S T I Agi Dex
|
||||
Int WP Fel W
|
||||
@ -44,37 +27,27 @@ Talents: Briber, Criminal, Dealmaker,
|
||||
Etiquette (Criminals, Doktor, Guilder)
|
||||
Trappings: Dagger, Hand Weapon (Sword)
|
||||
`
|
||||
//import ItemWfrp4e from "/systems/wfrp4e/modules/item/item-wfrp4e.js"
|
||||
//import ItemWfrp4e from "/systems/wfrp4e/wfrp4e.js"
|
||||
|
||||
/************************************************************************************/
|
||||
import "./xregexp-all.js";
|
||||
const us_carac = 'm\\s+ws\\s+bs\\s+s\\s+t\\s+i\\s+agi?\\s+dex\\s+int\\s+\\wp\\s+fel\\s+w';
|
||||
const fr_carac = 'm\\s+cc\\s+ct\\s+f\\s+e\\s+i\\s+agi?\\s+dex\\s+int\\s+fm\\s+soc\\s+b';
|
||||
const carac_val = '(?<m>[0-9\\-]+)\\s+(?<ws>[0-9\\-]+)\\s+(?<bs>[0-9\\-]+)\\s+(?<s>[0-9\\-]+)\\s+(?<t>[0-9\\-]+)\\s+(?<i>[0-9\\-]+)\\s+(?<ag>[0-9\\-]+)\\s+(?<dex>[0-9\\-]+)\\s+(?<int>[0-9\\-]+)\\s+(?<wp>[0-9\\-]+)\\s+(?<fel>[0-9\\-]+)\\s+(?<w>[0-9\\-\*]+)';
|
||||
const fr_carac = 'm\\s+ws\\s+bs\\s+s\\s+t\\s+i\\s+agi?\\s+dex\\s+int\\s+\\wp\\s+fel\\s+w';
|
||||
const carac_val = '(?<m>[0-9-]+)\\s+(?<ws>[0-9-]+)\\s+(?<bs>[0-9-]+)\\s+(?<s>[0-9-]+)\\s+(?<t>[0-9-]+)\\s+(?<i>[0-9-]+)\\s+(?<ag>[0-9-]+)\\s+(?<dex>[0-9-]+)\\s+(?<int>[0-9-]+)\\s+(?<wp>[0-9-]+)\\s+(?<fel>[0-9-]+)\\s+(?<w>[0-9-\*]+)';
|
||||
const name_val = '(?<name>[a-zA-Z\\s\\-,]*)[\\s\\r\\na-zA-Z]*(?<tiers>.*|[\\(\\)a-z0-9]+)';
|
||||
let sectionDataFR = [
|
||||
{ name: "trait", toFind: "Traits\\s*:", secondParse: '(?<name>[a-zàéè\\s]*)[\\s\\+]*(?<value>.*|[\\+0-9]+)', index: -1 },
|
||||
{ name: "skill", toFind: "Compétences\\s*:", secondParse: '(?<name>[a-zàéè\\s\\(\\)]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "talent", toFind: "Talents\\s*:", secondParse: '(?<name>[a-zàéè\\-\\s!/]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "mutation", toFind: "Mutations\\s*:", secondParse: '(?<name>[a-zàéè\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "trapping", toFind: "Equiement\\s*:", secondParse: '(?<name>[a-zàéè\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 }
|
||||
];
|
||||
let sectionDataUS = [
|
||||
{ name: "trait", toFind: "Traits\\s*:", secondParse: '(?<name>[a-z\\s]*)[\\s\\+]*(?<value>.*|[\\+0-9]+)', index: -1 },
|
||||
{ name: "skill", toFind: "Skills\\s*:", secondParse: '(?<name>[a-z\\s\\(\\)]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "talent", toFind: "Talents\\s*:", secondParse: '(?<name>[a-z\\-\\s!/]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "mutation", toFind: "Mutations\\s*:", secondParse: '(?<name>[a-z\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 },
|
||||
{ name: "trapping", toFind: "Trappings\\s*:", secondParse: '(?<name>[a-z\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index: -1 }
|
||||
];
|
||||
let sectionData = [
|
||||
{ name: "trait", toFind:"Traits\\s*:", secondParse: '(?<name>[a-z\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index:-1 },
|
||||
{ name: "skill", toFind:"Skills\\s*:", secondParse: '(?<name>[a-z\\s\\(\\)]*)[\\s\\+]*(?<value>.*|[0-9]+)', index:-1 },
|
||||
{ name: "talent", toFind:"Talents\\s*:", secondParse: '(?<name>[a-z\\-\\s!/]*)[\\s\\+]*(?<value>.*|[0-9]+)', index:-1 },
|
||||
{ name: "trapping", toFind:"Trappings\\s*:", secondParse: '(?<name>[a-z\\s]*)[\\s\\+]*(?<value>.*|[0-9]+)', index:-1 }
|
||||
];
|
||||
let regSep = XRegExp('\\s*,\\s*', 'gi'); // Term separator, with auto trim
|
||||
let regLine1 = XRegExp('[\\r\\n\\.]', 'gi'); // Term separator, with auto trim
|
||||
let regName = XRegExp(name_val, 'gi');
|
||||
|
||||
/************************************************************************************/
|
||||
async function __findItem(itemName, itemType, location = null) {
|
||||
let toSearch = itemName.toLowerCase().trim();
|
||||
let items = game.items.contents.filter(i => i.type == itemType)
|
||||
itemName = itemName.trim();
|
||||
let items = game.items.entities.filter(i => i.type == itemType)
|
||||
|
||||
// Search imported items first
|
||||
for (let i of items) {
|
||||
@ -90,54 +63,52 @@ async function __findItem(itemName, itemType, location = null) {
|
||||
location.split(".")[1] == p.metadata.name
|
||||
})
|
||||
if (pack) {
|
||||
await pack.getIndex().then(index => itemList = index);
|
||||
let searchResult = itemList.find(t => (t.translated && t.originalName.toLowerCase() == toSearch) || (t.name.toLowerCase() == toSearch) );
|
||||
if (searchResult)
|
||||
return await pack.getDocument(searchResult._id)
|
||||
if (pack.translations[itemName]) {
|
||||
let translItemName = pack.translations[itemName].name;
|
||||
await pack.getIndex().then(index => itemList = index);
|
||||
let searchResult = itemList.find(t => t.name == translItemName)
|
||||
if (searchResult)
|
||||
return await pack.getEntity(searchResult._id)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// If all else fails, search each pack
|
||||
for (let p of game.wfrp4e.tags.getPacksWithTag(itemType)) {
|
||||
await p.getIndex().then(index => itemList = index);
|
||||
let searchResult = itemList.find(t => (t.translated && t.originalName.toLowerCase() == toSearch) || (t.name.toLowerCase() == toSearch) );
|
||||
if (searchResult)
|
||||
return await p.getDocument(searchResult._id)
|
||||
for (let p of game.packs.filter(p => p.metadata.tags && p.metadata.tags.includes(itemType))) {
|
||||
if (p.translations[itemName]) {
|
||||
let translItemName = p.translations[itemName].name;
|
||||
await p.getIndex().then(index => itemList = index);
|
||||
let searchResult = itemList.find(t => t.name == translItemName)
|
||||
if (searchResult)
|
||||
return await p.getEntity(searchResult._id)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/************************************************************************************/
|
||||
async function __findSkill(skillName, value = undefined) {
|
||||
let toSearch = skillName.toLowerCase().trim();
|
||||
let parseStr = '(?<name>[a-z\\s]*)[\\s\\+]*(?<specialized>[a-z\\s\\(\\)]*)';
|
||||
let skillSplit = XRegExp.exec(skillName, XRegExp(parseStr, 'gi'));
|
||||
|
||||
async function __findSkill(skillName) {
|
||||
skillName = skillName.trim();
|
||||
// First try world items
|
||||
let worldItem = game.items.contents.filter(i => i.type == "skill" && i.name.toLowerCase() == toSearch)[0];
|
||||
if (worldItem) return worldItem;
|
||||
let worldItem = game.items.entities.filter(i => i.type == "skill" && i.name == skillName)[0];
|
||||
if (worldItem) return worldItem
|
||||
|
||||
let packs = game.wfrp4e.tags.getPacksWithTag("skill");
|
||||
let skillList = [];
|
||||
let packs = game.packs.filter(p => p.metadata.tags && p.metadata.tags.includes("skill"))
|
||||
for (let pack of packs) {
|
||||
let skillList = await pack.getIndex();
|
||||
// Search for specific skill (won't find unlisted specializations)
|
||||
let searchResult = skillList.find(s => (s.translated && s.originalName.toLowerCase() == toSearch) || (s.name.toLowerCase() == toSearch ) );
|
||||
if (!searchResult) {
|
||||
let toSearchClean = toSearch.split("(")[0].trim();
|
||||
searchResult = skillList.find(s => (s.translated && s.originalName.toLowerCase().split("(")[0].trim() == toSearchClean) ||
|
||||
(s.name.toLowerCase().split("(")[0].trim() == toSearchClean) );
|
||||
}
|
||||
if (searchResult) {
|
||||
let dbSkill;
|
||||
await pack.getDocument(searchResult._id).then(packSkill => dbSkill = packSkill);
|
||||
if (skillSplit.specialized && ( dbSkill.name.includes('()') || dbSkill.name.includes('( )' ) ) ) {
|
||||
let spec = XRegExp.replace(skillSplit.specialized, "(", "");
|
||||
spec = XRegExp.replace(spec, ")", "");
|
||||
let skillSplit2 = XRegExp.exec(dbSkill.name, XRegExp(parseStr, 'gi'));
|
||||
dbSkill.data.update( { name: skillSplit2.name + '(' + game.i18n.localize( spec.trim() ) + ')' } );
|
||||
//console.log("SEARCH : ", skillName, pack);
|
||||
if ( pack.translations[skillName] ) {
|
||||
let translSkillName = pack.translations[skillName].name;
|
||||
skillList = await pack.getIndex()
|
||||
// Search for specific skill (won't find unlisted specializations)
|
||||
let searchResult = skillList.find(s => s.name == translSkillName)
|
||||
if (!searchResult)
|
||||
searchResult = skillList.find(s => s.name.split("(")[0].trim() == skillName.split("(")[0].trim())
|
||||
if (searchResult) {
|
||||
let dbSkill;
|
||||
await pack.getEntity(searchResult._id).then(packSkill => dbSkill = packSkill);
|
||||
dbSkill.data.name = translSkillName; // This is important if a specialized skill wasn't found. Without it, <Skill ()> would be added instead of <Skill (Specialization)>
|
||||
return dbSkill;
|
||||
}
|
||||
//game.babele.translate('wfrp4e-core.skills', dbSkill);
|
||||
return dbSkill;
|
||||
}
|
||||
}
|
||||
throw "Could not find skill (or specialization of) " + skillName + " in compendum or world"
|
||||
@ -145,163 +116,127 @@ async function __findSkill(skillName, value = undefined) {
|
||||
|
||||
/************************************************************************************/
|
||||
async function __findTalent(talentName) {
|
||||
let parseStr = '(?<name>[a-z\\s]*)[\\s\\+]*(?<specialized>[a-z\\s\\(\\)]*)';
|
||||
let talentSplit = XRegExp.exec(talentName, XRegExp(parseStr, 'gi'));
|
||||
let toSearch = talentSplit.name.toLowerCase().trim();
|
||||
|
||||
talentName = talentName.trim();
|
||||
// First try world items
|
||||
let worldItem = game.items.contents.filter(i => i.type == "talent" && i.name.toLowerCase() == toSearch)[0];
|
||||
if (worldItem) return worldItem;
|
||||
let worldItem = game.items.entities.filter(i => i.type == "talent" && i.name == talentName)[0];
|
||||
if (worldItem) return worldItem
|
||||
|
||||
let packs = game.wfrp4e.tags.getPacksWithTag("talent");
|
||||
let talentList = [];
|
||||
let packs = game.packs.filter(p => p.metadata.tags && p.metadata.tags.includes("talent"))
|
||||
for (let pack of packs) {
|
||||
let talentList = await pack.getIndex();
|
||||
// Search for specific skill (won't find unlisted specializations)
|
||||
let searchResult = talentList.find(s => (s.translated && s.originalName.toLowerCase() == toSearch) || (s.name.toLowerCase() == toSearch ) );
|
||||
if (!searchResult) {
|
||||
let toSearchClean = toSearch.split("(")[0].trim();
|
||||
searchResult = talentList.find(s => (s.translated && s.originalName.toLowerCase().split("(")[0].trim() == toSearchClean) ||
|
||||
(s.name.toLowerCase().split("(")[0].trim() == toSearchClean) );
|
||||
}
|
||||
if (searchResult) {
|
||||
let dbTalent;
|
||||
await pack.getDocument(searchResult._id).then(packTalent => dbTalent = packTalent);
|
||||
if ( talentSplit.specialized ) {
|
||||
let spec = XRegExp.replace(talentSplit.specialized, "(", "");
|
||||
spec = XRegExp.replace(spec, ")", "");
|
||||
dbTalent.data.update( { name: talentSplit.name + '(' + game.i18n.localize( spec.trim() ) + ')' } );
|
||||
if ( pack.translations[talentName] ) {
|
||||
let translTalentName = pack.translations[talentName].name;
|
||||
talentList = await pack.getIndex()
|
||||
// Search for specific talent (won't find unlisted specializations)
|
||||
let searchResult = talentList.find(t => t.name == translTalentName)
|
||||
if (!searchResult)
|
||||
searchResult = talentList.find(t => t.name.split("(")[0].trim() == talentName.split("(")[0].trim())
|
||||
|
||||
if (searchResult) {
|
||||
let dbTalent;
|
||||
await pack.getEntity(searchResult._id).then(packTalent => dbTalent = packTalent);
|
||||
dbTalent.data.name = translTalentName; // This is important if a specialized talent wasn't found. Without it, <Talent ()> would be added instead of <Talent (Specialization)>
|
||||
return dbTalent;
|
||||
}
|
||||
return dbTalent;
|
||||
}
|
||||
}
|
||||
throw "Could not find talent (or specialization of) " + talentName + " in compendium or world"
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
function __patchName ( name) {
|
||||
if (name.toLowerCase == 'magic sense')
|
||||
name = 'Magical Sense'
|
||||
return name
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
export default async function statParserFR(statString, type = "npc") {
|
||||
export default async function statParserFR( statString, type = "npc") {
|
||||
let model = duplicate(game.system.model.Actor[type]);
|
||||
|
||||
// Patch wront/strange carac value before processing
|
||||
statString = statString.replace(/ –/g, " 0")
|
||||
|
||||
let statNameReg = us_carac
|
||||
let sectionData = sectionDataUS
|
||||
// Detect French stat block
|
||||
if (statString.includes('CC') && statString.includes('CT') && statString.includes('FM')) {
|
||||
ui.notifications.warn("Le parsing de stablock en Français n'est pas encore prêt")
|
||||
statNameReg = fr_carac
|
||||
sectionData = sectionDataFR
|
||||
}
|
||||
|
||||
let reg1 = XRegExp(statNameReg, 'gi')
|
||||
let res = reg1.test(statString)
|
||||
let reg1 = XRegExp(us_carac, 'gi');
|
||||
let res = reg1.test(statString);
|
||||
if (res) { //stat block identified go on
|
||||
// Extract the name
|
||||
let res1 = XRegExp.exec(statString, reg1)
|
||||
console.log("REG", res1)
|
||||
let pnjStr = statString.substring(0, res1.index)
|
||||
let nameRes = XRegExp.exec(pnjStr, regName)
|
||||
console.log(nameRes)
|
||||
if (nameRes.tiers && nameRes.tiers.length > 0 && hasProperty(model, "details.status.value")) {
|
||||
let res1 = XRegExp.exec(statString, reg1);
|
||||
console.log("REG", res1);
|
||||
let pnjStr = statString.substring(0, res1.index);
|
||||
let nameRes = XRegExp.exec(pnjStr, regName );
|
||||
console.log(nameRes);
|
||||
if ( nameRes.tiers && nameRes.tiers.length > 0 && hasProperty(model, "details.status.value") ) {
|
||||
let regTiers = XRegExp("(?<name>[A-Za-z]*)\\s+(?<level>[0-9]*)");
|
||||
let resTiers = XRegExp.exec(nameRes.tiers, regTiers);
|
||||
console.log(resTiers);
|
||||
model.details.status.value = game.i18n.localize(resTiers.name.trim()) + " " + resTiers.level;
|
||||
model.details.status.value = game.i18n.localize(resTiers.name.trim()) + " " + resTiers.level;
|
||||
}
|
||||
// Compute the PNJ name
|
||||
let pnjName = nameRes.name.split("—")[0].split(" ").filter(f => !!f);
|
||||
pnjName = pnjName.map(word => {
|
||||
if (word == "VON")
|
||||
return word.toLowerCase();
|
||||
if (word == "VON")
|
||||
return word.toLowerCase();
|
||||
|
||||
word = word.toLowerCase();
|
||||
word = word[0].toUpperCase() + word.substring(1, word.length);
|
||||
return word;
|
||||
word = word.toLowerCase();
|
||||
word = word[0].toUpperCase() + word.substring(1, word.length);
|
||||
return word;
|
||||
})
|
||||
pnjName = pnjName.join(" ")
|
||||
|
||||
// Get the carac values
|
||||
let reg2 = XRegExp(carac_val, 'gi')
|
||||
let resCarac = XRegExp.exec(statString, reg2) // resr contains all carac found
|
||||
|
||||
let reg2 = XRegExp(carac_val, 'gi');
|
||||
let resCarac = XRegExp.exec(statString, reg2); // resr contains all carac found
|
||||
|
||||
// Setup carac
|
||||
//console.log("CARAC", resCarac)
|
||||
if (resCarac["Agi"]) resCarac["Ag"] = resCarac["Agi"] // Auto patch
|
||||
model.details.move.value = Number(resCarac["m"])
|
||||
if (resCarac["Agi"]) resCarac["Ag"] = resCarac["Agi"]; // Auto patch
|
||||
model.details.move.value = Number(resCarac["m"]);
|
||||
for (let key in model.characteristics) {
|
||||
if (resCarac[key] === '-') resCarac[key] = 0
|
||||
model.characteristics[key].initial = Number(resCarac[key])
|
||||
if (resCarac[key] === '-') resCarac[key] = 0;
|
||||
model.characteristics[key].initial = Number(resCarac[key]);
|
||||
}
|
||||
//console.log("CARAC", model.characteristics);
|
||||
|
||||
// Search position of skills/talents/...
|
||||
for (let def of sectionData) {
|
||||
for( let def of sectionData ) {
|
||||
def.regDef = XRegExp(def.toFind, 'gi');
|
||||
let res = XRegExp.exec(statString, def.regDef);
|
||||
if (res) def.index = res.index; // Get the index in the string
|
||||
if (res ) def.index = res.index; // Get the index in the string
|
||||
//console.log(" Parsing", def.name, res);
|
||||
}
|
||||
// Sort to split position of various substring
|
||||
sectionData.sort(function (a, b) { return a.index - b.index; });
|
||||
|
||||
sectionData.sort( function(a, b) { return a.index - b.index; } );
|
||||
|
||||
let globalItemList = [];
|
||||
// Then loop again and process each item type
|
||||
for (let i = 0; i < sectionData.length; i++) {
|
||||
for(let i=0; i< sectionData.length; i++ ) {
|
||||
let def = sectionData[i];
|
||||
if (def.index > -1) {
|
||||
let maxIndex = statString.length
|
||||
if (sectionData[i + 1] && sectionData[i + 1].index > -1)
|
||||
maxIndex = sectionData[i + 1].index
|
||||
def.substring = statString.substring(def.index, maxIndex)
|
||||
def.substring = XRegExp.replace(def.substring, def.regDef, "")
|
||||
def.substring = XRegExp.replace(def.substring, regLine1, " ")
|
||||
if ( def.index > -1) {
|
||||
let maxIndex = statString.length;
|
||||
if ( sectionData[i+1] && sectionData[i+1].index > -1 )
|
||||
maxIndex = sectionData[i+1].index;
|
||||
def.substring = statString.substring(def.index, maxIndex);
|
||||
def.substring = XRegExp.replace(def.substring, def.regDef, "");
|
||||
def.substring = XRegExp.replace(def.substring, regLine1, " ");
|
||||
// At this point, def.substring contains the items list as a string
|
||||
|
||||
|
||||
// Then create a table of it in termList, with specific sub-parsing rules
|
||||
let termList = XRegExp.split(def.substring, regSep);
|
||||
for (let name of termList) {
|
||||
let itemFound, subres, value;
|
||||
if (def.secondParse) {
|
||||
subres = XRegExp.exec(name, XRegExp(def.secondParse, 'gi'))
|
||||
name = subres.name.trim().replace("\n", "").replace("\r", "")
|
||||
value = XRegExp.replace(subres.value, "(", "")
|
||||
value = XRegExp.replace(value, ")", "")
|
||||
let itemFound, subres;
|
||||
if (def.secondParse) {
|
||||
subres = XRegExp.exec( name, XRegExp(def.secondParse, 'gi') );
|
||||
name = subres.name.trim();
|
||||
}
|
||||
name = __patchName(name)
|
||||
if (def.name == 'trait') {
|
||||
try {
|
||||
itemFound = await __findItem(name, "trait")
|
||||
if ( def.name == 'trait') {
|
||||
try {
|
||||
itemFound = await __findItem(name, "trait");
|
||||
}
|
||||
catch { }
|
||||
if (itemFound)
|
||||
itemFound = itemFound.toObject()
|
||||
if (itemFound && value && value.length > 0) {
|
||||
if (name.toLowerCase() == 'weapon' || name.toLowerCase() == "bite" || name.toLowerCase() == "tail" ||
|
||||
name.toLowerCase() == 'arme' || name.toLowerCase() == "morsure" || name.toLowerCase() == "queue") {
|
||||
itemFound.data.specification.value = Number(value) - Math.floor( Number(model.characteristics.s.initial) / 10)
|
||||
} else {
|
||||
itemFound.data.specification.value = game.i18n.localize(value)
|
||||
}
|
||||
catch {}
|
||||
if ( itemFound && subres && subres.value.length > 0 ) {
|
||||
subres.value = XRegExp.replace(subres.value, "(", "");
|
||||
subres.value = XRegExp.replace(subres.value, ")", "");
|
||||
itemFound.data.data.specification.value = game.i18n.localize( subres.value);
|
||||
}
|
||||
if (!itemFound)
|
||||
ui.notifications.error("Trait non trouvé, à ajouter manuellement : " + name, { permanent: true })
|
||||
|
||||
} else if (def.name == 'skill') {
|
||||
ui.notifications.error("Trait non trouvé, à ajouter manuellemen : " + name, { permanent: true })
|
||||
} else if ( def.name == 'skill') {
|
||||
try {
|
||||
itemFound = await __findSkill(name, value);
|
||||
itemFound = await __findSkill(name);
|
||||
}
|
||||
catch { }
|
||||
if (itemFound)
|
||||
itemFound = itemFound.toObject();
|
||||
if (itemFound && subres && value) {
|
||||
itemFound.data.advances.value = Number(value) - Number(model.characteristics[itemFound.data.characteristic.value].initial);
|
||||
catch {}
|
||||
if ( itemFound && subres && subres.value) {
|
||||
itemFound.data.data.advances.value = Number(subres.value) - Number(resCarac[itemFound.data.data.characteristic.value]);
|
||||
}
|
||||
if (!itemFound)
|
||||
ui.notifications.error("Compétence non trouvée, à ajouter manuellement : " + name, { permanent: true })
|
||||
@ -309,35 +244,23 @@ export default async function statParserFR(statString, type = "npc") {
|
||||
try {
|
||||
itemFound = await __findTalent(name);
|
||||
}
|
||||
catch { }
|
||||
if (itemFound)
|
||||
itemFound = itemFound.toObject();
|
||||
if (itemFound && subres && value)
|
||||
itemFound.data.advances.value = Number(value);
|
||||
catch {}
|
||||
if ( itemFound && subres && subres.value)
|
||||
itemFound.data.data.advances.value = Number(subres.value);
|
||||
if (!itemFound)
|
||||
ui.notifications.error("Talent non trouvé, à ajouter manuellement : " + name, { permanent: true })
|
||||
} else if (def.name == 'trapping') {
|
||||
try {
|
||||
itemFound = await __findItem(name, "trapping");
|
||||
}
|
||||
catch { }
|
||||
if (!itemFound && name) {
|
||||
itemFound = new game.entities.ItemWfrp4e({ img: "systems/wfrp4e/icons/blank.png", name: name, type: "trapping", data: game.system.model.Item.trapping })
|
||||
catch {}
|
||||
if (!itemFound) {
|
||||
itemFound = new game.wfrp4e.entities.ItemWfrp4e({ img: "systems/wfrp4e/icons/blank.png", name: name, type: "trapping", data: game.system.model.Item.trapping })
|
||||
itemFound.data.data.trappingType.value = "misc"
|
||||
}
|
||||
if (itemFound)
|
||||
itemFound = itemFound.toObject();
|
||||
} else if (def.name == 'mutation') {
|
||||
try {
|
||||
itemFound = await __findItem(name, "mutation");
|
||||
}
|
||||
catch { }
|
||||
if (itemFound)
|
||||
itemFound = itemFound.toObject();
|
||||
}
|
||||
|
||||
if (itemFound)
|
||||
globalItemList.push(itemFound);
|
||||
globalItemList.push( itemFound );
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -347,15 +270,18 @@ export default async function statParserFR(statString, type = "npc") {
|
||||
globalItemList = globalItemList.concat(moneyItems);
|
||||
//console.log("My liste :", globalItemList);
|
||||
let name = pnjName;
|
||||
|
||||
let effects = globalItemList.reduce((total, globItem) => total.concat(globItem.data.effects), [])
|
||||
effects = effects.filter(e => !!e)
|
||||
effects = effects.filter(e => e.transfer)
|
||||
|
||||
return { name, type, data: model, items: globalItemList, effects }
|
||||
return { name, type, data: model, items: globalItemList }
|
||||
}
|
||||
|
||||
// If the carac string has not been found
|
||||
ui.notifications.error("Impossible de convertir ces statitiques, les caractéristiques n'ont pas été trouvées", { permanent: true })
|
||||
ui.notifications.error("Impossible de convertir ces statitiques, les caractéristiques n'ont pas été trouvées", { permanent: true } )
|
||||
}
|
||||
|
||||
/************************************************************************************/
|
||||
Hooks.once('ready', () => {
|
||||
|
||||
//var fullskills = game.packs.get('wfrp4e-core.skills');
|
||||
//console.log("Skills", game.wfrp4e.apps.StatBlockParser.prototype);
|
||||
|
||||
} )
|
||||
|
||||
|
File diff suppressed because one or more lines are too long
0
packs/antidotes-and-remedes.db.db
Normal file
0
packs/antidotes-and-remedes.db.db
Normal file
@ -1,58 +0,0 @@
|
||||
{"_id":"0SKGm6PXnncNEvpw","name":"Ecuyer","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":1},"status":{"tier":"s","standing":3},"characteristics":["s","i","ag"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)"],"talents":["Savoir-vivre (Au choix)","Cavalier émérite","Costaud","Guerrier né"],"trappings":["Veste de cuir","Chemise de mailles","Cheval de selle avec fontes et selle","Bouclier","Outils (Maréchal Ferrand)"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"0oRwp1jGMyIA1AOw","name":"Capitaine Fusilier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Fusilier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["bs","ag","dex","i","int","wp"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)","Commandement","Orientation","Projectiles (Ingénierie)","Chevaucher (Cheval)","Charme","Savoir (Stratégie militaire)"],"talents":["Exaltant","Voyageur aguerri","Coeur vaillant","Seigneur de guerre"],"trappings":["Lettre de mission","Cheval de guerre léger avec fontes et selle","Symbole de rang"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.MqNsy1JwN4dInYbs"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"1NIBpG9o9vv0DO6N","name":"Sergent Pistoletier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Pistoletier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":5},"characteristics":["bs","ag","dex","i","int"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)","Commandement","Orientation","Projectiles (Ingénierie)","Chevaucher (Cheval)"],"talents":["Vigilance","Tireur d'élite","Tir sûr","Inébranlable"],"trappings":["Symbole de rang","Uniforme de qualité"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"1SQ9LkMa0jzoGUZI","name":"Prêtre Sergent de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":4},"characteristics":["ws","int","fel","i","ag"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)","Savoir (Au choix)","Corps à corps (Au choix)","Recherche","Métier (Armurier) ou Métier (Forgeron)"],"talents":["Studieux","Visions Sacrées","Ame pure","Coeur vaillant"],"trappings":["Armure de plate complète"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"1pDjLFBFmX9IEeBP","name":"Chevalier du Loup Blanc","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier du Loup Blanc"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":5},"characteristics":["s","i","ws","ag"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps (Base)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps ()","Survie en extérieur"],"talents":["Menaçant","Voyageur aguerri","Coup puissant","Frappe blessante"],"trappings":["Cape en peau de loup","Destrier avec selle et fontes","Armure de plate"],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"2ZnMwejzMeeYUpTj","name":"Apprenti Druide","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"b","standing":3},"characteristics":["wp","int","ag"],"skills":["Focalisation (Ghyran)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magick)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Survie en extérieur",""],"talents":["Magie mineure","Harmonisation Aethyrique","Lire/Ecrire","Seconde Vue"],"trappings":["Grimoire","Bâton","Faucille en cuivre"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"2rb2fXvttt06T5TZ","name":"Chevalier Panthère","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier Panthère"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":5},"characteristics":["s","i","ws","ag"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Savoir (Empire)","Savoir (Héraldique)","Corps à corps (Base)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps ()"],"talents":["Menaçant","Porte-bouclier","Coup puissant","Imperturbable"],"trappings":["Peau de grand chat","Destrier avec selle et fontes","Arme de mêlée","Lance","Armure de plate et Grand heaume à crète de bête","Anneau ou Médaillon de Chevalier panthère."],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"4Gk9QPx0Vjk2iXJG","name":"Capitaine Fusilier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Fusilier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["bs","ag","dex","i","int","wp"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)","Commandement","Orientation","Projectiles (Ingénierie)","Chevaucher (Cheval)","Charme","Savoir (Stratégie militaire)"],"talents":["Exaltant","Voyageur aguerri","Coeur vaillant","Seigneur de guerre"],"trappings":["Lettre de mission","Cheval de guerre léger avec fontes et selle","Symbole de rang"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.MqNsy1JwN4dInYbs"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"56w0D22CLv0zYg62","name":"Recrue Pistoletier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Pistoletier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":1},"characteristics":["bs","ag","dex"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)"],"talents":["Tir précis","Artilleur","Tireur de précision","Tireur embusqué"],"trappings":["Dague","Uniforme","Pistolet"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"5G4ZEfeV78nDls06","name":"Prêtre Sergent de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":4},"characteristics":["ws","int","fel","i","ag"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)","Savoir (Au choix)","Corps à corps (Au choix)","Recherche","Métier (Armurier) ou Métier (Forgeron)"],"talents":["Studieux","Visions Sacrées","Ame pure","Coeur vaillant"],"trappings":["Armure de plate complète"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"7p9Gv8mAzBn50giw","name":"Grande épée","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-02.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Grande épée"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["ws","s","wp","i"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Ragot","Langue (Bataille)","Corps à corps (Base)","Corps à corps (A deux mains)","Musicien (Tambour)","Pari","Intimidation","Savoir (Héraldique)","Corps à corps (Au choix)","Survie en extérieur","Perception",""],"talents":["Combat Instinctif","Savoir-vivre (Soldats)","Sans peur (Au choix)","Coup puissant"],"trappings":["Armure de plate complète","Grand chapeau à plume"],"incomeSkill":[8]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.Q4f9Ho3AKkCywgo8"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"9ZexsRULPWCzv9vO","name":"Combattant des tunnels","type":"career","img":"modules/wfrp4e-core/icons/careers/guard-01.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Brise fer"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"b","standing":4},"characteristics":["ws","t","wp"],"skills":["Athlétisme","Escalade","Calme","Esquive","Résistance","Corps à corps (Base)","Intimidation","Discrétion (Au choix) Langue(Bataille)","Divertissement (Chant)",""],"talents":["Coude-à-coude","Combattant en espace clos","Guerrier né","Coup puissant"],"trappings":["Plastron d'acier","Heaume ouvert","Jambières et brassards d'acier","Bouclier (grand)","Hache"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Dragon Slayer"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.nWFtlLdrGOhIJsMd"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"BV1D9dwn1sv1wBTm","name":"Capitaine Archer","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Archer"},"class":{"type":"String","label":"Class","value":"Guerrier"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["s","bs","i","ag","t","int"],"skills":["Pari","Ragot","Corps à corps (Base)","Survie en extérieur","Pistage","Métier (Fabricant de flèches)","Athlétisme","Escalade","Résistance à l'alcool","Esquive","Langue(Bataille)","Perception","Musicien(Corne)","Projectile(Arc)","Discrétion(Rurale)","Calme","Commandement","Orientation","Chevaucher (Cheval)","Savoir (Guerre)","Signes secrets (Eclaireur)",""],"talents":["Exaltant","Voyageur aguerri","Seigneur de guerre","Coeur vaillant"],"trappings":["Lettre de mission","Cheval de guerre léger avec selle et fontes","Symbole de rang"],"incomeSkill":[13]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.M7Jxj2dPKQFicA8b"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"BY6cI09btqQbPwUw","name":"Apprenti Pyromancier","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"b","standing":3},"characteristics":["wp","int","ws"],"skills":["Focalisation (Aqshy)","Esquive","Intuition","Langue (Magick)","Savoir (Magie)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Intimidation","Langue (Bataille)",""],"talents":["Magie Mineure","Lire/Ecrire","Seconde Vue","Harmonisation Aethyrique"],"trappings":["Première clé des secrets","Grimoire","bâton"],"incomeSkill":[3],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"BZGs6SccquCNG2xM","name":"Cavalerie légère","type":"career","img":"modules/wfrp4e-core/icons/careers/cavalryman-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.h9LHCAdlP4o55QvD]{Cavalryman}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Cavalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":2},"characteristics":["ws","t","ag","bs"],"skills":["Soin aux animaux","Résistance","Langue (Bataille)","Corps à corps (Base)","Survie en extérieur","Chevaucher (Cheval)","Esquive","Marchandage","Guérison","Projectiles (Lancer)","Charme","Résistance à l'alcool","Pari","Ragot","Corps à corps (Cavalerie)","Projectiles (Arc)"],"talents":["Sens de l'orientation","Vigilance","Nomade","Cavalier émérite"],"trappings":["Cotte de maille","Cheval de guerre léger avec selle et fontes","Heaume ouvert"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Horseman"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.XuIDL2gpiFMleuVV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"BhJDHIfaDPgRHjao","name":"Prêtre guerrier de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["ws","int","fel","i"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)"],"talents":["Coude-à-coude","Exaltant","Invocation (Myrmidia)","Porte-bouclier"],"trappings":["Plastron d'acier","Heaume et bouclier"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"DxfhLpcpsEXsq6jY","name":"Recrue Fusilier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p>Considérant qu'il est irréaliste d'entretenir des régiments équipés de pistolet (Handgun), je me suis permis de modifier quelque peu la carrière en transformant handgun (pistolet) en gun (arme à feu, pistolet, fusil).</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Fusilier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":1},"characteristics":["bs","ag","dex"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)"],"talents":["Tir précis","Artilleur","Tireur de précision","Tireur embusqué"],"trappings":["Dague","Uniforme","Arme à feu"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.F3bm5YfWtrLMt8R0"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"EJiNrJHYbHErhCMN","name":"Chevalier commandeur","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":2},"characteristics":["ws","s","i","ag","wp"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps (Au choix)","Charme","Résistance à l'alcool","Commandement","Savoir (Guerre)"],"talents":["Sans peur (Au choix)","Coeur vaillant","Inébranlable","Seigneur de guerre"],"trappings":["Carapaçon","Petite unité de chevaliers"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"First Knight"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.GPhqluMBhCeTnyNJ"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Eo798NESMVD2QwV7","name":"Pistoletier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Pistoletier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["bs","ag","dex","i"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)"],"talents":["Coude-à-coude","Savoir-vivre (Soldats)","Tir rapide","Rechargement rapide"],"trappings":["Grand chapeau avec plume","Pistolet de qualité"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"EzDvoZB4Owzyuy2c","name":"Capitaine Grande épée","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Soldat"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["ws","s","wp","i","t","int"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Ragot","Langue (Bataille)","Corps à corps (Base)","Corps à corps (A deux mains)","Musicien (Tambour)","Pari","Intimidation","Savoir (Héraldique)","Corps à corps (Au choix)","Survie en extérieur","Perception","Intuition","Commandement","Orientation","Chevaucher (Cheval)","Charme","Savoir (Stratégie militaire)"],"talents":["Présence imposante","Exaltant","Orateur","Coeur vaillant"],"trappings":["Lettre de mission","Cheval léger avec selle et harnais","Uniforme de qualité","Symbole de rang"],"incomeSkill":[8]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.e53TUabOHxkZHAqi"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"F7Vefdjmb6UShVpg","name":"Seigneur Druide","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":2},"characteristics":["wp","int","ag","i","fel","ws"],"skills":["Focalisation (Ghyran)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magick)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Soin aux animaux","Chevaucher (Cheval)","Survie en extérieur","Orientation","Evaluation","Savoir(Plante)","Savoir (Au choix)"],"talents":["Vigilance","Effrayant","Volonté de fer","Mage de guerre"],"trappings":["Librairie (Magique)","Robes élaborées","Retraite de jardin"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"name":"Capitaine de Cavalerie Légère","type":"career","img":"modules/wfrp4e-core/icons/careers/cavalryman-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.h9LHCAdlP4o55QvD]{Cavalryman}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Cavalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["ws","t","ag","bs","fel"],"skills":["Soin aux animaux","Résistance","Langue (Bataille)","Corps à corps (Base)","Survie en extérieur","Chevaucher (Cheval)","Esquive","Marchandage","Guérison","Projectiles (Lancer)","Charme","Résistance à l'alcool","Pari","Ragot","Corps à corps (Cavalerie)","Projectiles (Arc)","Conduite d'attelage","Intuition","Commandement","Savoir (Stratégie militaire)","Savoir (Loi) ou Savoir (Héraldique)","Projectiles (Poudre noire)",""],"talents":["Présence imposante","Négociateur","Exaltant","Seigneur de guerre"],"trappings":["Cheval de guerre","Habits flamboyants","Plastron d'acier","Bretelle de pistolets avec poudre et munitions"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Horseman"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.XuIDL2gpiFMleuVV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}},"_id":"F7tTiZL04wSLWcf6"}
|
||||
{"_id":"HScIzEodc6pycRYc","name":"Vieille garde","type":"career","img":"modules/wfrp4e-core/icons/careers/guard-04.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Garde"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":3},"characteristics":["ws","t","wp","s","i","fel"],"skills":["Athlétisme","Escalade","Calme","Esquive","Résistance","Corps à corps (Base)","Intimidation","Discrétion (Au choix)","Langue(Bataille)","Divertissement (Chant)","Résistance à l'alcool","Ragot","Commandement","Savoir (Géologie)","Corps à corps (Parade)","Projectiles (Explosifs)","Intuition","Perception","Corps à corps (A deux mains)","Savoir (Guerre)","Orientation",""],"talents":["Présence imposante","Endurci","Exaltant","Coeur vaillant"],"trappings":["Unité de brise fer","arme portant une rune maître"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Dragon Slayer"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.nWFtlLdrGOhIJsMd"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"name":"Lancier","type":"career","img":"modules/wfrp4e-core/icons/careers/cavalryman-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.h9LHCAdlP4o55QvD]{Cavalryman}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Cavalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":5},"characteristics":["ws","t","ag","bs","fel"],"skills":["Soin aux animaux","Résistance","Langue (Bataille)","Corps à corps (Base)","Survie en extérieur","Chevaucher (Cheval)","Esquive","Marchandage","Guérison","Projectiles (Lancer)","Charme","Résistance à l'alcool","Pari","Ragot","Corps à corps (Cavalerie)","Projectiles (Arc)","Conduite d'attelage","Intuition","Commandement","Savoir (Stratégie militaire)"],"talents":["Combat Instinctif","Rechargement rapide","Voyageur aguerri","Acrobaties équestres"],"trappings":["Chausses de maille","Lance","Page","Ecuyer"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Horseman"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.XuIDL2gpiFMleuVV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}},"_id":"JkVSCCwz4Ph2IWdr"}
|
||||
{"_id":"LdXbjO1QMoofePkS","name":"Sergent Fusilier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Fusilier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":5},"characteristics":["bs","ag","dex","i","int"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)","Commandement","Orientation","Projectiles (Ingénierie)","Chevaucher (Cheval)"],"talents":["Vigilance","Tireur d'élite","Tir sûr","Inébranlable"],"trappings":["Symbole de rang","Uniforme de qualité"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.N25MgAS8SL71Tvvz"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Lna9fnbv1ZpjZlbP","name":"Archer","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-02.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Archer"},"class":{"type":"String","label":"Class","value":"Guerrier"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["s","bs","i","ag"],"skills":["Pari","Ragot","Corps à corps (Base)","Survie en extérieur","Pistage","Métier (Fabricant de flèches)","Athlétisme","Escalade","Résistance à l'alcool","Esquive","Langue(Bataille)","Perception","Musicien(Corne)","Projectile(Arc)","Discrétion(Rurale)"],"talents":["Savoir-vivre (Soldats)","Tireur de précision","Tir sûr","Coude-à-coude"],"trappings":["Epée","Arc de qualité","couvre-chef"],"incomeSkill":[13]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.M7Jxj2dPKQFicA8b"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"M6szd5LqHjrigadd","name":"Capitaine Chevalier errant","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier errant"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":1},"characteristics":["ws","s","i","ag","wp"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Ragot","Survie en extérieur","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Intuition","Corps à corps (Au choix)","Charme","Résistance à l'alcool","Commandement","Savoir (Guerre)","Pari","Marchandage"],"talents":["Maîtrise du combat","Coeur vaillant","Inébranlable","Seigneur de guerre"],"trappings":["Carapaçon","Petite suite de suivants"],"incomeSkill":[6],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"First Knight"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.GPhqluMBhCeTnyNJ"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"NqwVT6diup3KAaz9","name":"Pyromancier","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["wp","int","ag","ws"],"skills":["Focalisation (Aqshy)","Esquive","Intuition","Langue (Magick)","Savoir (Magie)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Calme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Savoir(Stratégie militaire)","Commandement",""],"talents":["Magie des Arcanes (Feu)","Détection d'artefact","Mains agiles","Sixième Sens"],"trappings":["License de magie","Robes pratiques","Seconde et troisième clés des secrets","Epée"],"incomeSkill":[3],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"OorZm6R5oGvRG3Zs","name":"Cadet Grande épée","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-01.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Soldat"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":1},"characteristics":["ws","s","wp"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Ragot","Langue (Bataille)","Corps à corps (Base)","Corps à corps (A deux mains)","Musicien (Tambour)"],"talents":["Imperturbable","Coude-à-coude","Infatigable","Guerrier né"],"trappings":["Dague","plastron d'acier","uniforme","Epée à deux mains"],"incomeSkill":[8]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.QrbKnqJ0oXXSEwyM"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"name":"Pillard","type":"career","img":"modules/wfrp4e-core/icons/careers/cavalryman-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.h9LHCAdlP4o55QvD]{Cavalryman}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Cavalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"b","standing":3},"characteristics":["ws","t","ag"],"skills":["Soin aux animaux","Résistance","Langue (Bataille)","Corps à corps (Base)","Survie en extérieur","Chevaucher (Cheval)","Esquive","Marchandage","Guérison","Projectiles (Lancer)"],"talents":["Savoir-vivre (Mercenaires)","Pansement de fortune","Fuite !","Infatigable"],"trappings":["Veste de cuir","Cheval de selle avec fontes et selle","Bouclier","Javelot"],"incomeSkill":[7],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Horseman"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.XuIDL2gpiFMleuVV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}},"_id":"QwiArcPoZ6ATHl7j"}
|
||||
{"_id":"RNifoRSLD2sGpMzH","name":"Capitaine Pistoletier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Pistoletier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["bs","ag","dex","i","int","wp"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)","Commandement","Orientation","Projectiles (Ingénierie)","Chevaucher (Cheval)","Charme","Savoir (Stratégie militaire)"],"talents":["Exaltant","Voyageur aguerri","Coeur vaillant","Seigneur de guerre"],"trappings":["Lettre de mission","Cheval de guerre léger avec fontes et selle","Symbole de rang"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Rg9d1oGIBePS8LtA","name":"Sergent Grande épée","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-03.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Soldat"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":5},"characteristics":["ws","s","wp","i","t"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Ragot","Langue (Bataille)","Corps à corps (Base)","Corps à corps (A deux mains)","Musicien (Tambour)","Pari","Intimidation","Savoir (Héraldique)","Corps à corps (Au choix)","Survie en extérieur","Perception","Intuition","Commandement","Orientation","Chevaucher (Cheval)",""],"talents":["Vigilance","Combattant en espace clos","Inébranlable","Seigneur de guerre"],"trappings":["Manuel sur l'art de combattre avec une épée à deux mains","Epée à deux mains de qualité","Symbole de rang"],"incomeSkill":[8]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.aEDq4xrMlCivhIgI"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"TdnL6veNdLxGt4ti","name":"Premier Chevalier Panthère","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier Panthère"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":2},"characteristics":["s","i","ws","ag","wp"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Savoir (Empire)","Savoir (Héraldique)","Corps à corps (Base)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps ()","Charme","Langue ()","Commandement","Savoir (Stratégie militaire)"],"talents":["Sans peur (Chaos)","Coeur vaillant","Inébranlable","Seigneur de guerre"],"trappings":["Caparaçon","Petite unité de Chevalier Panthère"],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Tt8e49EaGzcde6lv","name":"Ecuyer Chevalier Panthère","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier Panthère"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":3},"characteristics":["s","i","ws"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Savoir (Empire)","Savoir (Héraldique)","Corps à corps (Base)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)"],"talents":["Savoir-vivre","Cavalier émérite","Costaud","Guerrier né"],"trappings":["Veste de cuir","Chemise de mailles","Cheval de selle avec fontes et selle","Bouclier","Outils (Maréchal Ferrand)"],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"TzHA4hYvllpATCNR","name":"Brise Fer","type":"career","img":"modules/wfrp4e-core/icons/careers/guard-02.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Garde"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["ws","t","wp","s"],"skills":["Athlétisme","Escalade","Calme","Esquive","Résistance","Corps à corps (Base)","Intimidation","Discrétion (Au choix) Langue(Bataille)","Divertissement (Chant)","Résistance à l'alcool","Ragot","Commandement","Savoir (Géologie)","Corps à corps (Parade)","Projectiles (Explosifs)"],"talents":["Battement","Vigilance","Porte-bouclier","Inébranlable"],"trappings":["3 bombes","une arme ou une pièce d'armure en Gromril"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Dragon Slayer"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.nWFtlLdrGOhIJsMd"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Uk8GjboFpky5s1rb","name":"Sergent Hallebardier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-03.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Hallebardier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"s","standing":5},"characteristics":["ws","t","ag","s","i"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Représentation (Parade)","Musicien (Tambour)","Escalade","Pari","Intimidation","Survie en extérieur","Perception","Intuition","Commandement","Orientation","Chevaucher (Cheval)"],"talents":["Vigilance","Inébranlable","Coeur vaillant","Seigneur de guerre"],"trappings":["Uniforme de qualité","Symbole de rang"],"incomeSkill":[7]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.AvS1DCWQ3uYuA1d2"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"VejcUZNHfMvDYH6b","name":"Premier Aigle (Initié de Myrmidia)","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":2},"characteristics":["ws","int","fel"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)"],"talents":["Béni (Myrmidia)","Vigilance","Lire/Ecrire","Savoir-vivre (Cultistes)"],"trappings":["Livre sacré de Myrmidia","Icone de Myrmidia","Robes blanches","épieu","Justaucorps de cuir"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"Wg3atohL0uISyrvx","name":"Hallebardier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-02.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Hallebardier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["ws","t","ag","s"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Représentation (Parade)","Musicien (Tambour)","Escalade","Pari","Ragot","Intimidation","Survie en extérieur","Perception"],"talents":["Combattant en espace clos","Savoir-vivre (Soldats)","Sans peur (Au choix)","Coup puissant"],"trappings":["Plastron d'acier","Hallebarde de qualité","Heaume ouvert"],"incomeSkill":[7]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.1GlINqj6gVsnLtmF"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"aqFlKIE9TVnuphma","name":"Capitaine Hallebardier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-04.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Hallebardier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":1},"characteristics":["ws","t","ag","s","i","dex"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Représentation (Parade)","Musicien (Tambour)","Escalade","Pari","Intimidation","Survie en extérieur","Perception","Intuition","Commandement","Orientation","Chevaucher (Cheval)","Charme","Savoir (Stratégie militaire)"],"talents":["Exaltant","Orateur","Voyageur aguerri","Présence imposante"],"trappings":["Lettre de mission","Léger cheval de guerre avec fontes et selle","Epée de qualité","Symbole de rang"],"incomeSkill":[7]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.AvS1DCWQ3uYuA1d2"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"cTK9YmeYcqyvKAC3","name":"Barbe de fer","type":"career","img":"modules/wfrp4e-core/icons/careers/guard-03.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Brise fer"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":1},"characteristics":["ws","t","wp","s","i"],"skills":["Athlétisme","Escalade","Calme","Esquive","Résistance","Corps à corps (Base)","Intimidation","Discrétion (Au choix) Langue(Bataille)","Divertissement (Chant)","Résistance à l'alcool","Ragot","Commandement","Savoir (Géologie)","Corps à corps (Parade)","Projectiles (Explosifs)","Intuition","Perception","Corps à corps (A deux mains)"],"talents":["Frappe précise","Maîtrise du combat","Frappe réactive","Seigneur de guerre"],"trappings":["Hache à deux mains","armure complète en gromril."],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Dragon Slayer"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.nWFtlLdrGOhIJsMd"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"cfrlj6ONuyuwFjhZ","name":"Recrue Hallebardier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-01.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Hallebardier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":3},"characteristics":["ws","t","ag"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Représentation (Parade)","Musicien (Tambour)",""],"talents":["Coude-à-coude","Maîtrise des dés","Infatigable","Guerrier né"],"trappings":["Dague","Hallebarde","Uniforme","Plastron en cuir"],"incomeSkill":[7]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.PdjC0DsvnilBl39o"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"dlfeyiufHuAd8Ekj","name":"Commandant de compagnie (Cercle intérieur)","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier du Loup Blanc"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":3},"characteristics":["s","i","ws","ag","wp","t"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Savoir()","Savoir(Héraldique)","Corps à corps(Base)","Corps à corps(Cavalerie)","Chevaucher(Cheval)","Métier (Maréchal-ferrant)","Survie en extérieur","Calme","Esquive","Résistance","Intimidation","Langue(Bataille)","Corps à corps()","Résistance à l'alcool","Commandement","Savoir(Stratégie militaire)","Perception","Savoir()","Signes secrets(Ulric)"],"talents":["Endurci","Exaltant","Volonté de fer","Imperturbable"],"trappings":["Ecuyer","Compagnie de Chevaliers du Loup Blanc"],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"eyoKOHqKDJWrEiNm","name":"Chevalier","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":5},"characteristics":["ws","s","i","ag"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps (Au choix)"],"talents":["Menaçant","Voyageur aguerri","Porte-bouclier","Coup puissant"],"trappings":["Destrier avec fontes et selle","Arme à 1 main (Au choix)","Lance","Armure de plates et Heaume"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Knight"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FhK6JOd3LSTlHwoa"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"f5aesgb3NB90LTni","name":"Maître Druide","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":1},"characteristics":["wp","int","ag","i","fel"],"skills":["Focalisation (Ghyran)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magick)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Soin aux animaux","Evaluation","Savoir (Magick)","Chevaucher (Cheval)","Survie en extérieur","Orientation","Evaluation","Savoir(Plante)"],"talents":["Nomade","Diction Instinctive","Perception de la magie","Menaçant"],"trappings":["Apprenti","Faucille en or","Objet Magique","Robes standards"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"gmWLGaKQwXKdTLBM","name":"Druide","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["wp","int","ag","i"],"skills":["Focalisation (Ghyran)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magick)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Survie en extérieur","Orientation"],"talents":["Magie des Arcanes (Vie)","Détection d'artefact","Sixième sens","Mains agiles"],"trappings":["License de magie","Robes pratiques","Faucille en argent"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"hz1sQZQPiYcBhS98","name":"Prêtre Capitaine de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"s","standing":5},"characteristics":["ws","int","fel","i","ag","s"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)","Savoir (Au choix)","Corps à corps (Au choix)","Recherche","Métier (Armurier) ou Métier (Forgeron)","Chevaucher (Cheval)","Soin aux animaux"],"talents":["Maîtrise du combat","Combat Instinctif","Sans peur (Au choix)","Seigneur de guerre"],"trappings":["Relique religieuse de Myrmidia"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"kXm8TVGDTDmUhRau","name":"Chevalier du cercle intérieur","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":4},"characteristics":["ws","s","i","ag","wp","fel"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps (Au choix)","Charme","Résistance à l'alcool","Commandement","Savoir (Guerre)","Savoir (Au choix)","Signes secrets (Ordre chevaleresque)"],"talents":["Désarmer","Exaltant","Volonté de fer","Frappe blessante"],"trappings":["Grand Heaume avec Plumes","Ecuyer","Grande unité de Chevaliers ou plusieurs petites unités de Chevaliers"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Knight of the Inner Circle"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.Esy17RVOZQw2gShT"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"ke2oDDtn4tqXsT2x","name":"Sergent Templier","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier du Loup Blanc"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":2},"characteristics":["s","i","ws","ag","wp"],"skills":["Athlétisme","Soin aux animaux","Charme","Emprise sur les animaux","Guérison","Survie en extérieur","Savoir (Héraldique)","Corps à corps (Base)","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Langue (Bataille)","Corps à corps ()","Résistance à l'alcool","Commandement","Savoir (Stratégie militaire)","Perception"],"talents":["Sans peur (Au choix)","Assaut féroce","Inébranlable","Seigneur de guerre"],"trappings":["Caparaçon","Petite unité de Chevalier du Loup Blanc"],"incomeSkill":[8],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"lYqf7uK7eZjO7Ceb","name":"Maître Pyromancier","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-03.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"3"},"status":{"tier":"g","standing":1},"characteristics":["wp","int","ag","i","ws"],"skills":["Focalisation (Aqshy)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magie)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Calme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Chevaucher (Cheval)","Evaluation","Savoir(Stratégie militaire)","Commandement","Recherche",""],"talents":["Maniement de deux armes","Diction instinctive","Perception de la magie","Menaçant"],"trappings":["Objet magique","Robes standards","Apprenti","Quatrième et cinquième clés des secrets","Cheval de guerre léger"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"lpjLnwoUHHQKvCCz","name":"Seigneur Pyromancier","type":"career","img":"modules/wfrp4e-core/icons/careers/wizard-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.m6WuSnrrW7QllX63]{Wizard}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Sorcier"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":2},"characteristics":["wp","int","ag","i","fel","ws"],"skills":["Focalisation (Aqshy)","Emprise sur les animaux","Esquive","Intuition","Langue (Magick)","Savoir (Magie)","Corps à corps (Base)","Corps à corps (Armes d'hast)","Perception","Charme","Calme","Ragot","Intimidation","Langue (Bataille)","Langue (Au choix)","Chevaucher (Cheval)","Evaluation","Savoir(Stratégie militaire)","Savoir (Au choix)","Commandement","Recherche",""],"talents":["Vigilance","Effrayant","Volonté de fer","Mage de guerre"],"trappings":["Librairie (Magique)","Robes élaborées","Apprenti","Sixième et septième clés des secrets","Atelier magique"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Master Wizard"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.1DIMUn1Cj5rohWJV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"lu761rq8xijg1Gb6","name":"Fusilier","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>Pistoletier ou Pistolier: soldat armé de un ou deux pistolets. Dans le monde de Warhammer, le terme de Pistolier désigne déjà une cavalerie légère munie d'armes à feu, le plus souvent composée de cadet noble.Raison pour laquelle le terme de pistoletier sera choisi pour cette carrière.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Fusilier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["bs","ag","dex","i"],"skills":["Athlétisme","Résistance à l'alcool","Calme","Esquive","Résistance","Langue (Bataille)","Corps à corps (Base)","Perception","Musicien (Flute)","Projectiles (Poudre noire)","Escalade","Pari","Ragot","Intuition","Survie en extérieur","Métier (Armurier)"],"talents":["Coude-à-coude","Savoir-vivre (Soldats)","Tir rapide","Rechargement rapide"],"trappings":["Grand chapeau avec plume","Arme à feu de qualité"],"incomeSkill":[9]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.ueWFtOkyyElDKDuH"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"mM23mWHtznFgOvHk","name":"Ecuyer Chevalier du Loup Blanc","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier du Loup Blanc"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":3},"characteristics":["s","i","ws"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Savoir (Héraldique)","Corps à corps(Base)","Corps à corps(Cavalerie)","Chevaucher(Cheval)","Métier(Maréchal-ferrant)","Survie en extérieur"],"talents":["Dur à cuire","Cavalier émérite","Costaud","Guerrier né"],"trappings":["Veste de cuir","Chemise de mailles","Cheval de selle avec fontes et selle","Marteau de cavalerie","Outils (Maréchal Ferrand)","Symbole Religieux d'Ulric"],"incomeSkill":[6],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Squire"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.FrPCbQ7fq1Fchthn"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.4.0"}}}
|
||||
{"_id":"s6vmduwjYqoF34mY","name":"Recrue Archer","type":"career","img":"modules/wfrp4e-core/icons/careers/soldier-01.png","data":{"description":{"type":"String","label":"Description","value":""},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Archer"},"class":{"type":"String","label":"Class","value":"Guerrier"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":1},"characteristics":["bs","i","ag"],"skills":["Athlétisme","Escalade","Résistance à l'alcool","Esquive","Langue(Bataille)","Perception","Musicien(Corne)","Projectile(Arc)","Discrétion(Rurale)"],"talents":["Tir Rapide","Guerrier né","Infatigable","Tir précis"],"trappings":["Dague","Uniforme","Arc","carquois de 10 flèches"],"incomeSkill":[7]},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"core":{"sourceId":"Item.W0I3duzzEHtIvzSj"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"sd3bDw77XiBKQypC","name":"Prêtre Capitaine de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"s","standing":5},"characteristics":["ws","int","fel","i","ag","s"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)","Savoir (Au choix)","Corps à corps (Au choix)","Recherche","Métier (Armurier) ou Métier (Forgeron)","Chevaucher (Cheval)","Soin aux animaux"],"talents":["Maîtrise du combat","Combat Instinctif","Sans peur (Au choix)","Seigneur de guerre"],"trappings":["Relique religieuse de Myrmidia"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"uPebNEz85HC7bcSB","name":"Commandant Chevalier errant","type":"career","img":"modules/wfrp4e-core/icons/careers/knight-04.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.n2VdkCPNNxdupjeQ]{Knight}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Chevalier errant"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"4"},"status":{"tier":"g","standing":3},"characteristics":["ws","s","i","ag","wp","fel"],"skills":["Athlétisme","Soin aux animaux","Emprise sur les animaux","Guérison","Ragot","Survie en extérieur","Corps à corps (Cavalerie)","Chevaucher (Cheval)","Métier (Maréchal-ferrant)","Calme","Esquive","Résistance","Intimidation","Intuition","Langue (Bataille)","Corps à corps (Au choix)","Charme","Résistance à l'alcool","Commandement","Savoir (Guerre)","Savoir (Au choix)","Pari","Marchandage"],"talents":["Désarmer","Exaltant","Volonté de fer","Chanceux"],"trappings":["Ecuyer","Compagnie de Chevaliers"],"incomeSkill":[6],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Knight of the Inner Circle"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.Esy17RVOZQw2gShT"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"xiZJdE5F8QU2uysh","name":"Prêtre guerrier de Myrmidia","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":3},"characteristics":["ws","int","fel","i"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)","Charme","Divertissement (Discours)","Guérison","Intuition","Corps à corps (Au choix)","Projectiles (Au choix)"],"talents":["Coude-à-coude","Exaltant","Invocation (Myrmidia)","Porte-bouclier"],"trappings":["Plastron d'acier","Heaume et bouclier"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"ywOCVUyCJfREo52j","name":"Premier Aigle (Initié de Myrmidia)","type":"career","img":"modules/wfrp4e-core/icons/careers/priest-01.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.GNwQFkVKUs0JM6U5]{Priest}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Prêtre"},"class":{"type":"String","label":"Class","value":"Lettrés"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"1"},"status":{"tier":"s","standing":2},"characteristics":["ws","int","fel"],"skills":["Calme","Esquive","Langue (Bataille)","Commandement","Savoir (Stratégie militaire)","Savoir (Théologie)","Perception","Prière","Corps à corps (Base)","Corps à corps (Armes d'hast)"],"talents":["Béni (Myrmidia)","Vigilance","Lire/Ecrire","Savoir-vivre (Cultistes)"],"trappings":["Livre sacré de Myrmidia","Icone de Myrmidia","Robes blanches","épieu","Justaucorps de cuir"],"incomeSkill":[4],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"details","babele":{"translated":true,"hasTranslation":true,"originalName":"Initiate"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.u2DMz1B0DyUHBi6Z"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"zIm3Ukdv6m6B1TWa","name":"Cavalerie légère","type":"career","img":"modules/wfrp4e-core/icons/careers/cavalryman-02.png","data":{"description":{"type":"String","label":"Description","value":"<p>@Compendium[wfrp4e-core.career-descriptions.h9LHCAdlP4o55QvD]{Cavalryman}</p>"},"gmdescription":{"type":"String","label":"Description","value":""},"careergroup":{"type":"String","label":"Career Group","value":"Cavalier"},"class":{"type":"String","label":"Class","value":"Guerriers"},"current":{"type":"Boolean","value":false},"complete":{"type":"Boolean","value":false},"level":{"type":"String","label":"Career Level","value":"2"},"status":{"tier":"s","standing":2},"characteristics":["ws","t","ag","bs"],"skills":["Soin aux animaux","Résistance","Langue (Bataille)","Corps à corps (Base)","Survie en extérieur","Chevaucher (Cheval)","Esquive","Marchandage","Guérison","Projectiles (Lancer)","Charme","Résistance à l'alcool","Pari","Ragot","Corps à corps (Cavalerie)","Projectiles (Arc)"],"talents":["Sens de l'orientation","Vigilance","Nomade","Cavalier émérite"],"trappings":["Cotte de maille","Cheval de guerre léger avec selle et fontes","Heaume ouvert"],"incomeSkill":[5],"source":{"type":"String","label":"Source"}},"effects":[],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"babele":{"translated":true,"hasTranslation":true,"originalName":"Horseman"},"core":{"sourceId":"Compendium.wfrp4e-core.careers.XuIDL2gpiFMleuVV"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
@ -1,2 +0,0 @@
|
||||
{"_id":"2NuLGbLlyHPck2Je","name":"Confort","type":"spell","img":"modules/wfrp4e-core/icons/spells/fire.png","data":{"description":{"type":"String","label":"Description","value":"<p>Vous étendez les vents d'Aqshy selon une délicate toile, qui réchauffe subtilement l'aire d'effet.Ce sort crée une zone de chaleur confortable qui par ailleurs évite même dans les environnements les plus glaciaux, les effets de l'exposition au froid. L'air chaud produit des tourbillons autour de la zone d'effet, détournant les fortes rafales de vent et les intempéries les plus rigoureuses. Avec ce sort, la difficulté de monter un camp ne peut exiger un jet de Survie en extérieur plus difficile que Accessible (+20).</p>\n<p><strong>Domaine:</strong> Vous pouvez infliger +1 Etat Enflammé à quiconque est ciblé par les Sorts du Domaine du Feu, à moins qu'ils ne possèdent également le Talent Magie des Arcanes (Feu). Chaque Etat Enflammé situé à une distance en mètres égale à votre Bonus de Force Mentale ajoute +10 aux tentatives de Focalisation ou d'Incantation avec <em>Aqshy</em>.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"lore":{"type":"String","label":"Lore","value":"fire","effect":""},"range":{"type":"String","label":"Range","value":"Force Mentale mètres."},"target":{"type":"String","label":"Target","value":"Bonus de Force Mentale mètre","aoe":true},"duration":{"type":"String","label":"Duration","value":"Bonus de Force Mentale heures","extendable":false},"damage":{"type":"String","label":"Damage","dice":"","value":""},"cn":{"type":"Number","label":"Casting Number","value":3,"SL":0},"magicMissile":{"type":"Boolean","label":"Magic Missile","value":false},"memorized":{"type":"Boolean","label":"Memorized","value":false},"skill":{"value":""},"ingredients":[],"currentIng":{"type":"Number","label":"Ingredient","value":0},"wind":{"value":""},"overcast":{"enabled":false,"label":"","valuePerOvercast":{"type":"","value":1,"SL":false,"characteristic":"","bonus":false},"initial":{"type":"","value":1,"SL":false,"characteristic":"","bonus":false}},"source":{"type":"String","label":"Source"}},"effects":[{"_id":"kNTwaivtonPJpdY6","changes":[],"duration":{"startTime":null},"flags":{"wfrp4e":{"effectApplication":"apply","effectTrigger":"oneTime","lore":true,"script":"\n if (args.actor.isOwner)\n {\n args.actor.addCondition(\"ablaze\")\n }"}},"icon":"modules/wfrp4e-core/icons/spells/fire.png","label":"Domaine du Feu","transfer":true,"disabled":false}],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"description","babele":{"translated":true,"hasTranslation":true,"originalName":"Mundane Aura (Fire)"},"core":{"sourceId":"Compendium.wfrp4e-core.spells.7pHcU30nMhgd0V5N"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
||||
{"_id":"VexogjUDXdGAHWmN","name":"Cuisine rapide","type":"spell","img":"modules/wfrp4e-core/icons/spells/fire.png","data":{"description":{"type":"String","label":"Description","value":"<p>Vous faites trés rapidement chauffer un morceau de viande, une marmitte de ragoût, ou tout autre plat de nourriture similaire.C'est instantannément cuit à la perfection, selon vos goûts. Notons que cela n'apporte aucun ingrédient culinaire supplémentaire, et qu'un test de Métier (Cuisine) est nécessaire pour réaliser un plat vraiment succulent.</p>\n<p><strong>Domaine:</strong> Vous pouvez infliger +1 Etat Enflammé à quiconque est ciblé par les Sorts du Domaine du Feu, à moins qu'ils ne possèdent également le Talent Magie des Arcanes (Feu). Chaque Etat Enflammé situé à une distance en mètres égale à votre Bonus de Force Mentale ajoute +10 aux tentatives de Focalisation ou d'Incantation avec <em>Aqshy</em>.</p>\n<p> </p>"},"gmdescription":{"type":"String","label":"Description","value":""},"lore":{"type":"String","label":"Lore","value":"fire","effect":""},"range":{"type":"String","label":"Range","value":"Contact"},"target":{"type":"String","label":"Target","value":"Spécial","aoe":false},"duration":{"type":"String","label":"Duration","value":"Instantannée","extendable":false},"damage":{"type":"String","label":"Damage","dice":"","value":""},"cn":{"type":"Number","label":"Casting Number","value":2,"SL":0},"magicMissile":{"type":"Boolean","label":"Magic Missile","value":false},"memorized":{"type":"Boolean","label":"Memorized","value":false},"skill":{"value":""},"ingredients":[],"currentIng":{"type":"Number","label":"Ingredient","value":0},"wind":{"value":""},"overcast":{"enabled":false,"label":"","valuePerOvercast":{"type":"","value":1,"SL":false,"characteristic":"","bonus":false},"initial":{"type":"","value":1,"SL":false,"characteristic":"","bonus":false}},"source":{"type":"String","label":"Source"}},"effects":[{"_id":"kNTwaivtonPJpdY6","changes":[],"duration":{"startTime":null},"flags":{"wfrp4e":{"effectApplication":"apply","effectTrigger":"oneTime","lore":true,"script":"\n if (args.actor.isOwner)\n {\n args.actor.addCondition(\"ablaze\")\n }"}},"icon":"modules/wfrp4e-core/icons/spells/fire.png","label":"Domaine du Feu","transfer":true,"disabled":false}],"folder":null,"sort":0,"permission":{"default":0,"KlpQY85kaIy1CjL6":3},"flags":{"_sheetTab":"description","babele":{"translated":true,"hasTranslation":true,"originalName":"Mundane Aura (Fire)"},"core":{"sourceId":"Compendium.wfrp4e-core.spells.7pHcU30nMhgd0V5N"},"exportSource":{"world":"warhammer-9","system":"wfrp4e","coreVersion":"9.269","systemVersion":"5.3.0"}}}
|
@ -1,4 +0,0 @@
|
||||
/** To deal with wrong menu background */
|
||||
:root{
|
||||
--color-bg-option: #352516;
|
||||
}
|
1
tables/README.txt
Normal file
1
tables/README.txt
Normal file
@ -0,0 +1 @@
|
||||
TODO: Instructions for custom tables
|
@ -1,50 +1,50 @@
|
||||
{
|
||||
"name": "Athlétisme - Middenball",
|
||||
"name": "Athletics - Middenball",
|
||||
"hide" : true,
|
||||
"die": "1d100",
|
||||
"rows": [
|
||||
{
|
||||
"description": "Un joueur de l'équipe invitée est positionné à l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "An Away Team player is positioned in the Full Back area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [1,2]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe invitée est positionné à au milieu de l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "An Away Team player is positioned in the Half Back area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [3,10]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe invitée est positionné à au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "An Away Team player is positioned in the Home Midfield area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [11,20]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe invitée est positionné à l'avant du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "An Away Team player is positioned in the Away Midfield area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [21,35]
|
||||
},
|
||||
{
|
||||
"description": "L'équipe invitée domine légèrement la rencontre. Ajoutez 5 à leur score au prochain tour.",
|
||||
"description": "The Away Team show slight dominance. Add 5 to their A score next turn.",
|
||||
"range": [36,46]
|
||||
},
|
||||
{
|
||||
"description": "Aucun effet ce tour.",
|
||||
"description": "There is no effect this turn.",
|
||||
"range": [47,54]
|
||||
},
|
||||
{
|
||||
"description": "L'équipe qui reçoit domine légèrement la rencontre. Ajoutez 5 à leur score au prochain tour.",
|
||||
"description": "The Home Team show slight dominance. Add 5 to their A score next turn.",
|
||||
"range": [55,65]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe qui reçoit est positionné à l'arrière du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "A Home Team player is positioned in the Home Midfield area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [66,80]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe qui reçoit est positionné au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "A Home Team player is positioned in the Away Midfield area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [81,90]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe qui reçoit est positionné au milieu du terrain de l'équipe qui reçoit. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "A Home Team player is positioned in the Half Forward area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [91,98]
|
||||
},
|
||||
{
|
||||
"description": "Un joueur de l'équipe qui reçoit est positionné à l'avant du terrain. S'ils passent ce tour, ils peuvent tirer.",
|
||||
"description": "A Home Team player is positioned in the Forward area of the pitch. If passed to this turn, they can shoot.",
|
||||
"range": [99,100]
|
||||
}
|
||||
]
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Brutalité - Middenball",
|
||||
"name": "Brutality - Middenball",
|
||||
"hide" : true,
|
||||
"die": "1d100",
|
||||
"rows": [
|
||||
|
650
tables/career.json
Normal file
650
tables/career.json
Normal file
@ -0,0 +1,650 @@
|
||||
{
|
||||
"name": "Carrières alétoires",
|
||||
"columns": ["human-reiklander", "dwarf", "halfling", "helf", "welf", "gnome"],
|
||||
"rows": [
|
||||
{
|
||||
"range":{
|
||||
"human-reiklander" : [1, 1],
|
||||
"dwarf" : [1, 1],
|
||||
"halfling" : [1, 1],
|
||||
"helf" : [1, 2],
|
||||
"welf" : [],
|
||||
"gnome" : [1, 1]
|
||||
},
|
||||
"name": "Apothicaire"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human-reiklander" : [2, 2],
|
||||
"dwarf" : [2, 4],
|
||||
"halfling" : [2, 2],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Ingénieur"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [3, 3],
|
||||
"dwarf" : [5, 6],
|
||||
"halfling" : [3, 4],
|
||||
"helf" : [3, 6],
|
||||
"welf" : [],
|
||||
"gnome" : [2,2]
|
||||
},
|
||||
"name": "Juriste"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [4, 5],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Nonne"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [6, 6],
|
||||
"dwarf" : [7, 7],
|
||||
"halfling" : [5, 6],
|
||||
"helf" : [7, 8],
|
||||
"welf" : [],
|
||||
"gnome" : [3,4]
|
||||
},
|
||||
"name": "Médecin"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [7, 11],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [5,5]
|
||||
},
|
||||
"name": "Prêtre"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [12, 13],
|
||||
"dwarf" : [8, 9],
|
||||
"halfling" : [7, 8],
|
||||
"helf" : [9, 12],
|
||||
"welf" : [1, 1],
|
||||
"gnome" : [6,7]
|
||||
},
|
||||
"name": "Erudit"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [14, 14],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [13, 16],
|
||||
"welf" : [2, 5],
|
||||
"gnome" : [8, 14]
|
||||
},
|
||||
"name": "Sorcier"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [15, 15],
|
||||
"dwarf" : [10, 11],
|
||||
"halfling" : [9, 10],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [15,15]
|
||||
},
|
||||
"name": "Agitateur"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [16, 17],
|
||||
"dwarf" : [12, 17],
|
||||
"halfling" : [11, 15],
|
||||
"helf" : [17, 19],
|
||||
"welf" : [6, 10],
|
||||
"gnome" : [16,17]
|
||||
},
|
||||
"name": "Artisan"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [18, 19],
|
||||
"dwarf" : [18],
|
||||
"halfling" : [16, 19],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [18,18]
|
||||
},
|
||||
"name": "Mendiant"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [20, 20],
|
||||
"dwarf" : [19, 20],
|
||||
"halfling" : [20, 21],
|
||||
"helf" : [20, 21],
|
||||
"welf" : [],
|
||||
"gnome" : [19,19]
|
||||
},
|
||||
"name": "Enquêteur"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [21, 21],
|
||||
"dwarf" : [21, 24],
|
||||
"halfling" : [22, 25],
|
||||
"helf" : [22, 26],
|
||||
"welf" : [],
|
||||
"gnome" : [20,21]
|
||||
},
|
||||
"name": "Marchand"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [22, 23],
|
||||
"dwarf" : [25, 25],
|
||||
"halfling" : [26, 28],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [22,22]
|
||||
},
|
||||
"name": "Ratier"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [24, 26],
|
||||
"dwarf" : [26, 31],
|
||||
"halfling" : [29, 31],
|
||||
"helf" : [27, 28],
|
||||
"welf" : [],
|
||||
"gnome" : [23,28]
|
||||
},
|
||||
"name": "Bourgeois"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [27, 27],
|
||||
"dwarf" : [32, 34],
|
||||
"halfling" : [32, 33],
|
||||
"helf" : [29, 29],
|
||||
"welf" : [],
|
||||
"gnome" : [29,29]
|
||||
},
|
||||
"name": "Milicien"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [28, 28],
|
||||
"dwarf" : [35, 36],
|
||||
"halfling" : [34, 34],
|
||||
"helf" : [30, 31],
|
||||
"welf" : [11, 14],
|
||||
"gnome" : [30,30]
|
||||
},
|
||||
"name": "Conseiller"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [29, 29],
|
||||
"dwarf" : [37, 37],
|
||||
"halfling" : [35, 36],
|
||||
"helf" : [32, 32],
|
||||
"welf" : [15, 18],
|
||||
"gnome" : [31,31]
|
||||
},
|
||||
"name": "Artiste"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [30, 30],
|
||||
"dwarf" : [38, 38],
|
||||
"halfling" : [],
|
||||
"helf" : [33, 34],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Duelliste"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [31, 31],
|
||||
"dwarf" : [39, 40],
|
||||
"halfling" : [37, 37],
|
||||
"helf" : [35, 37],
|
||||
"welf" : [19, 25],
|
||||
"gnome" : [32,32]
|
||||
},
|
||||
"name": "Emissaire"
|
||||
}, {
|
||||
"range":{
|
||||
"human-reiklander" : [32, 32],
|
||||
"dwarf" : [41, 41],
|
||||
"halfling" : [],
|
||||
"helf" : [38, 40],
|
||||
"welf" : [26, 31],
|
||||
"gnome" : [33,33]
|
||||
},
|
||||
"name": "Noble"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human-reiklander" : [33, 35],
|
||||
"dwarf" : [42, 42],
|
||||
"halfling" : [38, 43],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [34,35]
|
||||
},
|
||||
"name": "Serviteur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [36, 36],
|
||||
"dwarf" : [43, 43],
|
||||
"halfling" : [44, 44],
|
||||
"helf" : [41, 43],
|
||||
"welf" : [32, 35],
|
||||
"gnome" : [36,40]
|
||||
},
|
||||
"name": "Espion"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [37, 37],
|
||||
"dwarf" : [44, 45],
|
||||
"halfling" : [45, 46],
|
||||
"helf" : [44, 45],
|
||||
"welf" : [],
|
||||
"gnome" : [41,42]
|
||||
},
|
||||
"name": "Intendant"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [38, 38],
|
||||
"dwarf" : [46, 47],
|
||||
"halfling" : [47, 47],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [43,43]
|
||||
},
|
||||
"name": "Bailli"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [39, 39],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Sorcier de village"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [40, 40],
|
||||
"dwarf" : [],
|
||||
"halfling" : [48, 50],
|
||||
"helf" : [46, 47],
|
||||
"welf" : [36, 42],
|
||||
"gnome" : [44,44]
|
||||
},
|
||||
"name": "Herboriste"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [41, 42],
|
||||
"dwarf" : [48, 49],
|
||||
"halfling" : [51, 52],
|
||||
"helf" : [48, 50],
|
||||
"welf" : [43, 52],
|
||||
"gnome" : [45,46]
|
||||
},
|
||||
"name": "Chasseur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [43, 43],
|
||||
"dwarf" : [50, 54],
|
||||
"halfling" : [53, 53],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [47,54]
|
||||
},
|
||||
"name": "Mineur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [44, 44],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [53, 57],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Mystique"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [45, 45],
|
||||
"dwarf" : [55, 55],
|
||||
"halfling" : [54, 54],
|
||||
"helf" : [51, 56],
|
||||
"welf" : [58, 68],
|
||||
"gnome" : [55,58]
|
||||
},
|
||||
"name": "Eclaireur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [46, 50],
|
||||
"dwarf" : [56, 56],
|
||||
"halfling" : [55, 57],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [59,62]
|
||||
},
|
||||
"name": "Villageois"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [51, 51],
|
||||
"dwarf" : [57, 60],
|
||||
"halfling" : [58, 58],
|
||||
"helf" : [57, 59],
|
||||
"welf" : [69, 70],
|
||||
"gnome" : [63,63]
|
||||
},
|
||||
"name": "Chasseur de primes"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [52, 52],
|
||||
"dwarf" : [61, 61],
|
||||
"halfling" : [59, 60],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Cocher"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [53, 54],
|
||||
"dwarf" : [62, 63],
|
||||
"halfling" : [61, 63],
|
||||
"helf" : [60, 62],
|
||||
"welf" : [71, 75],
|
||||
"gnome" : [64,68]
|
||||
},
|
||||
"name": "Saltimbanque"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [55, 56],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Flagellant"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [57, 57],
|
||||
"dwarf" : [64, 65],
|
||||
"halfling" : [64, 65],
|
||||
"helf" : [63, 63],
|
||||
"welf" : [76, 78],
|
||||
"gnome" : [69,69]
|
||||
},
|
||||
"name": "Messager"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [58, 58],
|
||||
"dwarf" : [66, 67],
|
||||
"halfling" : [66, 67],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [70,75]
|
||||
},
|
||||
"name": "Colporteur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [59, 59],
|
||||
"dwarf" : [],
|
||||
"halfling" : [68, 68],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Patrouilleur routier"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [60, 60],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Répurgateur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [61, 62],
|
||||
"dwarf" : [68, 69],
|
||||
"halfling" : [69, 69],
|
||||
"helf" : [64, 64],
|
||||
"welf" : [],
|
||||
"gnome" : [76,76]
|
||||
},
|
||||
"name": "Batelier"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [63, 63],
|
||||
"dwarf" : [70, 70],
|
||||
"halfling" : [70, 70],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Nautonier"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [64, 65],
|
||||
"dwarf" : [],
|
||||
"halfling" : [71, 71],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [77,80]
|
||||
},
|
||||
"name": "Patrouilleur fluvial"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [66, 68],
|
||||
"dwarf" : [71, 72],
|
||||
"halfling" : [72, 74],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Femme du fleuve"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [69, 70],
|
||||
"dwarf" : [73, 73],
|
||||
"halfling" : [75, 75],
|
||||
"helf" : [65, 79],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Marin"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [71, 71],
|
||||
"dwarf" : [74, 75],
|
||||
"halfling" : [76, 79],
|
||||
"helf" : [80, 80],
|
||||
"welf" : [],
|
||||
"gnome" : [81,83]
|
||||
},
|
||||
"name": "Contrebandier"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [72, 73],
|
||||
"dwarf" : [76, 77],
|
||||
"halfling" : [80, 82],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Débardeur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [74, 74],
|
||||
"dwarf" : [78, 78],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [79, 79],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Naufrageur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [75, 76],
|
||||
"dwarf" : [],
|
||||
"halfling" : [83, 85],
|
||||
"helf" : [81, 82],
|
||||
"welf" : [],
|
||||
"gnome" : [84,85]
|
||||
},
|
||||
"name": "Entremetteur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [77, 77],
|
||||
"dwarf" : [],
|
||||
"halfling" : [86, 86],
|
||||
"helf" : [83, 85],
|
||||
"welf" : [],
|
||||
"gnome" : [86,90]
|
||||
},
|
||||
"name": "Charlatan"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [78, 78],
|
||||
"dwarf" : [79, 79],
|
||||
"halfling" : [87, 87],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [91,91]
|
||||
},
|
||||
"name": "Receleur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [79, 79],
|
||||
"dwarf" : [],
|
||||
"halfling" : [88, 88],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Pilleur de tombes"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [80, 83],
|
||||
"dwarf" : [80, 82],
|
||||
"halfling" : [89, 89],
|
||||
"helf" : [86, 88],
|
||||
"welf" : [80, 85],
|
||||
"gnome" : [92,92]
|
||||
},
|
||||
"name": "Hors-la-Loi"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [84, 84],
|
||||
"dwarf" : [83, 83],
|
||||
"halfling" : [90, 90],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [93,94]
|
||||
},
|
||||
"name": "Rançonneur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [85, 87],
|
||||
"dwarf" : [84, 84],
|
||||
"halfling" : [91, 94],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [95,97]
|
||||
},
|
||||
"name": "Voleur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [88, 88],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Sorcier sauvage"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [89, 90],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [89, 92],
|
||||
"welf" : [86, 90],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Cavalier"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human-reiklander" : [91, 92],
|
||||
"dwarf" : [85, 87],
|
||||
"halfling" : [95, 96],
|
||||
"helf" : [93, 94],
|
||||
"welf" : [91, 92],
|
||||
"gnome" : [98,98]
|
||||
},
|
||||
"name": "Garde"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [93, 93],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [95, 95],
|
||||
"welf" : [93, 94],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Chevalier"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [94, 94],
|
||||
"dwarf" : [88, 90],
|
||||
"halfling" : [97, 97],
|
||||
"helf" : [96, 97],
|
||||
"welf" : [95, 96],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Gladiateur"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [95, 95],
|
||||
"dwarf" : [91, 93],
|
||||
"halfling" : [],
|
||||
"helf" : [98, 98],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Spadassin"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [96, 99],
|
||||
"dwarf" : [94, 96],
|
||||
"halfling" : [98, 100],
|
||||
"helf" : [99, 100],
|
||||
"welf" : [97, 100],
|
||||
"gnome" : [99,99]
|
||||
},
|
||||
"name": "Soldat"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [],
|
||||
"dwarf" : [97, 100],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : []
|
||||
},
|
||||
"name": "Tueur Nains"
|
||||
},{
|
||||
"range":{
|
||||
"human-reiklander" : [100, 100],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"helf" : [],
|
||||
"welf" : [],
|
||||
"gnome" : [100,100]
|
||||
},
|
||||
"name": "Prêtre Guerrier"
|
||||
}
|
||||
]
|
||||
}
|
650
tables/career_gnome.json
Normal file
650
tables/career_gnome.json
Normal file
@ -0,0 +1,650 @@
|
||||
{
|
||||
"name": "Carrière aléatoire",
|
||||
"columns": ["human", "dwarf", "halfling", "gnome", "helf", "welf"],
|
||||
"rows": [
|
||||
{
|
||||
"range":{
|
||||
"human" : [1, 1],
|
||||
"dwarf" : [1, 1],
|
||||
"halfling" : [1, 1],
|
||||
"gnome" : [1, 1],
|
||||
"helf" : [1, 2],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Apothicaire"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human" : [2, 2],
|
||||
"dwarf" : [2, 4],
|
||||
"halfling" : [2, 2],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Ingénieur"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [3, 3],
|
||||
"dwarf" : [5, 6],
|
||||
"halfling" : [3, 4],
|
||||
"gnome" : [2, 2],
|
||||
"helf" : [3, 6],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Juriste"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [4, 5],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Nonne"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [6, 6],
|
||||
"dwarf" : [7, 7],
|
||||
"halfling" : [5, 6],
|
||||
"gnome" : [3, 4],
|
||||
"helf" : [7, 8],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Médecin"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [7, 11],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [5, 5],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Prêtre"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [12, 13],
|
||||
"dwarf" : [8, 9],
|
||||
"halfling" : [7, 8],
|
||||
"gnome" : [6, 7],
|
||||
"helf" : [9, 12],
|
||||
"welf" : [1, 1]
|
||||
},
|
||||
"name": "Erudit"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [14, 14],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [8, 14],
|
||||
"helf" : [13, 16],
|
||||
"welf" : [2, 5]
|
||||
},
|
||||
"name": "Sorcier"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [15, 15],
|
||||
"dwarf" : [10, 11],
|
||||
"halfling" : [9, 10],
|
||||
"gnome" : [15, 15],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Agitateur"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [16, 17],
|
||||
"dwarf" : [12, 17],
|
||||
"halfling" : [11, 15],
|
||||
"gnome" : [16, 17],
|
||||
"helf" : [17, 19],
|
||||
"welf" : [6, 10]
|
||||
},
|
||||
"name": "Artisan"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [18, 19],
|
||||
"dwarf" : [18, 18],
|
||||
"halfling" : [16, 19],
|
||||
"gnome" : [18, 18],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Mendiant"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [20, 20],
|
||||
"dwarf" : [19, 20],
|
||||
"halfling" : [20, 21],
|
||||
"gnome" : [19, 19],
|
||||
"helf" : [20, 21],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Enquêteur"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [21, 21],
|
||||
"dwarf" : [21, 24],
|
||||
"halfling" : [22, 25],
|
||||
"gnome" : [20, 21],
|
||||
"helf" : [22, 26],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Marchand"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [22, 23],
|
||||
"dwarf" : [25, 25],
|
||||
"halfling" : [26, 28],
|
||||
"gnome" : [22, 22],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Ratier"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [24, 26],
|
||||
"dwarf" : [26, 31],
|
||||
"halfling" : [29, 31],
|
||||
"gnome" : [23, 28],
|
||||
"helf" : [27, 28],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Bourgeois"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [27, 27],
|
||||
"dwarf" : [32, 34],
|
||||
"halfling" : [32, 33],
|
||||
"gnome" : [29, 29],
|
||||
"helf" : [29, 29],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Milicien"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [28, 28],
|
||||
"dwarf" : [35, 36],
|
||||
"halfling" : [34, 34],
|
||||
"gnome" : [30, 30],
|
||||
"helf" : [30, 31],
|
||||
"welf" : [11, 14]
|
||||
},
|
||||
"name": "Conseiller"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [29, 29],
|
||||
"dwarf" : [37, 37],
|
||||
"halfling" : [35, 36],
|
||||
"gnome" : [31, 31],
|
||||
"helf" : [32, 32],
|
||||
"welf" : [15, 18]
|
||||
},
|
||||
"name": "Artiste"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [30, 30],
|
||||
"dwarf" : [38, 38],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [33, 34],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Duelliste"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [31, 31],
|
||||
"dwarf" : [39, 40],
|
||||
"halfling" : [37, 37],
|
||||
"gnome" : [32, 32],
|
||||
"helf" : [35, 37],
|
||||
"welf" : [19, 25]
|
||||
},
|
||||
"name": "Emissaire"
|
||||
}, {
|
||||
"range":{
|
||||
"human" : [32, 32],
|
||||
"dwarf" : [41, 41],
|
||||
"halfling" : [],
|
||||
"gnome" : [33, 33],
|
||||
"helf" : [38, 40],
|
||||
"welf" : [26, 31]
|
||||
},
|
||||
"name": "Noble"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human" : [33, 35],
|
||||
"dwarf" : [42, 42],
|
||||
"halfling" : [38, 43],
|
||||
"gnome" : [34, 35],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Serviteur"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [36, 36],
|
||||
"dwarf" : [43, 43],
|
||||
"halfling" : [44, 44],
|
||||
"gnome" : [36, 40],
|
||||
"helf" : [41, 43],
|
||||
"welf" : [32, 35]
|
||||
},
|
||||
"name": "Espion"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [37, 37],
|
||||
"dwarf" : [44, 45],
|
||||
"halfling" : [45, 46],
|
||||
"gnome" : [41, 42],
|
||||
"helf" : [44, 45],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Intendant"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [38, 38],
|
||||
"dwarf" : [46, 47],
|
||||
"halfling" : [47, 47],
|
||||
"gnome" : [43, 43],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Bailli"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [39, 39],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Sorcier de Village"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [40, 40],
|
||||
"dwarf" : [],
|
||||
"halfling" : [48, 50],
|
||||
"gnome" : [44, 44],
|
||||
"helf" : [46, 47],
|
||||
"welf" : [36, 42]
|
||||
},
|
||||
"name": "Herboriste"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [41, 42],
|
||||
"dwarf" : [48, 49],
|
||||
"halfling" : [51, 52],
|
||||
"gnome" : [45, 46],
|
||||
"helf" : [48, 50],
|
||||
"welf" : [43, 52]
|
||||
},
|
||||
"name": "Chasseur"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [43, 43],
|
||||
"dwarf" : [50, 54],
|
||||
"halfling" : [53, 53],
|
||||
"gnome" : [47, 54],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Miner"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [44, 44],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : [53, 57]
|
||||
},
|
||||
"name": "Mystic"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [45, 45],
|
||||
"dwarf" : [55, 55],
|
||||
"halfling" : [54, 54],
|
||||
"gnome" : [55, 58],
|
||||
"helf" : [51, 56],
|
||||
"welf" : [58, 68]
|
||||
},
|
||||
"name": "Scout"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [46, 50],
|
||||
"dwarf" : [56, 56],
|
||||
"halfling" : [55, 57],
|
||||
"gnome" : [59, 62],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Villager"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [51, 51],
|
||||
"dwarf" : [57, 60],
|
||||
"halfling" : [58, 58],
|
||||
"gnome" : [63, 63],
|
||||
"helf" : [57, 59],
|
||||
"welf" : [69, 70]
|
||||
},
|
||||
"name": "Bounty Hunter"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [52, 52],
|
||||
"dwarf" : [61, 61],
|
||||
"halfling" : [59, 60],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Coachman"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [53, 54],
|
||||
"dwarf" : [62, 63],
|
||||
"halfling" : [61, 63],
|
||||
"gnome" : [64, 68],
|
||||
"helf" : [60, 62],
|
||||
"welf" : [71, 75]
|
||||
},
|
||||
"name": "Entertainer"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [55, 56],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Flagellant"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [57, 57],
|
||||
"dwarf" : [64, 65],
|
||||
"halfling" : [64, 65],
|
||||
"gnome" : [69, 69],
|
||||
"helf" : [63, 63],
|
||||
"welf" : [76, 78]
|
||||
},
|
||||
"name": "Messenger"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [58, 58],
|
||||
"dwarf" : [66, 67],
|
||||
"halfling" : [66, 67],
|
||||
"gnome" : [70, 75],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Pedlar"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [59, 59],
|
||||
"dwarf" : [],
|
||||
"halfling" : [68, 68],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Road Warden"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [60, 60],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Witch Hunter"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [61, 62],
|
||||
"dwarf" : [68, 69],
|
||||
"halfling" : [69, 69],
|
||||
"gnome" : [76, 76],
|
||||
"helf" : [64, 64],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Boatman"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [63, 63],
|
||||
"dwarf" : [70, 70],
|
||||
"halfling" : [70, 70],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Huffer"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [64, 65],
|
||||
"dwarf" : [],
|
||||
"halfling" : [71, 71],
|
||||
"gnome" : [77, 80],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Riverwarden"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [66, 68],
|
||||
"dwarf" : [71, 72],
|
||||
"halfling" : [72, 74],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Riverwoman"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [69, 70],
|
||||
"dwarf" : [73, 73],
|
||||
"halfling" : [75, 75],
|
||||
"gnome" : [],
|
||||
"helf" : [65, 79],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Seaman"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [71, 71],
|
||||
"dwarf" : [74, 75],
|
||||
"halfling" : [76, 79],
|
||||
"gnome" : [81, 83],
|
||||
"helf" : [80, 80],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Smuggler"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [72, 73],
|
||||
"dwarf" : [76, 77],
|
||||
"halfling" : [80, 82],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Stevedore"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [74, 74],
|
||||
"dwarf" : [78, 78],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : [79, 79]
|
||||
},
|
||||
"name": "Wrecker"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [75, 76],
|
||||
"dwarf" : [],
|
||||
"halfling" : [83, 85],
|
||||
"gnome" : [84, 85],
|
||||
"helf" : [81, 82],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Bawd"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [77, 77],
|
||||
"dwarf" : [],
|
||||
"halfling" : [86, 86],
|
||||
"gnome" : [86, 90],
|
||||
"helf" : [83, 85],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Charlatan"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [78, 78],
|
||||
"dwarf" : [79, 79],
|
||||
"halfling" : [87, 87],
|
||||
"gnome" : [91, 91],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Fence"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [79, 79],
|
||||
"dwarf" : [],
|
||||
"halfling" : [88, 88],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Grave Robber"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [80, 83],
|
||||
"dwarf" : [80, 82],
|
||||
"halfling" : [89, 89],
|
||||
"gnome" : [92, 92],
|
||||
"helf" : [86, 88],
|
||||
"welf" : [80, 85]
|
||||
},
|
||||
"name": "Outlaw"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [84, 84],
|
||||
"dwarf" : [83, 83],
|
||||
"halfling" : [90, 90],
|
||||
"gnome" : [93, 94],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Racketeer"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [85, 87],
|
||||
"dwarf" : [84, 84],
|
||||
"halfling" : [91, 94],
|
||||
"gnome" : [95, 97],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Thief"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [88, 88],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Witch"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [89, 90],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [89, 92],
|
||||
"welf" : [86, 90]
|
||||
},
|
||||
"name": "Cavalryman"
|
||||
},
|
||||
{
|
||||
"range":{
|
||||
"human" : [91, 92],
|
||||
"dwarf" : [85, 87],
|
||||
"halfling" : [95, 96],
|
||||
"gnome" : [98, 98],
|
||||
"helf" : [93, 94],
|
||||
"welf" : [91, 92]
|
||||
},
|
||||
"name": "Guard"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [93, 93],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [95, 95],
|
||||
"welf" : [93, 94]
|
||||
},
|
||||
"name": "Knight"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [94, 94],
|
||||
"dwarf" : [88, 90],
|
||||
"halfling" : [97, 97],
|
||||
"gnome" : [],
|
||||
"helf" : [96, 97],
|
||||
"welf" : [95, 96]
|
||||
},
|
||||
"name": "Pit Fighter"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [95, 95],
|
||||
"dwarf" : [91, 93],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [98, 98],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Protagonist"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [96, 99],
|
||||
"dwarf" : [94, 96],
|
||||
"halfling" : [98, 100],
|
||||
"gnome" : [99, 99],
|
||||
"helf" : [99, 100],
|
||||
"welf" : [97, 100]
|
||||
},
|
||||
"name": "Soldier"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [],
|
||||
"dwarf" : [97, 100],
|
||||
"halfling" : [],
|
||||
"gnome" : [],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Slayer"
|
||||
},{
|
||||
"range":{
|
||||
"human" : [100, 100],
|
||||
"dwarf" : [],
|
||||
"halfling" : [],
|
||||
"gnome" : [100, 100],
|
||||
"helf" : [],
|
||||
"welf" : []
|
||||
},
|
||||
"name": "Warrior Priest"
|
||||
}
|
||||
]
|
||||
}
|
@ -1,70 +1,70 @@
|
||||
{
|
||||
"name": "Contenu des pièces du chateau",
|
||||
"name": "Castle Room Contents",
|
||||
"hide" : true,
|
||||
"die": "1d100",
|
||||
"rows": [
|
||||
{
|
||||
"description": "Armures/Armes (cassées/rouillées)",
|
||||
"description": "Armour/weapons (broken/rusted)",
|
||||
"range": [1,5]
|
||||
},
|
||||
{
|
||||
"description": "Tonneaux - Bière, Farine, Brandy, Huile, Sel, etc.",
|
||||
"description": "Barrel – beer, flour, brandy, oil, salt, etc.",
|
||||
"range": [6,10]
|
||||
},
|
||||
{
|
||||
"description": "Literie – couvertures, draps, matelas, etc.",
|
||||
"description": "Bedding – rugs, sheets, blankets, straw, etc.",
|
||||
"range": [11,15]
|
||||
},
|
||||
{
|
||||
"description": "Boites – caseroles, coutellerie, pots, outils, etc.",
|
||||
"description": "Box – crockery, cutlery, pots & pans, tools, etc.",
|
||||
"range": [16,20]
|
||||
},
|
||||
{
|
||||
"description": "Balais",
|
||||
"description": "Broom",
|
||||
"range": [21,25]
|
||||
},
|
||||
{
|
||||
"description": "Seau – eau, lait, sable, acide, etc.",
|
||||
"description": "Bucket – water, milk, sand, acid, etc.",
|
||||
"range": [26,30]
|
||||
},
|
||||
{
|
||||
"description": "Chandelles/Lampes",
|
||||
"description": "Candles/lamps",
|
||||
"range": [31,35]
|
||||
},
|
||||
{
|
||||
"description": "Chaises – fauteuil, chaise longue, sofa, tavouret, etc.",
|
||||
"description": "Chair – armchair, chaise longue, sofa, stool, etc.",
|
||||
"range": [36,40]
|
||||
},
|
||||
{
|
||||
"description": "Pot de Chambre",
|
||||
"description": "Chamber pot",
|
||||
"range": [41,45]
|
||||
},
|
||||
{
|
||||
"description": "Coffre à Vêtements",
|
||||
"description": "Chest of Clothes",
|
||||
"range": [46,50]
|
||||
},
|
||||
{
|
||||
"description": "Porte-Flambeaux",
|
||||
"description": "Cressets (torch-holders)",
|
||||
"range": [51,55]
|
||||
},
|
||||
{
|
||||
"description": "Bois de chauffage/Bûches",
|
||||
"description": "Firewood/rushes",
|
||||
"range": [56,60]
|
||||
},
|
||||
{
|
||||
"description": "Instrument de musique - tambour, flutes, etc.",
|
||||
"description": "Musical instrument – drums, pipes, etc.",
|
||||
"range": [61,65]
|
||||
},
|
||||
{
|
||||
"description": "Tableaux – scènes historiques, vue du chateau, portraits, paysages, etc.",
|
||||
"description": "Painting – historic scenes, castle views, portraits, landscapes, etc.",
|
||||
"range": [66,70]
|
||||
},
|
||||
{
|
||||
"description": "Sacs – farine, grain, etc.",
|
||||
"description": "Sacks – flour, grain, etc.",
|
||||
"range": [71,75]
|
||||
},
|
||||
{
|
||||
"description": "Etagères – livres, décorations, etc.",
|
||||
"description": "Shelves – books, ornaments, etc.",
|
||||
"range": [76,80]
|
||||
},
|
||||
{
|
||||
@ -72,15 +72,15 @@
|
||||
"range": [81,85]
|
||||
},
|
||||
{
|
||||
"description": "Table – diner, écritoire, de chevet, à jouer, établi, cassé, etc.",
|
||||
"description": "Table – dining, writing, bedside, card, workbench, bloodstained, broken, etc.",
|
||||
"range": [86,90]
|
||||
},
|
||||
{
|
||||
"description": "Tapisserie – voir Tableaux",
|
||||
"description": "Tapestry – see Painting",
|
||||
"range": [91,95]
|
||||
},
|
||||
{
|
||||
"description": "Garde robe - vêtements, chaussures, sous-vêtements, etc.",
|
||||
"description": "Wardrobe – with clothes, shoes, underwear, etc.",
|
||||
"range": [96,100]
|
||||
}
|
||||
]
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Effets des Vers Sous-terrains",
|
||||
"name": "Cavity Worms Effect",
|
||||
"die": "1d10",
|
||||
"hide": true,
|
||||
"rows": [
|
||||
@ -12,19 +12,19 @@
|
||||
"range": [3,4]
|
||||
},
|
||||
{
|
||||
"description": "-[[1d10]] Force Mentale",
|
||||
"description": "-[[1d10]] Willpower",
|
||||
"range": [5,6]
|
||||
},
|
||||
{
|
||||
"description": "-[[1d10]] Soc.",
|
||||
"description": "-[[1d10]] Fellowship",
|
||||
"range": [7,8]
|
||||
},
|
||||
{
|
||||
"description": "@Compendium[wfrp4e-core.traits.IPKRMGry6WotuS1G]{Nerveux}",
|
||||
"description": "@Compendium[wfrp4e-core.traits.IPKRMGry6WotuS1G]{Skittish}",
|
||||
"range": [9,9]
|
||||
},
|
||||
{
|
||||
"description": "@Compendium[wfrp4e-core.traits.9GNpAqgsKzxZKJpp]{Stupide}",
|
||||
"description": "@Compendium[wfrp4e-core.traits.9GNpAqgsKzxZKJpp]{Stupid}",
|
||||
"range": [10,10]
|
||||
},
|
||||
{
|
||||
@ -32,7 +32,7 @@
|
||||
"range": [11,12]
|
||||
},
|
||||
{
|
||||
"description": "Mort",
|
||||
"description": "Death",
|
||||
"range": [13,13]
|
||||
}
|
||||
]
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Trait Démonique",
|
||||
"name": "Demonic Mien",
|
||||
"die": "1d10",
|
||||
"columns": [
|
||||
"Nurgle",
|
||||
@ -61,7 +61,7 @@
|
||||
"Tzeentch": [4,4],
|
||||
"Commun": [5,5]
|
||||
},
|
||||
"Description": "@Compendium[wfrp4e-core.traits.pTorrE0l3VybAbtn]{Peur (3)}"
|
||||
"Description": "@Compendium[wfrp4e.traits.pTorrE0l3VybAbtn]{Peur (3)}"
|
||||
},
|
||||
{
|
||||
"range": {
|
||||
|
202
tables/doom.json
202
tables/doom.json
@ -1,702 +1,702 @@
|
||||
{
|
||||
"name": "Destinée",
|
||||
"name": "Dooming",
|
||||
"die": "1d100",
|
||||
"rows": [
|
||||
{
|
||||
"description": "Le mot « sorcières » signera ton destin.",
|
||||
"description": "The witches word shall write your doom.",
|
||||
"range": [
|
||||
1,
|
||||
1
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La chaleur d’une boisson sera semblable à celle du sang suintant d’une blessure.",
|
||||
"description": "The warmth of drink shall be blood welling from the wound.",
|
||||
"range": [
|
||||
2,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Les friandises et le miel seront pour toi comme le sang et les pustules.",
|
||||
"description": "Sweets and honey are to thee as blood and boils.",
|
||||
"range": [
|
||||
3,
|
||||
3
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie-toi de ce qui se dissimule sous les ruchés et les plis des vêtements.",
|
||||
"description": "Beware of what hides in folds and ruffles.",
|
||||
"range": [
|
||||
4,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Un pied sûr est signe de longue vie.",
|
||||
"description": "A sure foot is a life continued.",
|
||||
"range": [
|
||||
5,
|
||||
5
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Celui dont l’esprit s’attarde demeure dans le monde des rêves.",
|
||||
"description": "Thou mind lingers overlong in the land of dreams.",
|
||||
"range": [
|
||||
6,
|
||||
6
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N'oublie ni le nom de ta mère, ni le visage de ton père.",
|
||||
"description": "Forget not the word of thou mother, nor yet the face of thou father.",
|
||||
"range": [
|
||||
7,
|
||||
7
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Une âme faible sera livrée aux ténèbres.",
|
||||
"description": "To darkness shall a light soul be delivered.",
|
||||
"range": [
|
||||
8,
|
||||
8
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Pince fermement ton nez, de crainte que la puanteur de la mort n’y pénètre.",
|
||||
"description": "Pinch closed thine nose lest the stench of death find its home.",
|
||||
"range": [
|
||||
9,
|
||||
9
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La mort se regroupe sous les nuages sombres.",
|
||||
"description": "Death gathers under dark clouds.",
|
||||
"range": [
|
||||
10,
|
||||
10
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N’ouvre pas si l'on ne frappe qu’une fois à la porte.",
|
||||
"description": "Open not the door knocked but once.",
|
||||
"range": [
|
||||
11,
|
||||
11
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne marche pas sur les racines des arbres.",
|
||||
"description": "Tread not upon the roots of trees.",
|
||||
"range": [
|
||||
12,
|
||||
12
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Une sonnerie : paix. Une seconde sonnerie : plaisir. Une troisième : damnation",
|
||||
"description": "It ringeth once: peace. It ringeth twice: pleasure. It ringeth thrice: damnation.",
|
||||
"range": [
|
||||
13,
|
||||
13
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne crains pas la sorcière, mais évite le Répurgateur.",
|
||||
"description": "Fear not the witch, but cower before the witch hunter.",
|
||||
"range": [
|
||||
14,
|
||||
14
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L'heure de ta mort sonnera lorsque la glace brûlera et que le feu gèlera.",
|
||||
"description": "When ice burns and fire freezes, then shall be the hour of your death.",
|
||||
"range": [
|
||||
15,
|
||||
15
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne tolère pas les balances à l'équilibre.",
|
||||
"description": "Suffer not the scales in balance.",
|
||||
"range": [
|
||||
16,
|
||||
16
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Fais attention aux gouttières et aux canalisations car elles forment une frontière entre les mondes.",
|
||||
"description": "Beware gutters and drains for they are the edge between worlds.",
|
||||
"range": [
|
||||
17,
|
||||
17
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le Père Morr faccueillera 1orsqu’une nouvelle vie hurlera.",
|
||||
"description": "As new life cries out, Father Morr shall welcome thee.",
|
||||
"range": [
|
||||
18,
|
||||
18
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Attention au corbeau qui s’attarde un peu trop.",
|
||||
"description": "Beware the raven that lingers overlong.",
|
||||
"range": [
|
||||
19,
|
||||
19
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N'entends tu pas les limiers dans le son des pièces de cuivre ?",
|
||||
"description": "Can you not hear the hounds in the clinking of brass coins?",
|
||||
"range": [
|
||||
20,
|
||||
20
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Lorsque la bête baisse le col, la mort n'est pas bien loin.",
|
||||
"description": "When the beast bows its head, death shall be close behind.",
|
||||
"range": [
|
||||
21,
|
||||
21
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne consomme pas la chair de bêtes aux sabots fendus, car elle aura toujours un goût de cendres dans ta bouche.",
|
||||
"description": "Discard the meat of the hoofed beast — it shall be ever ash in your mouth!",
|
||||
"range": [
|
||||
22,
|
||||
22
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne fais pas confiance aux signes de Ranald.",
|
||||
"description": "Trust not the signs of Ranald.",
|
||||
"range": [
|
||||
23,
|
||||
23
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne regarde pas plus d'une fois dans le miroir, car ce qui regardera en second viendra faire une requête.",
|
||||
"description": "Look but once into the mirror’s frame, for what stares out second shall come to claim.",
|
||||
"range": [
|
||||
24,
|
||||
24
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ta mort surviendra dans un terrier infesté.",
|
||||
"description": "Thy death shall be found in a festering warren.",
|
||||
"range": [
|
||||
25,
|
||||
25
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie-toi des Hommes qui marchent comme des Bêtes. Méfie—toi des Bêtes qui marchent comme des Hommes.",
|
||||
"description": "Beware the Men that walk as Beasts. Beware the Beasts that walk as Men.",
|
||||
"range": [
|
||||
26,
|
||||
26
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N'entre pas dans les maisons des dieux, car ils connaissent ton nom et ne t'accueilleront pas avec bienveillance.",
|
||||
"description": "Step not into the houses of the Gods, for they know your name and welcome you not.",
|
||||
"range": [
|
||||
27,
|
||||
27
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie—toi du lit qui n’appartient à personne.",
|
||||
"description": "Beware the bed who holds no owner.",
|
||||
"range": [
|
||||
28,
|
||||
28
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tous les plaisirs de la chair ne seront que des lames dans ton dos.",
|
||||
"description": "All the pleasures of the flesh shall be as knives in your back.",
|
||||
"range": [
|
||||
29,
|
||||
29
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne laisse personne te réveiller, de peur de ce qui s’ensuivra.",
|
||||
"description": "Let no one wake thee, for fear of what may follow.",
|
||||
"range": [
|
||||
30,
|
||||
30
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le chagrin découle de culottes souillées.",
|
||||
"description": "Sorrow stems from soiled breeches.",
|
||||
"range": [
|
||||
31,
|
||||
31
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ta mort sera laide et proviendra de la laideur.",
|
||||
"description": "Thy death will be ugly, and will be born of ugliness.",
|
||||
"range": [
|
||||
32,
|
||||
32
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne tiens pas compte des ingénieurs, car leurs artifices n’engendrent que le malheur.",
|
||||
"description": "Heed not the engineer, for their artifice brings only suffering.",
|
||||
"range": [
|
||||
33,
|
||||
33
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie—toi de la femme sans nom, elle cache bien pire dans son cœur.",
|
||||
"description": "Trust not the woman who gives no name, for she hides far worse within her heart.",
|
||||
"range": [
|
||||
34,
|
||||
34
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Retiens ton souflîe sous la lumière de Morrsleib, sinon la noirceur s’enracinera dans ton âme.",
|
||||
"description": "Hold thou breath under Morrsleib’s light, lest darkness take root in thou soul.",
|
||||
"range": [
|
||||
35,
|
||||
35
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ta première gorgée de bière sera la dernière.",
|
||||
"description": "Thou first sip of beer shall be thine last.",
|
||||
"range": [
|
||||
36,
|
||||
36
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie-toi de la bourse qui déborde.",
|
||||
"description": "Beware the purse that floweth over.",
|
||||
"range": [
|
||||
37,
|
||||
37
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Morr te tendra un piège et remportera dans son ombre.",
|
||||
"description": "Morr shall fly a false flag, and in its shade take thee to rest.",
|
||||
"range": [
|
||||
38,
|
||||
38
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Sur des sables lumineux, des promesses et du sang.",
|
||||
"description": "Upon bright sands is both promise and blood.",
|
||||
"range": [
|
||||
39,
|
||||
39
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Crains les terres dépourvues du cri de la mouette.",
|
||||
"description": "Fear the land bereft of the gull’s cry.",
|
||||
"range": [
|
||||
40,
|
||||
40
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Si tes yeux se ferment sur la connaissance de l'injustice, tu ne les rouvriras pas.",
|
||||
"description": "If thine eyes close with knowledge of the unjust, they shall never again open.",
|
||||
"range": [
|
||||
41,
|
||||
41
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ton trépas ne sera pas pleuré, il passera inaperçu et personne ne s’en souviendra.",
|
||||
"description": "Thy passing shall go unmourned, unremembered, and unremarked.",
|
||||
"range": [
|
||||
42,
|
||||
42
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne fais pas confiance aux diverses nuances de violet.",
|
||||
"description": "Trust not in shades of purple.",
|
||||
"range": [
|
||||
43,
|
||||
43
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu seras l’unique à te noyer sur terre et non dans la mer.",
|
||||
"description": "Never before was there one such as thee, who drowned on land and not at sea.",
|
||||
"range": [
|
||||
44,
|
||||
44
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu ne survivras que tant que tu seras sous le regard d'amis.",
|
||||
"description": "Thou shall live only whilst beholden to friends.",
|
||||
"range": [
|
||||
45,
|
||||
45
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Un esprit oisif est un festin pour la Ruine.",
|
||||
"description": "An idle mind is a feast for Ruin.",
|
||||
"range": [
|
||||
46,
|
||||
46
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu pourras très certainement mourir d'une cause mineure.",
|
||||
"description": "Thou most certainly can die from such a small thing.",
|
||||
"range": [
|
||||
47,
|
||||
47
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Attention à ton esprit car il parle à l’âme de l'invincibilité.",
|
||||
"description": "Beware thou own mind, for it speaks to the soul of invincibility.",
|
||||
"range": [
|
||||
48,
|
||||
48
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne te moque pas des fiatulents, de peur que tes tripes ne se tordent.",
|
||||
"description": "Laugh not in the face of the flatulent lest thou gut twist.",
|
||||
"range": [
|
||||
49,
|
||||
49
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Les chevaux en savent plus qu’ils ne le montrent, mais leur moment de vérité sera celui de ta mort.",
|
||||
"description": "The horses know more than they let slip, but their moment of truth will be thy doom.",
|
||||
"range": [
|
||||
50,
|
||||
50
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne t’attarde pas aux toilettes et ne ferme pas les yeux dans ton bain.",
|
||||
"description": "Linger not upon the privy, nor close thine eyes within the tub.",
|
||||
"range": [
|
||||
51,
|
||||
51
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Lorsque la nuit tombe, les couteaux glissent en silence hors de leur fourreau.",
|
||||
"description": "When night falls, knives move silently from their sheaths.",
|
||||
"range": [
|
||||
52,
|
||||
52
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne laisse pas gronder Yestomac de ton voisin, car la faim se transforme rapidement en meurtre.",
|
||||
"description": "Let not thy neighbour’s belly rumble, for too quickly does hunger become murder.",
|
||||
"range": [
|
||||
53,
|
||||
53
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Dans la brume glacée, tu seras englouti.",
|
||||
"description": "In freezing mist shall thee be swallowed.",
|
||||
"range": [
|
||||
54,
|
||||
54
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne te fie pas aux écrits, car la plume peut être plus acérée qu’une lame.",
|
||||
"description": "Trust not the written word, for the quill cuts deeper than any blade.",
|
||||
"range": [
|
||||
55,
|
||||
55
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu mourras de soif entouré de boissons, de faim au milieu de mets.",
|
||||
"description": "Thou shall die of thirst whilst surrounded by drink, hunger whilst surrounded by food.",
|
||||
"range": [
|
||||
56,
|
||||
56
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Attention au blanchisscur, car l'essoreuse se montrera à la hauteur de sa réputation.",
|
||||
"description": "Beware the launder, for the mangle shall live up to its name.",
|
||||
"range": [
|
||||
57,
|
||||
57
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Lorsque les ombres te survoleront, ne lève pas les yeux sous peine de mourir.",
|
||||
"description": "When the shadows pass overhead, do not look up for fear of death.",
|
||||
"range": [
|
||||
58,
|
||||
58
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le nombre trois marquera ta fin.",
|
||||
"description": "The number three shall end thee.",
|
||||
"range": [
|
||||
59,
|
||||
59
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu flotteras dans l'écume sanglante avant que les vagues ne t'emmènent.",
|
||||
"description": "Thou shall float in a foam of blood before the waves take thee.",
|
||||
"range": [
|
||||
60,
|
||||
60
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne t'endors pas sous les lunes jumelles, car leurs ombres sont longues et profondes.",
|
||||
"description": "Sleep not beneath the twin moons, for their shadows are long and deep.",
|
||||
"range": [
|
||||
61,
|
||||
61
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Evite la pourriture, la moisissure et tout ce qui se putréfie, car tu leur es familier.",
|
||||
"description": "Avoid rot, mould, and all decay, for it knows your name and calls you kin.",
|
||||
"range": [
|
||||
62,
|
||||
62
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne t'assieds pas près de l'âtre d'un boulanger.",
|
||||
"description": "At no baker’s hearth shall ye sit.",
|
||||
"range": [
|
||||
63,
|
||||
63
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu mourras enchaîné à un ami de confiance.",
|
||||
"description": "Thou shall die chained to a trusted friend.",
|
||||
"range": [
|
||||
64,
|
||||
64
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ton destin sera scellé à l'achat de ta liberté.",
|
||||
"description": "When freedom bought, thine end is wrought.",
|
||||
"range": [
|
||||
65,
|
||||
65
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tes os joncheront une terre étrangère.",
|
||||
"description": "Thy bones shall litter a foreign land.",
|
||||
"range": [
|
||||
66,
|
||||
66
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Aucune lance ne te tuera, mais tu aurais préféré ce destin.",
|
||||
"description": "No spear shall end thee, but thou will wish it did.",
|
||||
"range": [
|
||||
67,
|
||||
67
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Attention aux aboiements des limiers, surtout de ceux que tu ne voies pas.",
|
||||
"description": "Beware the barking of hounds, especially whose source you cannot see.",
|
||||
"range": [
|
||||
68,
|
||||
68
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Morr viendra à toi lorsque tu ne verras plus que du bleu.",
|
||||
"description": "Morr comes to thee when blue is all you see.",
|
||||
"range": [
|
||||
69,
|
||||
69
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne regarde pas derrière toi, car ta perte arrive en face.",
|
||||
"description": "Glance not behind, for doom approaches from the front.",
|
||||
"range": [
|
||||
70,
|
||||
70
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne dissimule pas une tache, de peur qu’elle ne suppure sans que tu ne le voies.",
|
||||
"description": "Hide not the blemish lest it fester out of sight.",
|
||||
"range": [
|
||||
71,
|
||||
71
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tes oreilles entendront les rires avant les cris.",
|
||||
"description": "Thine ears shall be filled with laughter before the screams.",
|
||||
"range": [
|
||||
72,
|
||||
72
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne souffre pas que vivent les sorcières, car elles ne souffriront pas que tu survives.",
|
||||
"description": "Suffer not the witch to live, for they shall not suffer thee.",
|
||||
"range": [
|
||||
73,
|
||||
73
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tiens fermement ta coupe à deux mains, de peur que les Puissances de la Ruine ne s’en emparent.",
|
||||
"description": "Hold thy cup in both hands, lest the Ruinous Powers takes up from thee.",
|
||||
"range": [
|
||||
74,
|
||||
74
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La mort ne sera que du sang sur la vigne.",
|
||||
"description": "Death shall be but blood on the vine.",
|
||||
"range": [
|
||||
75,
|
||||
75
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu ne seras tué par aucun guerrier mortel.",
|
||||
"description": "No mortal warrior shall be thine end.",
|
||||
"range": [
|
||||
76,
|
||||
76
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne te fie pas à la solidité des ponts.",
|
||||
"description": "Trust not the strength of bridges.",
|
||||
"range": [
|
||||
77,
|
||||
77
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N’essuie pas les larmes de tes yeux, ce seront les dernières.",
|
||||
"description": "Wipe not the tear from thine eye, for it shall be the last.",
|
||||
"range": [
|
||||
78,
|
||||
78
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le chant des oiseaux sera la dernière chose que tu entendras.",
|
||||
"description": "The songs of birds shall be the last thing you hear.",
|
||||
"range": [
|
||||
79,
|
||||
79
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La dernière mode renferme les toutes nouvelles menaces.",
|
||||
"description": "The latest fashions hold the newest threats.",
|
||||
"range": [
|
||||
80,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tu penseras que la lame à simple tranchant ne peut blesser son porteur, mais tu auras tort.",
|
||||
"description": "Thou thinketh the one-edge blade cannot cut the wielder, but thou wouldst be wrong.",
|
||||
"range": [
|
||||
81,
|
||||
81
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La violence engendre la violence, mais la paix engendre la mort.",
|
||||
"description": "Violence begets violence, but peace begets death.",
|
||||
"range": [
|
||||
82,
|
||||
82
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Les bruits de piétinement marqueront pour toi l'étreinte de Morr.",
|
||||
"description": "The drumming of feet shall see thee to Morr’s embrace.",
|
||||
"range": [
|
||||
83,
|
||||
83
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Une nuit sans chanson précède un matin sans réveil.",
|
||||
"description": "A night without song precedes a morning without waking.",
|
||||
"range": [
|
||||
84,
|
||||
84
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne tire pas de l’eau au puits, de peur qu’il ne t’avale.",
|
||||
"description": "Pluck not water from the well, lest it pluck thee from the earth.",
|
||||
"range": [
|
||||
85,
|
||||
85
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne te fie pas aux chouettes qui hululent, car comme tu ne peux les entendre, tu prêtes en fait l'oreille à tout autre chose.",
|
||||
"description": "Trust not the hooting owl, for thou cannot hear them, and thus hears something else.",
|
||||
"range": [
|
||||
86,
|
||||
86
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Lorsque tes pieds seront enfouis dans la boue, ta mort sera toute proche.",
|
||||
"description": "When thou feet are buried in mud, thy death will be close behind.",
|
||||
"range": [
|
||||
87,
|
||||
87
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "La véritable hantise vient par trois.",
|
||||
"description": "A true haunting comes in threes.",
|
||||
"range": [
|
||||
88,
|
||||
88
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Aucun glas ne résonne lorsque la porte est entrouverte, mais les violoneux danseront sur ta tombe.",
|
||||
"description": "No bells toll when the door is ajar, but fiddlers shall dance upon thy grave.",
|
||||
"range": [
|
||||
89,
|
||||
89
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ta Vie s’achèvera à cause de la plus pefite des puces.",
|
||||
"description": "Thou life undone by the smallest flea.",
|
||||
"range": [
|
||||
90,
|
||||
90
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Lorsque le paysan triomphera, ta tête sera séparée de ton corps.",
|
||||
"description": "When the peasant stands triumphant shall your head separate from your shoulders.",
|
||||
"range": [
|
||||
91,
|
||||
91
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Méfie—toi de Yinnocence des enfants car leurs desseins sont loin d’être prudents.",
|
||||
"description": "Trust not the innocence of children, for their plans are far from sound.",
|
||||
"range": [
|
||||
92,
|
||||
92
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Tiens—toi à l'écart d’étoffe verte.",
|
||||
"description": "Consider not the cloth of green.",
|
||||
"range": [
|
||||
93,
|
||||
93
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Attention à ce qui nage dans la mer.",
|
||||
"description": "Beware all that swims in the sea.",
|
||||
"range": [
|
||||
94,
|
||||
94
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ne te lève pas avant le milieu de la matinée, car ta mort arrive à l’aube.",
|
||||
"description": "Rise not before midmorning, for thine death is early indeed.",
|
||||
"range": [
|
||||
95,
|
||||
95
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "N’aide pas les nécessiteux car ils porteront la corde pour te pendre.",
|
||||
"description": "Save not the needy for they shall carry thine noose.",
|
||||
"range": [
|
||||
96,
|
||||
96
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le faux courage entraîne ta fin certaine.",
|
||||
"description": "False courage spells certain doom.",
|
||||
"range": [
|
||||
97,
|
||||
97
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Aucun corbeau ne picorerea tes os.",
|
||||
"description": "There shall be no ravens to pick upon your bones.",
|
||||
"range": [
|
||||
98,
|
||||
98
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Morr envoie une vierge.",
|
||||
"description": "Morr sends a maiden.",
|
||||
"range": [
|
||||
99,
|
||||
99
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Ta mort souillera de péché les vertueux.",
|
||||
"description": "Thy death will mark the virtuous with sin.",
|
||||
"range": [
|
||||
100,
|
||||
100
|
||||
|
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Destinée 2",
|
||||
"name": "Destinée",
|
||||
"die": "1d100",
|
||||
"rows": [{
|
||||
"description": "Ta fin sera gluante.\r",
|
||||
|
@ -1,353 +1,353 @@
|
||||
{
|
||||
"name": "On se connait pas déja?",
|
||||
"name": "How Do I Know You Again?",
|
||||
"die": "1d100",
|
||||
"hide": true,
|
||||
"rows": [
|
||||
{
|
||||
"description": "Nous avons purgé en même temps une peine dans l'une des célèbres prisons de l'Empire.",
|
||||
"description": "We both served time in one of the Empire’s illustrious prisons.",
|
||||
"range": [
|
||||
1,
|
||||
2
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous étions amants, mais les caprices de Shallya nous ont séparés..",
|
||||
"description": "We used to be lovers, but the whims of Katya pulled us apart.",
|
||||
"range": [
|
||||
3,
|
||||
4
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous sommes parents éloignés, d’une famille tentaculaire dont il vaut mieux ignorer les liens.",
|
||||
"description": "We are distantly related, through a complex web of bloodlines better left unexamined.",
|
||||
"range": [
|
||||
5,
|
||||
6
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous sommes des amis d'enfance, et nous avons grandi dans le même quartier.",
|
||||
"description": "We are childhood friends, who grew up in the same rough neighbourhood.",
|
||||
"range": [
|
||||
7,
|
||||
8
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous devions nous marier mais les prêtresses de Rhya ont refusé de nous bénir, et nous n’avons jamais su pourquoi.",
|
||||
"description": "We were once going to be married, but the Rhyans refused to wed us, and we never learned why.",
|
||||
"range": [
|
||||
9,
|
||||
10
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons grandi dans la même ville, en bordure de contrées sauvages grouillant de monstres.",
|
||||
"description": "We grew up in the same town, on the outskirts of the same monster-filled wilderness.",
|
||||
"range": [
|
||||
11,
|
||||
12
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous désirions le même poste et nous avons été ennemis durant des années.",
|
||||
"description": "We were rivals for the same position, and butted heads for years.",
|
||||
"range": [
|
||||
13,
|
||||
14
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous aimons la même personne qui nous a été cruellement enlevée par les machinations de Morr.",
|
||||
"description": "We were rivals for the same paramour who was cruelly stolen from the world by the machinations of Morr.",
|
||||
"range": [
|
||||
15,
|
||||
16
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L’un de nous a été victime des crimes de l ’autre, même si, que Ranald en soit béni, la victime ne l’a pas compris.",
|
||||
"description": "One of us was a previous victim of the other’s criminal ways, though, thank Ranald, that the victim doesn’t realise it!",
|
||||
"range": [
|
||||
17,
|
||||
18
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L’un de nous a trabi l’autre, même si, par la grâce de Sigmar, ce crime passé a été pardonne’. . .Mais est—ce bien le cas?’",
|
||||
"description": "One of us once betrayed the other, though by the grace of Sigmar, that past crime has been forgiven… or has it?",
|
||||
"range": [
|
||||
19,
|
||||
20
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons servi dans la même milice et nous avons appris ensemble a craindre les hurlements des loups d’Ulric.",
|
||||
"description": "We served in the same conscripted militia, and learned to fear the howling of Ulric’s wolves together.",
|
||||
"range": [
|
||||
21,
|
||||
22
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous sommes tous deux des réfugiés d’un Duché attaqué par des peaux-vertes.",
|
||||
"description": "We were refugees together after a Greenskin attack on our duchy.",
|
||||
"range": [
|
||||
23,
|
||||
24
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous nous sommes rencontrés il y a longtemps, à l’autre bout du Vieux Monde. ",
|
||||
"description": "We met a long time ago, in a city on the other side of the Old World.",
|
||||
"range": [
|
||||
25,
|
||||
26
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous sommes tous deux des victimes de la même infortune sous la lueur vert pâle de Morrslieb.",
|
||||
"description": "We were both victims of the same misfortune under Morrsleib’s pale-green glow.",
|
||||
"range": [
|
||||
27,
|
||||
28
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous les deux été pris dans une bagarre, quelque part dans la Rue des Milles Tavernes d'Altdorf et avons fait équipe pour notre sécurité.",
|
||||
"description": "We were both embroiled in a brawl together, somewhere on Altdorf ’s Street of a Thousand Taverns, and teamed up for mutual safety.",
|
||||
"range": [
|
||||
29,
|
||||
30
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L’un de nous a été pris pour une personne diflîîrente, ce qui a entraîné une série dévénements curieux avant que l'erreur ne soit dissipée.",
|
||||
"description": "One of us was mistaken for someone else by the other, and lead on a series of curious events before anyone realised.",
|
||||
"range": [
|
||||
31,
|
||||
32
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous nous sommes rencontrés en route, voyageant dans la même direction, et on a discuté.",
|
||||
"description": "We met on the road, travelling in the same direction, and, ‘just got to talking’.",
|
||||
"range": [
|
||||
33,
|
||||
34
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons été piégés par un Patrouilleur routier pour un crime que nous n’avons pas commis.",
|
||||
"description": "We were both framed by a Roadwarden for a crime we didn’t commit.",
|
||||
"range": [
|
||||
35,
|
||||
36
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons été tous deux condamnés au gibet lorsque notre convoi a été attaquépar des hommes-bêtes et nous nous sommes échappés",
|
||||
"description": "We were both sentenced to hang when our convoy was attacked by Beastmen and we escaped together.",
|
||||
"range": [
|
||||
37,
|
||||
38
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L’un de nous deux a épousé la mère ou le père veuf de l’autre.",
|
||||
"description": "One of us married the other’s widowed father or mother.",
|
||||
"range": [
|
||||
39,
|
||||
40
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous sommes tous deux malades et soignés par l’Ordre de Shallya",
|
||||
"description": "We were both sick and treated by the same Shallyan Order.",
|
||||
"range": [
|
||||
41,
|
||||
42
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons grandi dans la même congrégation sigmarite.",
|
||||
"description": "We grew up in the same Sigmarite congregation.",
|
||||
"range": [
|
||||
43,
|
||||
44
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Enfants, nous étions amoureux l’un de l’autre, jusqu’à ce que l’un des deux ne soit obligé de quitter son foyer pour toujours.",
|
||||
"description": "We were childhood sweethearts, until one of us had to leave home forever.",
|
||||
"range": [
|
||||
45,
|
||||
46
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nos familles ont étéennemies durant desgénérations. Nos voisins appelaient leurs disputes : « Les Petites Guerres de Parravon ».",
|
||||
"description": "Our families have feuded for generations; indeed, our neighbours called our family disputes the, ‘Little Parravonese Wars’.",
|
||||
"range": [
|
||||
47,
|
||||
48
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Le père de l’un de nous a tué celui de l’autre au cours d’une vendetta digne d’un opéra tiléen.",
|
||||
"description": "One of our father’s murdered the other’s in a vendetta worthy of a Tilean opera.",
|
||||
"range": [
|
||||
49,
|
||||
50
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L'un de nous deux a été adopté par la famille de l’autre, car la sienne avait été brûlée pour sorcellerie.",
|
||||
"description": "One of our families adopted the other when their family was burnt for witchcraft.",
|
||||
"range": [
|
||||
51,
|
||||
52
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L’un de nous deux a pris l’autre en train de fouiller dans sespoches.",
|
||||
"description": "One of us caught the other red-handed picking their pocket.",
|
||||
"range": [
|
||||
53,
|
||||
54
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux assisté à des funérailles d’un ami commun dans le jardin de Morr.",
|
||||
"description": "We both attended a funeral in the Garden of Morr for a mutual friend.",
|
||||
"range": [
|
||||
55,
|
||||
56
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nos mères étaient d'anciennes compagnes de voyage, avant de s’établir dans leurs familles respectives.",
|
||||
"description": "Our mothers were old travelling companions, before they settled down to their respective families.",
|
||||
"range": [
|
||||
57,
|
||||
58
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux des frères ou sœurs enrôlés dans le même culte du Chaos.",
|
||||
"description": "We both have siblings who were caught up in the same Chaos Cult.",
|
||||
"range": [
|
||||
59,
|
||||
60
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nos frères ou sœurs se sont enfuis ensemble, ce qui a provoqué un scandale familial",
|
||||
"description": "Our siblings ran off together, causing a scandal in both families.",
|
||||
"range": [
|
||||
61,
|
||||
62
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons le même père, un marchand jonglant secrètement entre deux familles.",
|
||||
"description": "We share a merchant father who was juggling two families, kept secret from each other.",
|
||||
"range": [
|
||||
63,
|
||||
64
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux été capturés durant la même descente dans un bordel, et nous avons du expliquer avec fermeté n'avoir aucun lien avec le culte du Chaos qui y a été découvert.",
|
||||
"description": "We were both caught during the same raid on a brothel, and had to explain how we were steadfastly not involved with the Chaos Cult discovered out back.",
|
||||
"range": [
|
||||
65,
|
||||
66
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous étions colocataires dans un bâtiment pouilleux.",
|
||||
"description": "We used to be roommates in a filthy tenement building.",
|
||||
"range": [
|
||||
67,
|
||||
68
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nos Destinées exigeaient que nous nous rencontrions, même si nous n'en avons jamais parlé ensemble.",
|
||||
"description": "Somehow, our Doomings demanded we meet up, though we obviously keep them secret from each other.",
|
||||
"range": [
|
||||
69,
|
||||
70
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons grandi dans des provinces rivales, même si nos villages n’étaient distants que de quelques kilomètres.",
|
||||
"description": "We grew up in rivalling provinces, despite our villages being less than a mile from each other.",
|
||||
"range": [
|
||||
71,
|
||||
72
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons subi ensemble un naufrage, et nous avons du passer quelques mois difficiles sur la côte du Nordland.",
|
||||
"description": "We were once shipwrecked together, and had to spend an uncomfortable few months off the coast of Nordland.",
|
||||
"range": [
|
||||
73,
|
||||
74
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous étions tous deux à bord de bateaux capturés par des pirates sartosiens et nous avons réussi à nous échapper ensemble.",
|
||||
"description": "We were both onboard ships that were captured by Sartosan pirates, but managed to escape together.",
|
||||
"range": [
|
||||
75,
|
||||
76
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Il y a quelques années, nous avons tous deux attrapé la même terrible maladie et nous avons été placés ensemble en quarantaine avant qu'elle ne se dissipe mystérieusement.",
|
||||
"description": "We both caught the same terrible disease many years ago, and were locked in quarantine together before it mysteriously lifted.",
|
||||
"range": [
|
||||
77,
|
||||
78
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L'un de nous s’est retrouvé ivre sur le palier de l ’autre avec le nom du propriétaire des lieux tatoué sur le bras. Aucun des deux ne sais comment cela a pu se produire.",
|
||||
"description": "One of us turned up drunk on the other’s doorstep with the homeowner’s name tattooed on their arm. Neither of us know how this could have happened, or why.",
|
||||
"range": [
|
||||
79,
|
||||
80
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux été invités à une fête donnée par un aristocrate à l’accent étrange, portant un pourpoint démodé et poussérieux.",
|
||||
"description": "We were both invited to the same ‘dinner party’ hosted by an aristocrat in a dusty out-of-fashion doublet with a strange accent.",
|
||||
"range": [
|
||||
81,
|
||||
82
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Une lettre jointe aux dernières volontés de l'un de nos pères contient le nom et l adresse de l ’autre, sans que nous sachions pourquoi",
|
||||
"description": "A letter in one of our fathers’ Last Will and Testaments contained the name and address of the other, and we cannot determine why this is…",
|
||||
"range": [
|
||||
83,
|
||||
84
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux été forcés de quitter notre ville natale lorsque nos familles ont été prises dans une guerre de gangs.",
|
||||
"description": "We were both forced to flee our hometown when our families were caught between two rival gangs.",
|
||||
"range": [
|
||||
85,
|
||||
86
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons été pris dans les feux croisés de deux armées en train de charger, et nous avons échappé de justesse au bain de sang",
|
||||
"description": "We were both caught in a crossfire between two charging armies, and barely escaped the bloodshed.",
|
||||
"range": [
|
||||
87,
|
||||
88
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L'un de nous a sauvé l’autre d ’une horrible brute lorsque nous étions enfants, et, depuis, nous sommes restés proches.",
|
||||
"description": "One of us saved the other from a terrible bully when we were growing up, and we’ve stuck close together ever since.",
|
||||
"range": [
|
||||
89,
|
||||
90
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "L'un de nous n’a pu dormir plusieurs nuits d'affilée', à cause des grattements dans les murs, et nous avons beaucoup parlé.",
|
||||
"description": "We found each other after not being able to sleep for several nights in a row… The scratching in the walls just got too much, and we got to talking.",
|
||||
"range": [
|
||||
91,
|
||||
92
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous traversions la même rivière lorsque nous avons été accostés par un célèbre bandit de grand chemin. Disons simplement que cela n'a pas tourné à son avantage.",
|
||||
"description": "We were both using the same river crossing when we were accosted by a notorious highwayman. Let’s just say it didn’t turn out well for him.",
|
||||
"range": [
|
||||
93,
|
||||
94
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons assisté à une étrange et inhabituelle conférence publique dans une université du coin, et cela a complètement changé notre vision du monde.",
|
||||
"description": "We both attended an uncharacteristically and inexplicably free lecture held in the local university, and it changed how we saw the world from then on.",
|
||||
"range": [
|
||||
95,
|
||||
96
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Une sorcière nous a présentés et nous a fait comprends qu'il serait malavisé de nous séparer.",
|
||||
"description": "A witch introduced us to each other, and gave the impression it would be ill-advised for us to split up.",
|
||||
"range": [
|
||||
97,
|
||||
98
|
||||
]
|
||||
},
|
||||
{
|
||||
"description": "Nous avons tous deux reçus une mystérieuse lettre qui nous a menés au même endroit et au même moment, mais .. rien ne s'est produit.",
|
||||
"description": "We both received a cryptic letter that lead us to the same place at the same time, but then… nothing happened.",
|
||||
"range": [
|
||||
99,
|
||||
100
|
||||
|
1846
tables/job.json
1846
tables/job.json
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
||||
{
|
||||
"name": "Tableau des Incantations Imparfaites Majeures",
|
||||
"name": "Tableau des Incentations Imparfaites Majeures",
|
||||
"die": "1d100",
|
||||
"rows": [{
|
||||
"name": "Voix fantomatique",
|
||||
|
@ -1,87 +0,0 @@
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
local lfs = require"lfs"
|
||||
|
||||
local mypath = '../compendium/'
|
||||
|
||||
local function convert( jsondb)
|
||||
|
||||
jsondb = jsondb:gsub("test.result", "test.result.outcome")
|
||||
jsondb = jsondb:gsub("result.result", "result.outcome")
|
||||
jsondb = jsondb:gsub("result.extra", "result")
|
||||
jsondb = jsondb:gsub("actor.data.AP", "actor.status.armour")
|
||||
jsondb = jsondb:gsub("item.data.APdamage", "item.getFlag('wfrp4e', 'APdamage')")
|
||||
jsondb = jsondb:gsub("data.data.", "")
|
||||
jsondb = jsondb:gsub("item.data", "item")
|
||||
jsondb = jsondb:gsub("weapon.data", "weapon")
|
||||
jsondb = jsondb:gsub("spell.data", "spell")
|
||||
jsondb = jsondb:gsub("prayer.data", "prayer")
|
||||
jsondb = jsondb:gsub("trait.data", "trait")
|
||||
jsondb = jsondb:gsub("testData.extra.characteristic", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.extra.skill", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.extra.weapon", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.extra.spell", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.extra.prayer", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.extra.trait", "testData.item")
|
||||
jsondb = jsondb:gsub("testData.roll", "test.result.roll")
|
||||
jsondb = jsondb:gsub("testData", "test")
|
||||
jsondb = jsondb:gsub("item._id", "item.id")
|
||||
jsondb = jsondb:gsub("result.ammo", "test.ammo")
|
||||
jsondb = jsondb:gsub("args.result", "args.test.result")
|
||||
jsondb = jsondb:gsub(".owner", ".isOwner")
|
||||
jsondb = jsondb:gsub("spell.overcasts", "result.overcast")
|
||||
jsondb = jsondb:gsub("opposeResult", "opposedTest.result")
|
||||
jsondb = jsondb:gsub("opposeData.hitloc", "opposeData.result.hitloc")
|
||||
jsondb = jsondb:gsub("opposeData", "opposedTest")
|
||||
jsondb = jsondb:gsub("extra.critical", "critical")
|
||||
jsondb = jsondb:gsub("attackerTestResult.weapon", "attackerTest.item")
|
||||
jsondb = jsondb:gsub("defenderTestResult.weapon", "defenderTest.item")
|
||||
jsondb = jsondb:gsub("attackerTestResult.trait", "attackerTest.item")
|
||||
jsondb = jsondb:gsub("defenderTestResult.trait", "defenderTest.item")
|
||||
jsondb = jsondb:gsub("attackerTestResult.spell", "attackerTest.item")
|
||||
jsondb = jsondb:gsub("defenderTestResult.spell", "defenderTest.item")
|
||||
jsondb = jsondb:gsub("attackerTestResult.prayer", "attackerTest.item")
|
||||
jsondb = jsondb:gsub("defenderTestResult.prayer", "defenderTest.item")
|
||||
jsondb = jsondb:gsub("attackerTestResult.skill", "attackerTest.item")
|
||||
jsondb = jsondb:gsub("defenderTestResult.skill", "defenderTest.item")
|
||||
jsondb = jsondb:gsub("attackerTestResult", "attackerTest.result")
|
||||
jsondb = jsondb:gsub("defenderTestResult", "defenderTest.result")
|
||||
jsondb = jsondb:gsub("actor.data.characteristics", "actor.characteristics")
|
||||
jsondb = jsondb:gsub("test.result.outcome.result", "test.result.outcome")
|
||||
jsondb = jsondb:gsub("test.item.characteristic.value", "test.item.characteristic.key")
|
||||
jsondb = jsondb:gsub("test.extra.other", "test.result.other")
|
||||
|
||||
return jsondb
|
||||
end
|
||||
|
||||
local function parse_folder( mypath )
|
||||
--print("*** ENTERING", mypath)
|
||||
for file in lfs.dir(mypath) do
|
||||
--print(file)
|
||||
if file == '.' or file == '..' then
|
||||
|
||||
else
|
||||
local fp = io.open(mypath .."/".. file, "r+")
|
||||
local jsondb = fp:read("*a")
|
||||
fp:close()
|
||||
|
||||
jsondb = convert( jsondb)
|
||||
|
||||
fp = io.open(mypath .."/".. file, "w+")
|
||||
fp:write(jsondb)
|
||||
fp:close()
|
||||
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
--parse_folder( mypath )
|
||||
local fp = io.open("../modules/config-patch.js", "r+")
|
||||
local jsondb = fp:read("*a")
|
||||
fp:close()
|
||||
|
||||
jsondb = convert(jsondb)
|
||||
|
||||
fp = io.open("../modules/config-patch.js", "w+")
|
||||
fp:write(jsondb)
|
||||
fp:close()
|
@ -1,9 +1,7 @@
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
|
||||
--local enjsonf = "/home/morr/foundry/foundrydata-dev/Data/modules/wfrp4e-dotr/lang/en.json"
|
||||
--local enjsonf = "/home/morr/foundry/foundrydata-dev/Data/modules/wfrp4e-core/lang/en.json"
|
||||
local enjsonf = "../../WFRP4e-FoundryVTT/static/lang/en.json"
|
||||
local enjsonf = "../../WFRP4e-FoundryVTT/lang/en.json"
|
||||
local frjsonf = "../fr.json"
|
||||
|
||||
local fp = io.open(enjsonf, "r")
|
||||
@ -13,20 +11,11 @@ fp:close()
|
||||
fp = io.open(frjsonf, "r")
|
||||
local frtags = JSON.decode( fp:read("*a") )
|
||||
fp:close()
|
||||
|
||||
local todisplay = {}
|
||||
|
||||
for tag, value in pairs(entags) do
|
||||
if not frtags[tag] then
|
||||
todisplay[#todisplay+1] = { tag=tag, value=value }
|
||||
print(tag, value)
|
||||
end
|
||||
end
|
||||
|
||||
table.sort(todisplay, function (a, b)
|
||||
return a.tag < b.tag
|
||||
end
|
||||
)
|
||||
for _, tagDef in pairs(todisplay) do
|
||||
print('"'.. tagDef.tag ..'":"'.. tagDef.value..'",')
|
||||
end
|
||||
|
||||
|
||||
|
||||
|
@ -1,25 +0,0 @@
|
||||
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
|
||||
local path_in = "../tables/euphemism.json"
|
||||
local f1 = io.open(path_in, "r")
|
||||
local strjson = f1:read("*a")
|
||||
f1:close()
|
||||
local tabData = JSON.decode(strjson)
|
||||
|
||||
local results = {}
|
||||
for idx, row in pairs(tabData.rows) do
|
||||
if row.range.Noun[1] then
|
||||
local min = row.range.Noun[1]
|
||||
local max = row.range.Noun[2]
|
||||
local field = tostring(min).."-"..tostring(max)
|
||||
--results[field] = "<b>"..row.name.."</b>:"..row.description
|
||||
results[field] = row.Noun.description
|
||||
print(field, row.name)
|
||||
end
|
||||
end
|
||||
local entries = JSON.encode(results)
|
||||
print()
|
||||
print()
|
||||
print(entries)
|
@ -1,29 +0,0 @@
|
||||
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
|
||||
local beastref_f = "../compendium/wfrp4e.bestiary.json"
|
||||
local beastdescr_f = "compendium_wfrp4e.bestiary.json"
|
||||
|
||||
local f1 = io.open(beastref_f)
|
||||
local strjson = f1:read("*a")
|
||||
local beastref = JSON.decode(strjson)
|
||||
|
||||
local f2 = io.open(beastdescr_f)
|
||||
strjson = f2:read("*a")
|
||||
f2:close()
|
||||
local beastdescr = JSON.decode(strjson)
|
||||
|
||||
|
||||
for _, beasttext in pairs(beastdescr.entries) do
|
||||
for _, beastgood in pairs(beastref.entries) do
|
||||
if beasttext.id == beastgood.id then
|
||||
beastgood.description = beasttext.description
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local jsonout = JSON.encode( beastref )
|
||||
local fout = io.open("beasts.json", "w+")
|
||||
fout:write( jsonout )
|
||||
fout:close()
|
@ -1,41 +0,0 @@
|
||||
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
|
||||
--local talent_db = "../../WFRP4e-FoundryVTT/packs/talents.db"
|
||||
local traitdb ='/home/morr/.local/share/FoundryVTT/Data/modules/wfrp4e-core/packs/talents.db'
|
||||
local f1 = io.open(traitdb)
|
||||
|
||||
local translatedf = "../compendium/wfrp4e-core.talents.json"
|
||||
local f2 = io.open(translatedf)
|
||||
local content = f2:read("*a")
|
||||
local dbData = JSON.decode(content)
|
||||
f2:close()
|
||||
|
||||
local function trim1(s)
|
||||
return (s:gsub("^%s*(.-)%s*$", "%1"))
|
||||
end
|
||||
|
||||
local line = f1:read()
|
||||
while line do
|
||||
--print(line)
|
||||
local trait = JSON.decode( line )
|
||||
if trait.effects then
|
||||
local comp
|
||||
for _, item in pairs(dbData.entries) do
|
||||
if string.lower(item.id) == string.lower(trait.name)then
|
||||
comp = item
|
||||
print("====================> Found", trait.name, item.name)
|
||||
end
|
||||
end
|
||||
if #comp.effects == 0 and #trait.effects > 0 then
|
||||
print( "MISSING EFFECTS", trait.name )
|
||||
--print( JSON.encode (trait.effects) )
|
||||
--print ()
|
||||
end
|
||||
end
|
||||
|
||||
line = f1:read()
|
||||
end
|
||||
f1:close()
|
||||
|
@ -2,28 +2,28 @@
|
||||
package.path = package.path .. ";luajson/?.lua"
|
||||
local JSON = require"json"
|
||||
|
||||
local oldf = "../compendium/wfrp4e-core.careers.json"
|
||||
local newf = "../compendium/wfrp4e-core.career-descriptions.json"
|
||||
local oldf = "../compendium/wfrp4e-core.criticals.json.SAVED"
|
||||
local newf = "../compendium/wfrp4e-core.criticals.json"
|
||||
|
||||
local cf = io.open(oldf, "r")
|
||||
local strjson = cf:read("*a")
|
||||
cf:close()
|
||||
local careers = JSON.decode(strjson)
|
||||
local origin = io.open(oldf, "r")
|
||||
local strjson = origin:read("*a")
|
||||
origin:close()
|
||||
local oldjson = JSON.decode(strjson)
|
||||
|
||||
local cdf = io.open(newf, "r")
|
||||
strjson = cdf:read("*a")
|
||||
cdf:close()
|
||||
local careerDescr = JSON.decode(strjson)
|
||||
local new = io.open(newf, "r")
|
||||
strjson = new:read("*a")
|
||||
new:close()
|
||||
local newjson = JSON.decode(strjson)
|
||||
|
||||
for _, careerD in pairs(careerDescr.entries) do
|
||||
for _, career in pairs(careers.entries) do
|
||||
if careerD.id == career.id then
|
||||
careerD.name = career.name
|
||||
for _, newItem in pairs(newjson.entries) do
|
||||
for _, oldItem in pairs(oldjson.entries) do
|
||||
if newItem.name == oldItem.name then
|
||||
newItem.id = oldItem.id
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
local jsonout = JSON.encode( careerDescr )
|
||||
local jsonout = JSON.encode( newjson )
|
||||
local fout = io.open("output.json", "w+")
|
||||
fout:write( jsonout )
|
||||
fout:close()
|
||||
|
Reference in New Issue
Block a user