-
Notifications
You must be signed in to change notification settings - Fork 1
/
JSON schema.json
61 lines (61 loc) · 4.58 KB
/
JSON schema.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
{
"name": "The name of the pack",
"id": "The ID of the pack",
"size": "The number of cards in the pack",
"sets": [
{
"setName": "the name of the set",
"setId": "The id of the set",
"setSize": "the size of the set",
}
],
"energy": "add basic energy of the specified art to the end of the sets, currently only SMs first art, Swsh's Second art and SV's art is included as they are the only ones on the API that are not already on the setlists for the appropriate sets",
"VStar": "Add the VStar marker card to the end of the set (after the energy)",
"dropSlots": [
{
"description": "The various slots and what cards can be in them are defined here, ordered based on the order they appear in the pack.",
"name": "name of the rarity, DOES NOT ALWAYS MATCH THE RARITY IN THE API",
"cards": "a list of cards that this slot can generate, based on position of the list",
"number": "the number of cards from this slot that are ALWAYS in the pack",
"fixed": "Optional: if true, the slot is a fixed order slot like legendary collection"
}
],
"pullRates": [
{
"description": "Where chance based slots are defined, every rate is run once with a single random number call and the selected slot's number is incremented by one this pack",
"rates": [
{
"slot": "the slot to increment if this rate is chosen",
"odds": "the odds of the slot being chosen, as a number between 0 and 1. I enter x/y into the lua but that's a trick, as this causes the math to be done real time (this is done for coder friendliess). Optional: if not there this is the default option to be picked if no other rate is chosen, equivelent to setting remaining to 1",
"remaining": "Optional: if true then instead of describing the chance to select this slot only, odds is the chance including all the previous slections, acting as a remainder of sorts. this is done to easilly and dynamically calculate the overall holo chance, as the chance of all holos and up combined is often a known constant (0.33~ or 0.4, depending on gen) but the actual chance of a holo is not due to inconsistent data collection.",
"flag": "Optional: if true, then slots later in the pack marked as flagExclude cannot be chosen. Is used for BREAKs as they can only appear alongside normal rares",
"flagExclude": "Optional: if true, skip this rarity if a slot with 'flag' has been previously selected"
}
],
"num": "the number of times to run this pull rate",
"noGod": "If true, do not roll this pull rate for God Packs"
}
],
"boxPulls":[
{
"description": "Where chance based slots are defined for box based pull rates. When this exists, if a box is generated run the following process INSTEAD OF pullRates. For each rate, every num is run with once with a single random number call and the number of the specific slot is added to the box in random positions. No more than 1 card should not be added to any individual pack this way for each set of rates",
"other": "if no slot is added to any specific pack, add a card from this slot(s)",
"otherRat": "if more than 1 slot is provided for other, this detemines the chance for each slot to be chosen as a number between 0 and 1. This is rolled seperatly for each card added to the box. The last slot is chosen if no other is. Optional: is only needed if other has multiple slots",
"rates": [
{
"slot": "The slot(s) that is added with this rate",
"ratio": "if more than 1 slot is provided, this detemines the chance for each slot to be chosen as a number between 0 and 1. This is rolled seperatly for each card added to the box. The last slot is chosen if no other is. Optional: is only needed for those with multiple slots",
"chances":[
{
"num": "the number of this slot to be added if this chance is chosen.",
"odds": "the odds of this number being chosen, as a number between 0 and 1. I enter x/y into the lua but that's a trick, as this causes the math to be done real time (this is done for coder friendliess). Optional: if not there this is the default option to be picked if no other odds is chosen, equivelent to setting remaining to 1",
}
]
},
],
}
],
"godChance": "The chance of a pack being a god pack.",
"godSlot": "The dropSlot in which god pack cards are inserted before. If not provided, the god pack is at the back of the pack.",
"godPacks": "A list of lists. each list is a possible combonation of cards included in a god pack, in the order provided."
}