diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index c485c16..a202fd9 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -29,7 +29,7 @@ jobs: cp --force LICENSE.txt system/. cp --force README.md system/. SYSTEM_VERSION=$(grep -oP '(?<="version": ")[^"]+' system/system.json | tr -d '\n') - perl -pi -E "s|/latest/download/|/download/release-$SYSTEM_VERSION/|" system/system.json + perl -pi -E "s|/latest/download/ac2d20\\.zip|/download/release-$SYSTEM_VERSION/ac2d20.zip|" system/system.json echo "systemVersion=$SYSTEM_VERSION" >> $GITHUB_ENV - run: cd system && zip -r ../ac2d20.zip ./* @@ -39,9 +39,9 @@ jobs: uses: ncipollo/release-action@v1 with: allowUpdates: false - name: release-${{ env.systemVersion }} - draft: false - prerelease: false - token: ${{ secrets.GITHUB_TOKEN }} artifacts: './system/system.json, ./ac2d20.zip' + draft: false + name: release-${{ env.systemVersion }} + prerelease: true tag: release-${{ env.systemVersion }} + token: ${{ secrets.GITHUB_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md index 59eaf10..e076906 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,23 @@ +## v11.6.0 + +### Enhancement +- [#104] Added Experimental weapon quality + +### Bugfix +- [#103] Ensure custom Dice So Nice theme dice values are readable + +--- + +## v11.5.3 + +### Bugfix +- [#101] Dice So Nice not rolling the dice when using Skills, etc + +### Chores +- [#100] Merge new French translation updates from Crowdin + +--- + ## v11.5.2 ### Bugfix diff --git a/data/packs/system_documentation.db/release_notes__g6JENp97aKkuNFcs.json b/data/packs/system_documentation.db/release_notes__g6JENp97aKkuNFcs.json index 8352d4a..e6f47e0 100644 --- a/data/packs/system_documentation.db/release_notes__g6JENp97aKkuNFcs.json +++ b/data/packs/system_documentation.db/release_notes__g6JENp97aKkuNFcs.json @@ -8,7 +8,7 @@ "system": { }, "text": { - "content": "

v11.5.0

\n\n

Ehancement

\n\n\n\n

Bugfix

\n\n\n\n

Chores

\n\n\n\n

Many thanks to lozanoje for contributing code and translations included in this build

\n\n
\n\n

v11.4.0

\n\n

Enhancement

\n\n\n\n

Bugfix

\n\n\n\n

Chore

\n\n\n\n

Many thanks to Leo Tusi for providing Portuguese, Brazilian translation data.

\n\n

Many thanks to Modiphius for allowing us to use on of their excellent Achtung! Cthulhu wallpaper images.

\n\n
\n\n

v11.3.0

\n\n

Enhancement

\n\n\n\n

Chore

\n\n\n\n

Many thanks to lozanoje for contributing code and translations included in this build

\n\n

Many thanks to Dniektr for contributing French language translations for this build. The French language i18n file now has 100% coverage

\n\n
\n\n

v11.2.0

\n\n

Enhancement

\n\n\n\n

Bugfix

\n\n\n\n

Many thanks to lozanoje for contributing code included in this build

\n\n
\n\n

v11.1.2

\n\n

Bugfix

\n\n\n\n
\n\n

v11.1.1

\n\n

Bugfix

\n\n\n\n

Chore

\n\n\n\n
\n\n

v11.1.0

\n\n\n\n
\n\n

v11.0.2

\n\n\n\n
\n\n

v11.0.1

\n\n\n\n
\n\n

v11.0.0

\n\n\n\n
\n\n

v10.0.10

\n\n\n\n
\n\n

v10.0.9

\n\n\n\n
\n\n

v10.0.8

\n\n\n\n
\n\n

v10.0.7

\n\n\n\n
\n\n

v10.0.6

\n\n\n\n
\n\n

v10.0.5

\n\n\n\n
\n\n

v10.0.4

\n\n\n\n
\n\n

v10.0.3

\n\n

- Fixed item qualities display in chat messages

\n\n

v10.0.2

\n\n\n\n
\n\n

v10.0.1

\n\n\n\n
\n\n

v10.0.0

\n\n\n\n
\n\n

v1.0.5

\n\n

Fixed bug with Personal Truths and Injuries on the Actor sheet.\nDue to the nature of the bug data model is changed and no migration is provided\nIf you want to check what truths and injuries that actor previously had you can use a SCRIPT macro that will log those thruths and injuries in the console. If the actor's truths and injuries were corrupted you will see an empty list unfortunately.

\n\n

Here is a SCRIPT macro (select the actor's token on the stage and click the macro):

\n\n

\nlet act = canvas.tokens.controlled[0]?.actor\nif(act == undefined){\nconsole.log('select a token first')\nreturn;\n}\nconsole.log("TRUTHS")\nconsole.log(act.data.data.truths)\nconsole.log("INJURIES")\nconsole.log(act.data.data.injuries.list)\n

\n\n
\n\n

v1.0.4

\n\n\n\n
\n\n

v1.0.3

\n\n\n\n
\n\n

v1.0.2

\n\n\n\n
\n\n

v1.0.1

\n\n", + "content": "

AUTO-GENERATED. DO NOT EDIT.

", "format": 1 }, "title": { diff --git a/i18n/en.yaml b/i18n/en.yaml index c7e70ec..67e6f39 100644 --- a/i18n/en.yaml +++ b/i18n/en.yaml @@ -396,6 +396,7 @@ AC2D20.Tooltips.WeaponQuality.close_quarters: The weapon is compact and easy to AC2D20.Tooltips.WeaponQuality.cumbersome: The weapon is heavy and awkward to bring to bear against small targets like infantry. When making an attack with this weapon, increase the difficulty of the attack by +1, if the target is human-sized or smaller. AC2D20.Tooltips.WeaponQuality.debilitating: The difficulty of any skill test to treat the physical injuries of this weapon is increased by +1. AC2D20.Tooltips.WeaponQuality.escalation: Entering a scene with the weapon generates 1 Threat. +AC2D20.Tooltips.WeaponQuality.experimental: Tests with this item increase their complication range by 2. In addition, for every 2 Momentum generated on a test with this item, you also generate 1 Threat. AC2D20.Tooltips.WeaponQuality.giant_killer: The weapon’s destructive power is wasted on small or soft targets, but the bigger the target, the more of the weapon’s lethality is unleashed. When rolling damage for a weapon with this quality, add +X@s to the weapon’s damage where X is the target’s Scale. A weapon may not gain more additional dice from this quality than its base damage — a weapon with a base damage of 6@s cannot gain more than +6@s from it. AC2D20.Tooltips.WeaponQuality.heavy: Attacks with this weapon increase in difficulty by +2 unless the weapon has been set up (braced against the ground or solid object, or mounted on a bipod or tripod). Setting up a heavy weapon requires the Prepare minor action. AC2D20.Tooltips.WeaponQuality.hidden: When the weapon is hidden it cannot be detected by those simply looking at the character, and any skill test to search for the weapon increases in difficulty by 1. @@ -453,6 +454,7 @@ AC2D20.WEAPONS.weaponQuality.close_quarters: Close Quarters AC2D20.WEAPONS.weaponQuality.cumbersome: Cumbersome AC2D20.WEAPONS.weaponQuality.debilitating: Debilitating AC2D20.WEAPONS.weaponQuality.escalation: Escalation +AC2D20.WEAPONS.weaponQuality.experimental: Experimental AC2D20.WEAPONS.weaponQuality.giant_killer: Giant-Killer AC2D20.WEAPONS.weaponQuality.heavy: Heavy AC2D20.WEAPONS.weaponQuality.hidden: Hidden diff --git a/i18n/es.yaml b/i18n/es.yaml index 5a95d4f..8ca2d6d 100644 --- a/i18n/es.yaml +++ b/i18n/es.yaml @@ -396,6 +396,7 @@ AC2D20.Tooltips.WeaponQuality.close_quarters: The weapon is compact and easy to AC2D20.Tooltips.WeaponQuality.cumbersome: The weapon is heavy and awkward to bring to bear against small targets like infantry. When making an attack with this weapon, increase the difficulty of the attack by +1, if the target is human-sized or smaller. AC2D20.Tooltips.WeaponQuality.debilitating: The difficulty of any skill test to treat the physical injuries of this weapon is increased by +1. AC2D20.Tooltips.WeaponQuality.escalation: Entering a scene with the weapon generates 1 Threat. +AC2D20.Tooltips.WeaponQuality.experimental: Tests with this item increase their complication range by 2. In addition, for every 2 Momentum generated on a test with this item, you also generate 1 Threat. AC2D20.Tooltips.WeaponQuality.giant_killer: The weapon’s destructive power is wasted on small or soft targets, but the bigger the target, the more of the weapon’s lethality is unleashed. When rolling damage for a weapon with this quality, add +X@s to the weapon’s damage where X is the target’s Scale. A weapon may not gain more additional dice from this quality than its base damage — a weapon with a base damage of 6@s cannot gain more than +6@s from it. AC2D20.Tooltips.WeaponQuality.heavy: Attacks with this weapon increase in difficulty by +2 unless the weapon has been set up (braced against the ground or solid object, or mounted on a bipod or tripod). Setting up a heavy weapon requires the Prepare minor action. AC2D20.Tooltips.WeaponQuality.hidden: When the weapon is hidden it cannot be detected by those simply looking at the character, and any skill test to search for the weapon increases in difficulty by 1. @@ -453,6 +454,7 @@ AC2D20.WEAPONS.weaponQuality.close_quarters: Bocajarro AC2D20.WEAPONS.weaponQuality.cumbersome: Aparatosa AC2D20.WEAPONS.weaponQuality.debilitating: Dañina AC2D20.WEAPONS.weaponQuality.escalation: Amenazante +AC2D20.WEAPONS.weaponQuality.experimental: Experimental AC2D20.WEAPONS.weaponQuality.giant_killer: Matagigantes AC2D20.WEAPONS.weaponQuality.heavy: Pesada AC2D20.WEAPONS.weaponQuality.hidden: Oculta diff --git a/i18n/fr.yaml b/i18n/fr.yaml index bc2940b..4676c3e 100644 --- a/i18n/fr.yaml +++ b/i18n/fr.yaml @@ -40,7 +40,7 @@ AC2D20.FOCUS.Cars: Véhicules AC2D20.FOCUS.Charm: Charme AC2D20.FOCUS.Climbing: Escalade AC2D20.FOCUS.Close Quarters: Combat rapproché -AC2D20.FOCUS.Combat Engineering: Ingénierie de combat +AC2D20.FOCUS.Combat Engineering: Génie de combat AC2D20.FOCUS.Covert Operations: Opérations Secrètes AC2D20.FOCUS.Cryptography: Cryptographie AC2D20.FOCUS.Deceive: Tromper @@ -304,109 +304,110 @@ AC2D20.Tooltips.DamageEffect.snare: L'attaque ou le danger peut enchevêtrer et AC2D20.Tooltips.DamageEffect.stun: L'attaque ou le danger empêche temporairement la cible d'agir. Si un certain nombre d'effets sont lancés qui sont égaux ou supérieurs à la capacité de résilience de la cible, la cible ne peut entreprendre aucune action lors de son prochain tour. AC2D20.Tooltips.DamageEffect.vicious: L'attaque ou le danger est particulièrement puissant. Ajoutez +1 au stress total infligé pour chaque effet lancé. AC2D20.Tooltips.Focus.air-force: Force aérienne — englobe l’entraînement aux tactiques de combat et de bombardement, telles que les combats de chiens, la formation de vol et la navigation, ainsi que la stratégie militaire aérienne. -AC2D20.Tooltips.Focus.aircraft: Aircraft — covers the operation of civilian and military aircraft, both single-engine and multi-engine, propeller-driven planes. Towards the end of the conflict, it also encompasses newer jet engine planes and technology. -AC2D20.Tooltips.Focus.animal-handling: Animal Handling — covers knowledge about a range of different animals, how they behave, how to act around them, as well as how to train and command them. -AC2D20.Tooltips.Focus.architecture: Architecture — covers an understanding of how buildings are designed and constructed, their internal and external structure and how their mass is supported and distributed. -AC2D20.Tooltips.Focus.army: Army — covers familiarity with military strategy and tactics for infantry, as well as mechanized ground warfare. -AC2D20.Tooltips.Focus.art: Art — covers knowledge of individual pieces of art, the study of different artistic techniques and schools of thought, the history of art within different cultures, and its influences upon those cultures. -AC2D20.Tooltips.Focus.camouflage: Camouflage — covers the use of materials to cover a person, object, or location, hiding it from sight. -AC2D20.Tooltips.Focus.cars: Cars — covers the operation of civilian and military four-wheeled motor vehicles, up to and including small trucks. -AC2D20.Tooltips.Focus.charm: Charm — methods of manipulating others through natural charisma and magnetism. -AC2D20.Tooltips.Focus.climbing: Climbing — covers scaling sheer surfaces such as walls or cliffs as well as mountaineering. -AC2D20.Tooltips.Focus.close-quarters: Close Quarters — covers the use of shotguns and sub-machine guns, and similar weapons designed for use at Close range or within tight confines like trenches or buildings. -AC2D20.Tooltips.Focus.combat-engineering: Combat Engineering — covers work done to support or hinder troop movements, including the construction and demolition of roads, trenches, fortifications, and other military infrastructure. -AC2D20.Tooltips.Focus.covert-operations: Covert Operations — covers organising a team to operate quietly and efficiently behind enemy lines. -AC2D20.Tooltips.Focus.cryptography: Cryptography — covers knowledge of codes and ciphers, both how to create them and how to break them. -AC2D20.Tooltips.Focus.deceive: Deceive — methods of manipulating others to believe something that is untrue. -AC2D20.Tooltips.Focus.discipline: Discipline — represents the character’s durability and self-control, and their ability to resist and recover from confusion and fear or supernatural effects that afflict the mind. -AC2D20.Tooltips.Focus.disguise: Disguise — covers the use of make-up, clothing, props, and appropriate body language to assume the guise of another person. -AC2D20.Tooltips.Focus.electronics: Electronics — covers an understanding of how electronic devices work, how they are assembled, what can go wrong with them, and how to construct, modify, and repair them. Electronics known as “radio electronics” is a relatively new development in World War II, with technologies like radar, sonar, communications and even the first tentative steps into computing, developing significantly as the war progresses. -AC2D20.Tooltips.Focus.exotic: Exotic — covers weird or experimental weaponry and the ability to figure out how an unfamiliar weapon should be operated without risk. -AC2D20.Tooltips.Focus.explosives: Explosives — covers an understanding of explosive substances and the purposes they are most suited for, as well as a knowledge of how to employ them effectively, including how to create and defuse bombs and mines. -AC2D20.Tooltips.Focus.finance: Finance — covers knowledge of trade and banking, both contemporary and historically, and of the influence of money on politics and culture. -AC2D20.Tooltips.Focus.first-aid: First Aid — covers emergency medical attention to stabilise a patient and keep them alive until they can receive proper medical care. -AC2D20.Tooltips.Focus.foraging: Foraging — covers the skill of gathering food from the local environment, being able to identify edible flora, and safely recognising natural toxins. -AC2D20.Tooltips.Focus.fortitude: Fortitude — represents the hardiness and endurance of the body, and its ability to resist and recover from Fatigue, pain, and injury. -AC2D20.Tooltips.Focus.hand-to-hand: Hand-to-Hand — covers unarmed combat by striking and grabbing opponents, and may represent training in a martial art like boxing or judo. -AC2D20.Tooltips.Focus.handguns: Handguns — covers the use of sidearms, revolvers, and semi-automatic and machine pistols. -AC2D20.Tooltips.Focus.hearing: Hearing — covers auditory perception, distinguishing between different sounds, and the ability to discern information from them (such as being able to pick up a faint accent in someone’s voice). This focus is a great asset for radio operators, code breakers and communication specialists. -AC2D20.Tooltips.Focus.heavy-vehicles: Heavy Vehicles — covers the operation of heavy-duty civilian and military vehicles, including heavy trucks, half-tracks, and similar vehicles. -AC2D20.Tooltips.Focus.heavy-weapons: Heavy Weapons — covers the use of machine guns, flamethrowers, anti-tank weapons, and mortars, as well as vehicle-mounted weapons. -AC2D20.Tooltips.Focus.history: History — covers a knowledge of historical events, and the forces and individuals that drove those events, as well as different historical perspectives. -AC2D20.Tooltips.Focus.hunting: Hunting — covers the ability to stalk, catch, and kill animal prey, and the knowledge of preparing game. -AC2D20.Tooltips.Focus.immunity: Immunity — represents a character’s natural ability to resist diseases or toxins, and their ability to recover from those effects. -AC2D20.Tooltips.Focus.infectious-diseases: Infectious Diseases — covers an understanding of diseases, their causes, the way they spread, their symptoms, and the ways that they can be treated. -AC2D20.Tooltips.Focus.innuendo: Innuendo — the art of conveying meaning indirectly. -AC2D20.Tooltips.Focus.instincts: Instincts — covers the “sixth sense” or “gut feelings” made from observations, and other extra-sensory perceptions that you may not be able to describe the source of. Instincts are unlikely to provide detailed information, but a hunch or general feeling about a situation. -AC2D20.Tooltips.Focus.intimidation: Intimidation — inspiring fear, doubt, or hesitation or leveraging a person’s weaknesses against them. -AC2D20.Tooltips.Focus.invocation: Invocation — unusual and esoteric methods of communicating with paranormal entities which is not usually open to the average person. -AC2D20.Tooltips.Focus.leadership: Leadership — covers the command and leading of others, giving clear orders, and maintaining morale. -AC2D20.Tooltips.Focus.lifting: Lifting — covers lifting and moving heavy objects with the conditioning necessary to make such efforts more effective. -AC2D20.Tooltips.Focus.linguistics: Linguistics — covers the study of languages in their current form, as well as historical and dead languages, and the ways that language changes over time. -AC2D20.Tooltips.Focus.mechanical-engineering: Mechanical Engineering — covers an understanding of mechanical devices, how they operate, how they can fail, and how to construct and repair them. This focus can be applied to all fighting vehicles like tanks, planes, boats and other support craft. -AC2D20.Tooltips.Focus.melee-weapons: Melee Weapons — covers fighting with a melee weapon, such as a knife or bayonet. -AC2D20.Tooltips.Focus.motorcycles: Motorcycles — covers the operation of civilian and military two- and three-wheeled motor vehicles -AC2D20.Tooltips.Focus.mysticism: Mysticism — covers knowledge of the rites and practices performed by ancient spiritual leaders (and their modern descendants) to commune with their gods and spirits, and how they can be combatted or withstood. -AC2D20.Tooltips.Focus.navy: Navy — covers naval strategy and tactics, from shallow to deep water, and single boat actions to major fleet engagements. -AC2D20.Tooltips.Focus.negotiation: Negotiation — reaching agreement through conversation, possibly involving trade or payment. -AC2D20.Tooltips.Focus.occultism: Occultism — covers the study of supernatural and occult phenomena, practices, creatures, and traditions. -AC2D20.Tooltips.Focus.orienteering: Orienteering — covers the skill of navigating over distance, maintaining a direction, planning a route, and the physical demands of hiking. -AC2D20.Tooltips.Focus.pharmacology: Pharmacology — covers an understanding of medication, both its uses in treatment, and its side effects. -AC2D20.Tooltips.Focus.physical-training: Physical Training — covers how to train oneself and others. -AC2D20.Tooltips.Focus.psychiatry: Psychiatry — covers the study and treatment of mental illness. -AC2D20.Tooltips.Focus.rhetoric: Rhetoric — using language in public speaking or a formal debate, to inform, persuade, motivate or convince others. -AC2D20.Tooltips.Focus.rifles: Rifles — covers the use of rifles, carbines, and other firearms for use at Medium and longer ranges. -AC2D20.Tooltips.Focus.running: Running — covers short-distance sprinting and long-distance endurance running. -AC2D20.Tooltips.Focus.rural-stealth: Rural Stealth — covers techniques for moving silently and remaining unseen in rural environments. -AC2D20.Tooltips.Focus.science: Science — covers the scientific method and the various disciplines associated with science, from mathematics, to physics, chemistry, and biology, it also includes more detailed and specific fields of study within these branches. -AC2D20.Tooltips.Focus.sight: Sight — covers visual perception, providing greater sensitivity when visibility is poor, an ability to reliably pick out details at a distance, and a greater ability to spot small variations or brief movement. Spotters, navigators and bombardiers are particularly well suited to utilising this focus. -AC2D20.Tooltips.Focus.smell-and-taste: Smell and Taste — covers the ability to detect and discern information from scents and tastes; this is not a commonplace focus for humans, as humans don’t have especially sensitive senses of smell, though it is valuable focus for poisoners, doctors or sommeliers. -AC2D20.Tooltips.Focus.surgery: Surgery — covers surgical, instrumental, and operative medical procedures which require cutting into a patient, extraction of tissue or foreign objects, or manually closing wounds. -AC2D20.Tooltips.Focus.swimming: Swimming — covers swimming unaided and diving with a breathing apparatus. -AC2D20.Tooltips.Focus.tanks: Tanks — covers the operation of tanks of all sizes. -AC2D20.Tooltips.Focus.technical-projects: Technical Projects — covers an understanding of how to divide work and manage team members on a large scientific, engineering, or academic project. -AC2D20.Tooltips.Focus.threat-awareness: Threat Awareness — covers readiness and detecting danger and the ability to avoid attacks or ambushes. -AC2D20.Tooltips.Focus.throwing: Throwing — covers throwing objects from Olympicstyle shot putt, javelin, and hammer-throw, to the use of grenades and knives. -AC2D20.Tooltips.Focus.toxicology: Toxicology — covers the study of toxic substances (poison, venom, and other foreign substances) and their effect upon the body, as well as the means to neutralise or expel them. -AC2D20.Tooltips.Focus.tracking: Tracking — covers the practice of identifying the tracks of a specific animal, person, or group, and following them. It also covers the ability to determine information about them, such as direction, how many there were, their physical state, speed, and other characteristics. -AC2D20.Tooltips.Focus.urban-stealth: Urban Stealth — covers techniques for moving silently and remaining unseen in urban environments. -AC2D20.Tooltips.Focus.watercraft: Watercraft — covers the operation of civilian and military boats, submarines, and ships. -AC2D20.Tooltips.Skill.academia: This skill covers your character’s education and accumulated knowledge, as well as their ability to research unfamiliar subjects. Academia is most useful when trying to study new information or recall facts about a subject. -AC2D20.Tooltips.Skill.athletics: This skill covers your character’s physical conditioning, and athletic ability. Athletics also covers a character’s attempts to move with haste. -AC2D20.Tooltips.Skill.engineering: "This skill encompasses your character’s technical and mechanical expertise, with an emphasis on practical applications: designing, building, and repairing devices, machines, and structures, as well as operating complex or untested equipment, and determining how to disable or destroy unfamiliar machines. There’s a degree of overlap between Engineering and Vehicles, but Engineering focuses on the mechanics of a vehicle." -AC2D20.Tooltips.Skill.fighting: This skill covers your character’s ability to fight and defend themselves against attacks, a combination of learned techniques, physical conditioning, and instinct. It is used to make attacks, judge threatening situations, and covers a practical understanding of weaponry and combat styles. -AC2D20.Tooltips.Skill.medicine: This skill covers the treatment of physical and mental injuries, and the diagnosis and cure of poisons and diseases. It can also be used to perform autopsies to determine the cause of a person’s death. -AC2D20.Tooltips.Skill.observation: This skill covers your character’s awareness and ability to discern information from their surroundings. It describes how observant and astute they are, how quickly they pick out important details and make use of them, as well as their ability to ignore distractions. Observation overlaps with many other skills, and often runs parallel to Academia, as both are about gaining information, albeit in different ways. -AC2D20.Tooltips.Skill.persuasion: This skill encompasses your character’s ability to influence others, through a mixture of speech and body language. It also allows you to spot when others are attempting to use these techniques—it often takes a liar to spot a liar. -AC2D20.Tooltips.Skill.resilience: This skill encompasses your character’s ability to resist and recover from physical and mental debilities — from injury, pain, and Fatigue and mental distress. This also includes withstanding the effects of poisons, diseases, and magical effects. You may use Resilience to try and resist effects before they happen, or to recover from lasting effects already succumbed to. While Medicine overlaps with Resilience in a few ways, Resilience is more concerned with an individual’s inherent toughness. -AC2D20.Tooltips.Skill.stealth: This skill encompasses your character’s ability to pass undetected, from moving quietly, to using darkness, cover and concealment to remain unseen. It also covers your ability to use disguises, hide in plain sight, or use camouflage to conceal yourself and others. -AC2D20.Tooltips.Skill.survival: This skill expresses your character’s ability to survive inhospitable conditions, including extremes of temperature and weather, dangerous plants and animals — as well as finding sufficient food and water, and creating a fire and a shelter. It also covers the ability to track animals (and enemies), as well as communicating with and training animals. -AC2D20.Tooltips.Skill.tactics: This skill deals with your character’s ability to perceive and evaluate a combat situation and devise an appropriate plan. This not only covers military strategy and tactics, but also team dynamics and leadership, or organising a group of scientists or engineers. -AC2D20.Tooltips.Skill.vehicles: This skill covers the operation and maintenance of vehicles of all kinds. A character skilled in Vehicles is knowledgeable about how they function, what makes them fail, and how to maintain and repair them, as well as how to operate them. This overlaps with Engineering with regards to vehicles specifically, and a character driving a vehicle uses Vehicles instead of Athletics to avoid or overcome obstacles such as terrain features. -AC2D20.Tooltips.VehicleQuality.cargo_x: The vehicle may carry up to X additional Major items. -AC2D20.Tooltips.VehicleQuality.cumbersome: The vehicle is bulky and unresponsive, and increases difficulty tests to move by +1. -AC2D20.Tooltips.VehicleQuality.enclosed: The vehicle is completely enclosed, protecting crew and passengers within. Crew and passengers cannot be targeted by attacks from outside the vehicle, but also cannot use their own weaponry. -AC2D20.Tooltips.VehicleQuality.exposed: The passenger and crew of an exposed vehicle can be targeted by attacks from outside the vehicle and may attack with their own weapons. -AC2D20.Tooltips.VehicleQuality.high_performance: The vehicle is powerful and finely-tuned. The pilot may spend 2 Momentum after a successful skill test to push the vehicle to move 1 additional zone. Any test to repair the vehicle increases in difficulty by +1, due to its finely-tuned nature. -AC2D20.Tooltips.VehicleQuality.single_seat: A single-seat vehicle is designed to be operated by a single pilot also assuming the role of a gunner without the normal penalty. -AC2D20.Tooltips.VehicleQuality.tough_x: The vehicle can take more punishment than most. The number of injuries the vehicle can withstand before being defeated is increased by X. You can also generate 3 Threat to ignore an injury being inflicted on the vehicle (NPC vehicles spend 3 Threat instead). -AC2D20.Tooltips.WeaponQuality.accurate: If you take the Aim minor action before attacking with this weapon, the weapon gains the Intense effect for that attack. -AC2D20.Tooltips.WeaponQuality.bane: The weapon is especially effective against Mythos creatures and ignores the effects of the Invulnerable special rule against such creatures. In addition, Mythos creatures with the Tough X special rule may not spend Threat to ignore wounds caused by a weapon with the Bane quality -AC2D20.Tooltips.WeaponQuality.close_quarters: The weapon is compact and easy to wield in tight confines and in the press of melee. The weapon suffers no penalty when used to make a ranged attack while an enemy is within Reach. -AC2D20.Tooltips.WeaponQuality.cumbersome: The weapon is heavy and awkward to bring to bear against small targets like infantry. When making an attack with this weapon, increase the difficulty of the attack by +1, if the target is human-sized or smaller. -AC2D20.Tooltips.WeaponQuality.debilitating: The difficulty of any skill test to treat the physical injuries of this weapon is increased by +1. -AC2D20.Tooltips.WeaponQuality.escalation: Entering a scene with the weapon generates 1 Threat. -AC2D20.Tooltips.WeaponQuality.giant_killer: The weapon’s destructive power is wasted on small or soft targets, but the bigger the target, the more of the weapon’s lethality is unleashed. When rolling damage for a weapon with this quality, add +X@s to the weapon’s damage where X is the target’s Scale. A weapon may not gain more additional dice from this quality than its base damage — a weapon with a base damage of 6@s cannot gain more than +6@s from it. -AC2D20.Tooltips.WeaponQuality.heavy: Attacks with this weapon increase in difficulty by +2 unless the weapon has been set up (braced against the ground or solid object, or mounted on a bipod or tripod). Setting up a heavy weapon requires the Prepare minor action. -AC2D20.Tooltips.WeaponQuality.hidden: When the weapon is hidden it cannot be detected by those simply looking at the character, and any skill test to search for the weapon increases in difficulty by 1. -AC2D20.Tooltips.WeaponQuality.hunger: "Whenever the weapon is used to inflict one or more injuries, the wielder may gain one of the following bonuses: recover 5 stress, heal a single Injury, or gain +1@s power for the remainder of the scene (this bonus to power may only be gained once per scene)." -AC2D20.Tooltips.WeaponQuality.inaccurate: You cannot benefit from the Aim minor action with this weapon. -AC2D20.Tooltips.WeaponQuality.indirect: The weapon is not designed for direct fire, instead dropping its payload upon enemies over great distances. Attacks with the weapon increase in difficulty by +1, but do not require line of sight. -AC2D20.Tooltips.WeaponQuality.munition: The ammunition for this weapon is especially bulky—when you make an attack using a Munition weapon you must use 1 ammo. The weapon cannot be used to make salvo attacks. -AC2D20.Tooltips.WeaponQuality.parrying: When the weapon’s wielder makes an opposed test in defence of a melee attack, they may reroll a single d20 on their test. This does not stack if the character has multiple Parrying weapons. -AC2D20.Tooltips.WeaponQuality.reliable: You may ignore the first complication rolled using this weapon in an action scene. -AC2D20.Tooltips.WeaponQuality.subtle: Attacks with this weapon are difficult to hear, requiring a difficulty 2 Insight + Observation test to notice. The GM may adjust this difficulty based on distance and ambient noise. -AC2D20.Tooltips.WeaponQuality.unreliable: Attacks with this weapon increase the test’s complication range by 1. +AC2D20.Tooltips.Focus.aircraft: Avions — couvre l’exploitation d’avions civils et militaires, à la fois à moteur unique et multimoteurs. Vers la fin du conflit, il englobe également les avions et la technologie les plus récents. +AC2D20.Tooltips.Focus.animal-handling: Dressage — couvre les connaissances sur différents animaux, comment ils se comportent, comment agir autour d'eux, ainsi que comment les former et les commander. +AC2D20.Tooltips.Focus.architecture: Architecture — permet de comprendre comment les bâtiments sont conçus et construits, leur structure interne et externe et comment leur masse est soutenue et distribuée. +AC2D20.Tooltips.Focus.army: Armée de terre — couvre la familiarité avec la stratégie militaire et les tactiques pour l'infanterie, ainsi que la guerre au sol mécanisée. +AC2D20.Tooltips.Focus.art: Art — couvre la connaissance des œuvres d'art individuelles, l'étude des différentes techniques artistiques et des écoles de pensée, l'histoire de l'art au sein de différentes cultures, et ses influences sur ces cultures. +AC2D20.Tooltips.Focus.camouflage: Camouflage — couvre l'utilisation de matériaux pour camoufler une personne, un objet ou un lieu, en le cachant de la vue. +AC2D20.Tooltips.Focus.cars: Voitures — s'applique à l'exploitation de véhicules à quatre roues civils et militaires, jusqu'à des petits camions. +AC2D20.Tooltips.Focus.charm: Charme — méthodes de manipulation des autres par le charisme naturel et le magnétisme. +AC2D20.Tooltips.Focus.climbing: Escalade — couvre l'escalade des surfaces comme les murs ou les falaises ainsi que l'alpinisme. +AC2D20.Tooltips.Focus.close-quarters: Combat rapproché — couvre l'utilisation des fusils à pompe et des mitrailleuses, et des armes similaires conçues pour être utilisées au combat rapproché ou dans des lieux exigus comme des tranchées ou des bâtiments. +AC2D20.Tooltips.Focus.combat-engineering: Génie de combat — couvre le travail accompli pour soutenir ou empêcher les mouvements de troupes, y compris la construction et la démolition de routes, de tranchées, de fortifications et d’autres infrastructures militaires. +AC2D20.Tooltips.Focus.covert-operations: Opérations Secrètes — consiste à organiser une équipe pour opérer tranquillement et efficacement derrière les lignes ennemies. +AC2D20.Tooltips.Focus.cryptography: Cryptographie — couvre la connaissance des codes et des chiffres, à la fois comment les créer et comment les briser. +AC2D20.Tooltips.Focus.deceive: Tromper — des méthodes pour manipuler les autres pour croire quelque chose qui est faux. +AC2D20.Tooltips.Focus.discipline: Discipline — représente la rigueur d'esprit et le contrôle de soi du personnage, et sa capacité à résister et à se remettre de la confusion et de la peur ou des effets surnaturels qui affectent l'esprit. +AC2D20.Tooltips.Focus.disguise: Déguisement — couvre l’utilisation du maquillage, des vêtements, des accessoires et du langage corporel approprié pour prendre l’apparence d’une autre personne. +AC2D20.Tooltips.Focus.electronics: Électronique — permet de comprendre le fonctionnement des appareils électroniques, comment ils sont assemblés, ce qui peut mal se passer avec eux, et comment les construire, les modifier et les réparer. L’électronique connue sous le nom de “radio électronique” est un développement relativement nouveau dans la Seconde Guerre mondiale, avec des technologies telles que le radar, sonar, les communications et même la première tentative entrent dans l'informatique, se développant de façon significative à mesure que la guerre progresse. +AC2D20.Tooltips.Focus.exotic: Exotique — couvre les armes étranges ou expérimentales et la capacité de déterminer comment une arme inconnue doit être utilisée sans risque. +AC2D20.Tooltips.Focus.explosives: Explosifs — couvre une compréhension des substances explosives et de leur utilisation optimale, ainsi que des connaissances sur la façon de les employer efficacement, y compris comment créer et désamorcer des bombes et des mines. +AC2D20.Tooltips.Focus.finance: Finance — couvre la connaissance des échanges commerciaux et bancaires, tant sur le plan contemporain que sur le plan historique, et de l’influence de l’argent sur la politique et la culture. +AC2D20.Tooltips.Focus.first-aid: Premiers soins — couvre les soins médicaux d'urgence pour stabiliser un patient et le maintenir en vie jusqu'à ce qu'il puisse recevoir des soins médicaux appropriés. +AC2D20.Tooltips.Focus.foraging: Cueillette — couvre la compétence de récolter des aliments provenant de l’environnement local, d’être en mesure d’identifier la flore comestible et de reconnaître les toxines naturelles en toute sécurité. +AC2D20.Tooltips.Focus.fortitude: Vigueur – représente la solidité et l’endurance du corps, ainsi que sa capacité à résister à la fatigue, à la douleur et aux blessures. +AC2D20.Tooltips.Focus.hand-to-hand: Main à main — couvre le combat à mains nues en frappant et en saisissant des adversaires, et peut représenter un entraînement dans un art martial comme la boxe ou le judo. +AC2D20.Tooltips.Focus.handguns: Arme de poing — couvre l'utilisation latérale des bras, des revolvers et des pistolets semi-automatiques et de machines. +AC2D20.Tooltips.Focus.hearing: Ouïe — couvre la perception auditive, distinguant entre différents sons, et la capacité de discerner les informations qui en découlent (comme la possibilité de détecter un accent faible dans la voix de quelqu'un). Cette expertise est un atout majeur pour les opérateurs de radio, les casseurs de code et les spécialistes de la communication. +AC2D20.Tooltips.Focus.heavy-vehicles: Véhicules lourds — couvre le fonctionnement de véhicules utilitaires civils et militaires, y compris des camions lourds, des semi-remorques et des véhicules similaires. +AC2D20.Tooltips.Focus.heavy-weapons: Armes lourdes – couvre l’utilisation de mitrailleuses, de lance-flammes, d’armes antichars et de mortiers ainsi que les armes montées par le véhicule. +AC2D20.Tooltips.Focus.history: Histoire — couvre une connaissance des événements historiques et des forces et individus qui ont conduit ces événements ainsi que des perspectives historiques différentes. +AC2D20.Tooltips.Focus.hunting: Chasse — couvre la capacité de rôder, de capturer et de tuer des proies animales et la connaissance de la préparation de la chasse. +AC2D20.Tooltips.Focus.immunity: Immunité — représente la capacité naturelle d’un personnage à résister aux maladies ou aux toxines, et sa capacité à se remettre de ces effets. +AC2D20.Tooltips.Focus.infectious-diseases: Maladies Infectieuses — couvrent la compréhension des maladies, de leurs causes, de la façon dont elles se propagent, de leurs symptômes et des façons dont elles peuvent être traitées. +AC2D20.Tooltips.Focus.innuendo: Insinuation — l’art de transmettre des informations indirectement. +AC2D20.Tooltips.Focus.instincts: Instinct — couvre le « sixième sens » ou les « tripes » à partir d'observations, et d'autres perceptions extra-sensorielles dont vous ne pourrez peut-être pas décrire la source. Il est peu probable que les instincts fournissent des informations détaillées, mais un penchant ou un sentiment général sur une situation. +AC2D20.Tooltips.Focus.intimidation: Intimidation — inspirer la peur, le doute ou l'hésitation ou tirer parti des faiblesses d'une personne contre elle. +AC2D20.Tooltips.Focus.invocation: Invocation — méthodes inhabituelles et ésotériques de communication avec des entités paranormales qui ne sont généralement pas ouvertes à la personne moyenne. +AC2D20.Tooltips.Focus.leadership: Commandement — couvre le commandement et la direction des autres, donne des ordres clairs et maintient le moral. +AC2D20.Tooltips.Focus.lifting: Soulever — couvre le levage et le déplacement d'objets lourds avec le conditionnement nécessaire pour rendre ces efforts plus efficaces. +AC2D20.Tooltips.Focus.linguistics: Linguistique — couvre l'étude des langues sous leur forme actuelle, ainsi que les langues historiques et mortes, et les façons dont cette langue change au fil du temps. +AC2D20.Tooltips.Focus.mechanical-engineering: Génie mécanique — permet de comprendre les dispositifs mécaniques, comment ils fonctionnent, comment ils peuvent échouer et comment les construire et les réparer. Cette expertise peut être appliquée à tous les véhicules de combat tels que les chars, les avions, les bateaux et autres engins de soutien. +AC2D20.Tooltips.Focus.melee-weapons: Armes de mêlée – couvre les combats avec une arme de mêlée, comme un couteau ou une baïonnette. +AC2D20.Tooltips.Focus.motorcycles: Motos — couvre le fonctionnement de véhicules civils et militaires à deux et trois roues +AC2D20.Tooltips.Focus.mysticism: Mysticisme — couvre la connaissance des rites et des pratiques pratiquées par les anciens dirigeants spirituels (et leurs descendants modernes) pour communiquer avec leurs dieux et leurs esprits, et comment les combattre ou les supporter. +AC2D20.Tooltips.Focus.navy: Marine — couvre la stratégie et les tactiques navales, des eaux peu profondes aux eaux profondes, et les actions à un seul bateau aux principaux engagements de la flotte. +AC2D20.Tooltips.Focus.negotiation: Négociation — parvenir à un accord par la conversation, éventuellement par le commerce ou le paiement. +AC2D20.Tooltips.Focus.occultism: Occultisme — couvre l'étude des phénomènes surnaturels et occultes, des pratiques, des créatures et des traditions. +AC2D20.Tooltips.Focus.orienteering: Orientation — couvre la compétence de navigation sur la distance, de maintenir une direction, de planifier un parcours et les exigences physiques de la randonnée. +AC2D20.Tooltips.Focus.pharmacology: Pharmacologie — couvre une compréhension des médicaments, à la fois de leurs utilisations dans le traitement et de leurs effets secondaires. +AC2D20.Tooltips.Focus.physical-training: Entraînement physique — couvre la façon de s'entraîner et d'entraîner les autres. +AC2D20.Tooltips.Focus.psychiatry: Psychiatrie — couvre l'étude et le traitement de la maladie mentale. +AC2D20.Tooltips.Focus.rhetoric: Rhétorique — en utilisant la langue dans un discours public ou un débat formel, pour informer, persuader, motiver ou convaincre les autres. +AC2D20.Tooltips.Focus.rifles: Fusils — couvre l'utilisation de fusils, de carabines et d'autres armes à feu pour une utilisation à distance moyenne et longue. +AC2D20.Tooltips.Focus.running: Course — couvre le sprint de courte distance et la course d’endurance longue distance. +AC2D20.Tooltips.Focus.rural-stealth: Furtivité Rurale — couvre les techniques pour se déplacer silencieusement et rester invisibles dans les milieux ruraux. +AC2D20.Tooltips.Focus.science: Science — couvre la méthode scientifique et les différentes disciplines associées à la science, des mathématiques, à la physique, à la chimie et à la biologie, il comprend également des domaines d'étude plus détaillés et plus spécifiques dans ces branches. +AC2D20.Tooltips.Focus.sight: Vue — couvre la perception visuelle, offrant une plus grande sensibilité lorsque la visibilité est faible, la possibilité de distinguer de façon fiable les détails à distance, et une plus grande capacité à repérer de petites variations ou un bref mouvement. Les observateurs, les navigateurs et les bombardiers sont particulièrement bien adaptés pour utiliser cette focalisation. +AC2D20.Tooltips.Focus.smell-and-taste: Odorat et goût — couvrent la capacité de détecter et de discerner les informations provenant des parfums et des goûts ; Il ne s’agit pas d’une expertise commune pour les humains, car les humains n’ont pas de sens de l’odeur particulièrement sensible, même si elle est précieuse pour les empoisonneurs, les médecins ou les sommeliers. +AC2D20.Tooltips.Focus.surgery: Chirurgie — couvre les interventions chirurgicales, instrumentales et les procédures médicales qui nécessitent une intervention sur un patient, l'extraction de tissus ou d'objets étrangers, ou la fermeture manuelle des blessures. +AC2D20.Tooltips.Focus.swimming: Natation - couvre nager sans aide et plongée avec un appareil respiratoire. +AC2D20.Tooltips.Focus.tanks: Tanks — couvre le fonctionnement des tanks de toutes tailles. +AC2D20.Tooltips.Focus.technical-projects: Projets techniques — permet de comprendre comment diviser le travail et gérer les membres de l’équipe sur un vaste projet scientifique, technique ou académique. +AC2D20.Tooltips.Focus.threat-awareness: Sensibilisation à la menace — couvre la préparation et la détection des dangers et la capacité à éviter les attaques ou les embuscades. +AC2D20.Tooltips.Focus.throwing: Lancer — couvre les objets de tir de style olympique, des javelines et lancers de marteau à l'utilisation de grenades et de couteaux. +AC2D20.Tooltips.Focus.toxicology: Toxicologie — couvre l'étude des substances toxiques (poison, venin, et autres substances étrangères) et leur effet sur le corps, ainsi que les moyens de les neutraliser ou de les expulser. +AC2D20.Tooltips.Focus.tracking: Pistage — couvre la pratique consistant à identifier les traces d'un animal, d'une personne ou d'un groupe et à les suivre. Il couvre également la capacité de déterminer les informations à leur sujet, telles que la direction, le nombre de personnes présentes, leur état physique, leur vitesse et d'autres caractéristiques. +AC2D20.Tooltips.Focus.urban-stealth: Furtivité Urbaine — couvre les techniques pour se déplacer silencieusement et rester invisibles dans les environnements urbains. +AC2D20.Tooltips.Focus.watercraft: Embarcations — couvre l'exploitation de bateaux civils et militaires, de sous-marins et de navires. +AC2D20.Tooltips.Skill.academia: Cette compétence couvre l'éducation de votre personnage et les connaissances accumulées ainsi que sa capacité à rechercher des sujets inconnus. Érudition est très utile pour étudier de nouvelles informations ou rappeler des faits sur un sujet. +AC2D20.Tooltips.Skill.athletics: Cette compétence couvre la condition physique de votre personnage et la capacité athlétique. L'athlétisme couvre également les tentatives d'un personnage à se déplacer avec agilité. +AC2D20.Tooltips.Skill.engineering: "Cette compétence englobe l'expertise technique et mécanique de votre personnage, en mettant l'accent sur des applications pratiques : conception, construction et réparation d'appareils, des machines et des structures, ainsi que des équipements complexes ou non testés, et déterminer comment désactiver ou détruire des machines inconnues. Il y a un degré de chevauchement entre l’ingénierie et les véhicules, mais l’ingénierie se concentre sur la mécanique d’un véhicule." +AC2D20.Tooltips.Skill.fighting: Cette compétence couvre la capacité de votre personnage à se battre et à se défendre contre les attaques, une combinaison de techniques apprises, de conditionnement physique et d'instinct. Il est utilisé pour faire des attaques, juger des situations menaçantes et couvre une compréhension pratique des armes et des styles de combat. +AC2D20.Tooltips.Skill.medicine: Cette compétence couvre le traitement des blessures physiques et mentales ainsi que le diagnostic et le traitement des poisons et des maladies. Il peut également être utilisé pour effectuer des autopsies afin de déterminer la cause du décès d’une personne. +AC2D20.Tooltips.Skill.observation: Cette compétence couvre la conscience et la capacité de votre personnage à discerner des informations sur son environnement. Il décrit à quel point ils sont observateurs et astucieux, à quelle vitesse ils choisissent des détails importants et les utilisent, ainsi que leur capacité à ignorer les distractions. L’Observation se chevauche avec de nombreuses autres compétences, et se rapproche souvent de l'Érudition, car tous deux visent à obtenir des informations, quoique de différentes manières. +AC2D20.Tooltips.Skill.persuasion: Cette compétence englobe la capacité de votre personnage à influencer les autres, grâce à un mélange de langage de parole et de langage corporel. Il vous permet également de repérer lorsque d’autres tentent d’utiliser ces techniques – il faut souvent un menteur pour repérer un menteur. +AC2D20.Tooltips.Skill.resilience: Cette compétence englobe la capacité de votre personnage à résister et à se remettre des effets physiques et mentales — des blessures, des douleurs et de la fatigue et de la détresse mentale. Cela inclut également les effets des poisons, des maladies et des effets magiques. Vous pouvez utiliser la Résilience pour essayer de résister aux effets avant qu'ils ne se produisent, ou pour récupérer des effets durables déjà succombés. Alors que la Médecine et la Résilience peuvent se chevaucher, la Résilience se préoccupe davantage de la endurance intrinsèque d’un individu. +AC2D20.Tooltips.Skill.stealth: Cette compétence englobe la capacité de votre personnage à passer inaperçu, de se déplacer discrètement, à utiliser les ténèbres, les couvertures et les dissimulations pour rester invisibles. Il couvre également votre capacité à utiliser des déguisements, à se cacher à la vue ou à utiliser le camouflage pour se cacher et se dissimuler. +AC2D20.Tooltips.Skill.survival: Cette compétence exprime la capacité de votre personnage à survivre à des conditions inhospitalières, y compris les extrêmes de température et de météo, les plantes et les animaux dangereux — en plus de trouver suffisamment d’eau et de nourriture, et de créer un feu et un abri. Il couvre également la capacité de suivre les animaux (et les ennemis), ainsi que la communication avec et l'entraînement des animaux. +AC2D20.Tooltips.Skill.tactics: Cette compétence traite de la capacité de votre personnage à percevoir et évaluer une situation de combat et à élaborer un plan approprié. Cela couvre non seulement la stratégie et la tactique militaires, mais aussi la dynamique et le commandement, ou l’organisation d’un groupe de scientifiques ou d’ingénieurs. +AC2D20.Tooltips.Skill.vehicles: Cette compétence couvre le fonctionnement et l'entretien des véhicules de toutes sortes. Un personnage compétent en Véhicules est au courant de leur fonctionnement, de ce qui les rend défectueux, et comment les entretenir, les réparer, ainsi que comment les utiliser. Ce chevauchement avec l'Ingénierie en ce qui concerne les véhicules en particulier, et un personnage conduisant un véhicule utilise des véhicules au lieu de l'athlétisme pour éviter ou surmonter les obstacles tels que les caractéristiques de terrain. +AC2D20.Tooltips.VehicleQuality.cargo_x: Le véhicule peut transporter jusqu'à X objets majeurs supplémentaires. +AC2D20.Tooltips.VehicleQuality.cumbersome: Le véhicule est volumineux et non réactif, et augmente les tests de difficulté pour se déplacer de +1. +AC2D20.Tooltips.VehicleQuality.enclosed: Le véhicule est entièrement fermé, protégeant les membres d'équipage et les passagers à l'intérieur. Les équipages et les passagers ne peuvent pas être visés par des attaques de l'extérieur du véhicule, mais ne peuvent pas non plus utiliser leur propre arme. +AC2D20.Tooltips.VehicleQuality.exposed: Le passager et l'équipage d'un véhicule exposé peuvent être pris pour cible par des attaques de l'extérieur du véhicule et peuvent attaquer avec leurs propres armes. +AC2D20.Tooltips.VehicleQuality.high_performance: Le véhicule est puissant et peaufiné. Le pilote peut dépenser 2 Momentum après un test de compétence réussi pour pousser le véhicule à se déplacer d'1 zone supplémentaire. Tout test de réparation du véhicule augmente en difficulté de +1, en raison de sa nature peaufinée. +AC2D20.Tooltips.VehicleQuality.single_seat: Un véhicule à siège unique est conçu pour être exploité par un seul pilote, en assumant également le rôle de fusilleur sans pénalité normale. +AC2D20.Tooltips.VehicleQuality.tough_x: Le véhicule peut subir plus de dégâts que la plupart des autres. Le nombre de blessures que le véhicule peut supporter avant d'être détruit est augmenté de X. Vous pouvez également générer 3 Menaces pour ignorer une blessure infligée au véhicule (les véhicules PNJ dépensent 3 Menaces à la place). +AC2D20.Tooltips.WeaponQuality.accurate: Si vous prenez une action mineure de Visée avant d'attaquer avec cette arme, l'arme gagne l'effet Aggravant pour cette attaque. +AC2D20.Tooltips.WeaponQuality.bane: L'arme est particulièrement efficace contre les créatures du Mythe et ignore les effets de la règle spéciale Invulnérable contre ces créatures. De plus, les créatures du Mythe qui ont la règle spéciale de l'endurance X ne peuvent pas dépenser de la menace pour ignorer les blessures causées par une arme avec la qualité Fléau +AC2D20.Tooltips.WeaponQuality.close_quarters: L'arme est compacte et facile à manier dans des limites serrées et dans des situations de mêlée. L'arme ne subit aucun malus lorsqu'elle est utilisée pour faire une attaque à distance lorsque l'ennemi est à portée. +AC2D20.Tooltips.WeaponQuality.cumbersome: L'arme est lourde et maladroite à porter contre de petites cibles comme l'infanterie. Lors d'une attaque avec cette arme, augmente la difficulté de l'attaque de +1, si la cible est de taille humaine ou plus petite. +AC2D20.Tooltips.WeaponQuality.debilitating: La difficulté de n'importe quel test de compétence pour traiter les blessures physiques de cette arme est augmentée de +1. +AC2D20.Tooltips.WeaponQuality.escalation: Entrer dans une scène avec l'arme génère 1 Menace. +AC2D20.Tooltips.WeaponQuality.experimental: Tests with this item increase their complication range by 2. In addition, for every 2 Momentum generated on a test with this item, you also generate 1 Threat. +AC2D20.Tooltips.WeaponQuality.giant_killer: La puissance destructrice de l’arme est gaspillée sur des cibles faibles ou molles, mais plus la cible est grande, plus la létalité de l’arme est grande. Lorsque vous lancez des dégâts pour une arme de cette qualité, ajoutez +X@s aux dégâts de l'arme, où X est la taille de la cible. Une arme ne peut pas obtenir plus de dés supplémentaires de cette qualité que ses dégâts de base, une arme dont les dégâts de base sont de 6@s ne peut pas gagner plus de +6@s à partir de cette qualité. +AC2D20.Tooltips.WeaponQuality.heavy: Les attaques avec cette arme augmentent la difficulté de +2 à moins que l'arme n'ait été mise en place (bloquée contre le sol ou l'objet solide, ou monté sur un trépied). La mise en place d'une arme lourde nécessite la préparation d'une action mineure. +AC2D20.Tooltips.WeaponQuality.hidden: Quand l'arme est cachée, elle ne peut pas être détectée par ceux qui regardent simplement le personnage, et n'importe quel test de compétence pour rechercher l'arme augmente de 1 en difficulté. +AC2D20.Tooltips.WeaponQuality.hunger: "Chaque fois que l'arme est utilisée pour infliger une ou plusieurs blessures, le porteur peut obtenir l'un des bonus suivants: récupérer 5 stress, Soigne une seule blessure, ou gagner +1@s de puissance pendant le reste de la scène (ce bonus à la puissance ne peut être gagné qu'une fois par scène)." +AC2D20.Tooltips.WeaponQuality.inaccurate: Vous ne pouvez pas profiter de l'action mineure Visée avec cette arme. +AC2D20.Tooltips.WeaponQuality.indirect: L'arme n'est pas conçue pour le tir direct, mais pour lâcher sa charge sur les ennemis à grande distance. Les attaques avec l'arme augmentent en difficulté de +1, mais ne nécessitent pas de ligne de vue. +AC2D20.Tooltips.WeaponQuality.munition: Les munitions pour cette arme sont particulièrement grossières, quand vous lancez une attaque avec une arme à munition, vous devez utiliser 1 munition. L'arme ne peut pas être utilisée pour faire des attaques de salve. +AC2D20.Tooltips.WeaponQuality.parrying: Quand le porteur de l’arme fait un test contre une attaque de mêlée, il peut relancer un seul d20 lors de son test. Cela ne se cumule pas si le personnage possède plusieurs armes de parade. +AC2D20.Tooltips.WeaponQuality.reliable: Vous pouvez ignorer la première complication déroulée en utilisant cette arme dans une scène d'action. +AC2D20.Tooltips.WeaponQuality.subtle: Les attaques avec cette arme sont difficiles à entendre, nécessitant un test de difficulté 2 Perception + Observation à signaler. Le MJ peut ajuster cette difficulté en fonction de la distance et du bruit ambiant. +AC2D20.Tooltips.WeaponQuality.unreliable: Les attaques avec cette arme augmentent le niveau de difficulté du test de 1. AC2D20.UI.Add: Ajouter AC2D20.UI.CarryWeight: Charge AC2D20.UI.Cost: Coût @@ -431,7 +432,7 @@ AC2D20.VEHICLES.QUALITIES.high_performance: Haute performance AC2D20.VEHICLES.QUALITIES.single_seat: Siège unique AC2D20.VEHICLES.QUALITIES.tough_x: Difficile AC2D20.Warnings.DerivedValue: Ceci est une valeur calculée qui ne peut être modifiée. -AC2D20.Warnings.OnEditOwnedItemActiveEffects: Managing Active Effects within an Owned Item is not currently supported. +AC2D20.Warnings.OnEditOwnedItemActiveEffects: La gestion des effets actifs dans un objet n'est pas prise en charge pour le moment. AC2D20.WEAPONS.damageEffect.area: Étendue AC2D20.WEAPONS.damageEffect.backlash_x: Contrecoup AC2D20.WEAPONS.damageEffect.drain: Épuisant @@ -453,6 +454,7 @@ AC2D20.WEAPONS.weaponQuality.close_quarters: Combat rapproché AC2D20.WEAPONS.weaponQuality.cumbersome: Encombrant AC2D20.WEAPONS.weaponQuality.debilitating: Invalidant AC2D20.WEAPONS.weaponQuality.escalation: Intensification +AC2D20.WEAPONS.weaponQuality.experimental: Experimental AC2D20.WEAPONS.weaponQuality.giant_killer: Tueur de géants AC2D20.WEAPONS.weaponQuality.heavy: Lourd AC2D20.WEAPONS.weaponQuality.hidden: Caché diff --git a/i18n/pt_BR.yaml b/i18n/pt_BR.yaml index e713253..a9e1777 100644 --- a/i18n/pt_BR.yaml +++ b/i18n/pt_BR.yaml @@ -396,6 +396,7 @@ AC2D20.Tooltips.WeaponQuality.close_quarters: The weapon is compact and easy to AC2D20.Tooltips.WeaponQuality.cumbersome: The weapon is heavy and awkward to bring to bear against small targets like infantry. When making an attack with this weapon, increase the difficulty of the attack by +1, if the target is human-sized or smaller. AC2D20.Tooltips.WeaponQuality.debilitating: The difficulty of any skill test to treat the physical injuries of this weapon is increased by +1. AC2D20.Tooltips.WeaponQuality.escalation: Entering a scene with the weapon generates 1 Threat. +AC2D20.Tooltips.WeaponQuality.experimental: Tests with this item increase their complication range by 2. In addition, for every 2 Momentum generated on a test with this item, you also generate 1 Threat. AC2D20.Tooltips.WeaponQuality.giant_killer: The weapon’s destructive power is wasted on small or soft targets, but the bigger the target, the more of the weapon’s lethality is unleashed. When rolling damage for a weapon with this quality, add +X@s to the weapon’s damage where X is the target’s Scale. A weapon may not gain more additional dice from this quality than its base damage — a weapon with a base damage of 6@s cannot gain more than +6@s from it. AC2D20.Tooltips.WeaponQuality.heavy: Attacks with this weapon increase in difficulty by +2 unless the weapon has been set up (braced against the ground or solid object, or mounted on a bipod or tripod). Setting up a heavy weapon requires the Prepare minor action. AC2D20.Tooltips.WeaponQuality.hidden: When the weapon is hidden it cannot be detected by those simply looking at the character, and any skill test to search for the weapon increases in difficulty by 1. @@ -453,6 +454,7 @@ AC2D20.WEAPONS.weaponQuality.close_quarters: Curto Alcance AC2D20.WEAPONS.weaponQuality.cumbersome: Desajeitado AC2D20.WEAPONS.weaponQuality.debilitating: Debilitante AC2D20.WEAPONS.weaponQuality.escalation: Agravante +AC2D20.WEAPONS.weaponQuality.experimental: Experimental AC2D20.WEAPONS.weaponQuality.giant_killer: Mata-Gigantes AC2D20.WEAPONS.weaponQuality.heavy: Pesado AC2D20.WEAPONS.weaponQuality.hidden: Oculto diff --git a/system/src/config.mjs b/system/src/config.mjs index 258e46d..4c45b2e 100644 --- a/system/src/config.mjs +++ b/system/src/config.mjs @@ -64,6 +64,7 @@ AC2D20.WEAPON_QUALITIES = { cumbersome: "AC2D20.WEAPONS.weaponQuality.cumbersome", debilitating: "AC2D20.WEAPONS.weaponQuality.debilitating", escalation: "AC2D20.WEAPONS.weaponQuality.escalation", + experimental: "AC2D20.WEAPONS.weaponQuality.experimental", giant_killer: "AC2D20.WEAPONS.weaponQuality.giant_killer", heavy: "AC2D20.WEAPONS.weaponQuality.heavy", hidden: "AC2D20.WEAPONS.weaponQuality.hidden", diff --git a/system/src/hooks/diceSoNiceReadyHook.mjs b/system/src/hooks/diceSoNiceReadyHook.mjs index 80969e9..ed18911 100644 --- a/system/src/hooks/diceSoNiceReadyHook.mjs +++ b/system/src/hooks/diceSoNiceReadyHook.mjs @@ -9,10 +9,11 @@ export function diceSoNiceReadyHook(dice3d) { name: "ac2d20", description: "Achtung Cthulhu 2d20", category: "Colors", - foreground: "#000000", + foreground: "#c3ae5c", background: "#000000", outline: "#000000", texture: "none", + font: "Germania One", } ); diff --git a/system/src/roller/Roller2D20.mjs b/system/src/roller/Roller2D20.mjs index 691d8a1..f777b72 100644 --- a/system/src/roller/Roller2D20.mjs +++ b/system/src/roller/Roller2D20.mjs @@ -9,6 +9,45 @@ export default class Roller2D20 { successThreshold = 0; + static async addD6({ + ac2d20Roll = null, + actorId = null, + dicenum = 2, + diceRolled = [], + itemId = null, + rollName = "Roll D6", + } = {}) { + let formula = `${dicenum}ds`; + let roll = new Roll(formula); + + await roll.evaluate(); + this.showDiceSoNice(roll); + + let newRollName = `${ac2d20Roll.rollName} [+ ${dicenum} DC]`; + let oldDiceRolled = ac2d20Roll.diceRolled; + + await Roller2D20.parseD6Roll({ + rollName: newRollName, + roll, + diceRolled: diceRolled, + addDice: oldDiceRolled, + itemId: itemId, + actorId: actorId, + }); + } + + + static getComplicationCount(results) { + let complications = 0; + + results.forEach(roll => { + complications += roll.complication; + }); + + return complications; + } + + static getRollModeSettings() { const rollMode = game.settings.get("core", "rollMode"); @@ -45,37 +84,14 @@ export default class Roller2D20 { } - static async rollD20({ - actorId = null, - attribute = 0, - complication = 20, - dicenum = 2, - difficulty = 1, - focus = false, - itemId = null, - rollName = "Roll xD20", - skill = 0, - } = {}) { - const successThreshold = parseInt(attribute) + parseInt(skill); - - const critThreshold = focus && parseInt(skill) > 0 ? parseInt(skill) : 1; - - const complicationThreshold = parseInt(complication); - - const formula = `${dicenum}d20`; - const roll = new Roll(formula); - - await roll.evaluate(); + static getSuccessCount(results) { + let successes = 0; - await Roller2D20.parseD20Roll({ - actorId, - complicationThreshold, - critThreshold, - itemId, - roll, - rollName, - successThreshold, + results.forEach(roll => { + successes += roll.success; }); + + return successes; } @@ -139,136 +155,6 @@ export default class Roller2D20 { } - static async rerollD20({ - complicationThreshold = 20, - critThreshold = 1, - diceRolled = [], - rerollIndexes = [], - roll = null, - rollName = "Roll xD20", - successThreshold = 0, - } = {}) { - if (!rerollIndexes.length) { - return ui.notifications.notify("Select the dice you wish to reroll"); - } - - let numOfDice = rerollIndexes.length; - let formula = `${numOfDice}d20`; - - let _roll = new Roll(formula); - await _roll.evaluate(); - - await Roller2D20.parseD20Roll({ - rollName: `${rollName} [re-roll]`, - roll: _roll, - successThreshold: successThreshold, - critThreshold: critThreshold, - complicationThreshold: complicationThreshold, - diceRolled: diceRolled, - rerollIndexes: rerollIndexes, - }); - } - - - static async sendToChat({ - actorId = null, - complicationThreshold = 20, - critThreshold = 1, - diceRolled = [], - itemId = null, - rerollIndexes = [], - roll = null, - rollName = "Roll xD20", - successThreshold = 0, - } = {}) { - const successes = Roller2D20.getSuccessCount(diceRolled); - const complications = Roller2D20.getComplicationCount(diceRolled); - - const rollData = { - actorId, - complications, - itemId, - results: diceRolled, - rollName, - successes, - successThreshold: successThreshold, - }; - - const html = await renderTemplate( - "systems/ac2d20/templates/chat/roll2d20.hbs", - rollData - ); - - const ac2d20Roll = { - complicationThreshold, - critThreshold, - diceFace: "d20", - diceRolled, - rerollIndexes, - rollName, - successThreshold, - }; - - const speaker = {actor: actorId}; - - const { whisper, blind } = this.getRollModeSettings(); - - let chatData = { - blind, - content: html, - flags: { ac2d20Roll }, - roll, - rollMode: game.settings.get("core", "rollMode"), - speaker, - user: game.user.id, - whisper, - }; - - await ChatMessage.create(chatData); - } - - - static getSuccessCount(results) { - let successes = 0; - - results.forEach(roll => { - successes += roll.success; - }); - - return successes; - } - - - static getComplicationCount(results) { - let complications = 0; - - results.forEach(roll => { - complications += roll.complication; - }); - - return complications; - } - - - static async rollD6({ - actorId = null, - diceNum = 2, - itemId = null, - rollName = "Roll D6", - } = {}) { - const formula = `${diceNum}ds`; - const roll = new Roll(formula); - - await roll.evaluate(); - - await Roller2D20.parseD6Roll({ - actorId: actorId, - itemId: itemId, - roll: roll, - rollName: rollName, - }); - } - static async parseD6Roll({ actorId = null, addDice = [], @@ -319,6 +205,39 @@ export default class Roller2D20 { }); } + + static async rerollD20({ + complicationThreshold = 20, + critThreshold = 1, + diceRolled = [], + rerollIndexes = [], + roll = null, + rollName = "Roll xD20", + successThreshold = 0, + } = {}) { + if (!rerollIndexes.length) { + return ui.notifications.notify("Select the dice you wish to reroll"); + } + + let numOfDice = rerollIndexes.length; + let formula = `${numOfDice}d20`; + + let _roll = new Roll(formula); + await _roll.evaluate(); + this.showDiceSoNice(_roll); + + await Roller2D20.parseD20Roll({ + rollName: `${rollName} [re-roll]`, + roll: _roll, + successThreshold: successThreshold, + critThreshold: critThreshold, + complicationThreshold: complicationThreshold, + diceRolled: diceRolled, + rerollIndexes: rerollIndexes, + }); + } + + static async rerollD6({ actorId = null, diceRolled = [], @@ -337,6 +256,7 @@ export default class Roller2D20 { let _roll = new Roll(formula); await _roll.evaluate(); + this.showDiceSoNice(_roll); await Roller2D20.parseD6Roll({ rollName: `${rollName} [re-roll]`, @@ -348,29 +268,63 @@ export default class Roller2D20 { }); } - static async addD6({ - ac2d20Roll = null, + + static async rollD20({ actorId = null, + attribute = 0, + complication = 20, dicenum = 2, - diceRolled = [], + difficulty = 1, + focus = false, + itemId = null, + rollName = "Roll xD20", + skill = 0, + } = {}) { + const successThreshold = parseInt(attribute) + parseInt(skill); + + const critThreshold = focus && parseInt(skill) > 0 ? parseInt(skill) : 1; + + const complicationThreshold = parseInt(complication); + + const formula = `${dicenum}d20`; + const roll = new Roll(formula); + + await roll.evaluate(); + this.showDiceSoNice(roll); + + await Roller2D20.parseD20Roll({ + actorId, + complicationThreshold, + critThreshold, + itemId, + roll, + rollName, + successThreshold, + }); + } + + + static async rollD6({ + actorId = null, + diceNum = 2, itemId = null, rollName = "Roll D6", } = {}) { - let formula = `${dicenum}ds`; - let _roll = new Roll(formula); - await _roll.evaluate(); - let newRollName = `${ac2d20Roll.rollName} [+ ${dicenum} DC]`; - let oldDiceRolled = ac2d20Roll.diceRolled; + const formula = `${diceNum}ds`; + const roll = new Roll(formula); + + await roll.evaluate(); + this.showDiceSoNice(roll); + await Roller2D20.parseD6Roll({ - rollName: newRollName, - roll: _roll, - diceRolled: diceRolled, - addDice: oldDiceRolled, - itemId: itemId, actorId: actorId, + itemId: itemId, + roll: roll, + rollName: rollName, }); } + static async sendD6ToChat({ actorId = null, diceRolled = [], @@ -434,7 +388,80 @@ export default class Roller2D20 { }; await ChatMessage.create(chatData); + } + + + static async sendToChat({ + actorId = null, + complicationThreshold = 20, + critThreshold = 1, + diceRolled = [], + itemId = null, + rerollIndexes = [], + roll = null, + rollName = "Roll xD20", + successThreshold = 0, + } = {}) { + const successes = Roller2D20.getSuccessCount(diceRolled); + const complications = Roller2D20.getComplicationCount(diceRolled); + + const rollData = { + actorId, + complications, + itemId, + results: diceRolled, + rollName, + successes, + successThreshold: successThreshold, + }; + + const html = await renderTemplate( + "systems/ac2d20/templates/chat/roll2d20.hbs", + rollData + ); + + const ac2d20Roll = { + complicationThreshold, + critThreshold, + diceFace: "d20", + diceRolled, + rerollIndexes, + rollName, + successThreshold, + }; + + const speaker = {actor: actorId}; + + const { whisper, blind } = this.getRollModeSettings(); + + let chatData = { + blind, + content: html, + flags: { ac2d20Roll }, + roll, + rollMode: game.settings.get("core", "rollMode"), + speaker, + user: game.user.id, + whisper, + }; + + await ChatMessage.create(chatData); + } + + /** + * Add support for the Dice So Nice module + * @param {Object} roll + * @param {String} rollMode + */ + static async showDiceSoNice(roll) { + if (game.modules.get("dice-so-nice") + && game.modules.get("dice-so-nice").active + ) { + const { whisper, blind } = Roller2D20.getRollModeSettings(); + + await game.dice3d.showForRoll(roll, game.user, true, whisper, blind); + } } } diff --git a/system/system.json b/system/system.json index 9216c71..cc56c72 100644 --- a/system/system.json +++ b/system/system.json @@ -2,7 +2,7 @@ "id": "ac2d20", "title": "Achtung! Cthulhu 2d20", "description": "An unofficial system for playing Achtung! Cthulhu 2d20 from Modiphius Entertainment Ltd.", - "version": "11.5.2", + "version": "11.6.0", "compatibility": { "minimum": "11", "verified": "12" @@ -12,10 +12,11 @@ "name": "Paul Maskelyne", "discord": "Muttley#3296", "email": "mu77ley@gmail.com", - "mastodon": "@muttley@dice.camp" + "flags": {} }, { - "name": "HappySteve" + "name": "HappySteve", + "flags": {} } ], "esmodules": [ @@ -31,8 +32,11 @@ "system": "ac2d20", "path": "packs/system_documentation", "type": "JournalEntry", - "private": false, - "flags": {} + "flags": {}, + "ownership": { + "PLAYER": "OBSERVER", + "ASSISTANT": "OWNER" + } }, { "name": "macros", @@ -40,8 +44,11 @@ "system": "ac2d20", "path": "packs/macros", "type": "Macro", - "private": false, - "flags": {} + "flags": {}, + "ownership": { + "PLAYER": "OBSERVER", + "ASSISTANT": "OWNER" + } }, { "name": "skills", @@ -49,8 +56,11 @@ "system": "ac2d20", "path": "packs/skills", "type": "Item", - "private": false, - "flags": {} + "flags": {}, + "ownership": { + "PLAYER": "OBSERVER", + "ASSISTANT": "OWNER" + } } ], "packFolders": [ @@ -62,7 +72,8 @@ "macros", "skills", "system_documentation" - ] + ], + "folders": [] } ], "languages": [ @@ -95,6 +106,5 @@ "url": "https://github.com/Muttley/foundryvtt-ac2d20", "manifest": "https://github.com/Muttley/foundryvtt-ac2d20/releases/latest/download/system.json", "download": "https://github.com/Muttley/foundryvtt-ac2d20/releases/latest/download/ac2d20.zip", - "background": "systems/ac2d20/assets/artwork/AchtungCthulhu_WallPaper2023_1920x1080_TheVillageofStSulac.jpg", - "initiative": null + "background": "systems/ac2d20/assets/artwork/AchtungCthulhu_WallPaper2023_1920x1080_TheVillageofStSulac.jpg" } diff --git a/system/template.json b/system/template.json index 9c5dbd3..8fe9f35 100644 --- a/system/template.json +++ b/system/template.json @@ -355,6 +355,9 @@ "escalation": { "value": false }, + "experimental": { + "value": false + }, "giant_killer": { "value": false },