@cobbled-creators/cobblemon-schemas 1.7.0

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 (85) hide show
  1. package/LICENSE.md +21 -0
  2. package/README.md +68 -0
  3. package/bin/cobblemon-schemas.mjs +51 -0
  4. package/dist/bundle.json +1 -0
  5. package/dist/validators.mjs +3 -0
  6. package/package.json +66 -0
  7. package/schemas/_shared/common.schema.json +89 -0
  8. package/schemas/_shared/defs/collections.schema.json +32 -0
  9. package/schemas/_shared/defs/drops.schema.json +89 -0
  10. package/schemas/_shared/defs/expressions.schema.json +82 -0
  11. package/schemas/_shared/defs/identifiers.schema.json +24 -0
  12. package/schemas/_shared/defs/npc.schema.json +76 -0
  13. package/schemas/_shared/defs/pokemon.schema.json +41 -0
  14. package/schemas/_shared/defs/ranges.schema.json +70 -0
  15. package/schemas/_shared/defs/ride.schema.json +77 -0
  16. package/schemas/_shared/defs/spawning.schema.json +183 -0
  17. package/schemas/_shared/defs/vectors.schema.json +44 -0
  18. package/schemas/action_effects/schema.json +123 -0
  19. package/schemas/bedrock_pokemon_resolvers/schema.json +184 -0
  20. package/schemas/bedrock_posers/schema.json +367 -0
  21. package/schemas/behaviours/schema.json +145 -0
  22. package/schemas/berries/schema.json +178 -0
  23. package/schemas/cosmetic_items/schema.json +55 -0
  24. package/schemas/dex_additions/schema.json +22 -0
  25. package/schemas/dex_entries/schema.json +83 -0
  26. package/schemas/dex_entry_additions/schema.json +63 -0
  27. package/schemas/dexes/schema.json +89 -0
  28. package/schemas/dialogues/schema.json +260 -0
  29. package/schemas/fossils/schema.json +22 -0
  30. package/schemas/global_species_features/schema.json +6 -0
  31. package/schemas/index.json +244 -0
  32. package/schemas/marks/schema.json +49 -0
  33. package/schemas/mechanics/aprijuices.schema.json +25 -0
  34. package/schemas/mechanics/berries.schema.json +35 -0
  35. package/schemas/mechanics/potions.schema.json +23 -0
  36. package/schemas/mechanics/remedies.schema.json +31 -0
  37. package/schemas/mechanics/slowpoke_tails.schema.json +17 -0
  38. package/schemas/natural_materials/schema.json +40 -0
  39. package/schemas/npc_presets/schema.json +6 -0
  40. package/schemas/npcs/schema.json +443 -0
  41. package/schemas/pokemon_interactions/schema.json +169 -0
  42. package/schemas/pokerods/schema.json +19 -0
  43. package/schemas/ride_settings/bird.schema.json +48 -0
  44. package/schemas/ride_settings/boat.schema.json +45 -0
  45. package/schemas/ride_settings/burst.schema.json +11 -0
  46. package/schemas/ride_settings/dolphin.schema.json +45 -0
  47. package/schemas/ride_settings/glider.schema.json +18 -0
  48. package/schemas/ride_settings/helicopter.schema.json +21 -0
  49. package/schemas/ride_settings/horse.schema.json +36 -0
  50. package/schemas/ride_settings/hover.schema.json +33 -0
  51. package/schemas/ride_settings/jet.schema.json +42 -0
  52. package/schemas/ride_settings/minekart.schema.json +33 -0
  53. package/schemas/ride_settings/rocket.schema.json +36 -0
  54. package/schemas/ride_settings/submarine.schema.json +33 -0
  55. package/schemas/ride_settings/vehicle.schema.json +45 -0
  56. package/schemas/seasonings/schema.json +124 -0
  57. package/schemas/spawn_bait_effects/schema.json +42 -0
  58. package/schemas/spawn_detail_presets/schema.json +79 -0
  59. package/schemas/spawn_pool_world/schema.json +455 -0
  60. package/schemas/spawn_rules/schema.json +217 -0
  61. package/schemas/species/schema.json +1043 -0
  62. package/schemas/species_additions/schema.json +22 -0
  63. package/schemas/species_feature_assignments/schema.json +25 -0
  64. package/schemas/species_features/schema.json +139 -0
  65. package/schemas/starters/schema.json +28 -0
  66. package/schemas/unlockable_pc_box_wallpapers/schema.json +29 -0
  67. package/src/errors/format.mjs +46 -0
  68. package/src/errors/pointer.mjs +30 -0
  69. package/src/errors/simplify.mjs +58 -0
  70. package/src/errors/type-branches.mjs +65 -0
  71. package/src/errors/values.mjs +7 -0
  72. package/src/index.d.ts +74 -0
  73. package/src/index.mjs +6 -0
  74. package/src/json/line-index.mjs +21 -0
  75. package/src/json/parse-json.mjs +28 -0
  76. package/src/json/syntax-errors.mjs +56 -0
  77. package/src/node/load-engine.mjs +30 -0
  78. package/src/node/load-schemas.mjs +35 -0
  79. package/src/node/package-info.mjs +10 -0
  80. package/src/node/read-pack.mjs +18 -0
  81. package/src/node.d.ts +13 -0
  82. package/src/node.mjs +5 -0
  83. package/src/schema-engine.mjs +43 -0
  84. package/src/schema-index.mjs +54 -0
  85. package/src/validate-pack.mjs +28 -0
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/boat.schema.json",
4
+ "title": "Cobblemon Ride Settings: Boat",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "terminalVelocity": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "rotatePokemonHead": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "stamReplenishTimeSeconds": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "staminaExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "rotationSpeedModifierExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "jumpStrengthExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "speedExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "accelerationExpr": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ },
34
+ "sprintSpeedModifier": {
35
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
36
+ },
37
+ "sprintFovModifier": {
38
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
39
+ },
40
+ "surfaceLevelOffset": {
41
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
42
+ }
43
+ },
44
+ "additionalProperties": false
45
+ }
@@ -0,0 +1,11 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/burst.schema.json",
4
+ "title": "Cobblemon Ride Settings: Burst",
5
+ "type": "object",
6
+ "properties": {
7
+ "dashSpeed": { "type": "integer" }
8
+ },
9
+ "required": ["dashSpeed"],
10
+ "additionalProperties": false
11
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/dolphin.schema.json",
4
+ "title": "Cobblemon Ride Settings: Dolphin",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "canJump": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "reverseDriveFactor": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "strafeFactor": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "timeToRollCorrect": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "jumpExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "handlingExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "horizontalPitchExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "mouseInputMult": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ },
34
+ "speedExpr": {
35
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
36
+ },
37
+ "accelerationExpr": {
38
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
39
+ },
40
+ "staminaExpr": {
41
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
42
+ }
43
+ },
44
+ "additionalProperties": false
45
+ }
@@ -0,0 +1,18 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/glider.schema.json",
4
+ "title": "Cobblemon Ride Settings: Glider",
5
+ "type": "object",
6
+ "properties": {
7
+ "glideSpeed": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "speed": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "canStrafe": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ }
16
+ },
17
+ "additionalProperties": false
18
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/helicopter.schema.json",
4
+ "title": "Cobblemon Ride Settings: Helicopter",
5
+ "type": "object",
6
+ "properties": {
7
+ "gravity": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "horizontalAcceleration": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "verticalVelocity": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "speed": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ }
19
+ },
20
+ "additionalProperties": false
21
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/horse.schema.json",
4
+ "title": "Cobblemon Ride Settings: Horse",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "canJump": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "canSprint": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "lookYawLimit": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "speedExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "accelerationExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "staminaExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "jumpExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "handlingExpr": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ }
34
+ },
35
+ "additionalProperties": false
36
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/hover.schema.json",
4
+ "title": "Cobblemon Ride Settings: Hover",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "canJump": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "stamReplenishTimeSeconds": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "speedExpr": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "accelerationExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "staminaExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "jumpExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "handlingExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ }
31
+ },
32
+ "additionalProperties": false
33
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/jet.schema.json",
4
+ "title": "Cobblemon Ride Settings: Jet",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "gravity": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "deccelRate": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "minSpeedFactor": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "handlingYawExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "handlingExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "speedExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "accelerationExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "jumpExpr": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ },
34
+ "staminaExpr": {
35
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
36
+ },
37
+ "maxDownwardForceSeconds": {
38
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
39
+ }
40
+ },
41
+ "additionalProperties": false
42
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/minekart.schema.json",
4
+ "title": "Cobblemon Ride Settings: Minekart",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "canJump": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "boostLimit": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "speedExpr": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "accelerationExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "staminaExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "jumpExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "handlingExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ }
31
+ },
32
+ "additionalProperties": false
33
+ }
@@ -0,0 +1,36 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/rocket.schema.json",
4
+ "title": "Cobblemon Ride Settings: Rocket",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "boostSpeedMod": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "boostHandlingMod": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "maxTurnRate": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "speedExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "accelerationExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "staminaExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "jumpExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "handlingExpr": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ }
34
+ },
35
+ "additionalProperties": false
36
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/submarine.schema.json",
4
+ "title": "Cobblemon Ride Settings: Submarine",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "staminaRegenTime": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "hitboxBreachPercentage": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "jumpExpr": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "handlingExpr": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "speedExpr": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "accelerationExpr": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "staminaExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ }
31
+ },
32
+ "additionalProperties": false
33
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/ride_settings/vehicle.schema.json",
4
+ "title": "Cobblemon Ride Settings: Vehicle",
5
+ "type": "object",
6
+ "properties": {
7
+ "infiniteStamina": {
8
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
9
+ },
10
+ "canJump": {
11
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
12
+ },
13
+ "speed": {
14
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
15
+ },
16
+ "driveFactor": {
17
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
18
+ },
19
+ "reverseDriveFactor": {
20
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
21
+ },
22
+ "rotationSpeed": {
23
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
24
+ },
25
+ "lookYawLimit": {
26
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
27
+ },
28
+ "speedExpr": {
29
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
30
+ },
31
+ "accelerationExpr": {
32
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
33
+ },
34
+ "staminaExpr": {
35
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
36
+ },
37
+ "jumpExpr": {
38
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
39
+ },
40
+ "handlingExpr": {
41
+ "$ref": "../_shared/defs/expressions.schema.json#/$defs/expressionLike"
42
+ }
43
+ },
44
+ "additionalProperties": false
45
+ }
@@ -0,0 +1,124 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/seasonings/schema.json",
4
+ "title": "Cobblemon Seasoning",
5
+ "type": "object",
6
+ "properties": {
7
+ "ingredient": {
8
+ "$ref": "../_shared/defs/identifiers.schema.json#/$defs/identifier"
9
+ },
10
+ "colour": {
11
+ "type": "string"
12
+ },
13
+ "color": {
14
+ "type": "string"
15
+ },
16
+ "flavours": {
17
+ "type": "object",
18
+ "additionalProperties": {
19
+ "type": "integer"
20
+ }
21
+ },
22
+ "flavors": {
23
+ "type": "object",
24
+ "additionalProperties": {
25
+ "type": "integer"
26
+ }
27
+ },
28
+ "baitEffects": {
29
+ "type": "array",
30
+ "items": {
31
+ "type": "object",
32
+ "properties": {
33
+ "type": {
34
+ "type": "string"
35
+ },
36
+ "subcategory": {
37
+ "type": "string"
38
+ },
39
+ "chance": {
40
+ "type": "number"
41
+ },
42
+ "value": {
43
+ "type": "number"
44
+ }
45
+ },
46
+ "required": [
47
+ "type",
48
+ "chance",
49
+ "value"
50
+ ],
51
+ "additionalProperties": false
52
+ }
53
+ },
54
+ "food": {
55
+ "type": "object",
56
+ "properties": {
57
+ "hunger": {
58
+ "type": "integer"
59
+ },
60
+ "saturation": {
61
+ "type": "number"
62
+ }
63
+ },
64
+ "required": [
65
+ "hunger",
66
+ "saturation"
67
+ ],
68
+ "additionalProperties": false
69
+ },
70
+ "mobEffects": {
71
+ "type": "array",
72
+ "items": {
73
+ "type": "object",
74
+ "properties": {
75
+ "effect": {
76
+ "$ref": "../_shared/defs/identifiers.schema.json#/$defs/identifier"
77
+ },
78
+ "duration": {
79
+ "type": "integer",
80
+ "minimum": 0
81
+ },
82
+ "amplifier": {
83
+ "type": "integer",
84
+ "minimum": 0
85
+ },
86
+ "ambient": {
87
+ "type": "boolean"
88
+ },
89
+ "visible": {
90
+ "type": "boolean"
91
+ },
92
+ "showIcon": {
93
+ "type": "boolean"
94
+ }
95
+ },
96
+ "required": [
97
+ "effect",
98
+ "duration",
99
+ "amplifier",
100
+ "ambient",
101
+ "visible",
102
+ "showIcon"
103
+ ],
104
+ "additionalProperties": false
105
+ }
106
+ }
107
+ },
108
+ "required": [
109
+ "ingredient"
110
+ ],
111
+ "additionalProperties": false,
112
+ "oneOf": [
113
+ {
114
+ "required": [
115
+ "colour"
116
+ ]
117
+ },
118
+ {
119
+ "required": [
120
+ "color"
121
+ ]
122
+ }
123
+ ]
124
+ }
@@ -0,0 +1,42 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/spawn_bait_effects/schema.json",
4
+ "title": "Cobblemon Spawn Bait",
5
+ "type": "object",
6
+ "properties": {
7
+ "item": {
8
+ "$ref": "../_shared/defs/identifiers.schema.json#/$defs/identifier"
9
+ },
10
+ "effects": {
11
+ "type": "array",
12
+ "items": {
13
+ "type": "object",
14
+ "properties": {
15
+ "type": {
16
+ "type": "string"
17
+ },
18
+ "subcategory": {
19
+ "type": "string"
20
+ },
21
+ "chance": {
22
+ "type": "number",
23
+ "minimum": 0
24
+ },
25
+ "value": {
26
+ "type": "number"
27
+ }
28
+ },
29
+ "required": [
30
+ "type",
31
+ "chance"
32
+ ],
33
+ "additionalProperties": false
34
+ }
35
+ }
36
+ },
37
+ "required": [
38
+ "item",
39
+ "effects"
40
+ ],
41
+ "additionalProperties": false
42
+ }
@@ -0,0 +1,79 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://cobblemon-schema.local/spawn_detail_presets/schema.json",
4
+ "title": "Cobblemon Spawn Detail Preset",
5
+ "type": "object",
6
+ "properties": {
7
+ "type": {
8
+ "type": "string",
9
+ "enum": [
10
+ "basic",
11
+ "pokemon"
12
+ ]
13
+ },
14
+ "bucket": {
15
+ "type": "string"
16
+ },
17
+ "spawnDetailType": {
18
+ "type": "string"
19
+ },
20
+ "spawnablePositionType": {
21
+ "type": "string",
22
+ "enum": [
23
+ "grounded",
24
+ "seafloor",
25
+ "lavafloor",
26
+ "submerged",
27
+ "surface",
28
+ "fishing"
29
+ ]
30
+ },
31
+ "context": {
32
+ "type": "string",
33
+ "enum": [
34
+ "grounded",
35
+ "seafloor",
36
+ "lavafloor",
37
+ "submerged",
38
+ "surface",
39
+ "fishing"
40
+ ]
41
+ },
42
+ "condition": {
43
+ "$ref": "../_shared/defs/spawning.schema.json#/$defs/spawningCondition"
44
+ },
45
+ "anticondition": {
46
+ "$ref": "../_shared/defs/spawning.schema.json#/$defs/spawningCondition"
47
+ },
48
+ "weightMultipliers": {
49
+ "type": "array",
50
+ "items": {
51
+ "$ref": "../_shared/defs/spawning.schema.json#/$defs/weightMultiplier"
52
+ }
53
+ },
54
+ "weight": {
55
+ "type": "number"
56
+ },
57
+ "percentage": {
58
+ "type": "number"
59
+ },
60
+ "mergeMode": {
61
+ "type": "string",
62
+ "enum": [
63
+ "REPLACE",
64
+ "INSERT",
65
+ "KEEP",
66
+ "replace",
67
+ "insert",
68
+ "keep"
69
+ ]
70
+ },
71
+ "pokemon": {
72
+ "$ref": "../_shared/defs/pokemon.schema.json#/$defs/pokemonProperties"
73
+ },
74
+ "levelRange": {
75
+ "$ref": "../_shared/defs/ranges.schema.json#/$defs/intRange"
76
+ }
77
+ },
78
+ "additionalProperties": false
79
+ }