diff --git a/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.bak b/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.bak new file mode 100644 index 00000000..6a455a0b Binary files /dev/null and b/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.bak differ diff --git a/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.json b/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.json new file mode 100644 index 00000000..890c1281 --- /dev/null +++ b/Backups/worlds/the-fall-of-plaguestone/world.the-fall-of-plaguestone.2023-11-12.1699769997716.json @@ -0,0 +1,25 @@ +{ + "title": "The Fall of Plaguestone", + "id": "world.the-fall-of-plaguestone.2023-11-12.1699769997716", + "system": "pf2e", + "compatibility": { + "minimum": "11", + "verified": "11.313" + }, + "description": "
A group of new adventurers traveling through the village of Etran's Folly—also known as Plaguestone—must come together to solve the murder of a friend. What starts as a simple investigation quickly turns sinister with the discovery of forbidden alchemy, mutant animals, and a nearby forest rotting away due to a mysterious blight. It becomes clear that if these heroes don't intervene to stop whatever evil is brewing, the fall of Plaguestone is all but certain!
The Fall of Plaguestone is the first standalone adventure for Pathfinder Second Edition, designed for 1st-level characters. It tells the story of how a group of strangers band together to form a group of adventurers while saving the town of Etran's Folly from a terrifying fate, serving as a perfect introduction to a new Pathfinder campaign!
", + "relationships": { + "requires": [], + "systems": [], + "recommends": [], + "conflicts": [], + "flags": {} + }, + "version": "0", + "size": 4983298, + "note": "", + "snapshotId": null, + "originalSize": 8061614, + "createdAt": 1699769997716, + "packageId": "the-fall-of-plaguestone", + "type": "world" +} \ No newline at end of file diff --git a/Data/modules/automated-evocations/packs/macros/000471.log b/Data/modules/automated-evocations/packs/macros/000475.log similarity index 100% rename from Data/modules/automated-evocations/packs/macros/000471.log rename to Data/modules/automated-evocations/packs/macros/000475.log diff --git a/Data/modules/automated-evocations/packs/macros/CURRENT b/Data/modules/automated-evocations/packs/macros/CURRENT index 65eef602..5e8bf268 100644 --- a/Data/modules/automated-evocations/packs/macros/CURRENT +++ b/Data/modules/automated-evocations/packs/macros/CURRENT @@ -1 +1 @@ -MANIFEST-000470 +MANIFEST-000474 diff --git a/Data/modules/automated-evocations/packs/macros/LOG b/Data/modules/automated-evocations/packs/macros/LOG index 4429a5d7..f93ba7da 100644 --- a/Data/modules/automated-evocations/packs/macros/LOG +++ b/Data/modules/automated-evocations/packs/macros/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.627717 ffff877ef0a0 Recovering log #468 -2023/10/23-05:12:18.636023 ffff877ef0a0 Delete type=0 #468 -2023/10/23-05:12:18.636044 ffff877ef0a0 Delete type=3 #466 +2023/11/12-06:20:01.526054 ffff7bfff0a0 Recovering log #472 +2023/11/12-06:20:01.535681 ffff7bfff0a0 Delete type=0 #472 +2023/11/12-06:20:01.535701 ffff7bfff0a0 Delete type=3 #470 diff --git a/Data/modules/automated-evocations/packs/macros/LOG.old b/Data/modules/automated-evocations/packs/macros/LOG.old index 21c4dec3..0b73c724 100644 --- a/Data/modules/automated-evocations/packs/macros/LOG.old +++ b/Data/modules/automated-evocations/packs/macros/LOG.old @@ -1,8 +1,8 @@ -2023/10/20-07:55:11.017296 ffff87fff0a0 Recovering log #464 -2023/10/20-07:55:11.021890 ffff87fff0a0 Delete type=0 #464 -2023/10/20-07:55:11.021910 ffff87fff0a0 Delete type=3 #462 -2023/10/23-05:11:51.655803 ffff85fbf0a0 Level-0 table #469: started -2023/10/23-05:11:51.655819 ffff85fbf0a0 Level-0 table #469: 0 bytes OK -2023/10/23-05:11:51.657559 ffff85fbf0a0 Delete type=0 #467 -2023/10/23-05:11:51.659781 ffff85fbf0a0 Manual compaction at level-0 from '!macros!DFIqi3kVXrYZ8S7y' @ 72057594037927935 : 1 .. '!macros!z5CFHKH4XzXITTGU' @ 0 : 0; will stop at (end) -2023/10/23-05:11:51.663827 ffff85fbf0a0 Manual compaction at level-1 from '!macros!DFIqi3kVXrYZ8S7y' @ 72057594037927935 : 1 .. '!macros!z5CFHKH4XzXITTGU' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.627717 ffff877ef0a0 Recovering log #468 +2023/10/23-05:12:18.636023 ffff877ef0a0 Delete type=0 #468 +2023/10/23-05:12:18.636044 ffff877ef0a0 Delete type=3 #466 +2023/11/12-06:17:24.202543 ffff85fbf0a0 Level-0 table #473: started +2023/11/12-06:17:24.202562 ffff85fbf0a0 Level-0 table #473: 0 bytes OK +2023/11/12-06:17:24.204580 ffff85fbf0a0 Delete type=0 #471 +2023/11/12-06:17:24.204972 ffff85fbf0a0 Manual compaction at level-0 from '!macros!DFIqi3kVXrYZ8S7y' @ 72057594037927935 : 1 .. '!macros!z5CFHKH4XzXITTGU' @ 0 : 0; will stop at (end) +2023/11/12-06:17:24.210711 ffff85fbf0a0 Manual compaction at level-1 from '!macros!DFIqi3kVXrYZ8S7y' @ 72057594037927935 : 1 .. '!macros!z5CFHKH4XzXITTGU' @ 0 : 0; will stop at (end) diff --git a/Data/modules/automated-evocations/packs/macros/MANIFEST-000470 b/Data/modules/automated-evocations/packs/macros/MANIFEST-000474 similarity index 65% rename from Data/modules/automated-evocations/packs/macros/MANIFEST-000470 rename to Data/modules/automated-evocations/packs/macros/MANIFEST-000474 index 1820adef..762a26b1 100644 Binary files a/Data/modules/automated-evocations/packs/macros/MANIFEST-000470 and b/Data/modules/automated-evocations/packs/macros/MANIFEST-000474 differ diff --git a/Data/modules/bossbar/packs/macros/000027.log b/Data/modules/bossbar/packs/macros/000031.log similarity index 100% rename from Data/modules/bossbar/packs/macros/000027.log rename to Data/modules/bossbar/packs/macros/000031.log diff --git a/Data/modules/bossbar/packs/macros/CURRENT b/Data/modules/bossbar/packs/macros/CURRENT index 8b152150..caa721af 100644 --- a/Data/modules/bossbar/packs/macros/CURRENT +++ b/Data/modules/bossbar/packs/macros/CURRENT @@ -1 +1 @@ -MANIFEST-000026 +MANIFEST-000030 diff --git a/Data/modules/bossbar/packs/macros/LOG b/Data/modules/bossbar/packs/macros/LOG index 5a52530a..f1168d03 100644 --- a/Data/modules/bossbar/packs/macros/LOG +++ b/Data/modules/bossbar/packs/macros/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.637198 ffff87fff0a0 Recovering log #24 -2023/10/23-05:12:18.642198 ffff87fff0a0 Delete type=3 #22 -2023/10/23-05:12:18.642221 ffff87fff0a0 Delete type=0 #24 +2023/11/12-06:20:01.536946 ffff89aae0a0 Recovering log #28 +2023/11/12-06:20:01.542063 ffff89aae0a0 Delete type=0 #28 +2023/11/12-06:20:01.542084 ffff89aae0a0 Delete type=3 #26 diff --git a/Data/modules/bossbar/packs/macros/LOG.old b/Data/modules/bossbar/packs/macros/LOG.old index 8f8b4709..c9247220 100644 --- a/Data/modules/bossbar/packs/macros/LOG.old +++ b/Data/modules/bossbar/packs/macros/LOG.old @@ -1,8 +1,8 @@ -2023/10/20-07:55:11.023015 ffff86fdf0a0 Recovering log #20 -2023/10/20-07:55:11.027896 ffff86fdf0a0 Delete type=0 #20 -2023/10/20-07:55:11.027916 ffff86fdf0a0 Delete type=3 #18 -2023/10/23-05:11:51.657720 ffff85fbf0a0 Level-0 table #25: started -2023/10/23-05:11:51.657744 ffff85fbf0a0 Level-0 table #25: 0 bytes OK -2023/10/23-05:11:51.659570 ffff85fbf0a0 Delete type=0 #23 -2023/10/23-05:11:51.661826 ffff85fbf0a0 Manual compaction at level-0 from '!macros!LD5Wc6K0vLQw0att' @ 72057594037927935 : 1 .. '!macros!iWwnlmoMWqNGJ54U' @ 0 : 0; will stop at (end) -2023/10/23-05:11:51.663971 ffff85fbf0a0 Manual compaction at level-1 from '!macros!LD5Wc6K0vLQw0att' @ 72057594037927935 : 1 .. '!macros!iWwnlmoMWqNGJ54U' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.637198 ffff87fff0a0 Recovering log #24 +2023/10/23-05:12:18.642198 ffff87fff0a0 Delete type=3 #22 +2023/10/23-05:12:18.642221 ffff87fff0a0 Delete type=0 #24 +2023/11/12-06:17:24.204988 ffff85fbf0a0 Level-0 table #29: started +2023/11/12-06:17:24.205003 ffff85fbf0a0 Level-0 table #29: 0 bytes OK +2023/11/12-06:17:24.207034 ffff85fbf0a0 Delete type=0 #27 +2023/11/12-06:17:24.210831 ffff85fbf0a0 Manual compaction at level-0 from '!macros!LD5Wc6K0vLQw0att' @ 72057594037927935 : 1 .. '!macros!iWwnlmoMWqNGJ54U' @ 0 : 0; will stop at (end) +2023/11/12-06:17:24.212705 ffff85fbf0a0 Manual compaction at level-1 from '!macros!LD5Wc6K0vLQw0att' @ 72057594037927935 : 1 .. '!macros!iWwnlmoMWqNGJ54U' @ 0 : 0; will stop at (end) diff --git a/Data/modules/bossbar/packs/macros/MANIFEST-000026 b/Data/modules/bossbar/packs/macros/MANIFEST-000030 similarity index 52% rename from Data/modules/bossbar/packs/macros/MANIFEST-000026 rename to Data/modules/bossbar/packs/macros/MANIFEST-000030 index 2603c9a7..383a0505 100644 Binary files a/Data/modules/bossbar/packs/macros/MANIFEST-000026 and b/Data/modules/bossbar/packs/macros/MANIFEST-000030 differ diff --git a/Data/modules/levels/packs/levels-samples/000969.log b/Data/modules/levels/packs/levels-samples/000973.log similarity index 100% rename from Data/modules/levels/packs/levels-samples/000969.log rename to Data/modules/levels/packs/levels-samples/000973.log diff --git a/Data/modules/levels/packs/levels-samples/CURRENT b/Data/modules/levels/packs/levels-samples/CURRENT index 0a8f1fe1..e74ce687 100644 --- a/Data/modules/levels/packs/levels-samples/CURRENT +++ b/Data/modules/levels/packs/levels-samples/CURRENT @@ -1 +1 @@ -MANIFEST-000968 +MANIFEST-000972 diff --git a/Data/modules/levels/packs/levels-samples/LOG b/Data/modules/levels/packs/levels-samples/LOG index 645255a4..318439df 100644 --- a/Data/modules/levels/packs/levels-samples/LOG +++ b/Data/modules/levels/packs/levels-samples/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.649746 ffff87fff0a0 Recovering log #966 -2023/10/23-05:12:18.655169 ffff87fff0a0 Delete type=0 #966 -2023/10/23-05:12:18.655188 ffff87fff0a0 Delete type=3 #964 +2023/11/12-06:20:01.550077 ffff89aae0a0 Recovering log #970 +2023/11/12-06:20:01.555194 ffff89aae0a0 Delete type=3 #968 +2023/11/12-06:20:01.555216 ffff89aae0a0 Delete type=0 #970 diff --git a/Data/modules/levels/packs/levels-samples/LOG.old b/Data/modules/levels/packs/levels-samples/LOG.old index 9b5cf9c4..66761523 100644 --- a/Data/modules/levels/packs/levels-samples/LOG.old +++ b/Data/modules/levels/packs/levels-samples/LOG.old @@ -1,8 +1,8 @@ -2023/10/20-07:55:11.035627 ffff86fdf0a0 Recovering log #962 -2023/10/20-07:55:11.040517 ffff86fdf0a0 Delete type=3 #960 -2023/10/20-07:55:11.040539 ffff86fdf0a0 Delete type=0 #962 -2023/10/23-05:11:51.661839 ffff85fbf0a0 Level-0 table #967: started -2023/10/23-05:11:51.661852 ffff85fbf0a0 Level-0 table #967: 0 bytes OK -2023/10/23-05:11:51.663788 ffff85fbf0a0 Delete type=0 #965 -2023/10/23-05:11:51.664057 ffff85fbf0a0 Manual compaction at level-0 from '!scenes!fT64AORvwMUdHzwr' @ 72057594037927935 : 1 .. '!scenes.walls!w5eztsez7EhiFrmE.zlashxFbpTyjyOHo' @ 0 : 0; will stop at (end) -2023/10/23-05:11:51.668488 ffff85fbf0a0 Manual compaction at level-1 from '!scenes!fT64AORvwMUdHzwr' @ 72057594037927935 : 1 .. '!scenes.walls!w5eztsez7EhiFrmE.zlashxFbpTyjyOHo' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.649746 ffff87fff0a0 Recovering log #966 +2023/10/23-05:12:18.655169 ffff87fff0a0 Delete type=0 #966 +2023/10/23-05:12:18.655188 ffff87fff0a0 Delete type=3 #964 +2023/11/12-06:17:24.208927 ffff85fbf0a0 Level-0 table #971: started +2023/11/12-06:17:24.208941 ffff85fbf0a0 Level-0 table #971: 0 bytes OK +2023/11/12-06:17:24.210672 ffff85fbf0a0 Delete type=0 #969 +2023/11/12-06:17:24.210861 ffff85fbf0a0 Manual compaction at level-0 from '!scenes!fT64AORvwMUdHzwr' @ 72057594037927935 : 1 .. '!scenes.walls!w5eztsez7EhiFrmE.zlashxFbpTyjyOHo' @ 0 : 0; will stop at (end) +2023/11/12-06:17:24.212957 ffff85fbf0a0 Manual compaction at level-1 from '!scenes!fT64AORvwMUdHzwr' @ 72057594037927935 : 1 .. '!scenes.walls!w5eztsez7EhiFrmE.zlashxFbpTyjyOHo' @ 0 : 0; will stop at (end) diff --git a/Data/modules/levels/packs/levels-samples/MANIFEST-000968 b/Data/modules/levels/packs/levels-samples/MANIFEST-000972 similarity index 86% rename from Data/modules/levels/packs/levels-samples/MANIFEST-000968 rename to Data/modules/levels/packs/levels-samples/MANIFEST-000972 index 524e9c49..127158b7 100644 Binary files a/Data/modules/levels/packs/levels-samples/MANIFEST-000968 and b/Data/modules/levels/packs/levels-samples/MANIFEST-000972 differ diff --git a/Data/modules/levels/packs/macros/000969.log b/Data/modules/levels/packs/macros/000973.log similarity index 100% rename from Data/modules/levels/packs/macros/000969.log rename to Data/modules/levels/packs/macros/000973.log diff --git a/Data/modules/levels/packs/macros/CURRENT b/Data/modules/levels/packs/macros/CURRENT index 0a8f1fe1..e74ce687 100644 --- a/Data/modules/levels/packs/macros/CURRENT +++ b/Data/modules/levels/packs/macros/CURRENT @@ -1 +1 @@ -MANIFEST-000968 +MANIFEST-000972 diff --git a/Data/modules/levels/packs/macros/LOG b/Data/modules/levels/packs/macros/LOG index a2721805..040e55ef 100644 --- a/Data/modules/levels/packs/macros/LOG +++ b/Data/modules/levels/packs/macros/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.643342 ffff877ef0a0 Recovering log #966 -2023/10/23-05:12:18.648199 ffff877ef0a0 Delete type=0 #966 -2023/10/23-05:12:18.648219 ffff877ef0a0 Delete type=3 #964 +2023/11/12-06:20:01.543301 ffff7bfff0a0 Recovering log #970 +2023/11/12-06:20:01.548324 ffff7bfff0a0 Delete type=3 #968 +2023/11/12-06:20:01.548347 ffff7bfff0a0 Delete type=0 #970 diff --git a/Data/modules/levels/packs/macros/LOG.old b/Data/modules/levels/packs/macros/LOG.old index 1badc184..63c4dd0a 100644 --- a/Data/modules/levels/packs/macros/LOG.old +++ b/Data/modules/levels/packs/macros/LOG.old @@ -1,8 +1,8 @@ -2023/10/20-07:55:11.029068 ffff87fff0a0 Recovering log #962 -2023/10/20-07:55:11.034068 ffff87fff0a0 Delete type=3 #960 -2023/10/20-07:55:11.034090 ffff87fff0a0 Delete type=0 #962 -2023/10/23-05:11:51.659810 ffff85fbf0a0 Level-0 table #967: started -2023/10/23-05:11:51.659829 ffff85fbf0a0 Level-0 table #967: 0 bytes OK -2023/10/23-05:11:51.661788 ffff85fbf0a0 Delete type=0 #965 -2023/10/23-05:11:51.663952 ffff85fbf0a0 Manual compaction at level-0 from '!macros!2LfY4Ky5rRDkK7h8' @ 72057594037927935 : 1 .. '!macros!yx7Eb76rfzjh0LEO' @ 0 : 0; will stop at (end) -2023/10/23-05:11:51.666374 ffff85fbf0a0 Manual compaction at level-1 from '!macros!2LfY4Ky5rRDkK7h8' @ 72057594037927935 : 1 .. '!macros!yx7Eb76rfzjh0LEO' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.643342 ffff877ef0a0 Recovering log #966 +2023/10/23-05:12:18.648199 ffff877ef0a0 Delete type=0 #966 +2023/10/23-05:12:18.648219 ffff877ef0a0 Delete type=3 #964 +2023/11/12-06:17:24.207072 ffff85fbf0a0 Level-0 table #971: started +2023/11/12-06:17:24.207088 ffff85fbf0a0 Level-0 table #971: 0 bytes OK +2023/11/12-06:17:24.208890 ffff85fbf0a0 Delete type=0 #969 +2023/11/12-06:17:24.210850 ffff85fbf0a0 Manual compaction at level-0 from '!macros!2LfY4Ky5rRDkK7h8' @ 72057594037927935 : 1 .. '!macros!yx7Eb76rfzjh0LEO' @ 0 : 0; will stop at (end) +2023/11/12-06:17:24.212865 ffff85fbf0a0 Manual compaction at level-1 from '!macros!2LfY4Ky5rRDkK7h8' @ 72057594037927935 : 1 .. '!macros!yx7Eb76rfzjh0LEO' @ 0 : 0; will stop at (end) diff --git a/Data/modules/levels/packs/macros/MANIFEST-000968 b/Data/modules/levels/packs/macros/MANIFEST-000972 similarity index 52% rename from Data/modules/levels/packs/macros/MANIFEST-000968 rename to Data/modules/levels/packs/macros/MANIFEST-000972 index e76c076a..c00d5204 100644 Binary files a/Data/modules/levels/packs/macros/MANIFEST-000968 and b/Data/modules/levels/packs/macros/MANIFEST-000972 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/000214.log b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/000218.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/000214.log rename to Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/000218.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/CURRENT index 51af8957..9aabe0cd 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/CURRENT @@ -1 +1 @@ -MANIFEST-000213 +MANIFEST-000217 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG index 48828e96..82f2d269 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.677757 ffff86fdf0a0 Recovering log #211 -2023/10/23-05:12:18.683119 ffff86fdf0a0 Delete type=0 #211 -2023/10/23-05:12:18.683139 ffff86fdf0a0 Delete type=3 #209 +2023/11/12-06:20:01.573535 ffff8929e0a0 Recovering log #215 +2023/11/12-06:20:01.578643 ffff8929e0a0 Delete type=0 #215 +2023/11/12-06:20:01.578662 ffff8929e0a0 Delete type=3 #213 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG.old index 3de6cdcb..93abf418 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.058378 ffff877ef0a0 Recovering log #207 -2023/10/20-07:55:11.063161 ffff877ef0a0 Delete type=3 #205 -2023/10/20-07:55:11.063184 ffff877ef0a0 Delete type=0 #207 -2023/10/23-05:11:51.668688 ffff85fbf0a0 Level-0 table #212: started -2023/10/23-05:11:51.668707 ffff85fbf0a0 Level-0 table #212: 0 bytes OK -2023/10/23-05:11:51.670818 ffff85fbf0a0 Delete type=0 #210 -2023/10/23-05:11:51.674988 ffff85fbf0a0 Manual compaction at level-0 from '!items!0WtqP7Wei3AxHh5M' @ 72057594037927935 : 1 .. '!items!zSlsnbvsGKdCTzL1' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.677757 ffff86fdf0a0 Recovering log #211 +2023/10/23-05:12:18.683119 ffff86fdf0a0 Delete type=0 #211 +2023/10/23-05:12:18.683139 ffff86fdf0a0 Delete type=3 #209 +2023/11/12-06:17:24.215191 ffff85fbf0a0 Level-0 table #216: started +2023/11/12-06:17:24.215205 ffff85fbf0a0 Level-0 table #216: 0 bytes OK +2023/11/12-06:17:24.216990 ffff85fbf0a0 Delete type=0 #214 +2023/11/12-06:17:24.221108 ffff85fbf0a0 Manual compaction at level-0 from '!items!0WtqP7Wei3AxHh5M' @ 72057594037927935 : 1 .. '!items!zSlsnbvsGKdCTzL1' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000213 b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000217 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000213 rename to Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000217 index 3c19d66e..36445ce9 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000213 and b/Data/modules/pf2e-animal-companions/packs/ac-advanced-maneuvers/MANIFEST-000217 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/000216.log b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/000220.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/000216.log rename to Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/000220.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/CURRENT index 68076bd4..7d68d999 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/CURRENT @@ -1 +1 @@ -MANIFEST-000215 +MANIFEST-000219 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG index 5bb22ad5..c85446a2 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.659451 ffff86fdf0a0 Recovering log #213 -2023/10/23-05:12:18.664573 ffff86fdf0a0 Delete type=0 #213 -2023/10/23-05:12:18.664592 ffff86fdf0a0 Delete type=3 #211 +2023/11/12-06:20:01.559668 ffff8929e0a0 Recovering log #217 +2023/11/12-06:20:01.564637 ffff8929e0a0 Delete type=3 #215 +2023/11/12-06:20:01.564660 ffff8929e0a0 Delete type=0 #217 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG.old index 9448c909..69875e72 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.044977 ffff877ef0a0 Recovering log #209 -2023/10/20-07:55:11.049730 ffff877ef0a0 Delete type=3 #207 -2023/10/20-07:55:11.049753 ffff877ef0a0 Delete type=0 #209 -2023/10/23-05:11:51.664073 ffff85fbf0a0 Level-0 table #214: started -2023/10/23-05:11:51.664088 ffff85fbf0a0 Level-0 table #214: 0 bytes OK -2023/10/23-05:11:51.666336 ffff85fbf0a0 Delete type=0 #212 -2023/10/23-05:11:51.668601 ffff85fbf0a0 Manual compaction at level-0 from '!items!0BVoHy7R86KJoani' @ 72057594037927935 : 1 .. '!items!yukG72FSivsrqVoG' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.659451 ffff86fdf0a0 Recovering log #213 +2023/10/23-05:12:18.664573 ffff86fdf0a0 Delete type=0 #213 +2023/10/23-05:12:18.664592 ffff86fdf0a0 Delete type=3 #211 +2023/11/12-06:17:24.210871 ffff85fbf0a0 Level-0 table #218: started +2023/11/12-06:17:24.210886 ffff85fbf0a0 Level-0 table #218: 0 bytes OK +2023/11/12-06:17:24.212666 ffff85fbf0a0 Delete type=0 #216 +2023/11/12-06:17:24.213041 ffff85fbf0a0 Manual compaction at level-0 from '!items!0BVoHy7R86KJoani' @ 72057594037927935 : 1 .. '!items!yukG72FSivsrqVoG' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000215 b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000219 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000215 rename to Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000219 index d80692d4..80f152cd 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000215 and b/Data/modules/pf2e-animal-companions/packs/ac-ancestries-and-class/MANIFEST-000219 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/000211.log b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/000215.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/000211.log rename to Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/000215.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/CURRENT index af31d429..f0a2cf15 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/CURRENT @@ -1 +1 @@ -MANIFEST-000210 +MANIFEST-000214 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG index e89b3b34..286be366 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.712482 ffff867cf0a0 Recovering log #208 -2023/10/23-05:12:18.717589 ffff867cf0a0 Delete type=3 #206 -2023/10/23-05:12:18.717613 ffff867cf0a0 Delete type=0 #208 +2023/11/12-06:20:01.607938 ffff88a8e0a0 Recovering log #212 +2023/11/12-06:20:01.613044 ffff88a8e0a0 Delete type=3 #210 +2023/11/12-06:20:01.613067 ffff88a8e0a0 Delete type=0 #212 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG.old index 97509209..c5faa4bd 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.097635 ffff867cf0a0 Recovering log #204 -2023/10/20-07:55:11.102669 ffff867cf0a0 Delete type=0 #204 -2023/10/20-07:55:11.102689 ffff867cf0a0 Delete type=3 #202 -2023/10/23-05:11:51.679758 ffff85fbf0a0 Level-0 table #209: started -2023/10/23-05:11:51.679779 ffff85fbf0a0 Level-0 table #209: 0 bytes OK -2023/10/23-05:11:51.681727 ffff85fbf0a0 Delete type=0 #207 -2023/10/23-05:11:51.685639 ffff85fbf0a0 Manual compaction at level-0 from '!items!1mE83uSucJZS4FB9' @ 72057594037927935 : 1 .. '!items!zo6B3JGQIt99K1HF' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.712482 ffff867cf0a0 Recovering log #208 +2023/10/23-05:12:18.717589 ffff867cf0a0 Delete type=3 #206 +2023/10/23-05:12:18.717613 ffff867cf0a0 Delete type=0 #208 +2023/11/12-06:17:24.225524 ffff85fbf0a0 Level-0 table #213: started +2023/11/12-06:17:24.225538 ffff85fbf0a0 Level-0 table #213: 0 bytes OK +2023/11/12-06:17:24.227479 ffff85fbf0a0 Delete type=0 #211 +2023/11/12-06:17:24.229813 ffff85fbf0a0 Manual compaction at level-0 from '!items!1mE83uSucJZS4FB9' @ 72057594037927935 : 1 .. '!items!zo6B3JGQIt99K1HF' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000210 b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000214 similarity index 82% rename from Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000210 rename to Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000214 index db1889df..4fd2f752 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000210 and b/Data/modules/pf2e-animal-companions/packs/ac-construct-breakthroughs/MANIFEST-000214 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/000211.log b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/000215.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-construct-companions/000211.log rename to Data/modules/pf2e-animal-companions/packs/ac-construct-companions/000215.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/CURRENT index af31d429..f0a2cf15 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/CURRENT @@ -1 +1 @@ -MANIFEST-000210 +MANIFEST-000214 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG index 65d7d230..67a7d118 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.705730 ffff86fdf0a0 Recovering log #208 -2023/10/23-05:12:18.710937 ffff86fdf0a0 Delete type=3 #206 -2023/10/23-05:12:18.710959 ffff86fdf0a0 Delete type=0 #208 +2023/11/12-06:20:01.601406 ffff8929e0a0 Recovering log #212 +2023/11/12-06:20:01.606257 ffff8929e0a0 Delete type=3 #210 +2023/11/12-06:20:01.606279 ffff8929e0a0 Delete type=0 #212 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG.old index bcc2ad14..d59cedb9 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.085765 ffff877ef0a0 Recovering log #204 -2023/10/20-07:55:11.090514 ffff877ef0a0 Delete type=0 #204 -2023/10/20-07:55:11.090534 ffff877ef0a0 Delete type=3 #202 -2023/10/23-05:11:51.677476 ffff85fbf0a0 Level-0 table #209: started -2023/10/23-05:11:51.677494 ffff85fbf0a0 Level-0 table #209: 0 bytes OK -2023/10/23-05:11:51.679602 ffff85fbf0a0 Delete type=0 #207 -2023/10/23-05:11:51.683581 ffff85fbf0a0 Manual compaction at level-0 from '!items!5v2Kj6Jh2YYGaSQq' @ 72057594037927935 : 1 .. '!items!mjDtydpNNfI9SuFq' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.705730 ffff86fdf0a0 Recovering log #208 +2023/10/23-05:12:18.710937 ffff86fdf0a0 Delete type=3 #206 +2023/10/23-05:12:18.710959 ffff86fdf0a0 Delete type=0 #208 +2023/11/12-06:17:24.223518 ffff85fbf0a0 Level-0 table #213: started +2023/11/12-06:17:24.223532 ffff85fbf0a0 Level-0 table #213: 0 bytes OK +2023/11/12-06:17:24.225487 ffff85fbf0a0 Delete type=0 #211 +2023/11/12-06:17:24.229725 ffff85fbf0a0 Manual compaction at level-0 from '!items!5v2Kj6Jh2YYGaSQq' @ 72057594037927935 : 1 .. '!items!mjDtydpNNfI9SuFq' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000210 b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000214 similarity index 82% rename from Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000210 rename to Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000214 index baca917a..c1300305 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000210 and b/Data/modules/pf2e-animal-companions/packs/ac-construct-companions/MANIFEST-000214 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/000213.log b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/000217.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-eidolons/000213.log rename to Data/modules/pf2e-animal-companions/packs/ac-eidolons/000217.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/CURRENT index 7d5a51c6..2cccabd9 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/CURRENT @@ -1 +1 @@ -MANIFEST-000212 +MANIFEST-000216 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG index d30f1129..9e099d4d 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.719203 ffff86fdf0a0 Recovering log #210 -2023/10/23-05:12:18.724705 ffff86fdf0a0 Delete type=3 #208 -2023/10/23-05:12:18.724728 ffff86fdf0a0 Delete type=0 #210 +2023/11/12-06:20:01.615125 ffff8929e0a0 Recovering log #214 +2023/11/12-06:20:01.620175 ffff8929e0a0 Delete type=0 #214 +2023/11/12-06:20:01.620195 ffff8929e0a0 Delete type=3 #212 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG.old index c355ff6a..767c0c2c 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.104393 ffff877ef0a0 Recovering log #206 -2023/10/20-07:55:11.109460 ffff877ef0a0 Delete type=3 #204 -2023/10/20-07:55:11.109483 ffff877ef0a0 Delete type=0 #206 -2023/10/23-05:11:51.681764 ffff85fbf0a0 Level-0 table #211: started -2023/10/23-05:11:51.681781 ffff85fbf0a0 Level-0 table #211: 0 bytes OK -2023/10/23-05:11:51.683542 ffff85fbf0a0 Delete type=0 #209 -2023/10/23-05:11:51.685759 ffff85fbf0a0 Manual compaction at level-0 from '!items!1YJoaMhZPvLGvj1J' @ 72057594037927935 : 1 .. '!items!zjIVbS6nGX6BS2UD' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.719203 ffff86fdf0a0 Recovering log #210 +2023/10/23-05:12:18.724705 ffff86fdf0a0 Delete type=3 #208 +2023/10/23-05:12:18.724728 ffff86fdf0a0 Delete type=0 #210 +2023/11/12-06:17:24.227516 ffff85fbf0a0 Level-0 table #215: started +2023/11/12-06:17:24.227532 ffff85fbf0a0 Level-0 table #215: 0 bytes OK +2023/11/12-06:17:24.229568 ffff85fbf0a0 Delete type=0 #213 +2023/11/12-06:17:24.234798 ffff85fbf0a0 Manual compaction at level-0 from '!items!1YJoaMhZPvLGvj1J' @ 72057594037927935 : 1 .. '!items!zjIVbS6nGX6BS2UD' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000212 b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000216 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000212 rename to Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000216 index 27cc6567..7feae61a 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000212 and b/Data/modules/pf2e-animal-companions/packs/ac-eidolons/MANIFEST-000216 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-features/000216.log b/Data/modules/pf2e-animal-companions/packs/ac-equipment/000216.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-features/000216.log rename to Data/modules/pf2e-animal-companions/packs/ac-equipment/000216.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-equipment/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-equipment/CURRENT index 12fd2820..68076bd4 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-equipment/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-equipment/CURRENT @@ -1 +1 @@ -MANIFEST-000211 +MANIFEST-000215 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG b/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG index c07f8845..6055d10e 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.684964 ffff867cf0a0 Recovering log #209 -2023/10/23-05:12:18.690072 ffff867cf0a0 Delete type=3 #207 -2023/10/23-05:12:18.690096 ffff867cf0a0 Delete type=0 #209 +2023/11/12-06:20:01.580562 ffff88a8e0a0 Recovering log #213 +2023/11/12-06:20:01.585378 ffff88a8e0a0 Delete type=0 #213 +2023/11/12-06:20:01.585397 ffff88a8e0a0 Delete type=3 #211 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG.old index 504de7a1..fe4c0485 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-equipment/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.064982 ffff867cf0a0 Recovering log #205 -2023/10/20-07:55:11.069869 ffff867cf0a0 Delete type=3 #203 -2023/10/20-07:55:11.069892 ffff867cf0a0 Delete type=0 #205 -2023/10/23-05:11:51.670977 ffff85fbf0a0 Level-0 table #210: started -2023/10/23-05:11:51.670998 ffff85fbf0a0 Level-0 table #210: 0 bytes OK -2023/10/23-05:11:51.672983 ffff85fbf0a0 Delete type=0 #208 -2023/10/23-05:11:51.677276 ffff85fbf0a0 Manual compaction at level-0 from '!items!2SeEnERJqaECplam' @ 72057594037927935 : 1 .. '!items!suEEtFqaGpPG2OHt' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.684964 ffff867cf0a0 Recovering log #209 +2023/10/23-05:12:18.690072 ffff867cf0a0 Delete type=3 #207 +2023/10/23-05:12:18.690096 ffff867cf0a0 Delete type=0 #209 +2023/11/12-06:17:24.217027 ffff85fbf0a0 Level-0 table #214: started +2023/11/12-06:17:24.217042 ffff85fbf0a0 Level-0 table #214: 0 bytes OK +2023/11/12-06:17:24.219004 ffff85fbf0a0 Delete type=0 #212 +2023/11/12-06:17:24.221195 ffff85fbf0a0 Manual compaction at level-0 from '!items!2SeEnERJqaECplam' @ 72057594037927935 : 1 .. '!items!suEEtFqaGpPG2OHt' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000211 b/Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000215 similarity index 82% rename from Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000211 rename to Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000215 index 08282a59..534f2638 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000211 and b/Data/modules/pf2e-animal-companions/packs/ac-equipment/MANIFEST-000215 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-equipment/000212.log b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/000215.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-equipment/000212.log rename to Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/000215.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/CURRENT index af31d429..f0a2cf15 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/CURRENT @@ -1 +1 @@ -MANIFEST-000210 +MANIFEST-000214 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG index c7bae8d4..6759df4e 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.726338 ffff867cf0a0 Recovering log #208 -2023/10/23-05:12:18.731969 ffff867cf0a0 Delete type=3 #206 -2023/10/23-05:12:18.731992 ffff867cf0a0 Delete type=0 #208 +2023/11/12-06:20:01.625797 ffff88a8e0a0 Recovering log #212 +2023/11/12-06:20:01.630911 ffff88a8e0a0 Delete type=3 #210 +2023/11/12-06:20:01.630934 ffff88a8e0a0 Delete type=0 #212 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG.old index f230d2c7..20f8ed50 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.111542 ffff867cf0a0 Recovering log #204 -2023/10/20-07:55:11.116717 ffff867cf0a0 Delete type=0 #204 -2023/10/20-07:55:11.116738 ffff867cf0a0 Delete type=3 #202 -2023/10/23-05:11:51.683698 ffff85fbf0a0 Level-0 table #209: started -2023/10/23-05:11:51.683719 ffff85fbf0a0 Level-0 table #209: 0 bytes OK -2023/10/23-05:11:51.685601 ffff85fbf0a0 Delete type=0 #207 -2023/10/23-05:11:51.692996 ffff85fbf0a0 Manual compaction at level-0 from '!items!00eOhkScQi1K5GZk' @ 72057594037927935 : 1 .. '!items!yCSsQaTFINIbr9Gh' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.726338 ffff867cf0a0 Recovering log #208 +2023/10/23-05:12:18.731969 ffff867cf0a0 Delete type=3 #206 +2023/10/23-05:12:18.731992 ffff867cf0a0 Delete type=0 #208 +2023/11/12-06:17:24.237737 ffff85fbf0a0 Level-0 table #213: started +2023/11/12-06:17:24.237768 ffff85fbf0a0 Level-0 table #213: 0 bytes OK +2023/11/12-06:17:24.240332 ffff85fbf0a0 Delete type=0 #211 +2023/11/12-06:17:24.242272 ffff85fbf0a0 Manual compaction at level-0 from '!items!00eOhkScQi1K5GZk' @ 72057594037927935 : 1 .. '!items!yCSsQaTFINIbr9Gh' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000210 b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000214 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000210 rename to Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000214 index a853ad15..b2b52dc4 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000210 and b/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/MANIFEST-000214 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/000211.log b/Data/modules/pf2e-animal-companions/packs/ac-feats/000217.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-evolution-feats/000211.log rename to Data/modules/pf2e-animal-companions/packs/ac-feats/000217.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-feats/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-feats/CURRENT index 7d5a51c6..2cccabd9 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-feats/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-feats/CURRENT @@ -1 +1 @@ -MANIFEST-000212 +MANIFEST-000216 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG b/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG index 2efd5d27..f2b378c4 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.670958 ffff867cf0a0 Recovering log #210 -2023/10/23-05:12:18.676015 ffff867cf0a0 Delete type=3 #208 -2023/10/23-05:12:18.676040 ffff867cf0a0 Delete type=0 #210 +2023/11/12-06:20:01.566783 ffff88a8e0a0 Recovering log #214 +2023/11/12-06:20:01.571721 ffff88a8e0a0 Delete type=0 #214 +2023/11/12-06:20:01.571740 ffff88a8e0a0 Delete type=3 #212 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG.old index dbcd34cb..3a2ea000 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-feats/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.051785 ffff867cf0a0 Recovering log #206 -2023/10/20-07:55:11.056653 ffff867cf0a0 Delete type=3 #204 -2023/10/20-07:55:11.056675 ffff867cf0a0 Delete type=0 #206 -2023/10/23-05:11:51.666493 ffff85fbf0a0 Level-0 table #211: started -2023/10/23-05:11:51.666513 ffff85fbf0a0 Level-0 table #211: 0 bytes OK -2023/10/23-05:11:51.668449 ffff85fbf0a0 Delete type=0 #209 -2023/10/23-05:11:51.670857 ffff85fbf0a0 Manual compaction at level-0 from '!items!4gNZCu2ncgu98A0H' @ 72057594037927935 : 1 .. '!items!wZXL6VgEK88BCF0C' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.670958 ffff867cf0a0 Recovering log #210 +2023/10/23-05:12:18.676015 ffff867cf0a0 Delete type=3 #208 +2023/10/23-05:12:18.676040 ffff867cf0a0 Delete type=0 #210 +2023/11/12-06:17:24.213126 ffff85fbf0a0 Level-0 table #215: started +2023/11/12-06:17:24.213143 ffff85fbf0a0 Level-0 table #215: 0 bytes OK +2023/11/12-06:17:24.215154 ffff85fbf0a0 Delete type=0 #213 +2023/11/12-06:17:24.220989 ffff85fbf0a0 Manual compaction at level-0 from '!items!4gNZCu2ncgu98A0H' @ 72057594037927935 : 1 .. '!items!wZXL6VgEK88BCF0C' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000212 b/Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000216 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000212 rename to Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000216 index 8e90eca8..580ad77d 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000212 and b/Data/modules/pf2e-animal-companions/packs/ac-feats/MANIFEST-000216 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-feats/000213.log b/Data/modules/pf2e-animal-companions/packs/ac-features/000220.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-feats/000213.log rename to Data/modules/pf2e-animal-companions/packs/ac-features/000220.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-features/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-features/CURRENT index 68076bd4..7d68d999 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-features/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-features/CURRENT @@ -1 +1 @@ -MANIFEST-000215 +MANIFEST-000219 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-features/LOG b/Data/modules/pf2e-animal-companions/packs/ac-features/LOG index eb289904..9de390aa 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-features/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-features/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.691598 ffff86fdf0a0 Recovering log #213 -2023/10/23-05:12:18.696647 ffff86fdf0a0 Delete type=0 #213 -2023/10/23-05:12:18.696667 ffff86fdf0a0 Delete type=3 #211 +2023/11/12-06:20:01.587007 ffff8929e0a0 Recovering log #217 +2023/11/12-06:20:01.591926 ffff8929e0a0 Delete type=3 #215 +2023/11/12-06:20:01.591949 ffff8929e0a0 Delete type=0 #217 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-features/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-features/LOG.old index 53bada0a..82642f02 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-features/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-features/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.071381 ffff877ef0a0 Recovering log #209 -2023/10/20-07:55:11.076235 ffff877ef0a0 Delete type=3 #207 -2023/10/20-07:55:11.076257 ffff877ef0a0 Delete type=0 #209 -2023/10/23-05:11:51.673019 ffff85fbf0a0 Level-0 table #214: started -2023/10/23-05:11:51.673035 ffff85fbf0a0 Level-0 table #214: 0 bytes OK -2023/10/23-05:11:51.674950 ffff85fbf0a0 Delete type=0 #212 -2023/10/23-05:11:51.677388 ffff85fbf0a0 Manual compaction at level-0 from '!items!0i2ZSrRpjKG0KV4U' @ 72057594037927935 : 1 .. '!items!zF6bLjVwj7Njkqan' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.691598 ffff86fdf0a0 Recovering log #213 +2023/10/23-05:12:18.696647 ffff86fdf0a0 Delete type=0 #213 +2023/10/23-05:12:18.696667 ffff86fdf0a0 Delete type=3 #211 +2023/11/12-06:17:24.219040 ffff85fbf0a0 Level-0 table #218: started +2023/11/12-06:17:24.219056 ffff85fbf0a0 Level-0 table #218: 0 bytes OK +2023/11/12-06:17:24.220950 ffff85fbf0a0 Delete type=0 #216 +2023/11/12-06:17:24.221278 ffff85fbf0a0 Manual compaction at level-0 from '!items!0i2ZSrRpjKG0KV4U' @ 72057594037927935 : 1 .. '!items!zF6bLjVwj7Njkqan' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000215 b/Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000219 similarity index 80% rename from Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000215 rename to Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000219 index 471d2067..ed144bfb 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000215 and b/Data/modules/pf2e-animal-companions/packs/ac-features/MANIFEST-000219 differ diff --git a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/000214.log b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/000218.log similarity index 100% rename from Data/modules/pf2e-animal-companions/packs/ac-support-benefits/000214.log rename to Data/modules/pf2e-animal-companions/packs/ac-support-benefits/000218.log diff --git a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/CURRENT b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/CURRENT index 51af8957..9aabe0cd 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/CURRENT +++ b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/CURRENT @@ -1 +1 @@ -MANIFEST-000213 +MANIFEST-000217 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG index 0a7d87c6..f19d765c 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG +++ b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.698781 ffff867cf0a0 Recovering log #211 -2023/10/23-05:12:18.703939 ffff867cf0a0 Delete type=0 #211 -2023/10/23-05:12:18.703959 ffff867cf0a0 Delete type=3 #209 +2023/11/12-06:20:01.594207 ffff88a8e0a0 Recovering log #215 +2023/11/12-06:20:01.599496 ffff88a8e0a0 Delete type=0 #215 +2023/11/12-06:20:01.599515 ffff88a8e0a0 Delete type=3 #213 diff --git a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG.old b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG.old index 8dd87e97..4398ec39 100644 --- a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG.old +++ b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.078354 ffff867cf0a0 Recovering log #207 -2023/10/20-07:55:11.083248 ffff867cf0a0 Delete type=3 #205 -2023/10/20-07:55:11.083270 ffff867cf0a0 Delete type=0 #207 -2023/10/23-05:11:51.675097 ffff85fbf0a0 Level-0 table #212: started -2023/10/23-05:11:51.675117 ffff85fbf0a0 Level-0 table #212: 0 bytes OK -2023/10/23-05:11:51.677238 ffff85fbf0a0 Delete type=0 #210 -2023/10/23-05:11:51.679641 ffff85fbf0a0 Manual compaction at level-0 from '!items!2Jaz98WiQMNnqKCD' @ 72057594037927935 : 1 .. '!items!zE01vpjowhoKygig' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.698781 ffff867cf0a0 Recovering log #211 +2023/10/23-05:12:18.703939 ffff867cf0a0 Delete type=0 #211 +2023/10/23-05:12:18.703959 ffff867cf0a0 Delete type=3 #209 +2023/11/12-06:17:24.221352 ffff85fbf0a0 Level-0 table #216: started +2023/11/12-06:17:24.221370 ffff85fbf0a0 Level-0 table #216: 0 bytes OK +2023/11/12-06:17:24.223481 ffff85fbf0a0 Delete type=0 #214 +2023/11/12-06:17:24.229606 ffff85fbf0a0 Manual compaction at level-0 from '!items!2Jaz98WiQMNnqKCD' @ 72057594037927935 : 1 .. '!items!zE01vpjowhoKygig' @ 0 : 0; will stop at (end) diff --git a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000213 b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000217 similarity index 81% rename from Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000213 rename to Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000217 index 8cc015e2..df6a31ec 100644 Binary files a/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000213 and b/Data/modules/pf2e-animal-companions/packs/ac-support-benefits/MANIFEST-000217 differ diff --git a/Data/modules/wall-height/packs/macros/001041.log b/Data/modules/wall-height/packs/macros/001045.log similarity index 100% rename from Data/modules/wall-height/packs/macros/001041.log rename to Data/modules/wall-height/packs/macros/001045.log diff --git a/Data/modules/wall-height/packs/macros/CURRENT b/Data/modules/wall-height/packs/macros/CURRENT index dd123db1..440ca64e 100644 --- a/Data/modules/wall-height/packs/macros/CURRENT +++ b/Data/modules/wall-height/packs/macros/CURRENT @@ -1 +1 @@ -MANIFEST-001040 +MANIFEST-001044 diff --git a/Data/modules/wall-height/packs/macros/LOG b/Data/modules/wall-height/packs/macros/LOG index 01f364ad..396ee13b 100644 --- a/Data/modules/wall-height/packs/macros/LOG +++ b/Data/modules/wall-height/packs/macros/LOG @@ -1,3 +1,3 @@ -2023/10/23-05:12:18.733634 ffff86fdf0a0 Recovering log #1038 -2023/10/23-05:12:18.739053 ffff86fdf0a0 Delete type=0 #1038 -2023/10/23-05:12:18.739072 ffff86fdf0a0 Delete type=3 #1036 +2023/11/12-06:20:01.632711 ffff8929e0a0 Recovering log #1042 +2023/11/12-06:20:01.637732 ffff8929e0a0 Delete type=3 #1040 +2023/11/12-06:20:01.637755 ffff8929e0a0 Delete type=0 #1042 diff --git a/Data/modules/wall-height/packs/macros/LOG.old b/Data/modules/wall-height/packs/macros/LOG.old index fd673a05..40a449ea 100644 --- a/Data/modules/wall-height/packs/macros/LOG.old +++ b/Data/modules/wall-height/packs/macros/LOG.old @@ -1,7 +1,7 @@ -2023/10/20-07:55:11.118478 ffff877ef0a0 Recovering log #1034 -2023/10/20-07:55:11.123398 ffff877ef0a0 Delete type=3 #1032 -2023/10/20-07:55:11.123422 ffff877ef0a0 Delete type=0 #1034 -2023/10/23-05:11:51.689038 ffff85fbf0a0 Level-0 table #1039: started -2023/10/23-05:11:51.689068 ffff85fbf0a0 Level-0 table #1039: 0 bytes OK -2023/10/23-05:11:51.692955 ffff85fbf0a0 Delete type=0 #1037 -2023/10/23-05:11:51.700309 ffff85fbf0a0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) +2023/10/23-05:12:18.733634 ffff86fdf0a0 Recovering log #1038 +2023/10/23-05:12:18.739053 ffff86fdf0a0 Delete type=0 #1038 +2023/10/23-05:12:18.739072 ffff86fdf0a0 Delete type=3 #1036 +2023/11/12-06:17:24.240372 ffff85fbf0a0 Level-0 table #1043: started +2023/11/12-06:17:24.240389 ffff85fbf0a0 Level-0 table #1043: 0 bytes OK +2023/11/12-06:17:24.242231 ffff85fbf0a0 Delete type=0 #1041 +2023/11/12-06:17:24.242288 ffff85fbf0a0 Manual compaction at level-0 from 'undefined' @ 72057594037927935 : 1 .. 'undefined' @ 0 : 0; will stop at (end) diff --git a/Data/modules/wall-height/packs/macros/MANIFEST-001040 b/Data/modules/wall-height/packs/macros/MANIFEST-001040 deleted file mode 100644 index 9fe15206..00000000 Binary files a/Data/modules/wall-height/packs/macros/MANIFEST-001040 and /dev/null differ diff --git a/Data/modules/wall-height/packs/macros/MANIFEST-001044 b/Data/modules/wall-height/packs/macros/MANIFEST-001044 new file mode 100644 index 00000000..4d66ed05 Binary files /dev/null and b/Data/modules/wall-height/packs/macros/MANIFEST-001044 differ diff --git a/Data/systems/pf2e/CHANGELOG.md b/Data/systems/pf2e/CHANGELOG.md index e465ec7e..dbe54a24 100644 --- a/Data/systems/pf2e/CHANGELOG.md +++ b/Data/systems/pf2e/CHANGELOG.md @@ -1,3 +1,173 @@ +## 5.8.3 + +### Notice + +The 5.8 series of system releases is the final one before changes from Pathfinder Player Core and Pathfinder GM Core are added. The majority of changes are simple renaming of some items, traits, and other elements, with some small tweaks to mechanics. Some of the coming non-renaming changes are more substantial: + +PC options: current Witch patron themes, Wizard arcane schools, and the Tiefling & Aasimar heritages are being moved to a "PF2e Legacy Data" module, which will be available soon. + +Alignment: alignment is being removed from all sheets, but the data will still exist on actors, hidden until a module enables the display of them as traits. + +Variant rules: the Dual Class and Ancestry Paragon variant rules are moving to the PF2e Workbench module. Other variants that were not reprinted, like Stamina, will be staying in the system as they are difficult to reproduce in module form. + +Premium modules: many adventure modules, such as those developed by Foundry Gaming and Sigil Services, keep up with system releases. This means updating the pf2e system version will be required to run such modules in the future. + +We will update our system wiki with a full list of changes prior to the 5.9 system release. + +### System Improvements + +- (jfn4th) Add separate setting to skip damage modifiers dialog +- (stwlam) Enable ephemeral effects for spell damage rolls +- (Supe) Add buttons to place measured template in spell summaries on actor sheets + +### Bugfixes + +- (jfn4th) Fix NPC shield labels +- (stwlam) Fix condition increasing in effects panel +- (stwlam) Fix issue causing some roll substitutions to not delete parent effect after rolling +- (stwlam) Include max stamina when determining whether massive damage is taken +- (stwlam) Show (core Foundry) secret text in item descriptions to GMs +- (Supe) Fix fatal override when base damage type is overwritten +- (Supe) Fix styling for spellcasting drag handle + +### Data Updates + +- (Abaddon) Fix description of Grindlegrub Steak and Jax +- (Dire Weasel) Add automation for Burning Mammoth Commando's Cruel Cutter +- (Dire Weasel) Add automation for House Drake's Silver Strike +- (Dire Weasel) Add automation for Stasian Smash +- (Dire Weasel) Add custom resistance for Perfect Droplet +- (Dire Weasel) Add damage automation to Garrote Bolt and Garrote Shot +- (Dire Weasel) Add effects for Glowing Lantern Fruit, Element Embodied (metal and wood), Silver Crescent, Thorn Triad +- (Dire Weasel) Add leshy trait to Towering Growth +- (Dire Weasel) Add Metal and Wood to effect for Elemental Absorption +- (Dire Weasel) Add silver material effect to Sterling Dynamo strikes and magical trait with Golem Dynamo strikes +- (Dire Weasel) Add spells to Spirit Turtle +- (Dire Weasel) Add TokenLight to Glorious Plate, Radiant Lance, and Songbird's Brush +- (Dire Weasel) Add Wood and Metal effects for Elemental Gift +- (Dire Weasel) Fix physical resistance exception for The First Faithful +- (Dire Weasel) Fix single action damage for Wronged Monk's Wrath +- (Intervención) Fix Purple Worm Sting damage +- (rectulo) Fix typo in description of Retch Rust feat +- (stwlam) Fix predicate in Ongoing Strategy feat + +## 5.8.2 + +### System Improvements + +- (stwlam) Automate damage-based instant death +- (stwlam) Display total bulk in vehicle sheet inventory +- (Supe) Support spell heighten trait overrides +- (Supe) Move always show dialog toggle from the header to the dialog body + +### Bugfixes + +- (stwlam) Fix issue preventing NPC loot sheet inventory from appearing to players +- (stwlam) Fix handling of shield block buttons on damage messages +- (Supe) Fix deleting spell fixed heightening entries +- (Supe) Fix shield hardness label in armor sheet + +### Data Updates + +- (Dire Weasel) Brush up Reginald Vancaskerkin and add effect for Overdrive Engine +- (Dire Weasel) Fix healing links in Life Shot +- (stwlam) Fix application of Blade Ally property rune effects on handwraps + +## 5.8.1 + +This release updates verified core compatibility to 11.314. + +### Bugfixes + +- (alexbrault) Localize damage label in item summary +- (In3luki) Restore "Rest for the Night" button listener in character sheet +- (stwlam) Remove checking of hands available for free-hand weapons +- (stwlam) Fix issue preventing damage weakness associated with fire aura junction from being properly recognized + +### Data Updates + +- (Dire Weasel) Add typed damage links to Manifestation Of Dahak's Focused Breath Weapon +- (Dire Weasel) Update The Eclipse damage to `@Damage` format + +## 5.8.0 + +### System Improvements + +- (In3luki, Supe) Add a damage-roll dialog, similar in purpose to the check roll dialog +- (In3luki) Add "not" button to Compendium Browser filter tags +- (stwlam) Add support for aura effect alterations +- (stwlam) Start adding support for designating damage rolls as actually being healing +- (stwlam) Add support for property-rune strike adjustments on melee items +- (stwlam) Do not emit effects from auras of GM-hidden tokens +- (stwlam) Draw aura textures underneath tokens +- (stwlam) Make PC attacks that require free hands always visible (though still disabled) on sheet +- (stwlam) Include UUID in actor roll options as "self:uuid:[uuid]" + +### Bugfixes + +- (stwlam) Fix some bonuses and modifiers slipping by battle-form damage exclusion +- (stwlam) Fix specific magic weapons receiving price changes due to precious materials +- (stwlam) Fix setting of attribute domain for strikes using weapons with finesse +- (stwlam) Localize publication form labels in actor/item sheets +- (stwlam) Fix issue preventing ephemeral effects from operating on elemental blasts +- (stwlam) Read in `options.difficultyClass` in `SingleCheckActionVariant#use` +- (stwlam) Restore editability of stamina & resolve from token HUD +- (stwlam) Fix issue preventing some automatic effect removals after rolls. +- (Supe) Fix display of variant spell descriptions +- (Supe) Fix some spell sheet errors and update to fieldset + +### Data Updates + +- (Cerapter) Allow Thaumaturge Implements to accept homebrew +- (Dire Weasel) Add aura to Aura of Forgetfulness +- (Dire Weasel) Add automation for Brimorak's Flaming Weapon, Corrupted Touch, Eunemvro's Blessed Strikes, Facetbound Nullifier's Field of Force, Secret-Keeper's Designate Apostate, Shoma Lyzerius' Natural-Born Burner, Spirit Turtle's Environmental Balance +- (Dire Weasel) Add utilize property runes on some NPC attacks +- (Dire Weasel) Add effect for Cloak of Light and auto-heighten damage link +- (Dire Weasel) Add effects for Blood Booster, Ghost Oil, Life-Boosting Oil, Wounding Oil +- (Dire Weasel) Add infused alchemical items to Amateur Chemist's inventory and add attacks +- (Dire Weasel) Add missing category to Numerian Construct action +- (Dire Weasel) Add note and damage link to Grendel's Hands of the Murderer +- (Dire Weasel) Add stupefied check to Vetalarana Emergent's Anticipatory Attack +- (Dire Weasel) Brush up some NPC Pack Attacks +- (Dire Weasel) Fix resistances and weaknesses of Bloom of Lamashtu +- (Dire Weasel) Fix size of The Beast +- (Dire Weasel) Fix War Formation to remove explicit damage type +- (Dire Weasel) Set Weapon Surge effect duration to 1 round +- (Dire Weasel) Update Desiccating Inhalation to include leveled damage in main description and add healing link +- (Dire Weasel) Update Facetbound Cascader's Energy Ward from effect to RollOptions with suboptions +- (Dire Weasel) Update some NPC strikes to use damage partials instead of rule elements +- (Dire Weasel) Fix Brochmaw's Hot Oil damage +- (In3luki) Fix issue causing hazards to not appear in compendium browser +- (InfamousSky) Add many equipment and spell icons +- (Intervención) Makes Overdrive Ally an action rather than passive ability +- (rectulo) Add missing level requirement in archetype journal for Sorcerer archetype +- (rectulo) Fix double "action-glyph" elements in some item descriptions +- (rectulo) Fix the bonus on attack rolls in the sulfur bomb (greater) description +- (SpartanCPA) Add Exploit Regret reaction to Ifrit Shuyookh +- (stwlam) Add aura junction effects for fire and water elements +- (stwlam) Fix hardness alteration of shield in sparkling targe class feature +- (stwlam) Fix reference to "Vs. Undead" spell effect in text of Lay on Hands +- (stwlam) Automate Keen rune, Keen-like abilities on PC options and creature attack effects +- (stwlam) Automatically add/increase Doomed condition at extreme oracular curse stage +- (stwlam) Remove scouting effects only after initiative rolls +- (Supe) Add label for fire impulse junction upgrade +- (Tikael) Add effect for Fresh Produce +- (Tikael) Add spell effect for Positive Luminance + +## 5.7.4 + +### Bugfixes + +- (Cuingamehtar) Remove empty common rarity tag on feat chat cards +- (In3luki) Restore availability of stamina token bar attribute +- (stwlam) Fix dropping feats in campaign feat group +- (stwlam) Fix rendering error in Firefox of actor sheet inventories + +## Data Updates + +- (stwlam) Automate Ghostly Resistance feat +- (Tikael) Fix rule element in Buckler Expertise + ## 5.7.3 ### System Improvements diff --git a/Data/systems/pf2e/icons/equipment/alchemical-items/alchemical-elixirs/fury-cocktail.webp b/Data/systems/pf2e/icons/equipment/alchemical-items/alchemical-elixirs/fury-cocktail.webp new file mode 100644 index 00000000..f14d1cba --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/alchemical-items/alchemical-elixirs/fury-cocktail.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a5ac233d8d78627b780fd781c888a8b37d0e1fadc5d59399c6d94a7dc619bcfd +size 2146 diff --git a/Data/systems/pf2e/icons/equipment/alchemical-items/food/phantom-roll.webp b/Data/systems/pf2e/icons/equipment/alchemical-items/food/phantom-roll.webp new file mode 100644 index 00000000..35124c91 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/alchemical-items/food/phantom-roll.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:749440d683834b7c0ceeb5288a97a5fbaba7cc04497fe5692906d2feb71e446d +size 1768 diff --git a/Data/systems/pf2e/icons/equipment/armor/buckle-armor.webp b/Data/systems/pf2e/icons/equipment/armor/buckle-armor.webp new file mode 100644 index 00000000..6367455a --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/buckle-armor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8dbe6455a61aba2374efa9cf8c4d586eb29fbd419842b9b1a112b257770b0c2e +size 2332 diff --git a/Data/systems/pf2e/icons/equipment/armor/ceramic-plate.webp b/Data/systems/pf2e/icons/equipment/armor/ceramic-plate.webp new file mode 100644 index 00000000..e4ff843f --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/ceramic-plate.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d5358f35b72cda67dd05f15b1789f768efb5fa4f10636a23bc908c61d19a12fd +size 2004 diff --git a/Data/systems/pf2e/icons/equipment/armor/chainmail.webp b/Data/systems/pf2e/icons/equipment/armor/chainmail.webp index c2937042..d4c42775 100644 --- a/Data/systems/pf2e/icons/equipment/armor/chainmail.webp +++ b/Data/systems/pf2e/icons/equipment/armor/chainmail.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:1ea34b04b94835993adbf67c0e5191a8b2cafa504cb9bf7bde5db2e75ae6cbf3 -size 2428 +oid sha256:63c732a10165d0c03fd3db26805513fe80c9e6c9c5ae04c008748339263d12a2 +size 2430 diff --git a/Data/systems/pf2e/icons/equipment/armor/coral-armor.webp b/Data/systems/pf2e/icons/equipment/armor/coral-armor.webp new file mode 100644 index 00000000..d44c22af --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/coral-armor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:fc33c14a493c7aeba4f139cc5919936ccedfeea4ca21aa39cb86bef119b43511 +size 2336 diff --git a/Data/systems/pf2e/icons/equipment/armor/lattice-armor.webp b/Data/systems/pf2e/icons/equipment/armor/lattice-armor.webp new file mode 100644 index 00000000..3239b2b8 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/lattice-armor.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5aaec7695985a820ff094228bf61b114f2f35d70211695ad6bbe5d8bac8d05b4 +size 2008 diff --git a/Data/systems/pf2e/icons/equipment/armor/mantis-shell.webp b/Data/systems/pf2e/icons/equipment/armor/mantis-shell.webp new file mode 100644 index 00000000..7638b30d --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/mantis-shell.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:501b6457728491b9fbdf70c8a0752da89585cc9a15b9d2a7c22e1c23cd603ea7 +size 2570 diff --git a/Data/systems/pf2e/icons/equipment/armor/niyahaat.webp b/Data/systems/pf2e/icons/equipment/armor/niyahaat.webp new file mode 100644 index 00000000..81e4c353 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/niyahaat.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:50fbfd8414580bd964024ae266f0e42a4015e5fcea426c50775c1b629c604763 +size 2336 diff --git a/Data/systems/pf2e/icons/equipment/armor/o-yoroi.webp b/Data/systems/pf2e/icons/equipment/armor/o-yoroi.webp new file mode 100644 index 00000000..f9df9542 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/o-yoroi.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d20455b5a02c8c06249518f3083a46bea9f8cde42722b7ba2d6c9324ded4f00d +size 1208 diff --git a/Data/systems/pf2e/icons/equipment/armor/sankeit.webp b/Data/systems/pf2e/icons/equipment/armor/sankeit.webp new file mode 100644 index 00000000..54e56779 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/sankeit.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:072051f407d3cc243b4576d63b57f854b3379da70ed098c0a273d27aafd5d005 +size 1110 diff --git a/Data/systems/pf2e/icons/equipment/armor/scroll-robes.webp b/Data/systems/pf2e/icons/equipment/armor/scroll-robes.webp new file mode 100644 index 00000000..791b3cd7 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/armor/scroll-robes.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61ea8a511edbe048f677c9de9a84c5ebb7a8b68f192d39f39c1a55e99b1d96a2 +size 2824 diff --git a/Data/systems/pf2e/icons/equipment/consumables/ammunition/life-shot.webp b/Data/systems/pf2e/icons/equipment/consumables/ammunition/life-shot.webp new file mode 100644 index 00000000..fc2185bf --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/consumables/ammunition/life-shot.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:017acbb0cf809bb382477a9822a6b1a21fd103d210ff81febc1dc9201aaffd72 +size 2576 diff --git a/Data/systems/pf2e/icons/equipment/consumables/fulus/fulu-anathema.webp b/Data/systems/pf2e/icons/equipment/consumables/fulus/fulu-anathema.webp new file mode 100644 index 00000000..1240f46b --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/consumables/fulus/fulu-anathema.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2dc1a17eaf63d1d7767e3ece9a69fd8604f472308fd63c1b22cca18fec5de5d +size 2170 diff --git a/Data/systems/pf2e/icons/equipment/consumables/spellguns/reapers-spellgun.webp b/Data/systems/pf2e/icons/equipment/consumables/spellguns/reapers-spellgun.webp new file mode 100644 index 00000000..46a5b1e7 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/consumables/spellguns/reapers-spellgun.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d9313cba92dbcae2b79ac5364301a5f0f880d8bcff29fb052b47049194807d35 +size 1710 diff --git a/Data/systems/pf2e/icons/equipment/held-items/bring-me-near.webp b/Data/systems/pf2e/icons/equipment/held-items/bring-me-near.webp new file mode 100644 index 00000000..4e6547c3 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/held-items/bring-me-near.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7792bee66e848d55635e56c20856ab8d48a38751cf778f0f5797c0db50801f4 +size 2242 diff --git a/Data/systems/pf2e/icons/equipment/held-items/fiddle-of-the-maestro.webp b/Data/systems/pf2e/icons/equipment/held-items/fiddle-of-the-maestro.webp new file mode 100644 index 00000000..f7315049 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/held-items/fiddle-of-the-maestro.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7c42175e9d760b18f7d9bc8c59bef199765087224ff0b94376d13295794fdc98 +size 2558 diff --git a/Data/systems/pf2e/icons/equipment/held-items/magnifying-glass-of-elucidation.webp b/Data/systems/pf2e/icons/equipment/held-items/magnifying-glass-of-elucidation.webp index 6528b4f0..2048c546 100644 --- a/Data/systems/pf2e/icons/equipment/held-items/magnifying-glass-of-elucidation.webp +++ b/Data/systems/pf2e/icons/equipment/held-items/magnifying-glass-of-elucidation.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:e07d5d6785487975ea6d93b4add9aab294f4eb628d994023c555bee1c6a648dd -size 884 +oid sha256:515f5d4ae657992f52a14ddd2db4add67a5ecf1d3239f366831603f5d0cb5852 +size 1744 diff --git a/Data/systems/pf2e/icons/equipment/held-items/wand-of-mental-purification.webp b/Data/systems/pf2e/icons/equipment/held-items/wand-of-mental-purification.webp new file mode 100644 index 00000000..b0d26665 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/held-items/wand-of-mental-purification.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:09b0a55356b4b0fb1d00993d22c66d7df618bb3ae957b5de19b60b64fe83f6bf +size 1726 diff --git a/Data/systems/pf2e/icons/equipment/held-items/wand-of-refracting-rays.webp b/Data/systems/pf2e/icons/equipment/held-items/wand-of-refracting-rays.webp new file mode 100644 index 00000000..fb796775 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/held-items/wand-of-refracting-rays.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d8ee649ef4bfe231220c9f3d6e9b4f1adb159dab9bad966a80e8df2e340a0889 +size 1244 diff --git a/Data/systems/pf2e/icons/equipment/other/spellhearts/judgment-thurible.webp b/Data/systems/pf2e/icons/equipment/other/spellhearts/judgment-thurible.webp new file mode 100644 index 00000000..f6207bd1 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/other/spellhearts/judgment-thurible.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6dca5afb4fe78a5504c69253e47fbb72428517e8128e691287c0635af63061bb +size 2274 diff --git a/Data/systems/pf2e/icons/equipment/other/spellhearts/radiant-prism.webp b/Data/systems/pf2e/icons/equipment/other/spellhearts/radiant-prism.webp new file mode 100644 index 00000000..1f679d4c --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/other/spellhearts/radiant-prism.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5257537e4eab0efef3a4ddd03d14a5fb16d19d89628e5458b48ba07cca0137bb +size 1662 diff --git a/Data/systems/pf2e/icons/equipment/staves/atmospheric-staff.webp b/Data/systems/pf2e/icons/equipment/staves/atmospheric-staff.webp new file mode 100644 index 00000000..f9590bb3 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/staves/atmospheric-staff.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f0e7a983ffd41bec5b1f453a1bd5f1dea0c58ca8c9ad22d8da0cbc7b094d9133 +size 1572 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/ancestral-geometry.webp b/Data/systems/pf2e/icons/equipment/tattoos/ancestral-geometry.webp new file mode 100644 index 00000000..9e615367 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/ancestral-geometry.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:80a4af5689f53b28ca89c52e1f6e06e98be8d3c7d90ceb7a886c10b367de2a0f +size 2122 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/memoir-map.webp b/Data/systems/pf2e/icons/equipment/tattoos/memoir-map.webp new file mode 100644 index 00000000..e614df39 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/memoir-map.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:47d0762e969d06e91eea609bc974c1da3695b9986acdf7442699d4773978fe8e +size 2408 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/nemesis-name.webp b/Data/systems/pf2e/icons/equipment/tattoos/nemesis-name.webp new file mode 100644 index 00000000..b998e033 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/nemesis-name.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c9bc1c6c7113effedd1a3322673c81160ecfaef3f9be0a2e35b2f160bd2292fb +size 2366 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/one-hundred-victories.webp b/Data/systems/pf2e/icons/equipment/tattoos/one-hundred-victories.webp new file mode 100644 index 00000000..1e2db258 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/one-hundred-victories.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:61196bacac8c5fe1649bf9036ef1b2da4813ca6bce9cb7175c9ae2409d84d3d3 +size 1762 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/silent-heart.webp b/Data/systems/pf2e/icons/equipment/tattoos/silent-heart.webp new file mode 100644 index 00000000..7601240c --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/silent-heart.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:eb5da9d43e48cda75a216df28f17904592034bcfa73c716dcb87b40e24f58da0 +size 2894 diff --git a/Data/systems/pf2e/icons/equipment/tattoos/unbreakable-heart.webp b/Data/systems/pf2e/icons/equipment/tattoos/unbreakable-heart.webp new file mode 100644 index 00000000..6fc4c3cb --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/tattoos/unbreakable-heart.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7c0e687c4b64a07f63d8350577b8aa7c658b0a58e47f5512f7675fa1d5f0384 +size 1540 diff --git a/Data/systems/pf2e/icons/equipment/weapons/bec-de-corbin.webp b/Data/systems/pf2e/icons/equipment/weapons/bec-de-corbin.webp new file mode 100644 index 00000000..6c1e05f9 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/weapons/bec-de-corbin.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b643d66679895f5c5d883f4ffb1fa6aaa7ce4fca30738f2f797ee14c57ca05a +size 1502 diff --git a/Data/systems/pf2e/icons/equipment/weapons/frying-pan.webp b/Data/systems/pf2e/icons/equipment/weapons/frying-pan.webp new file mode 100644 index 00000000..c0218c70 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/weapons/frying-pan.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:78d9bee01ed702fcab4e0222886225f27f5b49a179c86783df2f0888b66bc413 +size 1268 diff --git a/Data/systems/pf2e/icons/equipment/weapons/gauntlet-bow.webp b/Data/systems/pf2e/icons/equipment/weapons/gauntlet-bow.webp new file mode 100644 index 00000000..8df746e3 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/weapons/gauntlet-bow.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4363a8a9b10c0794dc84ffbc42c1d8c49cd269823a31ef8e37e9d8ebeb584706 +size 2470 diff --git a/Data/systems/pf2e/icons/equipment/weapons/shobhad-longrifle.webp b/Data/systems/pf2e/icons/equipment/weapons/shobhad-longrifle.webp new file mode 100644 index 00000000..23335134 --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/weapons/shobhad-longrifle.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:edcdaf34d38fe453c311a4860c5956fc649ab352955f7e4540bace5cc3a596b1 +size 1802 diff --git a/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/eyes-of-the-eagle.webp b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/eyes-of-the-eagle.webp index a3fe6484..22c80731 100644 --- a/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/eyes-of-the-eagle.webp +++ b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/eyes-of-the-eagle.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:42cefe4eb487256c8b0e47f8cb9b149359eeed53020124876dfed1d67f4edb5f -size 1296 +oid sha256:d01fa754f4a75dc4bbefbe8685a6b858681db31163c6100c56f766d8f54086ba +size 2384 diff --git a/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/persona-mask.webp b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/persona-mask.webp index 87a65da1..27564dd4 100644 --- a/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/persona-mask.webp +++ b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/persona-mask.webp @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:2d46a119be3f3a3d39821e828c8d63a8cc9000e501bada58db91ee5374763a1f -size 1074 +oid sha256:e5e7e1ab777aa4c38bb4a37f61ae59d925b7d3319ca2b7db3ac2392f4f69cd96 +size 2620 diff --git a/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/psychopomp-mask.webp b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/psychopomp-mask.webp new file mode 100644 index 00000000..fadfd5fc --- /dev/null +++ b/Data/systems/pf2e/icons/equipment/worn-items/other-worn-items/psychopomp-mask.webp @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ad053a064f932b30f4dd209804318bb5454b436644b5907d3273ded9b85b4c15 +size 2240 diff --git a/Data/systems/pf2e/lang/en.json b/Data/systems/pf2e/lang/en.json index a2efaee9..21d67d42 100644 --- a/Data/systems/pf2e/lang/en.json +++ b/Data/systems/pf2e/lang/en.json @@ -121,6 +121,12 @@ "DamagedForN": "Trigger A creature within the monster's reach uses a manipulate action or a move action, makes a ranged attack, or leaves a square during a move action it's using.
\nEffect The monster attempts a melee Strike against the triggering creature. If the attack is a critical hit and the trigger was a manipulate action, the monster disrupts that action. This Strike doesn't count toward the monster's multiple attack penalty, and its multiple attack penalty doesn't apply to this Strike.
", "Aura": "A monster's aura automatically affects everything within a specified emanation around that monster. The monster doesn't need to spend actions on the aura; rather, the aura's effects are applied at specific times, such as when a creature ends its turn in the aura or when creatures enter the aura.
\nIf an aura does nothing but deal damage, its entry lists only the radius, damage, and saving throw. Such auras deal this damage to a creature when the creature enters the aura and when a creature starts its turn in the aura. A creature can take damage from the aura only once per round.
\nThe GM might determine that a monster's aura doesn't affect its own allies. For example, a creature might be immune to a monster's frightful presence if they have been around each other for a long time.
", "Buck": "Most monsters that serve as mounts can attempt to buck off unwanted or annoying riders, but most mounts will not use this reaction against a trusted creature unless the mounts are spooked or mistreated.
\nTrigger A creature @UUID[Compendium.pf2e.actionspf2e.Item.PM5jvValFkbFH3TV]{Mounts} or uses the @UUID[Compendium.pf2e.actionspf2e.Item.q9nbyIF0PEBqMtYe]{Command an Animal} action while riding the monster.
\nEffect The triggering creature must succeed at a Reflex saving throw against the listed DC or fall off the creature and land @UUID[Compendium.pf2e.conditionitems.Item.j91X7x0XSomq8d60]{Prone}. If the save is a critical failure, the triggering creature also takes [[/roll 1d6[bludgeoning]]]{1d6 bludgeoning damage} in addition to the normal damage for the fall.
", - "CatchRock": "Requirements The monster must have a free hand but can @UUID[Compendium.pf2e.actionspf2e.Item.wQYmDStjdjn0I26t]{Release} anything it's holding as part of this reaction.
\nTrigger The monster is targeted with a thrown rock Strike or a rock would fall on the monster.
\nEffect The monster gains a +4 circumstance bonus to its AC against the triggering attack or to any defense against the falling rock. If the attack misses or the monster successfully defends against the falling rock, the monster catches the rock, takes no damage, and is now holding the rock
", + "CatchRock": "Requirements The monster must have a free hand but can @UUID[Compendium.pf2e.actionspf2e.Item.wQYmDStjdjn0I26t]{Release} anything it's holding as part of this reaction.
\nTrigger The monster is targeted with a thrown rock Strike or a rock would fall on the monster.
\nEffect The monster gains a +4 circumstance bonus to its AC against the triggering attack or to any defense against the falling rock. If the attack misses or the monster successfully defends against the falling rock, the monster catches the rock, takes no damage, and is now holding the rock.
", "ChangeShape": "The monster changes its shape indefinitely. It can use this action again to return to its natural shape or adopt a new shape. Unless otherwise noted, a monster cannot use Change Shape to appear as a specific individual. Using Change Shape counts as creating a disguise for the @UUID[Compendium.pf2e.actionspf2e.Item.AJstokjdG6iDjVjE]{Impersonate} use of Deception. The monster's transformation automatically defeats Perception DCs to determine whether the creature is a member of the ancestry or creature type into which it transformed, and it gains a +4 status bonus to its Deception DC to prevent others from seeing through its disguise. Change Shape abilities specify what shapes the monster can adopt. The monster doesn't gain any special abilities of the new shape, only its physical form. For example, in each shape, it replaces its normal Speeds and Strikes, and might potentially change its senses or size. Any changes are listed in its stat block.
", "ConstantSpells": "A constant spell affects the monster without the monster needing to cast it, and its duration is unlimited. If a constant spell gets counteracted, the monster can reactivate it by spending the normal spellcasting actions the spell requires.
", "Constrict": "The monster deals the listed amount of damage to any number of creatures @UUID[Compendium.pf2e.conditionitems.Item.kWc1fhmv9LBiTuei]{Grabbed} or @UUID[Compendium.pf2e.conditionitems.Item.VcDeM8A5oI6VqhbM]{Restrained} by it. Each of those creatures can attempt a basic Fortitude save with the listed DC.
", - "Coven": "This monster can form a coven with two or more other creatures who also have the coven ability. This involves performing an 8-hour ceremony with all prospective coven members. After the coven is formed, each of its members gains elite adjustments, adjusting their levels accordingly. Coven members can sense other members' locations and conditions by spending a single action, which has the concentrate trait, and can sense what another coven member is sensing as a two-action activity, which has the concentrate trait as well.
\nCovens also grant spells and rituals to their members, but these can be cast only in cooperation between three coven members who are all within 30 feet of one another. A coven member can contribute to a coven spell with a single-action spellcasting activity that has a single verbal component. If two coven members have contributed these actions within the last round, a third member can cast a coven spell on her turn by spending the normal spellcasting actions. A coven can cast its coven spells an unlimited number of times but can cast only one coven spell each round. All covens grant the 8th-level @UUID[Compendium.pf2e.spells-srd.Item.dN8QBNuTiaBHCKUe]{Baleful Polymorph} spell and all the following spells, which the coven can cast at any level up to 5th: @UUID[Compendium.pf2e.spells-srd.Item.41TZEjhO6D1nWw2X]{Augury}, @UUID[Compendium.pf2e.spells-srd.Item.vLA0q0WOK2YPuJs6]{Charm}, @UUID[Compendium.pf2e.spells-srd.Item.HXhWYJviWalN5tQ2]{Clairaudience}, @UUID[Compendium.pf2e.spells-srd.Item.zvKWclOZ7A53DObE]{Clairvoyance}, @UUID[Compendium.pf2e.spells-srd.Item.yM3KTTSAIHhyuP14]{Dream Message}, @UUID[Compendium.pf2e.spells-srd.Item.i35dpZFI7jZcRoBo]{Illusory Disguise}, @UUID[Compendium.pf2e.spells-srd.Item.Ucf8eynbZMfUucjE]{Illusory Scene}, @UUID[Compendium.pf2e.spells-srd.Item.Ek5XI0aEdZhBgm21]{Prying Eye}, and @UUID[Compendium.pf2e.spells-srd.Item.FM3SmEW8N1FCRjqt]{Talking Corpse}. Individual creatures with the coven ability also grant additional spells to any coven they join. A coven can also cast the @UUID[Compendium.pf2e.spells-srd.Item.XkDCzMIyc0YOjw05]{Control Weather} ritual, with a DC of 23 instead of the standard DC.
\nIf a coven member leaving the coven or the death of a coven member brings the coven below three members, the remaining members keep their elite adjustments for 24 hours, but without enough members to contribute the necessary actions, they can't cast coven spells.
", - "Darkvision": "A monster with darkvision can see perfectly well in areas of darkness and dim light, though such vision is in black and white only. Some forms of magical darkness, such as a 4th-level @UUID[Compendium.pf2e.spells-srd.Item.4GE2ZdODgIQtg51c]{Darkness} spell, block normal darkvision. A monster with @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.4Ho2xMPEC05aSxzr]{Greater Darkvision}, however, can see through even these forms of magical darkness.
", + "Coven": "This monster can form a coven with two or more other creatures who also have the coven ability. This involves performing an 8-hour ceremony with all prospective coven members. After the coven is formed, each of its members gains elite adjustments, adjusting their levels accordingly. Coven members can sense other members' locations and conditions by spending a single action, which has the concentrate trait, and can sense what another coven member is sensing as a two-action activity, which has the concentrate trait as well.
\nCovens also grant spells and rituals to their members, but these can be cast only in cooperation between three coven members who are all within 30 feet of one another. A coven member can contribute to a coven spell with a single-action spellcasting activity that has a single verbal component. If two coven members have contributed these actions within the last round, a third member can cast a coven spell on her turn by spending the normal spellcasting actions. A coven can cast its coven spells an unlimited number of times but can cast only one coven spell each round. All covens grant the 8th-rank @UUID[Compendium.pf2e.spells-srd.Item.dN8QBNuTiaBHCKUe]{Baleful Polymorph} spell and all the following spells, which the coven can cast at any rank up to 5th: @UUID[Compendium.pf2e.spells-srd.Item.41TZEjhO6D1nWw2X]{Augury}, @UUID[Compendium.pf2e.spells-srd.Item.vLA0q0WOK2YPuJs6]{Charm}, @UUID[Compendium.pf2e.spells-srd.Item.HXhWYJviWalN5tQ2]{Clairaudience}, @UUID[Compendium.pf2e.spells-srd.Item.zvKWclOZ7A53DObE]{Clairvoyance}, @UUID[Compendium.pf2e.spells-srd.Item.yM3KTTSAIHhyuP14]{Dream Message}, @UUID[Compendium.pf2e.spells-srd.Item.i35dpZFI7jZcRoBo]{Illusory Disguise}, @UUID[Compendium.pf2e.spells-srd.Item.Ucf8eynbZMfUucjE]{Illusory Scene}, @UUID[Compendium.pf2e.spells-srd.Item.Ek5XI0aEdZhBgm21]{Prying Eye}, and @UUID[Compendium.pf2e.spells-srd.Item.FM3SmEW8N1FCRjqt]{Talking Corpse}. Individual creatures with the coven ability also grant additional spells to any coven they join. A coven can also cast the @UUID[Compendium.pf2e.spells-srd.Item.XkDCzMIyc0YOjw05]{Control Weather} ritual, with a DC of 23 instead of the standard DC.
\nIf a coven member leaving the coven or the death of a coven member brings the coven below three members, the remaining members keep their elite adjustments for 24 hours, but without enough members to contribute the necessary actions, they can't cast coven spells.
", + "Darkvision": "A monster with darkvision can see perfectly well in areas of darkness and dim light, though such vision is in black and white only. Some forms of magical darkness, such as a 4th-rank @UUID[Compendium.pf2e.spells-srd.Item.4GE2ZdODgIQtg51c]{Darkness} spell, block normal darkvision. A monster with @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.4Ho2xMPEC05aSxzr]{Greater Darkvision}, however, can see through even these forms of magical darkness.
", "Disease": "When a creature is exposed to a monster's disease, it attempts a Fortitude save or succumbs to the disease. The level of a disease is the level of the monster inflicting the disease. The disease follows the rules for afflictions.
", "Engulf": "The monster Strides up to double its Speed and can move through the spaces of any creatures in its path. Any creature of the monster's size or smaller whose space the monster moves through can attempt a Reflex save with the listed DC to avoid being engulfed. A creature unable to act automatically critically fails this save. If a creature succeeds at its save, it can choose to be either pushed aside (out of the monster's path) or pushed in front of the monster to the end of the monster's movement. The monster can attempt to Engulf the same creature only once in a single use of Engulf. The monster can contain as many creatures as can fit in its space.
\nA creature that fails its save is pulled into the monster's body. It is @UUID[Compendium.pf2e.conditionitems.Item.kWc1fhmv9LBiTuei]{Grabbed}, is @UUID[Compendium.pf2e.conditionitems.Item.xYTAsEpcJE1Ccni3]{Slowed 1}, and has to hold its breath or start suffocating. The creature takes the listed amount of damage when first engulfed and at the end of each of its turns while it's engulfed. An engulfed creature can get free by @UUID[Compendium.pf2e.actionspf2e.Item.SkZAQRkLLkmBQNB9]{Escaping} against the listed escape DC. An engulfed creature can attack the monster engulfing it, but only with unarmed attacks or with weapons of light Bulk or less. The engulfing creature is @UUID[Compendium.pf2e.conditionitems.Item.AJh5ex99aV6VTggg]{Off-Guard} against the attack. If the monster takes piercing or slashing damage equaling or exceeding the listed Rupture value from a single attack or spell, the engulfed creature cuts itself free. A creature that gets free by either method can immediately breathe and exits the swallowing monster's space.
\nIf the monster dies, all creatures it has engulfed are automatically released as the monster's form loses cohesion.
", "FastHealing": "A monster with this ability regains the given number of Hit Points each round at the beginning of its turn.
", @@ -2533,7 +2549,7 @@ "FrightfulPresence": "A creature that first enters the area must attempt a Will save.
\nRegardless of the result of the saving throw, the creature is temporarily immune to this monster's Frightful Presence for 1 minute.
\nCritical Success The creature is unaffected by the presence.
\nSuccess The creature is @UUID[Compendium.pf2e.conditionitems.Item.TBSHQspnbcqxsmjL]{Frightened 1}.
\nFailure The creature is @UUID[Compendium.pf2e.conditionitems.Item.TBSHQspnbcqxsmjL]{Frightened 2}.
\nCritical Failure The creature is @UUID[Compendium.pf2e.conditionitems.Item.TBSHQspnbcqxsmjL]{Frightened 4}.
", "Grab": "Requirements The monster's last action was a success with a Strike that lists Grab in its damage entry, or it has a creature grabbed using this action.
\nEffect The monster automatically Grabs the target until the end of the monster's next turn. The creature is @UUID[Compendium.pf2e.conditionitems.Item.kWc1fhmv9LBiTuei]{Grabbed} by whichever body part the monster attacked with, and that body part can't be used to Strike creatures until the grab is ended. Using Grab extends the duration of the monster's Grab until the end of its next turn for all creatures grabbed by it. A grabbed creature can use the @UUID[Compendium.pf2e.actionspf2e.Item.SkZAQRkLLkmBQNB9]{Escape} action to get out of the grab, and the Grab ends for a grabbed creatures if the monster moves away from it.
", "GreaterConstrict": "The monster deals the listed amount of damage to any number of creatures @UUID[Compendium.pf2e.conditionitems.Item.kWc1fhmv9LBiTuei]{Grabbed} or @UUID[Compendium.pf2e.conditionitems.Item.VcDeM8A5oI6VqhbM]{Restrained} by it. Each of those creatures can attempt a basic Fortitude save with the listed DC. A creature that fails this save falls @UUID[Compendium.pf2e.conditionitems.Item.fBnFDH2MTzgFijKf]{Unconscious}, and a creature that succeeds is then temporarily immune to falling unconscious from Greater Constrict for 1 minute.
", - "GreaterDarkvision": "A creature with greater darkvision can see perfectly well in areas of darkness and dim light, though such vision is in black and white only. Some forms of magical darkness, such as a 4th-level @UUID[Compendium.pf2e.spells-srd.Item.4GE2ZdODgIQtg51c]{Darkness} spell, block normal @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.qCCLZhnp2HhP3Ex6]{Darkvision}. A creature with greater darkvision, however, can see through even these forms of magical darkness.
", + "GreaterDarkvision": "A creature with greater darkvision can see perfectly well in areas of darkness and dim light, though such vision is in black and white only. Some forms of magical darkness, such as a 4th-rank @UUID[Compendium.pf2e.spells-srd.Item.4GE2ZdODgIQtg51c]{Darkness} spell, block normal @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.qCCLZhnp2HhP3Ex6]{Darkvision}. A creature with greater darkvision, however, can see through even these forms of magical darkness.
", "ImprovedGrab": "The monster can use @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.Tkd8sH4pwFIPzqTr]{Grab} as a free action triggered by a hit with its initial attack. A monster with Improved Grab still needs to spend an action to extend the duration for creatures it already has @UUID[Compendium.pf2e.conditionitems.Item.kWc1fhmv9LBiTuei]{Grabbed}.
", "ImprovedKnockdown": "The monster can use @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.BCLvAx4Pz4MLa2pu]{Knockdown} as a free action triggered by a hit with its initial attack.
", "ImprovedPush": "The monster can use @UUID[Compendium.pf2e.bestiary-ability-glossary-srd.Item.t6cx9FOODmeZQNYl]{Push} as a free action triggered by a hit with its initial attack.
", @@ -2788,6 +2804,17 @@ "PropertyRuneLabel2": "Property Rune (2nd)", "PropertyRuneLabel3": "Property Rune (3rd)", "PropertyRuneLabel4": "Property Rune (4th)", + "Publication": { + "Authors": "Author(s)", + "Label": "Publication", + "License": { + "Label": "License", + "OGL": "OGL", + "ORC": "ORC" + }, + "Remaster": "Remaster?", + "Title": "Title" + }, "QuantityLabel": "Quantity", "QuantityShortLabel": "Qty.", "RangePenalty": "Range Penalty", @@ -2845,16 +2872,36 @@ "ResistancesExceptionPlaceholder": "e.g. except silver", "ResistancesLabel": "Resistances", "ResolvePointsShortLabel": "Resolve", - "ResolveTitle": "The amount of resolve points you have", "RestoreSpellTitle": "Restore Spell", "RevertDamage": { "ButtonTooltip": "Undo", - "DamageMessage": "Damage applied to {actor} was reverted", - "HealingMessage": "Healing applied to {actor} was reverted" + "DamageMessage": "Damage applied to {actor} was reverted.", + "HealingMessage": "Healing applied to {actor} was reverted." }, "Roll": { "Add": "Add", "CriticalHit": "Critical Hit", + "Dialog": { + "Check": { + "Substitution": "Substitution", + "Utilize": "Utilize?" + }, + "Damage": { + "BaseDamage": "Base Damage", + "Dice": "{dice} Dice", + "DiceHeader": "Dice", + "DieSizeUpgrade": "Upgrade Die Size", + "ExtraDice": "Extra {dice}", + "Label": "Label", + "None": "None", + "Override": "Override {value}", + "Splash": "{damageType} Splash", + "TitleCritical": "Critical Damage Roll", + "Title": "Damage Roll" + }, + "ShowDefault": "Always Show Dialog", + "ShowDefaultHint": "If enabled, this dialog is always shown unless you hold Shift. If disabled, you can open this dialog by holding Shift." + }, "Fortune": "Fortune", "FortuneTitle": "{title} Fortune", "KeepHigher": "Keep Higher", @@ -2876,12 +2923,11 @@ "SETTINGS": { "Automation": { "ActorsDeadAtZero": { - "Both": "PCs and NPCs", - "Hint": "Upon reaching zero hit points, NPCs are marked as dead.", - "NPCsOnly": "Yes", - "Name": "NPCs Dead at 0 HP", - "Neither": "No", - "PCsOnly": "PCs only" + "Both": "Yes", + "Hint": "Upon reaching zero hit points, actors are marked as dead. For PCs, this only applies to damage that would immediately kill them.", + "NPCsOnly": "NPCS only", + "Name": "Actors Dead at 0 HP", + "Neither": "No" }, "Encumbrance": { "Hint": "Automatically apply the Encumbered condition to creatures carrying more than their respective limits.", @@ -3003,7 +3049,7 @@ }, "Name": "Homebrew Elements", "SpellTraits": { - "Hint": " Traits that can be applied to any spell (e.g., Cursebound, Healing)", + "Hint": "Traits that can be applied to any spell (e.g., Cursebound, Healing)", "Name": "Spell Traits" }, "Tabs": { @@ -3070,11 +3116,6 @@ "Hint": "Use better default token icons", "Name": "Nath Mode" }, - "Player": { - "QuickRolls": { - "DialogHint": "Always show this window before attempting checks." - } - }, "ResetChanges": "Reset Changes", "Settings": "Settings", "Sidebar": { @@ -3115,7 +3156,7 @@ "AutomaticBonus": { "Choices": { "ABPFundamentalPotency": "ABP: Allow Property Runes", - "ABPRulesAsWritten": "ABP: Disallow Property Runes ", + "ABPRulesAsWritten": "ABP: Disallow Property Runes", "noABP": "Do not use ABP" }, "Hint": "Reload Required: Support for Automatic Bonus Progression variant rules, except skills/apex ability.", @@ -3238,32 +3279,12 @@ "SellItemConfirmHeader": "Sell Confirmation", "SellItemQuestion": "Are you sure you want to sell {item}?", "Senses": "Senses", - "SettingsColorBlue": "Bluegray", - "SettingsColorFoundry-UI": "Work in Progress", - "SettingsColorLabel": "UI Theme", - "SettingsColorNotes": "UI themes are most visible on the sidebar and chat cards.", - "SettingsColorOriginal": "Original", - "SettingsColorRed": "Darkred", - "SettingsDataUriHighlightLabel": "Highlight images that use data: URI", - "SettingsDataUriHighlightNotes": "Images that use a data: URI are embedded in the character sheet. This has a negative performance impact on the character. If enabled, such images will be highlighted with a red border to make it easy to find and remove them.Magic tea is a type of potion. It activates when you drink it, which uses it up. Magic tea has the potion and tea traits. When you craft a dose of magic tea, the raw materials you supply are in the form of unusual and costly tea leaves. The process of crafting magic tea includes infusing the leaves with magical reagents, purifying the water, and steeping the tea in the water, resulting in what's essentially a particularly delicious-tasting potion. You can activate magic tea with an Interact action as you drink it or feed it to another creature, as if it were a potion. You can also activate magic tea with a 10-minute activity that requires sterling tea ware (these artisan's tools can be shared by up to four people who take this activity simultaneously) to prepare the tea and then consume it or present it to someone during a short tea ceremony, after which the magic tea's effects begin; activating magic tea in this way enhances its effect, as detailed in each entry's Tea Ceremony.
Once you drink a dose of magic tea, you're temporarily immune to that particular type of magic tea for 24 hours.
", "TraitDescriptionTech": "Items with this trait are associated with the technology of Numeria.", "TraitDescriptionTelepathy": "A creature with telepathy can communicate mentally with creatures. This doesn't give any special access to their thoughts, and communicates no more information than normal speech would.", "TraitDescriptionTeleportation": "Teleportation effects allow you to instantaneously move from one point in space to another. Teleportation does not usually trigger reactions based on movement.", @@ -4270,6 +4271,7 @@ "TraitMutant": "Mutant", "TraitNagaji": "Nagaji", "TraitNecromancy": "Necromancy", + "TraitNindoru": "Nindoru", "TraitNoisy": "Noisy", "TraitNonlethal": "Nonlethal", "TraitNymph": "Nymph", @@ -4487,6 +4489,7 @@ "TraitTanggal": "Tanggal", "TraitTattoo": "Tattoo", "TraitTattooedOnTheBody": "Tattooed on the Body", + "TraitTea": "Tea", "TraitTech": "Tech", "TraitTechnological": "Technological", "TraitTelepathy": "Telepathy", @@ -4673,8 +4676,8 @@ }, "errorTargetToken": "Select at least one valid token.", "noDamageInfoForOutcome": "No damage information for outcome {outcome}.", - "shiftModifyDamageLabel": "Adjust Damage/Healing", - "shiftModifyDamageTitle": "Adjust the rolled damage/healing" + "shiftModifyDamageLabel": "Amount", + "shiftModifyDamageTitle": "Adjust Damage/Healing" }, "UUID": { "Label": "UUID", @@ -5138,8 +5141,8 @@ "greaterAnchoring": { "Name": "Greater Anchoring", "Note": { - "criticalSuccess": "When you critically hit a target with a weapon with the anchoring rune, the weapon casts 8th-level @UUID[Compendium.pf2e.spells-srd.Item.ksLCg62cLOojw3gN]{Dimensional Anchor} on the target (@Check[type:will|dc:38|name:Greater Anchoring Rune], counteract modifier [[/r 1d20+28 #Greater Anchoring Rune Counteract Check]]{+28}), except that if the target critically succeeds at its Will save, instead of having no effect, the dimensional anchor lasts for 1 round.", - "success": "When you hit a target with the weapon but don't critically hit, the target is affected by 4th-level @UUID[Compendium.pf2e.spells-srd.Item.ksLCg62cLOojw3gN]{Dimensional Anchor} for 1 round without a save (counteract modifier [[/r 1d20+28 #Greater Anchoring Rune Counteract Check]]{+28})." + "criticalSuccess": "When you critically hit a target with a weapon with the anchoring rune, the weapon casts 8th-rank @UUID[Compendium.pf2e.spells-srd.Item.ksLCg62cLOojw3gN]{Dimensional Anchor} on the target (@Check[type:will|dc:38|name:Greater Anchoring Rune], counteract modifier [[/r 1d20+28 #Greater Anchoring Rune Counteract Check]]{+28}), except that if the target critically succeeds at its Will save, instead of having no effect, the dimensional anchor lasts for 1 round.", + "success": "When you hit a target with the weapon but don't critically hit, the target is affected by 4th-rank @UUID[Compendium.pf2e.spells-srd.Item.ksLCg62cLOojw3gN]{Dimensional Anchor} for 1 round without a save (counteract modifier [[/r 1d20+28 #Greater Anchoring Rune Counteract Check]]{+28})." } }, "greaterAshen": { @@ -5289,8 +5292,7 @@ "Name": "Impossible" }, "keen": { - "Name": "Keen", - "Note": "Attacks with this weapon are a critical hit on a 19 on the die as long as that result is a success. This property has no effect on a 19 if the result would be a failure." + "Name": "Keen" }, "kinWarding": { "Name": "Kin-Warding" @@ -5405,7 +5407,6 @@ "WeaponTypeSpecial": "Other Weapons", "WeaponTypeUnarmed": "Unarmed Attack", "Weight": "Weight", - "WeightTitle": "Your weight", "WorldClock": { "AD": { "Era": "AD" @@ -5780,7 +5781,7 @@ }, "ui": { "armorEquipped": "Toggle wearing your equipment", - "equipmentInvested": "Toggle investing your equipment", + "equipmentInvested": "Toggle Investment", "sell": "Sell", "weaponEquipped": "Toggle holding your weapon" }, diff --git a/Data/systems/pf2e/lang/re-en.json b/Data/systems/pf2e/lang/re-en.json index 0367dc4a..79f7ba6d 100644 --- a/Data/systems/pf2e/lang/re-en.json +++ b/Data/systems/pf2e/lang/re-en.json @@ -96,6 +96,7 @@ "Beak": "Beak", "Beard": "Beard", "Bite": "Bite", + "Blade": "Blade", "Body": "Body", "BoneDart": "Bone Dart", "BoneShard": "Bone Shard", @@ -118,12 +119,14 @@ "Leg": "Leg", "LightningLash": "Lightning Lash", "Mandibles": "Mandibles", + "MetalShard": "Metal Shard", "Moonbeam": "Moonbeam", "PiercingHymn": "Piercing Hymn", "Pincer": "Pincer", "Pseudopod": "Pseudopod", "Quill": "Quill", "Rock": "Rock", + "Seed": "Seed", "Spikes": "Spikes", "Spine": "Spine", "Stinger": "Stinger", @@ -560,7 +563,11 @@ "Custom": { "AdamantineBludgeoning": "adamantine bludgeoning", "AllDamageFromUndead": "all damage from undead", + "AllMagicalDamage": "all magical damage", + "AllNonMagicalDamage": "all non-magical damage", + "AttacksWaterCreatures": "attacks by water creatures", "ColdIronBludgeoning": "cold iron bludgeoning", + "ImpulseFireFrom": "impulse fire from {origin}", "MagicalBludgeoning": "magical bludgeoning", "MagicalColdIron": "magical cold iron", "MagicalDarkwood": "magical darkwood", @@ -568,6 +575,7 @@ "MagicalSilverWeapons": "magical silver weapons", "MagicalWeaponsBrightLight": "magical weapons shedding bright light", "NonWeapons": "non-weapons", + "PersistentPoison": "persistent poison", "PhysicalRangedAttacks": "physical ranged attacks", "RangedWeaponAttacks": "ranged weapon attacks" } @@ -647,6 +655,9 @@ "AC": "Designated Prey attacks the Duskwalker", "Checks": "Duskwalker rolls checks against his Designated Prey" }, + "FacetboundCascader": { + "EnergyCharge": "Energy Charge" + }, "Falrok": { "LazuriteTerrainSwitch": "In lazurite infused terrain" }, @@ -704,6 +715,16 @@ "Necrohulk": { "AlchemicalCartridgeRuptured": "Alchemical Cartridge Ruptured" }, + "Nindoru": { + "Meokdan": { + "BoneClub": { + "Label": "Manifest Bone Club", + "New": "New", + "Shattered": "Shattered", + "ShatteredLabel": "Shattered Bone Club" + } + } + }, "PaleStranger": { "TargetMurderedPaleStranger": "Target Murdered Pale Stranger", "TargetNeverKilled": "Target has Never Killed" @@ -803,7 +824,7 @@ "NonTrivialEncounter": "In a non-trivial encounter" }, "Bones": { - "MajorUpgrade": " When you roll a critical failure at a saving throw against a disease, poison or death effect, you get a failure instead.", + "MajorUpgrade": "When you roll a critical failure at a saving throw against a disease, poison or death effect, you get a failure instead.", "ModerateUpgrade": "When you roll a success at a saving throw against a disease, poison or death effect, you get a critical success instead." }, "Label": { @@ -1918,6 +1939,10 @@ "ScapularOfShields": { "CriticalImmunityLabel": "Activate Scapular of Shields to gain critical immunity.", "ResistAllLabel": "Activate Scapular of Shields to gain resistance to all damage." + }, + "Sparkler": { + "CriticalHitNote": "On a critical hit, you cause the target to become @UUID[Compendium.pf2e.conditionitems.Item.TkIyaNPgTZFBCCuh]{Dazzled} for 1 round.", + "StrikeLabel": "Sparkler" } }, "ExemplaryFinisher": { @@ -2028,6 +2053,7 @@ "success": "You can end your satiation to make the target @UUID[Compendium.pf2e.conditionitems.Item.fesd1n5eVhpCSS18]{Sickened 1}" } }, + "GhostScarfLit": "Ghost Scarf is shedding light", "Gnome": { "GrimInsight": { "SaveNote": "When you roll a success on a saving throw against a fear effect, you get a critical success instead, and the source of the fear effect is @UUID[Compendium.pf2e.conditionitems.Item.AJh5ex99aV6VTggg]{Off-Guard} to you until the end of your next turn." @@ -2136,7 +2162,7 @@ "Prompt": "Select a weapon to become trained in." }, "WitchWarden": { - "SaveNote": " If you roll a success on a saving throw against a curse or a spell cast by a witch or hag, you get a critical success instead." + "SaveNote": "If you roll a success on a saving throw against a curse or a spell cast by a witch or hag, you get a critical success instead." } }, "HuntPrey": { @@ -2152,6 +2178,9 @@ "MagmaSpikeCriticalSpecialization": "Instead of the normal critical specialization effect, the target takes [[/r 1d6[persistent,fire]]] damage; you gain a bonus on this persistent damage equal to your item bonus to attack rolls on unarmed attacks." } }, + "InCombat": { + "ToggleLabel": "In Combat" + }, "Inventor": { "Innovation": { "Armor": { @@ -2204,6 +2233,9 @@ }, "PursueALead": { "Label": "Investigating a designated subject with Pursue a Lead" + }, + "SharedStratagem": { + "Note": "The creature you hit is @UUID[Compendium.pf2e.conditionitems.Item.AJh5ex99aV6VTggg]{Off-Guard} to a designated ally on the next attack the ally makes against the creature before the start of your next turn." } }, "Kineticist": { @@ -2770,7 +2802,11 @@ "AutomaticPower": "Automatic Power Driver Dynamo", "Label": "Sterling Dynamo", "ManualPercussive": "Manual Percussive Striker Dynamo", - "ManualPower": "Manual Power Driver Dynamo" + "ManualPower": "Manual Power Driver Dynamo", + "StasianSmash": { + "CriticalFailureText": "If you critically fail your dynamo Strike, you take @Damage[1d12[electricity]] damage.", + "SuccessText": "On a success, the Strike deals an additional 1d12 electricity damage to the target, as well as @Damage[(ternary(gte(@actor.level,18),2,1))d4[electricity]] damage to up to two other foes within 10 feet as sparks leap across the gaps." + } }, "SubstituteRoll": { "Assurance": "Assurance", @@ -2929,6 +2965,9 @@ "WardingRune": { "Prompt": "Select a school of magic other than divination." }, + "Weapon": { + "Metal": "Using a metal weapon" + }, "WeaponInfusion": { "Melee": "Melee Infusion", "Ranged": "Ranged Infusion" diff --git a/Data/systems/pf2e/packs/abomination-vaults-bestiary/000005.ldb b/Data/systems/pf2e/packs/abomination-vaults-bestiary/000005.ldb index 4c1a53cb..51fc95c4 100644 Binary files a/Data/systems/pf2e/packs/abomination-vaults-bestiary/000005.ldb and b/Data/systems/pf2e/packs/abomination-vaults-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG b/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG index 9e9ee7cb..0c91ff6d 100644 --- a/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG +++ b/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.180050 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.185298 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.202851 ffff87fff0a0 Level-0 table #5: 1387633 bytes OK -2023/10/23-05:12:16.207585 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.208074 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:58.996887 ffff8929e0a0 Recovering log #3 +2023/11/12-06:19:59.004516 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:19:59.022273 ffff8929e0a0 Level-0 table #5: 1386718 bytes OK +2023/11/12-06:19:59.027242 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:19:59.027702 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG.old b/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG.old index bd9f71c6..f62a7873 100644 --- a/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/abomination-vaults-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.526917 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.523774 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/abomination-vaults-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/abomination-vaults-bestiary/MANIFEST-000004 index 2bb5c48f..e838cf8b 100644 Binary files a/Data/systems/pf2e/packs/abomination-vaults-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/abomination-vaults-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/action-macros/LOG b/Data/systems/pf2e/packs/action-macros/LOG index adea8ba2..448d16e5 100644 --- a/Data/systems/pf2e/packs/action-macros/LOG +++ b/Data/systems/pf2e/packs/action-macros/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.568109 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.568175 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.570280 ffff877ef0a0 Level-0 table #5: 7022 bytes OK -2023/10/23-05:12:18.575078 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.575103 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.469136 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.469200 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.471200 ffff7bfff0a0 Level-0 table #5: 7022 bytes OK +2023/11/12-06:20:01.475442 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.475466 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/action-macros/LOG.old b/Data/systems/pf2e/packs/action-macros/LOG.old index 3c605f0f..b2aba426 100644 --- a/Data/systems/pf2e/packs/action-macros/LOG.old +++ b/Data/systems/pf2e/packs/action-macros/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.527398 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.523774 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/actions/000005.ldb b/Data/systems/pf2e/packs/actions/000005.ldb index 743a79f1..1423cfaa 100644 Binary files a/Data/systems/pf2e/packs/actions/000005.ldb and b/Data/systems/pf2e/packs/actions/000005.ldb differ diff --git a/Data/systems/pf2e/packs/actions/LOG b/Data/systems/pf2e/packs/actions/LOG index cb1f2721..057fae9f 100644 --- a/Data/systems/pf2e/packs/actions/LOG +++ b/Data/systems/pf2e/packs/actions/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.908408 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.909312 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.914373 ffff86fdf0a0 Level-0 table #5: 276012 bytes OK -2023/10/23-05:12:17.918875 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.918987 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.797091 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.797962 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.803370 ffff8929e0a0 Level-0 table #5: 275735 bytes OK +2023/11/12-06:20:00.807855 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.807964 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/actions/LOG.old b/Data/systems/pf2e/packs/actions/LOG.old index 8e661d80..3cf9e931 100644 --- a/Data/systems/pf2e/packs/actions/LOG.old +++ b/Data/systems/pf2e/packs/actions/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.526703 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.524407 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/actions/MANIFEST-000004 b/Data/systems/pf2e/packs/actions/MANIFEST-000004 index 79231762..81518cdd 100644 Binary files a/Data/systems/pf2e/packs/actions/MANIFEST-000004 and b/Data/systems/pf2e/packs/actions/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/adventure-specific-actions/000005.ldb b/Data/systems/pf2e/packs/adventure-specific-actions/000005.ldb index 9fa5ca56..8db31a59 100644 Binary files a/Data/systems/pf2e/packs/adventure-specific-actions/000005.ldb and b/Data/systems/pf2e/packs/adventure-specific-actions/000005.ldb differ diff --git a/Data/systems/pf2e/packs/adventure-specific-actions/LOG b/Data/systems/pf2e/packs/adventure-specific-actions/LOG index eed7b004..86c9995d 100644 --- a/Data/systems/pf2e/packs/adventure-specific-actions/LOG +++ b/Data/systems/pf2e/packs/adventure-specific-actions/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.605722 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.606071 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.609602 ffff877ef0a0 Level-0 table #5: 113628 bytes OK -2023/10/23-05:12:18.614608 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.614665 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.505140 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.505479 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.508843 ffff7bfff0a0 Level-0 table #5: 113625 bytes OK +2023/11/12-06:20:01.513351 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.513409 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/adventure-specific-actions/LOG.old b/Data/systems/pf2e/packs/adventure-specific-actions/LOG.old index 1b9367eb..254036fe 100644 --- a/Data/systems/pf2e/packs/adventure-specific-actions/LOG.old +++ b/Data/systems/pf2e/packs/adventure-specific-actions/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.527388 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.524457 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/adventure-specific-actions/MANIFEST-000004 b/Data/systems/pf2e/packs/adventure-specific-actions/MANIFEST-000004 index bf3d9b12..ee9fa534 100644 Binary files a/Data/systems/pf2e/packs/adventure-specific-actions/MANIFEST-000004 and b/Data/systems/pf2e/packs/adventure-specific-actions/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/age-of-ashes-bestiary/000005.ldb b/Data/systems/pf2e/packs/age-of-ashes-bestiary/000005.ldb index 607e5f1a..7d262161 100644 Binary files a/Data/systems/pf2e/packs/age-of-ashes-bestiary/000005.ldb and b/Data/systems/pf2e/packs/age-of-ashes-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG b/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG index 86861467..bc249d5a 100644 --- a/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG +++ b/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.245119 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.250889 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.274738 ffff877ef0a0 Level-0 table #5: 1594481 bytes OK -2023/10/23-05:12:16.279601 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.280149 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.062296 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:19:59.074310 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:19:59.100453 ffff7bfff0a0 Level-0 table #5: 1588097 bytes OK +2023/11/12-06:19:59.105251 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:19:59.105743 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG.old b/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG.old index 1236c24c..d83d4ddf 100644 --- a/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/age-of-ashes-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.529648 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.526561 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/age-of-ashes-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/age-of-ashes-bestiary/MANIFEST-000004 index 7abc3f73..7c5f6437 100644 Binary files a/Data/systems/pf2e/packs/age-of-ashes-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/age-of-ashes-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/000005.ldb b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/000005.ldb index 44736f4b..c56d36f5 100644 Binary files a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/000005.ldb and b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG index 6601f795..5cf6dc65 100644 --- a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG +++ b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.297304 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.304050 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.329495 ffff86fdf0a0 Level-0 table #5: 1905989 bytes OK -2023/10/23-05:12:16.334637 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.335281 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.123307 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.132859 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.157795 ffff88a8e0a0 Level-0 table #5: 1906793 bytes OK +2023/11/12-06:19:59.162353 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.163077 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG.old b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG.old index a83f90bd..725cea7a 100644 --- a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.531805 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.526742 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/MANIFEST-000004 index 30c16e52..e946407e 100644 Binary files a/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/agents-of-edgewatch-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/ancestries/000005.ldb b/Data/systems/pf2e/packs/ancestries/000005.ldb index 018e7461..2235bfee 100644 Binary files a/Data/systems/pf2e/packs/ancestries/000005.ldb and b/Data/systems/pf2e/packs/ancestries/000005.ldb differ diff --git a/Data/systems/pf2e/packs/ancestries/LOG b/Data/systems/pf2e/packs/ancestries/LOG index f96d9250..21d6c8c0 100644 --- a/Data/systems/pf2e/packs/ancestries/LOG +++ b/Data/systems/pf2e/packs/ancestries/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.929146 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.929266 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.931528 ffff877ef0a0 Level-0 table #5: 28101 bytes OK -2023/10/23-05:12:17.936390 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.936424 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.811947 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.812072 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.814535 ffff89aae0a0 Level-0 table #5: 28085 bytes OK +2023/11/12-06:20:00.819287 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.819321 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/ancestries/LOG.old b/Data/systems/pf2e/packs/ancestries/LOG.old index 040de3e5..23dc5993 100644 --- a/Data/systems/pf2e/packs/ancestries/LOG.old +++ b/Data/systems/pf2e/packs/ancestries/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.529730 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.527501 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/ancestries/MANIFEST-000004 b/Data/systems/pf2e/packs/ancestries/MANIFEST-000004 index ced2ea8e..3c869d97 100644 Binary files a/Data/systems/pf2e/packs/ancestries/MANIFEST-000004 and b/Data/systems/pf2e/packs/ancestries/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/ancestryfeatures/000005.ldb b/Data/systems/pf2e/packs/ancestryfeatures/000005.ldb index 4396f93d..671c757e 100644 Binary files a/Data/systems/pf2e/packs/ancestryfeatures/000005.ldb and b/Data/systems/pf2e/packs/ancestryfeatures/000005.ldb differ diff --git a/Data/systems/pf2e/packs/ancestryfeatures/LOG b/Data/systems/pf2e/packs/ancestryfeatures/LOG index 97eb9a52..4d394409 100644 --- a/Data/systems/pf2e/packs/ancestryfeatures/LOG +++ b/Data/systems/pf2e/packs/ancestryfeatures/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.938350 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.938454 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.941029 ffff86fdf0a0 Level-0 table #5: 23680 bytes OK -2023/10/23-05:12:17.946626 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.946659 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.821345 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.821445 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.823814 ffff8929e0a0 Level-0 table #5: 23661 bytes OK +2023/11/12-06:20:00.828555 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.828585 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/ancestryfeatures/LOG.old b/Data/systems/pf2e/packs/ancestryfeatures/LOG.old index 67c8e503..d7c7adef 100644 --- a/Data/systems/pf2e/packs/ancestryfeatures/LOG.old +++ b/Data/systems/pf2e/packs/ancestryfeatures/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.530243 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.527369 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/ancestryfeatures/MANIFEST-000004 b/Data/systems/pf2e/packs/ancestryfeatures/MANIFEST-000004 index c3109b3e..05bf3efe 100644 Binary files a/Data/systems/pf2e/packs/ancestryfeatures/MANIFEST-000004 and b/Data/systems/pf2e/packs/ancestryfeatures/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/backgrounds/000005.ldb b/Data/systems/pf2e/packs/backgrounds/000005.ldb index 9f0f221c..8101ab05 100644 Binary files a/Data/systems/pf2e/packs/backgrounds/000005.ldb and b/Data/systems/pf2e/packs/backgrounds/000005.ldb differ diff --git a/Data/systems/pf2e/packs/backgrounds/LOG b/Data/systems/pf2e/packs/backgrounds/LOG index 8d38d84d..e5287af5 100644 --- a/Data/systems/pf2e/packs/backgrounds/LOG +++ b/Data/systems/pf2e/packs/backgrounds/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.948605 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.949766 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.958359 ffff877ef0a0 Level-0 table #5: 370183 bytes OK -2023/10/23-05:12:17.963285 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.963428 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.832219 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.833400 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.840048 ffff89aae0a0 Level-0 table #5: 369912 bytes OK +2023/11/12-06:20:00.844286 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.844427 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/backgrounds/LOG.old b/Data/systems/pf2e/packs/backgrounds/LOG.old index bf479c6a..c66608d2 100644 --- a/Data/systems/pf2e/packs/backgrounds/LOG.old +++ b/Data/systems/pf2e/packs/backgrounds/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.533383 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.529457 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/backgrounds/MANIFEST-000004 b/Data/systems/pf2e/packs/backgrounds/MANIFEST-000004 index 74d52b73..13e8f4dc 100644 Binary files a/Data/systems/pf2e/packs/backgrounds/MANIFEST-000004 and b/Data/systems/pf2e/packs/backgrounds/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/000005.ldb b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/000005.ldb index 43c494d3..3583cccd 100644 Binary files a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/000005.ldb and b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/000005.ldb differ diff --git a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG index c48b66d5..22b7daba 100644 --- a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG +++ b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.583790 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.583875 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.586142 ffff877ef0a0 Level-0 table #5: 11536 bytes OK -2023/10/23-05:12:18.590870 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.590899 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.484277 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.484363 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.486430 ffff7bfff0a0 Level-0 table #5: 11525 bytes OK +2023/11/12-06:20:01.490687 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.490714 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG.old b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG.old index f3de4c9c..24f93620 100644 --- a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG.old +++ b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.532807 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.529802 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/MANIFEST-000004 b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/MANIFEST-000004 index 00760aec..2874b77e 100644 Binary files a/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/MANIFEST-000004 and b/Data/systems/pf2e/packs/bestiary-ability-glossary-srd/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/bestiary-effects/000005.ldb b/Data/systems/pf2e/packs/bestiary-effects/000005.ldb index 624d8e0a..37e0e27e 100644 Binary files a/Data/systems/pf2e/packs/bestiary-effects/000005.ldb and b/Data/systems/pf2e/packs/bestiary-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/bestiary-effects/LOG b/Data/systems/pf2e/packs/bestiary-effects/LOG index eebaee9d..9a5d6535 100644 --- a/Data/systems/pf2e/packs/bestiary-effects/LOG +++ b/Data/systems/pf2e/packs/bestiary-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.148726 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.149287 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.153039 ffff877ef0a0 Level-0 table #5: 130289 bytes OK -2023/10/23-05:12:18.157589 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.157658 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.044894 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.045448 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.049175 ffff7bfff0a0 Level-0 table #5: 131341 bytes OK +2023/11/12-06:20:01.053444 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.053528 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/bestiary-effects/LOG.old b/Data/systems/pf2e/packs/bestiary-effects/LOG.old index 587e5f91..b83d1419 100644 --- a/Data/systems/pf2e/packs/bestiary-effects/LOG.old +++ b/Data/systems/pf2e/packs/bestiary-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.533911 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.530154 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/bestiary-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/bestiary-effects/MANIFEST-000004 index e084172e..233d109f 100644 Binary files a/Data/systems/pf2e/packs/bestiary-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/bestiary-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/000005.ldb b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/000005.ldb index 8f9988a8..49a5bedc 100644 Binary files a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/000005.ldb and b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG index 0161dee0..6a3794a8 100644 --- a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG +++ b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.592493 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:18.593176 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:18.597590 ffff87fff0a0 Level-0 table #5: 188002 bytes OK -2023/10/23-05:12:18.602887 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:18.602974 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:01.492494 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:01.493170 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:01.497283 ffff89aae0a0 Level-0 table #5: 187922 bytes OK +2023/11/12-06:20:01.502200 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:01.502289 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG.old b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG.old index 756889d5..cfb0a4d1 100644 --- a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG.old +++ b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.565702 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.530436 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/MANIFEST-000004 b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/MANIFEST-000004 index a90218ac..a02f94d8 100644 Binary files a/Data/systems/pf2e/packs/bestiary-family-ability-glossary/MANIFEST-000004 and b/Data/systems/pf2e/packs/bestiary-family-ability-glossary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/blog-bestiary/000005.ldb b/Data/systems/pf2e/packs/blog-bestiary/000005.ldb index 5f28e567..fef03bdf 100644 Binary files a/Data/systems/pf2e/packs/blog-bestiary/000005.ldb and b/Data/systems/pf2e/packs/blog-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/blog-bestiary/LOG b/Data/systems/pf2e/packs/blog-bestiary/LOG index 009f1928..a977e0f4 100644 --- a/Data/systems/pf2e/packs/blog-bestiary/LOG +++ b/Data/systems/pf2e/packs/blog-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.452731 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.453591 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.458583 ffff86fdf0a0 Level-0 table #5: 221955 bytes OK -2023/10/23-05:12:16.463475 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.463582 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.281172 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.281966 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.286725 ffff88a8e0a0 Level-0 table #5: 221835 bytes OK +2023/11/12-06:19:59.291563 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.291658 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/blog-bestiary/LOG.old b/Data/systems/pf2e/packs/blog-bestiary/LOG.old index 314608b6..cac9e8c1 100644 --- a/Data/systems/pf2e/packs/blog-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/blog-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.564320 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.532622 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/blog-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/blog-bestiary/MANIFEST-000004 index 1c23dd13..9c823e4f 100644 Binary files a/Data/systems/pf2e/packs/blog-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/blog-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/blood-lords-bestiary/000005.ldb b/Data/systems/pf2e/packs/blood-lords-bestiary/000005.ldb index af3dfce6..2813d1f0 100644 Binary files a/Data/systems/pf2e/packs/blood-lords-bestiary/000005.ldb and b/Data/systems/pf2e/packs/blood-lords-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/blood-lords-bestiary/LOG b/Data/systems/pf2e/packs/blood-lords-bestiary/LOG index 2b4ea079..e0f03291 100644 --- a/Data/systems/pf2e/packs/blood-lords-bestiary/LOG +++ b/Data/systems/pf2e/packs/blood-lords-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.391312 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.398452 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.426394 ffff877ef0a0 Level-0 table #5: 2088469 bytes OK -2023/10/23-05:12:16.431334 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.431971 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.218639 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:19:59.227379 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:19:59.255210 ffff7bfff0a0 Level-0 table #5: 2084593 bytes OK +2023/11/12-06:19:59.259787 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:19:59.260526 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/blood-lords-bestiary/LOG.old b/Data/systems/pf2e/packs/blood-lords-bestiary/LOG.old index 8b69f523..85a453f8 100644 --- a/Data/systems/pf2e/packs/blood-lords-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/blood-lords-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.566684 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.532888 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/blood-lords-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/blood-lords-bestiary/MANIFEST-000004 index 9ea41a7e..0e975a9f 100644 Binary files a/Data/systems/pf2e/packs/blood-lords-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/blood-lords-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/000005.ldb b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/000005.ldb index 2c986e08..23e2413f 100644 Binary files a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/000005.ldb and b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG index 2a7a28d6..fe342c4e 100644 --- a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG +++ b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.355499 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.359063 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.372565 ffff87fff0a0 Level-0 table #5: 1025867 bytes OK -2023/10/23-05:12:16.377917 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.378250 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.183612 ffff8929e0a0 Recovering log #3 +2023/11/12-06:19:59.187879 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:19:59.200855 ffff8929e0a0 Level-0 table #5: 1022119 bytes OK +2023/11/12-06:19:59.205572 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:19:59.205844 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG.old b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG.old index 55296493..155b6adb 100644 --- a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.568358 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.533355 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/MANIFEST-000004 index 8749b91f..b1ed4fd5 100644 Binary files a/Data/systems/pf2e/packs/book-of-the-dead-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/book-of-the-dead-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/boons-and-curses/000005.ldb b/Data/systems/pf2e/packs/boons-and-curses/000005.ldb index 1f334e22..a27872f3 100644 Binary files a/Data/systems/pf2e/packs/boons-and-curses/000005.ldb and b/Data/systems/pf2e/packs/boons-and-curses/000005.ldb differ diff --git a/Data/systems/pf2e/packs/boons-and-curses/LOG b/Data/systems/pf2e/packs/boons-and-curses/LOG index c6af7046..58db19f3 100644 --- a/Data/systems/pf2e/packs/boons-and-curses/LOG +++ b/Data/systems/pf2e/packs/boons-and-curses/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.160492 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.160955 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.164310 ffff86fdf0a0 Level-0 table #5: 110817 bytes OK -2023/10/23-05:12:18.168646 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.168708 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.056528 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.057182 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.060299 ffff8929e0a0 Level-0 table #5: 110000 bytes OK +2023/11/12-06:20:01.064548 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.064614 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/boons-and-curses/LOG.old b/Data/systems/pf2e/packs/boons-and-curses/LOG.old index 4441cf61..4293c1da 100644 --- a/Data/systems/pf2e/packs/boons-and-curses/LOG.old +++ b/Data/systems/pf2e/packs/boons-and-curses/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.568667 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.533009 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/boons-and-curses/MANIFEST-000004 b/Data/systems/pf2e/packs/boons-and-curses/MANIFEST-000004 index b80b5952..1d705816 100644 Binary files a/Data/systems/pf2e/packs/boons-and-curses/MANIFEST-000004 and b/Data/systems/pf2e/packs/boons-and-curses/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/campaign-effects/000005.ldb b/Data/systems/pf2e/packs/campaign-effects/000005.ldb index d6cb9a8f..9ae87678 100644 Binary files a/Data/systems/pf2e/packs/campaign-effects/000005.ldb and b/Data/systems/pf2e/packs/campaign-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/campaign-effects/LOG b/Data/systems/pf2e/packs/campaign-effects/LOG index cc1bd2b2..5f591603 100644 --- a/Data/systems/pf2e/packs/campaign-effects/LOG +++ b/Data/systems/pf2e/packs/campaign-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.179768 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.179855 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.182067 ffff86fdf0a0 Level-0 table #5: 20207 bytes OK -2023/10/23-05:12:18.186241 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.186274 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.075828 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.075912 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.078077 ffff8929e0a0 Level-0 table #5: 20198 bytes OK +2023/11/12-06:20:01.082505 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.082532 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/campaign-effects/LOG.old b/Data/systems/pf2e/packs/campaign-effects/LOG.old index c21c92d0..1727d026 100644 --- a/Data/systems/pf2e/packs/campaign-effects/LOG.old +++ b/Data/systems/pf2e/packs/campaign-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.591426 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.558116 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/campaign-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/campaign-effects/MANIFEST-000004 index 082737fc..1b394780 100644 Binary files a/Data/systems/pf2e/packs/campaign-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/campaign-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/classes/000005.ldb b/Data/systems/pf2e/packs/classes/000005.ldb index ad488d02..ba3813d1 100644 Binary files a/Data/systems/pf2e/packs/classes/000005.ldb and b/Data/systems/pf2e/packs/classes/000005.ldb differ diff --git a/Data/systems/pf2e/packs/classes/LOG b/Data/systems/pf2e/packs/classes/LOG index b78ce1bb..c84fad1f 100644 --- a/Data/systems/pf2e/packs/classes/LOG +++ b/Data/systems/pf2e/packs/classes/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.967974 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.968173 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.970927 ffff86fdf0a0 Level-0 table #5: 61863 bytes OK -2023/10/23-05:12:17.975372 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.975414 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.850042 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.850228 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.853056 ffff8929e0a0 Level-0 table #5: 61867 bytes OK +2023/11/12-06:20:00.857556 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.857597 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/classes/LOG.old b/Data/systems/pf2e/packs/classes/LOG.old index cb5936b0..fdf26f96 100644 --- a/Data/systems/pf2e/packs/classes/LOG.old +++ b/Data/systems/pf2e/packs/classes/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.571536 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.557921 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/classes/MANIFEST-000004 b/Data/systems/pf2e/packs/classes/MANIFEST-000004 index ca697d53..2a54e2c7 100644 Binary files a/Data/systems/pf2e/packs/classes/MANIFEST-000004 and b/Data/systems/pf2e/packs/classes/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/classfeatures/000005.ldb b/Data/systems/pf2e/packs/classfeatures/000005.ldb index a97c8476..a8876588 100644 Binary files a/Data/systems/pf2e/packs/classfeatures/000005.ldb and b/Data/systems/pf2e/packs/classfeatures/000005.ldb differ diff --git a/Data/systems/pf2e/packs/classfeatures/LOG b/Data/systems/pf2e/packs/classfeatures/LOG index 34faf1b8..906b91b7 100644 --- a/Data/systems/pf2e/packs/classfeatures/LOG +++ b/Data/systems/pf2e/packs/classfeatures/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.977279 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.979045 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.987359 ffff877ef0a0 Level-0 table #5: 548690 bytes OK -2023/10/23-05:12:17.992144 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.992345 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.859583 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.861381 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.870098 ffff7bfff0a0 Level-0 table #5: 546817 bytes OK +2023/11/12-06:20:00.874883 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.875128 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/classfeatures/LOG.old b/Data/systems/pf2e/packs/classfeatures/LOG.old index 984df50a..5dc0e969 100644 --- a/Data/systems/pf2e/packs/classfeatures/LOG.old +++ b/Data/systems/pf2e/packs/classfeatures/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.591615 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.558037 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/classfeatures/MANIFEST-000004 b/Data/systems/pf2e/packs/classfeatures/MANIFEST-000004 index 613c0198..ac31e916 100644 Binary files a/Data/systems/pf2e/packs/classfeatures/MANIFEST-000004 and b/Data/systems/pf2e/packs/classfeatures/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/conditions/000005.ldb b/Data/systems/pf2e/packs/conditions/000005.ldb index c377a8b6..3784caf3 100644 Binary files a/Data/systems/pf2e/packs/conditions/000005.ldb and b/Data/systems/pf2e/packs/conditions/000005.ldb differ diff --git a/Data/systems/pf2e/packs/conditions/LOG b/Data/systems/pf2e/packs/conditions/LOG index 19651f18..fe7f9297 100644 --- a/Data/systems/pf2e/packs/conditions/LOG +++ b/Data/systems/pf2e/packs/conditions/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.171228 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.171343 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.173652 ffff877ef0a0 Level-0 table #5: 26788 bytes OK -2023/10/23-05:12:18.178009 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.178042 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.067377 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.067491 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.069731 ffff7bfff0a0 Level-0 table #5: 26776 bytes OK +2023/11/12-06:20:01.073911 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.073944 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/conditions/LOG.old b/Data/systems/pf2e/packs/conditions/LOG.old index b6f15089..838eb90b 100644 --- a/Data/systems/pf2e/packs/conditions/LOG.old +++ b/Data/systems/pf2e/packs/conditions/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.590283 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.559198 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/conditions/MANIFEST-000004 b/Data/systems/pf2e/packs/conditions/MANIFEST-000004 index fbf3e784..51df2d38 100644 Binary files a/Data/systems/pf2e/packs/conditions/MANIFEST-000004 and b/Data/systems/pf2e/packs/conditions/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/criticaldeck/LOG b/Data/systems/pf2e/packs/criticaldeck/LOG index 99d97c7f..8ab6f7e1 100644 --- a/Data/systems/pf2e/packs/criticaldeck/LOG +++ b/Data/systems/pf2e/packs/criticaldeck/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.515276 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.515543 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.518226 ffff877ef0a0 Level-0 table #5: 59661 bytes OK -2023/10/23-05:12:18.522548 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.522593 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.415503 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.415771 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.418546 ffff7bfff0a0 Level-0 table #5: 59661 bytes OK +2023/11/12-06:20:01.423302 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.423350 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/criticaldeck/LOG.old b/Data/systems/pf2e/packs/criticaldeck/LOG.old index f6515131..45bae00c 100644 --- a/Data/systems/pf2e/packs/criticaldeck/LOG.old +++ b/Data/systems/pf2e/packs/criticaldeck/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.593081 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.560656 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/000005.ldb b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/000005.ldb index 207bd22f..cd11f383 100644 Binary files a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/000005.ldb and b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG index ac62d951..065b9835 100644 --- a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG +++ b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.775800 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.776709 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.781975 ffff877ef0a0 Level-0 table #5: 261283 bytes OK -2023/10/23-05:12:17.786690 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.786826 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.690436 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.691390 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.696663 ffff89aae0a0 Level-0 table #5: 261284 bytes OK +2023/11/12-06:20:00.701730 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.701834 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG.old b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG.old index 7a26f61b..76d85e74 100644 --- a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.594411 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.560938 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/MANIFEST-000004 index c67764ad..348bbdfc 100644 Binary files a/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/crown-of-the-kobold-king-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/deities/000005.ldb b/Data/systems/pf2e/packs/deities/000005.ldb index 0cab912e..cb9e149d 100644 Binary files a/Data/systems/pf2e/packs/deities/000005.ldb and b/Data/systems/pf2e/packs/deities/000005.ldb differ diff --git a/Data/systems/pf2e/packs/deities/LOG b/Data/systems/pf2e/packs/deities/LOG index 7d98cc88..d2f7922f 100644 --- a/Data/systems/pf2e/packs/deities/LOG +++ b/Data/systems/pf2e/packs/deities/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.390209 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.391163 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.397723 ffff877ef0a0 Level-0 table #5: 361655 bytes OK -2023/10/23-05:12:18.402442 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.402580 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.287310 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.288242 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.294707 ffff7bfff0a0 Level-0 table #5: 361571 bytes OK +2023/11/12-06:20:01.300084 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.300201 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/deities/LOG.old b/Data/systems/pf2e/packs/deities/LOG.old index c4b68f6b..d572d378 100644 --- a/Data/systems/pf2e/packs/deities/LOG.old +++ b/Data/systems/pf2e/packs/deities/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.594593 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.560990 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/deities/MANIFEST-000004 b/Data/systems/pf2e/packs/deities/MANIFEST-000004 index 014352aa..d070ca2b 100644 Binary files a/Data/systems/pf2e/packs/deities/MANIFEST-000004 and b/Data/systems/pf2e/packs/deities/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/equipment-effects/000005.ldb b/Data/systems/pf2e/packs/equipment-effects/000005.ldb index 3311ab77..83981d85 100644 Binary files a/Data/systems/pf2e/packs/equipment-effects/000005.ldb and b/Data/systems/pf2e/packs/equipment-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/equipment-effects/LOG b/Data/systems/pf2e/packs/equipment-effects/LOG index b615d835..c179cbce 100644 --- a/Data/systems/pf2e/packs/equipment-effects/LOG +++ b/Data/systems/pf2e/packs/equipment-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.187912 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.189010 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.194225 ffff877ef0a0 Level-0 table #5: 269317 bytes OK -2023/10/23-05:12:18.198673 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.198826 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.084303 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.085393 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.090539 ffff7bfff0a0 Level-0 table #5: 285645 bytes OK +2023/11/12-06:20:01.094922 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.095067 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/equipment-effects/LOG.old b/Data/systems/pf2e/packs/equipment-effects/LOG.old index 864fb0c5..800cdd63 100644 --- a/Data/systems/pf2e/packs/equipment-effects/LOG.old +++ b/Data/systems/pf2e/packs/equipment-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.596539 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.563844 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/equipment-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/equipment-effects/MANIFEST-000004 index e3b81e3a..fb5f939c 100644 Binary files a/Data/systems/pf2e/packs/equipment-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/equipment-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/equipment/000005.ldb b/Data/systems/pf2e/packs/equipment/000005.ldb index b7765ae1..083dfb3e 100644 Binary files a/Data/systems/pf2e/packs/equipment/000005.ldb and b/Data/systems/pf2e/packs/equipment/000005.ldb differ diff --git a/Data/systems/pf2e/packs/equipment/LOG b/Data/systems/pf2e/packs/equipment/LOG index de13e228..066153bc 100644 --- a/Data/systems/pf2e/packs/equipment/LOG +++ b/Data/systems/pf2e/packs/equipment/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.265008 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.281652 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.352015 ffff86fdf0a0 Level-0 table #5: 4822636 bytes OK -2023/10/23-05:12:18.357882 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.359850 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.159752 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.177794 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.246994 ffff8929e0a0 Level-0 table #5: 4845215 bytes OK +2023/11/12-06:20:01.252980 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.254175 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/equipment/LOG.old b/Data/systems/pf2e/packs/equipment/LOG.old index 5681ea2e..a97f2708 100644 --- a/Data/systems/pf2e/packs/equipment/LOG.old +++ b/Data/systems/pf2e/packs/equipment/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.594724 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.562827 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/equipment/MANIFEST-000004 b/Data/systems/pf2e/packs/equipment/MANIFEST-000004 index fbb0ac16..b4050dd1 100644 Binary files a/Data/systems/pf2e/packs/equipment/MANIFEST-000004 and b/Data/systems/pf2e/packs/equipment/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/extinction-curse-bestiary/000005.ldb b/Data/systems/pf2e/packs/extinction-curse-bestiary/000005.ldb index a0cfdafb..2bc8f00c 100644 Binary files a/Data/systems/pf2e/packs/extinction-curse-bestiary/000005.ldb and b/Data/systems/pf2e/packs/extinction-curse-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG b/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG index 2dba1676..cc7d0442 100644 --- a/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG +++ b/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.467911 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.474456 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.498399 ffff877ef0a0 Level-0 table #5: 1837588 bytes OK -2023/10/23-05:12:16.503025 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.503683 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.296977 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.304099 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.328109 ffff88a8e0a0 Level-0 table #5: 1832057 bytes OK +2023/11/12-06:19:59.333889 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.334454 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG.old b/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG.old index 6effdac1..553c70c6 100644 --- a/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/extinction-curse-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.597494 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.564168 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/extinction-curse-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/extinction-curse-bestiary/MANIFEST-000004 index d3e9dfdf..5a21b492 100644 Binary files a/Data/systems/pf2e/packs/extinction-curse-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/extinction-curse-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/fall-of-plaguestone/000005.ldb b/Data/systems/pf2e/packs/fall-of-plaguestone/000005.ldb index 46e96e78..a4717c59 100644 Binary files a/Data/systems/pf2e/packs/fall-of-plaguestone/000005.ldb and b/Data/systems/pf2e/packs/fall-of-plaguestone/000005.ldb differ diff --git a/Data/systems/pf2e/packs/fall-of-plaguestone/LOG b/Data/systems/pf2e/packs/fall-of-plaguestone/LOG index 75868466..66d2029f 100644 --- a/Data/systems/pf2e/packs/fall-of-plaguestone/LOG +++ b/Data/systems/pf2e/packs/fall-of-plaguestone/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.525236 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:16.525676 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:16.529281 ffff867cf0a0 Level-0 table #5: 109654 bytes OK -2023/10/23-05:12:16.533525 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:16.533589 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:19:59.353133 ffff89aae0a0 Recovering log #3 +2023/11/12-06:19:59.353558 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:19:59.357126 ffff89aae0a0 Level-0 table #5: 109478 bytes OK +2023/11/12-06:19:59.362689 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:19:59.362756 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/fall-of-plaguestone/LOG.old b/Data/systems/pf2e/packs/fall-of-plaguestone/LOG.old index 3d9366a6..e7c41971 100644 --- a/Data/systems/pf2e/packs/fall-of-plaguestone/LOG.old +++ b/Data/systems/pf2e/packs/fall-of-plaguestone/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.597412 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.564477 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/fall-of-plaguestone/MANIFEST-000004 b/Data/systems/pf2e/packs/fall-of-plaguestone/MANIFEST-000004 index a4273685..23370431 100644 Binary files a/Data/systems/pf2e/packs/fall-of-plaguestone/MANIFEST-000004 and b/Data/systems/pf2e/packs/fall-of-plaguestone/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/familiar-abilities/000005.ldb b/Data/systems/pf2e/packs/familiar-abilities/000005.ldb index 5910c42c..3f0b004f 100644 Binary files a/Data/systems/pf2e/packs/familiar-abilities/000005.ldb and b/Data/systems/pf2e/packs/familiar-abilities/000005.ldb differ diff --git a/Data/systems/pf2e/packs/familiar-abilities/LOG b/Data/systems/pf2e/packs/familiar-abilities/LOG index 2c0b50c3..4316abfb 100644 --- a/Data/systems/pf2e/packs/familiar-abilities/LOG +++ b/Data/systems/pf2e/packs/familiar-abilities/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.000463 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.000613 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.002981 ffff86fdf0a0 Level-0 table #5: 29776 bytes OK -2023/10/23-05:12:18.007693 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.007733 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.882070 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.882209 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.884808 ffff8929e0a0 Level-0 table #5: 29755 bytes OK +2023/11/12-06:20:00.889533 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.889567 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/familiar-abilities/LOG.old b/Data/systems/pf2e/packs/familiar-abilities/LOG.old index 3563df08..e51f8091 100644 --- a/Data/systems/pf2e/packs/familiar-abilities/LOG.old +++ b/Data/systems/pf2e/packs/familiar-abilities/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.597661 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.566098 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/familiar-abilities/MANIFEST-000004 b/Data/systems/pf2e/packs/familiar-abilities/MANIFEST-000004 index b7e759d3..e02526cb 100644 Binary files a/Data/systems/pf2e/packs/familiar-abilities/MANIFEST-000004 and b/Data/systems/pf2e/packs/familiar-abilities/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/feat-effects/000005.ldb b/Data/systems/pf2e/packs/feat-effects/000005.ldb index 0d163111..4fa103fc 100644 Binary files a/Data/systems/pf2e/packs/feat-effects/000005.ldb and b/Data/systems/pf2e/packs/feat-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/feat-effects/LOG b/Data/systems/pf2e/packs/feat-effects/LOG index 6e918d8d..ba992e49 100644 --- a/Data/systems/pf2e/packs/feat-effects/LOG +++ b/Data/systems/pf2e/packs/feat-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.218132 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.219062 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.225034 ffff877ef0a0 Level-0 table #5: 271193 bytes OK -2023/10/23-05:12:18.229958 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.230069 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.114072 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.115027 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.120278 ffff7bfff0a0 Level-0 table #5: 272562 bytes OK +2023/11/12-06:20:01.125125 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.125239 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/feat-effects/LOG.old b/Data/systems/pf2e/packs/feat-effects/LOG.old index 07d3c191..cb358e3e 100644 --- a/Data/systems/pf2e/packs/feat-effects/LOG.old +++ b/Data/systems/pf2e/packs/feat-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.600341 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.566540 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/feat-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/feat-effects/MANIFEST-000004 index 390cb8bd..69e28c7f 100644 Binary files a/Data/systems/pf2e/packs/feat-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/feat-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/feats/000005.ldb b/Data/systems/pf2e/packs/feats/000005.ldb index 3987072c..f859d019 100644 Binary files a/Data/systems/pf2e/packs/feats/000005.ldb and b/Data/systems/pf2e/packs/feats/000005.ldb differ diff --git a/Data/systems/pf2e/packs/feats/LOG b/Data/systems/pf2e/packs/feats/LOG index bdeebceb..246bf249 100644 --- a/Data/systems/pf2e/packs/feats/LOG +++ b/Data/systems/pf2e/packs/feats/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.009750 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.019638 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.062283 ffff877ef0a0 Level-0 table #5: 2834112 bytes OK -2023/10/23-05:12:18.067236 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.068161 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.891573 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.901291 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.940798 ffff7bfff0a0 Level-0 table #5: 2837814 bytes OK +2023/11/12-06:20:00.945744 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.946433 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/feats/LOG.old b/Data/systems/pf2e/packs/feats/LOG.old index 3b137b8c..10bdc421 100644 --- a/Data/systems/pf2e/packs/feats/LOG.old +++ b/Data/systems/pf2e/packs/feats/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.600675 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.567005 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/feats/MANIFEST-000004 b/Data/systems/pf2e/packs/feats/MANIFEST-000004 index 43257b3f..72cbda90 100644 Binary files a/Data/systems/pf2e/packs/feats/MANIFEST-000004 and b/Data/systems/pf2e/packs/feats/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/000005.ldb b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/000005.ldb index 6638b395..d2f5f7fa 100644 Binary files a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/000005.ldb and b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG index 2b94088c..0c3dc373 100644 --- a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG +++ b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.536756 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.543073 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.566300 ffff877ef0a0 Level-0 table #5: 1768356 bytes OK -2023/10/23-05:12:16.571964 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.572535 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.398652 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.427861 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.467292 ffff88a8e0a0 Level-0 table #5: 1781093 bytes OK +2023/11/12-06:19:59.472471 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.473101 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG.old b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG.old index c42c16e4..2932eb43 100644 --- a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.601622 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.568126 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/MANIFEST-000004 index 56115e16..262ca0d9 100644 Binary files a/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/fists-of-the-ruby-phoenix-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/gatewalkers-bestiary/000005.ldb b/Data/systems/pf2e/packs/gatewalkers-bestiary/000005.ldb index acbc8a66..0c9c8740 100644 Binary files a/Data/systems/pf2e/packs/gatewalkers-bestiary/000005.ldb and b/Data/systems/pf2e/packs/gatewalkers-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG b/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG index ef6397f9..b4037c45 100644 --- a/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG +++ b/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.602497 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.604522 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.613538 ffff87fff0a0 Level-0 table #5: 603814 bytes OK -2023/10/23-05:12:16.618136 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.618346 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.505410 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.507423 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.516495 ffff88a8e0a0 Level-0 table #5: 603400 bytes OK +2023/11/12-06:19:59.521580 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.521800 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG.old b/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG.old index f7145278..17135509 100644 --- a/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/gatewalkers-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.601589 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.569012 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/gatewalkers-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/gatewalkers-bestiary/MANIFEST-000004 index e0c31698..1ad1701a 100644 Binary files a/Data/systems/pf2e/packs/gatewalkers-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/gatewalkers-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/gmg-srd/LOG b/Data/systems/pf2e/packs/gmg-srd/LOG index 7fba4997..e5a55949 100644 --- a/Data/systems/pf2e/packs/gmg-srd/LOG +++ b/Data/systems/pf2e/packs/gmg-srd/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.558816 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:18.558923 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:18.561492 ffff87fff0a0 Level-0 table #5: 24058 bytes OK -2023/10/23-05:12:18.566203 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:18.566233 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:01.459351 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:01.459457 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:01.461806 ffff89aae0a0 Level-0 table #5: 24058 bytes OK +2023/11/12-06:20:01.466993 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:01.467025 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/gmg-srd/LOG.old b/Data/systems/pf2e/packs/gmg-srd/LOG.old index 19cb6f6c..d9f106d2 100644 --- a/Data/systems/pf2e/packs/gmg-srd/LOG.old +++ b/Data/systems/pf2e/packs/gmg-srd/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.608346 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.569742 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/hazards/000005.ldb b/Data/systems/pf2e/packs/hazards/000005.ldb index 08ce752b..ba60f7d4 100644 Binary files a/Data/systems/pf2e/packs/hazards/000005.ldb and b/Data/systems/pf2e/packs/hazards/000005.ldb differ diff --git a/Data/systems/pf2e/packs/hazards/LOG b/Data/systems/pf2e/packs/hazards/LOG index d7f755af..9aff88fe 100644 --- a/Data/systems/pf2e/packs/hazards/LOG +++ b/Data/systems/pf2e/packs/hazards/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.590808 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.591091 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.594673 ffff86fdf0a0 Level-0 table #5: 78951 bytes OK -2023/10/23-05:12:16.599697 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.599750 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.491881 ffff89aae0a0 Recovering log #3 +2023/11/12-06:19:59.492158 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:19:59.497578 ffff89aae0a0 Level-0 table #5: 78640 bytes OK +2023/11/12-06:19:59.502202 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:19:59.502251 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/hazards/LOG.old b/Data/systems/pf2e/packs/hazards/LOG.old index e60fbc31..e97acd0a 100644 --- a/Data/systems/pf2e/packs/hazards/LOG.old +++ b/Data/systems/pf2e/packs/hazards/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.667305 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.569991 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/hazards/MANIFEST-000004 b/Data/systems/pf2e/packs/hazards/MANIFEST-000004 index 4b422892..3640fcf3 100644 Binary files a/Data/systems/pf2e/packs/hazards/MANIFEST-000004 and b/Data/systems/pf2e/packs/hazards/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/heritages/000005.ldb b/Data/systems/pf2e/packs/heritages/000005.ldb index ff83d69e..e48b57e2 100644 Binary files a/Data/systems/pf2e/packs/heritages/000005.ldb and b/Data/systems/pf2e/packs/heritages/000005.ldb differ diff --git a/Data/systems/pf2e/packs/heritages/LOG b/Data/systems/pf2e/packs/heritages/LOG index 13f20696..a0b40526 100644 --- a/Data/systems/pf2e/packs/heritages/LOG +++ b/Data/systems/pf2e/packs/heritages/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.090857 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.091348 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.095257 ffff877ef0a0 Level-0 table #5: 141010 bytes OK -2023/10/23-05:12:18.099914 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.099986 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.977174 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.977627 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.981782 ffff7bfff0a0 Level-0 table #5: 140912 bytes OK +2023/11/12-06:20:00.986677 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.986741 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/heritages/LOG.old b/Data/systems/pf2e/packs/heritages/LOG.old index 5cc833d0..19d1bb17 100644 --- a/Data/systems/pf2e/packs/heritages/LOG.old +++ b/Data/systems/pf2e/packs/heritages/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.668053 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.571381 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/heritages/MANIFEST-000004 b/Data/systems/pf2e/packs/heritages/MANIFEST-000004 index b2aa2322..831180d2 100644 Binary files a/Data/systems/pf2e/packs/heritages/MANIFEST-000004 and b/Data/systems/pf2e/packs/heritages/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/highhelm-bestiary/000005.ldb b/Data/systems/pf2e/packs/highhelm-bestiary/000005.ldb index 88b70bcf..fee263e3 100644 Binary files a/Data/systems/pf2e/packs/highhelm-bestiary/000005.ldb and b/Data/systems/pf2e/packs/highhelm-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/highhelm-bestiary/LOG b/Data/systems/pf2e/packs/highhelm-bestiary/LOG index 43bae02a..d98cc906 100644 --- a/Data/systems/pf2e/packs/highhelm-bestiary/LOG +++ b/Data/systems/pf2e/packs/highhelm-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.660702 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.660904 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.663622 ffff87fff0a0 Level-0 table #5: 41036 bytes OK -2023/10/23-05:12:16.668018 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.668055 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.559324 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.559466 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.562187 ffff88a8e0a0 Level-0 table #5: 40978 bytes OK +2023/11/12-06:19:59.567040 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.567076 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/highhelm-bestiary/LOG.old b/Data/systems/pf2e/packs/highhelm-bestiary/LOG.old index 622082cc..34f1c6c4 100644 --- a/Data/systems/pf2e/packs/highhelm-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/highhelm-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.668165 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.572018 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/highhelm-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/highhelm-bestiary/MANIFEST-000004 index fa26d322..204957e0 100644 Binary files a/Data/systems/pf2e/packs/highhelm-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/highhelm-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/iconics/000005.ldb b/Data/systems/pf2e/packs/iconics/000005.ldb index dd5a324f..f717b3e6 100644 Binary files a/Data/systems/pf2e/packs/iconics/000005.ldb and b/Data/systems/pf2e/packs/iconics/000005.ldb differ diff --git a/Data/systems/pf2e/packs/iconics/LOG b/Data/systems/pf2e/packs/iconics/LOG index ebf992be..3ee39fe2 100644 --- a/Data/systems/pf2e/packs/iconics/LOG +++ b/Data/systems/pf2e/packs/iconics/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.407398 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.412621 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.433131 ffff86fdf0a0 Level-0 table #5: 1604618 bytes OK -2023/10/23-05:12:18.437916 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.438459 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.304935 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.309992 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.331313 ffff8929e0a0 Level-0 table #5: 1599529 bytes OK +2023/11/12-06:20:01.336378 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.336887 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/iconics/LOG.old b/Data/systems/pf2e/packs/iconics/LOG.old index c30c0ed1..bddcad9b 100644 --- a/Data/systems/pf2e/packs/iconics/LOG.old +++ b/Data/systems/pf2e/packs/iconics/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.669392 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.572732 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/iconics/MANIFEST-000004 b/Data/systems/pf2e/packs/iconics/MANIFEST-000004 index 67ffc095..9c0cb691 100644 Binary files a/Data/systems/pf2e/packs/iconics/MANIFEST-000004 and b/Data/systems/pf2e/packs/iconics/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/impossible-lands-bestiary/000005.ldb b/Data/systems/pf2e/packs/impossible-lands-bestiary/000005.ldb index d895afbc..d55fa5f3 100644 Binary files a/Data/systems/pf2e/packs/impossible-lands-bestiary/000005.ldb and b/Data/systems/pf2e/packs/impossible-lands-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG b/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG index 19f314f6..911e81c4 100644 --- a/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG +++ b/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.628299 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.628694 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.632229 ffff86fdf0a0 Level-0 table #5: 118203 bytes OK -2023/10/23-05:12:16.636968 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.637026 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.530722 ffff89aae0a0 Recovering log #3 +2023/11/12-06:19:59.531167 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:19:59.534720 ffff89aae0a0 Level-0 table #5: 118075 bytes OK +2023/11/12-06:19:59.539388 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:19:59.539454 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG.old b/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG.old index 8a0861cf..6869f563 100644 --- a/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/impossible-lands-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.672366 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.573139 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/impossible-lands-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/impossible-lands-bestiary/MANIFEST-000004 index ef95a1da..af9fd7af 100644 Binary files a/Data/systems/pf2e/packs/impossible-lands-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/impossible-lands-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/journals/000005.ldb b/Data/systems/pf2e/packs/journals/000005.ldb index e58556e7..39b056d8 100644 Binary files a/Data/systems/pf2e/packs/journals/000005.ldb and b/Data/systems/pf2e/packs/journals/000005.ldb differ diff --git a/Data/systems/pf2e/packs/journals/LOG b/Data/systems/pf2e/packs/journals/LOG index faa2366f..551fe6ef 100644 --- a/Data/systems/pf2e/packs/journals/LOG +++ b/Data/systems/pf2e/packs/journals/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.524812 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.528207 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.543724 ffff86fdf0a0 Level-0 table #5: 1244760 bytes OK -2023/10/23-05:12:18.548666 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.549103 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.425726 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.429269 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.444452 ffff8929e0a0 Level-0 table #5: 1244760 bytes OK +2023/11/12-06:20:01.449187 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.449625 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/journals/LOG.old b/Data/systems/pf2e/packs/journals/LOG.old index 9b7f3279..8d55cd12 100644 --- a/Data/systems/pf2e/packs/journals/LOG.old +++ b/Data/systems/pf2e/packs/journals/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.670839 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.574353 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/kingmaker-bestiary/000005.ldb b/Data/systems/pf2e/packs/kingmaker-bestiary/000005.ldb index 13894b65..a0957452 100644 Binary files a/Data/systems/pf2e/packs/kingmaker-bestiary/000005.ldb and b/Data/systems/pf2e/packs/kingmaker-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/kingmaker-bestiary/LOG b/Data/systems/pf2e/packs/kingmaker-bestiary/LOG index 2121072e..274fcb72 100644 --- a/Data/systems/pf2e/packs/kingmaker-bestiary/LOG +++ b/Data/systems/pf2e/packs/kingmaker-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.809436 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:16.821406 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:16.869990 ffff867cf0a0 Level-0 table #5: 3403687 bytes OK -2023/10/23-05:12:16.876298 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:16.877467 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:19:59.713661 ffff8929e0a0 Recovering log #3 +2023/11/12-06:19:59.728263 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:19:59.776583 ffff8929e0a0 Level-0 table #5: 3397853 bytes OK +2023/11/12-06:19:59.782211 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:19:59.783264 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/kingmaker-bestiary/LOG.old b/Data/systems/pf2e/packs/kingmaker-bestiary/LOG.old index eb240e64..cd4d8905 100644 --- a/Data/systems/pf2e/packs/kingmaker-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/kingmaker-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.671878 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.574822 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/kingmaker-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/kingmaker-bestiary/MANIFEST-000004 index d9a67b7a..76da6624 100644 Binary files a/Data/systems/pf2e/packs/kingmaker-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/kingmaker-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/kingmaker-features/000005.ldb b/Data/systems/pf2e/packs/kingmaker-features/000005.ldb index 4f78e19d..90cddf38 100644 Binary files a/Data/systems/pf2e/packs/kingmaker-features/000005.ldb and b/Data/systems/pf2e/packs/kingmaker-features/000005.ldb differ diff --git a/Data/systems/pf2e/packs/kingmaker-features/LOG b/Data/systems/pf2e/packs/kingmaker-features/LOG index 3d1e0c7f..1cef29e9 100644 --- a/Data/systems/pf2e/packs/kingmaker-features/LOG +++ b/Data/systems/pf2e/packs/kingmaker-features/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.616816 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:18.617143 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:18.620659 ffff87fff0a0 Level-0 table #5: 100391 bytes OK -2023/10/23-05:12:18.625550 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:18.625615 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:01.515698 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:01.516031 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:01.519061 ffff89aae0a0 Level-0 table #5: 100508 bytes OK +2023/11/12-06:20:01.523771 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:01.523829 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/kingmaker-features/LOG.old b/Data/systems/pf2e/packs/kingmaker-features/LOG.old index 8096f3af..d38edbe9 100644 --- a/Data/systems/pf2e/packs/kingmaker-features/LOG.old +++ b/Data/systems/pf2e/packs/kingmaker-features/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.673609 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.575835 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/kingmaker-features/MANIFEST-000004 b/Data/systems/pf2e/packs/kingmaker-features/MANIFEST-000004 index 1ddd8f3e..f86a3bf8 100644 Binary files a/Data/systems/pf2e/packs/kingmaker-features/MANIFEST-000004 and b/Data/systems/pf2e/packs/kingmaker-features/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/macros/LOG b/Data/systems/pf2e/packs/macros/LOG index 0b119c1d..e2c4ad25 100644 --- a/Data/systems/pf2e/packs/macros/LOG +++ b/Data/systems/pf2e/packs/macros/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.576300 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:18.576329 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:18.578198 ffff87fff0a0 Level-0 table #5: 1742 bytes OK -2023/10/23-05:12:18.582613 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:18.582632 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:01.476741 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:01.476769 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:01.478639 ffff89aae0a0 Level-0 table #5: 1742 bytes OK +2023/11/12-06:20:01.483041 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:01.483061 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/macros/LOG.old b/Data/systems/pf2e/packs/macros/LOG.old index 81b09afa..4eb31fd9 100644 --- a/Data/systems/pf2e/packs/macros/LOG.old +++ b/Data/systems/pf2e/packs/macros/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.694167 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.576129 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/malevolence-bestiary/000005.ldb b/Data/systems/pf2e/packs/malevolence-bestiary/000005.ldb index 0cc27d59..1214633f 100644 Binary files a/Data/systems/pf2e/packs/malevolence-bestiary/000005.ldb and b/Data/systems/pf2e/packs/malevolence-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/malevolence-bestiary/LOG b/Data/systems/pf2e/packs/malevolence-bestiary/LOG index e4150c97..fc39b7c1 100644 --- a/Data/systems/pf2e/packs/malevolence-bestiary/LOG +++ b/Data/systems/pf2e/packs/malevolence-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.702291 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.702736 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.706289 ffff86fdf0a0 Level-0 table #5: 125242 bytes OK -2023/10/23-05:12:16.710898 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.710964 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.602617 ffff89aae0a0 Recovering log #3 +2023/11/12-06:19:59.603059 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:19:59.606743 ffff89aae0a0 Level-0 table #5: 125529 bytes OK +2023/11/12-06:19:59.611460 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:19:59.611553 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/malevolence-bestiary/LOG.old b/Data/systems/pf2e/packs/malevolence-bestiary/LOG.old index a935fc0a..3bbb3000 100644 --- a/Data/systems/pf2e/packs/malevolence-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/malevolence-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.694756 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.577778 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/malevolence-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/malevolence-bestiary/MANIFEST-000004 index 11055fe5..5e6353b3 100644 Binary files a/Data/systems/pf2e/packs/malevolence-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/malevolence-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/menace-under-otari-bestiary/000005.ldb b/Data/systems/pf2e/packs/menace-under-otari-bestiary/000005.ldb index b289a33c..7c5c2bfc 100644 Binary files a/Data/systems/pf2e/packs/menace-under-otari-bestiary/000005.ldb and b/Data/systems/pf2e/packs/menace-under-otari-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG b/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG index 465e35bb..3002c3bc 100644 --- a/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG +++ b/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.713918 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.715112 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.721422 ffff87fff0a0 Level-0 table #5: 311367 bytes OK -2023/10/23-05:12:16.725935 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.726063 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.614859 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.616006 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.621782 ffff88a8e0a0 Level-0 table #5: 310878 bytes OK +2023/11/12-06:19:59.626383 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.626516 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG.old b/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG.old index ac74bd9e..dad559f5 100644 --- a/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/menace-under-otari-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.696145 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.578267 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/menace-under-otari-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/menace-under-otari-bestiary/MANIFEST-000004 index 6d31878c..41297888 100644 Binary files a/Data/systems/pf2e/packs/menace-under-otari-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/menace-under-otari-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/000005.ldb b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/000005.ldb index ee136806..00f54b8d 100644 Binary files a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/000005.ldb and b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG index b8ec7cdd..61c0a0fc 100644 --- a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG +++ b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.670462 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:16.672273 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:16.680439 ffff86fdf0a0 Level-0 table #5: 514513 bytes OK -2023/10/23-05:12:16.684701 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:16.684934 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:19:59.569521 ffff89aae0a0 Recovering log #3 +2023/11/12-06:19:59.571235 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:19:59.579151 ffff89aae0a0 Level-0 table #5: 514109 bytes OK +2023/11/12-06:19:59.583765 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:19:59.583919 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG.old b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG.old index 006e49ed..4649f135 100644 --- a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.696779 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.579102 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/MANIFEST-000004 index 9591fcaf..75784eee 100644 Binary files a/Data/systems/pf2e/packs/monsters-of-myth-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/monsters-of-myth-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/000005.ldb b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/000005.ldb index 02701c30..9d3e0714 100644 Binary files a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/000005.ldb and b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG index 075dcbd6..9a5122c4 100644 --- a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG +++ b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.639957 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.640652 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.645158 ffff87fff0a0 Level-0 table #5: 201554 bytes OK -2023/10/23-05:12:16.649683 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.649777 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.545694 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.546382 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.550712 ffff88a8e0a0 Level-0 table #5: 201743 bytes OK +2023/11/12-06:19:59.555425 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.555534 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG.old b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG.old index 3b2f138b..aa4b7e4c 100644 --- a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.697548 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.579102 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/MANIFEST-000004 index 1c2bc9eb..f1a1501c 100644 Binary files a/Data/systems/pf2e/packs/mwangi-expanse-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/mwangi-expanse-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/000005.ldb b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/000005.ldb index a84f1eba..524ad48c 100644 Binary files a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/000005.ldb and b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG index 557a938f..0b40614d 100644 --- a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG +++ b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.760680 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.761533 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.766430 ffff86fdf0a0 Level-0 table #5: 242185 bytes OK -2023/10/23-05:12:17.771609 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.771716 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.675738 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.676557 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.681438 ffff8929e0a0 Level-0 table #5: 241889 bytes OK +2023/11/12-06:20:00.686353 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.686453 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG.old b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG.old index a90f4c20..1b036508 100644 --- a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.697716 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.580875 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/MANIFEST-000004 index 8e8537ac..5af3f7f5 100644 Binary files a/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/night-of-the-gray-death-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/npc-gallery/000005.ldb b/Data/systems/pf2e/packs/npc-gallery/000005.ldb index 88b5ac68..a49e7a7e 100644 Binary files a/Data/systems/pf2e/packs/npc-gallery/000005.ldb and b/Data/systems/pf2e/packs/npc-gallery/000005.ldb differ diff --git a/Data/systems/pf2e/packs/npc-gallery/LOG b/Data/systems/pf2e/packs/npc-gallery/LOG index 41e6e253..5a8040e4 100644 --- a/Data/systems/pf2e/packs/npc-gallery/LOG +++ b/Data/systems/pf2e/packs/npc-gallery/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.731781 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.735622 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.749920 ffff877ef0a0 Level-0 table #5: 1113942 bytes OK -2023/10/23-05:12:16.754987 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.755412 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.633522 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.638623 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.652660 ffff88a8e0a0 Level-0 table #5: 1110671 bytes OK +2023/11/12-06:19:59.657513 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.657874 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/npc-gallery/LOG.old b/Data/systems/pf2e/packs/npc-gallery/LOG.old index fa3bf57c..8e0c2a66 100644 --- a/Data/systems/pf2e/packs/npc-gallery/LOG.old +++ b/Data/systems/pf2e/packs/npc-gallery/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.701142 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.581513 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/npc-gallery/MANIFEST-000004 b/Data/systems/pf2e/packs/npc-gallery/MANIFEST-000004 index ae0e4e2f..53cd4715 100644 Binary files a/Data/systems/pf2e/packs/npc-gallery/MANIFEST-000004 and b/Data/systems/pf2e/packs/npc-gallery/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/one-shot-bestiary/000005.ldb b/Data/systems/pf2e/packs/one-shot-bestiary/000005.ldb index bf41b4db..0ef91a74 100644 Binary files a/Data/systems/pf2e/packs/one-shot-bestiary/000005.ldb and b/Data/systems/pf2e/packs/one-shot-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/one-shot-bestiary/LOG b/Data/systems/pf2e/packs/one-shot-bestiary/LOG index 1418ee91..6d0890e1 100644 --- a/Data/systems/pf2e/packs/one-shot-bestiary/LOG +++ b/Data/systems/pf2e/packs/one-shot-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.768519 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:16.769230 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:16.773822 ffff877ef0a0 Level-0 table #5: 195214 bytes OK -2023/10/23-05:12:16.778325 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:16.778410 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:19:59.671239 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.671906 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.676300 ffff88a8e0a0 Level-0 table #5: 195006 bytes OK +2023/11/12-06:19:59.680638 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.680732 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/one-shot-bestiary/LOG.old b/Data/systems/pf2e/packs/one-shot-bestiary/LOG.old index 3a63ebb8..52ccf64e 100644 --- a/Data/systems/pf2e/packs/one-shot-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/one-shot-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.699580 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.582572 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/one-shot-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/one-shot-bestiary/MANIFEST-000004 index acaa53ee..9198044d 100644 Binary files a/Data/systems/pf2e/packs/one-shot-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/one-shot-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/other-effects/000005.ldb b/Data/systems/pf2e/packs/other-effects/000005.ldb index 835aa7b7..e0ee4c5a 100644 Binary files a/Data/systems/pf2e/packs/other-effects/000005.ldb and b/Data/systems/pf2e/packs/other-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/other-effects/LOG b/Data/systems/pf2e/packs/other-effects/LOG index a2d141f7..825afac8 100644 --- a/Data/systems/pf2e/packs/other-effects/LOG +++ b/Data/systems/pf2e/packs/other-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.202853 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.202949 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.205487 ffff86fdf0a0 Level-0 table #5: 17150 bytes OK -2023/10/23-05:12:18.210148 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.210177 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.102868 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.102990 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.107546 ffff8929e0a0 Level-0 table #5: 17168 bytes OK +2023/11/12-06:20:01.111916 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.111947 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/other-effects/LOG.old b/Data/systems/pf2e/packs/other-effects/LOG.old index 4a3fff5f..30159df4 100644 --- a/Data/systems/pf2e/packs/other-effects/LOG.old +++ b/Data/systems/pf2e/packs/other-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.701305 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.582275 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/other-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/other-effects/MANIFEST-000004 index 971d5890..188811c7 100644 Binary files a/Data/systems/pf2e/packs/other-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/other-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/000005.ldb b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/000005.ldb index 06f53db1..b80fec24 100644 Binary files a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/000005.ldb and b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG index c858b1b9..a07dca0c 100644 --- a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG +++ b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.782177 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:16.784616 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:16.794369 ffff867cf0a0 Level-0 table #5: 666663 bytes OK -2023/10/23-05:12:16.799130 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:16.799377 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:19:59.684564 ffff8929e0a0 Recovering log #3 +2023/11/12-06:19:59.687095 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:19:59.697075 ffff8929e0a0 Level-0 table #5: 664699 bytes OK +2023/11/12-06:19:59.701938 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:19:59.702178 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG.old b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG.old index cef031ec..f3299f81 100644 --- a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.700974 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.583803 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/MANIFEST-000004 index 075b9c1a..dd0b3514 100644 Binary files a/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/outlaws-of-alkenstar-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/paizo-pregens/000005.ldb b/Data/systems/pf2e/packs/paizo-pregens/000005.ldb index 51905422..ef51ae75 100644 Binary files a/Data/systems/pf2e/packs/paizo-pregens/000005.ldb and b/Data/systems/pf2e/packs/paizo-pregens/000005.ldb differ diff --git a/Data/systems/pf2e/packs/paizo-pregens/LOG b/Data/systems/pf2e/packs/paizo-pregens/LOG index d38083a5..357cb1f0 100644 --- a/Data/systems/pf2e/packs/paizo-pregens/LOG +++ b/Data/systems/pf2e/packs/paizo-pregens/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.453095 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.458453 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.479485 ffff86fdf0a0 Level-0 table #5: 1678573 bytes OK -2023/10/23-05:12:18.484218 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.484860 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.351646 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.356828 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.378587 ffff8929e0a0 Level-0 table #5: 1674014 bytes OK +2023/11/12-06:20:01.383346 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.383863 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/paizo-pregens/LOG.old b/Data/systems/pf2e/packs/paizo-pregens/LOG.old index 474cb1b1..f4ea7510 100644 --- a/Data/systems/pf2e/packs/paizo-pregens/LOG.old +++ b/Data/systems/pf2e/packs/paizo-pregens/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.702556 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.585020 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/paizo-pregens/MANIFEST-000004 b/Data/systems/pf2e/packs/paizo-pregens/MANIFEST-000004 index c933759d..307e9d93 100644 Binary files a/Data/systems/pf2e/packs/paizo-pregens/MANIFEST-000004 and b/Data/systems/pf2e/packs/paizo-pregens/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-2/000005.ldb b/Data/systems/pf2e/packs/pathfinder-bestiary-2/000005.ldb index 435b30c7..e1f43346 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary-2/000005.ldb and b/Data/systems/pf2e/packs/pathfinder-bestiary-2/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG b/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG index 85d880fc..a09a54ce 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG +++ b/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.063370 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:17.076708 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:17.130299 ffff87fff0a0 Level-0 table #5: 3711251 bytes OK -2023/10/23-05:12:17.135911 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:17.137734 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.973089 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:19:59.989909 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.044968 ffff7bfff0a0 Level-0 table #5: 3708769 bytes OK +2023/11/12-06:20:00.049922 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.051205 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG.old b/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG.old index f2136eb6..f7532c53 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG.old +++ b/Data/systems/pf2e/packs/pathfinder-bestiary-2/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.706398 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.585714 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-2/MANIFEST-000004 b/Data/systems/pf2e/packs/pathfinder-bestiary-2/MANIFEST-000004 index 5cd74466..e0db3fbc 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary-2/MANIFEST-000004 and b/Data/systems/pf2e/packs/pathfinder-bestiary-2/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-3/000005.ldb b/Data/systems/pf2e/packs/pathfinder-bestiary-3/000005.ldb index 00d52a4c..e9ffa67f 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary-3/000005.ldb and b/Data/systems/pf2e/packs/pathfinder-bestiary-3/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG b/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG index 7c721d78..b5b1cd17 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG +++ b/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.171993 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.187123 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.252362 ffff86fdf0a0 Level-0 table #5: 4378205 bytes OK -2023/10/23-05:12:17.258128 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.259505 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.084982 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.106574 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.170928 ffff89aae0a0 Level-0 table #5: 4371283 bytes OK +2023/11/12-06:20:00.178250 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.179757 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG.old b/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG.old index 74ebecb6..96fbbefe 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG.old +++ b/Data/systems/pf2e/packs/pathfinder-bestiary-3/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.704366 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.587064 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary-3/MANIFEST-000004 b/Data/systems/pf2e/packs/pathfinder-bestiary-3/MANIFEST-000004 index 87400a38..3ea9d79e 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary-3/MANIFEST-000004 and b/Data/systems/pf2e/packs/pathfinder-bestiary-3/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary/000005.ldb b/Data/systems/pf2e/packs/pathfinder-bestiary/000005.ldb index 0eee7afe..d4557e74 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pathfinder-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary/LOG b/Data/systems/pf2e/packs/pathfinder-bestiary/LOG index 2e04bcb5..09bb725e 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary/LOG +++ b/Data/systems/pf2e/packs/pathfinder-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.906987 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:16.927100 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.004953 ffff867cf0a0 Level-0 table #5: 5306423 bytes OK -2023/10/23-05:12:17.011235 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.013382 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:19:59.811789 ffff8929e0a0 Recovering log #3 +2023/11/12-06:19:59.838735 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:19:59.916997 ffff8929e0a0 Level-0 table #5: 5292299 bytes OK +2023/11/12-06:19:59.923515 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:19:59.925105 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary/LOG.old b/Data/systems/pf2e/packs/pathfinder-bestiary/LOG.old index 730d744a..864f3cdc 100644 --- a/Data/systems/pf2e/packs/pathfinder-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pathfinder-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.704548 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.585044 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pathfinder-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pathfinder-bestiary/MANIFEST-000004 index 82d1bcd8..a2bdabb7 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pathfinder-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pathfinder-dark-archive/000005.ldb b/Data/systems/pf2e/packs/pathfinder-dark-archive/000005.ldb index fa640966..125750af 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-dark-archive/000005.ldb and b/Data/systems/pf2e/packs/pathfinder-dark-archive/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG b/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG index 0d97ce44..b778241b 100644 --- a/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG +++ b/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.297304 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.297665 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.301075 ffff867cf0a0 Level-0 table #5: 94483 bytes OK -2023/10/23-05:12:17.306227 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.306282 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.219529 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.219869 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.223183 ffff8929e0a0 Level-0 table #5: 94486 bytes OK +2023/11/12-06:20:00.227629 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.227682 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG.old b/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG.old index 98e4fcc7..2a9228d3 100644 --- a/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG.old +++ b/Data/systems/pf2e/packs/pathfinder-dark-archive/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.705269 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.587678 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pathfinder-dark-archive/MANIFEST-000004 b/Data/systems/pf2e/packs/pathfinder-dark-archive/MANIFEST-000004 index 5bd84dbb..d5d81032 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-dark-archive/MANIFEST-000004 and b/Data/systems/pf2e/packs/pathfinder-dark-archive/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pathfinder-society-boons/000005.ldb b/Data/systems/pf2e/packs/pathfinder-society-boons/000005.ldb index fb3ea902..6f188d6c 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-society-boons/000005.ldb and b/Data/systems/pf2e/packs/pathfinder-society-boons/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pathfinder-society-boons/LOG b/Data/systems/pf2e/packs/pathfinder-society-boons/LOG index 9ec6cef6..7976779d 100644 --- a/Data/systems/pf2e/packs/pathfinder-society-boons/LOG +++ b/Data/systems/pf2e/packs/pathfinder-society-boons/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.234387 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.234703 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.238041 ffff86fdf0a0 Level-0 table #5: 82652 bytes OK -2023/10/23-05:12:18.243077 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.243135 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.129708 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.130015 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.133028 ffff8929e0a0 Level-0 table #5: 82609 bytes OK +2023/11/12-06:20:01.137822 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.137875 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pathfinder-society-boons/LOG.old b/Data/systems/pf2e/packs/pathfinder-society-boons/LOG.old index d7800daf..caa14e7e 100644 --- a/Data/systems/pf2e/packs/pathfinder-society-boons/LOG.old +++ b/Data/systems/pf2e/packs/pathfinder-society-boons/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.708250 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.587986 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pathfinder-society-boons/MANIFEST-000004 b/Data/systems/pf2e/packs/pathfinder-society-boons/MANIFEST-000004 index cad1a445..017221e2 100644 Binary files a/Data/systems/pf2e/packs/pathfinder-society-boons/MANIFEST-000004 and b/Data/systems/pf2e/packs/pathfinder-society-boons/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-introductions-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-introductions-bestiary/000005.ldb index 5ec59975..764e9d33 100644 Binary files a/Data/systems/pf2e/packs/pfs-introductions-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-introductions-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG b/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG index b569d12e..b5820baf 100644 --- a/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.309170 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:17.309317 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:17.312081 ffff87fff0a0 Level-0 table #5: 36057 bytes OK -2023/10/23-05:12:17.316821 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:17.316858 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:00.230676 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.230817 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.233492 ffff7bfff0a0 Level-0 table #5: 35999 bytes OK +2023/11/12-06:20:00.237889 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.237924 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG.old index e53394c4..962cbeb8 100644 --- a/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-introductions-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.707800 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.588519 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-introductions-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-introductions-bestiary/MANIFEST-000004 index 049aa4f4..5bd19299 100644 Binary files a/Data/systems/pf2e/packs/pfs-introductions-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-introductions-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-season-1-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-season-1-bestiary/000005.ldb index ad6bdc7e..d5ac7032 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-1-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-season-1-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG b/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG index ec36a920..5cf67324 100644 --- a/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.319139 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.326875 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.356183 ffff867cf0a0 Level-0 table #5: 2065521 bytes OK -2023/10/23-05:12:17.361231 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.361976 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.240381 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.248008 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.276191 ffff8929e0a0 Level-0 table #5: 2062994 bytes OK +2023/11/12-06:20:00.281403 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.282090 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG.old index ea0e8210..47da18fc 100644 --- a/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-season-1-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.708039 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.590098 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-season-1-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-season-1-bestiary/MANIFEST-000004 index 0a61a680..ef51f2c8 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-1-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-season-1-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-season-2-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-season-2-bestiary/000005.ldb index dabeae6a..73eb2f53 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-2-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-season-2-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG b/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG index 933fbc31..e9ba59f8 100644 --- a/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.386012 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:17.391681 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:17.412232 ffff87fff0a0 Level-0 table #5: 1539382 bytes OK -2023/10/23-05:12:17.416924 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:17.417428 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:00.303316 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.308686 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.328588 ffff7bfff0a0 Level-0 table #5: 1536581 bytes OK +2023/11/12-06:20:00.332919 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.333350 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG.old index b60d7ee4..83c291b5 100644 --- a/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-season-2-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.711253 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.590584 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-season-2-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-season-2-bestiary/MANIFEST-000004 index 970dda97..233b0dde 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-2-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-season-2-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-season-3-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-season-3-bestiary/000005.ldb index 139733cd..26792f71 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-3-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-season-3-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG b/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG index 9eb38754..4c8f87c0 100644 --- a/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.435043 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.441463 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.465526 ffff867cf0a0 Level-0 table #5: 1726659 bytes OK -2023/10/23-05:12:17.470178 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.470752 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.351768 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.358104 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.381109 ffff8929e0a0 Level-0 table #5: 1726965 bytes OK +2023/11/12-06:20:00.385740 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.386442 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG.old index c36e2781..f282b504 100644 --- a/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-season-3-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.710842 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.591174 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-season-3-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-season-3-bestiary/MANIFEST-000004 index 3d563fc2..20883f17 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-3-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-season-3-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-season-4-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-season-4-bestiary/000005.ldb index 34d26b13..ba4da53b 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-4-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-season-4-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG b/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG index 7e2a871f..9530c86a 100644 --- a/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.489267 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:17.495594 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:17.520541 ffff87fff0a0 Level-0 table #5: 1824190 bytes OK -2023/10/23-05:12:17.525591 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:17.526180 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:00.405000 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.411490 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.435231 ffff7bfff0a0 Level-0 table #5: 1819231 bytes OK +2023/11/12-06:20:00.440095 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.440888 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG.old index a3a44706..2b2ba191 100644 --- a/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-season-4-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.712836 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.591683 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-season-4-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-season-4-bestiary/MANIFEST-000004 index f3810a00..53ff1349 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-4-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-season-4-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/pfs-season-5-bestiary/000005.ldb b/Data/systems/pf2e/packs/pfs-season-5-bestiary/000005.ldb index 19acaefb..5f2432b9 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-5-bestiary/000005.ldb and b/Data/systems/pf2e/packs/pfs-season-5-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG b/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG index 5ce19c0b..c8880735 100644 --- a/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG +++ b/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.544747 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.545886 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.551771 ffff867cf0a0 Level-0 table #5: 298466 bytes OK -2023/10/23-05:12:17.557604 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.557729 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.459653 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.460656 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.466393 ffff8929e0a0 Level-0 table #5: 298420 bytes OK +2023/11/12-06:20:00.470926 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.471108 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG.old b/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG.old index 77b5d69b..5a2513ca 100644 --- a/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/pfs-season-5-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.711689 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.592962 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/pfs-season-5-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/pfs-season-5-bestiary/MANIFEST-000004 index d1e5d42e..bc82f207 100644 Binary files a/Data/systems/pf2e/packs/pfs-season-5-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/pfs-season-5-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/000005.ldb b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/000005.ldb index 8d614712..7780459a 100644 Binary files a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/000005.ldb and b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG index 12471f1e..c886c7d1 100644 --- a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG +++ b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.563697 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.565953 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.575103 ffff877ef0a0 Level-0 table #5: 625808 bytes OK -2023/10/23-05:12:17.579501 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.579718 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.476651 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.478812 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.488058 ffff88a8e0a0 Level-0 table #5: 625381 bytes OK +2023/11/12-06:20:00.492514 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.492705 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG.old b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG.old index 6d988ddf..a29cb7e9 100644 --- a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.714257 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.593591 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/MANIFEST-000004 index 6b4ee245..5ca73e14 100644 Binary files a/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/quest-for-the-frozen-flame-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/rage-of-elements-bestiary/000005.ldb b/Data/systems/pf2e/packs/rage-of-elements-bestiary/000005.ldb index c827718b..82962174 100644 Binary files a/Data/systems/pf2e/packs/rage-of-elements-bestiary/000005.ldb and b/Data/systems/pf2e/packs/rage-of-elements-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG b/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG index c72a3593..df633675 100644 --- a/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG +++ b/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.860435 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.863052 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.881699 ffff877ef0a0 Level-0 table #5: 751790 bytes OK -2023/10/23-05:12:17.886479 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.886741 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.758605 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.761238 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.771588 ffff89aae0a0 Level-0 table #5: 750652 bytes OK +2023/11/12-06:20:00.776173 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.776412 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG.old b/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG.old index 29098a06..074d422f 100644 --- a/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/rage-of-elements-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.715814 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.594819 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/rage-of-elements-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/rage-of-elements-bestiary/MANIFEST-000004 index 90218e58..35b4399f 100644 Binary files a/Data/systems/pf2e/packs/rage-of-elements-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/rage-of-elements-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/rollable-tables/LOG b/Data/systems/pf2e/packs/rollable-tables/LOG index d1954ca8..fe68728b 100644 --- a/Data/systems/pf2e/packs/rollable-tables/LOG +++ b/Data/systems/pf2e/packs/rollable-tables/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.499285 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.500456 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.504907 ffff86fdf0a0 Level-0 table #5: 191129 bytes OK -2023/10/23-05:12:18.509321 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.509422 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:01.398352 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:01.399499 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.404007 ffff8929e0a0 Level-0 table #5: 191129 bytes OK +2023/11/12-06:20:01.409473 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.409565 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/rollable-tables/LOG.old b/Data/systems/pf2e/packs/rollable-tables/LOG.old index bd0b51a2..3e77aa2f 100644 --- a/Data/systems/pf2e/packs/rollable-tables/LOG.old +++ b/Data/systems/pf2e/packs/rollable-tables/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.715338 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.594669 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/rusthenge-bestiary/000005.ldb b/Data/systems/pf2e/packs/rusthenge-bestiary/000005.ldb index a02e7690..285c5357 100644 Binary files a/Data/systems/pf2e/packs/rusthenge-bestiary/000005.ldb and b/Data/systems/pf2e/packs/rusthenge-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/rusthenge-bestiary/LOG b/Data/systems/pf2e/packs/rusthenge-bestiary/LOG index 41cc239e..9f32031c 100644 --- a/Data/systems/pf2e/packs/rusthenge-bestiary/LOG +++ b/Data/systems/pf2e/packs/rusthenge-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.589100 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.589825 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.594505 ffff877ef0a0 Level-0 table #5: 224323 bytes OK -2023/10/23-05:12:17.598830 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.598932 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.501908 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.502611 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.507082 ffff88a8e0a0 Level-0 table #5: 223638 bytes OK +2023/11/12-06:20:00.511600 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.511696 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/rusthenge-bestiary/LOG.old b/Data/systems/pf2e/packs/rusthenge-bestiary/LOG.old index 97e8ac27..6b2773c6 100644 --- a/Data/systems/pf2e/packs/rusthenge-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/rusthenge-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.717132 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.596356 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/rusthenge-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/rusthenge-bestiary/MANIFEST-000004 index 94f18925..0364827d 100644 Binary files a/Data/systems/pf2e/packs/rusthenge-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/rusthenge-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/000005.ldb b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/000005.ldb index f2f613c5..c76bd5a6 100644 Binary files a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/000005.ldb and b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG index 600a075f..b75cd3fe 100644 --- a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG +++ b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.602562 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:17.603201 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:17.607307 ffff87fff0a0 Level-0 table #5: 177598 bytes OK -2023/10/23-05:12:17.611685 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:17.611771 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:20:00.515364 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:00.516518 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:00.522513 ffff7bfff0a0 Level-0 table #5: 366114 bytes OK +2023/11/12-06:20:00.526718 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:00.526858 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG.old b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG.old index 2fcf00bf..6ca9a896 100644 --- a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.717719 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.597437 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/MANIFEST-000004 index 3180936c..4a8a98ff 100644 Binary files a/Data/systems/pf2e/packs/season-of-ghosts-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/season-of-ghosts-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/000005.ldb b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/000005.ldb index 4abe4500..496091de 100644 Binary files a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/000005.ldb and b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG index ed03434f..226f6b03 100644 --- a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG +++ b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.615257 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.616119 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.621568 ffff877ef0a0 Level-0 table #5: 286499 bytes OK -2023/10/23-05:12:17.626031 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.626157 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.532997 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.533924 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.539091 ffff89aae0a0 Level-0 table #5: 286626 bytes OK +2023/11/12-06:20:00.543718 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.543825 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG.old b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG.old index 3de2130d..8856de9a 100644 --- a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.718878 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.597799 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/MANIFEST-000004 index 70bfb81f..9baee82b 100644 Binary files a/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/shadows-at-sundown-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/000005.ldb b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/000005.ldb index a8de52cb..dcd18368 100644 Binary files a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/000005.ldb and b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG index 5f142cfd..52bac416 100644 --- a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG +++ b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.630572 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.633705 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.646090 ffff867cf0a0 Level-0 table #5: 919923 bytes OK -2023/10/23-05:12:17.650587 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.650919 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.548191 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.551133 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.563264 ffff88a8e0a0 Level-0 table #5: 919537 bytes OK +2023/11/12-06:20:00.567617 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.567896 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG.old b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG.old index eeecc3a4..46621ba6 100644 --- a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.720023 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.598060 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/MANIFEST-000004 index 27d956f4..27bf911c 100644 Binary files a/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/sky-kings-tomb-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/spell-effects/000005.ldb b/Data/systems/pf2e/packs/spell-effects/000005.ldb index ce48fa6d..6f6a431f 100644 Binary files a/Data/systems/pf2e/packs/spell-effects/000005.ldb and b/Data/systems/pf2e/packs/spell-effects/000005.ldb differ diff --git a/Data/systems/pf2e/packs/spell-effects/LOG b/Data/systems/pf2e/packs/spell-effects/LOG index 91938d87..32eee72b 100644 --- a/Data/systems/pf2e/packs/spell-effects/LOG +++ b/Data/systems/pf2e/packs/spell-effects/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.245544 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:18.246858 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:18.253775 ffff877ef0a0 Level-0 table #5: 415661 bytes OK -2023/10/23-05:12:18.258456 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:18.258618 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:01.140424 ffff7bfff0a0 Recovering log #3 +2023/11/12-06:20:01.141761 ffff7bfff0a0 Level-0 table #5: started +2023/11/12-06:20:01.148575 ffff7bfff0a0 Level-0 table #5: 426592 bytes OK +2023/11/12-06:20:01.153158 ffff7bfff0a0 Delete type=0 #3 +2023/11/12-06:20:01.153335 ffff7bfff0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/spell-effects/LOG.old b/Data/systems/pf2e/packs/spell-effects/LOG.old index 29edab63..bb2f7e82 100644 --- a/Data/systems/pf2e/packs/spell-effects/LOG.old +++ b/Data/systems/pf2e/packs/spell-effects/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.719502 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.599590 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/spell-effects/MANIFEST-000004 b/Data/systems/pf2e/packs/spell-effects/MANIFEST-000004 index 828773f7..9e93f083 100644 Binary files a/Data/systems/pf2e/packs/spell-effects/MANIFEST-000004 and b/Data/systems/pf2e/packs/spell-effects/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/spells/000005.ldb b/Data/systems/pf2e/packs/spells/000005.ldb index 202b32b4..5fb59541 100644 Binary files a/Data/systems/pf2e/packs/spells/000005.ldb and b/Data/systems/pf2e/packs/spells/000005.ldb differ diff --git a/Data/systems/pf2e/packs/spells/LOG b/Data/systems/pf2e/packs/spells/LOG index a3e74b4a..38884309 100644 --- a/Data/systems/pf2e/packs/spells/LOG +++ b/Data/systems/pf2e/packs/spells/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:18.102696 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:18.107969 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:18.129978 ffff86fdf0a0 Level-0 table #5: 1655214 bytes OK -2023/10/23-05:12:18.135040 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:18.135608 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.989635 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.998992 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:01.025437 ffff8929e0a0 Level-0 table #5: 1679960 bytes OK +2023/11/12-06:20:01.030160 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:01.030745 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/spells/LOG.old b/Data/systems/pf2e/packs/spells/LOG.old index 0e3f5df8..f80d2359 100644 --- a/Data/systems/pf2e/packs/spells/LOG.old +++ b/Data/systems/pf2e/packs/spells/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.720123 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.600911 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/spells/MANIFEST-000004 b/Data/systems/pf2e/packs/spells/MANIFEST-000004 index e0983128..258f7fb0 100644 Binary files a/Data/systems/pf2e/packs/spells/MANIFEST-000004 and b/Data/systems/pf2e/packs/spells/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/stolen-fate-bestiary/000005.ldb b/Data/systems/pf2e/packs/stolen-fate-bestiary/000005.ldb index 9e9abf2d..f5c909e9 100644 Binary files a/Data/systems/pf2e/packs/stolen-fate-bestiary/000005.ldb and b/Data/systems/pf2e/packs/stolen-fate-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG b/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG index a04b1ac7..dfc956ca 100644 --- a/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG +++ b/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.791246 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.797256 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.821601 ffff867cf0a0 Level-0 table #5: 1747468 bytes OK -2023/10/23-05:12:17.826456 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.827051 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.706170 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.713242 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.736834 ffff88a8e0a0 Level-0 table #5: 1745717 bytes OK +2023/11/12-06:20:00.741527 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.742141 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG.old b/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG.old index 029ed38d..f2886299 100644 --- a/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/stolen-fate-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.722346 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.602057 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/stolen-fate-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/stolen-fate-bestiary/MANIFEST-000004 index e0a77bff..fe6f33f7 100644 Binary files a/Data/systems/pf2e/packs/stolen-fate-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/stolen-fate-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/000005.ldb b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/000005.ldb index 20ae5144..8da613a6 100644 Binary files a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/000005.ldb and b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG index edad7faf..77a59d3b 100644 --- a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG +++ b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.662307 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.668990 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.695279 ffff86fdf0a0 Level-0 table #5: 1879496 bytes OK -2023/10/23-05:12:17.700011 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.700655 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.580906 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.587483 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.613274 ffff8929e0a0 Level-0 table #5: 1876443 bytes OK +2023/11/12-06:20:00.618167 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.618732 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG.old b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG.old index e0048789..65176eec 100644 --- a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.722041 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.601201 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/MANIFEST-000004 index e46f2680..633c14bd 100644 Binary files a/Data/systems/pf2e/packs/strength-of-thousands-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/strength-of-thousands-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/000005.ldb b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/000005.ldb index a62edfac..8072c1ac 100644 Binary files a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/000005.ldb and b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG index 89d1d2eb..57bea160 100644 --- a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG +++ b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.719366 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.719904 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.723756 ffff867cf0a0 Level-0 table #5: 145155 bytes OK -2023/10/23-05:12:17.728550 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.728628 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.637528 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.638017 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.641940 ffff88a8e0a0 Level-0 table #5: 145071 bytes OK +2023/11/12-06:20:00.646881 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.646996 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG.old b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG.old index ca3b74e6..c8e316f4 100644 --- a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.723733 7fdbd3fff640 Delete type=3 #1 +2023/11/08-20:32:54.603379 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/MANIFEST-000004 index 2ce0ea6a..2a0429e3 100644 Binary files a/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/the-enmity-cycle-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/the-slithering-bestiary/000005.ldb b/Data/systems/pf2e/packs/the-slithering-bestiary/000005.ldb index 0e486e05..5dd069a4 100644 Binary files a/Data/systems/pf2e/packs/the-slithering-bestiary/000005.ldb and b/Data/systems/pf2e/packs/the-slithering-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/the-slithering-bestiary/LOG b/Data/systems/pf2e/packs/the-slithering-bestiary/LOG index 8bd4d15b..4fc0a111 100644 --- a/Data/systems/pf2e/packs/the-slithering-bestiary/LOG +++ b/Data/systems/pf2e/packs/the-slithering-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.734100 ffff86fdf0a0 Recovering log #3 -2023/10/23-05:12:17.734643 ffff86fdf0a0 Level-0 table #5: started -2023/10/23-05:12:17.738987 ffff86fdf0a0 Level-0 table #5: 152030 bytes OK -2023/10/23-05:12:17.744123 ffff86fdf0a0 Delete type=0 #3 -2023/10/23-05:12:17.744207 ffff86fdf0a0 Delete type=3 #2 +2023/11/12-06:20:00.650574 ffff8929e0a0 Recovering log #3 +2023/11/12-06:20:00.651142 ffff8929e0a0 Level-0 table #5: started +2023/11/12-06:20:00.655216 ffff8929e0a0 Level-0 table #5: 151500 bytes OK +2023/11/12-06:20:00.660259 ffff8929e0a0 Delete type=0 #3 +2023/11/12-06:20:00.660340 ffff8929e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/the-slithering-bestiary/LOG.old b/Data/systems/pf2e/packs/the-slithering-bestiary/LOG.old index eaa4e7a0..5d1229cf 100644 --- a/Data/systems/pf2e/packs/the-slithering-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/the-slithering-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.722448 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.604278 7f38abfff640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/the-slithering-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/the-slithering-bestiary/MANIFEST-000004 index 9a3c95a4..dc2aea90 100644 Binary files a/Data/systems/pf2e/packs/the-slithering-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/the-slithering-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/travel-guide-bestiary/000005.ldb b/Data/systems/pf2e/packs/travel-guide-bestiary/000005.ldb index 737be600..89abc553 100644 Binary files a/Data/systems/pf2e/packs/travel-guide-bestiary/000005.ldb and b/Data/systems/pf2e/packs/travel-guide-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/travel-guide-bestiary/LOG b/Data/systems/pf2e/packs/travel-guide-bestiary/LOG index d64c091b..afc57c68 100644 --- a/Data/systems/pf2e/packs/travel-guide-bestiary/LOG +++ b/Data/systems/pf2e/packs/travel-guide-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:16.693294 ffff87fff0a0 Recovering log #3 -2023/10/23-05:12:16.693394 ffff87fff0a0 Level-0 table #5: started -2023/10/23-05:12:16.695568 ffff87fff0a0 Level-0 table #5: 17054 bytes OK -2023/10/23-05:12:16.700079 ffff87fff0a0 Delete type=0 #3 -2023/10/23-05:12:16.700110 ffff87fff0a0 Delete type=3 #2 +2023/11/12-06:19:59.593006 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:19:59.593091 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:19:59.595481 ffff88a8e0a0 Level-0 table #5: 17009 bytes OK +2023/11/12-06:19:59.600313 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:19:59.600341 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/travel-guide-bestiary/LOG.old b/Data/systems/pf2e/packs/travel-guide-bestiary/LOG.old index 069f66b5..e8dc2148 100644 --- a/Data/systems/pf2e/packs/travel-guide-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/travel-guide-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.726232 7fdbe1ffd640 Delete type=3 #1 +2023/11/08-20:32:54.604588 7f38a9ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/travel-guide-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/travel-guide-bestiary/MANIFEST-000004 index 140584bc..a1b17291 100644 Binary files a/Data/systems/pf2e/packs/travel-guide-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/travel-guide-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/000005.ldb b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/000005.ldb index e1040bf6..bf9666b4 100644 Binary files a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/000005.ldb and b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/000005.ldb differ diff --git a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG index ca861488..381d1f86 100644 --- a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG +++ b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.748594 ffff867cf0a0 Recovering log #3 -2023/10/23-05:12:17.749060 ffff867cf0a0 Level-0 table #5: started -2023/10/23-05:12:17.752737 ffff867cf0a0 Level-0 table #5: 120871 bytes OK -2023/10/23-05:12:17.757531 ffff867cf0a0 Delete type=0 #3 -2023/10/23-05:12:17.757595 ffff867cf0a0 Delete type=3 #2 +2023/11/12-06:20:00.663732 ffff88a8e0a0 Recovering log #3 +2023/11/12-06:20:00.664162 ffff88a8e0a0 Level-0 table #5: started +2023/11/12-06:20:00.668000 ffff88a8e0a0 Level-0 table #5: 121219 bytes OK +2023/11/12-06:20:00.672576 ffff88a8e0a0 Delete type=0 #3 +2023/11/12-06:20:00.672638 ffff88a8e0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG.old b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG.old index fb4bcff5..f54b0262 100644 --- a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG.old +++ b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.725682 7fdbd2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.605323 7f38b1ffd640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/MANIFEST-000004 b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/MANIFEST-000004 index 8f3c1621..b93ef591 100644 Binary files a/Data/systems/pf2e/packs/troubles-in-otari-bestiary/MANIFEST-000004 and b/Data/systems/pf2e/packs/troubles-in-otari-bestiary/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/packs/vehicles/000005.ldb b/Data/systems/pf2e/packs/vehicles/000005.ldb index 6657483a..db82e952 100644 Binary files a/Data/systems/pf2e/packs/vehicles/000005.ldb and b/Data/systems/pf2e/packs/vehicles/000005.ldb differ diff --git a/Data/systems/pf2e/packs/vehicles/LOG b/Data/systems/pf2e/packs/vehicles/LOG index 529162bd..7f89b8db 100644 --- a/Data/systems/pf2e/packs/vehicles/LOG +++ b/Data/systems/pf2e/packs/vehicles/LOG @@ -1,5 +1,5 @@ -2023/10/23-05:12:17.898152 ffff877ef0a0 Recovering log #3 -2023/10/23-05:12:17.898411 ffff877ef0a0 Level-0 table #5: started -2023/10/23-05:12:17.901380 ffff877ef0a0 Level-0 table #5: 68529 bytes OK -2023/10/23-05:12:17.905797 ffff877ef0a0 Delete type=0 #3 -2023/10/23-05:12:17.905846 ffff877ef0a0 Delete type=3 #2 +2023/11/12-06:20:00.786492 ffff89aae0a0 Recovering log #3 +2023/11/12-06:20:00.786772 ffff89aae0a0 Level-0 table #5: started +2023/11/12-06:20:00.789726 ffff89aae0a0 Level-0 table #5: 68585 bytes OK +2023/11/12-06:20:00.794179 ffff89aae0a0 Delete type=0 #3 +2023/11/12-06:20:00.794227 ffff89aae0a0 Delete type=3 #2 diff --git a/Data/systems/pf2e/packs/vehicles/LOG.old b/Data/systems/pf2e/packs/vehicles/LOG.old index 0ab5d216..34b35ed9 100644 --- a/Data/systems/pf2e/packs/vehicles/LOG.old +++ b/Data/systems/pf2e/packs/vehicles/LOG.old @@ -1 +1 @@ -2023/10/21-22:35:17.728173 7fdbe2ffe640 Delete type=3 #1 +2023/11/08-20:32:54.606554 7f38aaffe640 Delete type=3 #1 diff --git a/Data/systems/pf2e/packs/vehicles/MANIFEST-000004 b/Data/systems/pf2e/packs/vehicles/MANIFEST-000004 index 25cc7a32..93ac51ae 100644 Binary files a/Data/systems/pf2e/packs/vehicles/MANIFEST-000004 and b/Data/systems/pf2e/packs/vehicles/MANIFEST-000004 differ diff --git a/Data/systems/pf2e/pf2e.mjs b/Data/systems/pf2e/pf2e.mjs index 0402cd7a..a6f1a779 100644 --- a/Data/systems/pf2e/pf2e.mjs +++ b/Data/systems/pf2e/pf2e.mjs @@ -1,4 +1,9 @@ -var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __defProp2=Object.defineProperty,__getProtoOf=Object.getPrototypeOf,__reflectGet=Reflect.get,__defNormalProp=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__name2=__name((target,value)=>__defProp2(target,"name",{value,configurable:!0}),"__name"),__publicField=__name((obj,key,value)=>(__defNormalProp(obj,typeof key!="symbol"?key+"":key,value),value),"__publicField"),__accessCheck=__name((obj,member,msg)=>{if(!member.has(obj))throw TypeError("Cannot "+msg)},"__accessCheck"),__privateGet=__name((obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),"__privateGet"),__privateAdd=__name((obj,member,value)=>{if(member.has(obj))throw TypeError("Cannot add the same private member more than once");member instanceof WeakSet?member.add(obj):member.set(obj,value)},"__privateAdd"),__privateSet=__name((obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value),"__privateSet"),__privateMethod=__name((obj,member,method)=>(__accessCheck(obj,member,"access private method"),method),"__privateMethod"),__superGet=__name((cls,obj,key)=>__reflectGet(__getProtoOf(cls),key,obj),"__superGet"),_updateMigrationRecord,updateMigrationRecord_fn,_migrateDocuments,migrateDocuments_fn,_migrateItem,migrateItem_fn,_migrateActor,migrateActor_fn,_migrateWorldJournalEntry,migrateWorldJournalEntry_fn,_migrateWorldMacro,migrateWorldMacro_fn,_migrateWorldTable,migrateWorldTable_fn,_migrateSceneToken,migrateSceneToken_fn,_migrateUser,migrateUser_fn,_data,_diehardPromise,_featSlugs,_featsPromise,_IMAGE_PATHS,_regexp,_renameToWebP,renameToWebP_fn,_isABCK,isABCK_fn,_BASE_ARMORS,_MAGIC_ARMOR_TO_BASE,_BASE_WEAPONS,_isTrue,isTrue_fn,_testBinaryOp,testBinaryOp_fn,_testCompound,testCompound_fn,_binaryOperators,_imageOverrides,_sizeOverrides,_isTokenImageFlag,isTokenImageFlag_fn,_isTokenSizeFlag,isTokenSizeFlag_fn,_needsRuleElement,needsRuleElement_fn,_increasesByOne,_isClassFeature,isClassFeature_fn,_pathsToRemove,_isRemovableAE,isRemovableAE_fn,_isRemoveableChange,isRemoveableChange_fn,_fixClassKeyAbilities,fixClassKeyAbilities_fn,_isTokenSizeRE,isTokenSizeRE_fn,_isActorSizeAELike,isActorSizeAELike_fn,_isBracketedValue,isBracketedValue_fn,_setAncestryVision,setAncestryVision_fn,_resolveBracketedValue,resolveBracketedValue_fn,_coerceNumber,coerceNumber_fn,_traitsDictionary,traitsDictionary_get,_handleModeAffectingTrait,handleModeAffectingTrait_fn,_getDegreeAdjustment,getDegreeAdjustment_fn,_adjustDegreeOfSuccess,adjustDegreeOfSuccess_fn,_adjustDegreeByDieValue,adjustDegreeByDieValue_fn,_calculateDegreeOfSuccess,calculateDegreeOfSuccess_fn,_SKILL_LONG_FORM_PATH,_rewriteSkillLongFormPath,rewriteSkillLongFormPath_fn,_pathIsValid,pathIsValid_fn,_logChange,logChange_fn,_processEffects,processEffects_fn,_processAppearanceData,processAppearanceData_fn,_createMovementType,createMovementType_fn,_customLabel,_weapon,_resolveOptions,resolveOptions_fn,_actions,_lores,_prepareProficiencyRanks,prepareProficiencyRanks_fn,_prepareDCAdjustments,prepareDCAdjustments_fn,_generatePrompt,generatePrompt_fn,_htmlQueryTags,htmlQueryTags_fn,_formatLoreType,formatLoreType_fn,_formatActionType,formatActionType_fn,_getDC,getDC_fn,_constructCheck,constructCheck_fn,_renderFormula,renderFormula_fn,_prepareDamageTypes,prepareDamageTypes_fn,_getInputElements,getInputElements_fn,_disableScale,disableScale_fn,_reestablishPrototype,reestablishPrototype_fn,_disableVisionInputs,disableVisionInputs_fn,_drawBorder,drawBorder_fn,_drawTexture,drawTexture_fn,_drawLabel,drawLabel_fn,_showBordersHighlights,showBordersHighlights_get,_moveTime,_wheelListenerOptions,_onPreviewMouseMove,_onPreviewLeftClick,_onPreviewRightClick,_onPreviewMouseWheel,_squares,_prepareDerivedPerception,prepareDerivedPerception_fn,_getChoices,getChoices_fn,_filterTimeout,_getUpdateData,getUpdateData_fn,_search,search_fn,_onFilterResults,onFilterResults_fn,_updateIWR,updateIWR_fn,_sortableOnMoveData,_activateInventoryDragDrop,activateInventoryDragDrop_fn,_sortableOnMove,sortableOnMove_fn,_sortableOnEnd,sortableOnEnd_fn,_onClickDeleteItem,onClickDeleteItem_fn,_onClickBrowseEquipment,onClickBrowseEquipment_fn,_onClickCreateItem,onClickCreateItem_fn,_onClickSellAllTreasure,onClickSellAllTreasure_fn,_resolve,_originallyEnabled,_getModifierIcon,getModifierIcon_fn,_getTypeLabel,getTypeLabel_fn,_applyStackingRules,applyStackingRules_fn,_localize,localize_fn,_createTemplate,createTemplate_fn,_parseInlineParams,parseInlineParams_fn,_createCheck,createCheck_fn,_createSingleCheck,createSingleCheck_fn,_createDamageRoll,createDamageRoll_fn,_createActionOptions,createActionOptions_fn,_originallyEnabled2,_resolveSubstitutions,resolveSubstitutions_fn,_createTagFlavor,createTagFlavor_fn,_createResultFlavor,createResultFlavor_fn,_resolveCheckDC,resolveCheckDC_fn,_item,_resolve2,_action,_canSetAttribute,canSetAttribute_fn,_searchEngine,_getSpellFromEvent,getSpellFromEvent_fn,_onConfigureActor,onConfigureActor_fn,_onToggleSignatureSpell,onToggleSignatureSpell_fn,_onClickBrowseActions,onClickBrowseActions_fn,_onClickBrowseSpellCompendia,onClickBrowseSpellCompendia_fn,_abpEnabled,_createButtons,createButtons_fn,_calculateAncestryBoosts,calculateAncestryBoosts_fn,_calculateBackgroundBoosts,calculateBackgroundBoosts_fn,_calculateLeveledBoosts,calculateLeveledBoosts_fn,_getBoostFlawLabels,getBoostFlawLabels_fn,_updateRE,updateRE_fn,_blastConfigSchema,_blastInfusionSchema,_prepareBlastConfigs,prepareBlastConfigs_fn,_prepareBlastInfusion,prepareBlastInfusion_fn,_getBlastConfig,getBlastConfig_fn,_createModifiedItem,createModifiedItem_fn,_strengthModToDamage,strengthModToDamage_fn,_knownFormulas,_formulaQuantities,_prepareAbilities,prepareAbilities_fn,_prepareCraftingEntries,prepareCraftingEntries_fn,_getBlastData,getBlastData_fn,_activateBlastListeners,activateBlastListeners_fn,_onClickBrowseFeats,onClickBrowseFeats_fn,_onChangeAdjustStat,onChangeAdjustStat_fn,_onChangeAdjustItemStat,onChangeAdjustItemStat_fn,_onClickAdjustItemStat,onClickAdjustItemStat_fn,_getFeatSlotData,getFeatSlotData_fn,_sortFormulas,sortFormulas_fn,_strikeItemId,_strikeSlug,_strike,_elementTrait,_blasts,_getReach,getReach_fn,_isValid,isValid_fn,_constructWeapon,constructWeapon_fn,_defaultIcons,_setRollOptions,setRollOptions_fn,_prepareAC,prepareAC_fn,_prepareSenses,prepareSenses_fn,_prepareSize,prepareSize_fn,_prepareSpeeds,prepareSpeeds_fn,_prepareSkills,prepareSkills_fn,_prepareStrikes,prepareStrikes_fn,_prepareIWR,prepareIWR_fn,_suppressModifiers,suppressModifiers_fn,_filterModifier,filterModifier_fn,_suppressNotes,suppressNotes_fn,_resolveStrikeQueries,resolveStrikeQueries_fn,_resolve3,_setDefaultFlag,setDefaultFlag_fn,_choicesFromArray,choicesFromArray_fn,_choicesFromPath,choicesFromPath_fn,_choicesFromOwnedItems,choicesFromOwnedItems_fn,_choicesFromAttacks,choicesFromAttacks_fn,_getPreselection,getPreselection_fn,_setRollOption,setRollOption_fn,_getEffect,getEffect_fn,_isValidOverride,isValidOverride_fn,_resolvedBracketsIsValid,resolvedBracketsIsValid_fn,_validateForItem,_adjustCreatureShieldData,adjustCreatureShieldData_fn,_getNewInterval,getNewInterval_fn,_createDeferredEffect,createDeferredEffect_fn,_getOnDeleteActions,getOnDeleteActions_fn,_applyChoiceSelections,applyChoiceSelections_fn,_setGrantFlags,setGrantFlags_fn,_runGrantedItemPreCreates,runGrantedItemPreCreates_fn,_createInMemoryCondition,createInMemoryCondition_fn,_trackItem,trackItem_fn,_resolveOption,resolveOption_fn,_setFlag,setFlag_fn,_setRollOption2,setRollOption_fn2,_effect,_srcIsValid,srcIsValid_fn,_target,_resolve4,_cancelHandler,cancelHandler_fn,_checkRuleSource,checkRuleSource_fn,_activeTab,_getFormHelpers,getFormHelpers_fn,_effectsMap,_addEffect,addEffect_fn,_updateEffectsMap,updateEffectsMap_fn,_deleteEffect,deleteEffect_fn,_selectedRuleElementType,_editingRuleElementIndex,_rulesLastScrollTop,_ruleElementForms,_createRuleElementForms,createRuleElementForms_fn,_initialRefresh,_damageManager,_processDeletions,processDeletions_fn,_refreshSettings,refreshSettings_fn,_registerModuleTags,registerModuleTags_fn,_getConfigRecord,getConfigRecord_fn,_updateConfigRecords,updateConfigRecords_fn,_isFlatModifier,isFlatModifier_fn,_toRuleElement,toRuleElement_fn,_rationsSourceId,_rationsPromise,_isOldRations,isOldRations_fn,_getRationRefs,getRationRefs_fn,_migrateClass,migrateClass_fn,_migrateFeature,migrateFeature_fn,_isClassFeature2,isClassFeature_fn2,_isClassFeature3,isClassFeature_fn3,_isHeritageFeature,isHeritageFeature_fn,_officialAncestries,_heritagesWithoutAncestryInName,_ancestrySlugs,_heritageFromFeat,heritageFromFeat_fn,_explorersClothingVariants,_pathPattern,_hasWellFormedFeatType,hasWellFormedFeatType_fn,_needsTrait,needsTrait_fn,_hasBrokenThreshold,hasBrokenThreshold_fn,_shadowPromise,_cascadePromise,_isEffectTargetRE,isEffectTargetRE_fn,_toChoiceSet,toChoiceSet_fn,_loadedSpells,_isChoiceSetWithSelection,isChoiceSetWithSelection_fn,_newRules,newRules_fn,_toSkip,_hasThrownTrait,hasThrownTrait_fn,_cleanText,cleanText_fn,_updateEffect,updateEffect_fn,_updateFeat,updateFeat_fn,_vivaciousRules,vivaciousRules_get,_auraOfLife,_enlightenedPresence,_eternalBlessing,_marshalsAura,_findDamageDiceRE,findDamageDiceRE_fn,_isClassFeature4,isClassFeature_fn4,_athleticStrategist,athleticStrategist_get,_deviseAStratagem,deviseAStratagem_get,_ruffianPredicate,ruffianPredicate_get,_sneakAttackPredicate,sneakAttackPredicate_get,_updateSpeed,updateSpeed_fn,_suppressNoCrowbar,suppressNoCrowbar_get,_convertToUUIDs,convertToUUIDs_fn,_getRules,getRules_fn,_preciseStrikeRules,preciseStrikeRules_get,_finishingPrecisionRules,finishingPrecisionRules_get,_otherClassDCs,_isClassFeature5,isClassFeature_fn5,_critSpec,critSpec_get,_hands,hands_get,_convertLegacyData,convertLegacyData_fn,_isOldRawPredicate,isOldRawPredicate_fn,_isArrayChoiceSet,isArrayChoiceSet_fn,_isObjectChoiceSet,isObjectChoiceSet_fn,_shapeFeats,_flatFootedToggle,flatFootedToggle_get,_isFlatFootedToggle,isFlatFootedToggle_fn,_convertToEntry,convertToEntry_fn,_modifyFlag,modifyFlag_fn,_oldIdsPattern,_colorDarkvision,colorDarkvision_get,_AREA_TYPES,_isAreaType,isAreaType_fn,_hasDetails,hasDetails_fn,_pattern,_damageTypeLabelPattern,_updateDamageFormula,updateDamageFormula_fn,_automatonEnhancements,automatonEnhancements_get,_conditionPattern,_pattern2,_updateDamageFormula2,updateDamageFormula_fn2,_getWR,getWR_fn,_oldENmappings,_parseExceptions,parseExceptions_fn,_normalizeType,normalizeType_fn,_updateWeaponMaterialData,updateWeaponMaterialData_fn,_updateChoiceSet,updateChoiceSet_fn,_bomberSetFlags,bomberSetFlags_get,_chirurgeonSetFlags,chirurgeonSetFlags_get,_mutagenistSetFlags,mutagenistSetFlags_get,_toxicologistSetFlags,toxicologistSetFlags_get,_needsRE,needsRE_fn,_splashPattern1,_splashPattern2,_damagePatternSingle,_damagePatternPair,_cleanFormula,cleanFormula_fn,_buildSplashFormula,buildSplashFormula_fn,_buildDamageFormula,buildDamageFormula_fn,_updateDamageFormula3,updateDamageFormula_fn3,_rename,rename_fn,_removeLinks,removeLinks_fn,_cloisteredClericSetFlags,cloisteredClericSetFlags_get,_warpriestSetFlags,warpriestSetFlags_get,_updateCategoryData,updateCategoryData_fn,_rename2,rename_fn2,_wrapPredicate,wrapPredicate_fn,_replaceUUID,replaceUUID_fn,_replaceUUIDsInLinks,replaceUUIDsInLinks_fn,_updateUUIDs,updateUUIDs_fn,_idMap,_oldToNew,_oldNamePattern,_newName,_imgPattern,_aToAnUUIDPatern,_replace,replace_fn,_OLD_TO_NEW_LANGUAGES,_testHasOption,testHasOption_fn,_hasOldMaterialData,hasOldMaterialData_fn,_resilientRuneValues,_replaceStrings,replaceStrings_fn,_mightyBulwarkRules,mightyBulwarkRules_get,_defensePathPattern,_mvSchema,mvSchema_fn,_setPublicationData,setPublicationData_fn,_list,_finalizeDamage,finalizeDamage_fn,_excludeDamage,excludeDamage_fn,_strengthModToDamage2,strengthModToDamage_fn2,_check,_dc,_determineLabel,determineLabel_fn,_createBonusesAndPenalties,createBonusesAndPenalties_fn,_createShieldBonus,createShieldBonus_fn,_baseMax,_currentFilter,_lastClick,_onClickButton,onClickButton_fn,_rollActorSaves,rollActorSaves_fn,_onHoverIn,onHoverIn_fn,_onHoverOut,onHoverOut_fn,_initialized,_value,_actorStrength,actorStrength_get,_flattenNonStowing,flattenNonStowing_fn,_localize2,_initialize,initialize_fn,_handleTrickItem,handleTrickItem_fn,_assertEntryIsDocument,assertEntryIsDocument_fn,_getRitualData,getRitualData_fn,_idMap2,_slugMap,_templatePaths,_getActor,getActor_fn,_getSource,getSource_fn,_getTarget,getTarget_fn,_tokenName,tokenName_fn,_sendMessage,sendMessage_fn,_messageFlavor,messageFlavor_fn,_findBestLocation,findBestLocation_fn,_getChildSlots,getChildSlots_fn,_editingSettlements,_prepareSettlement,prepareSettlement_fn,_activateSettlementEvents,activateSettlementEvents_fn,_getFeatSlotData2,getFeatSlotData_fn2,_prepareAbilityBuilder,prepareAbilityBuilder_fn,_originalValue,_slider,_noRefreshHook,_hasRollOptionData,hasRollOptionData_fn,_createItemMacro,createItemMacro_fn,_createRollOptionToggleMacro,createRollOptionToggleMacro_fn,_draggingParty,_onDragHighlightFolderLike,onDragHighlightFolderLike_fn,_appendBrowseButton,appendBrowseButton_fn,_appendBrowseButton2,appendBrowseButton_fn2,_messageFromEvent,messageFromEvent_fn,_onClickDamageButton,onClickDamageButton_fn,_onClickRevertDamage,onClickRevertDamage_fn,_onClickShieldBlock,onClickShieldBlock_fn,_onClickSender,onClickSender_fn,_dragPreview,dragPreview_get,_onToggleTarget,onToggleTarget_fn,_onDropCombatant,onDropCombatant_fn,_setModuleArt,setModuleArt_fn,_getSources,getSources_fn,_createFilteredIndex,createFilteredIndex_fn,_loadSources,loadSources_fn,_getSourceFromDocument,getSourceFromDocument_fn,_domParser,_getRollTableResults,getRollTableResults_fn,_localizeCoins,_creatureTraits,_resetInitializedTabs,resetInitializedTabs_fn,_renderResultList,renderResultList_fn,_activateResultListeners,activateResultListeners_fn,_takePhysicalItem,takePhysicalItem_fn,_buyPhysicalItem,buyPhysicalItem_fn,_getPhysicalItem,getPhysicalItem_fn,_resetFilters,resetFilters_fn,_clearScrollLimit,clearScrollLimit_fn,_getRemainingDurationLabel,getRemainingDurationLabel_fn,_getEnrichedDescriptions,getEnrichedDescriptions_fn,_lastCombatantToken,_ICON_THEME_DIRS,_conditionSummaries,_activateListeners,activateListeners_fn,_updateStatusIcons,updateStatusIcons_fn,_showStatusLabel,showStatusLabel_fn,_setStatusValue,setStatusValue_fn,_toggleStatus,toggleStatus_fn,_createChatMessage,createChatMessage_fn,_action2,_cost,_description,_slug,_traits,_variants,_action3,_effect2,_action4,_difficultyClass,_modifiers,_notes,_rollOptions,_statistic,_insert,insert_fn,_removeExpired,removeExpired_fn,_getArtMap,getArtMap_fn,_isModuleArt,isModuleArt_fn,_retrieve,retrieve_fn,_deposit,deposit_fn,_getDepositSpaces,getDepositSpaces_fn,_prepareActions,prepareActions_fn,_prepareSaves,prepareSaves_fn,_identificationData,_padAttempts,padAttempts_fn,_prepareAbilities2,prepareAbilities_fn2,_prepareAlignment,prepareAlignment_fn,_prepareSkills2,prepareSkills_fn2,_prepareSaves2,prepareSaves_fn2,_onClickRollable,onClickRollable_fn,_rollAbility,rollAbility_fn,_prepareActions2,prepareActions_fn2,_onChangeSpellcastingEntry,onChangeSpellcastingEntry_fn,_prepareMembers,prepareMembers_fn,_prepareOverviewSummary,prepareOverviewSummary_fn,_getActorsThatUnderstand,getActorsThatUnderstand_fn,_renderRegions,renderRegions_fn,_isValidDrop,isValidDrop_fn,_formatSpellComponents,formatSpellComponents_fn,_prepareHeighteningLevels,prepareHeighteningLevels_fn,_activateRBVListeners,activateRBVListeners_fn;import{i as isNil,T as Tagify,p as pick$1,m as mapToObj,a as mapValues$1,o as omit,b as isObject$1,c as compact,k as keys,u as uniq,d as isEmpty,g as groupBy$1,e as equals,s as sortBy$1,S as Sortable,f as uniqBy,M as MiniSearch,h as difference,D as Duration,j as meanBy,E as EditorView,l as basicSetup,n as json,q as linter,r as keymap,t as indentWithTab,v as autocompletion,w as syntaxTree,x as jsonParseLinter,y as fromPairs,z as maxBy,A as sumBy,B as pipe,C as filter,F as map,I as Interval,G as DateTime,H as noUiSlider,P as PipsMode,J as findLast,K as omitBy}from"./vendor.mjs";const BabeleReady={listen(){Hooks.once("babele.ready",()=>{game.pf2e.ConditionManager.initialize(!0)})}},CanvasInit={listen:()=>{Hooks.on("canvasInit",async canvas2=>{SquareGrid.prototype.measureDistances=__name2(__name(function(segments,options={}){if(!options.gridSpaces)return BaseGrid.prototype.measureDistances.call(this,segments,options);let nDiagonal=0;const d=canvas2.dimensions;return segments.map(s=>{const r=s.ray,nx=Math.abs(Math.ceil(r.dx/d.size)),ny=Math.abs(Math.ceil(r.dy/d.size)),nd=Math.min(nx,ny),ns=Math.abs(ny-nx);nDiagonal+=nd;const nd10=Math.floor(nDiagonal/2)-Math.floor((nDiagonal-nd)/2);return(nd10*2+(nd-nd10)+ns)*canvas2.dimensions.distance})},"measureDistances"),"measureDistances")})}},_BaseStatistic=class{static{__name(this,"_BaseStatistic")}actor;slug;label;data;domains;modifiers;constructor(actor,data){this.actor=actor,this.slug=data.slug,this.label=game.i18n.localize(data.label).trim(),this.data={...data},this.domains=[...data.domains??=[]];const modifiers=[data.modifiers??[],extractModifiers(this.actor.synthetics,this.domains)].flat();if(this.modifiers=new StatisticModifier("",modifiers).modifiers.map(m=>m.clone()),this.domains.length>0){const options=this.createRollOptions();for(const modifier of this.modifiers)modifier.test(options)}}createRollOptions(domains=this.domains){return new Set(this.actor.getRollOptions(domains))}};__name2(_BaseStatistic,"BaseStatistic");let BaseStatistic=_BaseStatistic;const _MigrationRunnerBase=class{static{__name(this,"_MigrationRunnerBase")}constructor(migrations=[]){__privateAdd(this,_updateMigrationRecord),__publicField(this,"migrations"),this.migrations=migrations.sort((a,b)=>a.version-b.version)}needsMigration(currentVersion){return currentVersion@Check[${[type,Number.isInteger(dc)?`dc:${dc}`:null,traits.length?`traits:${traits.join(",")}`:null].concat(...extras).filter(p=>p).join("|")}]
`},"#constructCheck"),__name2(_CheckPromptDialog,"CheckPromptDialog");let CheckPromptDialog=_CheckPromptDialog;async function checkPrompt(options={}){new CheckPromptDialog(options.actors?{actors:options.actors}:{}).render(!0)}__name(checkPrompt,"checkPrompt"),__name2(checkPrompt,"checkPrompt");function buildRewards(...rewards){const[trained,expert,master,legendary]=rewards;return{1:new CoinsPF2e(trained),2:new CoinsPF2e(expert??trained),3:new CoinsPF2e(master??expert??trained),4:new CoinsPF2e(legendary??master??expert??trained)}}__name(buildRewards,"buildRewards"),__name2(buildRewards,"buildRewards");const earnIncomeTable={0:{failure:{cp:1},rewards:buildRewards({cp:5})},1:{failure:{cp:2},rewards:buildRewards({sp:2})},2:{failure:{cp:4},rewards:buildRewards({sp:3})},3:{failure:{cp:8},rewards:buildRewards({sp:5})},4:{failure:{sp:1},rewards:buildRewards({sp:7},{sp:8})},5:{failure:{sp:2},rewards:buildRewards({sp:9},{gp:1})},6:{failure:{sp:3},rewards:buildRewards({gp:1,sp:5},{gp:2})},7:{failure:{sp:4},rewards:buildRewards({gp:2},{gp:2,sp:5})},8:{failure:{sp:5},rewards:buildRewards({gp:2,sp:5},{gp:3})},9:{failure:{sp:6},rewards:buildRewards({gp:3},{gp:4})},10:{failure:{sp:7},rewards:buildRewards({gp:4},{gp:5},{gp:6})},11:{failure:{sp:8},rewards:buildRewards({gp:5},{gp:6},{gp:8})},12:{failure:{sp:9},rewards:buildRewards({gp:6},{gp:8},{gp:10})},13:{failure:{gp:1},rewards:buildRewards({gp:7},{gp:10},{gp:15})},14:{failure:{gp:1,sp:5},rewards:buildRewards({gp:8},{gp:15},{gp:20})},15:{failure:{gp:2},rewards:buildRewards({gp:10},{gp:20},{gp:28})},16:{failure:{gp:2,sp:5},rewards:buildRewards({gp:13},{gp:25},{gp:36},{gp:40})},17:{failure:{gp:3},rewards:buildRewards({gp:15},{gp:30},{gp:45},{gp:55})},18:{failure:{gp:4},rewards:buildRewards({gp:20},{gp:45},{gp:70},{gp:90})},19:{failure:{gp:6},rewards:buildRewards({gp:30},{gp:60},{gp:100},{gp:130})},20:{failure:{gp:8},rewards:buildRewards({gp:40},{gp:75},{gp:150},{gp:200})},21:{failure:{cp:0},rewards:buildRewards({gp:50},{gp:90},{gp:175},{gp:300})}};function getIncomeForLevel(level){const income=earnIncomeTable[Math.clamped(level,0,21)];return{failure:new CoinsPF2e(income.failure),rewards:income.rewards}}__name(getIncomeForLevel,"getIncomeForLevel"),__name2(getIncomeForLevel,"getIncomeForLevel");function applyIncomeOptions({result,options,level,proficiency}){options.useLoreAsExperiencedProfessional&&(result.degreeOfSuccess===DegreeOfSuccess.CRITICAL_FAILURE?(result.degreeOfSuccess=DegreeOfSuccess.FAILURE,result.rewards=new CoinsPF2e(getIncomeForLevel(level).failure)):result.degreeOfSuccess===DegreeOfSuccess.FAILURE&&proficiency!==1&&(result.rewards=new CoinsPF2e(result.rewards).scale(2)))}__name(applyIncomeOptions,"applyIncomeOptions"),__name2(applyIncomeOptions,"applyIncomeOptions");function earnIncome({level,days,rollBrief,proficiency,options,dc}){const degree=new DegreeOfSuccess(rollBrief,dc),result={rewards:new CoinsPF2e,degreeOfSuccess:degree.value};return degree.value===DegreeOfSuccess.CRITICAL_SUCCESS?result.rewards=getIncomeForLevel(level+1).rewards[proficiency]:degree.value===DegreeOfSuccess.SUCCESS?result.rewards=getIncomeForLevel(level).rewards[proficiency]:degree.value===DegreeOfSuccess.FAILURE&&(result.rewards=getIncomeForLevel(level).failure),applyIncomeOptions({result,options,level,proficiency}),{rewards:{perDay:result.rewards,combined:new CoinsPF2e(result.rewards).scale(days)},degreeOfSuccess:result.degreeOfSuccess,daysSpentWorking:days,level,dc,roll:degree.rollTotal}}__name(earnIncome,"earnIncome"),__name2(earnIncome,"earnIncome");function escapeHtml(text){const p=document.createElement("p");return p.innerText=text,p.innerHTML}__name(escapeHtml,"escapeHtml"),__name2(escapeHtml,"escapeHtml");function isExperiencedProfessional(actor){return actor.itemTypes.feat.some(i=>i.slug==="experienced-professional")}__name(isExperiencedProfessional,"isExperiencedProfessional"),__name2(isExperiencedProfessional,"isExperiencedProfessional");function degreeOfSuccessLabel(degreeIndex){const degreeSlug=DEGREE_OF_SUCCESS_STRINGS[degreeIndex];return game.i18n.localize(`PF2E.Check.Result.Degree.Check.${degreeSlug}`)}__name(degreeOfSuccessLabel,"degreeOfSuccessLabel"),__name2(degreeOfSuccessLabel,"degreeOfSuccessLabel");function coinsToString(coins,degreeOfSuccess){return degreeOfSuccess===0?"none":coins.toString()}__name(coinsToString,"coinsToString"),__name2(coinsToString,"coinsToString");function chatTemplate(skillName,earnIncomeResult){const degreeOfSuccess=degreeOfSuccessLabel(earnIncomeResult.degreeOfSuccess),payPerDay=escapeHtml(coinsToString(earnIncomeResult.rewards.perDay,earnIncomeResult.degreeOfSuccess)),combinedPay=escapeHtml(coinsToString(earnIncomeResult.rewards.combined,earnIncomeResult.degreeOfSuccess)),level=earnIncomeResult.level,daysSpentWorking=earnIncomeResult.daysSpentWorking,forDays=daysSpentWorking>1?`Salary for ${daysSpentWorking} days ${combinedPay}
`:"",successColor=earnIncomeResult.degreeOfSuccess>1?"darkgreen":"darkred",dc=earnIncomeResult.dc,roll=earnIncomeResult.roll;return` +var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __defProp2=Object.defineProperty,__getProtoOf=Object.getPrototypeOf,__reflectGet=Reflect.get,__defNormalProp=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__name2=__name((target,value)=>__defProp2(target,"name",{value,configurable:!0}),"__name"),__publicField=__name((obj,key,value)=>(__defNormalProp(obj,typeof key!="symbol"?key+"":key,value),value),"__publicField"),__accessCheck=__name((obj,member,msg)=>{if(!member.has(obj))throw TypeError("Cannot "+msg)},"__accessCheck"),__privateGet=__name((obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),"__privateGet"),__privateAdd=__name((obj,member,value)=>{if(member.has(obj))throw TypeError("Cannot add the same private member more than once");member instanceof WeakSet?member.add(obj):member.set(obj,value)},"__privateAdd"),__privateSet=__name((obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value),"__privateSet"),__privateMethod=__name((obj,member,method)=>(__accessCheck(obj,member,"access private method"),method),"__privateMethod"),__superGet=__name((cls,obj,key)=>__reflectGet(__getProtoOf(cls),key,obj),"__superGet"),_updateMigrationRecord,updateMigrationRecord_fn,_migrateDocuments,migrateDocuments_fn,_migrateItem,migrateItem_fn,_migrateActor,migrateActor_fn,_migrateWorldJournalEntry,migrateWorldJournalEntry_fn,_migrateWorldMacro,migrateWorldMacro_fn,_migrateWorldTable,migrateWorldTable_fn,_migrateSceneToken,migrateSceneToken_fn,_migrateUser,migrateUser_fn,_data,_diehardPromise,_featSlugs,_featsPromise,_IMAGE_PATHS,_regexp,_renameToWebP,renameToWebP_fn,_isABCK,isABCK_fn,_BASE_ARMORS,_MAGIC_ARMOR_TO_BASE,_BASE_WEAPONS,_isTrue,isTrue_fn,_testBinaryOp,testBinaryOp_fn,_testCompound,testCompound_fn,_binaryOperators,_imageOverrides,_sizeOverrides,_isTokenImageFlag,isTokenImageFlag_fn,_isTokenSizeFlag,isTokenSizeFlag_fn,_needsRuleElement,needsRuleElement_fn,_increasesByOne,_isClassFeature,isClassFeature_fn,_pathsToRemove,_isRemovableAE,isRemovableAE_fn,_isRemoveableChange,isRemoveableChange_fn,_fixClassKeyAbilities,fixClassKeyAbilities_fn,_isTokenSizeRE,isTokenSizeRE_fn,_isActorSizeAELike,isActorSizeAELike_fn,_isBracketedValue,isBracketedValue_fn,_setAncestryVision,setAncestryVision_fn,_resolveBracketedValue,resolveBracketedValue_fn,_coerceNumber,coerceNumber_fn,_traitsDictionary,traitsDictionary_get,_handleModeAffectingTrait,handleModeAffectingTrait_fn,_getDegreeAdjustment,getDegreeAdjustment_fn,_adjustDegreeOfSuccess,adjustDegreeOfSuccess_fn,_adjustDegreeByDieValue,adjustDegreeByDieValue_fn,_calculateDegreeOfSuccess,calculateDegreeOfSuccess_fn,_SKILL_LONG_FORM_PATH,_rewriteSkillLongFormPath,rewriteSkillLongFormPath_fn,_pathIsValid,pathIsValid_fn,_applyAELike,applyAELike_fn,_logChange,logChange_fn,_renderFormula,renderFormula_fn,_validateForItem,_adjustCreatureShieldData,adjustCreatureShieldData_fn,_getNewInterval,getNewInterval_fn,_processEffects,processEffects_fn,_processAppearanceData,processAppearanceData_fn,_createMovementType,createMovementType_fn,_customLabel,_weapon,_resolveOptions,resolveOptions_fn,_actions,_lores,_prepareProficiencyRanks,prepareProficiencyRanks_fn,_prepareDCAdjustments,prepareDCAdjustments_fn,_generatePrompt,generatePrompt_fn,_htmlQueryTags,htmlQueryTags_fn,_formatLoreType,formatLoreType_fn,_formatActionType,formatActionType_fn,_getDC,getDC_fn,_constructCheck,constructCheck_fn,_prepareDamageTypes,prepareDamageTypes_fn,_getInputElements,getInputElements_fn,_disableScale,disableScale_fn,_reestablishPrototype,reestablishPrototype_fn,_disableVisionInputs,disableVisionInputs_fn,_drawBorder,drawBorder_fn,_drawTexture,drawTexture_fn,_drawLabel,drawLabel_fn,_showBordersHighlights,showBordersHighlights_get,_moveTime,_wheelListenerOptions,_onPreviewMouseMove,_onPreviewLeftClick,_onPreviewRightClick,_onPreviewMouseWheel,_squares,_prepareDerivedPerception,prepareDerivedPerception_fn,_getChoices,getChoices_fn,_filterTimeout,_getUpdateData,getUpdateData_fn,_search,search_fn,_onFilterResults,onFilterResults_fn,_updateIWR,updateIWR_fn,_sortableOnMoveData,_activateInventoryDragDrop,activateInventoryDragDrop_fn,_sortableOnMove,sortableOnMove_fn,_sortableOnEnd,sortableOnEnd_fn,_onClickDeleteItem,onClickDeleteItem_fn,_onClickBrowseEquipment,onClickBrowseEquipment_fn,_onClickCreateItem,onClickCreateItem_fn,_onClickSellAllTreasure,onClickSellAllTreasure_fn,_resolve,_originallyEnabled,_getModifierIcon,getModifierIcon_fn,_getTypeLabel,getTypeLabel_fn,_applyStackingRules,applyStackingRules_fn,_localize,localize_fn,_createTemplate,createTemplate_fn,_parseInlineParams,parseInlineParams_fn,_createCheck,createCheck_fn,_createSingleCheck,createSingleCheck_fn,_createDamageRoll,createDamageRoll_fn,_createActionOptions,createActionOptions_fn,_originallyEnabled2,_resolveSubstitutions,resolveSubstitutions_fn,_createTagFlavor,createTagFlavor_fn,_createResultFlavor,createResultFlavor_fn,_resolveCheckDC,resolveCheckDC_fn,_item,_resolve2,_action,_canSetAttribute,canSetAttribute_fn,_searchEngine,_getSpellFromEvent,getSpellFromEvent_fn,_onConfigureActor,onConfigureActor_fn,_onToggleSignatureSpell,onToggleSignatureSpell_fn,_onClickBrowseActions,onClickBrowseActions_fn,_onClickBrowseSpellCompendia,onClickBrowseSpellCompendia_fn,_abpEnabled,_createButtons,createButtons_fn,_calculateAncestryBoosts,calculateAncestryBoosts_fn,_calculateBackgroundBoosts,calculateBackgroundBoosts_fn,_calculateLeveledBoosts,calculateLeveledBoosts_fn,_getBoostFlawLabels,getBoostFlawLabels_fn,_updateRE,updateRE_fn,_blastConfigSchema,_blastInfusionSchema,_prepareBlastConfigs,prepareBlastConfigs_fn,_prepareBlastInfusion,prepareBlastInfusion_fn,_getBlastConfig,getBlastConfig_fn,_createModifiedItem,createModifiedItem_fn,_strengthModToDamage,strengthModToDamage_fn,_knownFormulas,_formulaQuantities,_prepareAbilities,prepareAbilities_fn,_prepareCraftingEntries,prepareCraftingEntries_fn,_getBlastData,getBlastData_fn,_activateBlastListeners,activateBlastListeners_fn,_onClickBrowseFeats,onClickBrowseFeats_fn,_onChangeAdjustStat,onChangeAdjustStat_fn,_onChangeAdjustItemStat,onChangeAdjustItemStat_fn,_onClickAdjustItemStat,onClickAdjustItemStat_fn,_getFeatSlotData,getFeatSlotData_fn,_sortFormulas,sortFormulas_fn,_strikeItemId,_strikeSlug,_strike,_elementTrait,_blasts,_getReach,getReach_fn,_isValid,isValid_fn,_constructWeapon,constructWeapon_fn,_defaultIcons,_setRollOptions,setRollOptions_fn,_prepareAC,prepareAC_fn,_prepareSenses,prepareSenses_fn,_prepareSize,prepareSize_fn,_prepareSpeeds,prepareSpeeds_fn,_prepareSkills,prepareSkills_fn,_prepareStrikes,prepareStrikes_fn,_prepareIWR,prepareIWR_fn,_suppressModifiers,suppressModifiers_fn,_filterModifier,filterModifier_fn,_suppressNotes,suppressNotes_fn,_resolveStrikeQueries,resolveStrikeQueries_fn,_resolve3,_setDefaultFlag,setDefaultFlag_fn,_choicesFromArray,choicesFromArray_fn,_choicesFromPath,choicesFromPath_fn,_choicesFromOwnedItems,choicesFromOwnedItems_fn,_choicesFromAttacks,choicesFromAttacks_fn,_getPreselection,getPreselection_fn,_setRollOption,setRollOption_fn,_getEffect,getEffect_fn,_isValidOverride,isValidOverride_fn,_resolvedBracketsIsValid,resolvedBracketsIsValid_fn,_createDeferredEffect,createDeferredEffect_fn,_getOnDeleteActions,getOnDeleteActions_fn,_applyChoicePreselections,applyChoicePreselections_fn,_setGrantFlags,setGrantFlags_fn,_runGrantedItemPreCreates,runGrantedItemPreCreates_fn,_createInMemoryCondition,createInMemoryCondition_fn,_trackItem,trackItem_fn,_applyAlteration,applyAlteration_fn,_resolveOption,resolveOption_fn,_setFlag,setFlag_fn,_setRollOption2,setRollOption_fn2,_effect,_srcIsValid,srcIsValid_fn,_target,_resolve4,_cancelHandler,cancelHandler_fn,_checkRuleSource,checkRuleSource_fn,_activeTab,_getFormHelpers,getFormHelpers_fn,_effectsMap,_addEffect,addEffect_fn,_updateEffectsMap,updateEffectsMap_fn,_deleteEffect,deleteEffect_fn,_selectedRuleElementType,_editingRuleElementIndex,_rulesLastScrollTop,_ruleElementForms,_createRuleElementForms,createRuleElementForms_fn,_initialRefresh,_damageManager,_processDeletions,processDeletions_fn,_refreshSettings,refreshSettings_fn,_registerModuleTags,registerModuleTags_fn,_getConfigRecord,getConfigRecord_fn,_updateConfigRecords,updateConfigRecords_fn,_isFlatModifier,isFlatModifier_fn,_toRuleElement,toRuleElement_fn,_rationsSourceId,_rationsPromise,_isOldRations,isOldRations_fn,_getRationRefs,getRationRefs_fn,_migrateClass,migrateClass_fn,_migrateFeature,migrateFeature_fn,_isClassFeature2,isClassFeature_fn2,_isClassFeature3,isClassFeature_fn3,_isHeritageFeature,isHeritageFeature_fn,_officialAncestries,_heritagesWithoutAncestryInName,_ancestrySlugs,_heritageFromFeat,heritageFromFeat_fn,_explorersClothingVariants,_pathPattern,_hasWellFormedFeatType,hasWellFormedFeatType_fn,_needsTrait,needsTrait_fn,_hasBrokenThreshold,hasBrokenThreshold_fn,_shadowPromise,_cascadePromise,_isEffectTargetRE,isEffectTargetRE_fn,_toChoiceSet,toChoiceSet_fn,_loadedSpells,_isChoiceSetWithSelection,isChoiceSetWithSelection_fn,_newRules,newRules_fn,_toSkip,_hasThrownTrait,hasThrownTrait_fn,_cleanText,cleanText_fn,_updateEffect,updateEffect_fn,_updateFeat,updateFeat_fn,_vivaciousRules,vivaciousRules_get,_auraOfLife,_enlightenedPresence,_eternalBlessing,_marshalsAura,_findDamageDiceRE,findDamageDiceRE_fn,_isClassFeature4,isClassFeature_fn4,_athleticStrategist,athleticStrategist_get,_deviseAStratagem,deviseAStratagem_get,_ruffianPredicate,ruffianPredicate_get,_sneakAttackPredicate,sneakAttackPredicate_get,_updateSpeed,updateSpeed_fn,_suppressNoCrowbar,suppressNoCrowbar_get,_convertToUUIDs,convertToUUIDs_fn,_getRules,getRules_fn,_preciseStrikeRules,preciseStrikeRules_get,_finishingPrecisionRules,finishingPrecisionRules_get,_otherClassDCs,_isClassFeature5,isClassFeature_fn5,_critSpec,critSpec_get,_hands,hands_get,_convertLegacyData,convertLegacyData_fn,_isOldRawPredicate,isOldRawPredicate_fn,_isArrayChoiceSet,isArrayChoiceSet_fn,_isObjectChoiceSet,isObjectChoiceSet_fn,_shapeFeats,_flatFootedToggle,flatFootedToggle_get,_isFlatFootedToggle,isFlatFootedToggle_fn,_convertToEntry,convertToEntry_fn,_modifyFlag,modifyFlag_fn,_oldIdsPattern,_colorDarkvision,colorDarkvision_get,_AREA_TYPES,_isAreaType,isAreaType_fn,_hasDetails,hasDetails_fn,_pattern,_damageTypeLabelPattern,_updateDamageFormula,updateDamageFormula_fn,_automatonEnhancements,automatonEnhancements_get,_conditionPattern,_pattern2,_updateDamageFormula2,updateDamageFormula_fn2,_getWR,getWR_fn,_oldENmappings,_parseExceptions,parseExceptions_fn,_normalizeType,normalizeType_fn,_updateWeaponMaterialData,updateWeaponMaterialData_fn,_updateChoiceSet,updateChoiceSet_fn,_bomberSetFlags,bomberSetFlags_get,_chirurgeonSetFlags,chirurgeonSetFlags_get,_mutagenistSetFlags,mutagenistSetFlags_get,_toxicologistSetFlags,toxicologistSetFlags_get,_needsRE,needsRE_fn,_splashPattern1,_splashPattern2,_damagePatternSingle,_damagePatternPair,_cleanFormula,cleanFormula_fn,_buildSplashFormula,buildSplashFormula_fn,_buildDamageFormula,buildDamageFormula_fn,_updateDamageFormula3,updateDamageFormula_fn3,_rename,rename_fn,_removeLinks,removeLinks_fn,_cloisteredClericSetFlags,cloisteredClericSetFlags_get,_warpriestSetFlags,warpriestSetFlags_get,_updateCategoryData,updateCategoryData_fn,_rename2,rename_fn2,_wrapPredicate,wrapPredicate_fn,_replaceUUID,replaceUUID_fn,_replaceUUIDsInLinks,replaceUUIDsInLinks_fn,_updateUUIDs,updateUUIDs_fn,_idMap,_oldToNew,_oldNamePattern,_newName,_imgPattern,_aToAnUUIDPatern,_replace,replace_fn,_OLD_TO_NEW_LANGUAGES,_testHasOption,testHasOption_fn,_hasOldMaterialData,hasOldMaterialData_fn,_resilientRuneValues,_replaceStrings,replaceStrings_fn,_mightyBulwarkRules,mightyBulwarkRules_get,_defensePathPattern,_mvSchema,mvSchema_fn,_setPublicationData,setPublicationData_fn,_list,_excludeDamage,excludeDamage_fn,_strengthModToDamage2,strengthModToDamage_fn2,_check,_dc,_determineLabel,determineLabel_fn,_createBonusesAndPenalties,createBonusesAndPenalties_fn,_createShieldBonus,createShieldBonus_fn,_baseMax,_lastClick,_onClickButton,onClickButton_fn,_rollActorSaves,rollActorSaves_fn,_onHoverIn,onHoverIn_fn,_onHoverOut,onHoverOut_fn,_initialized,_value,_actorStrength,actorStrength_get,_flattenNonStowing,flattenNonStowing_fn,_localize2,_initialize,initialize_fn,_handleTrickItem,handleTrickItem_fn,_assertEntryIsDocument,assertEntryIsDocument_fn,_getRitualData,getRitualData_fn,_slugMap,_templatePaths,_getActor,getActor_fn,_getSource,getSource_fn,_getTarget,getTarget_fn,_tokenName,tokenName_fn,_sendMessage,sendMessage_fn,_messageFlavor,messageFlavor_fn,_findBestLocation,findBestLocation_fn,_getChildSlots,getChildSlots_fn,_editingSettlements,_prepareSettlement,prepareSettlement_fn,_activateSettlementEvents,activateSettlementEvents_fn,_getFeatSlotData2,getFeatSlotData_fn2,_prepareAbilityBuilder,prepareAbilityBuilder_fn,_originalValue,_slider,_noRefreshHook,_hasRollOptionData,hasRollOptionData_fn,_createItemMacro,createItemMacro_fn,_createRollOptionToggleMacro,createRollOptionToggleMacro_fn,_extraFolders,_renderedOnce,_draggingParty,_onDragHighlightFolderLike,onDragHighlightFolderLike_fn,_appendBrowseButton,appendBrowseButton_fn,_appendBrowseButton2,appendBrowseButton_fn2,_messageFromEvent,messageFromEvent_fn,_onClickDamageButton,onClickDamageButton_fn,_onClickRevertDamage,onClickRevertDamage_fn,_onClickShieldBlock,onClickShieldBlock_fn,_onClickSender,onClickSender_fn,_dragPreview,dragPreview_get,_onToggleTarget,onToggleTarget_fn,_onDropCombatant,onDropCombatant_fn,_setModuleArt,setModuleArt_fn,_getSources,getSources_fn,_createFilteredIndex,createFilteredIndex_fn,_loadSources,loadSources_fn,_getSourceFromDocument,getSourceFromDocument_fn,_domParser,_getRollTableResults,getRollTableResults_fn,_localizeCoins,_creatureTraits,_resetInitializedTabs,resetInitializedTabs_fn,_renderResultList,renderResultList_fn,_activateResultListeners,activateResultListeners_fn,_takePhysicalItem,takePhysicalItem_fn,_buyPhysicalItem,buyPhysicalItem_fn,_getPhysicalItem,getPhysicalItem_fn,_resetFilters,resetFilters_fn,_clearScrollLimit,clearScrollLimit_fn,_getRemainingDurationLabel,getRemainingDurationLabel_fn,_getEnrichedDescriptions,getEnrichedDescriptions_fn,_lastCombatantToken,_ICON_THEME_DIRS,_conditionSummaries,_activateListeners,activateListeners_fn,_updateStatusIcons,updateStatusIcons_fn,_showStatusLabel,showStatusLabel_fn,_setStatusValue,setStatusValue_fn,_toggleStatus,toggleStatus_fn,_createChatMessage,createChatMessage_fn,_action2,_cost,_description,_slug,_traits,_variants,_action3,_effect2,_action4,_difficultyClass,_modifiers,_notes,_rollOptions,_statistic,_insert,insert_fn,_removeExpired,removeExpired_fn,_getArtMap,getArtMap_fn,_isModuleArt,isModuleArt_fn,_isRemigrating,_retrieve,retrieve_fn,_deposit,deposit_fn,_getDepositSpaces,getDepositSpaces_fn,_prepareActions,prepareActions_fn,_prepareSaves,prepareSaves_fn,_identificationData,_padAttempts,padAttempts_fn,_prepareAbilities2,prepareAbilities_fn2,_prepareAlignment,prepareAlignment_fn,_prepareSkills2,prepareSkills_fn2,_prepareSaves2,prepareSaves_fn2,_onClickRollable,onClickRollable_fn,_rollAbility,rollAbility_fn,_prepareActions2,prepareActions_fn2,_onChangeSpellcastingEntry,onChangeSpellcastingEntry_fn,_prepareMembers,prepareMembers_fn,_prepareOverviewSummary,prepareOverviewSummary_fn,_getActorsThatUnderstand,getActorsThatUnderstand_fn,_renderRegions,renderRegions_fn,_isValidDrop,isValidDrop_fn,_getOverlayFromElement,getOverlayFromElement_fn,_getDefaultProperty,getDefaultProperty_fn,_formatSpellComponents,formatSpellComponents_fn,_prepareHeighteningLevels,prepareHeighteningLevels_fn,_activateRBVListeners,activateRBVListeners_fn;import{i as isNil,T as Tagify,u as uniq,c as compact,p as pick$1,m as mapToObj,a as mapValues$1,o as omit,b as isObject$1,k as keys,g as groupBy$1,D as Duration,d as isEmpty,e as equals,s as sortBy$1,S as Sortable,f as pipe,h as map,j as filter,l as uniqBy,M as MiniSearch,n as difference,q as meanBy,E as EditorView,r as basicSetup,t as json,v as linter,w as keymap,x as indentWithTab,y as autocompletion,z as syntaxTree,A as jsonParseLinter,B as fromPairs,C as maxBy,U as UUIDv5,F as sumBy,I as Interval,G as DateTime,H as noUiSlider,P as PipsMode,J as findLast,K as omitBy}from"./vendor.mjs";const BabeleReady={listen(){Hooks.once("babele.ready",()=>{game.pf2e.ConditionManager.initialize(!0)})}},CanvasInit={listen:()=>{Hooks.on("canvasInit",async canvas2=>{SquareGrid.prototype.measureDistances=__name2(__name(function(segments,options={}){if(!options.gridSpaces)return BaseGrid.prototype.measureDistances.call(this,segments,options);let nDiagonal=0;const d=canvas2.dimensions;return segments.map(s=>{const r=s.ray,nx=Math.abs(Math.ceil(r.dx/d.size)),ny=Math.abs(Math.ceil(r.dy/d.size)),nd=Math.min(nx,ny),ns=Math.abs(ny-nx);nDiagonal+=nd;const nd10=Math.floor(nDiagonal/2)-Math.floor((nDiagonal-nd)/2);return(nd10*2+(nd-nd10)+ns)*canvas2.dimensions.distance})},"measureDistances"),"measureDistances")})}},_BaseStatistic=class{static{__name(this,"_BaseStatistic")}actor;slug;label;data;domains;modifiers;constructor(actor,data){this.actor=actor,this.slug=data.slug,this.label=game.i18n.localize(data.label).trim(),this.data={...data},this.domains=[...data.domains??=[]];const modifiers=[data.modifiers??[],extractModifiers(this.actor.synthetics,this.domains)].flat();if(this.modifiers=new StatisticModifier("",modifiers).modifiers.map(m=>m.clone()),this.domains.length>0){const options=this.createRollOptions();for(const modifier of this.modifiers)modifier.test(options)}}createRollOptions(domains=this.domains){return new Set(this.actor.getRollOptions(domains))}};__name2(_BaseStatistic,"BaseStatistic");let BaseStatistic=_BaseStatistic;const _MigrationRunnerBase=class{static{__name(this,"_MigrationRunnerBase")}constructor(migrations=[]){__privateAdd(this,_updateMigrationRecord),__publicField(this,"migrations"),this.migrations=migrations.sort((a,b)=>a.version-b.version)}needsMigration(currentVersion){return currentVersion@Check[${[type,Number.isInteger(dc)?`dc:${dc}`:null,traits.length?`traits:${traits.join(",")}`:null].concat(...extras).filter(p=>p).join("|")}]
`},"#constructCheck"),__name2(_CheckPromptDialog,"CheckPromptDialog");let CheckPromptDialog=_CheckPromptDialog;async function checkPrompt(options={}){new CheckPromptDialog(options.actors?{actors:options.actors}:{}).render(!0)}__name(checkPrompt,"checkPrompt"),__name2(checkPrompt,"checkPrompt");function buildRewards(...rewards){const[trained,expert,master,legendary]=rewards;return{1:new CoinsPF2e(trained),2:new CoinsPF2e(expert??trained),3:new CoinsPF2e(master??expert??trained),4:new CoinsPF2e(legendary??master??expert??trained)}}__name(buildRewards,"buildRewards"),__name2(buildRewards,"buildRewards");const earnIncomeTable={0:{failure:{cp:1},rewards:buildRewards({cp:5})},1:{failure:{cp:2},rewards:buildRewards({sp:2})},2:{failure:{cp:4},rewards:buildRewards({sp:3})},3:{failure:{cp:8},rewards:buildRewards({sp:5})},4:{failure:{sp:1},rewards:buildRewards({sp:7},{sp:8})},5:{failure:{sp:2},rewards:buildRewards({sp:9},{gp:1})},6:{failure:{sp:3},rewards:buildRewards({gp:1,sp:5},{gp:2})},7:{failure:{sp:4},rewards:buildRewards({gp:2},{gp:2,sp:5})},8:{failure:{sp:5},rewards:buildRewards({gp:2,sp:5},{gp:3})},9:{failure:{sp:6},rewards:buildRewards({gp:3},{gp:4})},10:{failure:{sp:7},rewards:buildRewards({gp:4},{gp:5},{gp:6})},11:{failure:{sp:8},rewards:buildRewards({gp:5},{gp:6},{gp:8})},12:{failure:{sp:9},rewards:buildRewards({gp:6},{gp:8},{gp:10})},13:{failure:{gp:1},rewards:buildRewards({gp:7},{gp:10},{gp:15})},14:{failure:{gp:1,sp:5},rewards:buildRewards({gp:8},{gp:15},{gp:20})},15:{failure:{gp:2},rewards:buildRewards({gp:10},{gp:20},{gp:28})},16:{failure:{gp:2,sp:5},rewards:buildRewards({gp:13},{gp:25},{gp:36},{gp:40})},17:{failure:{gp:3},rewards:buildRewards({gp:15},{gp:30},{gp:45},{gp:55})},18:{failure:{gp:4},rewards:buildRewards({gp:20},{gp:45},{gp:70},{gp:90})},19:{failure:{gp:6},rewards:buildRewards({gp:30},{gp:60},{gp:100},{gp:130})},20:{failure:{gp:8},rewards:buildRewards({gp:40},{gp:75},{gp:150},{gp:200})},21:{failure:{cp:0},rewards:buildRewards({gp:50},{gp:90},{gp:175},{gp:300})}};function getIncomeForLevel(level){const income=earnIncomeTable[Math.clamped(level,0,21)];return{failure:new CoinsPF2e(income.failure),rewards:income.rewards}}__name(getIncomeForLevel,"getIncomeForLevel"),__name2(getIncomeForLevel,"getIncomeForLevel");function applyIncomeOptions({result,options,level,proficiency}){options.useLoreAsExperiencedProfessional&&(result.degreeOfSuccess===DegreeOfSuccess.CRITICAL_FAILURE?(result.degreeOfSuccess=DegreeOfSuccess.FAILURE,result.rewards=new CoinsPF2e(getIncomeForLevel(level).failure)):result.degreeOfSuccess===DegreeOfSuccess.FAILURE&&proficiency!==1&&(result.rewards=new CoinsPF2e(result.rewards).scale(2)))}__name(applyIncomeOptions,"applyIncomeOptions"),__name2(applyIncomeOptions,"applyIncomeOptions");function earnIncome({level,days,rollBrief,proficiency,options,dc}){const degree=new DegreeOfSuccess(rollBrief,dc),result={rewards:new CoinsPF2e,degreeOfSuccess:degree.value};return degree.value===DegreeOfSuccess.CRITICAL_SUCCESS?result.rewards=getIncomeForLevel(level+1).rewards[proficiency]:degree.value===DegreeOfSuccess.SUCCESS?result.rewards=getIncomeForLevel(level).rewards[proficiency]:degree.value===DegreeOfSuccess.FAILURE&&(result.rewards=getIncomeForLevel(level).failure),applyIncomeOptions({result,options,level,proficiency}),{rewards:{perDay:result.rewards,combined:new CoinsPF2e(result.rewards).scale(days)},degreeOfSuccess:result.degreeOfSuccess,daysSpentWorking:days,level,dc,roll:degree.rollTotal}}__name(earnIncome,"earnIncome"),__name2(earnIncome,"earnIncome");function escapeHtml(text){const p=document.createElement("p");return p.innerText=text,p.innerHTML}__name(escapeHtml,"escapeHtml"),__name2(escapeHtml,"escapeHtml");function isExperiencedProfessional(actor){return actor.itemTypes.feat.some(i=>i.slug==="experienced-professional")}__name(isExperiencedProfessional,"isExperiencedProfessional"),__name2(isExperiencedProfessional,"isExperiencedProfessional");function degreeOfSuccessLabel(degreeIndex){const degreeSlug=DEGREE_OF_SUCCESS_STRINGS[degreeIndex];return game.i18n.localize(`PF2E.Check.Result.Degree.Check.${degreeSlug}`)}__name(degreeOfSuccessLabel,"degreeOfSuccessLabel"),__name2(degreeOfSuccessLabel,"degreeOfSuccessLabel");function coinsToString(coins,degreeOfSuccess){return degreeOfSuccess===0?"none":coins.toString()}__name(coinsToString,"coinsToString"),__name2(coinsToString,"coinsToString");function chatTemplate(skillName,earnIncomeResult){const degreeOfSuccess=degreeOfSuccessLabel(earnIncomeResult.degreeOfSuccess),payPerDay=escapeHtml(coinsToString(earnIncomeResult.rewards.perDay,earnIncomeResult.degreeOfSuccess)),combinedPay=escapeHtml(coinsToString(earnIncomeResult.rewards.combined,earnIncomeResult.degreeOfSuccess)),level=earnIncomeResult.level,daysSpentWorking=earnIncomeResult.daysSpentWorking,forDays=daysSpentWorking>1?`Salary for ${daysSpentWorking} days ${combinedPay}
`:"",successColor=earnIncomeResult.degreeOfSuccess>1?"darkgreen":"darkred",dc=earnIncomeResult.dc,roll=earnIncomeResult.roll;return`${game.i18n.format("PF2E.DeleteQuestion",{name:`"${item.name}"`})}
`}))&&(await item.delete(),$(element).slideUp(200,()=>this.render(!1)))}_canDragStart(selector){return this.isLootSheet?!0:super._canDragStart(selector)}_canDragDrop(selector){return this.isLootSheet?!0:super._canDragDrop(selector)}_onDragStart(event){if(!(event.target instanceof HTMLElement)||!event.dataTransfer)return;const isContentLink=event.target.classList.contains("content-link"),isPersistent="persistent"in event.target.dataset;if(event.target!==event.currentTarget&&(isContentLink||isPersistent))return;const targetElement=event.currentTarget,previewElement=htmlClosest(targetElement,".item");if(previewElement&&targetElement&&targetElement!==previewElement){const{x,y}=previewElement.getBoundingClientRect();event.dataTransfer.setDragImage(previewElement,event.pageX-x,event.pageY-y)}const itemId=previewElement?.dataset.itemId,item=this.actor.items.get(itemId??""),baseDragData={actorId:this.actor.id,actorUUID:this.actor.uuid,sceneId:canvas.scene?.id??null,tokenId:this.actor.token?.id??null,...item?.toDragData()};previewElement?.dataset.isFormula&&(baseDragData.isFormula=!0,baseDragData.entrySelector=previewElement.dataset.entrySelector);const supplementalData=(()=>{const actionIndex=previewElement?.dataset.actionIndex;if(actionIndex)return"itemType"in baseDragData&&baseDragData.itemType==="melee"?{index:Number(actionIndex)}:{type:"Action",index:Number(actionIndex)};const elementTrait=previewElement?.dataset.element;if(elementTrait)return{type:"Action",elementTrait};const label=previewElement?.innerText.trim(),rollOptionData=previewElement?.dataset??{};return item&&label&&rollOptionData.domain&&rollOptionData.option?{type:"RollOption",label,...rollOptionData}:baseDragData.isFormula?{pf2e:{type:"CraftingFormula",itemUuid:itemId}}:null})();event.dataTransfer.setData("text/plain",JSON.stringify({...baseDragData,...supplementalData}))}async emulateItemDrop(data){const event=new DragEvent("drop",{altKey:game.keyboard.isModifierActive("Alt")});return this._onDropItem(event,data)}async _onDropItem(event,data){event.preventDefault();const item=await ItemPF2e.fromDropData(data);return item?item.actor?.uuid===this.actor.uuid?data.fromInventory?[]:this._onSortItem(event,item.toObject()):item.actor&&item.isOfType("physical")?(await this.moveItemBetweenActors(event,item.actor.id,item.actor?.token?.id??null,this.actor.id,this.actor.token?.id??null,item.id),[item]):this._handleDroppedItem(event,item,data):[]}async _handleDroppedItem(event,item,data){const{actor}=this,itemSource=item.toObject(),mystified=game.user.isGM&&event.altKey;mystified&&itemSource.type==="effect"&&(itemSource.system.unidentified=!0),mystified&&item.isOfType("physical")&&isPhysicalData(itemSource)&&(itemSource.system.identification.unidentified=item.getMystifiedData("unidentified"),itemSource.system.identification.status="unidentified");const containerAttribute=htmlClosest(event.target,".item-container")?.dataset.containerType,dropContainerType=this._tabs[0]?.active==="inventory"&&!containerAttribute?"actorInventory":containerAttribute,craftingTab=this._tabs[0]?.active==="crafting";if(item.isOfType("spell")&&itemSource.type==="spell")return item.isRitual?this._onDropItemCreate(item.clone().toObject()):dropContainerType==="actorInventory"&&itemSource.system.level.value>0?(new CastingItemCreateDialog(actor,{},async(heightenedLevel,itemType,spell)=>{const createdItem=await createConsumableFromSpell(spell,{type:itemType,heightenedLevel,mystified});await this._onDropItemCreate(createdItem)},item).render(!0),[item]):[];if(itemSource.type==="spellcastingEntry")return[];if(itemSource.type==="condition"){const value=data.value;return typeof value=="number"&&itemSource.system.value.isValued&&(itemSource.system.value.value=value),actor.canUserModify(game.user,"update")?[await actor.increaseCondition(itemSource.system.slug,{value})??[]].flat():(ui.notifications.error("PF2E.ErrorMessage.NoUpdatePermission",{localize:!0}),[])}else if(itemIsOfType(itemSource,"affliction","effect")){const{level,value,context}=data;typeof level=="number"&&level>=0&&(itemSource.system.level.value=Math.floor(level)),itemSource.type==="effect"&&itemSource.system.badge?.type==="counter"&&typeof value=="number"&&(itemSource.system.badge.value=value),itemSource.system.context=context??null;const originItem=fromUuidSync(context?.origin.item??"");itemSource.system.traits?.value.length===0&&originItem instanceof SpellPF2e&&itemSource.system.traits.value.push(...originItem.traits)}else if(item.isOfType("physical")&&actor.isOfType("character")&&craftingTab){const actorFormulas=deepClone(actor.system.crafting.formulas);return actorFormulas.some(f=>f.uuid===item.uuid)||(actorFormulas.push({uuid:item.uuid}),await actor.update({"system.crafting.formulas":actorFormulas})),[item]}if(isPhysicalData(itemSource)){const containerId=htmlClosest(event.target,"[data-item-is-container=true]")?.dataset.itemId?.trim()||null;this.actor.itemTypes.backpack.find(container2=>container2.id===containerId)?(itemSource.system.containerId=containerId,itemSource.system.equipped.carryType="stowed"):itemSource.system.equipped.carryType="worn",data?.uuid?.startsWith("Compendium")&&itemSource.type!=="treasure"&&!["med","sm"].includes(actor.size)&&actor.isOfType("creature")&&(itemSource.system.size=actor.size)}return this._onDropItemCreate(new ItemProxyPF2e(itemSource).clone().toObject())}async _onDropFolder(_event,data){if(!(this.actor.isOwner&&data.documentName==="Item"))return[];const folder=await Folder.fromDropData(data);if(!folder)return[];const itemSources=[folder,...folder.getSubfolders()].flatMap(f=>f.contents).map(i=>i.toObject());return this._onDropItemCreate(itemSources)}async moveItemBetweenActors(event,sourceActorId,sourceTokenId,targetActorId,targetTokenId,itemId){const sourceActor=canvas.scene?.tokens.get(sourceTokenId??"")?.actor??game.actors.get(sourceActorId),targetActor=canvas.scene?.tokens.get(targetTokenId??"")?.actor??game.actors.get(targetActorId),item=sourceActor?.items.get(itemId);if(!sourceActor||!targetActor)throw ErrorPF2e("Unexpected missing actor(s)");if(!item?.isOfType("physical"))throw ErrorPF2e("Missing or invalid item");const containerId=htmlClosest(event.target,"[data-item-is-container=true]")?.dataset.containerId?.trim(),sourceItemQuantity=item.quantity,stackable=!!targetActor.inventory.findStackableItem(item._source),isPurchase=sourceActor.isOfType("loot")&&sourceActor.isMerchant&&!sourceActor.isOwner,isAmmunition=item.isOfType("consumable")&&item.isAmmunition;if(sourceItemQuantity>1){const defaultQuantity=isPurchase?isAmmunition?Math.min(10,sourceItemQuantity):1:sourceItemQuantity;new MoveLootPopup(sourceActor,{quantity:{max:sourceItemQuantity,default:defaultQuantity},lockStack:!stackable,isPurchase},(quantity,newStack)=>{sourceActor.transferItemToActor(targetActor,item,quantity,containerId,newStack)}).render(!0)}else sourceActor.transferItemToActor(targetActor,item,1,containerId)}openTagSelector(anchor,options={}){const selectorType=anchor.dataset.tagSelector;if(!tupleHasValue(TAG_SELECTOR_TYPES,selectorType))throw ErrorPF2e(`Unrecognized tag selector type "${selectorType}"`);if(selectorType==="basic"){const objectProperty=anchor.dataset.property??"",title=anchor.dataset.title??"",configTypes=(anchor.dataset.configTypes??"").split(",").map(type=>type.trim()).filter(tag=>tupleHasValue(SELECTABLE_TAG_FIELDS,tag));this.tagSelector("basic",{...options,objectProperty,configTypes,title})}else this.tagSelector(selectorType,options)}tagSelector(selectorType,options){if(selectorType==="basic"&&options&&"objectProperty"in options)new TagSelectorBasic(this.object,options).render(!0);else{if(selectorType==="basic")throw ErrorPF2e("Insufficient options provided to render basic tag selector");{const TagSelector={senses:SenseSelector,"speed-types":SpeedSelector}[selectorType];new TagSelector(this.object,options).render(!0)}}}openTab(name2){this._tabs[0].activate(name2)}async _renderInner(data,options){return this.itemRenderer.saveAndRestoreState(()=>super._renderInner(data,options))}async _render(force,options){await maintainFocusInRender(this,()=>super._render(force,options)),options?.tab&&this.openTab(options.tab)}async _onSubmit(event,{updateData=null,preventClose=!1,preventRender=!1}={}){for(const input of htmlQueryAll(this.form,"tags ~ input"))input.value===""&&(input.value="[]");return super._onSubmit(event,{updateData,preventClose,preventRender})}_getSubmitData(updateData){const data=super._getSubmitData(updateData);processTagifyInSubmitData(this.form,data);for(const el of this.form.elements)if(el instanceof HTMLInputElement&&el.dataset.allowDelta!==void 0){const strValue=el.value.trim(),value=Number(strValue);(strValue.startsWith("+")||strValue.startsWith("-"))&&!Number.isNaN(value)&&(data[el.name]=Number(getProperty(this.actor,el.name))+value)}return data}};_sortableOnMoveData=new WeakMap,_activateInventoryDragDrop=new WeakSet,activateInventoryDragDrop_fn=__name2(function(panel){const inventoryList=htmlQuery(panel,"section.inventory-list, ol[data-container-type=actorInventory]");if(!inventoryList)return;const sortableOptions={...SORTABLE_DEFAULTS,filter:"div.item-summary",preventOnFilter:!1,scroll:inventoryList,setData:(dataTransfer,dragEl)=>{const item=this.actor.inventory.get(htmlQuery(dragEl,"div[data-item-id]")?.dataset.itemId,{strict:!0});dataTransfer.setData("text/plain",JSON.stringify({...item.toDragData(),fromInventory:!0}))},onStart:()=>{__privateSet(this,_sortableOnMoveData,{})},onClone:event=>{for(const link of htmlQueryAll(htmlQuery(event.item,"div.item-summary"),"a.content-link"))link.draggable=!0},onMove:(event,originalEvent)=>__privateMethod(this,_sortableOnMove,sortableOnMove_fn).call(this,event,originalEvent),onEnd:event=>__privateMethod(this,_sortableOnEnd,sortableOnEnd_fn).call(this,event)};for(const list of htmlQueryAll(inventoryList,"ol.inventory-items, ol.item-list")){const itemType=list.dataset.itemType;if(!(list.dataset.containerId||!itemType)){if(itemType==="backpack"){Sortable.create(list,{...sortableOptions,group:{name:"container",put:(_to,_from,dragEl)=>dragEl.dataset.itemType==="backpack"},swapThreshold:.2});for(const subList of htmlQueryAll(list,"ol.container-held-items"))Sortable.create(subList,{...sortableOptions,group:{name:"nested-item",put:!0},swapThreshold:.2});continue}Sortable.create(list,{...sortableOptions,group:{name:itemType,put:(to,from,dragEl)=>from===to?!0:dragEl.dataset.itemType===to.el.dataset.itemType}})}}},"#activateInventoryDragDrop"),_sortableOnMove=new WeakSet,sortableOnMove_fn=__name2(function(event,originalEvent){if(!this.isEditable)return!1;__privateSet(this,_sortableOnMoveData,{related:event.related,willInsertAfter:event.willInsertAfter});const sourceItem=this.actor.inventory.get(htmlQuery(event.dragged,"div[data-item-id]")?.dataset.itemId??""),targetItem=this.actor.inventory.get(htmlClosest(originalEvent.target,"div[data-item-id]")?.dataset.itemId??"");if(sourceItem&&targetItem)return sourceItem.isOfType("backpack")&&targetItem.isOfType("backpack")&&targetItem.isCollapsed?!1:!sourceItem.isStackableWith(targetItem)},"#sortableOnMove"),_sortableOnEnd=new WeakSet,sortableOnEnd_fn=__name2(async function(event){const itemId=htmlQuery(event.item,"div[data-item-id]")?.dataset.itemId,sourceItem=this.actor.inventory.get(itemId,{strict:!0}),targetElement=event.originalEvent?.target instanceof HTMLElement?event.originalEvent.target:null,targetItemId=htmlClosest(targetElement,"div[data-item-id]")?.dataset.itemId??"",targetItem=this.actor.inventory.get(targetItemId);if(!targetItem&&!event.from.contains(targetElement)&&!event.to.contains(targetElement)){if(this.isEditable&&sourceItem.isInContainer&&htmlClosest(targetElement,".inventory-header"))return sourceItem.move({toContainer:null});const itemIsOnlyOneOfType=this.actor.itemTypes[sourceItem.type].length===1;(event.newIndex!==event.oldIndex||itemIsOnlyOneOfType)&&this.render();return}if(!this.isEditable)return;if(targetItem?.isOfType("backpack")&&(!!!htmlClosest(targetElement,"ol[data-container-id]")||targetItem.contents.size===0))return sourceItem.move({toContainer:targetItem});const{related,willInsertAfter}=__privateGet(this,_sortableOnMoveData),relativeItemId=htmlQuery(related,"div[data-item-id]")?.dataset.itemId??"",relativeItem=this.actor.inventory.get(relativeItemId);if(relativeItem||targetItem)return targetItem&&!targetItem.isOfType("backpack")?sourceItem.move({toStack:targetItem}):sourceItem.move({relativeTo:relativeItem,sortBefore:!willInsertAfter})},"#sortableOnEnd"),_onClickDeleteItem=new WeakSet,onClickDeleteItem_fn=__name2(async function(event){const row=htmlClosest(event.currentTarget,"[data-item-id]"),itemId=row?.dataset.itemId,item=this.actor.items.get(itemId??"");if(item?.isOfType("condition")){const references=htmlQuery(row,".condition-references"),deleteCondition=__name2(async()=>{this.actor.decreaseCondition(item,{forceRemove:!0})},"deleteCondition");if(event.ctrlKey){deleteCondition();return}const content=await renderTemplate("systems/pf2e/templates/actors/delete-condition-dialog.hbs",{question:game.i18n.format("PF2E.DeleteQuestion",{name:item.name}),ref:references?.innerHTML});new Dialog({title:game.i18n.localize("PF2E.DeleteConditionTitle"),content,buttons:{Yes:{icon:'',label:"Yes",callback:deleteCondition},cancel:{icon:'',label:"Cancel"}},default:"Yes"}).render(!0)}else if(row&&item)this.deleteItem(row,item,event);else throw ErrorPF2e("Item not found")},"#onClickDeleteItem"),_onClickBrowseEquipment=new WeakSet,onClickBrowseEquipment_fn=__name2(async function(element){const checkboxesFilterCodes=(element.dataset.filter??"").split(",").filter(s=>!!s).map(s=>s.trim()),tab=game.pf2e.compendiumBrowser.tabs.equipment,filter2=await tab.getFilterData(),{checkboxes}=filter2;for(const filterCode of checkboxesFilterCodes){const splitValues=filterCode.split("-");if(splitValues.length!==2)throw ErrorPF2e(`Invalid filter value for opening the compendium browser: "${filterCode}"`);const[filterType,value]=splitValues;if(objectHasKey(checkboxes,filterType)){const checkbox=checkboxes[filterType];objectHasKey(checkbox.options,value)&&(checkbox.options[value].selected=!0,checkbox.selected.push(value),checkbox.isExpanded=!0)}}tab.open(filter2)},"#onClickBrowseEquipment"),_onClickCreateItem=new WeakSet,onClickCreateItem_fn=__name2(function(link){const data=link.dataset;if(!objectHasKey(CONFIG.PF2E.Item.documentClasses,data.type))throw ErrorPF2e(`Unrecognized item type: "${data.type}"`);if(data.type==="spell")return onClickCreateSpell(this.actor,data);const img=`systems/pf2e/icons/default-icons/${data.type}.svg`,type=data.type,itemSource=(()=>{switch(type){case"action":{const name2=game.i18n.localize(`PF2E.ActionType${String(data.actionType).capitalize()}`),actionType=data.actionType;return{type,img,name:name2,system:{actionType:{value:actionType}}}}case"melee":{const name2=game.i18n.localize(`PF2E.NewPlaceholders.${type.capitalize()}`),weaponType=data.actionType;return{type,img,name:name2,system:{weaponType:{value:weaponType}}}}case"lore":{const name2=this.actor.type==="npc"?game.i18n.localize("PF2E.SkillLabel"):game.i18n.localize("PF2E.NewPlaceholders.Lore");return{type,img,name:name2}}default:{if(!setHasElement(PHYSICAL_ITEM_TYPES,type))throw ErrorPF2e(`Unsupported item type: ${type}`);return{name:game.i18n.localize(`PF2E.NewPlaceholders.${data.type.capitalize()}`),type}}}})();if(itemSource){if(data.traits){const traits=String(data.traits).split(",");itemSource.system=mergeObject(itemSource.system??{},{traits:{value:traits}})}this.actor.createEmbeddedDocuments("Item",[itemSource])}},"#onClickCreateItem"),_onClickSellAllTreasure=new WeakSet,onClickSellAllTreasure_fn=__name2(async function(){const content=await renderTemplate("systems/pf2e/templates/actors/sell-all-treasure-dialog.hbs");new Dialog({title:game.i18n.localize("PF2E.SellAllTreasureTitle"),content,buttons:{yes:{icon:fontAwesomeIcon("check").outerHTML,label:"Yes",callback:async()=>this.actor.inventory.sellAllTreasure()},cancel:{icon:fontAwesomeIcon("times").outerHTML,label:"Cancel"}},default:"cancel"}).render(!0)},"#onClickSellAllTreasure"),__name2(_ActorSheetPF2e,"ActorSheetPF2e");let ActorSheetPF2e=_ActorSheetPF2e;const _DamagePF2e=class{static{__name(this,"_DamagePF2e")}static async roll(data,context,callback){const outcome=context.outcome??null;context.rollMode??=(context.secret?"blindroll":void 0)??game.settings.get("core","rollMode"),context.createMessage??=!0,context.options.has("secret")&&(context.secret=!0);const subtitle=outcome?context.sourceType==="attack"?game.i18n.localize(`PF2E.Check.Result.Degree.Attack.${outcome}`):game.i18n.localize(`PF2E.Check.Result.Degree.Check.${outcome}`):null;let flavor=await renderTemplate("systems/pf2e/templates/chat/action/header.hbs",{title:data.name,subtitle});if(data.traits){const toTags=__name2((slugs,{labels={},descriptions={},cssClass,dataAttr})=>slugs.map(s=>({value:s,label:game.i18n.localize(labels[s]??"")})).sort((a,b)=>a.label.localeCompare(b.label)).map(tag=>{const description=descriptions[tag.value]??"",span=document.createElement("span");return span.className="tag",cssClass&&span.classList.add(cssClass),span.dataset[dataAttr]=tag.value,description&&(span.dataset.tooltip=description),span.innerText=tag.label,span.outerHTML}).join(""),"toTags"),traits=toTags(data.traits,{labels:CONFIG.PF2E.actionTraits,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:null,dataAttr:"trait"}),item2=context.self?.item,itemTraits=item2?.isOfType("weapon","melee","spell")?toTags(Array.from(item2.traits).filter(t=>!(t in CONFIG.PF2E.materialDamageEffects)),{labels:item2.isOfType("spell")?CONFIG.PF2E.spellTraits:CONFIG.PF2E.npcAttackTraits,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:"tag_alt",dataAttr:"trait"}):"",properties=(()=>{const range=item2?.isOfType("action","melee","weapon")?item2.range:null,label=createActionRangeLabel(range);if(label&&(range?.increment||range?.max)){const slug=range.increment?`range-increment-${range.increment}`:`range-${range.max}`;return toTags([slug],{labels:{[slug]:label},descriptions:{[slug]:"PF2E.Item.Weapon.RangeIncrementN.Hint"},cssClass:"tag_secondary",dataAttr:"slug"})}else return""})(),materialEffects=toTags(data.materials,{labels:CONFIG.PF2E.preciousMaterials,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:"tag_material",dataAttr:"material"}),otherTags=[itemTraits,properties,materialEffects].join(""),tagsElem=createHTMLElement("div",{classes:["tags"],dataset:{tooltipClass:"pf2e"}});tagsElem.innerHTML=otherTags.length>0?`${traits}@Localize")&&(content=content.substring(3,content.length-4));const enriched=superEnrichHTML.apply(this,[content,options]);return typeof enriched=="string"&&(options.processVisibility??!0)?_TextEditorPF2e2.processUserVisibility(enriched,options):Promise.resolve().then(async()=>_TextEditorPF2e2.processUserVisibility(await enriched,options))}static _enrichContentLinks(text,options){if(options?.async){const documentTypes=[...CONST.DOCUMENT_LINK_TYPES,"Compendium","UUID"],pattern=new RegExp(`@(${documentTypes.join("|")})\\[([^#\\]]+)(?:#([^\\]]+))?](?:{([^}]+)})?`,"g"),uuids=text.map(t=>Array.from((t.textContent??"").matchAll(pattern))).flat(2).filter(m=>UUIDUtils.isCompendiumUUID(m));return UUIDUtils.fromUUIDs(uuids).then(()=>superEnrichContentLinks.apply(this,[text,options]))}return superEnrichContentLinks.apply(this,[text,options])}static async _createInlineRoll(match,rollData,options={}){const anchor=await superCreateInlineRoll.apply(this,[match,rollData,options]),formula=anchor?.dataset.formula;if(formula){const roll=(()=>{try{return new DamageRoll(formula)}catch{return null}})();if(!roll||!looksLikeDamageRoll(roll))return anchor;const icon=damageDiceIcon(roll),label=match[4]&&match[4].length>0?match[4]:roll.formula;anchor.innerHTML=`${icon.outerHTML}${label}`,anchor.dataset.tooltip=roll.formula,anchor.dataset.damageRoll="",roll.instances.length>0&&roll.instances.every(i=>i.persistent)&&(anchor.draggable=!0,anchor.dataset.persistent="")}return anchor}static async _onClickInlineRoll(event){const anchor=event.currentTarget??null;if(!(anchor instanceof HTMLAnchorElement&&anchor.dataset.formula&&"damageRoll"in anchor.dataset))return superOnClickInlineRoll.apply(this,[event]);const sheetElem=htmlClosest(anchor,".sheet"),messageElem=htmlClosest(anchor,"li.chat-message"),app=ui.windows[Number(sheetElem?.dataset.appid)],message=game.messages.get(messageElem?.dataset.messageId??""),[actor,rollData]=(()=>{if(message?.actor)return[message.actor,message.getRollData()];if(app instanceof ActorSheetPF2e){const itemId=anchor.dataset.pf2ItemId;return[app.actor,app.actor.items.get(itemId)?.getRollData()??app.actor.getRollData()]}if(app instanceof ItemSheetPF2e)return[app.actor,app.item.getRollData()];const itemUuid=anchor.dataset.itemUuid,itemByUUID=itemUuid&&!itemUuid.startsWith("Compendium.")?fromUuidSync(itemUuid):null;return itemByUUID instanceof ItemPF2e?[itemByUUID.actor,itemByUUID.getRollData()]:[null,{}]})(),options=anchor.dataset.flavor?{flavor:anchor.dataset.flavor}:{},speaker=ChatMessagePF2e.getSpeaker({actor}),rollMode=objectHasKey(CONFIG.Dice.rollModes,anchor.dataset.mode)?anchor.dataset.mode:"roll",baseFormula=anchor.dataset.pf2BaseFormula;if(baseFormula){const item=rollData.item instanceof ItemPF2e?rollData.item:null,traits=anchor.dataset.pf2Traits?.split(",")??[],domains=anchor.dataset.pf2Domains?.split(","),extraRollOptions=anchor.dataset.pf2RollOptions?.split(",")??[],result=await augmentInlineDamageRoll(baseFormula,{...eventToRollParams(event),actor,item,domains,traits,extraRollOptions});result&&await DamagePF2e.roll(result.template,result.context);return}const roll=new DamageRoll(anchor.dataset.formula,rollData,options);return roll.toMessage({speaker,flavor:roll.options.flavor},{rollMode})}static processUserVisibility(content,options){const html=createHTMLElement("div",{innerHTML:content}),document2=options.rollData?.actor??null;return UserVisibilityPF2e.process(html,{document:document2}),html.innerHTML}static async enrichString(data,options={}){if(data.length<4)return null;const item=options.rollData?.item??null,[_match,inlineType,paramString,inlineLabel]=data;switch(inlineType){case"Check":{const actor=options.rollData?.actor??item?.actor??null;return __privateMethod(this,_createCheck,createCheck_fn).call(this,{paramString,inlineLabel,item,actor})}case"Damage":return __privateMethod(this,_createDamageRoll,createDamageRoll_fn).call(this,{paramString,rollData:options.rollData,inlineLabel});case"Localize":return __privateMethod(this,_localize,localize_fn).call(this,paramString,options);case"Template":return __privateMethod(this,_createTemplate,createTemplate_fn).call(this,paramString,inlineLabel,item?.system);default:return null}}static convertXMLNode(html,name2,{visible,visibility,whose,tooltip,classes}){const node=html.querySelector(name2);if(!node)return null;const span=document.createElement("span"),{dataset,classList}=span;if(typeof visible=="boolean"&&(visibility=visible?"all":"gm"),visibility&&(dataset.visibility=visibility),whose&&(dataset.whose=whose),tooltip&&(dataset.tooltip=tooltip.trim()),classes)for(const cssClass of classes)classList.add(cssClass);return span.append(...Array.from(node.childNodes)),node.replaceWith(span),span}};_localize=new WeakSet,localize_fn=__name2(async function(paramString,options){const content=game.i18n.localize(paramString);if(content===paramString)return ui.notifications.error(`Failed to localize ${paramString}!`),null;const result=document.createElement("span");return result.innerHTML=await TextEditor.enrichHTML(content,{...options,async:!0}),result},"#localize"),_createTemplate=new WeakSet,createTemplate_fn=__name2(function(paramString,label,itemData){const params=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,paramString,{first:"type"});if(!params)return null;if(!params.type)ui.notifications.error(game.i18n.localize("PF2E.InlineTemplateErrors.TypeMissing"));else if(params.distance)if(objectHasKey(CONFIG.PF2E.areaTypes,params.type)){if(isNaN(+params.distance))return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.DistanceNoNumber",{distance:params.distance})),null;if(params.width&&isNaN(+params.width))return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.WidthNoNumber",{width:params.width})),null;{params.traits||=itemData?.traits?.value?.toString()??"",label||(label=game.i18n.format("PF2E.TemplateLabel",{size:params.distance,unit:game.i18n.localize("PF2E.Foot"),shape:game.i18n.localize(CONFIG.PF2E.areaTypes[params.type])}));const html=document.createElement("span");return html.innerHTML=label,html.setAttribute("data-pf2-effect-area",params.type),html.setAttribute("data-pf2-distance",params.distance),params.traits!==""&&html.setAttribute("data-pf2-traits",params.traits),params.type==="line"&&html.setAttribute("data-pf2-width",params.width??"5"),html}}else return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.TypeUnsupported",{type:params.type})),null;else return ui.notifications.error(game.i18n.localize("PF2E.InlineTemplateErrors.DistanceMissing")),null;return null},"#createTemplate"),_parseInlineParams=new WeakSet,parseInlineParams_fn=__name2(function(paramString,options={}){return paramString.split("|").reduce((result2,part,idx)=>{if(idx===0&&options.first&&!part.includes(":"))return result2[options.first]=part.trim(),result2;const colonIdx=part.indexOf(":"),portions=colonIdx>=0?[part.slice(0,colonIdx),part.slice(colonIdx+1)]:[part,""];return result2[portions[0]]=portions[1],result2},{})},"#parseInlineParams"),_createCheck=new WeakSet,createCheck_fn=__name2(function({paramString,inlineLabel,item=null,actor=item?.actor??null}){const rawParams=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,paramString,{first:"type"});if(!rawParams)return null;if(!rawParams.type)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.TypeMissing")),null;const showDC=setHasElement(USER_VISIBILITIES,rawParams.showDC)?rawParams.showDC:actor?.hasPlayerOwner||actor?.isOfType("party")||game.settings.get("pf2e","metagame_showDC")?"all":"gm",params={...rawParams,type:rawParams.type,basic:rawParams.basic!==void 0&&["true",""].includes(rawParams.basic),showDC,traits:(()=>{const traits=[],itemTraits=item?.system.traits?.value??[];return rawParams.overrideTraits!=="true"&&traits.push(...itemTraits),rawParams.traits&&traits.push(...rawParams.traits.split(",").map(trait=>trait.trim())),Array.from(new Set(traits))})(),extraRollOptions:compact([...__privateMethod(this,_createActionOptions,createActionOptions_fn).call(this,item),...rawParams.basic==="true"?["damaging-effect"]:[],...rawParams.options?.split(",").map(t=>t.trim())??[]]).sort()};rawParams.dc&&(params.dc=rawParams.dc),rawParams.defense&&(params.defense=rawParams.defense);const types=params.type.split(",");let adjustments=params.adjustment?.split(",")??["0"];if(types.length!==adjustments.length&&adjustments.length>1)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.AdjustmentLengthMismatch")),null;if(types.length>adjustments.length&&(adjustments=new Array(types.length).fill(adjustments[0])),adjustments.some(adj=>adj!==""&&isNaN(parseInt(adj))))return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.NonIntegerAdjustment")),null;const buttons=types.map((type,i)=>__privateMethod(this,_createSingleCheck,createSingleCheck_fn).call(this,{actor,item,inlineLabel,params:{...params,type,adjustment:adjustments[i]}}));if(buttons.length===1)return buttons[0];{const checkGroup=document.createElement("div");checkGroup.setAttribute("data-pf2-checkgroup","");for(const button of buttons){if(button===null)return null;checkGroup.hasChildNodes()&&checkGroup.appendChild(document.createElement("br")),checkGroup.appendChild(button)}return checkGroup}},"#createCheck"),_createSingleCheck=new WeakSet,createSingleCheck_fn=__name2(function({params,item,actor,inlineLabel}){const icon=(()=>{switch(params.type){case"fortitude":return fontAwesomeIcon("heart-pulse");case"reflex":return fontAwesomeIcon("person-running");case"will":return fontAwesomeIcon("brain");case"perception":return fontAwesomeIcon("eye");default:return fontAwesomeIcon("dice-d20")}})();icon.classList.add("icon");const name2=params.name??item?.name??params.type,localize=localizer("PF2E.InlineCheck"),label=(()=>{if(inlineLabel)return inlineLabel;if(tupleHasValue(SAVE_TYPES,params.type)){const saveName=game.i18n.localize(CONFIG.PF2E.saves[params.type]);return params.basic?localize("BasicWithSave",{save:saveName}):saveName}switch(params.type){case"flat":return game.i18n.localize("PF2E.FlatCheck");case"perception":return game.i18n.localize("PF2E.PerceptionLabel");default:{const shortForm=(()=>{if(objectHasKey(SKILL_EXPANDED,params.type))return SKILL_EXPANDED[params.type].shortForm;if(objectHasKey(SKILL_DICTIONARY,params.type))return params.type})();return shortForm?game.i18n.localize(CONFIG.PF2E.skills[shortForm]):params.type.split("-").map(word=>word.slice(0,1).toUpperCase()+word.slice(1)).join(" ")}}})(),createLabel=__name2(content=>createHTMLElement("span",{classes:["label"],innerHTML:content}),"createLabel"),anchor=createHTMLElement("a",{classes:["inline-check"],children:[icon,createLabel(label)],dataset:{pf2Traits:params.traits.toString()||null,pf2RollOptions:params.extraRollOptions.toString()||null,pf2RepostFlavor:name2,pf2ShowDc:params.showDC==="all"?null:params.showDC,pf2Label:localize("DCWithName",{name:name2}),pf2Adjustment:Number(params.adjustment)||null,pf2Roller:params.roller||null,pf2Check:sluggify(params.type)}});if(params.defense&¶ms.dc&&(anchor.dataset.tooltip=localize("Invalid",{message:localize("Errors.DCAndDefense")}),anchor.dataset.invalid="true"),!["flat","fortitude","reflex","will"].includes(params.type)&¶ms.defense&&(anchor.dataset.pf2Defense=params.defense),params.type&¶ms.dc){const checkDC=params.dc==="@self.level"?params.dc:getCheckDC({name:name2,params,item,actor});if(anchor.dataset.pf2Dc=checkDC,checkDC!=="@self.level"){const dc=params.dc===""?NaN:Number(checkDC),displayedDC=isNaN(dc)?checkDC:`${dc+Number(params.adjustment)}`,text=anchor.innerText;anchor.querySelector("span.label")?.replaceWith(createLabel(game.i18n.format("PF2E.DCWithValueAndVisibility",{role:params.showDC,dc:displayedDC,text})))}}return params.roller==="self"&&actor&&!actor.canUserModify(game.user,"update")?createHTMLElement("span",{children:[anchor.innerText]}):anchor},"#createSingleCheck"),_createDamageRoll=new WeakSet,createDamageRoll_fn=__name2(async function(args){const params=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,args.paramString,{first:"formula"});if(!params||!params.formula)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.TypeMissing")),null;const item=args.rollData?.item instanceof ItemPF2e?args.rollData?.item:null,actor=(args.rollData?.actor instanceof ActorPF2e?args.rollData?.actor:null)??item?.actor??null,domains=params.domains?.split(",");if(domains?.some(d=>!/^[a-z][-a-z0-9]+-damage$/.test(d)))return ui.notifications.warn(game.i18n.format("PF2E.InlineCheck.Errors.InvalidDomains",{type:"@Damage"})),null;const traits=(()=>{const fromParams=params.traits?.split(",").flatMap(t=>t.trim()||[])??[],fromItem=item?.system.traits?.value??[];return params.overrideTraits==="true"?fromParams:uniq([...fromParams,...fromItem])})().sort(),extraRollOptions=compact([...params.options?.split(",").map(t=>t.trim())??[],...__privateMethod(this,_createActionOptions,createActionOptions_fn).call(this,item)]).sort(),result=await augmentInlineDamageRoll(params.formula,{skipDialog:!0,actor,item,domains,traits,extraRollOptions}),baseFormula=(()=>{const baseRollData={...item?.getRollData()??{},actor:{level:(item&&"level"in item?item.level:null)??1}};return new DamageRoll(params.formula,baseRollData).formula})(),roll=result?.template.damage.roll??new DamageRoll(params.formula,args.rollData),formula=roll.formula;return createHTMLElement("a",{classes:compact(["inline-roll","roll",baseFormula!==formula?"altered":null]),children:[damageDiceIcon(roll),args.inlineLabel??formula],dataset:{formula:roll._formula,tooltip:args.inlineLabel?formula:baseFormula!==formula?game.i18n.format("PF2E.InlineDamage.Base",{formula:baseFormula}):null,damageRoll:params.formula,pf2Domains:domains?.join(",")||null,pf2BaseFormula:result?params.formula:null,pf2Traits:traits.toString()||null,pf2RollOptions:extraRollOptions.toString()||null,pf2ItemId:item?.id}})},"#createDamageRoll"),_createActionOptions=new WeakSet,createActionOptions_fn=__name2(function(item){return!item?.isOfType("action","feat")||!item.actionCost?[]:compact([`action:${item.slug??sluggify(item.name)}`,item.actionCost.value?`action:cost:${item.actionCost.value}`:null])},"#createActionOptions"),__privateAdd(_TextEditorPF2e,_localize),__privateAdd(_TextEditorPF2e,_createTemplate),__privateAdd(_TextEditorPF2e,_parseInlineParams),__privateAdd(_TextEditorPF2e,_createCheck),__privateAdd(_TextEditorPF2e,_createSingleCheck),__privateAdd(_TextEditorPF2e,_createDamageRoll),__privateAdd(_TextEditorPF2e,_createActionOptions),__name2(_TextEditorPF2e,"TextEditorPF2e");let TextEditorPF2e=_TextEditorPF2e;function getCheckDC({name:name2,params,item=null,actor=item?.actor??null}){const{type}=params,dc=params.dc,base=(()=>{if(dc?.startsWith("resolve")&&actor){params.immutable||="true";const resolve=dc.match(/resolve\((.+?)\)$/),value=resolve&&resolve?.length>0?resolve[1]:"";return Number(__name2(resolveString=>{try{const rollData=item?.getRollData()??actor?.getRollData();return Roll.safeEval(Roll.replaceFormulaData(resolveString,rollData))}catch{return 0}},"saferEval")(value))}return Number(dc)||void 0})();if(base){const getStatisticValue=__name2(selectors=>{if(item?.actor&¶ms.immutable!=="true"){const{actor:actor2}=item,{synthetics}=actor2,modifier=new ModifierPF2e({slug:"base",label:"PF2E.ModifierTitle",modifier:base-10,adjustments:extractModifierAdjustments(synthetics.modifierAdjustments,selectors,"base")}),stat=new Statistic(actor2,{slug:type,label:name2,domains:selectors,modifiers:[modifier]});return String(stat.dc.value)}return base.toString()},"getStatisticValue"),slugName=sluggify(name2);if(type==="flat")return params.immutable==="false"?getStatisticValue(["inline-dc",`${slugName}-inline-dc`]):base.toString();{const selectors=["all","inline-dc",`${slugName}-inline-dc`];return getStatisticValue(selectors)}}return"0"}__name(getCheckDC,"getCheckDC"),__name2(getCheckDC,"getCheckDC");async function augmentInlineDamageRoll(baseFormula,args){const{name:name2,actor,item,traits,extraRollOptions}=args;try{const rollData=item?.getRollData()??actor?.getRollData()??{};rollData.actor??={level:(item&&"level"in item?item.level:null)??1};const base=extractBaseDamage(new DamageRoll(baseFormula,rollData)),domains=compact(["damage","inline-damage",item?`${item.id}-inline-damage`:null,item?`${sluggify(item.slug??item.name)}-inline-damage`:null,args.domains]).flat(),options=new Set([...actor?.getRollOptions(domains)??[],...item?.getRollOptions("item")??[],...traits??[],...extraRollOptions??[]]),firstBase=base.at(0);if(firstBase&&actor?.isOfType("npc")&&(actor.isElite||actor.isWeak)){const value=options.has("item:frequency:limited")?4:2;firstBase.terms?.push({dice:null,modifier:actor.isElite?value:-value})}const{modifiers,dice}=(()=>{if(!(actor instanceof ActorPF2e))return{modifiers:[],dice:[]};const extractOptions={resolvables:rollData??{},test:options};return processDamageCategoryStacking(base,{modifiers:extractModifiers(actor.synthetics,domains,extractOptions),dice:extractDamageDice(actor.synthetics.damageDice,domains,extractOptions),test:options})})(),formulaData={base,modifiers,dice,ignoredResistances:[]},isAttack=!!traits?.includes("attack"),context={type:"damage-roll",sourceType:isAttack?"attack":"save",outcome:isAttack?"success":null,domains,options,self:(()=>actor?{actor,token:actor.token,item:item||null,statistic:null,modifiers}:null)()};applyDamageDiceOverrides(base,dice);const{formula,breakdown}=createDamageFormula(formulaData),roll=new DamageRoll(formula);return{template:{name:name2??item?.name??actor?.name??"",damage:{roll,breakdown},modifiers:[...modifiers,...dice],traits:traits?.filter(t=>t in CONFIG.PF2E.actionTraits)??[],materials:[]},context}}catch(ex){return console.error(`Failed to parse inline @Damage ${baseFormula}:`,ex),null}}__name(augmentInlineDamageRoll,"augmentInlineDamageRoll"),__name2(augmentInlineDamageRoll,"augmentInlineDamageRoll");const _CheckModifiersDialog=class extends Application{static{__name(this,"_CheckModifiersDialog")}constructor(check,resolve,context={options:new Set}){const title=(()=>{const maybeWithHTML=context.title?.trim()||check.slug;if(!maybeWithHTML.includes("<"))return maybeWithHTML.trim();const div=document.createElement("div");return div.innerHTML=maybeWithHTML,div.querySelector(".action-glyph, .pf2-icon")?.remove(),div.innerText.trim()})();super({title}),__privateAdd(this,_resolveSubstitutions),__publicField(this,"check"),__publicField(this,"context"),__publicField(this,"resolve"),__publicField(this,"isResolved",!1),__privateAdd(this,_originallyEnabled2,void 0),this.check=check,this.resolve=resolve,this.context=context,__privateSet(this,_originallyEnabled2,new Set(check.modifiers.filter(m=>m.enabled)))}static get defaultOptions(){return{...super.defaultOptions,template:"systems/pf2e/templates/chat/check-modifiers-dialog.hbs",classes:["roll-modifiers-dialog","dice-checks","dialog"],popOut:!0,width:380,height:"auto"}}async getData(){const fortune=this.context.rollTwice==="keep-higher",misfortune=this.context.rollTwice==="keep-lower",none=fortune===misfortune,rollMode=this.context.rollMode==="roll"?game.settings.get("core","rollMode"):this.context.rollMode;return{appId:this.id,modifiers:this.check.modifiers.map(m=>({...m,hideIfDisabled:!__privateGet(this,_originallyEnabled2).has(m)&&m.hideIfDisabled})),totalModifier:this.check.totalModifier,rollModes:CONFIG.Dice.rollModes,rollMode,showRollDialogs:game.user.settings.showRollDialogs,substitutions:__privateMethod(this,_resolveSubstitutions,resolveSubstitutions_fn).call(this),fortune,none,misfortune}}activateListeners($html){const html=$html[0];htmlQuery(html,"button.roll")?.addEventListener("click",()=>{this.resolve(!0),this.isResolved=!0,this.close()});for(const checkbox of htmlQueryAll(html,".substitutions input[type=checkbox]"))checkbox.addEventListener("click",()=>{const substitutions=this.context.substitutions??[],index=Number(checkbox.dataset.subIndex),toggledSub=substitutions.at(index);if(!toggledSub)return;toggledSub.selected=toggledSub.required||checkbox.checked;const options=this.context.options??=new Set;for(const substitution of substitutions){const option=`substitute:${substitution.slug}`;substitution.selected?options.add(option):options.delete(option)}this.context.substitutions=__privateMethod(this,_resolveSubstitutions,resolveSubstitutions_fn).call(this).map(s=>omit(s,["toggleable"])),this.check.calculateTotal(this.context.options),this.render()});for(const checkbox of htmlQueryAll(html,".modifier-container input[type=checkbox]"))checkbox.addEventListener("click",()=>{const index=Number(checkbox.dataset.modifierIndex);this.check.modifiers[index].ignored=!checkbox.checked,this.check.calculateTotal(),this.render()});const addModifierButton=htmlQuery(html,"button.add-modifier");addModifierButton?.addEventListener("click",()=>{const parent=addModifierButton.parentElement,value=Number(parent.querySelector(".add-modifier-value")?.value||1),type=String(parent.querySelector(".add-modifier-type")?.value);let name2=String(parent.querySelector(".add-modifier-name")?.value);const errors=[];if(Number.isNaN(value)?errors.push("Modifier value must be a number."):value===0&&errors.push("Modifier value must not be zero."),!setHasElement(MODIFIER_TYPES,type))throw ErrorPF2e("Unexpected invalid modifier type");(!name2||!name2.trim())&&(name2=game.i18n.localize(value<0?`PF2E.PenaltyLabel.${type}`:`PF2E.BonusLabel.${type}`)),errors.length>0?ui.notifications.error(errors.join(" ")):(this.check.push(new ModifierPF2e(name2,value,type)),this.render())});for(const rollTwice of htmlQueryAll(html,".fate input[type=radio]"))rollTwice.addEventListener("click",()=>{this.context.rollTwice=rollTwice.value||!1});const rollModeInput=htmlQuery(html,"select[name=rollmode]");rollModeInput?.addEventListener("change",()=>{const rollMode=rollModeInput.value;if(!tupleHasValue(Object.values(CONST.DICE_ROLL_MODES),rollMode))throw ErrorPF2e("Unexpected roll mode");this.context.rollMode=rollMode});const settingsButton=htmlQuery(htmlClosest(html,".app"),"a.header-button.settings");if(settingsButton&&!settingsButton?.dataset.tooltipContent){settingsButton.dataset.tooltipContent=`#${this.id}-settings`;const $tooltip=$(settingsButton).tooltipster({animation:"fade",trigger:"click",arrow:!1,contentAsHTML:!0,debug:!1,interactive:!0,side:["top"],theme:"crb-hover",minWidth:165}),toggle=htmlQuery(html,".settings-list input.quick-rolls-submit");toggle?.addEventListener("click",async()=>{await game.user.setFlag("pf2e","settings.showRollDialogs",toggle.checked),$tooltip.tooltipster("close")})}}async close(options){this.isResolved||this.resolve(!1),super.close(options)}_getHeaderButtons(){const buttons=super._getHeaderButtons();return[{label:game.i18n.localize("PF2E.SETTINGS.Settings"),class:"settings",icon:"fa-solid fa-cog",onclick:()=>null},...buttons]}_injectHTML($html){super._injectHTML($html),$html[0]?.querySelector("button.roll")?.focus()}};_originallyEnabled2=new WeakMap,_resolveSubstitutions=new WeakSet,resolveSubstitutions_fn=__name2(function(){this.context.substitutions??=[];const hasRequired={fortune:this.context.substitutions.some(s=>s.required&&s.effectType==="fortune"),misfortune:this.context.substitutions.some(s=>s.required&&s.effectType==="misfortune")};return this.context.substitutions.map(substitution=>{const toggleable=!hasRequired[substitution.effectType],selected=substitution.required?!0:substitution.selected&&toggleable;return{...substitution,selected,toggleable}})},"#resolveSubstitutions"),__name2(_CheckModifiersDialog,"CheckModifiersDialog");let CheckModifiersDialog=_CheckModifiersDialog;const _CheckRoll=class _CheckRoll2 extends Roll{static{__name(this,"_CheckRoll")}get roller(){return game.users.get(this.options.rollerId??"")??null}get type(){return this.options.type??"check"}get degreeOfSuccess(){return this.options.degreeOfSuccess??null}get isReroll(){return this.options.isReroll??!1}get isRerollable(){return!this.isReroll&&!this.dice.some(d=>d.modifiers.includes("kh")||d.modifiers.includes("kl"))}async render(options={}){this._evaluated||await this.evaluate({async:!0});const{isPrivate,flavor,template}=options,{type,identifier,action:action2,damaging}=this.options,canRollDamage=!!(damaging&&identifier&&(this.roller===game.user||game.user.isGM)),limitCueVisibility=!game.settings.get("pf2e","metagame_showResults"),chatData={formula:isPrivate?"???":this._formula,flavor:isPrivate?null:flavor,user:game.user.id,tooltip:isPrivate?"":await this.getTooltip(),total:isPrivate?"?":Math.round(this.total*100)/100,type,identifier,action:action2,degree:this.degreeOfSuccess,canRollDamage,limitCueVisibility};return renderTemplate(template??_CheckRoll2.CHAT_TEMPLATE,chatData)}};__name2(_CheckRoll,"CheckRoll"),__publicField(_CheckRoll,"CHAT_TEMPLATE","systems/pf2e/templates/chat/check/roll.hbs");let CheckRoll=_CheckRoll;const _StrikeAttackRoll=class extends CheckRoll{static{__name(this,"_StrikeAttackRoll")}};__name2(_StrikeAttackRoll,"StrikeAttackRoll");let StrikeAttackRoll=_StrikeAttackRoll;const _CheckPF2e=class _CheckPF2e2{static{__name(this,"_CheckPF2e")}static async roll(check,context={},event=null,callback){event&&mergeObject(context,eventToRollParams(event)),context.skipDialog??=!game.user.settings.showRollDialogs,context.createMessage??=!0,Array.isArray(context.options)&&(context.options=new Set(context.options));const rollOptions=context.options??new Set;typeof context.mapIncreases=="number"&&rollOptions.add(`map:increases:${context.mapIncreases}`),rollOptions.has("secret")&&(context.rollMode??=game.user.isGM?"gmroll":"blindroll"),context.rollMode??="roll",rollOptions.size>0&&!context.isReroll&&check.calculateTotal(rollOptions);const substitutions=context.substitutions??=[],requiredSubstitution=context.substitutions.find(s=>s.required&&s.selected);if(requiredSubstitution)for(const substitution of context.substitutions)substitution.required=substitution===requiredSubstitution,substitution.selected=substitution===requiredSubstitution;if(!context.skipDialog&&context.type!=="flat-check"&&!await new Promise(resolve=>{new CheckModifiersDialog(check,resolve,context).render(!0)}))return null;const extraTags=[],isReroll=context.isReroll??!1;isReroll&&(context.rollTwice=!1);const[dice,tagsFromDice]=(()=>{const substitution=substitutions.find(s=>s.selected),rollTwice=context.rollTwice??!1,fortuneMisfortune=new Set(compact([substitution?.effectType,rollTwice==="keep-higher"?"fortune":rollTwice==="keep-lower"?"misfortune":null]));for(const trait of fortuneMisfortune)rollOptions.add(trait);if(rollOptions.has("fortune")&&rollOptions.has("misfortune")){for(const sub of substitutions)rollOptions.delete(`substitute:${sub.slug}`),check.calculateTotal(rollOptions);return["1d20",["PF2E.TraitFortune","PF2E.TraitMisfortune"]]}else if(substitution){const effectType={fortune:"PF2E.TraitFortune",misfortune:"PF2E.TraitMisfortune"}[substitution.effectType],extraTag=game.i18n.format("PF2E.SpecificRule.SubstituteRoll.EffectType",{type:game.i18n.localize(effectType),substitution:reduceItemName(game.i18n.localize(substitution.label))});return[substitution.value.toString(),[extraTag]]}else return context.rollTwice==="keep-lower"?["2d20kl",["PF2E.TraitMisfortune"]]:context.rollTwice==="keep-higher"?["2d20kh",["PF2E.TraitFortune"]]:["1d20",[]]})();extraTags.push(...tagsFromDice);const options={type:context.type,identifier:context.identifier,action:context.action&&sluggify(context.action)||null,rollerId:game.userId,isReroll,totalModifier:check.totalModifier,damaging:!!context.damaging,domains:context.domains},totalModifierPart=signedInteger(check.totalModifier,{emptyStringZero:!0}),roll=await new CheckRoll(`${dice}${totalModifierPart}`,{},options).evaluate({async:!0}),dosAdjustments=context.dosAdjustments?.filter(a=>a.predicate?.test(rollOptions)??!0).reduce((record,data)=>{for(const outcome of["all",...DEGREE_OF_SUCCESS_STRINGS])data.adjustments[outcome]&&(record[outcome]=deepClone(data.adjustments[outcome]));return record},{})??{},degree=context.dc?new DegreeOfSuccess(roll,context.dc,dosAdjustments):null;degree&&(context.outcome=DEGREE_OF_SUCCESS_STRINGS[degree.value],context.unadjustedOutcome=DEGREE_OF_SUCCESS_STRINGS[degree.unadjusted],roll.options.degreeOfSuccess=degree.value);const notes=context.notes?.map(n=>n instanceof RollNotePF2e?n:new RollNotePF2e(n)).filter(note=>{if(!note.predicate.test([...rollOptions,...note.rule?.item.getRollOptions("parent")??[]]))return!1;if(!context.dc||note.outcome.length===0)return!0;const outcome=context.outcome??context.unadjustedOutcome;return!!(outcome&¬e.outcome.includes(outcome))})??[],notesList=RollNotePF2e.notesToHTML(notes),item=context.item??null,flavor=await(async()=>{const result=await __privateMethod(this,_createResultFlavor,createResultFlavor_fn).call(this,{degree,target:context.target??null}),tags=__privateMethod(this,_createTagFlavor,createTagFlavor_fn).call(this,{check,context,extraTags}),title=(context.title??check.slug).trim();return[title.startsWith("
${message}
`,defaultYes:!1,yes:()=>{key in(actor._source.system.proficiencies?.attacks??{})&&actor.update({[`system.proficiencies.attacks.-=${key}`]:null})}})}__name(remove,"remove"),__name2(remove,"remove");const ManageAttackProficiencies={add,remove},_AttributeBuilder=class extends Application{static{__name(this,"_AttributeBuilder")}constructor(actor){super(),__privateAdd(this,_createButtons),__privateAdd(this,_calculateAncestryBoosts),__privateAdd(this,_calculateBackgroundBoosts),__privateAdd(this,_calculateLeveledBoosts),__privateAdd(this,_getBoostFlawLabels),__publicField(this,"actor"),__privateAdd(this,_abpEnabled,void 0),this.actor=actor,__privateSet(this,_abpEnabled,game.pf2e.variantRules.AutomaticBonusProgression.isEnabled(actor)),actor.apps[this.appId]=this}static get defaultOptions(){return{...super.defaultOptions,classes:["attribute-builder"],title:game.i18n.localize("PF2E.Actor.Character.Attribute.Boosts"),template:"systems/pf2e/templates/actors/character/attribute-builder.hbs",width:"auto",height:"auto"}}get id(){return`attribute-builder-${this.actor.uuid}`}async getData(options={}){const{actor}=this,build=actor.system.build.attributes;return{...await super.getData(options),actor,attributes:CONFIG.PF2E.abilities,manual:build.manual,ancestry:actor.ancestry,background:actor.background,class:actor.class,attributeModifiers:mapValues$1(actor.abilities,(value,attribute)=>{const mod=build.manual?actor._source.system.abilities?.[attribute].mod??0:value.base;return{mod:addSign(Number(mod.toFixed(1))),label:CONFIG.PF2E.abilities[attribute]}}),manualKeyAttribute:actor.keyAttribute,keyOptions:build.keyOptions,...__privateMethod(this,_calculateAncestryBoosts,calculateAncestryBoosts_fn).call(this),backgroundBoosts:__privateMethod(this,_calculateBackgroundBoosts,calculateBackgroundBoosts_fn).call(this),legacyFlaws:actor.ancestry?.system.voluntary?.boost!==void 0,levelBoosts:__privateMethod(this,_calculateLeveledBoosts,calculateLeveledBoosts_fn).call(this)}}async _render(force,options){return maintainFocusInRender(this,()=>super._render(force,options))}async close(options={}){return delete this.actor.apps[this.appId],super.close(options)}activateListeners($html){super.activateListeners($html);const html=$html[0],{actor}=this;$html.find("[data-tooltip-content]").tooltipster({contentAsHTML:!0,arrow:!1,debug:!1,interactive:!0,maxWidth:350,side:["bottom"],theme:"crb-hover"});for(const input of htmlQueryAll(html,"input[type=text], input[type=number]"))input.addEventListener("focus",()=>{input.type==="text"&&input.dataset.dtype==="Number"&&(input.value=input.value.replace(/[^-.0-9]/g,""),input.type="number"),input.select()}),input.addEventListener("blur",()=>{if(input.type==="number"&&input.dataset.dtype==="Number"){input.type="text";const newValue=Math.clamped(Number(input.value)||0,-5,10);input.value=addSign(newValue);const propertyPath=input.dataset.property;if(!propertyPath)throw ErrorPF2e("Empty property path");actor.update({[propertyPath]:newValue})}});htmlQuery(html,"[data-action=toggle-alternate-ancestry-boosts]")?.addEventListener("click",()=>{actor.ancestry&&(actor.ancestry.system.alternateAncestryBoosts?actor.ancestry.update({"system.-=alternateAncestryBoosts":null}):actor.ancestry.update({"system.alternateAncestryBoosts":[]}))}),htmlQuery(html,"[data-action=toggle-legacy-voluntary-flaw]")?.addEventListener("click",async()=>{const ancestry=actor.ancestry;if(!ancestry)return;const voluntary=ancestry.system.voluntary;if(voluntary?.boost!==void 0){const flaws=uniq(voluntary.flaws);ancestry.update({system:{voluntary:{"-=boost":null,flaws}}})}else{const flaws=voluntary?.flaws.slice(0,2)??[];ancestry.update({system:{voluntary:{boost:null,flaws}}})}});for(const button of htmlQueryAll(html,"[data-section=ancestry] .boost"))button.addEventListener("click",async()=>{const ancestry=actor.ancestry,attribute=button.dataset.attribute;if(!ancestry||!setHasElement(ATTRIBUTE_ABBREVIATIONS,attribute))return;if(ancestry.system.alternateAncestryBoosts){const existingBoosts=ancestry.system.alternateAncestryBoosts,boosts=existingBoosts.includes(attribute)?existingBoosts.filter(b=>b!==attribute):[...existingBoosts,attribute].slice(0,2);ancestry.update({"system.alternateAncestryBoosts":boosts});return}const boostToRemove=Object.entries(ancestry.system.boosts??{}).find(([,b])=>b.selected===attribute);if(boostToRemove){await ancestry.update({[`system.boosts.${boostToRemove[0]}.selected`]:null});return}const freeBoost=Object.entries(ancestry.system.boosts??{}).find(([,b])=>!b.selected&&b.value.length>0);freeBoost&&await ancestry.update({[`system.boosts.${freeBoost[0]}.selected`]:attribute})});for(const button of htmlQueryAll(html,"[data-section=voluntary] .boost-button"))button.addEventListener("click",()=>{const ancestry=actor.ancestry,attribute=button.dataset.attribute;if(!ancestry||!setHasElement(ATTRIBUTE_ABBREVIATIONS,attribute))return;const removing=button.classList.contains("selected");if(button.dataset.action==="flaw"){const{flaws,boost}=ancestry.system.voluntary??{flaws:[]},alreadyHasFlaw=flaws.includes(attribute),isLegacy=boost!==void 0;if(removing&&alreadyHasFlaw&&!boost){flaws.splice(flaws.indexOf(attribute),1),ancestry.update({system:{voluntary:{flaws}}});return}const canDoubleFlaw=ancestry.lockedBoosts.includes(attribute)&&isLegacy,maxFlaws=isLegacy?2:6;flaws.length${game.i18n.format("PF2E.CraftingTab.RemoveFormulaDialogQuestion",{name:name2})}
`,title=game.i18n.localize("PF2E.CraftingTab.RemoveFormulaDialogTitle");if(await Dialog.confirm({title,content})){const actorFormulas=this.actor.toObject().system.crafting?.formulas??[];actorFormulas.findSplice(f=>f.uuid===itemUuid),this.actor.update({"system.crafting.formulas":actorFormulas})}}),htmlQuery(element,"a.formula-unprepare")?.addEventListener("click",async()=>{const itemUuid=element.dataset.itemId,index=element.dataset.itemIndex,entrySelector=element.dataset.entrySelector;if(!itemUuid||!index||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");const name2=__privateGet(this,_knownFormulas)[itemUuid]?.name,content=`${game.i18n.format("PF2E.CraftingTab.UnprepareFormulaDialogQuestion",{name:name2})}
`,title=game.i18n.localize("PF2E.CraftingTab.UnprepareFormulaDialogTitle");await Dialog.confirm({title,content})&&await craftingEntry.unprepareFormula(Number(index),itemUuid)})}const $craftingTab=$html.find(".tab.crafting"),$craftingOptions=$craftingTab.find(".crafting-options input:checkbox");$craftingOptions.on("click",async event=>{const flags=[];$craftingOptions.each((_index,element)=>{element!==event.target&&flags.push($(element).attr("flag"))}),flags.forEach(async flag=>{await this.actor.setFlag("pf2e",flag,!1)})}),$craftingTab.find("a[data-action=quick-add]").on("click",async event=>{const{itemUuid}=event.currentTarget.dataset,formula=(await this.actor.getCraftingFormulas()).find(f=>f.uuid===itemUuid);if(!formula)return;const entries=(await this.actor.getCraftingEntries()).filter(e=>!!e.selector&&e.checkEntryRequirements(formula,{warn:!1}));for(const entry of entries)await entry.prepareFormula(formula);entries.length===0&&ui.notifications.warn(game.i18n.localize("PF2E.CraftingTab.NoEligibleEntry"))});const $formulas=$craftingTab.find(".craftingEntry-list");$formulas.find(".toggle-formula-expended").on("click",async event=>{const $target=$(event.currentTarget),itemUUID=$target.closest("li.formula-item").attr("data-item-id"),index=$target.closest("li.formula-item").attr("data-item-index"),entrySelector=$target.closest("li.crafting-entry").attr("data-entry-selector");if(!itemUUID||!index||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");await craftingEntry.toggleFormulaExpended(Number(index),itemUUID)}),$formulas.find(".toggle-signature-item").on("click",async event=>{const $target=$(event.currentTarget),itemUUID=$target.closest("li.formula-item").attr("data-item-id"),entrySelector=$target.closest("li.crafting-entry").attr("data-entry-selector");if(!itemUUID||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");await craftingEntry.toggleSignatureItem(itemUUID)}),$formulas.find(".infused-reagents").on("change",event=>{const change=Number($(event.target).val()),infusedReagents=this.actor.system.resources.crafting.infusedReagents,value=Math.clamped(change,0,infusedReagents?.max??0);this.actor.update({"system.resources.crafting.infusedReagents.value":value})}),$formulas.find(".daily-crafting").on("click",async()=>await this.actor.performDailyCrafting());for(const spellcastingCollectionEl of htmlQueryAll(html,".spellcasting-entry[data-item-id]")){const entry=this.actor.spellcasting.get(spellcastingCollectionEl.dataset.itemId??"");htmlQuery(spellcastingCollectionEl,"[data-action=spell-attack]")?.addEventListener("click",event=>{entry?.statistic?.check.roll(eventToRollParams(event))})}PCSheetTabManager.initialize(this.actor,$html.find("a[data-action=manage-tabs]")[0]);for(const link of htmlQueryAll(html,"[data-action=browse-feats]"))link.addEventListener("click",()=>__privateMethod(this,_onClickBrowseFeats,onClickBrowseFeats_fn).call(this,link));htmlQuery(html,".tab[data-tab=biography]")?.addEventListener("click",event=>{const section=htmlClosest(event.target,"a[data-action=toggle-bio-visibility")?.dataset.section;if(tupleHasValue(["appearance","backstory","personality","campaign"],section)){event.stopPropagation();const{biography}=this.actor.system.details,path=`system.details.biography.visibility.${section}`;this.actor.update({[path]:!biography.visibility[section]})}})}activateInventoryListeners(panel){super.activateInventoryListeners(panel),(this.isEditable?htmlQuery(panel,".inventory-pane"):null)?.addEventListener("click",event=>{const link=htmlClosest(event.target,"a[data-action=toggle-invested]"),itemId=htmlClosest(link,".item")?.dataset.itemId;itemId&&this.actor.toggleInvested(itemId)})}toggleInitiativeLink(link){if(link??=htmlQuery(this.element.get(0),"aside a[data-action=roll-initiative]"),!link)return;const alreadyRolled=game.combat&&typeof game.combat.combatants.find(c=>c.actor===this.actor)?.initiative=="number";if(!!(this.isEditable&&game.combat&&!alreadyRolled))link.classList.remove("disabled"),link.removeAttribute("title");else{link.classList.add("disabled");const reason=game.combat?alreadyRolled?"AlreadyRolled":null:"NoActiveEncounter";reason&&(link.title=game.i18n.format(`PF2E.Encounter.${reason}`,{actor:this.actor.name}))}}async _onDropItem(event,data){const item=await ItemPF2e.fromDropData(data);if(!item)throw ErrorPF2e("Unable to create item from drop data!");if(this.actor.uuid===item.parent?.uuid)return super._onDropItem(event,data);if(item.isOfType("feat")){const slotData=__privateMethod(this,_getFeatSlotData,getFeatSlotData_fn).call(this,event);return this.actor.feats.insertFeat(item,slotData)}return super._onDropItem(event,data)}async _onDrop(event){const dataString=event.dataTransfer?.getData("text/plain"),dropData=(()=>{try{return JSON.parse(dataString??"")}catch{return null}})();if(dropData)if(isObject(dropData.pf2e)&&dropData.pf2e.type==="CraftingFormula"){const dropEntrySelector=typeof dropData.entrySelector=="string"?dropData.entrySelector:null;if(!dropEntrySelector){const containerEl=htmlClosest(event.target,".item-container");if(containerEl?.dataset.containerType==="craftingEntry"){const entrySelector=containerEl.dataset.entrySelector??"",craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)return;const craftingFormulas=await this.actor.getCraftingFormulas(),uuid2=dropData.pf2e.itemUuid,formula=craftingFormulas.find(f=>f.uuid===uuid2);formula&&craftingEntry.prepareFormula(formula);return}}const uuid=dropData.pf2e.itemUuid;if(typeof uuid=="string"){const formula=__privateGet(this,_knownFormulas)[uuid];if(formula){const targetUuid=htmlClosest(event.target,"li.formula-item")?.dataset.itemId??"";return __privateMethod(this,_sortFormulas,sortFormulas_fn).call(this,formula,targetUuid,dropEntrySelector)}}}else return super._onDrop(event)}async _onSortItem(event,itemSource){const item=this.actor.items.get(itemSource._id);if(item?.isOfType("feat")){const featSlot=__privateMethod(this,_getFeatSlotData,getFeatSlotData_fn).call(this,event);if(featSlot){const group=this.actor.feats.get(featSlot.groupId)??null,resorting=item.group===group&&!group?.slotted;if(group?.slotted&&!featSlot.slotId)return[];if(!resorting)return this.actor.feats.insertFeat(item,featSlot)}}return super._onSortItem(event,itemSource)}openTab(name2){["encounter","exploration","downtime"].includes(name2)?(super.openTab("actions"),this._tabs[1].activate(name2)):super.openTab(name2)}};_knownFormulas=new WeakMap,_formulaQuantities=new WeakMap,_prepareAbilities=new WeakSet,prepareAbilities_fn=__name2(function(){const{actor}=this,result={encounter:{action:{label:game.i18n.localize("PF2E.ActionsActionsHeader"),actions:[]},reaction:{label:game.i18n.localize("PF2E.ActionsReactionsHeader"),actions:[]},free:{label:game.i18n.localize("PF2E.ActionsFreeActionsHeader"),actions:[]}},exploration:{active:[],other:[]},downtime:[]};for(const item of actor.items){if(!item.isOfType("action")&&!(item.isOfType("feat")&&item.actionCost)||item.slug==="elemental-blast"&&this.actor.flags.pf2e.kineticist)continue;const img=(()=>{const actionIcon=getActionIcon(item.actionCost),defaultIcon=ItemPF2e.getDefaultArtwork(item._source).img;return item.isOfType("action")&&![actionIcon,defaultIcon].includes(item.img)?item.img:item.system.selfEffect?.img??actionIcon})(),traits=item.system.traits.value,traitDescriptions2=item.isOfType("feat")?CONFIG.PF2E.featTraits:CONFIG.PF2E.actionTraits,action2={...pick$1(item,["id","name","actionCost","frequency"]),img,glyph:getActionGlyph(item.actionCost),traits:createSheetTags(traitDescriptions2,traits),feat:item.isOfType("feat")?item:null,hasEffect:!!item.system.selfEffect};if(traits.includes("exploration")){const active=actor.system.exploration.includes(item.id);action2.exploration={active},(active?result.exploration.active:result.exploration.other).push(action2)}else traits.includes("downtime")?result.downtime.push(action2):result.encounter[item.actionCost?.type??"free"]?.actions.push(action2)}for(const list of["action","reaction","free"])result.encounter[list].actions.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang));return result.exploration.active.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result.exploration.other.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result.downtime.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result},"#prepareAbilities"),_prepareCraftingEntries=new WeakSet,prepareCraftingEntries_fn=__name2(async function(formulas){const craftingEntries={dailyCrafting:!1,other:[],alchemical:{entries:[],totalReagentCost:0,infusedReagents:this.actor.system.resources.crafting.infusedReagents}};for(const entry of await this.actor.getCraftingEntries(formulas))entry.isAlchemical?(craftingEntries.alchemical.entries.push(entry),craftingEntries.alchemical.totalReagentCost+=entry.reagentCost||0,craftingEntries.dailyCrafting=!0):(craftingEntries.other.push(entry),entry.isDailyPrep&&(craftingEntries.dailyCrafting=!0));return craftingEntries},"#prepareCraftingEntries"),_getBlastData=new WeakSet,getBlastData_fn=__name2(async function(blast,config){const damageType=config.damageTypes.find(dt=>dt.selected)?.value??"untyped",formulaFor=__name2((outcome,melee=!0)=>blast.damage({element:config.element,damageType,melee,outcome,getFormula:!0}),"formulaFor");return{...config,damageType,formula:{melee:{damage:await formulaFor("success"),critical:await formulaFor("criticalSuccess")},ranged:{damage:await formulaFor("success",!1),critical:await formulaFor("criticalSuccess",!1)}}}},"#getBlastData"),_activateBlastListeners=new WeakSet,activateBlastListeners_fn=__name2(function(panel){const blastList=htmlQuery(panel,"ol.elemental-blasts"),{elementTraits:elementTraits2,damageTypes:damageTypes2}=CONFIG.PF2E,selectors=["roll-attack","roll-damage","set-damage-type"].map(s=>`button[data-action=${s}]`).join(",");blastList?.addEventListener("click",async event=>{const button=htmlClosest(event.target,selectors),blastRow=htmlClosest(button,"li");if(!(button&&blastRow))return;event.stopPropagation();const blast=new ElementalBlast(this.actor),{element}=blastRow.dataset,damageType=button.value||blastRow.dataset.damageType;if(!objectHasKey(elementTraits2,element))throw ErrorPF2e("Unexpected error retrieve element");if(!objectHasKey(damageTypes2,damageType))throw ErrorPF2e("Unexpected error retrieving damage type");const melee=button.dataset.melee==="true";switch(button.dataset.action){case"roll-attack":{const mapIncreases=Math.clamped(Number(button.dataset.mapIncreases)||0,0,2);await blast.attack({mapIncreases,element,damageType,melee,event});break}case"roll-damage":{const outcome=button.dataset.outcome==="success"?"success":"criticalSuccess";await blast.damage({element,damageType,melee,outcome,event});break}case"set-damage-type":blast.setDamageType({element,damageType})}});for(const damageButton of htmlQueryAll(blastList,"button[data-action=roll-damage]")){const formula=damageButton.dataset.formula??"";$(damageButton).tooltipster({position:"top",theme:"crb-hover",content:formula})}},"#activateBlastListeners"),_onClickBrowseFeats=new WeakSet,onClickBrowseFeats_fn=__name2(async function(element){const maxLevel=Number(element.dataset.level)||this.actor.level,checkboxesFilterCodes=(element.dataset.filter??"").split(",").filter(s=>!!s).map(s=>s.trim()),featTab=game.pf2e.compendiumBrowser.tabs.feat,filter2=await featTab.getFilterData(),level=filter2.sliders.level;level.values.max=Math.min(maxLevel,level.values.upperLimit),level.isExpanded=level.values.max!==level.values.upperLimit;const{category}=filter2.checkboxes,{traits}=filter2.multiselects;for(const filterCode of checkboxesFilterCodes){const[filterType,...rest]=filterCode.split("-"),value=rest.join("-");if(!(filterType&&value))throw ErrorPF2e(`Invalid filter value for opening the compendium browser: "${filterCode}"`);if(filterType==="category"&&value in category.options)category.isExpanded=!0,category.options[value].selected=!0,category.selected.push(value);else if(filterType==="traits"){const trait=traits.options.find(t=>t.value===value);trait&&traits.selected.push(deepClone(trait))}else filterType==="conjunction"&&(value==="and"||value==="or")&&(filter2.multiselects.traits.conjunction=value)}return featTab.open(filter2)},"#onClickBrowseFeats"),_onChangeAdjustStat=new WeakSet,onChangeAdjustStat_fn=__name2(function(selectElem){const propertyKey=selectElem.dataset.property??"",currentValue=getProperty(this.actor,propertyKey),selectedValue=Number(selectElem.value);if(typeof currentValue!="number"||Number.isNaN(selectedValue))throw ErrorPF2e("Actor property not found");const newValue=Math.clamped(selectedValue,0,4),clone=this.actor.clone({[propertyKey]:newValue},{keepId:!0});newValue!==getProperty(clone,propertyKey)&&(ui.notifications.warn("PF2E.ErrorMessage.MinimumProfLevelSetByFeatures",{localize:!0}),selectElem.value=currentValue.toString())},"#onChangeAdjustStat"),_onChangeAdjustItemStat=new WeakSet,onChangeAdjustItemStat_fn=__name2(async function(event){const $select=$(event.delegateTarget),propertyKey=$select.attr("data-item-property")??"",selectedValue=Number($select.val()),itemId=$select.closest(".item").attr("data-item-id")??"",item=this.actor.items.get(itemId);if(!item)throw ErrorPF2e("Item not found");const newValue=(()=>{if(item.isOfType("spellcastingEntry"))return{"system.proficiency.value":()=>Math.clamped(selectedValue,0,4)}[propertyKey]?.();if(item.isOfType("lore"))return Math.clamped(selectedValue,0,4);throw ErrorPF2e("Item not recognized")})();typeof newValue=="number"&&await item.update({[propertyKey]:newValue}),newValue!==getProperty(item,propertyKey)&&ui.notifications.warn(game.i18n.localize("PF2E.ErrorMessage.MinimumProfLevelSetByFeatures"))},"#onChangeAdjustItemStat"),_onClickAdjustItemStat=new WeakSet,onClickAdjustItemStat_fn=__name2(async function(event){const $button=$(event.delegateTarget),itemId=$button.closest(".item").attr("data-item-id")??"",item=this.actor.items.get(itemId);if(!item)throw ErrorPF2e("Item not found");const propertyKey=$button.attr("data-item-property")??"",change=event.type==="click"?1:-1,newValue=(()=>{if(item.isOfType("spellcastingEntry")){const proficiencyRank=item.system.proficiency.value;return{"system.proficiency.value":()=>Math.clamped(proficiencyRank+change,0,4)}[propertyKey]?.()}else if(item.isOfType("lore")){const currentRank=item.system.proficient.value;return Math.clamped(currentRank+change,0,4)}else throw ErrorPF2e("Item not recognized")})();typeof newValue=="number"&&await item.update({[propertyKey]:newValue})},"#onClickAdjustItemStat"),_getFeatSlotData=new WeakSet,getFeatSlotData_fn=__name2(function(event){const groupId=htmlClosest(event.target,"[data-group-id]")?.dataset.groupId,slotId=htmlClosest(event.target,"[data-slot-id]")?.dataset.slotId||null;return groupId?{groupId,slotId}:null},"#getFeatSlotData"),_sortFormulas=new WeakSet,sortFormulas_fn=__name2(async function(sourceFormula,targetUuid,entrySelector){if(!UUIDUtils.isItemUUID(targetUuid)||sourceFormula.uuid===targetUuid)return;const sourceLevel=sourceFormula.level,targetLevel=__privateGet(this,_knownFormulas)[targetUuid].level;if(!entrySelector&&sourceLevel!==targetLevel)return;const performSort=__name2(async(formulas2,source2,target2,siblings)=>{const results=SortingHelpers.performIntegerSort(source2,{target:target2,siblings});if(results.length){for(const result of results){const formula=formulas2.find(f=>f===result.target);formula&&(formula.sort=result.update.sort)}entrySelector?await(await this.actor.getCraftingEntry(entrySelector))?.updateFormulas(formulas2):await this.actor.update({"system.crafting.formulas":formulas2})}},"performSort");if(entrySelector){const entry=await this.actor.getCraftingEntry(entrySelector);if(!entry)throw ErrorPF2e(`Crafting entry "${entrySelector}" doesn't exist!`);const formulas2=deepClone(entry.preparedFormulaData),source2=formulas2.find(f=>f.itemUUID===sourceFormula.uuid),target2=formulas2.find(f=>f.itemUUID===targetUuid);if(source2&&target2){const siblings=formulas2.filter(f=>f.itemUUID!==source2.itemUUID);return performSort(formulas2,source2,target2,siblings)}}const formulas=this.actor.toObject().system.crafting?.formulas??[],source=formulas.find(f=>f.uuid===sourceFormula.uuid),target=formulas.find(f=>f.uuid===targetUuid);if(source&&target){const siblings=formulas.filter(f=>f.uuid!==source.uuid);return performSort(formulas,source,target,siblings)}},"#sortFormulas"),__name2(_CharacterSheetPF2e,"CharacterSheetPF2e");let CharacterSheetPF2e=_CharacterSheetPF2e;const _AttackPopout=class extends CharacterSheetPF2e{static{__name(this,"_AttackPopout")}constructor(object,options){if(super(object,options),__publicField(this,"type","strike"),__privateAdd(this,_strikeItemId,""),__privateAdd(this,_strikeSlug,""),__privateAdd(this,_strike,void 0),__privateAdd(this,_elementTrait,void 0),__privateAdd(this,_blasts,[]),!options.type)throw ErrorPF2e('AttackPopout is missing mandatory "type" option.');if(options.type==="blast"){if(!options.elementTrait)throw ErrorPF2e('AttackPopout of type "blast" is missing mandatory "elementalTrait" option.');__privateSet(this,_elementTrait,options.elementTrait)}else{if(!options.strikeSlug)throw ErrorPF2e('AttackPopout of type "strike" is missing mandatory "strikeSlug" option.');if(!options.strikeItemId)throw ErrorPF2e('AttackPopout of type "strike" is missing mandatory "strikeItemId" option.');__privateSet(this,_strikeSlug,options.strikeSlug),__privateSet(this,_strikeItemId,options.strikeItemId)}this.type=options.type}get template(){return"systems/pf2e/templates/actors/character/attack-popout.hbs"}get id(){const id=super.id;return this.type==="strike"?`${id}-strike-${__privateGet(this,_strikeItemId)}-${__privateGet(this,_strikeSlug)}`:`${id}-blast-${__privateGet(this,_elementTrait)}`}static get defaultOptions(){return{...super.defaultOptions,submitOnChange:!1,submitOnClose:!1,width:480,height:"auto",resizable:!1}}get label(){return this.type==="blast"?__privateGet(this,_blasts).at(0)?.label??null:__privateGet(this,_strike)?.label??null}async getData(options){const base=await super.getData(options);return this.type==="blast"?(base.elementalBlasts=__privateSet(this,_blasts,base.elementalBlasts.filter(b=>b.element===__privateGet(this,_elementTrait))),base.data.actions=[],base.toggles=base.toggles.filter(t=>t.domain==="elemental-blast")):(base.elementalBlasts=[],__privateGet(this,_strikeSlug)&&__privateGet(this,_strikeItemId)&&__privateSet(this,_strike,base.data.actions.find(a=>a.item.id===__privateGet(this,_strikeItemId)&&a.slug===__privateGet(this,_strikeSlug)))),{...base,strike:__privateGet(this,_strike),strikeIndex:base.data.actions.findIndex(a=>a===__privateGet(this,_strike)),popoutType:this.type}}activateListeners($html){super.activateListeners($html);const html=$html[0],{label}=this;if(label){const title=htmlQuery(htmlClosest(html,"div.window-app"),"h4.window-title");title&&(title.innerHTML=game.i18n.localize(label))}}_getHeaderButtons(){return super._getHeaderButtons().filter(b=>b.label==="Close")}};_strikeItemId=new WeakMap,_strikeSlug=new WeakMap,_strike=new WeakMap,_elementTrait=new WeakMap,_blasts=new WeakMap,__name2(_AttackPopout,"AttackPopout");let AttackPopout=_AttackPopout;const _MacroPF2e=class extends Macro{static{__name(this,"_MacroPF2e")}get visible(){return this.permission>=CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER}};__name2(_MacroPF2e,"MacroPF2e");let MacroPF2e=_MacroPF2e;async function rollItemMacro(itemId){const speaker=ChatMessage.getSpeaker(),item=(canvas.tokens.get(speaker.token??"")?.actor??game.actors.get(speaker.actor??""))?.items?.get(itemId);if(!item){ui.notifications.warn(`Your controlled Actor does not have an item with ID ${itemId}`);return}return item.isOfType("action","feat")&&item.system.selfEffect?createSelfEffectMessage(item):item.toChat()}__name(rollItemMacro,"rollItemMacro"),__name2(rollItemMacro,"rollItemMacro");async function createActionMacro({actorUUID,actionIndex,elementTrait,slot}){const actor=resolveMacroActor(actorUUID);if(!actor?.isOfType("character","npc"))return;const data=(()=>{if(actor.isOfType("character")&&objectHasKey(CONFIG.PF2E.elementTraits,elementTrait)){const config=new ElementalBlast(actor).configs.find(c=>c.element===elementTrait);return config?{name:game.i18n.localize(config.label),command:`game.pf2e.rollActionMacro({ actorUUID: "${actorUUID}", type: "blast", elementTrait: "${elementTrait}" })`,img:config.img}:null}else if(actionIndex!==void 0){const action2=actor.system.actions[actionIndex];return action2?{name:`${game.i18n.localize("PF2E.WeaponStrikeLabel")}: ${action2.label}`,command:`game.pf2e.rollActionMacro({ actorUUID: "${actorUUID}", type: "strike", itemId: "${action2.item.id}", slug: "${action2.slug}" })`,img:action2.imageUrl}:null}return null})();if(!data)return;const actionMacro=game.macros.find(macro=>macro.name===data.name&¯o.command===data.command)??await MacroPF2e.create({command:data.command,name:data.name,type:"script",img:data.img,flags:{pf2e:{actionMacro:!0}}},{renderSheet:!1});game.user.assignHotbarMacro(actionMacro??null,slot)}__name(createActionMacro,"createActionMacro"),__name2(createActionMacro,"createActionMacro");async function rollActionMacro({actorUUID,itemId,elementTrait,slug,type}){const actor=resolveMacroActor(actorUUID);if(!actor?.isOfType("character","npc")){ui.notifications.error("PF2E.MacroActionNoActorError",{localize:!0});return}const strikes=actor.system.actions,strike=strikes.find(s=>s.item.id===itemId&&s.slug===slug)??strikes.find(s=>s.slug===slug);if(actor.isOfType("character")){const closedExisting=__name2(partialId=>{const appId=`AttackPopout-Actor-${actor.id}-${partialId}`,existing=Object.values(actor.apps).find(a=>a?.id===appId);return existing?(existing.close({force:!0}),!0):!1},"closedExisting");switch(type){case"blast":{if(closedExisting(`blast-${elementTrait}`))return;if(!actor.itemTypes.effect.find(e=>e.slug==="effect-kinetic-aura")){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}new AttackPopout(actor,{type,elementTrait}).render(!0);return}case"strike":{if(closedExisting(`strike-${itemId}-${slug}`))return;if(!strike){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}new AttackPopout(actor,{type,strikeItemId:itemId,strikeSlug:slug}).render(!0);return}}}if(!strike){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}const meleeOrRanged=strike.item.isMelee?"melee":"ranged",identifier=`${strike.item.id}.${strike.slug}.${meleeOrRanged}`,description=await TextEditor.enrichHTML(game.i18n.localize(strike.description),{async:!0}),templateData={actor,strike,identifier,description},content=await renderTemplate("systems/pf2e/templates/chat/strike-card.hbs",templateData),token=actor.token??actor.getActiveTokens(!0,!0).shift()??null,chatData={speaker:ChatMessagePF2e.getSpeaker({actor,token}),content,type:CONST.CHAT_MESSAGE_TYPES.OTHER},rollMode=game.settings.get("core","rollMode");return["gmroll","blindroll"].includes(rollMode)&&(chatData.whisper=ChatMessage.getWhisperRecipients("GM").map(u=>u.id)),rollMode==="blindroll"&&(chatData.blind=!0),ChatMessagePF2e.create(chatData)}__name(rollActionMacro,"rollActionMacro"),__name2(rollActionMacro,"rollActionMacro");async function createSkillMacro(skill,skillName,actorId,slot){const dictName=SKILL_DICTIONARY[skill]??skill,command=` + `,buttons:{yes:{icon:fontAwesomeIcon("hand-holding-medical").outerHTML,label:localize("Title"),callback:applyChanges},no:{icon:fontAwesomeIcon("times").outerHTML,label:localize("Cancel")}},default:"yes"}).render(!0)}__name(encouragingWords,"encouragingWords"),__name2(encouragingWords,"encouragingWords");const CANTRIP_DECK_ID="tLa4bewBhyqzi6Ow",scrollCompendiumIds={1:"RjuupS9xyXDLgyIr",2:"Y7UD64foDbDMV9sx",3:"ZmefGBXGJF3CFDbn",4:"QSQZJ5BC3DeHv153",5:"tjLvRWklAylFhBHQ",6:"4sGIy77COooxhQuC",7:"fomEZZ4MxVVK3uVu",8:"iPki3yuoucnj7bIt",9:"cFHomF3tty8Wi1e5",10:"o1XIHJ4MJyroAHfF"},SPELL_CONSUMABLE_NAME_TEMPLATES={cantripDeck5:"PF2E.Item.Physical.FromSpell.CantripDeck5",scroll:"PF2E.Item.Physical.FromSpell.Scroll",wand:"PF2E.Item.Physical.FromSpell.Wand"},wandCompendiumIds={1:"UJWiN0K3jqVjxvKk",2:"vJZ49cgi8szuQXAD",3:"wrDmWkGxmwzYtfiA",4:"Sn7v9SsbEDMUIwrO",5:"5BF7zMnrPYzyigCs",6:"kiXh4SUWKr166ZeM",7:"nmXPj9zuMRQBNT60",8:"Qs8RgNH6thRPv2jt",9:"Fgv722039TVM5JTc"};function getIdForSpellConsumable(type,heightenedLevel){switch(type){case"cantripDeck5":return CANTRIP_DECK_ID;case"scroll":return scrollCompendiumIds[heightenedLevel]??null;default:return wandCompendiumIds[heightenedLevel]??null}}__name(getIdForSpellConsumable,"getIdForSpellConsumable"),__name2(getIdForSpellConsumable,"getIdForSpellConsumable");function getNameForSpellConsumable(type,spellName,heightenedLevel){const templateId=SPELL_CONSUMABLE_NAME_TEMPLATES[type]||`${type} of {name} (Level {level})`;return game.i18n.format(templateId,{name:spellName,level:heightenedLevel})}__name(getNameForSpellConsumable,"getNameForSpellConsumable"),__name2(getNameForSpellConsumable,"getNameForSpellConsumable");function isSpellConsumable(itemId){return itemId===CANTRIP_DECK_ID||Object.values(scrollCompendiumIds).includes(itemId)||Object.values(wandCompendiumIds).includes(itemId)}__name(isSpellConsumable,"isSpellConsumable"),__name2(isSpellConsumable,"isSpellConsumable");async function createConsumableFromSpell(spell,{type,heightenedLevel=spell.baseRank,mystified=!1}){const pack=game.packs.find(p=>p.collection==="pf2e.equipment-srd"),itemId=getIdForSpellConsumable(type,heightenedLevel),consumable=await pack?.getDocument(itemId??"");if(!(consumable instanceof ConsumablePF2e))throw ErrorPF2e("Failed to retrieve consumable item");const consumableSource=consumable.toObject();consumableSource.system.traits.value.push(...spell.traditions),consumableSource.name=getNameForSpellConsumable(type,spell.name,heightenedLevel);const description=consumableSource.system.description.value;return consumableSource.system.description.value=(()=>{const paragraphElement=document.createElement("p"),linkElement=document.createElement("em");linkElement.append(spell.sourceId?`@UUID[${spell.sourceId}]{${spell.name}}`:spell.description),paragraphElement.append(linkElement);const containerElement=document.createElement("div"),hrElement=document.createElement("hr");return containerElement.append(paragraphElement,hrElement),hrElement.insertAdjacentHTML("afterend",description),containerElement.innerHTML})(),type!=="cantripDeck5"&&(consumableSource.system.spell=spell.clone({"system.location.heightenedLevel":heightenedLevel}).toObject()),mystified&&(consumableSource.system.identification.status="unidentified"),consumableSource}__name(createConsumableFromSpell,"createConsumableFromSpell"),__name2(createConsumableFromSpell,"createConsumableFromSpell");function calculateTrickMagicItemCheckDC(item,options={proficiencyWithoutLevel:!1}){const level=Number(item.level),saveDC=calculateDC(level,options),skills=item.system.traits.value.filter(t=>setHasElement(MAGIC_TRADITIONS,t)).map(tradition=>[traditionSkills[tradition],saveDC]);return Object.fromEntries(skills)}__name(calculateTrickMagicItemCheckDC,"calculateTrickMagicItemCheckDC"),__name2(calculateTrickMagicItemCheckDC,"calculateTrickMagicItemCheckDC");const WEAPON_CATEGORIES=new Set(["unarmed","simple","martial","advanced"]),MELEE_OR_RANGED_GROUPS=new Set(["dart","knife"]),MELEE_WEAPON_GROUPS=new Set([...MELEE_OR_RANGED_GROUPS,"axe","brawling","club","flail","hammer","pick","polearm","shield","spear","sword"]),MANDATORY_RANGED_GROUPS=new Set(["bomb","bow","firearm","sling"]);[...MELEE_WEAPON_GROUPS,...MANDATORY_RANGED_GROUPS];const THROWN_RANGES=new Set([10,15,20,30,40,60,80,100]),WEAPON_RANGES=new Set([...THROWN_RANGES,50,70,90,110,120,140,150,180,200,240,300]),CROSSBOW_WEAPONS=new Set(["arbalest","alchemical-crossbow","crossbow","hand-crossbow","heavy-crossbow","repeating-crossbow","repeating-hand-crossbow","repeating-heavy-crossbow","taw-launcher"]);function isRelevantEvent(event){return!!event&&"ctrlKey"in event&&"metaKey"in event&&"shiftKey"in event}__name(isRelevantEvent,"isRelevantEvent"),__name2(isRelevantEvent,"isRelevantEvent");function eventToRollParams(event,rollType){const key=rollType.type==="check"?"showCheckDialogs":"showDamageDialogs",skipDefault=!game.user.settings[key];if(!isRelevantEvent(event))return{skipDialog:skipDefault};const params={skipDialog:event.shiftKey?!skipDefault:skipDefault};return(event.ctrlKey||event.metaKey)&&(params.rollMode=game.user.isGM?"gmroll":"blindroll"),params}__name(eventToRollParams,"eventToRollParams"),__name2(eventToRollParams,"eventToRollParams");function calculateDaysToNoCost(costs){return Math.ceil((costs.itemPrice.copperValue-costs.materials.copperValue)/costs.reductionPerDay.copperValue)}__name(calculateDaysToNoCost,"calculateDaysToNoCost"),__name2(calculateDaysToNoCost,"calculateDaysToNoCost");async function prepStrings(costs,item){const rollData=item.getRollData();return{reductionPerDay:costs.reductionPerDay.toString(),materialCost:game.i18n.format("PF2E.Actions.Craft.Details.PayMaterials",{cost:costs.materials.toString()}),itemCost:game.i18n.format("PF2E.Actions.Craft.Details.PayFull",{cost:costs.itemPrice.toString()}),lostMaterials:game.i18n.format("PF2E.Actions.Craft.Details.LostMaterials",{cost:costs.lostMaterials.toString()}),itemLink:await TextEditor.enrichHTML(item.link,{rollData,async:!0})}}__name(prepStrings,"prepStrings"),__name2(prepStrings,"prepStrings");function calculateCosts(item,quantity,actor,degreeOfSuccess){const itemPrice=CoinsPF2e.fromPrice(item.price,quantity),materialCosts=itemPrice.scale(.5),lostMaterials=new CoinsPF2e,reductionPerDay=new CoinsPF2e,proficiency=actor.skills.crafting.rank;return proficiency?(degreeOfSuccess===DegreeOfSuccess.CRITICAL_SUCCESS?Object.assign(reductionPerDay,getIncomeForLevel(actor.level+1).rewards[proficiency]):degreeOfSuccess===DegreeOfSuccess.SUCCESS?Object.assign(reductionPerDay,getIncomeForLevel(actor.level).rewards[proficiency]):degreeOfSuccess===DegreeOfSuccess.CRITICAL_FAILURE&&Object.assign(lostMaterials,materialCosts.scale(.1)),{itemPrice,materials:materialCosts,lostMaterials,reductionPerDay}):null}__name(calculateCosts,"calculateCosts"),__name2(calculateCosts,"calculateCosts");async function craftItem(item,itemQuantity,actor,infused){const itemSource=item.toObject();itemSource.system.quantity=itemQuantity,itemSource.system.size=actor.size==="tiny"?"tiny":"med";const itemTraits=item.traits;if(infused&&itemTraits.has("alchemical")&&itemTraits.has("consumable")&&(itemSource.system.traits.value.push("infused"),itemSource.system.temporary=!0),!await actor.addToInventory(itemSource)){ui.notifications.warn(game.i18n.localize("PF2E.Actions.Craft.Warning.CantAddItem"));return}await ChatMessagePF2e.create({user:game.user.id,content:game.i18n.format("PF2E.Actions.Craft.Information.ReceiveItem",{actorName:actor.name,quantity:itemQuantity,itemName:item.name}),speaker:{alias:actor.name}})}__name(craftItem,"craftItem"),__name2(craftItem,"craftItem");async function craftSpellConsumable(item,itemQuantity,actor){const consumableType=item.category;if(!(consumableType==="scroll"||consumableType==="wand"))return;const spellLevel=consumableType==="wand"?Math.ceil(item.level/2)-1:Math.ceil(item.level/2),validSpells=actor.itemTypes.spell.filter(s=>s.baseRank<=spellLevel&&!s.isCantrip&&!s.isFocusSpell&&!s.isRitual).reduce((result,spell)=>(result[spell.baseRank]=[...result[spell.baseRank]||[],spell],result),{}),content=await renderTemplate("systems/pf2e/templates/actors/crafting-select-spell-dialog.hbs",{spells:validSpells});new Dialog({title:game.i18n.localize("PF2E.Actions.Craft.SelectSpellDialog.Title"),content,buttons:{cancel:{icon:'',label:game.i18n.localize("Cancel")},craft:{icon:'',label:game.i18n.localize("PF2E.Actions.Craft.SelectSpellDialog.CraftButtonLabel"),callback:async $dialog=>{const spellId=String($dialog.find("select[name=spell]").val()),spell=actor.items.get(spellId);if(!spell?.isOfType("spell"))return;const item2=await createConsumableFromSpell(spell,{type:consumableType,heightenedLevel:spellLevel});return craftItem(new ConsumablePF2e(item2),itemQuantity,actor)}}},default:"craft"}).render(!0)}__name(craftSpellConsumable,"craftSpellConsumable"),__name2(craftSpellConsumable,"craftSpellConsumable");async function renderCraftingInline(item,roll,quantity,actor,free){if(!actor.isOfType("character"))return null;const degreeOfSuccess=roll.options.degreeOfSuccess??0,costs=calculateCosts(item,quantity,actor,degreeOfSuccess);if(!costs)return null;const daysForZeroCost=degreeOfSuccess>1?calculateDaysToNoCost(costs):0;return await renderTemplate("systems/pf2e/templates/chat/crafting-result.hbs",{daysForZeroCost,strings:await prepStrings(costs,item),item,quantity,success:degreeOfSuccess>1,criticalFailure:degreeOfSuccess===0,free})}__name(renderCraftingInline,"renderCraftingInline"),__name2(renderCraftingInline,"renderCraftingInline");const _RollNotePF2e=class _RollNotePF2e2{static{__name(this,"_RollNotePF2e")}selector;title;text;predicate;outcome;visibility;rule;constructor(params){this.selector=params.selector,this.title=params.title??null,this.text=params.text,this.predicate=new PredicatePF2e(params.predicate??[]),this.outcome=[...params.outcome??[]],this.visibility=params.visibility??null,this.rule=params.rule??null}static notesToHTML(notes){return createHTMLElement("ul",{classes:["notes"],children:notes.flatMap(n=>[` +`,n.toHTML()]).slice(1)})}toHTML(){const element=createHTMLElement("li",{classes:["roll-note"],dataset:{itemId:this.rule?.item.id,visibility:this.visibility},innerHTML:game.i18n.localize(this.text)});if(element.childNodes.length===1&&element.firstChild instanceof HTMLElement&&(element.innerHTML=element.firstChild.innerHTML),this.title){const strong=createHTMLElement("strong",{innerHTML:game.i18n.localize(this.title)});element.prepend(strong," ")}return element}clone(){return new _RollNotePF2e2({...this.toObject(),rule:this.rule})}toObject(){return{selector:this.selector,title:this.title,text:this.text,predicate:this.predicate.toObject(),outcome:this.outcome,visibility:this.visibility}}};__name2(_RollNotePF2e,"RollNotePF2e");let RollNotePF2e=_RollNotePF2e;function normalizeActionChangeData(document2,changed){if(changed.system&&("actionType"in changed.system||"actions"in changed.system)){const actionType=changed.system?.actionType?.value??document2.system.actionType.value,actionCount=Number(changed.system?.actions?.value??document2.system.actions.value);changed.system=mergeObject(changed.system,{actionType:{value:actionType},actions:{value:actionType!=="action"?null:Math.clamped(actionCount,1,3)}})}}__name(normalizeActionChangeData,"normalizeActionChangeData"),__name2(normalizeActionChangeData,"normalizeActionChangeData");function activateActionSheetListeners(item,html){htmlQuery(html,"a[data-action=frequency-add]")?.addEventListener("click",()=>{const frequency={max:1,per:"day"};item.update({system:{frequency}})}),htmlQuery(html,"a[data-action=frequency-delete]")?.addEventListener("click",()=>{item.update({"system.-=frequency":null})}),item.isOfType("action","feat")&&htmlQuery(html,"a[data-action=delete-effect]")?.addEventListener("click",()=>{item._source.system.selfEffect&&item.update({"system.-=selfEffect":null})})}__name(activateActionSheetListeners,"activateActionSheetListeners"),__name2(activateActionSheetListeners,"activateActionSheetListeners");function createSelfEffectSheetData(data){if(!data)return null;const indexEntry=fromUuidSync(data.uuid);indexEntry?.name&&isImageFilePath(indexEntry.img)&&(data.name=indexEntry.name,data.img=indexEntry.img);const parsedUUID=foundry.utils.parseUuid(data.uuid),linkData={id:parsedUUID.documentId??null,type:parsedUUID.documentType??null,pack:parsedUUID.collection instanceof CompendiumCollection?parsedUUID.collection.metadata.id:null};return{...data,...linkData}}__name(createSelfEffectSheetData,"createSelfEffectSheetData"),__name2(createSelfEffectSheetData,"createSelfEffectSheetData");async function handleSelfEffectDrop(sheet,event){if(!sheet.isEditable||sheet.item.system.actionType.value==="passive")return;const item=await(async()=>{try{const dataString=event.dataTransfer?.getData("text/plain"),dropData=JSON.parse(dataString??"");return await ItemPF2e.fromDropData(dropData)??null}catch{return null}})();if(!(item instanceof EffectPF2e))throw ErrorPF2e("Invalid item drop");await sheet.item.update({"system.selfEffect":{uuid:item.uuid,name:item.name}})}__name(handleSelfEffectDrop,"handleSelfEffectDrop"),__name2(handleSelfEffectDrop,"handleSelfEffectDrop");function createActionRangeLabel(range){if(!range?.max)return null;const[key,value]=range.increment?["PF2E.Action.Range.IncrementN",range.increment]:["PF2E.Action.Range.MaxN",range.max];return game.i18n.format(key,{n:value})}__name(createActionRangeLabel,"createActionRangeLabel"),__name2(createActionRangeLabel,"createActionRangeLabel");var LightLevels=(LightLevels2=>(LightLevels2[LightLevels2.DARKNESS=.25]="DARKNESS",LightLevels2[LightLevels2.BRIGHT_LIGHT=.75]="BRIGHT_LIGHT",LightLevels2))(LightLevels||{});let auraCheckLock=Promise.resolve();const checkAuras=foundry.utils.debounce(async function(){if(!(canvas.ready&&this.isInFocus&&this.grid.type===CONST.GRID_TYPES.SQUARE))return;await auraCheckLock;const lock={release:()=>{}};auraCheckLock=new Promise(resolve=>{lock.release=resolve});try{const tokens=this.tokens.reduce((list,token)=>(token.isLinked&&list.some(t=>t.actor===token.actor)||list.push(token),list),[]);for(const token of tokens)await token.object?._animation;for(const aura of tokens.flatMap(t=>Array.from(t.auras.values())))await aura.notifyActors();const sceneActors=new Set(tokens.flatMap(t=>t.actor?.primaryUpdater===game.user?t.actor:[]));for(const actor of sceneActors)actor.checkAreaEffects()}finally{lock.release()}},100),_ScenePF2e=class extends Scene{static{__name(this,"_ScenePF2e")}get rulesBasedVision(){return this.tokenVision?this.flags.pf2e.rulesBasedVision??game.settings.get("pf2e","automation.rulesBasedVision"):!1}get hearingRange(){return this.flags.pf2e.hearingRange}get darknessSyncedToTime(){return this.flags.pf2e.syncDarkness==="enabled"||this.flags.pf2e.syncDarkness==="default"&&game.settings.get("pf2e","worldClock.syncDarkness")}get lightLevel(){return 1-this.darkness}get isBright(){return this.lightLevel>=LightLevels.BRIGHT_LIGHT}get isDimlyLit(){return!this.isBright&&!this.isDark}get isDark(){return this.lightLevel<=LightLevels.DARKNESS}get hasHexGrid(){return![CONST.GRID_TYPES.GRIDLESS,CONST.GRID_TYPES.SQUARE].includes(this.grid.type)}get isInFocus(){const soleUserIsGM=game.user.isGM&&game.users.filter(u=>u.active).length===1;return this.active&&!soleUserIsGM||this.isView&&soleUserIsGM}prepareData(){super.prepareData(),Promise.resolve().then(()=>{this.checkAuras()})}prepareBaseData(){super.prepareBaseData(),this.flags.pf2e=mergeObject({hearingRange:null,rulesBasedVision:null,syncDarkness:"default"},this.flags.pf2e??{}),this.rulesBasedVision&&(this.globalLight=!0,this.globalLightThreshold=1-(LightLevels.DARKNESS+.001))}_onUpdate(changed,options,userId){super._onUpdate(changed,options,userId);const flagChanges=changed.flags?.pf2e??{};if(this.isView&&["rulesBasedVision","hearingRange"].some(k=>flagChanges[k]!==void 0)&&canvas.perception.update({initializeLighting:!0,initializeVision:!0}),changed.active&&canvas.scene===this)for(const token of canvas.tokens.placeables)token.auras.reset()}_onDeleteDescendantDocuments(parent,collection,documents,ids,options,userId){super._onDeleteDescendantDocuments(parent,collection,documents,ids,options,userId),documents.some(d=>d instanceof TokenDocumentPF2e&&!(d._source.light.dim||d._source.light.bright)&&d.actor?.synthetics.tokenOverrides.light)&&canvas.perception.update({initializeLighting:!0,initializeVision:!0})}};__name2(_ScenePF2e,"ScenePF2e");let ScenePF2e=_ScenePF2e;Object.defineProperty(ScenePF2e.prototype,"checkAuras",{configurable:!1,enumerable:!1,writable:!1,value:checkAuras});const _AmbientLightDocumentPF2e=class extends AmbientLightDocument{static{__name(this,"_AmbientLightDocumentPF2e")}get isDarkness(){return this.object?.source.isDarkness??!1}};__name2(_AmbientLightDocumentPF2e,"AmbientLightDocumentPF2e");let AmbientLightDocumentPF2e=_AmbientLightDocumentPF2e;const _MeasuredTemplateDocumentPF2e=class extends MeasuredTemplateDocument{static{__name(this,"_MeasuredTemplateDocumentPF2e")}get item(){const origin=this.flags.pf2e?.origin,uuid=origin?.uuid;if(!uuid)return null;const item=fromUuidSync(uuid);if(!(item instanceof ItemPF2e))return null;if(item?.isOfType("spell")){const overlayIds=origin?.variant?.overlays,castRank=origin?.castLevel??item.rank;return item.loadVariant({overlayIds,castLevel:castRank})??item}return item}get message(){return game.messages.get(this.flags.pf2e?.messageId??"")??null}_onCreate(data,options,userId){super._onCreate(data,options,userId),toggleClearTemplatesButton(this.message)}_onDelete(options,userId){super._onDelete(options,userId),toggleClearTemplatesButton(this.message)}};__name2(_MeasuredTemplateDocumentPF2e,"MeasuredTemplateDocumentPF2e");let MeasuredTemplateDocumentPF2e=_MeasuredTemplateDocumentPF2e;const _TileDocumentPF2e=class extends TileDocument{static{__name(this,"_TileDocumentPF2e")}};__name2(_TileDocumentPF2e,"TileDocumentPF2e");let TileDocumentPF2e=_TileDocumentPF2e;const _TokenConfigPF2e=class extends TokenConfig{static{__name(this,"_TokenConfigPF2e")}constructor(){super(...arguments),__privateAdd(this,_disableScale),__privateAdd(this,_reestablishPrototype),__privateAdd(this,_disableVisionInputs)}static get defaultOptions(){return{...super.defaultOptions,template:"systems/pf2e/templates/scene/token/sheet.hbs",sheetConfig:!1}}get dimensionsFromActorSize(){const actorSize=this.actor?.size??"med";return{tiny:.5,sm:1,med:1,lg:2,huge:3,grg:4}[actorSize]}async getData(options){return{...await super.getData(options),sizeLinkable:!!this.actor&&SIZE_LINKABLE_ACTOR_TYPES.has(this.actor.type),linkToSizeTitle:this.token.flags.pf2e.linkToActorSize?"Unlink":"Link",autoscaleTitle:this.token.flags.pf2e.autoscale?"Unlink":"Link"}}_getFilePickerOptions(event){return{...super._getFilePickerOptions(event),redirectToRoot:this.actor?[ActorPF2e.getDefaultArtwork(this.actor.toObject()).texture.src]:[]}}activateListeners($html){super.activateListeners($html);const html=$html[0];__privateMethod(this,_disableVisionInputs,disableVisionInputs_fn).call(this,html),this.token.flags.pf2e.autoscale&&__privateMethod(this,_disableScale,disableScale_fn).call(this,html),htmlQuery(html,"a[data-action=toggle-link-to-size]")?.addEventListener("click",async()=>{await this.token.update({"flags.pf2e.linkToActorSize":!this.token.flags.pf2e.linkToActorSize}),__privateMethod(this,_reestablishPrototype,reestablishPrototype_fn).call(this),await this.render()}),htmlQuery(html,"a[data-action=toggle-autoscale]")?.addEventListener("click",async()=>{await this.token.update({"flags.pf2e.autoscale":!this.token.flags.pf2e.autoscale}),__privateMethod(this,_reestablishPrototype,reestablishPrototype_fn).call(this),await this.render()})}_getSubmitData(updateData={}){const changes=updateData??{};return this.form.querySelector("input[name=scale]")?.disabled&&(changes.scale=Math.abs(this.token._source.texture.scaleX)),super._getSubmitData(changes)}async _updateObject(event,formData){if(formData["flags.pf2e.linkToActorSize"]===!0)if(this.actor?.isOfType("vehicle")){const{dimensions}=this.actor,width=Math.max(Math.round(dimensions.width/5),1),length=Math.max(Math.round(dimensions.length/5),1);formData.width=width,formData.height=length}else formData.width=formData.height=this.dimensionsFromActorSize;return super._updateObject(event,formData)}};_disableScale=new WeakSet,disableScale_fn=__name2(function(html){if(!game.settings.get("pf2e","tokens.autoscale"))return;const scale=html.querySelector(".form-group.scale");if(!scale)throw ErrorPF2e("Scale form group missing");scale.classList.add("children-disabled");const constrainedScale=String(this.actor?.size==="sm"?.8:1),rangeInput=scale.querySelector("input[type=range]");if(rangeInput){rangeInput.disabled=!0,rangeInput.value=constrainedScale;const rangeDisplayValue=scale.querySelector(".range-value");rangeDisplayValue&&(rangeDisplayValue.innerHTML=constrainedScale)}},"#disableScale"),_reestablishPrototype=new WeakSet,reestablishPrototype_fn=__name2(function(){if(this.isPrototype&&this.actor){const realPrototype=this.actor.prototypeToken;this.object=this.token=realPrototype}},"#reestablishPrototype"),_disableVisionInputs=new WeakSet,disableVisionInputs_fn=__name2(function(html){if(!(["character","familiar"].includes(this.actor?.type??"")&&(this.token.rulesBasedVision||this.isPrototype&&game.settings.get("pf2e","automation.rulesBasedVision"))))return;const sightInputNames=["angle","brightness","range","saturation","visionMode"].map(n=>`sight.${n}`),sightInputs=Array.from(html.querySelectorAll(sightInputNames.map(n=>`[name="${n}"]`).join(", "))),sightEnabledInput=html.querySelector('input[name="sight.enabled"]');if(!sightEnabledInput)throw ErrorPF2e("sight.enabled input not found");sightEnabledInput.addEventListener("change",()=>{for(const input of sightInputs)if(input.disabled=!sightEnabledInput.checked,input.type==="range")sightEnabledInput.checked?input.closest(".form-group")?.classList.remove("children-disabled"):input.closest(".form-group")?.classList.add("children-disabled");else if(input.name==="sight.color"){const colorInput=input.parentElement?.querySelector("input[type=color]");colorInput&&(colorInput.disabled=!sightEnabledInput.checked)}});for(const input of sightInputs)input.disabled=!0,input.type==="range"&&input.closest(".form-group")?.classList.add("children-disabled");html.querySelector("a.item[data-tab=detection]")?.classList.add("disabled");const managedBy=document.createElement("a");managedBy.className="managed-by-rbv",managedBy.append(fontAwesomeIcon("robot")),managedBy.title=game.i18n.localize("PF2E.SETTINGS.Automation.RulesBasedVision.ManagedBy").replace(/<\/?rbv>/g,"");for(const sightInput of sightInputs){const anchor=managedBy.cloneNode(!0);anchor.addEventListener("click",()=>{const menu=game.settings.menus.get("pf2e.automation");if(!menu)throw ErrorPF2e("Automation Settings application not found");new menu.type().render(!0)}),sightInput.closest(".form-group")?.querySelector("label")?.append(anchor)}},"#disableVisionInputs"),__name2(_TokenConfigPF2e,"TokenConfigPF2e");let TokenConfigPF2e=_TokenConfigPF2e;const _AmbientLightPF2e=class extends AmbientLight{static{__name(this,"_AmbientLightPF2e")}get isDarkness(){return this.source.isDarkness}};__name2(_AmbientLightPF2e,"AmbientLightPF2e");let AmbientLightPF2e=_AmbientLightPF2e;const _EffectsCanvasGroupPF2e=class extends EffectsCanvasGroup{static{__name(this,"_EffectsCanvasGroupPF2e")}get rulesBasedVision(){return game.settings.get("pf2e","automation.rulesBasedVision")&&canvas.ready&&!!canvas.scene?.tokenVision}};__name2(_EffectsCanvasGroupPF2e,"EffectsCanvasGroupPF2e");let EffectsCanvasGroupPF2e=_EffectsCanvasGroupPF2e;const _LightingLayerPF2e=class extends LightingLayer{static{__name(this,"_LightingLayerPF2e")}get lightingLevel(){return 1-canvas.darknessLevel}};__name2(_LightingLayerPF2e,"LightingLayerPF2e");let LightingLayerPF2e=_LightingLayerPF2e;const _TemplateLayerPF2e=class extends TemplateLayer{static{__name(this,"_TemplateLayerPF2e")}_onDragLeftMove(event){if(!canvas.scene||!canvas.dimensions)return;const interaction=event.interactionData,{destination,layerDragState,preview:template,origin}=interaction;if(!template||template.destroyed)return;if(template.parent===null&&this.preview.addChild(template),(layerDragState??0)>=1){const{x,y}=canvas.grid.getSnappedPosition(destination.x,destination.y,2);if(destination.x=x,destination.y=y,!template)return;const ray=new Ray(origin,destination),ratio=canvas.dimensions.size/canvas.dimensions.distance;if(["cone","circle"].includes(template.type)){const direction=ray.angle,snapAngle=Math.PI/(canvas.scene.hasHexGrid?6:4);template.document.direction=Math.toDegrees(Math.floor((direction+Math.PI*.125)/snapAngle)*snapAngle);const distance=Math.max(ray.distance/ratio,canvas.dimensions.distance);template.document.distance=Math.floor(distance/canvas.dimensions.distance)*canvas.dimensions.distance}else template.document.direction=Math.toDegrees(ray.angle),template.document.distance=ray.distance/ratio;template.refresh(),event.interactionData.layerDragState=2}}_onMouseWheel(event){const template=this.hover;if(!(template&&canvas.scene))return;const increment=event.shiftKey?15:5,coneMultiplier=template.type==="cone"?canvas.scene.hasHexGrid?2:3:1,snap=increment*coneMultiplier,delta=snap*Math.sign(event.deltaY);return template.rotate(template.document.direction+delta,snap)}};__name2(_TemplateLayerPF2e,"TemplateLayerPF2e");let TemplateLayerPF2e=_TemplateLayerPF2e;const _TokenLayerPF2e=class extends TokenLayer{static{__name(this,"_TokenLayerPF2e")}cycleStack(){const hovered=this.hover;if(!hovered)return!1;const stack=this.placeables.filter(t=>hovered.distanceTo(t)===0&&hovered.document.elevation===t.document.elevation).sort((a,b)=>a.mesh.sort-b.mesh.sort);if(stack.length<2)return!1;const first=stack.shift();stack.push(first);for(let sort=stack.length-1;sort>=0;sort--){const token=stack[sort];token.document.sort=sort,token.mesh.initialize({sort}),sort===stack.length-1&&(token.emitHoverIn(new PointerEvent("pointerenter")),this.hover=token)}return!0}};__name2(_TokenLayerPF2e,"TokenLayerPF2e");let TokenLayerPF2e=_TokenLayerPF2e;const _HearingSource=class extends SoundSource{static{__name(this,"_HearingSource")}_initialize(data){super._initialize(data),this.data.x=this.object.center.x,this.data.y=this.object.center.y,this.data.elevation=this.object.document.elevation,this.data.radius=canvas.dimensions?.maxR??1e3,this.data.walls=!0}};__name2(_HearingSource,"HearingSource");let HearingSource=_HearingSource;const _EffectAreaSquare=class extends PIXI.Rectangle{static{__name(this,"_EffectAreaSquare")}active;constructor(x,y,width,height,active=!0){super(x,y,width,height),this.active=active}get center(){return{x:this.x+this.width/2,y:this.y+this.height/2}}highlight(layer,{border,highlight}){this.x<0||this.y<0||(this.active?canvas.grid.grid.highlightGridPosition(layer,{x:this.x,y:this.y,border:border?.color,color:highlight.color,alpha:highlight.alpha}):(canvas.grid.grid.highlightGridPosition(layer,{x:this.x,y:this.y,border:0,color:0}),layer.beginFill(0,.5).moveTo(this.x,this.y).lineTo(this.x+this.width,this.y+this.height).endFill()))}};__name2(_EffectAreaSquare,"EffectAreaSquare");let EffectAreaSquare=_EffectAreaSquare;function getAreaSquares(data){if(!canvas.dimensions)return[];const squareWidth=canvas.dimensions.size,rowCount=Math.ceil(data.bounds.width/squareWidth),emptyVector=Array(rowCount-1).fill(null),genColumn=__name2(square=>emptyVector.reduce(colSquares=>{const squareAbove=colSquares.at(-1),squareBelow=new EffectAreaSquare(square.x,squareAbove.y+squareWidth,squareWidth,squareWidth);return colSquares.push(squareBelow),colSquares},[square]),"genColumn"),topLeftSquare=new EffectAreaSquare(data.bounds.x,data.bounds.y,squareWidth,squareWidth),collisionType=data.traits?.includes("visual")&&!data.traits.includes("auditory")?"sight":data.traits?.includes("auditory")&&!data.traits.includes("visual")?"sound":"move",tokenBounds=data.token.mechanicalBounds,tokenCenter=data.token.center,tokenCenters=[tokenCenter,...[{x:0,y:1},{x:1,y:0},{x:0,y:-1},{x:-1,y:0}].map(c=>({x:tokenCenter.x+c.x*Math.round(tokenBounds.width/8),y:tokenCenter.y+c.y*Math.round(tokenBounds.height/8)}))];return emptyVector.reduce(squares=>{const lastSquare=squares.at(-1).at(-1),column=genColumn(new EffectAreaSquare(lastSquare.x+squareWidth,topLeftSquare.y,squareWidth,squareWidth));return squares.push(column),squares},[genColumn(topLeftSquare)]).flat().filter(s=>measureDistanceCuboid(tokenBounds,s)<=data.radius).map(square=>(square.active=tokenCenters.some(c=>!CONFIG.Canvas.polygonBackends[collisionType].testCollision(c,square.center,{type:collisionType,mode:"any"})),square))}__name(getAreaSquares,"getAreaSquares"),__name2(getAreaSquares,"getAreaSquares");const _AuraRenderer=class extends PIXI.Graphics{static{__name(this,"_AuraRenderer")}constructor(params){super(),__privateAdd(this,_drawBorder),__privateAdd(this,_drawTexture),__privateAdd(this,_drawLabel),__publicField(this,"slug"),__publicField(this,"token"),__publicField(this,"radius"),__publicField(this,"radiusPixels"),__publicField(this,"traits"),__publicField(this,"appearance"),__publicField(this,"border",new PIXI.Graphics),__publicField(this,"textureContainer",null),this.slug=params.slug,this.token=params.token,this.appearance=params.appearance,this.radius=params.radius,this.radiusPixels=.5*this.token.mechanicalBounds.width+this.radius/(canvas.dimensions?.distance??0)*canvas.grid.size,this.traits=params.traits,this.addChild(this.border)}get bounds(){const{token,radiusPixels}=this,bounds=token.mechanicalBounds;return new PIXI.Rectangle(bounds.x-(radiusPixels-bounds.width/2),bounds.y-(radiusPixels-bounds.width/2),radiusPixels*2,radiusPixels*2)}get highlightLayer(){return canvas.grid?.getHighlightLayer(this.token.highlightId)??null}get squares(){return getAreaSquares(this)}async draw(showBorder){const{mechanicalBounds}=this.token;return this.x=mechanicalBounds.width/2,this.y=mechanicalBounds.height/2,this.token.document.width<1&&(this.x+=mechanicalBounds.x-this.token.x,this.y+=mechanicalBounds.y-this.token.y),__privateMethod(this,_drawBorder,drawBorder_fn).call(this),this.border.visible=showBorder,__privateMethod(this,_drawTexture,drawTexture_fn).call(this)}repositionTexture(){if(this.textureContainer){const{bounds,radiusPixels}=this;this.textureContainer.position.set(bounds.x+radiusPixels,bounds.y+radiusPixels)}}highlight(){const{dimensions}=canvas;if(!dimensions)return;if(__privateMethod(this,_drawLabel,drawLabel_fn).call(this),!!(this.token.actor?.isOfType("familiar")?this.token.actor.master?.combatant?.encounter.active:this.token.combatant?.encounter.active)){const{highlightLayer}=this;if(!highlightLayer)return;for(const square of this.squares)square.highlight(highlightLayer,this.appearance)}}destroy(options){super.destroy(options),this.textureContainer&&(canvas.grid.grid.removeChild(this.textureContainer),this.textureContainer.destroyed||this.textureContainer.destroy())}};_drawBorder=new WeakSet,drawBorder_fn=__name2(function(){const data=this.appearance.border;!data||this.border.geometry.graphicsData.length>0||this.border.lineStyle(_AuraRenderer.LINE_THICKNESS,data.color,data.alpha).drawCircle(0,0,this.radiusPixels)},"#drawBorder"),_drawTexture=new WeakSet,drawTexture_fn=__name2(async function(){const data=this.appearance.texture;if(!data||this.token.isPreview||this.textureContainer)return;const texture=await(async()=>{const maybeTexture=await loadTexture(data.src,{fallback:"icons/svg/hazard.svg"});if(!(maybeTexture instanceof PIXI.Texture))return null;const globalVideo=isVideoFilePath(data.src)?game.video.getVideoSource(maybeTexture):null;if(globalVideo){maybeTexture.destroy();const videoTexture=await game.video.cloneTexture(globalVideo),video=game.video.getVideoSource(videoTexture)??globalVideo;video.playbackRate=data.playbackRate;const offset=data.loop?Math.random()*video.duration:0;return game.video.play(video,{volume:0,offset,loop:data.loop}),videoTexture}else return maybeTexture})();if(!texture)return;const{bounds,radiusPixels}=this,radius=data.scale*radiusPixels,diameter=radius*2,scale={x:diameter/texture.width,y:diameter/texture.height},matrix=new PIXI.Matrix(scale.x,void 0,void 0,scale.y,radius,radius);this.textureContainer=new PIXI.Graphics().beginTextureFill({texture,alpha:data.alpha,matrix}).drawCircle(0,0,radius).endFill(),this.textureContainer.position.set(bounds.x+radiusPixels,bounds.y+radiusPixels),canvas.grid.grid.addChild(this.textureContainer)},"#drawTexture"),_drawLabel=new WeakSet,drawLabel_fn=__name2(function(){const style=CONFIG.canvasTextStyle.clone(),gridSize=canvas.dimensions?.size??100;style.fontSize=Math.max(Math.round(gridSize*.36*12)/12,36),style.align="center";const bounds=this.token.mechanicalBounds,gridUnits=canvas.scene?.grid.units.trim()||game.system.gridUnits,label=[this.radius,gridUnits].join(""),text=new PreciseText(label,style),center={x:bounds.x+bounds.width/2,y:bounds.y+bounds.height/2},textOffset=Math.sqrt(style.fontSize);text.position.set(center.x+textOffset,center.y-this.radiusPixels-style.fontSize-textOffset),this.highlightLayer?.beginFill(0,.5).lineStyle(_AuraRenderer.LINE_THICKNESS,0).drawCircle(center.x,center.y-this.radiusPixels,6).endFill().addChild(text)},"#drawLabel"),__name2(_AuraRenderer,"AuraRenderer"),__publicField(_AuraRenderer,"LINE_THICKNESS",3);let AuraRenderer=_AuraRenderer;const _AuraRenderers=class extends Map{static{__name(this,"_AuraRenderers")}constructor(token){super(),__privateAdd(this,_showBordersHighlights),__publicField(this,"token"),this.token=token}get highlightId(){return this.token.highlightId}async reset(slugs){if(!slugs)this.clear();else for(const slug of slugs)this.delete(slug);if(!this.token.actor)return;const data=Array.from(this.token.document.auras.values()).filter(a=>slugs?.includes(a.slug)??!0);for(const datum of data){const renderer=new AuraRenderer({...datum,token:this.token});this.set(datum.slug,this.token.addChild(renderer))}return this.draw()}refreshPositions(){for(const aura of this.values())aura.repositionTexture()}async draw(){if(this.size===0||(this.clearHighlights(),this.token.isAnimating))return;const showBordersHighlights=__privateGet(this,_showBordersHighlights,showBordersHighlights_get);for(const aura of this.values())await aura.draw(showBordersHighlights);if(showBordersHighlights&&(this.token.hover||this.token.layer.highlightObjects)){const{highlightId}=this;(canvas.grid.highlightLayers[highlightId]??canvas.grid.addHighlightLayer(highlightId)).clear();for(const aura of this.values())aura.highlight()}}delete(key){const aura=this.get(key);return aura?(aura.destroyed||aura.destroy(!0),this.token.removeChild(aura),super.delete(key)):!1}clear(){this.clearHighlights();for(const aura of this.values())aura.destroyed||aura.destroy(!0),this.token.removeChild(aura);return super.clear()}destroy(){this.clear()}clearHighlights(){canvas.grid.destroyHighlightLayer(this.highlightId)}};_showBordersHighlights=new WeakSet,showBordersHighlights_get=__name2(function(){const inEncounter=__name2(()=>!!(this.token.actor?.isOfType("familiar")?this.token.actor.master?.combatant?.encounter.active:this.token.combatant?.encounter.active),"inEncounter");return canvas.scene?.grid.type===CONST.GRID_TYPES.SQUARE&&canvas.scene.tokenVision&&canvas.scene.isInFocus&&(game.user.isGM||this.token.actor?.alliance==="party")&&(this.token.controlled||this.token.hover||this.token.layer.highlightObjects||inEncounter())},"#showBordersHighlights"),__name2(_AuraRenderers,"AuraRenderers");let AuraRenderers=_AuraRenderers;const _FlankingHighlightRenderer=class{static{__name(this,"_FlankingHighlightRenderer")}_layer;token;labelText;lineColor;constructor(token){this._layer=null,this.token=token,this.labelText=game.i18n.localize("PF2E.Token.Flanking"),this.lineColor=CONFIG.Canvas.dispositionColors.CONTROLLED}get layer(){return this._layer??this.addLayer()}get shouldRender(){return canvas.ready&&!!canvas.scene?.isInFocus&&this.tokenIsSelectedOrOwn&&this.tokenIsReady}get tokenIsSelectedOrOwn(){return this.token.controlled&&this.token.isOwner||!!this.token.actor&&this.token.actor?.id===game.user.character?.id}get tokenIsReady(){return!this.token.isPreview&&!this.token.isAnimating}draw(){this.clear(),canvas.tokens.highlightObjects&&game.user.targets.size&&this.shouldRender&&game.user.targets.forEach(target=>this.drawForTarget(target))}drawForTarget(target){const buddies=this.token.buddiesFlanking(target,{ignoreFlankable:!0});this.drawBuddyLines(buddies)}drawBuddyLines(buddies){buddies.forEach(b=>this.drawBuddyLine(b))}drawBuddyLine(buddy){const t=CONFIG.Canvas.objectBorderThickness,o=Math.round(t*1.5),c=Math.round(t*2);this.layer.lineStyle(o,0,.5).moveTo(this.token.center.x,this.token.center.y).lineTo(buddy.center.x,buddy.center.y),this.layer.lineStyle(t,this.lineColor,.5).moveTo(this.token.center.x,this.token.center.y).lineTo(buddy.center.x,buddy.center.y),this.layer.beginFill(this.lineColor).lineStyle(1,0).drawCircle(this.token.center.x,this.token.center.y,c),this.layer.beginFill(this.lineColor).lineStyle(1,0).drawCircle(buddy.center.x,buddy.center.y,c),this.drawLabel(buddy)}drawLabel(buddy){const mid_x=Math.round((this.token.center.x+buddy.center.x)/2),mid_y=Math.round((this.token.center.y+buddy.center.y)/2),vect_x=buddy.center.x-this.token.center.x,vect_y=buddy.center.y-this.token.center.y,perp_vect_x=vect_x<=-vect_x?-vect_y:vect_y,perp_vect_y=vect_x<=-vect_x?vect_x:-vect_x,offsetScale=20/Math.sqrt(perp_vect_x**2+perp_vect_y**2),perp_x=mid_x+Math.round(perp_vect_x*offsetScale),perp_y=mid_y+Math.round(perp_vect_y*offsetScale),style=CONFIG.canvasTextStyle.clone();style.fontSize=24,canvas.dimensions?.size&&canvas.dimensions.size>=200?style.fontSize=28:canvas.dimensions?.size&&canvas.dimensions.size<50&&(style.fontSize=20),style.fill=this.lineColor,style.stroke=0;const text=new PreciseText(this.labelText,style);text.anchor.set(.5,.5);let rotation=Math.atan2(vect_y,vect_x);rotation>Math.PI/2?rotation=rotation-Math.PI:rotation<-Math.PI/2&&(rotation=rotation+Math.PI),text.rotation=rotation,text.position.set(perp_x,perp_y),this.layer.addChild(text)}clear(){this._layer?.destroy({children:!0}),this._layer=null}destroy(){this.clear()}addLayer(){return this._layer=new PIXI.Graphics,this.token.layer.addChild(this._layer)}};__name2(_FlankingHighlightRenderer,"FlankingHighlightRenderer");let FlankingHighlightRenderer=_FlankingHighlightRenderer;const _TokenPF2e=class extends Token{static{__name(this,"_TokenPF2e")}auras;flankingHighlight;hearing;constructor(document2){super(document2),this.hearing=new HearingSource({object:this}),this.auras=new AuraRenderers(this),Object.defineProperty(this,"auras",{configurable:!1,writable:!1}),this.flankingHighlight=new FlankingHighlightRenderer(this),Object.defineProperty(this,"flankingHighlight",{configurable:!1,writable:!1})}get isVisible(){if(this.detectionFilter=null,this.document.hidden&&!game.user.isGM)return!1;if(!canvas.effects.visibility.tokenVision||this.controlled||canvas.effects.visionSources.get(this.sourceId)?.active)return!0;const tolerance=Math.floor(.35*Math.min(this.w,this.h));return canvas.effects.visibility.testVisibility(this.center,{tolerance,object:this})}get isAnimating(){return!!this._animation}get emitsDarkness(){return this.document.emitsDarkness}get hasLowLightVision(){return this.document.hasLowLightVision}get hasDarkvision(){return this.document.hasDarkvision}get linkToActorSize(){return this.document.linkToActorSize}get highlightId(){return`Token.${this.id}`}get mechanicalBounds(){const bounds=super.bounds;if(this.document.width<1){const position=canvas.grid.getTopLeft(bounds.x+bounds.width/2,bounds.y+bounds.height/2);return new PIXI.Rectangle(position[0],position[1],Math.max(canvas.grid.size,bounds.width),Math.max(canvas.grid.size,bounds.height))}return bounds}get sightRange(){return this.document.sight.range>=canvas.dimensions.maxR?canvas.dimensions.maxR:super.sightRange}isAdjacentTo(token){return this.distanceTo(token)===5}canFlank(flankee,context={}){if(this===flankee||!game.settings.get("pf2e","automation.flankingDetection"))return!1;const flankable=context.ignoreFlankable||flankee.actor?.attributes.flanking.flankable;if(!(this.actor?.attributes.flanking.canFlank&&flankable)||!this.actor.isOfType("character","npc")||!flankee.actor?.isOfType("creature")||this.actor.isAllyOf(flankee.actor))return!1;const reach=context.reach??this.actor.getReach({action:"attack"});return this.actor.canAttack&&reach>=this.distanceTo(flankee,{reach})}onOppositeSides(flankerA,flankerB,flankee){const{lineSegmentIntersects}=foundry.utils,[centerA,centerB]=[flankerA.center,flankerB.center],{bounds}=flankee,left=new Ray({x:bounds.left,y:bounds.top},{x:bounds.left,y:bounds.bottom}),right=new Ray({x:bounds.right,y:bounds.top},{x:bounds.right,y:bounds.bottom}),top=new Ray({x:bounds.left,y:bounds.top},{x:bounds.right,y:bounds.top}),bottom=new Ray({x:bounds.left,y:bounds.bottom},{x:bounds.right,y:bounds.bottom}),intersectsSide=__name2(side=>lineSegmentIntersects(centerA,centerB,side.A,side.B),"intersectsSide");return intersectsSide(left)&&intersectsSide(right)||intersectsSide(top)&&intersectsSide(bottom)}isFlanking(flankee,context={}){if(!(this.actor&&this.canFlank(flankee,context)))return!1;const{flanking}=this.actor.attributes,flankingBuddies=canvas.tokens.placeables.filter(t=>t!==this&&t.canFlank(flankee,pick$1(context,["ignoreFlankable"])));return flankingBuddies.length===0?!1:flanking.canGangUp.some(g=>typeof g=="number"&&g<=flankingBuddies.length)||this.isAdjacentTo(flankee)&&flanking.canGangUp.includes("animal-companion")&&flankingBuddies.some(b=>{if(!b.actor?.isOfType("character"))return!1;const traits=b.actor.traits;return traits.has("minion")&&!traits.has("construct")&&b.isAdjacentTo(flankee)})?!0:flankingBuddies.some(b=>this.onOppositeSides(this,b,flankee))}buddiesFlanking(flankee,context={}){return!this.actor||!this.canFlank(flankee,context)?[]:canvas.tokens.placeables.filter(t=>t!==this&&t.canFlank(flankee,pick$1(context,["ignoreFlankable"]))).filter(b=>this.onOppositeSides(this,b,flankee))}_applyRenderFlags(flags){super._applyRenderFlags(flags),flags.refreshPosition&&this.auras.refreshPositions()}_refreshVisibility(){super._refreshVisibility(),this.auras.draw(),this.flankingHighlight.draw()}_getBorderColor(options){const isHovered=options?.hover??(this.hover||this.layer.highlightObjects),isControlled=this.controlled||!game.user.isGM&&this.isOwner,isFriendly=this.document.disposition===CONST.TOKEN_DISPOSITIONS.FRIENDLY;if(!isHovered||isControlled||isFriendly||!this.actor?.hasPlayerOwner)return super._getBorderColor();const colors=CONFIG.Canvas.dispositionColors;switch(this.document.disposition){case CONST.TOKEN_DISPOSITIONS.NEUTRAL:return colors.NEUTRAL;case CONST.TOKEN_DISPOSITIONS.HOSTILE:return colors.HOSTILE;case CONST.TOKEN_DISPOSITIONS.SECRET:return this.isOwner?colors.SECRET:null;default:return super._getBorderColor(options)}}_drawBar(number,bar,data){if(!canvas.dimensions)return;const actor=this.document.actor;if(!(data.attribute==="attributes.hp"&&actor?.attributes.hp))return super._drawBar(number,bar,data);const{value,max,temp}=actor.attributes.hp??{},healthPercent=Math.clamped(value,0,max)/max,black=0,color=Number(number?Color.fromRGB([.5*healthPercent,.7*healthPercent,.5+healthPercent/2]):Color.fromRGB([1-healthPercent/2,healthPercent,0]));let h=Math.max(canvas.dimensions.size/12,8);const bs=Math.clamped(h/8,1,2);this.document.height>=2&&(h*=1.6);const numBars=temp>0?2:1,barHeight=h/numBars;if(bar.clear(),bar.lineStyle(0).beginFill(black,.5).drawRoundedRect(0,0,this.w,h,3),bar.lineStyle(bs/2,black,1),temp>0){const tempWidth=Math.clamped(temp,0,max)/max*this.w-2*(bs-1);bar.beginFill(6737151,1).drawRoundedRect(0,0,tempWidth,barHeight,2)}const healthBarY=(numBars-1)*barHeight;bar.beginFill(color,1).drawRoundedRect(0,healthBarY,healthPercent*this.w,barHeight,2),bar.beginFill(black,0).lineStyle(bs,black,1).drawRoundedRect(0,0,this.w,h,3),bar.position.set(0,number===0?this.h-h:0)}async drawEffects(){if(await super.drawEffects(),await this._animation,this.auras.size===0)return this.auras.reset();const changedAndDeletedAuraSlugs=Array.from(this.auras.entries()).filter(([slug,aura])=>{const properties=["radius","appearance"],sceneData=pick$1(this.document.auras.get(slug)??{radius:null,appearance:null},properties),canvasData=pick$1(aura,properties);return sceneData.radius===null?!0:Object.keys(diffObject(canvasData,sceneData)).length+Object.keys(diffObject(sceneData,canvasData)).length>0}).map(([slug])=>slug),newAuraSlugs=Array.from(this.document.auras.keys()).filter(s=>!this.auras.has(s));return this.auras.reset([changedAndDeletedAuraSlugs,newAuraSlugs].flat())}emitHoverIn(nativeEvent){const event=new PIXI.FederatedPointerEvent(new PIXI.EventBoundary(this));event.type="pointerover",event.nativeEvent=nativeEvent,this._onHoverIn(event,{hoverOutOthers:!0})}emitHoverOut(nativeEvent){const event=new PIXI.FederatedPointerEvent(new PIXI.EventBoundary(this));event.type="pointerout",event.nativeEvent=nativeEvent,this._onHoverOut(event)}_isVisionSource(){return!!this.actor?.hasPlayerOwner&&!game.user.isGM&&game.settings.get("pf2e","metagame_partyVision")||super._isVisionSource()}clone(){const clone=super.clone();return clone.isPreview&&(clone.document.height=this.document.height,clone.document.width=this.document.width,clone.document.texture.scaleX=this.document.texture.scaleX,clone.document.texture.scaleY=this.document.texture.scaleY,clone.document.texture.src=this.document.texture.src),clone}async showFloatyText(params){if(!this.isVisible)return;if(!game.user.isGM&&typeof params!="number"){const[_,document2]=Object.entries(params)[0];if(document2 instanceof EffectPF2e&&document2.system.unidentified)return}const scrollingTextArgs=(()=>{if(typeof params=="number"){const quantity=params,maxHP=this.actor?.hitPoints?.max;if(!(quantity&&typeof maxHP=="number"))return null;const percent=Math.clamped(Math.abs(quantity)/maxHP,0,1),textColors={damage:16711680,healing:65280};return[this.center,params.signedString(),{anchor:CONST.TEXT_ANCHOR_POINTS.TOP,jitter:.25,fill:textColors[quantity<0?"damage":"healing"],fontSize:16+32*percent,stroke:0,strokeThickness:4}]}else{const[change,details]=Object.entries(params)[0],isAdded=change==="create",sign=isAdded?"+ ":"- ",appendedNumber=!/ \d+$/.test(details.name)&&details.value?` ${details.value}`:"",content=`${sign}${details.name}${appendedNumber}`,anchorDirection=isAdded?CONST.TEXT_ANCHOR_POINTS.TOP:CONST.TEXT_ANCHOR_POINTS.BOTTOM,textStyle=pick$1(this._getTextStyle(),["fill","fontSize","stroke","strokeThickness"]);return[this.center,content,{...textStyle,anchor:anchorDirection,direction:anchorDirection,jitter:.25}]}})();scrollingTextArgs&&(await this._animation,await canvas.interface?.createScrollingText(...scrollingTextArgs))}distanceTo(target,{reach=null}={}){if(!canvas.dimensions)return NaN;if(this===target)return 0;if(canvas.grid.type!==CONST.GRID_TYPES.SQUARE)return canvas.grid.measureDistance(this.position,target.position);const selfElevation=this.document.elevation,targetElevation=target.document.elevation;return selfElevation===targetElevation||!this.actor||!target.actor?measureDistanceCuboid(this.bounds,target.bounds,{reach}):measureDistanceCuboid(this.bounds,target.bounds,{reach,token:this,target})}async animate(updateData,options){if(options?.spin){let attributeAdded=!1;const currentRotation=this.document.rotation,rotationAngle=this.x<=this.document.x?360:-360;options.ontick=(_frame,data)=>{if(this.document.lockRotation=!1,!attributeAdded&&data.attributes.length>0){const duration=(data.duration??1e3)/1e3;data.attributes.push({attribute:"rotation",parent:data.attributes[0].parent,from:currentRotation,to:currentRotation+duration*rotationAngle,delta:data.attributes[0].delta}),attributeAdded=!0}}}await super.animate(updateData,options),this.document.lockRotation=this.document._source.lockRotation}updateVisionSource({defer=!1,deleted=!1}={}){super.updateVisionSource({defer,deleted}),this._isVisionSource()&&!deleted&&this.hearing.initialize()}render(renderer){if(super.render(renderer),!this.mesh)return;const configuredTint=this.document.texture.tint??"#FFFFFF";this.mesh.tint!==0&&this.detectionFilter instanceof OutlineOverlayFilter?this.mesh.tint=0:this.mesh.tint===0&&configuredTint!=="#000000"&&!this.detectionFilter&&(this.mesh.tint=Number(Color.fromString(configuredTint)))}_destroy(){super._destroy(),this.auras.destroy(),this.hearing.destroy(),this.flankingHighlight.destroy()}_canView(user,event){return super._canView(user,event)||!!(this.actor?.isOfType("npc")&&this.actor.isLootable)}_onControl(options={}){return game.ready&&game.pf2e.effectPanel.refresh(),super._onControl(options)}_onRelease(options){return game.pf2e.effectPanel.refresh(),super._onRelease(options)}_onApplyStatusEffect(statusId,active){super._onApplyStatusEffect(statusId,active),["undetected","unnoticed"].includes(statusId)&&(canvas.perception.update({refreshVision:!0,refreshLighting:!0},!0),this.mesh.refresh())}_onUpdate(changed,options,userId){super._onUpdate(changed,options,userId),changed.width&&(this._animation?this._animation.then(()=>{this.auras.reset()}):this.auras.reset())}};__name2(_TokenPF2e,"TokenPF2e");let TokenPF2e=_TokenPF2e;function measureDistanceCuboid(r0,r1,{reach=null,token=null,target=null}={}){if(!canvas.dimensions)return NaN;if(canvas.grid.type!==CONST.GRID_TYPES.SQUARE)return canvas.grid.measureDistance(r0,r1);const gridWidth=canvas.grid.grid.w,distance={dx:0,dy:0,dz:0};if([[r0,r1],[r1,r0]].some(([rA,rB])=>rB.right>rA.left&&rB.left${game.i18n.format("PF2E.DeleteQuestion",{name:`"${item.name}"`})}
`}))&&(await item.delete(),$(element).slideUp(200,()=>this.render(!1)))}_canDragStart(selector){return this.isLootSheet?!0:super._canDragStart(selector)}_canDragDrop(selector){return this.isLootSheet?!0:super._canDragDrop(selector)}_onDragStart(event){if(!(event.target instanceof HTMLElement)||!event.dataTransfer)return;const isContentLink=event.target.classList.contains("content-link"),isPersistent="persistent"in event.target.dataset;if(event.target!==event.currentTarget&&(isContentLink||isPersistent))return;const targetElement=event.currentTarget,previewElement=htmlClosest(targetElement,".item");if(previewElement&&targetElement&&targetElement!==previewElement){const{x,y}=previewElement.getBoundingClientRect();event.dataTransfer.setDragImage(previewElement,event.pageX-x,event.pageY-y)}const itemId=previewElement?.dataset.itemId,item=this.actor.items.get(itemId??""),baseDragData={actorId:this.actor.id,actorUUID:this.actor.uuid,sceneId:canvas.scene?.id??null,tokenId:this.actor.token?.id??null,...item?.toDragData()};previewElement?.dataset.isFormula&&(baseDragData.isFormula=!0,baseDragData.entrySelector=previewElement.dataset.entrySelector);const supplementalData=(()=>{const actionIndex=previewElement?.dataset.actionIndex;if(actionIndex)return"itemType"in baseDragData&&baseDragData.itemType==="melee"?{index:Number(actionIndex)}:{type:"Action",index:Number(actionIndex)};const elementTrait=previewElement?.dataset.element;if(elementTrait)return{type:"Action",elementTrait};const label=previewElement?.innerText.trim(),rollOptionData=previewElement?.dataset??{};return item&&label&&rollOptionData.domain&&rollOptionData.option?{type:"RollOption",label,...rollOptionData}:baseDragData.isFormula?{pf2e:{type:"CraftingFormula",itemUuid:itemId}}:null})();event.dataTransfer.setData("text/plain",JSON.stringify({...baseDragData,...supplementalData}))}async emulateItemDrop(data){const event=new DragEvent("drop",{altKey:game.keyboard.isModifierActive("Alt")});return this._onDropItem(event,data)}async _onDropItem(event,data){event.preventDefault();const item=await ItemPF2e.fromDropData(data);return item?item.actor?.uuid===this.actor.uuid?data.fromInventory?[]:this._onSortItem(event,item.toObject()):item.actor&&item.isOfType("physical")?(await this.moveItemBetweenActors(event,item.actor.id,item.actor?.token?.id??null,this.actor.id,this.actor.token?.id??null,item.id),[item]):this._handleDroppedItem(event,item,data):[]}async _handleDroppedItem(event,item,data){const{actor}=this,itemSource=item.toObject(),mystified=game.user.isGM&&event.altKey;mystified&&itemSource.type==="effect"&&(itemSource.system.unidentified=!0),mystified&&item.isOfType("physical")&&isPhysicalData(itemSource)&&(itemSource.system.identification.unidentified=item.getMystifiedData("unidentified"),itemSource.system.identification.status="unidentified");const containerAttribute=htmlClosest(event.target,".item-container")?.dataset.containerType,dropContainerType=this._tabs[0]?.active==="inventory"&&!containerAttribute?"actorInventory":containerAttribute,craftingTab=this._tabs[0]?.active==="crafting";if(item.isOfType("spell")&&itemSource.type==="spell")return item.isRitual?this._onDropItemCreate(item.clone().toObject()):dropContainerType==="actorInventory"&&itemSource.system.level.value>0?(new CastingItemCreateDialog(actor,{},async(heightenedLevel,itemType,spell)=>{const createdItem=await createConsumableFromSpell(spell,{type:itemType,heightenedLevel,mystified});await this._onDropItemCreate(createdItem)},item).render(!0),[item]):[];if(itemSource.type==="spellcastingEntry")return[];if(itemSource.type==="condition"){const value=data.value;return typeof value=="number"&&itemSource.system.value.isValued&&(itemSource.system.value.value=value),actor.canUserModify(game.user,"update")?[await actor.increaseCondition(itemSource.system.slug,{value})??[]].flat():(ui.notifications.error("PF2E.ErrorMessage.NoUpdatePermission",{localize:!0}),[])}else if(itemIsOfType(itemSource,"affliction","effect")){const{level,value,context}=data;typeof level=="number"&&level>=0&&(itemSource.system.level.value=Math.floor(level)),itemSource.type==="effect"&&itemSource.system.badge?.type==="counter"&&typeof value=="number"&&(itemSource.system.badge.value=value),itemSource.system.context=context??null;const originItem=fromUuidSync(context?.origin.item??"");itemSource.system.traits?.value.length===0&&originItem instanceof SpellPF2e&&itemSource.system.traits.value.push(...originItem.traits)}else if(item.isOfType("physical")&&actor.isOfType("character")&&craftingTab){const actorFormulas=deepClone(actor.system.crafting.formulas);return actorFormulas.some(f=>f.uuid===item.uuid)||(actorFormulas.push({uuid:item.uuid}),await actor.update({"system.crafting.formulas":actorFormulas})),[item]}if(isPhysicalData(itemSource)){const containerId=htmlClosest(event.target,"[data-item-is-container=true]")?.dataset.itemId?.trim()||null;this.actor.itemTypes.backpack.find(container2=>container2.id===containerId)?(itemSource.system.containerId=containerId,itemSource.system.equipped.carryType="stowed"):itemSource.system.equipped.carryType="worn",data?.uuid?.startsWith("Compendium")&&itemSource.type!=="treasure"&&!["med","sm"].includes(actor.size)&&actor.isOfType("creature")&&(itemSource.system.size=actor.size)}return this._onDropItemCreate(new ItemProxyPF2e(itemSource).clone().toObject())}async _onDropFolder(_event,data){if(!(this.actor.isOwner&&data.documentName==="Item"))return[];const folder=await Folder.fromDropData(data);if(!folder)return[];const itemSources=[folder,...folder.getSubfolders()].flatMap(f=>f.contents).map(i=>i.toObject());return this._onDropItemCreate(itemSources)}async moveItemBetweenActors(event,sourceActorId,sourceTokenId,targetActorId,targetTokenId,itemId){const sourceActor=canvas.scene?.tokens.get(sourceTokenId??"")?.actor??game.actors.get(sourceActorId),targetActor=canvas.scene?.tokens.get(targetTokenId??"")?.actor??game.actors.get(targetActorId),item=sourceActor?.items.get(itemId);if(!sourceActor||!targetActor)throw ErrorPF2e("Unexpected missing actor(s)");if(!item?.isOfType("physical"))throw ErrorPF2e("Missing or invalid item");const containerId=htmlClosest(event.target,"[data-item-is-container=true]")?.dataset.containerId?.trim(),sourceItemQuantity=item.quantity,stackable=!!targetActor.inventory.findStackableItem(item._source),isPurchase=sourceActor.isOfType("loot")&&sourceActor.isMerchant&&!sourceActor.isOwner,isAmmunition=item.isOfType("consumable")&&item.isAmmunition;if(sourceItemQuantity>1){const defaultQuantity=isPurchase?isAmmunition?Math.min(10,sourceItemQuantity):1:sourceItemQuantity;new MoveLootPopup(sourceActor,{quantity:{max:sourceItemQuantity,default:defaultQuantity},lockStack:!stackable,isPurchase},(quantity,newStack)=>{sourceActor.transferItemToActor(targetActor,item,quantity,containerId,newStack)}).render(!0)}else sourceActor.transferItemToActor(targetActor,item,1,containerId)}openTagSelector(anchor,options={}){const selectorType=anchor.dataset.tagSelector;if(!tupleHasValue(TAG_SELECTOR_TYPES,selectorType))throw ErrorPF2e(`Unrecognized tag selector type "${selectorType}"`);if(selectorType==="basic"){const objectProperty=anchor.dataset.property??"",title=anchor.dataset.title??"",configTypes=(anchor.dataset.configTypes??"").split(",").map(type=>type.trim()).filter(tag=>tupleHasValue(SELECTABLE_TAG_FIELDS,tag));this.tagSelector("basic",{...options,objectProperty,configTypes,title})}else this.tagSelector(selectorType,options)}tagSelector(selectorType,options){if(selectorType==="basic"&&options&&"objectProperty"in options)new TagSelectorBasic(this.object,options).render(!0);else{if(selectorType==="basic")throw ErrorPF2e("Insufficient options provided to render basic tag selector");{const TagSelector={senses:SenseSelector,"speed-types":SpeedSelector}[selectorType];new TagSelector(this.object,options).render(!0)}}}openTab(name2){this._tabs[0].activate(name2)}async _renderInner(data,options){return this.itemRenderer.saveAndRestoreState(()=>super._renderInner(data,options))}async _render(force,options){await maintainFocusInRender(this,()=>super._render(force,options)),options?.tab&&this.openTab(options.tab)}async _onSubmit(event,{updateData=null,preventClose=!1,preventRender=!1}={}){for(const input of htmlQueryAll(this.form,"tags ~ input"))input.value===""&&(input.value="[]");return super._onSubmit(event,{updateData,preventClose,preventRender})}_getSubmitData(updateData){const data=super._getSubmitData(updateData);processTagifyInSubmitData(this.form,data);for(const el of this.form.elements)if(el instanceof HTMLInputElement&&el.dataset.allowDelta!==void 0){const strValue=el.value.trim(),value=Number(strValue);(strValue.startsWith("+")||strValue.startsWith("-"))&&!Number.isNaN(value)&&(data[el.name]=Number(getProperty(this.actor,el.name))+value)}return data}};_sortableOnMoveData=new WeakMap,_activateInventoryDragDrop=new WeakSet,activateInventoryDragDrop_fn=__name2(function(panel){const inventoryList=htmlQuery(panel,"section.inventory-list, ol[data-container-type=actorInventory]");if(!inventoryList)return;const sortableOptions={...SORTABLE_DEFAULTS,filter:"div.item-summary",preventOnFilter:!1,scroll:inventoryList,setData:(dataTransfer,dragEl)=>{const item=this.actor.inventory.get(htmlQuery(dragEl,"div[data-item-id]")?.dataset.itemId,{strict:!0});dataTransfer.setData("text/plain",JSON.stringify({...item.toDragData(),fromInventory:!0}))},onStart:()=>{__privateSet(this,_sortableOnMoveData,{})},onClone:event=>{for(const link of htmlQueryAll(htmlQuery(event.item,"div.item-summary"),"a.content-link"))link.draggable=!0},onMove:(event,originalEvent)=>__privateMethod(this,_sortableOnMove,sortableOnMove_fn).call(this,event,originalEvent),onEnd:event=>__privateMethod(this,_sortableOnEnd,sortableOnEnd_fn).call(this,event)};for(const list of htmlQueryAll(inventoryList,"ol.inventory-items, ol.item-list")){const itemType=list.dataset.itemType;if(!(list.dataset.containerId||!itemType)){if(itemType==="backpack"){Sortable.create(list,{...sortableOptions,group:{name:"container",put:(_to,_from,dragEl)=>dragEl.dataset.itemType==="backpack"},swapThreshold:.2});for(const subList of htmlQueryAll(list,"ol.container-held-items"))Sortable.create(subList,{...sortableOptions,group:{name:"nested-item",put:!0},swapThreshold:.2});continue}Sortable.create(list,{...sortableOptions,group:{name:itemType,put:(to,from,dragEl)=>from===to?!0:dragEl.dataset.itemType===to.el.dataset.itemType}})}}},"#activateInventoryDragDrop"),_sortableOnMove=new WeakSet,sortableOnMove_fn=__name2(function(event,originalEvent){if(!this.isEditable)return!1;__privateSet(this,_sortableOnMoveData,{related:event.related,willInsertAfter:event.willInsertAfter});const sourceItem=this.actor.inventory.get(htmlQuery(event.dragged,"div[data-item-id]")?.dataset.itemId??""),targetItem=this.actor.inventory.get(htmlClosest(originalEvent.target,"div[data-item-id]")?.dataset.itemId??"");if(sourceItem&&targetItem)return sourceItem.isOfType("backpack")&&targetItem.isOfType("backpack")&&targetItem.isCollapsed?!1:!sourceItem.isStackableWith(targetItem)},"#sortableOnMove"),_sortableOnEnd=new WeakSet,sortableOnEnd_fn=__name2(async function(event){const itemId=htmlQuery(event.item,"div[data-item-id]")?.dataset.itemId,sourceItem=this.actor.inventory.get(itemId,{strict:!0}),targetElement=event.originalEvent?.target instanceof HTMLElement?event.originalEvent.target:null,targetItemId=htmlClosest(targetElement,"div[data-item-id]")?.dataset.itemId??"",targetItem=this.actor.inventory.get(targetItemId);if(!targetItem&&!event.from.contains(targetElement)&&!event.to.contains(targetElement)){if(this.isEditable&&sourceItem.isInContainer&&htmlClosest(targetElement,".inventory-header"))return sourceItem.move({toContainer:null});const itemIsOnlyOneOfType=this.actor.itemTypes[sourceItem.type].length===1;(event.newIndex!==event.oldIndex||itemIsOnlyOneOfType)&&this.render();return}if(!this.isEditable)return;if(targetItem?.isOfType("backpack")&&(!!!htmlClosest(targetElement,"ol[data-container-id]")||targetItem.contents.size===0))return sourceItem.move({toContainer:targetItem});const{related,willInsertAfter}=__privateGet(this,_sortableOnMoveData),relativeItemId=htmlQuery(related,"div[data-item-id]")?.dataset.itemId??"",relativeItem=this.actor.inventory.get(relativeItemId);if(relativeItem||targetItem)return targetItem&&!targetItem.isOfType("backpack")?sourceItem.move({toStack:targetItem}):sourceItem.move({relativeTo:relativeItem,sortBefore:!willInsertAfter})},"#sortableOnEnd"),_onClickDeleteItem=new WeakSet,onClickDeleteItem_fn=__name2(async function(event){const row=htmlClosest(event.currentTarget,"[data-item-id]"),itemId=row?.dataset.itemId,item=this.actor.items.get(itemId??"");if(item?.isOfType("condition")){const references=htmlQuery(row,".condition-references"),deleteCondition=__name2(async()=>{this.actor.decreaseCondition(item,{forceRemove:!0})},"deleteCondition");if(event.ctrlKey){deleteCondition();return}const content=await renderTemplate("systems/pf2e/templates/actors/delete-condition-dialog.hbs",{question:game.i18n.format("PF2E.DeleteQuestion",{name:item.name}),ref:references?.innerHTML});new Dialog({title:game.i18n.localize("PF2E.DeleteConditionTitle"),content,buttons:{Yes:{icon:'',label:"Yes",callback:deleteCondition},cancel:{icon:'',label:"Cancel"}},default:"Yes"}).render(!0)}else if(row&&item)this.deleteItem(row,item,event);else throw ErrorPF2e("Item not found")},"#onClickDeleteItem"),_onClickBrowseEquipment=new WeakSet,onClickBrowseEquipment_fn=__name2(async function(element){const checkboxesFilterCodes=(element.dataset.filter??"").split(",").filter(s=>!!s).map(s=>s.trim()),tab=game.pf2e.compendiumBrowser.tabs.equipment,filter2=await tab.getFilterData(),{checkboxes}=filter2;for(const filterCode of checkboxesFilterCodes){const splitValues=filterCode.split("-");if(splitValues.length!==2)throw ErrorPF2e(`Invalid filter value for opening the compendium browser: "${filterCode}"`);const[filterType,value]=splitValues;if(objectHasKey(checkboxes,filterType)){const checkbox=checkboxes[filterType];objectHasKey(checkbox.options,value)&&(checkbox.options[value].selected=!0,checkbox.selected.push(value),checkbox.isExpanded=!0)}}tab.open(filter2)},"#onClickBrowseEquipment"),_onClickCreateItem=new WeakSet,onClickCreateItem_fn=__name2(function(link){const data=link.dataset;if(!objectHasKey(CONFIG.PF2E.Item.documentClasses,data.type))throw ErrorPF2e(`Unrecognized item type: "${data.type}"`);if(data.type==="spell")return onClickCreateSpell(this.actor,data);const img=`systems/pf2e/icons/default-icons/${data.type}.svg`,type=data.type,itemSource=(()=>{switch(type){case"action":{const name2=game.i18n.localize(`PF2E.ActionType${String(data.actionType).capitalize()}`),actionType=data.actionType;return{type,img,name:name2,system:{actionType:{value:actionType}}}}case"melee":{const name2=game.i18n.localize(`PF2E.NewPlaceholders.${type.capitalize()}`),weaponType=data.actionType;return{type,img,name:name2,system:{weaponType:{value:weaponType}}}}case"lore":{const name2=this.actor.type==="npc"?game.i18n.localize("PF2E.SkillLabel"):game.i18n.localize("PF2E.NewPlaceholders.Lore");return{type,img,name:name2}}default:{if(!setHasElement(PHYSICAL_ITEM_TYPES,type))throw ErrorPF2e(`Unsupported item type: ${type}`);return{name:game.i18n.localize(`PF2E.NewPlaceholders.${data.type.capitalize()}`),type}}}})();if(itemSource){if(data.traits){const traits=String(data.traits).split(",");itemSource.system=mergeObject(itemSource.system??{},{traits:{value:traits}})}this.actor.createEmbeddedDocuments("Item",[itemSource])}},"#onClickCreateItem"),_onClickSellAllTreasure=new WeakSet,onClickSellAllTreasure_fn=__name2(async function(){const content=await renderTemplate("systems/pf2e/templates/actors/sell-all-treasure-dialog.hbs");new Dialog({title:game.i18n.localize("PF2E.SellAllTreasureTitle"),content,buttons:{yes:{icon:fontAwesomeIcon("check").outerHTML,label:"Yes",callback:async()=>this.actor.inventory.sellAllTreasure()},cancel:{icon:fontAwesomeIcon("times").outerHTML,label:"Cancel"}},default:"cancel"}).render(!0)},"#onClickSellAllTreasure"),__name2(_ActorSheetPF2e,"ActorSheetPF2e");let ActorSheetPF2e=_ActorSheetPF2e;const _DamagePF2e=class{static{__name(this,"_DamagePF2e")}static async roll(data,context,callback){const outcome=context.outcome??null;context.rollMode??=(context.secret?"blindroll":void 0)??game.settings.get("core","rollMode"),context.createMessage??=!0,context.options.has("secret")&&(context.secret=!0);const subtitle=outcome?context.sourceType==="attack"?game.i18n.localize(`PF2E.Check.Result.Degree.Attack.${outcome}`):game.i18n.localize(`PF2E.Check.Result.Degree.Check.${outcome}`):null;let flavor=await renderTemplate("systems/pf2e/templates/chat/action/header.hbs",{title:data.name,subtitle});if(data.traits){const toTags=__name2((slugs,{labels={},descriptions={},cssClass,dataAttr})=>slugs.map(s=>({value:s,label:game.i18n.localize(labels[s]??"")})).sort((a,b)=>a.label.localeCompare(b.label)).map(tag=>{const description=descriptions[tag.value]??"",span=document.createElement("span");return span.className="tag",cssClass&&span.classList.add(cssClass),span.dataset[dataAttr]=tag.value,description&&(span.dataset.tooltip=description),span.innerText=tag.label,span.outerHTML}).join(""),"toTags"),traits=toTags(data.traits,{labels:CONFIG.PF2E.actionTraits,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:null,dataAttr:"trait"}),item2=context.self?.item,itemTraits=item2?.isOfType("weapon","melee","spell")?toTags(Array.from(item2.traits).filter(t=>!(t in CONFIG.PF2E.materialDamageEffects)),{labels:item2.isOfType("spell")?CONFIG.PF2E.spellTraits:CONFIG.PF2E.npcAttackTraits,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:"tag_alt",dataAttr:"trait"}):"",runeTags=context.options.has("item:rune:property:ghost-touch")&&context.options.has("target:trait:incorporeal")?toTags(["ghost-touch"],{labels:{"ghost-touch":"PF2E.WeaponPropertyRune.ghostTouch.Name"},descriptions:{"ghost-touch":"PF2E.WeaponPropertyRune.ghostTouch.Note"},cssClass:"ghost-touch",dataAttr:"slug"}):"",properties=(()=>{const range=item2?.isOfType("action","melee","weapon")?item2.range:null,label=createActionRangeLabel(range);if(label&&(range?.increment||range?.max)){const slug=range.increment?`range-increment-${range.increment}`:`range-${range.max}`;return toTags([slug],{labels:{[slug]:label},descriptions:{[slug]:"PF2E.Item.Weapon.RangeIncrementN.Hint"},cssClass:"tag_secondary",dataAttr:"slug"})}else return""})(),materialEffects=toTags(data.materials,{labels:CONFIG.PF2E.preciousMaterials,descriptions:CONFIG.PF2E.traitsDescriptions,cssClass:"tag_material",dataAttr:"material"}),otherTags=[itemTraits,properties,materialEffects,runeTags].join(""),tagsElem=createHTMLElement("div",{classes:["tags"],dataset:{tooltipClass:"pf2e"}});tagsElem.innerHTML=otherTags.length>0?`${traits}@Localize")&&(content=content.substring(3,content.length-4));const enriched=superEnrichHTML.apply(this,[content,options]);return typeof enriched=="string"&&(options.processVisibility??!0)?_TextEditorPF2e2.processUserVisibility(enriched,options):Promise.resolve().then(async()=>_TextEditorPF2e2.processUserVisibility(await enriched,options))}static _enrichContentLinks(text,options){if(options?.async){const documentTypes=[...CONST.DOCUMENT_LINK_TYPES,"Compendium","UUID"],pattern=new RegExp(`@(${documentTypes.join("|")})\\[([^#\\]]+)(?:#([^\\]]+))?](?:{([^}]+)})?`,"g"),uuids=text.map(t=>Array.from((t.textContent??"").matchAll(pattern))).flat(2).filter(m=>UUIDUtils.isCompendiumUUID(m));return UUIDUtils.fromUUIDs(uuids).then(()=>superEnrichContentLinks.apply(this,[text,options]))}return superEnrichContentLinks.apply(this,[text,options])}static async _createInlineRoll(match,rollData,options={}){const anchor=await superCreateInlineRoll.apply(this,[match,rollData,options]),formula=anchor?.dataset.formula;if(formula){const roll=(()=>{try{return new DamageRoll(formula)}catch{return null}})();if(!roll||!looksLikeDamageRoll(roll))return anchor;const icon=damageDiceIcon(roll),label=match[4]&&match[4].length>0?match[4]:roll.formula;anchor.innerHTML=`${icon.outerHTML}${label}`,anchor.dataset.tooltip=roll.formula,anchor.dataset.damageRoll="",roll.instances.length>0&&roll.instances.every(i=>i.persistent)&&(anchor.draggable=!0,anchor.dataset.persistent="")}return anchor}static async _onClickInlineRoll(event){const anchor=event.currentTarget??null;if(!(anchor instanceof HTMLAnchorElement&&anchor.dataset.formula&&"damageRoll"in anchor.dataset))return superOnClickInlineRoll.apply(this,[event]);const sheetElem=htmlClosest(anchor,".sheet"),messageElem=htmlClosest(anchor,"li.chat-message"),app=ui.windows[Number(sheetElem?.dataset.appid)],message=game.messages.get(messageElem?.dataset.messageId??""),[actor,rollData]=(()=>{if(message?.actor)return[message.actor,message.getRollData()];if(app instanceof ActorSheetPF2e){const itemId=anchor.dataset.pf2ItemId;return[app.actor,app.actor.items.get(itemId)?.getRollData()??app.actor.getRollData()]}if(app instanceof ItemSheetPF2e)return[app.actor,app.item.getRollData()];const itemUuid=anchor.dataset.itemUuid,itemByUUID=itemUuid&&!itemUuid.startsWith("Compendium.")?fromUuidSync(itemUuid):null;return itemByUUID instanceof ItemPF2e?[itemByUUID.actor,itemByUUID.getRollData()]:[null,{}]})(),options=anchor.dataset.flavor?{flavor:anchor.dataset.flavor}:{},speaker=ChatMessagePF2e.getSpeaker({actor}),rollMode=objectHasKey(CONFIG.Dice.rollModes,anchor.dataset.mode)?anchor.dataset.mode:"roll",baseFormula=anchor.dataset.pf2BaseFormula;if(baseFormula){const item=rollData.item instanceof ItemPF2e?rollData.item:null,traits=anchor.dataset.pf2Traits?.split(",")??[],domains=anchor.dataset.pf2Domains?.split(","),extraRollOptions=anchor.dataset.pf2RollOptions?.split(",")??[],result=await augmentInlineDamageRoll(baseFormula,{...eventToRollParams(event,{type:"damage"}),actor,item,domains,traits,extraRollOptions});result&&await DamagePF2e.roll(result.template,result.context);return}const roll=new DamageRoll(anchor.dataset.formula,rollData,options);return roll.toMessage({speaker,flavor:roll.options.flavor},{rollMode})}static processUserVisibility(content,options){const html=createHTMLElement("div",{innerHTML:content}),document2=options.rollData?.actor??null;return UserVisibilityPF2e.process(html,{document:document2}),html.innerHTML}static async enrichString(data,options={}){if(data.length<4)return null;const item=options.rollData?.item??null,[_match,inlineType,paramString,inlineLabel]=data;switch(inlineType){case"Check":{const actor=options.rollData?.actor??item?.actor??null;return __privateMethod(this,_createCheck,createCheck_fn).call(this,{paramString,inlineLabel,item,actor})}case"Damage":return __privateMethod(this,_createDamageRoll,createDamageRoll_fn).call(this,{paramString,rollData:options.rollData,inlineLabel});case"Localize":return __privateMethod(this,_localize,localize_fn).call(this,paramString,options);case"Template":return __privateMethod(this,_createTemplate,createTemplate_fn).call(this,paramString,inlineLabel,item?.system);default:return null}}static convertXMLNode(html,name2,{visible,visibility,whose,tooltip,classes}){const node=html.querySelector(name2);if(!node)return null;const span=document.createElement("span"),{dataset,classList}=span;if(typeof visible=="boolean"&&(visibility=visible?"all":"gm"),visibility&&(dataset.visibility=visibility),whose&&(dataset.whose=whose),tooltip&&(dataset.tooltip=tooltip.trim()),classes)for(const cssClass of classes)classList.add(cssClass);return span.append(...Array.from(node.childNodes)),node.replaceWith(span),span}};_localize=new WeakSet,localize_fn=__name2(async function(paramString,options){const content=game.i18n.localize(paramString);if(content===paramString)return ui.notifications.error(`Failed to localize ${paramString}!`),null;const result=document.createElement("span");return result.innerHTML=await TextEditor.enrichHTML(content,{...options,async:!0}),result},"#localize"),_createTemplate=new WeakSet,createTemplate_fn=__name2(function(paramString,label,itemData){const params=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,paramString,{first:"type"});if(!params)return null;if(!params.type)ui.notifications.error(game.i18n.localize("PF2E.InlineTemplateErrors.TypeMissing"));else if(params.distance)if(objectHasKey(CONFIG.PF2E.areaTypes,params.type)){if(isNaN(+params.distance))return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.DistanceNoNumber",{distance:params.distance})),null;if(params.width&&isNaN(+params.width))return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.WidthNoNumber",{width:params.width})),null;{params.traits||=itemData?.traits?.value?.toString()??"",label||(label=game.i18n.format("PF2E.TemplateLabel",{size:params.distance,unit:game.i18n.localize("PF2E.Foot"),shape:game.i18n.localize(CONFIG.PF2E.areaTypes[params.type])}));const html=document.createElement("span");return html.innerHTML=label,html.setAttribute("data-pf2-effect-area",params.type),html.setAttribute("data-pf2-distance",params.distance),params.traits!==""&&html.setAttribute("data-pf2-traits",params.traits),params.type==="line"&&html.setAttribute("data-pf2-width",params.width??"5"),html}}else return ui.notifications.error(game.i18n.format("PF2E.InlineTemplateErrors.TypeUnsupported",{type:params.type})),null;else return ui.notifications.error(game.i18n.localize("PF2E.InlineTemplateErrors.DistanceMissing")),null;return null},"#createTemplate"),_parseInlineParams=new WeakSet,parseInlineParams_fn=__name2(function(paramString,options={}){return paramString.split("|").reduce((result2,part,idx)=>{if(idx===0&&options.first&&!part.includes(":"))return result2[options.first]=part.trim(),result2;const colonIdx=part.indexOf(":"),portions=colonIdx>=0?[part.slice(0,colonIdx),part.slice(colonIdx+1)]:[part,""];return result2[portions[0]]=portions[1],result2},{})},"#parseInlineParams"),_createCheck=new WeakSet,createCheck_fn=__name2(function({paramString,inlineLabel,item=null,actor=item?.actor??null}){const rawParams=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,paramString,{first:"type"});if(!rawParams)return null;if(!rawParams.type)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.TypeMissing")),null;const showDC=setHasElement(USER_VISIBILITIES,rawParams.showDC)?rawParams.showDC:actor?.hasPlayerOwner||actor?.isOfType("party")||game.settings.get("pf2e","metagame_showDC")?"all":"gm",params={...rawParams,type:rawParams.type,basic:rawParams.basic!==void 0&&["true",""].includes(rawParams.basic),showDC,traits:(()=>{const traits=[],itemTraits=item?.system.traits?.value??[];return rawParams.overrideTraits!=="true"&&traits.push(...itemTraits),rawParams.traits&&traits.push(...rawParams.traits.split(",").map(trait=>trait.trim())),Array.from(new Set(traits))})(),extraRollOptions:compact([...__privateMethod(this,_createActionOptions,createActionOptions_fn).call(this,item),...rawParams.basic==="true"?["damaging-effect"]:[],...rawParams.options?.split(",").map(t=>t.trim())??[]]).sort()};rawParams.dc&&(params.dc=rawParams.dc),rawParams.defense&&(params.defense=rawParams.defense);const types=params.type.split(",");let adjustments=params.adjustment?.split(",")??["0"];if(types.length!==adjustments.length&&adjustments.length>1)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.AdjustmentLengthMismatch")),null;if(types.length>adjustments.length&&(adjustments=new Array(types.length).fill(adjustments[0])),adjustments.some(adj=>adj!==""&&isNaN(parseInt(adj))))return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.NonIntegerAdjustment")),null;const buttons=types.map((type,i)=>__privateMethod(this,_createSingleCheck,createSingleCheck_fn).call(this,{actor,item,inlineLabel,params:{...params,type,adjustment:adjustments[i]}}));if(buttons.length===1)return buttons[0];{const checkGroup=document.createElement("div");checkGroup.setAttribute("data-pf2-checkgroup","");for(const button of buttons){if(button===null)return null;checkGroup.hasChildNodes()&&checkGroup.appendChild(document.createElement("br")),checkGroup.appendChild(button)}return checkGroup}},"#createCheck"),_createSingleCheck=new WeakSet,createSingleCheck_fn=__name2(function({params,item,actor,inlineLabel}){const icon=(()=>{switch(params.type){case"fortitude":return fontAwesomeIcon("heart-pulse");case"reflex":return fontAwesomeIcon("person-running");case"will":return fontAwesomeIcon("brain");case"perception":return fontAwesomeIcon("eye");default:return fontAwesomeIcon("dice-d20")}})();icon.classList.add("icon");const name2=params.name??item?.name??params.type,localize=localizer("PF2E.InlineCheck"),label=(()=>{if(inlineLabel)return inlineLabel;if(tupleHasValue(SAVE_TYPES,params.type)){const saveName=game.i18n.localize(CONFIG.PF2E.saves[params.type]);return params.basic?localize("BasicWithSave",{save:saveName}):saveName}switch(params.type){case"flat":return game.i18n.localize("PF2E.FlatCheck");case"perception":return game.i18n.localize("PF2E.PerceptionLabel");default:{const shortForm=(()=>{if(objectHasKey(SKILL_EXPANDED,params.type))return SKILL_EXPANDED[params.type].shortForm;if(objectHasKey(SKILL_DICTIONARY,params.type))return params.type})();return shortForm?game.i18n.localize(CONFIG.PF2E.skills[shortForm]):params.type.split("-").map(word=>word.slice(0,1).toUpperCase()+word.slice(1)).join(" ")}}})(),createLabel=__name2(content=>createHTMLElement("span",{classes:["label"],innerHTML:content}),"createLabel"),anchor=createHTMLElement("a",{classes:["inline-check"],children:[icon,createLabel(label)],dataset:{pf2Traits:params.traits.toString()||null,pf2RollOptions:params.extraRollOptions.toString()||null,pf2RepostFlavor:name2,pf2ShowDc:params.showDC==="all"?null:params.showDC,pf2Label:localize("DCWithName",{name:name2}),pf2Adjustment:Number(params.adjustment)||null,pf2Roller:params.roller||null,pf2Check:sluggify(params.type)}});if(params.defense&¶ms.dc&&(anchor.dataset.tooltip=localize("Invalid",{message:localize("Errors.DCAndDefense")}),anchor.dataset.invalid="true"),!["flat","fortitude","reflex","will"].includes(params.type)&¶ms.defense&&(anchor.dataset.pf2Defense=params.defense),params.type&¶ms.dc){const checkDC=params.dc==="@self.level"?params.dc:getCheckDC({name:name2,params,item,actor});if(anchor.dataset.pf2Dc=checkDC,checkDC!=="@self.level"){const dc=params.dc===""?NaN:Number(checkDC),displayedDC=isNaN(dc)?checkDC:`${dc+Number(params.adjustment)}`,text=anchor.innerText;anchor.querySelector("span.label")?.replaceWith(createLabel(game.i18n.format("PF2E.DCWithValueAndVisibility",{role:params.showDC,dc:displayedDC,text})))}}return params.roller==="self"&&actor&&!actor.canUserModify(game.user,"update")?createHTMLElement("span",{children:[anchor.innerText]}):anchor},"#createSingleCheck"),_createDamageRoll=new WeakSet,createDamageRoll_fn=__name2(async function(args){const params=__privateMethod(this,_parseInlineParams,parseInlineParams_fn).call(this,args.paramString,{first:"formula"});if(!params||!params.formula)return ui.notifications.warn(game.i18n.localize("PF2E.InlineCheck.Errors.TypeMissing")),null;const item=args.rollData?.item instanceof ItemPF2e?args.rollData?.item:null,actor=(args.rollData?.actor instanceof ActorPF2e?args.rollData?.actor:null)??item?.actor??null,domains=params.domains?.split(",");if(domains?.some(d=>!/^[a-z][-a-z0-9]+-damage$/.test(d)))return ui.notifications.warn(game.i18n.format("PF2E.InlineCheck.Errors.InvalidDomains",{type:"@Damage"})),null;const traits=(()=>{const fromParams=params.traits?.split(",").flatMap(t=>t.trim()||[])??[],fromItem=item?.system.traits?.value??[];return params.overrideTraits==="true"?fromParams:uniq([...fromParams,...fromItem])})().sort(),extraRollOptions=compact([...params.options?.split(",").map(t=>t.trim())??[],...__privateMethod(this,_createActionOptions,createActionOptions_fn).call(this,item)]).sort(),result=await augmentInlineDamageRoll(params.formula,{skipDialog:!0,actor,item,domains,traits,extraRollOptions}),baseFormula=(()=>{const baseRollData={...item?.getRollData()??{},actor:{level:(item&&"level"in item?item.level:null)??1}};return new DamageRoll(params.formula,baseRollData).formula})(),roll=result?.template.damage.roll??new DamageRoll(params.formula,args.rollData),formula=roll.formula;return createHTMLElement("a",{classes:compact(["inline-roll","roll",baseFormula!==formula?"altered":null]),children:[damageDiceIcon(roll),args.inlineLabel??formula],dataset:{formula:roll._formula,tooltip:args.inlineLabel?formula:baseFormula!==formula?game.i18n.format("PF2E.InlineDamage.Base",{formula:baseFormula}):null,damageRoll:params.formula,pf2Domains:domains?.join(",")||null,pf2BaseFormula:result?params.formula:null,pf2Traits:traits.toString()||null,pf2RollOptions:extraRollOptions.toString()||null,pf2ItemId:item?.id}})},"#createDamageRoll"),_createActionOptions=new WeakSet,createActionOptions_fn=__name2(function(item){return!item?.isOfType("action","feat")||!item.actionCost?[]:compact([`action:${item.slug??sluggify(item.name)}`,item.actionCost.value?`action:cost:${item.actionCost.value}`:null])},"#createActionOptions"),__privateAdd(_TextEditorPF2e,_localize),__privateAdd(_TextEditorPF2e,_createTemplate),__privateAdd(_TextEditorPF2e,_parseInlineParams),__privateAdd(_TextEditorPF2e,_createCheck),__privateAdd(_TextEditorPF2e,_createSingleCheck),__privateAdd(_TextEditorPF2e,_createDamageRoll),__privateAdd(_TextEditorPF2e,_createActionOptions),__name2(_TextEditorPF2e,"TextEditorPF2e");let TextEditorPF2e=_TextEditorPF2e;function getCheckDC({name:name2,params,item=null,actor=item?.actor??null}){const{type}=params,dc=params.dc,base=(()=>{if(dc?.startsWith("resolve")&&actor){params.immutable||="true";const resolve=dc.match(/resolve\((.+?)\)$/),value=resolve&&resolve?.length>0?resolve[1]:"";return Number(__name2(resolveString=>{try{const rollData=item?.getRollData()??actor?.getRollData();return Roll.safeEval(Roll.replaceFormulaData(resolveString,rollData))}catch{return 0}},"saferEval")(value))}return Number(dc)||void 0})();if(base){const getStatisticValue=__name2(selectors=>{if(item?.actor&¶ms.immutable!=="true"){const{actor:actor2}=item,{synthetics}=actor2,modifier=new ModifierPF2e({slug:"base",label:"PF2E.ModifierTitle",modifier:base-10,adjustments:extractModifierAdjustments(synthetics.modifierAdjustments,selectors,"base")}),stat=new Statistic(actor2,{slug:type,label:name2,domains:selectors,modifiers:[modifier]});return String(stat.dc.value)}return base.toString()},"getStatisticValue"),slugName=sluggify(name2);if(type==="flat")return params.immutable==="false"?getStatisticValue(["inline-dc",`${slugName}-inline-dc`]):base.toString();{const selectors=["all","inline-dc",`${slugName}-inline-dc`];return getStatisticValue(selectors)}}return"0"}__name(getCheckDC,"getCheckDC"),__name2(getCheckDC,"getCheckDC");async function augmentInlineDamageRoll(baseFormula,args){const{name:name2,actor,item,traits,extraRollOptions}=args;try{const rollData=item?.getRollData()??actor?.getRollData()??{};rollData.actor??={level:(item&&"level"in item?item.level:null)??1};const base=extractBaseDamage(new DamageRoll(baseFormula,rollData)),domains=compact(["damage","inline-damage",item?`${item.id}-inline-damage`:null,item?`${sluggify(item.slug??item.name)}-inline-damage`:null,args.domains]).flat(),options=new Set([...actor?.getRollOptions(domains)??[],...item?.getRollOptions("item")??[],...traits??[],...extraRollOptions??[]]),firstBase=base.at(0);if(firstBase&&actor?.isOfType("npc")&&(actor.isElite||actor.isWeak)){const value=options.has("item:frequency:limited")?4:2;firstBase.terms?.push({dice:null,modifier:actor.isElite?value:-value})}const{modifiers,dice}=(()=>{if(!(actor instanceof ActorPF2e))return{modifiers:[],dice:[]};const extractOptions={resolvables:rollData??{},test:options};return processDamageCategoryStacking(base,{modifiers:extractModifiers(actor.synthetics,domains,extractOptions),dice:extractDamageDice(actor.synthetics.damageDice,domains,extractOptions),test:options})})(),formulaData={base,modifiers,dice,ignoredResistances:[]},isAttack=!!traits?.includes("attack"),context={type:"damage-roll",sourceType:isAttack?"attack":"save",outcome:isAttack?"success":null,domains,options,self:(()=>actor?{actor,token:actor.token,item:item||null,statistic:null,modifiers}:null)()};if(!args.skipDialog&&!await new DamageModifierDialog({formulaData,context}).resolve())return null;const{formula,breakdown}=createDamageFormula(formulaData),roll=new DamageRoll(formula);return{template:{name:name2??item?.name??actor?.name??"",damage:{roll,breakdown},modifiers:[...modifiers,...dice],traits:traits?.filter(t=>t in CONFIG.PF2E.actionTraits)??[],materials:[]},context}}catch(ex){return console.error(`Failed to parse inline @Damage ${baseFormula}:`,ex),null}}__name(augmentInlineDamageRoll,"augmentInlineDamageRoll"),__name2(augmentInlineDamageRoll,"augmentInlineDamageRoll");const _CheckModifiersDialog=class extends Application{static{__name(this,"_CheckModifiersDialog")}constructor(check,resolve,context={options:new Set}){const title=(()=>{const maybeWithHTML=context.title?.trim()||check.slug;if(!maybeWithHTML.includes("<"))return maybeWithHTML.trim();const div=document.createElement("div");return div.innerHTML=maybeWithHTML,div.querySelector(".action-glyph, .pf2-icon")?.remove(),div.innerText.trim()})();super({title}),__privateAdd(this,_resolveSubstitutions),__publicField(this,"check"),__publicField(this,"context"),__publicField(this,"resolve"),__publicField(this,"isResolved",!1),__privateAdd(this,_originallyEnabled2,void 0),this.check=check,this.resolve=resolve,this.context=context,__privateSet(this,_originallyEnabled2,new Set(check.modifiers.filter(m=>m.enabled)))}static get defaultOptions(){return{...super.defaultOptions,template:"systems/pf2e/templates/chat/check-modifiers-dialog.hbs",classes:["roll-modifiers-dialog","dice-checks","dialog"],popOut:!0,width:380,height:"auto"}}async getData(){const fortune=this.context.rollTwice==="keep-higher",misfortune=this.context.rollTwice==="keep-lower",none=fortune===misfortune,rollMode=this.context.rollMode==="roll"?game.settings.get("core","rollMode"):this.context.rollMode;return{appId:this.id,modifiers:this.check.modifiers.map(m=>({...m,hideIfDisabled:!__privateGet(this,_originallyEnabled2).has(m)&&m.hideIfDisabled})),totalModifier:this.check.totalModifier,rollModes:CONFIG.Dice.rollModes,rollMode,showCheckDialogs:game.user.settings.showCheckDialogs,substitutions:__privateMethod(this,_resolveSubstitutions,resolveSubstitutions_fn).call(this),fortune,none,misfortune}}activateListeners($html){const html=$html[0];htmlQuery(html,"button.roll")?.addEventListener("click",()=>{this.resolve(!0),this.isResolved=!0,this.close()});for(const checkbox of htmlQueryAll(html,".substitutions input[type=checkbox]"))checkbox.addEventListener("click",()=>{const substitutions=this.context.substitutions??[],index=Number(checkbox.dataset.subIndex),toggledSub=substitutions.at(index);if(!toggledSub)return;toggledSub.selected=toggledSub.required||checkbox.checked;const options=this.context.options??=new Set;for(const substitution of substitutions){const option=`substitute:${substitution.slug}`;substitution.selected?options.add(option):options.delete(option)}this.context.substitutions=__privateMethod(this,_resolveSubstitutions,resolveSubstitutions_fn).call(this).map(s=>omit(s,["toggleable"])),this.check.calculateTotal(this.context.options),this.render()});for(const checkbox of htmlQueryAll(html,".modifier-container input[type=checkbox]"))checkbox.addEventListener("click",()=>{const index=Number(checkbox.dataset.modifierIndex);this.check.modifiers[index].ignored=!checkbox.checked,this.check.calculateTotal(),this.render()});const addModifierButton=htmlQuery(html,"button.add-modifier");addModifierButton?.addEventListener("click",()=>{const parent=addModifierButton.parentElement,value=Number(parent.querySelector(".add-modifier-value")?.value||1),type=String(parent.querySelector(".add-modifier-type")?.value);let name2=String(parent.querySelector(".add-modifier-name")?.value);const errors=[];if(Number.isNaN(value)?errors.push("Modifier value must be a number."):value===0&&errors.push("Modifier value must not be zero."),!setHasElement(MODIFIER_TYPES,type))throw ErrorPF2e("Unexpected invalid modifier type");(!name2||!name2.trim())&&(name2=game.i18n.localize(value<0?`PF2E.PenaltyLabel.${type}`:`PF2E.BonusLabel.${type}`)),errors.length>0?ui.notifications.error(errors.join(" ")):(this.check.push(new ModifierPF2e(name2,value,type)),this.render())});for(const rollTwice of htmlQueryAll(html,".fate input[type=radio]"))rollTwice.addEventListener("click",()=>{this.context.rollTwice=rollTwice.value||!1});const rollModeInput=htmlQuery(html,"select[name=rollmode]");rollModeInput?.addEventListener("change",()=>{const rollMode=rollModeInput.value;if(!tupleHasValue(Object.values(CONST.DICE_ROLL_MODES),rollMode))throw ErrorPF2e("Unexpected roll mode");this.context.rollMode=rollMode});const toggle=htmlQuery(html,"input[data-action=change-show-default]");toggle?.addEventListener("click",async()=>{await game.user.setFlag("pf2e","settings.showCheckDialogs",toggle.checked)})}async close(options){this.isResolved||this.resolve(!1),super.close(options)}_injectHTML($html){super._injectHTML($html),$html[0]?.querySelector("button.roll")?.focus()}};_originallyEnabled2=new WeakMap,_resolveSubstitutions=new WeakSet,resolveSubstitutions_fn=__name2(function(){this.context.substitutions??=[];const hasRequired={fortune:this.context.substitutions.some(s=>s.required&&s.effectType==="fortune"),misfortune:this.context.substitutions.some(s=>s.required&&s.effectType==="misfortune")};return this.context.substitutions.map(substitution=>{const toggleable=!hasRequired[substitution.effectType],selected=substitution.required?!0:substitution.selected&&toggleable;return{...substitution,selected,toggleable}})},"#resolveSubstitutions"),__name2(_CheckModifiersDialog,"CheckModifiersDialog");let CheckModifiersDialog=_CheckModifiersDialog;const _CheckRoll=class _CheckRoll2 extends Roll{static{__name(this,"_CheckRoll")}get roller(){return game.users.get(this.options.rollerId??"")??null}get type(){return this.options.type??"check"}get degreeOfSuccess(){return this.options.degreeOfSuccess??null}get isReroll(){return this.options.isReroll??!1}get isRerollable(){return!this.isReroll&&!this.dice.some(d=>d.modifiers.includes("kh")||d.modifiers.includes("kl"))}async render(options={}){this._evaluated||await this.evaluate({async:!0});const{isPrivate,flavor,template}=options,{type,identifier,action:action2,damaging}=this.options,canRollDamage=!!(damaging&&identifier&&(this.roller===game.user||game.user.isGM)),limitCueVisibility=!game.settings.get("pf2e","metagame_showResults"),chatData={formula:isPrivate?"???":this._formula,flavor:isPrivate?null:flavor,user:game.user.id,tooltip:isPrivate?"":await this.getTooltip(),total:isPrivate?"?":Math.round(this.total*100)/100,type,identifier,action:action2,degree:this.degreeOfSuccess,canRollDamage,limitCueVisibility};return renderTemplate(template??_CheckRoll2.CHAT_TEMPLATE,chatData)}};__name2(_CheckRoll,"CheckRoll"),__publicField(_CheckRoll,"CHAT_TEMPLATE","systems/pf2e/templates/chat/check/roll.hbs");let CheckRoll=_CheckRoll;const _StrikeAttackRoll=class extends CheckRoll{static{__name(this,"_StrikeAttackRoll")}};__name2(_StrikeAttackRoll,"StrikeAttackRoll");let StrikeAttackRoll=_StrikeAttackRoll;const _CheckPF2e=class _CheckPF2e2{static{__name(this,"_CheckPF2e")}static async roll(check,context={},event=null,callback){event&&mergeObject(context,eventToRollParams(event,{type:"check"})),context.skipDialog??=!game.user.settings.showCheckDialogs,context.createMessage??=!0,Array.isArray(context.options)&&(context.options=new Set(context.options));const rollOptions=context.options??new Set;typeof context.mapIncreases=="number"&&rollOptions.add(`map:increases:${context.mapIncreases}`),rollOptions.has("secret")&&(context.rollMode??=game.user.isGM?"gmroll":"blindroll"),context.rollMode??="roll",rollOptions.size>0&&!context.isReroll&&check.calculateTotal(rollOptions);const substitutions=context.substitutions??=[],requiredSubstitution=context.substitutions.find(s=>s.required&&s.selected);if(requiredSubstitution)for(const substitution of context.substitutions)substitution.required=substitution===requiredSubstitution,substitution.selected=substitution===requiredSubstitution;if(!context.skipDialog&&context.type!=="flat-check"&&!await new Promise(resolve=>{new CheckModifiersDialog(check,resolve,context).render(!0)}))return null;const extraTags=[],isReroll=context.isReroll??!1;isReroll&&(context.rollTwice=!1);const[dice,tagsFromDice]=(()=>{const substitution=substitutions.find(s=>s.selected),rollTwice=context.rollTwice??!1,fortuneMisfortune=new Set(compact([substitution?.effectType,rollTwice==="keep-higher"?"fortune":rollTwice==="keep-lower"?"misfortune":null]));for(const trait of fortuneMisfortune)rollOptions.add(trait);if(rollOptions.has("fortune")&&rollOptions.has("misfortune")){for(const sub of substitutions)rollOptions.delete(`substitute:${sub.slug}`),check.calculateTotal(rollOptions);return["1d20",["PF2E.TraitFortune","PF2E.TraitMisfortune"]]}else if(substitution){const effectType={fortune:"PF2E.TraitFortune",misfortune:"PF2E.TraitMisfortune"}[substitution.effectType],extraTag=game.i18n.format("PF2E.SpecificRule.SubstituteRoll.EffectType",{type:game.i18n.localize(effectType),substitution:reduceItemName(game.i18n.localize(substitution.label))});return[substitution.value.toString(),[extraTag]]}else return context.rollTwice==="keep-lower"?["2d20kl",["PF2E.TraitMisfortune"]]:context.rollTwice==="keep-higher"?["2d20kh",["PF2E.TraitFortune"]]:["1d20",[]]})();extraTags.push(...tagsFromDice);const options={type:context.type,identifier:context.identifier,action:context.action&&sluggify(context.action)||null,rollerId:game.userId,isReroll,totalModifier:check.totalModifier,damaging:!!context.damaging,domains:context.domains},totalModifierPart=signedInteger(check.totalModifier,{emptyStringZero:!0}),roll=await new CheckRoll(`${dice}${totalModifierPart}`,{},options).evaluate({async:!0}),dosAdjustments=(()=>{if(isNil(context.dc))return{};const naturalTotal=compact(roll.dice.map(d=>d.results.find(r=>r.active&&!r.discarded)?.result??null)).shift(),temporaryRollOptions=new Set([...rollOptions,`check:total:${roll.total}`,`check:total:natural:${naturalTotal}`]);return context.dosAdjustments?.filter(a=>a.predicate?.test(temporaryRollOptions)??!0).reduce((record,data)=>{for(const outcome of["all",...DEGREE_OF_SUCCESS_STRINGS])data.adjustments[outcome]&&(record[outcome]=deepClone(data.adjustments[outcome]));return record},{})??{}})(),degree=context.dc?new DegreeOfSuccess(roll,context.dc,dosAdjustments):null;degree&&(context.outcome=DEGREE_OF_SUCCESS_STRINGS[degree.value],context.unadjustedOutcome=DEGREE_OF_SUCCESS_STRINGS[degree.unadjusted],roll.options.degreeOfSuccess=degree.value);const notes=context.notes?.map(n=>n instanceof RollNotePF2e?n:new RollNotePF2e(n)).filter(note=>{if(!note.predicate.test([...rollOptions,...note.rule?.item.getRollOptions("parent")??[]]))return!1;if(!context.dc||note.outcome.length===0)return!0;const outcome=context.outcome??context.unadjustedOutcome;return!!(outcome&¬e.outcome.includes(outcome))})??[],notesList=RollNotePF2e.notesToHTML(notes),item=context.item??null,flavor=await(async()=>{const result=await __privateMethod(this,_createResultFlavor,createResultFlavor_fn).call(this,{degree,target:context.target??null}),tags=__privateMethod(this,_createTagFlavor,createTagFlavor_fn).call(this,{check,context,extraTags}),title=(context.title??check.slug).trim();return[title.startsWith("
${message}
`,defaultYes:!1,yes:()=>{key in(actor._source.system.proficiencies?.attacks??{})&&actor.update({[`system.proficiencies.attacks.-=${key}`]:null})}})}__name(remove,"remove"),__name2(remove,"remove");const ManageAttackProficiencies={add,remove},_AttributeBuilder=class extends Application{static{__name(this,"_AttributeBuilder")}constructor(actor){super(),__privateAdd(this,_createButtons),__privateAdd(this,_calculateAncestryBoosts),__privateAdd(this,_calculateBackgroundBoosts),__privateAdd(this,_calculateLeveledBoosts),__privateAdd(this,_getBoostFlawLabels),__publicField(this,"actor"),__privateAdd(this,_abpEnabled,void 0),this.actor=actor,__privateSet(this,_abpEnabled,game.pf2e.variantRules.AutomaticBonusProgression.isEnabled(actor)),actor.apps[this.appId]=this}static get defaultOptions(){return{...super.defaultOptions,classes:["attribute-builder"],title:game.i18n.localize("PF2E.Actor.Character.Attribute.Boosts"),template:"systems/pf2e/templates/actors/character/attribute-builder.hbs",width:"auto",height:"auto"}}get id(){return`attribute-builder-${this.actor.uuid}`}async getData(options={}){const{actor}=this,build=actor.system.build.attributes;return{...await super.getData(options),actor,attributes:CONFIG.PF2E.abilities,manual:build.manual,ancestry:actor.ancestry,background:actor.background,class:actor.class,attributeModifiers:mapValues$1(actor.abilities,(value,attribute)=>{const mod=build.manual?actor._source.system.abilities?.[attribute].mod??0:value.base;return{mod:addSign(Number(mod.toFixed(1))),label:CONFIG.PF2E.abilities[attribute]}}),manualKeyAttribute:actor.keyAttribute,keyOptions:build.keyOptions,...__privateMethod(this,_calculateAncestryBoosts,calculateAncestryBoosts_fn).call(this),backgroundBoosts:__privateMethod(this,_calculateBackgroundBoosts,calculateBackgroundBoosts_fn).call(this),legacyFlaws:actor.ancestry?.system.voluntary?.boost!==void 0,levelBoosts:__privateMethod(this,_calculateLeveledBoosts,calculateLeveledBoosts_fn).call(this)}}async _render(force,options){return maintainFocusInRender(this,()=>super._render(force,options))}async close(options={}){return delete this.actor.apps[this.appId],super.close(options)}activateListeners($html){super.activateListeners($html);const html=$html[0],{actor}=this;$html.find("[data-tooltip-content]").tooltipster({contentAsHTML:!0,arrow:!1,debug:!1,interactive:!0,maxWidth:350,side:["bottom"],theme:"crb-hover"});for(const input of htmlQueryAll(html,"input[type=text], input[type=number]"))input.addEventListener("focus",()=>{input.type==="text"&&input.dataset.dtype==="Number"&&(input.value=input.value.replace(/[^-.0-9]/g,""),input.type="number"),input.select()}),input.addEventListener("blur",()=>{if(input.type==="number"&&input.dataset.dtype==="Number"){input.type="text";const newValue=Math.clamped(Number(input.value)||0,-5,10);input.value=addSign(newValue);const propertyPath=input.dataset.property;if(!propertyPath)throw ErrorPF2e("Empty property path");actor.update({[propertyPath]:newValue})}});htmlQuery(html,"[data-action=toggle-alternate-ancestry-boosts]")?.addEventListener("click",()=>{actor.ancestry&&(actor.ancestry.system.alternateAncestryBoosts?actor.ancestry.update({"system.-=alternateAncestryBoosts":null}):actor.ancestry.update({"system.alternateAncestryBoosts":[]}))}),htmlQuery(html,"[data-action=toggle-legacy-voluntary-flaw]")?.addEventListener("click",async()=>{const ancestry=actor.ancestry;if(!ancestry)return;const voluntary=ancestry.system.voluntary;if(voluntary?.boost!==void 0){const flaws=uniq(voluntary.flaws);ancestry.update({system:{voluntary:{"-=boost":null,flaws}}})}else{const flaws=voluntary?.flaws.slice(0,2)??[];ancestry.update({system:{voluntary:{boost:null,flaws}}})}});for(const button of htmlQueryAll(html,"[data-section=ancestry] .boost"))button.addEventListener("click",async()=>{const ancestry=actor.ancestry,attribute=button.dataset.attribute;if(!ancestry||!setHasElement(ATTRIBUTE_ABBREVIATIONS,attribute))return;if(ancestry.system.alternateAncestryBoosts){const existingBoosts=ancestry.system.alternateAncestryBoosts,boosts=existingBoosts.includes(attribute)?existingBoosts.filter(b=>b!==attribute):[...existingBoosts,attribute].slice(0,2);ancestry.update({"system.alternateAncestryBoosts":boosts});return}const boostToRemove=Object.entries(ancestry.system.boosts??{}).find(([,b])=>b.selected===attribute);if(boostToRemove){await ancestry.update({[`system.boosts.${boostToRemove[0]}.selected`]:null});return}const freeBoost=Object.entries(ancestry.system.boosts??{}).find(([,b])=>!b.selected&&b.value.length>0);freeBoost&&await ancestry.update({[`system.boosts.${freeBoost[0]}.selected`]:attribute})});for(const button of htmlQueryAll(html,"[data-section=voluntary] .boost-button"))button.addEventListener("click",()=>{const ancestry=actor.ancestry,attribute=button.dataset.attribute;if(!ancestry||!setHasElement(ATTRIBUTE_ABBREVIATIONS,attribute))return;const removing=button.classList.contains("selected");if(button.dataset.action==="flaw"){const{flaws,boost}=ancestry.system.voluntary??{flaws:[]},alreadyHasFlaw=flaws.includes(attribute),isLegacy=boost!==void 0;if(removing&&alreadyHasFlaw&&!boost){flaws.splice(flaws.indexOf(attribute),1),ancestry.update({system:{voluntary:{flaws}}});return}const canDoubleFlaw=ancestry.lockedBoosts.includes(attribute)&&isLegacy,maxFlaws=isLegacy?2:6;flaws.length${game.i18n.format("PF2E.CraftingTab.RemoveFormulaDialogQuestion",{name:name2})}
`,title=game.i18n.localize("PF2E.CraftingTab.RemoveFormulaDialogTitle");if(await Dialog.confirm({title,content})){const actorFormulas=this.actor.toObject().system.crafting?.formulas??[];actorFormulas.findSplice(f=>f.uuid===itemUuid),this.actor.update({"system.crafting.formulas":actorFormulas})}}),htmlQuery(element,"a.formula-unprepare")?.addEventListener("click",async()=>{const itemUuid=element.dataset.itemId,index=element.dataset.itemIndex,entrySelector=element.dataset.entrySelector;if(!itemUuid||!index||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");const name2=__privateGet(this,_knownFormulas)[itemUuid]?.name,content=`${game.i18n.format("PF2E.CraftingTab.UnprepareFormulaDialogQuestion",{name:name2})}
`,title=game.i18n.localize("PF2E.CraftingTab.UnprepareFormulaDialogTitle");await Dialog.confirm({title,content})&&await craftingEntry.unprepareFormula(Number(index),itemUuid)})}const $craftingTab=$html.find(".tab.crafting"),$craftingOptions=$craftingTab.find(".crafting-options input:checkbox");$craftingOptions.on("click",async event=>{const flags=[];$craftingOptions.each((_index,element)=>{element!==event.target&&flags.push($(element).attr("flag"))}),flags.forEach(async flag=>{await this.actor.setFlag("pf2e",flag,!1)})}),$craftingTab.find("a[data-action=quick-add]").on("click",async event=>{const{itemUuid}=event.currentTarget.dataset,formula=(await this.actor.getCraftingFormulas()).find(f=>f.uuid===itemUuid);if(!formula)return;const entries=(await this.actor.getCraftingEntries()).filter(e=>!!e.selector&&e.checkEntryRequirements(formula,{warn:!1}));for(const entry of entries)await entry.prepareFormula(formula);entries.length===0&&ui.notifications.warn(game.i18n.localize("PF2E.CraftingTab.NoEligibleEntry"))});const $formulas=$craftingTab.find(".craftingEntry-list");$formulas.find(".toggle-formula-expended").on("click",async event=>{const $target=$(event.currentTarget),itemUUID=$target.closest("li.formula-item").attr("data-item-id"),index=$target.closest("li.formula-item").attr("data-item-index"),entrySelector=$target.closest("li.crafting-entry").attr("data-entry-selector");if(!itemUUID||!index||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");await craftingEntry.toggleFormulaExpended(Number(index),itemUUID)}),$formulas.find(".toggle-signature-item").on("click",async event=>{const $target=$(event.currentTarget),itemUUID=$target.closest("li.formula-item").attr("data-item-id"),entrySelector=$target.closest("li.crafting-entry").attr("data-entry-selector");if(!itemUUID||!entrySelector)return;const craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)throw ErrorPF2e("Crafting entry not found");await craftingEntry.toggleSignatureItem(itemUUID)}),$formulas.find(".infused-reagents").on("change",event=>{const change=Number($(event.target).val()),infusedReagents=this.actor.system.resources.crafting.infusedReagents,value=Math.clamped(change,0,infusedReagents?.max??0);this.actor.update({"system.resources.crafting.infusedReagents.value":value})}),$formulas.find(".daily-crafting").on("click",async()=>await this.actor.performDailyCrafting());for(const spellcastingCollectionEl of htmlQueryAll(html,".spellcasting-entry[data-item-id]")){const entry=this.actor.spellcasting.get(spellcastingCollectionEl.dataset.itemId??"");htmlQuery(spellcastingCollectionEl,"[data-action=spell-attack]")?.addEventListener("click",event=>{entry?.statistic?.check.roll(eventToRollParams(event,{type:"check"}))})}PCSheetTabManager.initialize(this.actor,$html.find("a[data-action=manage-tabs]")[0]);for(const link of htmlQueryAll(html,"[data-action=browse-feats]"))link.addEventListener("click",()=>__privateMethod(this,_onClickBrowseFeats,onClickBrowseFeats_fn).call(this,link));htmlQuery(html,".tab[data-tab=biography]")?.addEventListener("click",event=>{const section=htmlClosest(event.target,"a[data-action=toggle-bio-visibility")?.dataset.section;if(tupleHasValue(["appearance","backstory","personality","campaign"],section)){event.stopPropagation();const{biography}=this.actor.system.details,path=`system.details.biography.visibility.${section}`;this.actor.update({[path]:!biography.visibility[section]})}})}activateInventoryListeners(panel){super.activateInventoryListeners(panel),(this.isEditable?htmlQuery(panel,".inventory-pane"):null)?.addEventListener("click",event=>{const link=htmlClosest(event.target,"a[data-action=toggle-invested]"),itemId=htmlClosest(link,".item")?.dataset.itemId;itemId&&this.actor.toggleInvested(itemId)})}toggleInitiativeLink(link){if(link??=htmlQuery(this.element.get(0),".sidebar a[data-action=roll-initiative]"),!link)return;const alreadyRolled=typeof this.actor.combatant?.initiative=="number";if(!!(this.isEditable&&game.combat&&!alreadyRolled))link.classList.remove("disabled"),link.dataset.tooltip="COMBAT.InitiativeRoll";else{link.classList.add("disabled");const reason=this.isEditable?game.combat?alreadyRolled?"AlreadyRolled":null:"NoActiveEncounter":"";reason&&(link.dataset.tooltip=game.i18n.format(`PF2E.Encounter.${reason}`,{actor:this.actor.name}))}}async _onDropItem(event,data){const item=await ItemPF2e.fromDropData(data);if(!item)throw ErrorPF2e("Unable to create item from drop data!");if(this.actor.uuid===item.parent?.uuid)return super._onDropItem(event,data);if(item.isOfType("feat")){const slotData=__privateMethod(this,_getFeatSlotData,getFeatSlotData_fn).call(this,event);return this.actor.feats.insertFeat(item,slotData)}return super._onDropItem(event,data)}async _onDrop(event){const dataString=event.dataTransfer?.getData("text/plain"),dropData=(()=>{try{return JSON.parse(dataString??"")}catch{return null}})();if(dropData)if(isObject(dropData.pf2e)&&dropData.pf2e.type==="CraftingFormula"){const dropEntrySelector=typeof dropData.entrySelector=="string"?dropData.entrySelector:null;if(!dropEntrySelector){const containerEl=htmlClosest(event.target,".item-container");if(containerEl?.dataset.containerType==="craftingEntry"){const entrySelector=containerEl.dataset.entrySelector??"",craftingEntry=await this.actor.getCraftingEntry(entrySelector);if(!craftingEntry)return;const craftingFormulas=await this.actor.getCraftingFormulas(),uuid2=dropData.pf2e.itemUuid,formula=craftingFormulas.find(f=>f.uuid===uuid2);formula&&craftingEntry.prepareFormula(formula);return}}const uuid=dropData.pf2e.itemUuid;if(typeof uuid=="string"){const formula=__privateGet(this,_knownFormulas)[uuid];if(formula){const targetUuid=htmlClosest(event.target,"li.formula-item")?.dataset.itemId??"";return __privateMethod(this,_sortFormulas,sortFormulas_fn).call(this,formula,targetUuid,dropEntrySelector)}}}else return super._onDrop(event)}async _onSortItem(event,itemSource){const item=this.actor.items.get(itemSource._id);if(item?.isOfType("feat")){const featSlot=__privateMethod(this,_getFeatSlotData,getFeatSlotData_fn).call(this,event);if(featSlot){const group=this.actor.feats.get(featSlot.groupId)??null,resorting=item.group===group&&!group?.slotted;if(group?.slotted&&!featSlot.slotId)return[];if(!resorting)return this.actor.feats.insertFeat(item,featSlot)}}return super._onSortItem(event,itemSource)}openTab(name2){["encounter","exploration","downtime"].includes(name2)?(super.openTab("actions"),this._tabs[1].activate(name2)):super.openTab(name2)}};_knownFormulas=new WeakMap,_formulaQuantities=new WeakMap,_prepareAbilities=new WeakSet,prepareAbilities_fn=__name2(function(){const{actor}=this,result={encounter:{action:{label:game.i18n.localize("PF2E.ActionsActionsHeader"),actions:[]},reaction:{label:game.i18n.localize("PF2E.ActionsReactionsHeader"),actions:[]},free:{label:game.i18n.localize("PF2E.ActionsFreeActionsHeader"),actions:[]}},exploration:{active:[],other:[]},downtime:[]};for(const item of actor.items){if(!item.isOfType("action")&&!(item.isOfType("feat")&&item.actionCost)||item.slug==="elemental-blast"&&this.actor.flags.pf2e.kineticist)continue;const img=(()=>{const actionIcon=getActionIcon(item.actionCost),defaultIcon=ItemPF2e.getDefaultArtwork(item._source).img;return item.isOfType("action")&&![actionIcon,defaultIcon].includes(item.img)?item.img:item.system.selfEffect?.img??actionIcon})(),traits=item.system.traits.value,traitDescriptions2=item.isOfType("feat")?CONFIG.PF2E.featTraits:CONFIG.PF2E.actionTraits,action2={...pick$1(item,["id","name","actionCost","frequency"]),img,glyph:getActionGlyph(item.actionCost),traits:createSheetTags(traitDescriptions2,traits),feat:item.isOfType("feat")?item:null,hasEffect:!!item.system.selfEffect};if(traits.includes("exploration")){const active=actor.system.exploration.includes(item.id);action2.exploration={active},(active?result.exploration.active:result.exploration.other).push(action2)}else traits.includes("downtime")?result.downtime.push(action2):result.encounter[item.actionCost?.type??"free"]?.actions.push(action2)}for(const list of["action","reaction","free"])result.encounter[list].actions.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang));return result.exploration.active.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result.exploration.other.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result.downtime.sort((a,b)=>a.name.localeCompare(b.name,game.i18n.lang)),result},"#prepareAbilities"),_prepareCraftingEntries=new WeakSet,prepareCraftingEntries_fn=__name2(async function(formulas){const craftingEntries={dailyCrafting:!1,other:[],alchemical:{entries:[],totalReagentCost:0,infusedReagents:this.actor.system.resources.crafting.infusedReagents}};for(const entry of await this.actor.getCraftingEntries(formulas))entry.isAlchemical?(craftingEntries.alchemical.entries.push(entry),craftingEntries.alchemical.totalReagentCost+=entry.reagentCost||0,craftingEntries.dailyCrafting=!0):(craftingEntries.other.push(entry),entry.isDailyPrep&&(craftingEntries.dailyCrafting=!0));return craftingEntries},"#prepareCraftingEntries"),_getBlastData=new WeakSet,getBlastData_fn=__name2(async function(blast,config){const damageType=config.damageTypes.find(dt=>dt.selected)?.value??"untyped",formulaFor=__name2((outcome,melee=!0)=>blast.damage({element:config.element,damageType,melee,outcome,getFormula:!0}),"formulaFor");return{...config,damageType,formula:{melee:{damage:await formulaFor("success"),critical:await formulaFor("criticalSuccess")},ranged:{damage:await formulaFor("success",!1),critical:await formulaFor("criticalSuccess",!1)}}}},"#getBlastData"),_activateBlastListeners=new WeakSet,activateBlastListeners_fn=__name2(function(panel){const blastList=htmlQuery(panel,"ol.elemental-blasts"),{elementTraits:elementTraits2,damageTypes:damageTypes2}=CONFIG.PF2E,selectors=["roll-attack","roll-damage","set-damage-type"].map(s=>`button[data-action=${s}]`).join(",");blastList?.addEventListener("click",async event=>{const button=htmlClosest(event.target,selectors),blastRow=htmlClosest(button,"li");if(!(button&&blastRow))return;event.stopPropagation();const blast=new ElementalBlast(this.actor),{element}=blastRow.dataset,damageType=button.value||blastRow.dataset.damageType;if(!objectHasKey(elementTraits2,element))throw ErrorPF2e("Unexpected error retrieve element");if(!objectHasKey(damageTypes2,damageType))throw ErrorPF2e("Unexpected error retrieving damage type");const melee=button.dataset.melee==="true";switch(button.dataset.action){case"roll-attack":{const mapIncreases=Math.clamped(Number(button.dataset.mapIncreases)||0,0,2);await blast.attack({mapIncreases,element,damageType,melee,event});break}case"roll-damage":{const outcome=button.dataset.outcome==="success"?"success":"criticalSuccess";await blast.damage({element,damageType,melee,outcome,event});break}case"set-damage-type":blast.setDamageType({element,damageType})}})},"#activateBlastListeners"),_onClickBrowseFeats=new WeakSet,onClickBrowseFeats_fn=__name2(async function(element){const maxLevel=Number(element.dataset.level)||this.actor.level,checkboxesFilterCodes=(element.dataset.filter??"").split(",").filter(s=>!!s).map(s=>s.trim()),featTab=game.pf2e.compendiumBrowser.tabs.feat,filter2=await featTab.getFilterData(),level=filter2.sliders.level;level.values.max=Math.min(maxLevel,level.values.upperLimit),level.isExpanded=level.values.max!==level.values.upperLimit;const{category}=filter2.checkboxes,{traits}=filter2.multiselects;for(const filterCode of checkboxesFilterCodes){const[filterType,...rest]=filterCode.split("-"),value=rest.join("-");if(!(filterType&&value))throw ErrorPF2e(`Invalid filter value for opening the compendium browser: "${filterCode}"`);if(filterType==="category"&&value in category.options)category.isExpanded=!0,category.options[value].selected=!0,category.selected.push(value);else if(filterType==="traits"){const trait=traits.options.find(t=>t.value===value);trait&&traits.selected.push(deepClone(trait))}else filterType==="conjunction"&&(value==="and"||value==="or")&&(filter2.multiselects.traits.conjunction=value)}return featTab.open(filter2)},"#onClickBrowseFeats"),_onChangeAdjustStat=new WeakSet,onChangeAdjustStat_fn=__name2(function(selectElem){const propertyKey=selectElem.dataset.property??"",currentValue=getProperty(this.actor,propertyKey),selectedValue=Number(selectElem.value);if(typeof currentValue!="number"||Number.isNaN(selectedValue))throw ErrorPF2e("Actor property not found");const newValue=Math.clamped(selectedValue,0,4),clone=this.actor.clone({[propertyKey]:newValue},{keepId:!0});newValue!==getProperty(clone,propertyKey)&&(ui.notifications.warn("PF2E.ErrorMessage.MinimumProfLevelSetByFeatures",{localize:!0}),selectElem.value=currentValue.toString())},"#onChangeAdjustStat"),_onChangeAdjustItemStat=new WeakSet,onChangeAdjustItemStat_fn=__name2(async function(event){const $select=$(event.delegateTarget),propertyKey=$select.attr("data-item-property")??"",selectedValue=Number($select.val()),itemId=$select.closest(".item").attr("data-item-id")??"",item=this.actor.items.get(itemId);if(!item)throw ErrorPF2e("Item not found");const newValue=(()=>{if(item.isOfType("spellcastingEntry"))return{"system.proficiency.value":()=>Math.clamped(selectedValue,0,4)}[propertyKey]?.();if(item.isOfType("lore"))return Math.clamped(selectedValue,0,4);throw ErrorPF2e("Item not recognized")})();typeof newValue=="number"&&await item.update({[propertyKey]:newValue}),newValue!==getProperty(item,propertyKey)&&ui.notifications.warn(game.i18n.localize("PF2E.ErrorMessage.MinimumProfLevelSetByFeatures"))},"#onChangeAdjustItemStat"),_onClickAdjustItemStat=new WeakSet,onClickAdjustItemStat_fn=__name2(async function(event){const $button=$(event.delegateTarget),itemId=$button.closest(".item").attr("data-item-id")??"",item=this.actor.items.get(itemId);if(!item)throw ErrorPF2e("Item not found");const propertyKey=$button.attr("data-item-property")??"",change=event.type==="click"?1:-1,newValue=(()=>{if(item.isOfType("spellcastingEntry")){const proficiencyRank=item.system.proficiency.value;return{"system.proficiency.value":()=>Math.clamped(proficiencyRank+change,0,4)}[propertyKey]?.()}else if(item.isOfType("lore")){const currentRank=item.system.proficient.value;return Math.clamped(currentRank+change,0,4)}else throw ErrorPF2e("Item not recognized")})();typeof newValue=="number"&&await item.update({[propertyKey]:newValue})},"#onClickAdjustItemStat"),_getFeatSlotData=new WeakSet,getFeatSlotData_fn=__name2(function(event){const groupId=htmlClosest(event.target,"[data-group-id]")?.dataset.groupId,slotId=htmlClosest(event.target,"[data-slot-id]")?.dataset.slotId||null;return groupId?{groupId,slotId}:null},"#getFeatSlotData"),_sortFormulas=new WeakSet,sortFormulas_fn=__name2(async function(sourceFormula,targetUuid,entrySelector){if(!UUIDUtils.isItemUUID(targetUuid)||sourceFormula.uuid===targetUuid)return;const sourceLevel=sourceFormula.level,targetLevel=__privateGet(this,_knownFormulas)[targetUuid].level;if(!entrySelector&&sourceLevel!==targetLevel)return;const performSort=__name2(async(formulas2,source2,target2,siblings)=>{const results=SortingHelpers.performIntegerSort(source2,{target:target2,siblings});if(results.length){for(const result of results){const formula=formulas2.find(f=>f===result.target);formula&&(formula.sort=result.update.sort)}entrySelector?await(await this.actor.getCraftingEntry(entrySelector))?.updateFormulas(formulas2):await this.actor.update({"system.crafting.formulas":formulas2})}},"performSort");if(entrySelector){const entry=await this.actor.getCraftingEntry(entrySelector);if(!entry)throw ErrorPF2e(`Crafting entry "${entrySelector}" doesn't exist!`);const formulas2=deepClone(entry.preparedFormulaData),source2=formulas2.find(f=>f.itemUUID===sourceFormula.uuid),target2=formulas2.find(f=>f.itemUUID===targetUuid);if(source2&&target2){const siblings=formulas2.filter(f=>f.itemUUID!==source2.itemUUID);return performSort(formulas2,source2,target2,siblings)}}const formulas=this.actor.toObject().system.crafting?.formulas??[],source=formulas.find(f=>f.uuid===sourceFormula.uuid),target=formulas.find(f=>f.uuid===targetUuid);if(source&&target){const siblings=formulas.filter(f=>f.uuid!==source.uuid);return performSort(formulas,source,target,siblings)}},"#sortFormulas"),__name2(_CharacterSheetPF2e,"CharacterSheetPF2e");let CharacterSheetPF2e=_CharacterSheetPF2e;const _AttackPopout=class extends CharacterSheetPF2e{static{__name(this,"_AttackPopout")}constructor(object,options){if(super(object,options),__publicField(this,"type","strike"),__privateAdd(this,_strikeItemId,""),__privateAdd(this,_strikeSlug,""),__privateAdd(this,_strike,void 0),__privateAdd(this,_elementTrait,void 0),__privateAdd(this,_blasts,[]),!options.type)throw ErrorPF2e('AttackPopout is missing mandatory "type" option.');if(options.type==="blast"){if(!options.elementTrait)throw ErrorPF2e('AttackPopout of type "blast" is missing mandatory "elementalTrait" option.');__privateSet(this,_elementTrait,options.elementTrait)}else{if(!options.strikeSlug)throw ErrorPF2e('AttackPopout of type "strike" is missing mandatory "strikeSlug" option.');if(!options.strikeItemId)throw ErrorPF2e('AttackPopout of type "strike" is missing mandatory "strikeItemId" option.');__privateSet(this,_strikeSlug,options.strikeSlug),__privateSet(this,_strikeItemId,options.strikeItemId)}this.type=options.type}get template(){return"systems/pf2e/templates/actors/character/attack-popout.hbs"}get id(){const id=super.id;return this.type==="strike"?`${id}-strike-${__privateGet(this,_strikeItemId)}-${__privateGet(this,_strikeSlug)}`:`${id}-blast-${__privateGet(this,_elementTrait)}`}static get defaultOptions(){return{...super.defaultOptions,submitOnChange:!1,submitOnClose:!1,width:480,height:"auto",resizable:!1}}get label(){return this.type==="blast"?__privateGet(this,_blasts).at(0)?.label??null:__privateGet(this,_strike)?.label??null}async getData(options){const base=await super.getData(options);return this.type==="blast"?(base.elementalBlasts=__privateSet(this,_blasts,base.elementalBlasts.filter(b=>b.element===__privateGet(this,_elementTrait))),base.data.actions=[],base.toggles=base.toggles.filter(t=>t.domain==="elemental-blast")):(base.elementalBlasts=[],__privateGet(this,_strikeSlug)&&__privateGet(this,_strikeItemId)&&__privateSet(this,_strike,base.data.actions.find(a=>a.item.id===__privateGet(this,_strikeItemId)&&a.slug===__privateGet(this,_strikeSlug)))),{...base,strike:__privateGet(this,_strike),strikeIndex:base.data.actions.findIndex(a=>a===__privateGet(this,_strike)),popoutType:this.type}}activateListeners($html){super.activateListeners($html);const html=$html[0],{label}=this;if(label){const title=htmlQuery(htmlClosest(html,"div.window-app"),"h4.window-title");title&&(title.innerHTML=game.i18n.localize(label))}}_getHeaderButtons(){return super._getHeaderButtons().filter(b=>b.label==="Close")}};_strikeItemId=new WeakMap,_strikeSlug=new WeakMap,_strike=new WeakMap,_elementTrait=new WeakMap,_blasts=new WeakMap,__name2(_AttackPopout,"AttackPopout");let AttackPopout=_AttackPopout;const _MacroPF2e=class extends Macro{static{__name(this,"_MacroPF2e")}get visible(){return this.permission>=CONST.DOCUMENT_OWNERSHIP_LEVELS.OBSERVER}};__name2(_MacroPF2e,"MacroPF2e");let MacroPF2e=_MacroPF2e;async function rollItemMacro(itemId){const speaker=ChatMessage.getSpeaker(),item=(canvas.tokens.get(speaker.token??"")?.actor??game.actors.get(speaker.actor??""))?.items?.get(itemId);if(!item){ui.notifications.warn(`Your controlled Actor does not have an item with ID ${itemId}`);return}return item.isOfType("action","feat")&&item.system.selfEffect?createSelfEffectMessage(item):item.toChat()}__name(rollItemMacro,"rollItemMacro"),__name2(rollItemMacro,"rollItemMacro");async function createActionMacro({actorUUID,actionIndex,elementTrait,slot}){const actor=resolveMacroActor(actorUUID);if(!actor?.isOfType("character","npc"))return;const data=(()=>{if(actor.isOfType("character")&&objectHasKey(CONFIG.PF2E.elementTraits,elementTrait)){const config=new ElementalBlast(actor).configs.find(c=>c.element===elementTrait);return config?{name:game.i18n.localize(config.label),command:`game.pf2e.rollActionMacro({ actorUUID: "${actorUUID}", type: "blast", elementTrait: "${elementTrait}" })`,img:config.img}:null}else if(actionIndex!==void 0){const action2=actor.system.actions[actionIndex];return action2?{name:`${game.i18n.localize("PF2E.WeaponStrikeLabel")}: ${action2.label}`,command:`game.pf2e.rollActionMacro({ actorUUID: "${actorUUID}", type: "strike", itemId: "${action2.item.id}", slug: "${action2.slug}" })`,img:action2.item.img}:null}return null})();if(!data)return;const actionMacro=game.macros.find(macro=>macro.name===data.name&¯o.command===data.command)??await MacroPF2e.create({command:data.command,name:data.name,type:"script",img:data.img,flags:{pf2e:{actionMacro:!0}}},{renderSheet:!1});game.user.assignHotbarMacro(actionMacro??null,slot)}__name(createActionMacro,"createActionMacro"),__name2(createActionMacro,"createActionMacro");async function rollActionMacro({actorUUID,itemId,elementTrait,slug,type}){const actor=resolveMacroActor(actorUUID);if(!actor?.isOfType("character","npc")){ui.notifications.error("PF2E.MacroActionNoActorError",{localize:!0});return}const strikes=actor.system.actions,strike=strikes.find(s=>s.item.id===itemId&&s.slug===slug)??strikes.find(s=>s.slug===slug);if(actor.isOfType("character")){const closedExisting=__name2(partialId=>{const appId=`AttackPopout-Actor-${actor.id}-${partialId}`,existing=Object.values(actor.apps).find(a=>a?.id===appId);return existing?(existing.close({force:!0}),!0):!1},"closedExisting");switch(type){case"blast":{if(closedExisting(`blast-${elementTrait}`))return;if(!actor.itemTypes.effect.find(e=>e.slug==="effect-kinetic-aura")){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}new AttackPopout(actor,{type,elementTrait}).render(!0);return}case"strike":{if(closedExisting(`strike-${itemId}-${slug}`))return;if(!strike){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}new AttackPopout(actor,{type,strikeItemId:itemId,strikeSlug:slug}).render(!0);return}}}if(!strike){ui.notifications.error("PF2E.MacroActionNoActionError",{localize:!0});return}const meleeOrRanged=strike.item.isMelee?"melee":"ranged",identifier=`${strike.item.id}.${strike.slug}.${meleeOrRanged}`,description=await TextEditor.enrichHTML(game.i18n.localize(strike.description),{async:!0}),templateData={actor,strike,identifier,description},content=await renderTemplate("systems/pf2e/templates/chat/strike-card.hbs",templateData),token=actor.token??actor.getActiveTokens(!0,!0).shift()??null,chatData={speaker:ChatMessagePF2e.getSpeaker({actor,token}),content,type:CONST.CHAT_MESSAGE_TYPES.OTHER},rollMode=game.settings.get("core","rollMode");return["gmroll","blindroll"].includes(rollMode)&&(chatData.whisper=ChatMessage.getWhisperRecipients("GM").map(u=>u.id)),rollMode==="blindroll"&&(chatData.blind=!0),ChatMessagePF2e.create(chatData)}__name(rollActionMacro,"rollActionMacro"),__name2(rollActionMacro,"rollActionMacro");async function createSkillMacro(skill,skillName,actorId,slot){const dictName=SKILL_DICTIONARY[skill]??skill,command=` const a = game.actors.get("${actorId}"); if (a) { const opts = a.getRollOptions(["all", "skill-check", "${dictName}"]); @@ -94,8 +94,8 @@ if (item?.type === "condition") { } else { ui.notifications.error(game.i18n.format("PF2E.ErrorMessage.ItemNotFoundByUUID", { uuid: ITEM_UUID })); } -`,toggleMacro=game.macros.contents.find(macro=>macro.name===effect.name&¯o.command===command)??await MacroPF2e.create({command,name:effect.name,type:"script",img:effect.img},{renderSheet:!1});game.user.assignHotbarMacro(toggleMacro??null,slot)}__name(createToggleEffectMacro,"createToggleEffectMacro"),__name2(createToggleEffectMacro,"createToggleEffectMacro");function resolveMacroActor(uuid){if(uuid){const actor=fromUuidSync(uuid);return actor instanceof ActorPF2e?actor:null}const speaker=ChatMessage.getSpeaker();return canvas.tokens.get(speaker.token??"")?.actor??game.actors.get(speaker.actor??"")??null}__name(resolveMacroActor,"resolveMacroActor"),__name2(resolveMacroActor,"resolveMacroActor");async function perceptionForSelected(event){const actors=canvas.tokens.controlled.flatMap(t=>t.actor??[]).filter(a=>!!a.isOfType("creature"));if(actors.length===0){ui.notifications.error("You must select at least one PC/NPC token.");return}const argsFromEvent=eventToRollParams(event);for(const actor of actors)await actor.perception.roll({...argsFromEvent,traits:["secret"]})}__name(perceptionForSelected,"perceptionForSelected"),__name2(perceptionForSelected,"perceptionForSelected");const ITEM_UUID="Compendium.pf2e.equipment-effects.Item.2YgXoHvJfrDHucMr",TEMPLATES={flavor:"./systems/pf2e/templates/chat/action/flavor.hbs",content:"./systems/pf2e/templates/chat/action/content.hbs"};async function raiseAShield(options){const localize=localizer("PF2E.Actions.RaiseAShield"),actors=Array.isArray(options.actors)?options.actors:[options.actors],actor=actors[0];if(actors.length>1||!(actor&&["character","npc"].includes(actor.type))){ui.notifications.error(localize("BadArgs"));return}const shield=actor.heldShield,speaker=ChatMessagePF2e.getSpeaker({actor});if(await(async()=>{const existingEffect=actor.itemTypes.effect.find(e=>e.flags.core?.sourceId===ITEM_UUID);if(existingEffect)return await existingEffect.delete(),!1;if(shield?.isDestroyed)return ui.notifications.warn(localize("ShieldIsDestroyed",{actor:speaker.alias,shield:shield.name})),!1;if(shield?.isBroken===!1){const effect=await fromUuid(ITEM_UUID);if(!(effect instanceof EffectPF2e))throw ErrorPF2e("Raise a Shield effect not found");return await actor.createEmbeddedDocuments("Item",[effect.toObject()]),!0}else return shield?.isBroken?(ui.notifications.warn(localize("ShieldIsBroken",{actor:speaker.alias,shield:shield.name})),!1):(ui.notifications.warn(localize("NoShieldEquipped",{actor:speaker.alias})),!1)})()){const combatActor=game.combat?.started&&game.combat.combatant?.actor||null,[actionType,costSymbol]=combatActor&&combatActor!==actor?["Reaction","R"]:["SingleAction","1"],content=await renderTemplate(TEMPLATES.content,{imgPath:shield.img,message:localize("Content",{actor:speaker.alias})}),flavor=await renderTemplate(TEMPLATES.flavor,{action:{title:localize(`${actionType}Title`),glyph:getActionGlyph(costSymbol)}});await ChatMessagePF2e.create({type:CONST.CHAT_MESSAGE_TYPES.EMOTE,speaker,flavor,content})}}__name(raiseAShield,"raiseAShield"),__name2(raiseAShield,"raiseAShield");async function restForTheNight(options){const actors=Array.isArray(options.actors)?options.actors:[options.actors],characters=actors.filter(a=>a?.type==="character");if(actors.length===0)return ui.notifications.error(game.i18n.localize("PF2E.ErrorMessage.NoPCTokenSelected")),[];const localize=localizer("PF2E.Action.RestForTheNight"),promptMessage=(()=>{const element=document.createElement("p");return element.innerText=localize("Prompt"),element.outerHTML})();if(!options.skipDialog&&!await Dialog.confirm({title:localize("Label"),content:promptMessage,defaultYes:!0}))return[];const messages=[];for(const actor of characters){const actorUpdates={attributes:{hp:{value:actor._source.system.attributes.hp.value}},resources:{}},itemUpdates=[],statements=[],{abilities:abilities2,attributes,hitPoints,level}=actor,conModifier=abilities2.con.mod,maxRestored=Math.max(conModifier,1)*level*hitPoints.recoveryMultiplier+hitPoints.recoveryAddend,hpLost=attributes.hp.max-attributes.hp.value,hpRestored=hpLost>=maxRestored?maxRestored:hpLost;if(hpRestored>0){const singularOrPlural=hpRestored===1?"PF2E.Action.RestForTheNight.Message.HitPointsSingle":"PF2E.Action.RestForTheNight.Message.HitPoints";actorUpdates.attributes.hp={value:attributes.hp.value+=hpRestored},statements.push(game.i18n.format(singularOrPlural,{hitPoints:hpRestored}))}const RECOVERABLE_CONDITIONS=["doomed","drained","fatigued","wounded"],conditionChanges={doomed:null,drained:null,fatigued:null,wounded:null};actor.hasCondition("fatigued")&&(await actor.decreaseCondition("fatigued"),conditionChanges.fatigued="removed");for(const slug of["doomed","drained"]){const condition=actor.getCondition(slug);if(!condition)continue;const newValue=(condition.value??1)-1;await actor.decreaseCondition(slug),conditionChanges[slug]=newValue===0?"removed":"reduced"}actor.hasCondition("wounded")&&attributes.hp.value===attributes.hp.max&&(await actor.decreaseCondition("wounded",{forceRemove:!0}),conditionChanges.wounded="removed");const wands=actor.itemTypes.consumable.filter(i=>i.category==="wand"&&i.uses.value