5etools-utils 0.12.5 → 0.12.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. package/package.json +1 -1
  2. package/schema/brew/backgrounds.json +1 -1
  3. package/schema/brew/bestiary/bestiary.json +2 -2
  4. package/schema/brew/bestiary/legendarygroups.json +1 -1
  5. package/schema/brew/bestiary/template.json +4 -4
  6. package/schema/brew/class/class.json +2 -2
  7. package/schema/brew/decks.json +2 -2
  8. package/schema/brew/deities.json +1 -1
  9. package/schema/brew/feats.json +1 -1
  10. package/schema/brew/fluff-races.json +1 -1
  11. package/schema/brew/foundry-races.json +2 -2
  12. package/schema/brew/items-base.json +2 -2
  13. package/schema/brew/items.json +1075 -509
  14. package/schema/brew/optionalfeatures.json +1 -1
  15. package/schema/brew/races.json +8 -8
  16. package/schema/brew/recipes.json +1 -1
  17. package/schema/brew/sources-5etools.json +7 -0
  18. package/schema/brew/spells/spells.json +1 -1
  19. package/schema/brew/util-copy.json +960 -0
  20. package/schema/brew/util-foundry.json +8 -2
  21. package/schema/brew/util-token.json +7 -3
  22. package/schema/brew/util.json +2 -856
  23. package/schema/brew-fast/backgrounds.json +1 -1
  24. package/schema/brew-fast/bestiary/bestiary.json +2 -2
  25. package/schema/brew-fast/bestiary/legendarygroups.json +1 -1
  26. package/schema/brew-fast/bestiary/template.json +4 -4
  27. package/schema/brew-fast/class/class.json +2 -2
  28. package/schema/brew-fast/decks.json +2 -2
  29. package/schema/brew-fast/deities.json +1 -1
  30. package/schema/brew-fast/feats.json +1 -1
  31. package/schema/brew-fast/fluff-races.json +1 -1
  32. package/schema/brew-fast/foundry-races.json +2 -2
  33. package/schema/brew-fast/items-base.json +2 -2
  34. package/schema/brew-fast/items.json +1075 -509
  35. package/schema/brew-fast/optionalfeatures.json +1 -1
  36. package/schema/brew-fast/races.json +8 -8
  37. package/schema/brew-fast/recipes.json +1 -1
  38. package/schema/brew-fast/sources-5etools.json +7 -0
  39. package/schema/brew-fast/spells/spells.json +1 -1
  40. package/schema/brew-fast/util-copy.json +960 -0
  41. package/schema/brew-fast/util-foundry.json +8 -2
  42. package/schema/brew-fast/util-token.json +7 -3
  43. package/schema/brew-fast/util.json +2 -856
  44. package/schema/site/backgrounds.json +1 -1
  45. package/schema/site/bestiary/bestiary.json +2 -2
  46. package/schema/site/bestiary/legendarygroups.json +1 -1
  47. package/schema/site/bestiary/template.json +4 -4
  48. package/schema/site/class/class.json +2 -2
  49. package/schema/site/decks.json +2 -2
  50. package/schema/site/deities.json +1 -1
  51. package/schema/site/feats.json +1 -1
  52. package/schema/site/fluff-races.json +1 -1
  53. package/schema/site/foundry-races.json +2 -2
  54. package/schema/site/items-base.json +2 -2
  55. package/schema/site/items.json +1253 -728
  56. package/schema/site/optionalfeatures.json +1 -1
  57. package/schema/site/races.json +8 -8
  58. package/schema/site/recipes.json +1 -1
  59. package/schema/site/sources-5etools.json +7 -0
  60. package/schema/site/spells/spells.json +1 -1
  61. package/schema/site/util-copy.json +960 -0
  62. package/schema/site/util-foundry.json +8 -2
  63. package/schema/site/util-token.json +7 -3
  64. package/schema/site/util.json +2 -856
  65. package/schema/site-fast/backgrounds.json +1 -1
  66. package/schema/site-fast/bestiary/bestiary.json +2 -2
  67. package/schema/site-fast/bestiary/legendarygroups.json +1 -1
  68. package/schema/site-fast/bestiary/template.json +4 -4
  69. package/schema/site-fast/class/class.json +2 -2
  70. package/schema/site-fast/decks.json +2 -2
  71. package/schema/site-fast/deities.json +1 -1
  72. package/schema/site-fast/feats.json +1 -1
  73. package/schema/site-fast/fluff-races.json +1 -1
  74. package/schema/site-fast/foundry-races.json +2 -2
  75. package/schema/site-fast/items-base.json +2 -2
  76. package/schema/site-fast/items.json +1253 -728
  77. package/schema/site-fast/optionalfeatures.json +1 -1
  78. package/schema/site-fast/races.json +8 -8
  79. package/schema/site-fast/recipes.json +1 -1
  80. package/schema/site-fast/sources-5etools.json +7 -0
  81. package/schema/site-fast/spells/spells.json +1 -1
  82. package/schema/site-fast/util-copy.json +960 -0
  83. package/schema/site-fast/util-foundry.json +8 -2
  84. package/schema/site-fast/util-token.json +7 -3
  85. package/schema/site-fast/util.json +2 -856
  86. package/schema/ua/backgrounds.json +1 -1
  87. package/schema/ua/bestiary/bestiary.json +2 -2
  88. package/schema/ua/bestiary/legendarygroups.json +1 -1
  89. package/schema/ua/bestiary/template.json +4 -4
  90. package/schema/ua/class/class.json +2 -2
  91. package/schema/ua/decks.json +2 -2
  92. package/schema/ua/deities.json +1 -1
  93. package/schema/ua/feats.json +1 -1
  94. package/schema/ua/fluff-races.json +1 -1
  95. package/schema/ua/foundry-races.json +2 -2
  96. package/schema/ua/items-base.json +2 -2
  97. package/schema/ua/items.json +1257 -729
  98. package/schema/ua/optionalfeatures.json +1 -1
  99. package/schema/ua/races.json +8 -8
  100. package/schema/ua/recipes.json +1 -1
  101. package/schema/ua/sources-5etools.json +7 -0
  102. package/schema/ua/spells/spells.json +1 -1
  103. package/schema/ua/util-copy.json +960 -0
  104. package/schema/ua/util-foundry.json +8 -2
  105. package/schema/ua/util-token.json +7 -3
  106. package/schema/ua/util.json +2 -856
  107. package/schema/ua-fast/backgrounds.json +1 -1
  108. package/schema/ua-fast/bestiary/bestiary.json +2 -2
  109. package/schema/ua-fast/bestiary/legendarygroups.json +1 -1
  110. package/schema/ua-fast/bestiary/template.json +4 -4
  111. package/schema/ua-fast/class/class.json +2 -2
  112. package/schema/ua-fast/decks.json +2 -2
  113. package/schema/ua-fast/deities.json +1 -1
  114. package/schema/ua-fast/feats.json +1 -1
  115. package/schema/ua-fast/fluff-races.json +1 -1
  116. package/schema/ua-fast/foundry-races.json +2 -2
  117. package/schema/ua-fast/items-base.json +2 -2
  118. package/schema/ua-fast/items.json +1257 -729
  119. package/schema/ua-fast/optionalfeatures.json +1 -1
  120. package/schema/ua-fast/races.json +8 -8
  121. package/schema/ua-fast/recipes.json +1 -1
  122. package/schema/ua-fast/sources-5etools.json +7 -0
  123. package/schema/ua-fast/spells/spells.json +1 -1
  124. package/schema/ua-fast/util-copy.json +960 -0
  125. package/schema/ua-fast/util-foundry.json +8 -2
  126. package/schema/ua-fast/util-token.json +7 -3
  127. package/schema/ua-fast/util.json +2 -856
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json-schema.org/draft/2020-12/schema",
3
3
  "$id": "items.json",
4
- "version": "1.14.11",
4
+ "version": "1.14.12",
5
5
  "type": "object",
6
6
  "$defs": {
7
7
  "itemData": {
@@ -562,8 +562,566 @@
562
562
  "type": "string"
563
563
  }
564
564
  },
565
+ "_item": {
566
+ "type": "object",
567
+ "properties": {
568
+ "name": {
569
+ "type": "string"
570
+ },
571
+ "alias": {
572
+ "$ref": "util.json#/$defs/alias"
573
+ },
574
+ "type": {
575
+ "$ref": "items-shared.json#/$defs/itemType"
576
+ },
577
+ "typeAlt": {
578
+ "$ref": "items-shared.json#/$defs/itemType"
579
+ },
580
+ "rarity": {
581
+ "$ref": "items-shared.json#/$defs/itemRarity"
582
+ },
583
+ "source": {
584
+ "$ref": "util.json#/$defs/source"
585
+ },
586
+ "page": {
587
+ "$ref": "util.json#/$defs/page"
588
+ },
589
+ "additionalSources": {
590
+ "$ref": "util.json#/$defs/additionalSources"
591
+ },
592
+ "reprintedAs": {
593
+ "$ref": "util.json#/$defs/reprintedAs"
594
+ },
595
+ "baseItem": {
596
+ "type": "string"
597
+ },
598
+ "ac": {
599
+ "type": "integer"
600
+ },
601
+ "age": {
602
+ "$ref": "items-shared.json#/$defs/itemAge"
603
+ },
604
+ "carryingCapacity": {
605
+ "$ref": "items-shared.json#/$defs/itemCarryingCapacity"
606
+ },
607
+ "dmg1": {
608
+ "type": "string"
609
+ },
610
+ "dmg2": {
611
+ "type": "string",
612
+ "description": "The versatile or alternative damage dice of the weapon, e.g. \"1d10\""
613
+ },
614
+ "dmgType": {
615
+ "$ref": "util.json#/$defs/dataDamageTags"
616
+ },
617
+ "entries": {
618
+ "type": "array",
619
+ "items": {
620
+ "$ref": "entry.json"
621
+ }
622
+ },
623
+ "additionalEntries": {
624
+ "type": "array",
625
+ "items": {
626
+ "$ref": "entry.json"
627
+ }
628
+ },
629
+ "property": {
630
+ "$ref": "items-shared.json#/$defs/itemProperty"
631
+ },
632
+ "range": {
633
+ "type": "string"
634
+ },
635
+ "reload": {
636
+ "type": [
637
+ "string",
638
+ "integer"
639
+ ]
640
+ },
641
+ "reqAttune": {
642
+ "type": [
643
+ "string",
644
+ "boolean"
645
+ ]
646
+ },
647
+ "reqAttuneAlt": {
648
+ "description": "Used for filtering.",
649
+ "type": [
650
+ "string",
651
+ "boolean"
652
+ ]
653
+ },
654
+ "curse": {
655
+ "type": "boolean"
656
+ },
657
+ "vulnerable": {
658
+ "$ref": "util.json#/$defs/damageVulnerabilityArray"
659
+ },
660
+ "resist": {
661
+ "$ref": "util.json#/$defs/damageResistArray"
662
+ },
663
+ "immune": {
664
+ "$ref": "util.json#/$defs/damageImmunityArray"
665
+ },
666
+ "conditionImmune": {
667
+ "$ref": "util.json#/$defs/conditionImmunityArray"
668
+ },
669
+ "detail1": {
670
+ "description": "A descriptive field that can be used to complete entries in variants.",
671
+ "type": "string"
672
+ },
673
+ "scfType": {
674
+ "$ref": "items-shared.json#/$defs/itemScfType"
675
+ },
676
+ "speed": {
677
+ "$ref": "items-shared.json#/$defs/itemSpeed"
678
+ },
679
+ "stealth": {
680
+ "type": "boolean"
681
+ },
682
+ "strength": {
683
+ "type": [
684
+ "string",
685
+ "null"
686
+ ]
687
+ },
688
+ "dexterityMax": {
689
+ "$ref": "items-shared.json#/$defs/itemDexterityMax"
690
+ },
691
+ "firearm": {
692
+ "type": "boolean"
693
+ },
694
+ "staff": {
695
+ "description": "Adds the italicized \"Staff\" text to the item info line (below the name).",
696
+ "type": "boolean"
697
+ },
698
+ "tier": {
699
+ "$ref": "items-shared.json#/$defs/itemTier"
700
+ },
701
+ "value": {
702
+ "description": "In copper pieces.",
703
+ "type": [
704
+ "number",
705
+ "null"
706
+ ]
707
+ },
708
+ "valueMult": {
709
+ "type": "number"
710
+ },
711
+ "weaponCategory": {
712
+ "$ref": "items-shared.json#/$defs/itemWeaponCategory"
713
+ },
714
+ "weight": {
715
+ "type": "number"
716
+ },
717
+ "weightMult": {
718
+ "type": "number"
719
+ },
720
+ "weightNote": {
721
+ "type": "string"
722
+ },
723
+ "wondrous": {
724
+ "type": "boolean"
725
+ },
726
+ "tattoo": {
727
+ "type": "boolean"
728
+ },
729
+ "sentient": {
730
+ "type": "boolean"
731
+ },
732
+ "poison": {
733
+ "type": "boolean"
734
+ },
735
+ "poisonTypes": {
736
+ "type": "array",
737
+ "items": {
738
+ "type": "string",
739
+ "examples": [
740
+ "contact",
741
+ "ingested",
742
+ "injury",
743
+ "inhaled"
744
+ ]
745
+ }
746
+ },
747
+ "crew": {
748
+ "type": "integer"
749
+ },
750
+ "crewMin": {
751
+ "description": "For crews specified as an X-Y min-max.",
752
+ "type": "integer"
753
+ },
754
+ "crewMax": {
755
+ "description": "For crews specified as an X-Y min-max.",
756
+ "type": "integer"
757
+ },
758
+ "capPassenger": {
759
+ "type": "integer"
760
+ },
761
+ "capCargo": {
762
+ "type": "number"
763
+ },
764
+ "vehSpeed": {
765
+ "type": "number"
766
+ },
767
+ "vehAc": {
768
+ "type": "integer"
769
+ },
770
+ "vehHp": {
771
+ "type": "integer"
772
+ },
773
+ "vehDmgThresh": {
774
+ "type": "integer"
775
+ },
776
+ "travelCost": {
777
+ "description": "In copper pieces per mile per passenger.",
778
+ "type": "integer"
779
+ },
780
+ "shippingCost": {
781
+ "description": "In copper pieces per 100 lbs per mile.",
782
+ "type": "integer"
783
+ },
784
+ "charges": {
785
+ "type": [
786
+ "string",
787
+ "integer"
788
+ ]
789
+ },
790
+ "recharge": {
791
+ "$ref": "items-shared.json#/$defs/itemRecharge"
792
+ },
793
+ "rechargeAmount": {
794
+ "$ref": "items-shared.json#/$defs/itemRechargeAmount"
795
+ },
796
+ "optionalfeatures": {
797
+ "type": "array",
798
+ "items": {
799
+ "type": "string"
800
+ }
801
+ },
802
+ "attachedSpells": {
803
+ "type": "array",
804
+ "minItems": 1,
805
+ "uniqueItems": true,
806
+ "items": {
807
+ "type": "string"
808
+ }
809
+ },
810
+ "ability": {
811
+ "description": "Item ability score adjustments.",
812
+ "type": "object",
813
+ "properties": {
814
+ "choose": {
815
+ "type": "array",
816
+ "items": {
817
+ "type": "object",
818
+ "properties": {
819
+ "from": {
820
+ "type": "array",
821
+ "items": {
822
+ "enum": [
823
+ "str",
824
+ "dex",
825
+ "con",
826
+ "int",
827
+ "wis",
828
+ "cha"
829
+ ]
830
+ },
831
+ "uniqueItems": true
832
+ },
833
+ "count": {
834
+ "type": "integer"
835
+ },
836
+ "amount": {
837
+ "type": "integer"
838
+ }
839
+ },
840
+ "required": [
841
+ "from"
842
+ ],
843
+ "additionalProperties": false
844
+ }
845
+ },
846
+ "static": {
847
+ "type": "object",
848
+ "properties": {
849
+ "str": {
850
+ "type": "integer"
851
+ },
852
+ "dex": {
853
+ "type": "integer"
854
+ },
855
+ "con": {
856
+ "type": "integer"
857
+ },
858
+ "int": {
859
+ "type": "integer"
860
+ },
861
+ "wis": {
862
+ "type": "integer"
863
+ },
864
+ "cha": {
865
+ "type": "integer"
866
+ }
867
+ },
868
+ "additionalProperties": false
869
+ },
870
+ "str": {
871
+ "type": "integer"
872
+ },
873
+ "dex": {
874
+ "type": "integer"
875
+ },
876
+ "con": {
877
+ "type": "integer"
878
+ },
879
+ "int": {
880
+ "type": "integer"
881
+ },
882
+ "wis": {
883
+ "type": "integer"
884
+ },
885
+ "cha": {
886
+ "type": "integer"
887
+ }
888
+ }
889
+ },
890
+ "focus": {
891
+ "description": "Item can be used as a spellcasting focus",
892
+ "oneOf": [
893
+ {
894
+ "type": "boolean"
895
+ },
896
+ {
897
+ "type": "array",
898
+ "items": {
899
+ "type": "string",
900
+ "examples": [
901
+ "Artificer",
902
+ "Bard",
903
+ "Cleric",
904
+ "Druid",
905
+ "Paladin",
906
+ "Ranger",
907
+ "Sorcerer",
908
+ "Warlock",
909
+ "Wizard"
910
+ ]
911
+ }
912
+ }
913
+ ]
914
+ },
915
+ "lootTables": {
916
+ "type": "array",
917
+ "items": {
918
+ "type": "string"
919
+ }
920
+ },
921
+ "critThreshold": {
922
+ "type": "integer"
923
+ },
924
+ "bonusAc": {
925
+ "type": "string"
926
+ },
927
+ "bonusWeapon": {
928
+ "type": "string"
929
+ },
930
+ "bonusWeaponAttack": {
931
+ "type": "string"
932
+ },
933
+ "bonusWeaponDamage": {
934
+ "type": "string"
935
+ },
936
+ "bonusWeaponCritDamage": {
937
+ "type": "string"
938
+ },
939
+ "bonusSpellAttack": {
940
+ "type": "string"
941
+ },
942
+ "bonusSpellDamage": {
943
+ "type": "string"
944
+ },
945
+ "bonusSpellSaveDc": {
946
+ "type": "string"
947
+ },
948
+ "bonusSavingThrow": {
949
+ "type": "string"
950
+ },
951
+ "bonusAbilityCheck": {
952
+ "type": "string"
953
+ },
954
+ "bonusProficiencyBonus": {
955
+ "type": "string"
956
+ },
957
+ "bonusSavingThrowConcentration": {
958
+ "type": "string"
959
+ },
960
+ "modifySpeed": {
961
+ "$ref": "items-shared.json#/$defs/itemModifySpeed"
962
+ },
963
+ "otherSources": {
964
+ "$ref": "util.json#/$defs/otherSources"
965
+ },
966
+ "srd": {
967
+ "$ref": "util.json#/$defs/srd"
968
+ },
969
+ "basicRules": {
970
+ "$ref": "util.json#/$defs/basicRules"
971
+ },
972
+ "legacy": {
973
+ "$ref": "util.json#/$defs/legacy"
974
+ },
975
+ "atomicPackContents": {
976
+ "description": "If the item's pack contents should be treated as one atomic unit, rather than handled as individual sub-items.",
977
+ "type": "boolean"
978
+ },
979
+ "containerCapacity": {
980
+ "type": "object",
981
+ "properties": {
982
+ "weight": {
983
+ "type": "array",
984
+ "items": {
985
+ "type": "integer"
986
+ }
987
+ },
988
+ "item": {
989
+ "type": "array",
990
+ "items": {
991
+ "type": "object",
992
+ "patternProperties": {
993
+ ".*": {
994
+ "type": "integer"
995
+ }
996
+ },
997
+ "additionalProperties": false
998
+ }
999
+ },
1000
+ "weightless": {
1001
+ "description": "If the container renders its contents weightless.",
1002
+ "type": "boolean"
1003
+ }
1004
+ },
1005
+ "additionalProperties": false
1006
+ },
1007
+ "ammoType": {
1008
+ "$ref": "items-shared.json#/$defs/itemAmmoType"
1009
+ },
1010
+ "packContents": {
1011
+ "$ref": "items-shared.json#/$defs/packContents"
1012
+ },
1013
+ "grantsProficiency": {
1014
+ "type": "boolean"
1015
+ },
1016
+ "grantsLanguage": {
1017
+ "type": "boolean"
1018
+ },
1019
+ "spellScrollLevel": {
1020
+ "type": "integer"
1021
+ },
1022
+ "seeAlsoDeck": {
1023
+ "type": "array",
1024
+ "items": {
1025
+ "type": "string",
1026
+ "description": "UIDs of \"deck\"s to be linked in a \"See Also\" footnote.\nEx.: \"deck of many things|dmg\"."
1027
+ }
1028
+ },
1029
+ "seeAlsoVehicle": {
1030
+ "type": "array",
1031
+ "items": {
1032
+ "type": "string",
1033
+ "description": "UIDs of \"vehicle\"s to be linked in a \"See Also\" footnote.\nEx.: \"rowboat|gos\"."
1034
+ }
1035
+ },
1036
+ "reqAttuneTags": {
1037
+ "$ref": "util.json#/$defs/reqAttuneTags"
1038
+ },
1039
+ "reqAttuneAltTags": {
1040
+ "$ref": "util.json#/$defs/reqAttuneTags"
1041
+ },
1042
+ "miscTags": {
1043
+ "type": "array",
1044
+ "items": {
1045
+ "description": "CF/W: Creates Food/Water\nTT: Trinket Table",
1046
+ "enum": [
1047
+ "CF/W",
1048
+ "TT"
1049
+ ]
1050
+ }
1051
+ },
1052
+ "mastery": {
1053
+ "$ref": "items-shared.json#/$defs/itemMastery"
1054
+ },
1055
+ "reach": {
1056
+ "$ref": "items-shared.json#/$defs/itemReach"
1057
+ },
1058
+ "hasFluff": {
1059
+ "type": "boolean"
1060
+ },
1061
+ "hasFluffImages": {
1062
+ "type": "boolean"
1063
+ },
1064
+ "hasRefs": {
1065
+ "type": "boolean",
1066
+ "description": "Whether this item has references within its data to dedicated \"itemEntry\"s."
1067
+ },
1068
+ "customProperties": {
1069
+ "$ref": "items-shared.json#/$defs/customProperties"
1070
+ },
1071
+ "acSpecial": {
1072
+ "$ref": "items-shared.json#/$defs/itemAcSpecial"
1073
+ },
1074
+ "currencyConversion": {
1075
+ "description": "ID of a value conversion table. Homebrew only.",
1076
+ "type": "string"
1077
+ },
1078
+ "alCertificateId": {
1079
+ "description": "Adventurers League item certificate ID; for use in homebrew.",
1080
+ "type": "string"
1081
+ },
1082
+ "foundryType": {
1083
+ "description": "Homebrew only: used to manually specify the exact Foundry item type an item should be imported as. \n\"CONFIG.Item.typeLabels\" correct as of Foundry v0.8.9",
1084
+ "type": "string",
1085
+ "enum": [
1086
+ "weapon",
1087
+ "equipment",
1088
+ "consumable",
1089
+ "tool",
1090
+ "loot",
1091
+ "class",
1092
+ "spell",
1093
+ "feat",
1094
+ "backpack"
1095
+ ]
1096
+ },
1097
+ "foundrySystem": {
1098
+ "$ref": "util-foundry.json#/$defs/foundrySystemObject"
1099
+ },
1100
+ "foundryFlags": {
1101
+ "$ref": "util-foundry.json#/$defs/foundryFlagsObject"
1102
+ },
1103
+ "foundryEffects": {
1104
+ "$ref": "util-foundry.json#/$defs/foundryEffectsArray"
1105
+ },
1106
+ "foundryImg": {
1107
+ "$ref": "util-foundry.json#/$defs/foundryImg"
1108
+ },
1109
+ "fluff": {
1110
+ "$ref": "items-shared.json#/$defs/fluff"
1111
+ }
1112
+ },
1113
+ "additionalProperties": false,
1114
+ "required": [
1115
+ "name",
1116
+ "rarity",
1117
+ "source"
1118
+ ]
1119
+ },
565
1120
  "item": {
566
1121
  "anyOf": [
1122
+ {
1123
+ "$ref": "#/$defs/_item"
1124
+ },
567
1125
  {
568
1126
  "type": "object",
569
1127
  "properties": {
@@ -1110,320 +1668,302 @@
1110
1668
  },
1111
1669
  "fluff": {
1112
1670
  "$ref": "items-shared.json#/$defs/fluff"
1671
+ },
1672
+ "_copy": {
1673
+ "$ref": "util-copy.json#/$defs/copyBlock_copy_generic"
1113
1674
  }
1114
1675
  },
1115
1676
  "additionalProperties": false,
1116
1677
  "required": [
1117
- "name",
1118
- "rarity",
1119
- "source"
1678
+ "_copy"
1679
+ ]
1680
+ }
1681
+ ]
1682
+ },
1683
+ "subEntityItem": {
1684
+ "type": "object",
1685
+ "properties": {
1686
+ "name": {
1687
+ "type": "string"
1688
+ },
1689
+ "alias": {
1690
+ "$ref": "util.json#/$defs/alias"
1691
+ },
1692
+ "type": {
1693
+ "$ref": "items-shared.json#/$defs/itemType"
1694
+ },
1695
+ "typeAlt": {
1696
+ "$ref": "items-shared.json#/$defs/itemType"
1697
+ },
1698
+ "rarity": {
1699
+ "$ref": "items-shared.json#/$defs/itemRarity"
1700
+ },
1701
+ "source": {
1702
+ "$ref": "util.json#/$defs/source"
1703
+ },
1704
+ "page": {
1705
+ "$ref": "util.json#/$defs/page"
1706
+ },
1707
+ "additionalSources": {
1708
+ "$ref": "util.json#/$defs/additionalSources"
1709
+ },
1710
+ "reprintedAs": {
1711
+ "$ref": "util.json#/$defs/reprintedAs"
1712
+ },
1713
+ "baseItem": {
1714
+ "type": "string"
1715
+ },
1716
+ "ac": {
1717
+ "type": "integer"
1718
+ },
1719
+ "age": {
1720
+ "$ref": "items-shared.json#/$defs/itemAge"
1721
+ },
1722
+ "carryingCapacity": {
1723
+ "$ref": "items-shared.json#/$defs/itemCarryingCapacity"
1724
+ },
1725
+ "dmg1": {
1726
+ "type": "string"
1727
+ },
1728
+ "dmg2": {
1729
+ "type": "string",
1730
+ "description": "The versatile or alternative damage dice of the weapon, e.g. \"1d10\""
1731
+ },
1732
+ "dmgType": {
1733
+ "$ref": "util.json#/$defs/dataDamageTags"
1734
+ },
1735
+ "entries": {
1736
+ "type": "array",
1737
+ "items": {
1738
+ "$ref": "entry.json"
1739
+ }
1740
+ },
1741
+ "additionalEntries": {
1742
+ "type": "array",
1743
+ "items": {
1744
+ "$ref": "entry.json"
1745
+ }
1746
+ },
1747
+ "property": {
1748
+ "$ref": "items-shared.json#/$defs/itemProperty"
1749
+ },
1750
+ "range": {
1751
+ "type": "string"
1752
+ },
1753
+ "reload": {
1754
+ "type": [
1755
+ "string",
1756
+ "integer"
1757
+ ]
1758
+ },
1759
+ "reqAttune": {
1760
+ "type": [
1761
+ "string",
1762
+ "boolean"
1763
+ ]
1764
+ },
1765
+ "reqAttuneAlt": {
1766
+ "description": "Used for filtering.",
1767
+ "type": [
1768
+ "string",
1769
+ "boolean"
1770
+ ]
1771
+ },
1772
+ "curse": {
1773
+ "type": "boolean"
1774
+ },
1775
+ "vulnerable": {
1776
+ "$ref": "util.json#/$defs/damageVulnerabilityArray"
1777
+ },
1778
+ "resist": {
1779
+ "$ref": "util.json#/$defs/damageResistArray"
1780
+ },
1781
+ "immune": {
1782
+ "$ref": "util.json#/$defs/damageImmunityArray"
1783
+ },
1784
+ "conditionImmune": {
1785
+ "$ref": "util.json#/$defs/conditionImmunityArray"
1786
+ },
1787
+ "detail1": {
1788
+ "description": "A descriptive field that can be used to complete entries in variants.",
1789
+ "type": "string"
1790
+ },
1791
+ "scfType": {
1792
+ "$ref": "items-shared.json#/$defs/itemScfType"
1793
+ },
1794
+ "speed": {
1795
+ "$ref": "items-shared.json#/$defs/itemSpeed"
1796
+ },
1797
+ "stealth": {
1798
+ "type": "boolean"
1799
+ },
1800
+ "strength": {
1801
+ "type": [
1802
+ "string",
1803
+ "null"
1804
+ ]
1805
+ },
1806
+ "dexterityMax": {
1807
+ "$ref": "items-shared.json#/$defs/itemDexterityMax"
1808
+ },
1809
+ "firearm": {
1810
+ "type": "boolean"
1811
+ },
1812
+ "staff": {
1813
+ "description": "Adds the italicized \"Staff\" text to the item info line (below the name).",
1814
+ "type": "boolean"
1815
+ },
1816
+ "tier": {
1817
+ "$ref": "items-shared.json#/$defs/itemTier"
1818
+ },
1819
+ "value": {
1820
+ "description": "In copper pieces.",
1821
+ "type": [
1822
+ "number",
1823
+ "null"
1824
+ ]
1825
+ },
1826
+ "valueMult": {
1827
+ "type": "number"
1828
+ },
1829
+ "weaponCategory": {
1830
+ "$ref": "items-shared.json#/$defs/itemWeaponCategory"
1831
+ },
1832
+ "weight": {
1833
+ "type": "number"
1834
+ },
1835
+ "weightMult": {
1836
+ "type": "number"
1837
+ },
1838
+ "weightNote": {
1839
+ "type": "string"
1840
+ },
1841
+ "wondrous": {
1842
+ "type": "boolean"
1843
+ },
1844
+ "tattoo": {
1845
+ "type": "boolean"
1846
+ },
1847
+ "sentient": {
1848
+ "type": "boolean"
1849
+ },
1850
+ "poison": {
1851
+ "type": "boolean"
1852
+ },
1853
+ "poisonTypes": {
1854
+ "type": "array",
1855
+ "items": {
1856
+ "type": "string",
1857
+ "examples": [
1858
+ "contact",
1859
+ "ingested",
1860
+ "injury",
1861
+ "inhaled"
1862
+ ]
1863
+ }
1864
+ },
1865
+ "crew": {
1866
+ "type": "integer"
1867
+ },
1868
+ "crewMin": {
1869
+ "description": "For crews specified as an X-Y min-max.",
1870
+ "type": "integer"
1871
+ },
1872
+ "crewMax": {
1873
+ "description": "For crews specified as an X-Y min-max.",
1874
+ "type": "integer"
1875
+ },
1876
+ "capPassenger": {
1877
+ "type": "integer"
1878
+ },
1879
+ "capCargo": {
1880
+ "type": "number"
1881
+ },
1882
+ "vehSpeed": {
1883
+ "type": "number"
1884
+ },
1885
+ "vehAc": {
1886
+ "type": "integer"
1887
+ },
1888
+ "vehHp": {
1889
+ "type": "integer"
1890
+ },
1891
+ "vehDmgThresh": {
1892
+ "type": "integer"
1893
+ },
1894
+ "travelCost": {
1895
+ "description": "In copper pieces per mile per passenger.",
1896
+ "type": "integer"
1897
+ },
1898
+ "shippingCost": {
1899
+ "description": "In copper pieces per 100 lbs per mile.",
1900
+ "type": "integer"
1901
+ },
1902
+ "charges": {
1903
+ "type": [
1904
+ "string",
1905
+ "integer"
1120
1906
  ]
1121
1907
  },
1122
- {
1908
+ "recharge": {
1909
+ "$ref": "items-shared.json#/$defs/itemRecharge"
1910
+ },
1911
+ "rechargeAmount": {
1912
+ "$ref": "items-shared.json#/$defs/itemRechargeAmount"
1913
+ },
1914
+ "optionalfeatures": {
1915
+ "type": "array",
1916
+ "items": {
1917
+ "type": "string"
1918
+ }
1919
+ },
1920
+ "attachedSpells": {
1921
+ "type": "array",
1922
+ "minItems": 1,
1923
+ "uniqueItems": true,
1924
+ "items": {
1925
+ "type": "string"
1926
+ }
1927
+ },
1928
+ "ability": {
1929
+ "description": "Item ability score adjustments.",
1123
1930
  "type": "object",
1124
1931
  "properties": {
1125
- "name": {
1126
- "type": "string"
1127
- },
1128
- "alias": {
1129
- "$ref": "util.json#/$defs/alias"
1130
- },
1131
- "type": {
1132
- "$ref": "items-shared.json#/$defs/itemType"
1133
- },
1134
- "typeAlt": {
1135
- "$ref": "items-shared.json#/$defs/itemType"
1136
- },
1137
- "rarity": {
1138
- "$ref": "items-shared.json#/$defs/itemRarity"
1139
- },
1140
- "source": {
1141
- "$ref": "util.json#/$defs/source"
1142
- },
1143
- "page": {
1144
- "$ref": "util.json#/$defs/page"
1145
- },
1146
- "additionalSources": {
1147
- "$ref": "util.json#/$defs/additionalSources"
1148
- },
1149
- "reprintedAs": {
1150
- "$ref": "util.json#/$defs/reprintedAs"
1151
- },
1152
- "baseItem": {
1153
- "type": "string"
1154
- },
1155
- "ac": {
1156
- "type": "integer"
1157
- },
1158
- "age": {
1159
- "$ref": "items-shared.json#/$defs/itemAge"
1160
- },
1161
- "carryingCapacity": {
1162
- "$ref": "items-shared.json#/$defs/itemCarryingCapacity"
1163
- },
1164
- "dmg1": {
1165
- "type": "string"
1166
- },
1167
- "dmg2": {
1168
- "type": "string",
1169
- "description": "The versatile or alternative damage dice of the weapon, e.g. \"1d10\""
1170
- },
1171
- "dmgType": {
1172
- "$ref": "util.json#/$defs/dataDamageTags"
1173
- },
1174
- "entries": {
1175
- "type": "array",
1176
- "items": {
1177
- "$ref": "entry.json"
1178
- }
1179
- },
1180
- "additionalEntries": {
1181
- "type": "array",
1182
- "items": {
1183
- "$ref": "entry.json"
1184
- }
1185
- },
1186
- "property": {
1187
- "$ref": "items-shared.json#/$defs/itemProperty"
1188
- },
1189
- "range": {
1190
- "type": "string"
1191
- },
1192
- "reload": {
1193
- "type": [
1194
- "string",
1195
- "integer"
1196
- ]
1197
- },
1198
- "reqAttune": {
1199
- "type": [
1200
- "string",
1201
- "boolean"
1202
- ]
1203
- },
1204
- "reqAttuneAlt": {
1205
- "description": "Used for filtering.",
1206
- "type": [
1207
- "string",
1208
- "boolean"
1209
- ]
1210
- },
1211
- "curse": {
1212
- "type": "boolean"
1213
- },
1214
- "vulnerable": {
1215
- "$ref": "util.json#/$defs/damageVulnerabilityArray"
1216
- },
1217
- "resist": {
1218
- "$ref": "util.json#/$defs/damageResistArray"
1219
- },
1220
- "immune": {
1221
- "$ref": "util.json#/$defs/damageImmunityArray"
1222
- },
1223
- "conditionImmune": {
1224
- "$ref": "util.json#/$defs/conditionImmunityArray"
1225
- },
1226
- "detail1": {
1227
- "description": "A descriptive field that can be used to complete entries in variants.",
1228
- "type": "string"
1229
- },
1230
- "scfType": {
1231
- "$ref": "items-shared.json#/$defs/itemScfType"
1232
- },
1233
- "speed": {
1234
- "$ref": "items-shared.json#/$defs/itemSpeed"
1235
- },
1236
- "stealth": {
1237
- "type": "boolean"
1238
- },
1239
- "strength": {
1240
- "type": [
1241
- "string",
1242
- "null"
1243
- ]
1244
- },
1245
- "dexterityMax": {
1246
- "$ref": "items-shared.json#/$defs/itemDexterityMax"
1247
- },
1248
- "firearm": {
1249
- "type": "boolean"
1250
- },
1251
- "staff": {
1252
- "description": "Adds the italicized \"Staff\" text to the item info line (below the name).",
1253
- "type": "boolean"
1254
- },
1255
- "tier": {
1256
- "$ref": "items-shared.json#/$defs/itemTier"
1257
- },
1258
- "value": {
1259
- "description": "In copper pieces.",
1260
- "type": [
1261
- "number",
1262
- "null"
1263
- ]
1264
- },
1265
- "valueMult": {
1266
- "type": "number"
1267
- },
1268
- "weaponCategory": {
1269
- "$ref": "items-shared.json#/$defs/itemWeaponCategory"
1270
- },
1271
- "weight": {
1272
- "type": "number"
1273
- },
1274
- "weightMult": {
1275
- "type": "number"
1276
- },
1277
- "weightNote": {
1278
- "type": "string"
1279
- },
1280
- "wondrous": {
1281
- "type": "boolean"
1282
- },
1283
- "tattoo": {
1284
- "type": "boolean"
1285
- },
1286
- "sentient": {
1287
- "type": "boolean"
1288
- },
1289
- "poison": {
1290
- "type": "boolean"
1291
- },
1292
- "poisonTypes": {
1293
- "type": "array",
1294
- "items": {
1295
- "type": "string",
1296
- "examples": [
1297
- "contact",
1298
- "ingested",
1299
- "injury",
1300
- "inhaled"
1301
- ]
1302
- }
1303
- },
1304
- "crew": {
1305
- "type": "integer"
1306
- },
1307
- "crewMin": {
1308
- "description": "For crews specified as an X-Y min-max.",
1309
- "type": "integer"
1310
- },
1311
- "crewMax": {
1312
- "description": "For crews specified as an X-Y min-max.",
1313
- "type": "integer"
1314
- },
1315
- "capPassenger": {
1316
- "type": "integer"
1317
- },
1318
- "capCargo": {
1319
- "type": "number"
1320
- },
1321
- "vehSpeed": {
1322
- "type": "number"
1323
- },
1324
- "vehAc": {
1325
- "type": "integer"
1326
- },
1327
- "vehHp": {
1328
- "type": "integer"
1329
- },
1330
- "vehDmgThresh": {
1331
- "type": "integer"
1332
- },
1333
- "travelCost": {
1334
- "description": "In copper pieces per mile per passenger.",
1335
- "type": "integer"
1336
- },
1337
- "shippingCost": {
1338
- "description": "In copper pieces per 100 lbs per mile.",
1339
- "type": "integer"
1340
- },
1341
- "charges": {
1342
- "type": [
1343
- "string",
1344
- "integer"
1345
- ]
1346
- },
1347
- "recharge": {
1348
- "$ref": "items-shared.json#/$defs/itemRecharge"
1349
- },
1350
- "rechargeAmount": {
1351
- "$ref": "items-shared.json#/$defs/itemRechargeAmount"
1352
- },
1353
- "optionalfeatures": {
1354
- "type": "array",
1355
- "items": {
1356
- "type": "string"
1357
- }
1358
- },
1359
- "attachedSpells": {
1932
+ "choose": {
1360
1933
  "type": "array",
1361
- "minItems": 1,
1362
- "uniqueItems": true,
1363
1934
  "items": {
1364
- "type": "string"
1935
+ "type": "object",
1936
+ "properties": {
1937
+ "from": {
1938
+ "type": "array",
1939
+ "items": {
1940
+ "enum": [
1941
+ "str",
1942
+ "dex",
1943
+ "con",
1944
+ "int",
1945
+ "wis",
1946
+ "cha"
1947
+ ]
1948
+ },
1949
+ "uniqueItems": true
1950
+ },
1951
+ "count": {
1952
+ "type": "integer"
1953
+ },
1954
+ "amount": {
1955
+ "type": "integer"
1956
+ }
1957
+ },
1958
+ "required": [
1959
+ "from"
1960
+ ],
1961
+ "additionalProperties": false
1365
1962
  }
1366
1963
  },
1367
- "ability": {
1368
- "description": "Item ability score adjustments.",
1964
+ "static": {
1369
1965
  "type": "object",
1370
1966
  "properties": {
1371
- "choose": {
1372
- "type": "array",
1373
- "items": {
1374
- "type": "object",
1375
- "properties": {
1376
- "from": {
1377
- "type": "array",
1378
- "items": {
1379
- "enum": [
1380
- "str",
1381
- "dex",
1382
- "con",
1383
- "int",
1384
- "wis",
1385
- "cha"
1386
- ]
1387
- },
1388
- "uniqueItems": true
1389
- },
1390
- "count": {
1391
- "type": "integer"
1392
- },
1393
- "amount": {
1394
- "type": "integer"
1395
- }
1396
- },
1397
- "required": [
1398
- "from"
1399
- ],
1400
- "additionalProperties": false
1401
- }
1402
- },
1403
- "static": {
1404
- "type": "object",
1405
- "properties": {
1406
- "str": {
1407
- "type": "integer"
1408
- },
1409
- "dex": {
1410
- "type": "integer"
1411
- },
1412
- "con": {
1413
- "type": "integer"
1414
- },
1415
- "int": {
1416
- "type": "integer"
1417
- },
1418
- "wis": {
1419
- "type": "integer"
1420
- },
1421
- "cha": {
1422
- "type": "integer"
1423
- }
1424
- },
1425
- "additionalProperties": false
1426
- },
1427
1967
  "str": {
1428
1968
  "type": "integer"
1429
1969
  },
@@ -1442,241 +1982,267 @@
1442
1982
  "cha": {
1443
1983
  "type": "integer"
1444
1984
  }
1445
- }
1446
- },
1447
- "focus": {
1448
- "description": "Item can be used as a spellcasting focus",
1449
- "oneOf": [
1450
- {
1451
- "type": "boolean"
1452
- },
1453
- {
1454
- "type": "array",
1455
- "items": {
1456
- "type": "string",
1457
- "examples": [
1458
- "Artificer",
1459
- "Bard",
1460
- "Cleric",
1461
- "Druid",
1462
- "Paladin",
1463
- "Ranger",
1464
- "Sorcerer",
1465
- "Warlock",
1466
- "Wizard"
1467
- ]
1468
- }
1469
- }
1470
- ]
1471
- },
1472
- "lootTables": {
1473
- "type": "array",
1474
- "items": {
1475
- "type": "string"
1476
- }
1477
- },
1478
- "critThreshold": {
1479
- "type": "integer"
1480
- },
1481
- "bonusAc": {
1482
- "type": "string"
1483
- },
1484
- "bonusWeapon": {
1485
- "type": "string"
1486
- },
1487
- "bonusWeaponAttack": {
1488
- "type": "string"
1489
- },
1490
- "bonusWeaponDamage": {
1491
- "type": "string"
1492
- },
1493
- "bonusWeaponCritDamage": {
1494
- "type": "string"
1495
- },
1496
- "bonusSpellAttack": {
1497
- "type": "string"
1498
- },
1499
- "bonusSpellDamage": {
1500
- "type": "string"
1501
- },
1502
- "bonusSpellSaveDc": {
1503
- "type": "string"
1504
- },
1505
- "bonusSavingThrow": {
1506
- "type": "string"
1507
- },
1508
- "bonusAbilityCheck": {
1509
- "type": "string"
1510
- },
1511
- "bonusProficiencyBonus": {
1512
- "type": "string"
1513
- },
1514
- "bonusSavingThrowConcentration": {
1515
- "type": "string"
1516
- },
1517
- "modifySpeed": {
1518
- "$ref": "items-shared.json#/$defs/itemModifySpeed"
1519
- },
1520
- "otherSources": {
1521
- "$ref": "util.json#/$defs/otherSources"
1522
- },
1523
- "srd": {
1524
- "$ref": "util.json#/$defs/srd"
1525
- },
1526
- "basicRules": {
1527
- "$ref": "util.json#/$defs/basicRules"
1528
- },
1529
- "legacy": {
1530
- "$ref": "util.json#/$defs/legacy"
1531
- },
1532
- "atomicPackContents": {
1533
- "description": "If the item's pack contents should be treated as one atomic unit, rather than handled as individual sub-items.",
1534
- "type": "boolean"
1535
- },
1536
- "containerCapacity": {
1537
- "type": "object",
1538
- "properties": {
1539
- "weight": {
1540
- "type": "array",
1541
- "items": {
1542
- "type": "integer"
1543
- }
1544
- },
1545
- "item": {
1546
- "type": "array",
1547
- "items": {
1548
- "type": "object",
1549
- "patternProperties": {
1550
- ".*": {
1551
- "type": "integer"
1552
- }
1553
- },
1554
- "additionalProperties": false
1555
- }
1556
- },
1557
- "weightless": {
1558
- "description": "If the container renders its contents weightless.",
1559
- "type": "boolean"
1560
- }
1561
1985
  },
1562
1986
  "additionalProperties": false
1563
1987
  },
1564
- "ammoType": {
1565
- "$ref": "items-shared.json#/$defs/itemAmmoType"
1988
+ "str": {
1989
+ "type": "integer"
1566
1990
  },
1567
- "packContents": {
1568
- "$ref": "items-shared.json#/$defs/packContents"
1991
+ "dex": {
1992
+ "type": "integer"
1569
1993
  },
1570
- "grantsProficiency": {
1571
- "type": "boolean"
1994
+ "con": {
1995
+ "type": "integer"
1572
1996
  },
1573
- "grantsLanguage": {
1574
- "type": "boolean"
1997
+ "int": {
1998
+ "type": "integer"
1575
1999
  },
1576
- "spellScrollLevel": {
2000
+ "wis": {
1577
2001
  "type": "integer"
1578
2002
  },
1579
- "seeAlsoDeck": {
2003
+ "cha": {
2004
+ "type": "integer"
2005
+ }
2006
+ }
2007
+ },
2008
+ "focus": {
2009
+ "description": "Item can be used as a spellcasting focus",
2010
+ "oneOf": [
2011
+ {
2012
+ "type": "boolean"
2013
+ },
2014
+ {
1580
2015
  "type": "array",
1581
2016
  "items": {
1582
2017
  "type": "string",
1583
- "description": "UIDs of \"deck\"s to be linked in a \"See Also\" footnote.\nEx.: \"deck of many things|dmg\"."
2018
+ "examples": [
2019
+ "Artificer",
2020
+ "Bard",
2021
+ "Cleric",
2022
+ "Druid",
2023
+ "Paladin",
2024
+ "Ranger",
2025
+ "Sorcerer",
2026
+ "Warlock",
2027
+ "Wizard"
2028
+ ]
1584
2029
  }
1585
- },
1586
- "seeAlsoVehicle": {
2030
+ }
2031
+ ]
2032
+ },
2033
+ "lootTables": {
2034
+ "type": "array",
2035
+ "items": {
2036
+ "type": "string"
2037
+ }
2038
+ },
2039
+ "critThreshold": {
2040
+ "type": "integer"
2041
+ },
2042
+ "bonusAc": {
2043
+ "type": "string"
2044
+ },
2045
+ "bonusWeapon": {
2046
+ "type": "string"
2047
+ },
2048
+ "bonusWeaponAttack": {
2049
+ "type": "string"
2050
+ },
2051
+ "bonusWeaponDamage": {
2052
+ "type": "string"
2053
+ },
2054
+ "bonusWeaponCritDamage": {
2055
+ "type": "string"
2056
+ },
2057
+ "bonusSpellAttack": {
2058
+ "type": "string"
2059
+ },
2060
+ "bonusSpellDamage": {
2061
+ "type": "string"
2062
+ },
2063
+ "bonusSpellSaveDc": {
2064
+ "type": "string"
2065
+ },
2066
+ "bonusSavingThrow": {
2067
+ "type": "string"
2068
+ },
2069
+ "bonusAbilityCheck": {
2070
+ "type": "string"
2071
+ },
2072
+ "bonusProficiencyBonus": {
2073
+ "type": "string"
2074
+ },
2075
+ "bonusSavingThrowConcentration": {
2076
+ "type": "string"
2077
+ },
2078
+ "modifySpeed": {
2079
+ "$ref": "items-shared.json#/$defs/itemModifySpeed"
2080
+ },
2081
+ "otherSources": {
2082
+ "$ref": "util.json#/$defs/otherSources"
2083
+ },
2084
+ "srd": {
2085
+ "$ref": "util.json#/$defs/srd"
2086
+ },
2087
+ "basicRules": {
2088
+ "$ref": "util.json#/$defs/basicRules"
2089
+ },
2090
+ "legacy": {
2091
+ "$ref": "util.json#/$defs/legacy"
2092
+ },
2093
+ "atomicPackContents": {
2094
+ "description": "If the item's pack contents should be treated as one atomic unit, rather than handled as individual sub-items.",
2095
+ "type": "boolean"
2096
+ },
2097
+ "containerCapacity": {
2098
+ "type": "object",
2099
+ "properties": {
2100
+ "weight": {
1587
2101
  "type": "array",
1588
2102
  "items": {
1589
- "type": "string",
1590
- "description": "UIDs of \"vehicle\"s to be linked in a \"See Also\" footnote.\nEx.: \"rowboat|gos\"."
2103
+ "type": "integer"
1591
2104
  }
1592
2105
  },
1593
- "reqAttuneTags": {
1594
- "$ref": "util.json#/$defs/reqAttuneTags"
1595
- },
1596
- "reqAttuneAltTags": {
1597
- "$ref": "util.json#/$defs/reqAttuneTags"
1598
- },
1599
- "miscTags": {
2106
+ "item": {
1600
2107
  "type": "array",
1601
2108
  "items": {
1602
- "description": "CF/W: Creates Food/Water\nTT: Trinket Table",
1603
- "enum": [
1604
- "CF/W",
1605
- "TT"
1606
- ]
2109
+ "type": "object",
2110
+ "patternProperties": {
2111
+ ".*": {
2112
+ "type": "integer"
2113
+ }
2114
+ },
2115
+ "additionalProperties": false
1607
2116
  }
1608
2117
  },
1609
- "mastery": {
1610
- "$ref": "items-shared.json#/$defs/itemMastery"
1611
- },
1612
- "reach": {
1613
- "$ref": "items-shared.json#/$defs/itemReach"
1614
- },
1615
- "hasFluff": {
1616
- "type": "boolean"
1617
- },
1618
- "hasFluffImages": {
2118
+ "weightless": {
2119
+ "description": "If the container renders its contents weightless.",
1619
2120
  "type": "boolean"
1620
- },
1621
- "hasRefs": {
1622
- "type": "boolean",
1623
- "description": "Whether this item has references within its data to dedicated \"itemEntry\"s."
1624
- },
1625
- "customProperties": {
1626
- "$ref": "items-shared.json#/$defs/customProperties"
1627
- },
1628
- "acSpecial": {
1629
- "$ref": "items-shared.json#/$defs/itemAcSpecial"
1630
- },
1631
- "currencyConversion": {
1632
- "description": "ID of a value conversion table. Homebrew only.",
1633
- "type": "string"
1634
- },
1635
- "alCertificateId": {
1636
- "description": "Adventurers League item certificate ID; for use in homebrew.",
1637
- "type": "string"
1638
- },
1639
- "foundryType": {
1640
- "description": "Homebrew only: used to manually specify the exact Foundry item type an item should be imported as. \n\"CONFIG.Item.typeLabels\" correct as of Foundry v0.8.9",
1641
- "type": "string",
1642
- "enum": [
1643
- "weapon",
1644
- "equipment",
1645
- "consumable",
1646
- "tool",
1647
- "loot",
1648
- "class",
1649
- "spell",
1650
- "feat",
1651
- "backpack"
1652
- ]
1653
- },
1654
- "foundrySystem": {
1655
- "$ref": "util-foundry.json#/$defs/foundrySystemObject"
1656
- },
1657
- "foundryFlags": {
1658
- "$ref": "util-foundry.json#/$defs/foundryFlagsObject"
1659
- },
1660
- "foundryEffects": {
1661
- "$ref": "util-foundry.json#/$defs/foundryEffectsArray"
1662
- },
1663
- "foundryImg": {
1664
- "$ref": "util-foundry.json#/$defs/foundryImg"
1665
- },
1666
- "fluff": {
1667
- "$ref": "items-shared.json#/$defs/fluff"
1668
- },
1669
- "_copy": {
1670
- "$ref": "util.json#/$defs/copyBlock_copy_generic"
1671
2121
  }
1672
2122
  },
1673
- "additionalProperties": false,
1674
- "required": [
1675
- "_copy"
2123
+ "additionalProperties": false
2124
+ },
2125
+ "ammoType": {
2126
+ "$ref": "items-shared.json#/$defs/itemAmmoType"
2127
+ },
2128
+ "packContents": {
2129
+ "$ref": "items-shared.json#/$defs/packContents"
2130
+ },
2131
+ "grantsProficiency": {
2132
+ "type": "boolean"
2133
+ },
2134
+ "grantsLanguage": {
2135
+ "type": "boolean"
2136
+ },
2137
+ "spellScrollLevel": {
2138
+ "type": "integer"
2139
+ },
2140
+ "seeAlsoDeck": {
2141
+ "type": "array",
2142
+ "items": {
2143
+ "type": "string",
2144
+ "description": "UIDs of \"deck\"s to be linked in a \"See Also\" footnote.\nEx.: \"deck of many things|dmg\"."
2145
+ }
2146
+ },
2147
+ "seeAlsoVehicle": {
2148
+ "type": "array",
2149
+ "items": {
2150
+ "type": "string",
2151
+ "description": "UIDs of \"vehicle\"s to be linked in a \"See Also\" footnote.\nEx.: \"rowboat|gos\"."
2152
+ }
2153
+ },
2154
+ "reqAttuneTags": {
2155
+ "$ref": "util.json#/$defs/reqAttuneTags"
2156
+ },
2157
+ "reqAttuneAltTags": {
2158
+ "$ref": "util.json#/$defs/reqAttuneTags"
2159
+ },
2160
+ "miscTags": {
2161
+ "type": "array",
2162
+ "items": {
2163
+ "description": "CF/W: Creates Food/Water\nTT: Trinket Table",
2164
+ "enum": [
2165
+ "CF/W",
2166
+ "TT"
2167
+ ]
2168
+ }
2169
+ },
2170
+ "mastery": {
2171
+ "$ref": "items-shared.json#/$defs/itemMastery"
2172
+ },
2173
+ "reach": {
2174
+ "$ref": "items-shared.json#/$defs/itemReach"
2175
+ },
2176
+ "hasFluff": {
2177
+ "type": "boolean"
2178
+ },
2179
+ "hasFluffImages": {
2180
+ "type": "boolean"
2181
+ },
2182
+ "hasRefs": {
2183
+ "type": "boolean",
2184
+ "description": "Whether this item has references within its data to dedicated \"itemEntry\"s."
2185
+ },
2186
+ "customProperties": {
2187
+ "$ref": "items-shared.json#/$defs/customProperties"
2188
+ },
2189
+ "acSpecial": {
2190
+ "$ref": "items-shared.json#/$defs/itemAcSpecial"
2191
+ },
2192
+ "currencyConversion": {
2193
+ "description": "ID of a value conversion table. Homebrew only.",
2194
+ "type": "string"
2195
+ },
2196
+ "alCertificateId": {
2197
+ "description": "Adventurers League item certificate ID; for use in homebrew.",
2198
+ "type": "string"
2199
+ },
2200
+ "foundryType": {
2201
+ "description": "Homebrew only: used to manually specify the exact Foundry item type an item should be imported as. \n\"CONFIG.Item.typeLabels\" correct as of Foundry v0.8.9",
2202
+ "type": "string",
2203
+ "enum": [
2204
+ "weapon",
2205
+ "equipment",
2206
+ "consumable",
2207
+ "tool",
2208
+ "loot",
2209
+ "class",
2210
+ "spell",
2211
+ "feat",
2212
+ "backpack"
1676
2213
  ]
2214
+ },
2215
+ "foundrySystem": {
2216
+ "$ref": "util-foundry.json#/$defs/foundrySystemObject"
2217
+ },
2218
+ "foundryFlags": {
2219
+ "$ref": "util-foundry.json#/$defs/foundryFlagsObject"
2220
+ },
2221
+ "foundryEffects": {
2222
+ "$ref": "util-foundry.json#/$defs/foundryEffectsArray"
2223
+ },
2224
+ "foundryImg": {
2225
+ "$ref": "util-foundry.json#/$defs/foundryImg"
2226
+ },
2227
+ "fluff": {
2228
+ "$ref": "items-shared.json#/$defs/fluff"
1677
2229
  }
2230
+ },
2231
+ "additionalProperties": false,
2232
+ "required": [
2233
+ "name",
2234
+ "rarity",
2235
+ "source"
1678
2236
  ]
1679
2237
  },
2238
+ "subEntityItemArray": {
2239
+ "type": "array",
2240
+ "items": {
2241
+ "$ref": "#/$defs/subEntityItem"
2242
+ },
2243
+ "uniqueItems": true,
2244
+ "minItems": 1
2245
+ },
1680
2246
  "itemGroup": {
1681
2247
  "anyOf": [
1682
2248
  {
@@ -2789,7 +3355,7 @@
2789
3355
  "$ref": "#/$defs/_itemGroupItems"
2790
3356
  },
2791
3357
  "_copy": {
2792
- "$ref": "util.json#/$defs/copyBlock_copy_generic"
3358
+ "$ref": "util-copy.json#/$defs/copyBlock_copy_generic"
2793
3359
  }
2794
3360
  },
2795
3361
  "additionalProperties": false,