Skip to content

Commit

Permalink
Merge pull request #44 from dmrickey/12.4.4.vnext
Browse files Browse the repository at this point in the history
2.14.4.vnext
  • Loading branch information
dmrickey authored Oct 5, 2024
2 parents 998dfa1 + de746fa commit 8c93bfb
Show file tree
Hide file tree
Showing 154 changed files with 4,067 additions and 2,954 deletions.
97 changes: 35 additions & 62 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ Supports PF1 v9+
### Table of contents

- [This documentation is no longer kept up to date. All documentation can be found in the in-game compendium included with this mod.](#this-documentation-is-no-longer-kept-up-to-date-all-documentation-can-be-found-in-the-in-game-compendium-included-with-this-mod)
- [Table of contents](#table-of-contents)
- [Class Features](#class-features)
- [Versatile Performance](#versatile-performance)
- [Generic Targets](#generic-targets)
Expand All @@ -32,25 +33,52 @@ Supports PF1 v9+
- [Finesse](#finesse-1)
- [Fortune/Misfortune](#fortunemisfortune)
- [Targeted Bonus Examples](#targeted-bonus-examples)
- [Fighter Weapon Training](#fighter-weapon-training)
- [Gunslinginer Gun Training](#gunslinginer-gun-training)
- [Lead Blades, Gravity Bow, Strong Jaw, and Impact Weapon](#lead-blades-gravity-bow-strong-jaw-and-impact-weapon)
- [Magus Arcane Weapon Enhcancement](#magus-arcane-weapon-enhcancement)
- [Paladin Smite](#paladin-smite)
- [Slayer's Studied Target](#slayers-studied-target)
- [Unchained Rogue's Finesse Training](#unchained-rogues-finesse-training)
- [Feats](#feats)
- [Armor Focus](#armor-focus)
- [Armor Focus](#armor-focus-1)
- [Improved Armor Focus](#improved-armor-focus)
- [Elemental Focus](#elemental-focus)
- [Furious Focus](#furious-focus)
- [Martial Focus](#martial-focus)
- [Spell Focus](#spell-focus)
- [Spell Specialization](#spell-specialization)
- [Weapon Focus](#weapon-focus)
- [Weapon Focus](#weapon-focus-1)
- [Greater Weapon Focus](#greater-weapon-focus)
- [Mythic Weapon Focus](#mythic-weapon-focus)
- [Racial Weapon Focus](#racial-weapon-focus)
- [Weapon Specialization](#weapon-specialization)
- [Weapon Specialization](#weapon-specialization-1)
- [Greater Weapon Specialization](#greater-weapon-specialization)
- [Misc](#misc)
- [Ammunition](#ammunition)
- [Change Offset](#change-offset)
- [Critical Helpers](#critical-helpers)
- [Fate's Favored](#fates-favored)
- [Fortune and Misfortune](#fortune-and-misfortune)
- [Everything](#everything)
- [Only for the Item that has the flag](#only-for-the-item-that-has-the-flag)
- [Ability Checks](#ability-checks)
- [Attacks](#attacks)
- [Base Attack Bonus](#base-attack-bonus)
- [Caster Level Checks](#caster-level-checks)
- [Combat Maneuver Checks](#combat-maneuver-checks)
- [Concentration Checks](#concentration-checks)
- [Initiative Checks](#initiative-checks)
- [Saving Throws](#saving-throws)
- [Skill Checks](#skill-checks)
- [Skill Bonuses (Almost entirely uneccesary because of v9 updates. May be removed at some point)](#skill-bonuses-almost-entirely-uneccesary-because-of-v9-updates-may-be-removed-at-some-point)
- [Spells](#spells)
- [Modify Spell Caster Level (all spells, specific school, or specific element)](#modify-spell-caster-level-all-spells-specific-school-or-specific-element)
- [Modify Spell DC (all spells, specific school, or specific element)](#modify-spell-dc-all-spells-specific-school-or-specific-element)
- [Modify Spell Caster Level for specific element](#modify-spell-caster-level-for-specific-element)
- [For Specific Element](#for-specific-element)
- [Modify Spell DC for specific element](#modify-spell-dc-for-specific-element)
- [For Specific Element](#for-specific-element-1)

---

Expand Down Expand Up @@ -439,6 +467,8 @@ Automatically add +2 damage to chosen weapons types for `Weapon Specialization`
## Ammunition
Ammunition now has inputs for masterwork, enhancement, attack, and damage bonuses. You can find these on the item's advanced tab.

---

## Change Offset
Modify the results of any `change` type. This is essentially a very generic form of [Fate's Favored](#fates-favored) -- but this will allow you to increase or decrease any `change` type instead of only modifying luck bonuses by +1.

Expand All @@ -451,44 +481,6 @@ Modify the results of any `change` type. This is essentially a very generic form

</details>

## Critical Helpers
Attack's critical variables can now be dynamically adjusted. Crit can be modified with keen. It can also be modified by a static amount to account for certain 3.5 classes or other homebrew. The critical multipler can also be adjusted--this is useful for a Swashbuckler's capstone ability (and any homebrew that needs it).

<details>
<summary>How to customize crit range or multiplier (click to expand)</summary>

### Keen - boolean flag
* `keen-self`
* place this flag on an attack/weapon/item/spell/etc. Any action for this Item will have its crit range doubled.
* `keen-all`
* place this flag on anything in your character to double the crit range of any action
* `keen_<id>`
* e.g. `keen_7hAXCo6sYfpIqeli`
* Place this flag on anything, then when you use either the Item or Action associated with the id, it will be keen
* You can find the id for a specific thing by opening its sheet, then clicking the dictionary icon in the header next to its name
* This is useful for when you have a temporary buff (e.g. Magus, Warpriest, Occultist,...) that grants a specific weapon Keen

### Crit target modifications (dictionary flag)
Positive numbers are good, so having a `3` will mean your "crits only on a 20" weapon will now crit on "17 or higher". Adding any of these will give you a formula input.
* `crit-offset-self`
* `crit-offset-all`
* `crit-offset_<id>`
* e.g. `crit-offset_7hAXCo6sYfpIqeli`
* Place this flag on anything, then when you use either the Item or Action associated with the id, it will be modified by the value
* You can find the id for a specific thing by opening its sheet, then clicking the dictionary icon in the header next to its name
* individual descriptions same as keen described above
* The value of the dictionary flags can be either a number or a formula
* if something is effect by both crit-offset and keen, then keen is applied first before an extra crit-offset is applied

### Crit multipliers (dictionary flag)
* `crit-mult-offset-self`
* `crit-mult-offset-all`
* `crit-mult-offset_<id>`
* e.g. `crit-mult-offset_7hAXCo6sYfpIqeli`
* Excact same as above but has a formula for variable crit mult modifications

</details>

---

## Fate's Favored
Expand Down Expand Up @@ -622,51 +614,32 @@ Various bonuses to skills. You can add Inspiration, change the base die, or add

# Spells

## Modify Spell Caster Level (all spells, specific school, or specific element)
## Modify Spell Caster Level for specific element
For buffs, abilities, or banes (or anything else) that modify spell Caster Levels.

<details>
<summary>How to configure spell Caster Level modifications (click to expand)</summary>

### ~~For All Spells~~ Deprecated
- ~~Add dictionary flag `all-spell-cl` to your buff/feature/etc.~~
- ~~Text input will appear for your formula~~
- The system now has its own CL change target

### For Specific Element
Useful for specific abilities such as [Gnome's Pyromaniac alternate racial trait](https://www.aonprd.com/RacesDisplay.aspx?ItemName=Gnome#:~:text=and%20illusion%20resistance.-,Pyromaniac,-Source%20Advanced%20Race).
- Add dictionary flag `elemental-cl` to your buff/feature/etc.
- Text input will appear for your formula
- Dropdown selector will show up with options for `acid`, `cold`, `electric`, or `fire`

### For Specific School
- Add dictionary flag `schoolClOffset` to your buff/feature/etc.
- Text input will appear for your formula
- Dropdown selector will show up with options for your chosen school

</details>

---

## Modify Spell DC (all spells, specific school, or specific element)
## Modify Spell DC for specific element
For buffs, abilities, or banes (or anything else) that modify spell DCs.

<details>
<summary>How to configure spell DC modifications (click to expand)</summary>

### For All Spells
- Add dictionary flag `genericSpellDC` to your buff/feature/etc.
- Text input will appear for your formula

### For Specific Element
- Add dictionary flag `elemental-dc` to your buff/feature/etc.
- Text input will appear for your formula
- Dropdown selector will show up with options for `acid`, `cold`, `electric`, or `fire`

### For Specific School
- Add dictionary flag `school-dc` to your buff/feature/etc.
- Text input will appear for your formula
- Dropdown selector will show up with options for your chosen school

</details>

Expand Down
57 changes: 57 additions & 0 deletions changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
## Roll Bonuses 2.15.0

_**Lots of data changed internally. Anything necessary should automatically migrate to the new format when the GM first logs in. I tried to test as thoroughly as I can and everything I tested is working, but it's always possible that I missed something. Please take advantage of foundry's backup and backup before updating just in case.**_

### Misc
- Addressed all warnings. Hopefully you'll never see a warning from Roll Bonuses about non async rolls being deprecated.
- Removed all usages of Dictionary Flags. You should never again see a warning from the system about multiple conflicting Weapon Focus flags.
- Tons of UX improvements.
- Bonus Picker is now split into separate tabs for Targeted Bonuses versus Specific Bonuses
- Item/Spell/Weapon/Attack/Action targets now have a filter so you can quickly find the exact item you're looking for
- When viewing Item/Spell/Weapon/Attack/Action/Tokens targets you can now right click on them (icon in the Item sheet after selecting targets, or on the row in the picker dialog itself) to open the associated sheet (if you have the rights to be able to see the sheet to begin with)
- Token Targeting UI highlights the corresponding tokens on the map so you can be sure the token you're selecting in the dialog is the correct token for the
- Most dialogs have helper text in them to give a bit more context about exactly how they work
- Modified 153 files. Added 4066 new lines. Removed 2954 lines.

### Global Bonuses
- Global bonuses that restricted actions from completing or applied penalties now have an optional checkbox in the attack dialog to suppress the check and allow the attack to happen regardless
- You can optionally skip requiring melee range for melee attacks and also skip applying ranged penalties
- These are available in the attack dialog so if you're skipping the dialolg by default but want to bypass them for an individual attack, be sure to hold shift to bring up the system's attack dialog.
- When skipped, a footnote is added so the GM has visibility when a player skips a bonus like this
- The "disablers" on the actor settings now include a journal link to the documentation so you can verify if that's something you want to disable for this actor.
- Shooting into melee now ignores the penalty if the attacker has a condition which would preclude them from attacking

### New Targeted Bonuses
- Maximize Damage
- This maximizes damage for anything it tagets

### New Targeted Targets
- Action Target
- You can now also target individual actions instead of just an entire item
- Natural Weapon Target
- Thrown Weapon Target

### Specific Bonuses
- Versatile Performance can now have multiple sets on a single feature
- Offset Modifier bonus now has a toggle-able "set" option so instead of modifying a given type of bonus, you can instead completely override the total bonus to a specific value (e.g. "add +1 to all luck bonuses" versus "set all morale bonuses to 0")
- Function Target now shows up in the bonus picker dialog when the user is a GM

### Buffs
- Added True Strike buff
- Added Misfortune (hex) debuff

### Bugfixes
- Fixed z-height calculations with reach attacks
- Fixed ammo enriching footnotes
- Fixed item targets when modifying an actor/item within a compendium
- Fixed Trap Actors (and other non-character actors) breaking during data prep
- The D20 icon in the Roll Bonuses header on items now correctly opens the in-game documentation
- Fixed Permanent skill bonus that broke with v10
- Fixed Versatile Performance targ

### Removed
- Some Specific Bonuses were removed as the system now directly supports them.
- CL/DC bonuses for everything and specific schools have been migrated to the system's native changes
- CL/DC bonuses for specific elements remain unchanged
- Some Specific bonuses were removed as they're better suited as Targeted Bonuses
- Critical "specific bonuses" were removed and automatically migrated to targeted bonuses.
136 changes: 76 additions & 60 deletions hbs/bonus-picker.hbs
Original file line number Diff line number Diff line change
@@ -1,71 +1,87 @@
<form class="roll-bonuses roll-bonuses-form bonus-picker">
<form class="pf1 roll-bonuses roll-bonuses-form pf1">
<div class="tab-headers tabs">
<h3 id="targeted-tab-button-{{item.id}}" class="item tab-button active">{{localize 'ckl-roll-bonuses.picker.tabs.targeted'}}</h3>
<h3 id="specific-tab-button-{{item.id}}" class="item tab-button">{{localize 'ckl-roll-bonuses.picker.tabs.specific'}}</h3>
</div>
<div class="form-body">
<div class="sources">
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.targets.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.targets.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.iurMG1TBoX3auh5z"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each targets}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
<div class="targeted-body picker-tab active">
<div class="tab-hint help-text">
<i class="help-icon fas fa-info-circle"></i>
{{localize 'ckl-roll-bonuses.picker.tabs.targeted-description'}}
</div>
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.conditional-targets.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.conditional-targets.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.IpRhJqZEX2TUarSX"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each conditionalTargets}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
</div>
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.bonuses.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.bonuses.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.PiyJbkTuzKHugPSk"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each bonuses}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
<div class="sources">
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.targets.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.targets.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.iurMG1TBoX3auh5z"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each targets}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
</div>
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.conditional-targets.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.conditional-targets.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.IpRhJqZEX2TUarSX"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each conditionalTargets}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
</div>
<div>
<h2>
{{ localize 'ckl-roll-bonuses.picker.bonuses.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.bonuses.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.PiyJbkTuzKHugPSk"
>
<i class="fas fa-book"></i>
</a>
</h2>
{{#each bonuses}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{/each}}
</div>
</div>
</div>

{{#if specifics.length}}
<h2>
{{ localize 'ckl-roll-bonuses.picker.specific-bonuses.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.specific-bonuses.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.ez01dzSQxPTiyXor"
>
<i class="fas fa-book"></i>
</a>
</h2>
<div class="specific-bonuses">
{{#each specifics}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{#each children}}
<div class="child">
<div class="specific-body picker-tab">
<div class="tab-hint help-text">
<i class="help-icon fas fa-info-circle"></i>
{{localize 'ckl-roll-bonuses.picker.tabs.specific-description'}}
</div>
{{#if specifics.length}}
<h2>
{{ localize 'ckl-roll-bonuses.picker.specific-bonuses.label' }}
<a
data-tooltip="{{localize 'ckl-roll-bonuses.picker.specific-bonuses.tooltip'}}"
data-journal="Compendium.ckl-roll-bonuses.roll-bonuses-documentation.JournalEntry.FrG2K3YAM1jdSxcC.JournalEntryPage.ez01dzSQxPTiyXor"
>
<i class="fas fa-book"></i>
</a>
</h2>
<div class="specific-bonuses">
{{#each specifics}}
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
{{#each children}}
<div class="child">
{{> "modules/ckl-roll-bonuses/hbs/bonus-picker-item.hbs"}}
</div>
{{/each}}
{{/each}}
</div>
{{/each}}
{{/each}}
{{/if}}
</div>
{{/if}}
</div>
<div class="control-group">
<button type="reset">
Expand Down
3 changes: 3 additions & 0 deletions hbs/global-bonus-actor-disabled-container.hbs
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
<label class="checkbox" {{#if checked}}style="text-decoration: line-through;"{{/if}}>
<input type="checkbox" name="{{path}}" {{#if checked}}checked{{/if}}>
{{label}}
<a data-journal="{{journal}}">
<i class="fas fa-book"></i>
</a>
</label>
</li>
{{/each}}
Expand Down
Loading

0 comments on commit 8c93bfb

Please sign in to comment.