@@ -204,6 +204,7 @@
|
||||
Format:
|
||||
<select name="format">
|
||||
<option value="test_draft">Test Draft</option>
|
||||
<option value="hobbit_draft">Hobbit Draft</option>
|
||||
</select><br/>
|
||||
Series duration in days: <input type="text" name="serieDuration"><br/>
|
||||
Maximum matches in series: <input type="text" name="maxMatches"><br/>
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
30S1
|
||||
30C1
|
||||
30S2
|
||||
30S3
|
||||
30S4
|
||||
30C3
|
||||
30C4
|
||||
30S5
|
||||
30S6
|
||||
30S7
|
||||
@@ -10,25 +10,25 @@
|
||||
30S10
|
||||
30S11
|
||||
30S12
|
||||
30S13
|
||||
30S14
|
||||
30C13
|
||||
30C14
|
||||
30S15
|
||||
30S16
|
||||
30S17
|
||||
30S18
|
||||
30S19
|
||||
30S20
|
||||
30C20
|
||||
30S21
|
||||
30S22
|
||||
30S23
|
||||
30S24
|
||||
30C23
|
||||
30C24
|
||||
30S25
|
||||
30S26
|
||||
30S27
|
||||
30S28
|
||||
30S29
|
||||
30S30
|
||||
30S31
|
||||
30C30
|
||||
30C31
|
||||
30S32
|
||||
30S33
|
||||
30S34
|
||||
|
||||
@@ -1,69 +1,69 @@
|
||||
31S1
|
||||
31S2
|
||||
31S3
|
||||
31S4
|
||||
31S5
|
||||
31S6
|
||||
31S7
|
||||
31S8
|
||||
31S9
|
||||
31S10
|
||||
31S11
|
||||
31S12
|
||||
31S13
|
||||
31S14
|
||||
31S15
|
||||
31S16
|
||||
31S17
|
||||
31S18
|
||||
31S19
|
||||
31S20
|
||||
31S21
|
||||
31S22
|
||||
31S23
|
||||
31S24
|
||||
31S25
|
||||
31S26
|
||||
31S27
|
||||
31S28
|
||||
31S29
|
||||
31S30
|
||||
31S31
|
||||
31S32
|
||||
31S33
|
||||
31S34
|
||||
31S35
|
||||
31S36
|
||||
31S37
|
||||
31S38
|
||||
31S39
|
||||
31S40
|
||||
31S41
|
||||
31S42
|
||||
31S43
|
||||
31S44
|
||||
31S45
|
||||
31S46
|
||||
31S47
|
||||
31S48
|
||||
31S49
|
||||
31S50
|
||||
31S51
|
||||
31S52
|
||||
31S53
|
||||
31S54
|
||||
31S55
|
||||
31S56
|
||||
31S57
|
||||
31S58
|
||||
31S59
|
||||
31S60
|
||||
31S61
|
||||
31S62
|
||||
31S63
|
||||
31S64
|
||||
31S65
|
||||
31S66
|
||||
31S67
|
||||
31S68
|
||||
31S69
|
||||
31X1
|
||||
31R2
|
||||
31R3
|
||||
31X4
|
||||
31R5
|
||||
31X6
|
||||
31R7
|
||||
31X8
|
||||
31X9
|
||||
31X10
|
||||
31R11
|
||||
31R12
|
||||
31R13
|
||||
31X14
|
||||
31X15
|
||||
31X16
|
||||
31R17
|
||||
31R18
|
||||
31C19
|
||||
31U20
|
||||
31U21
|
||||
31R22
|
||||
31U23
|
||||
31P24
|
||||
31R25
|
||||
31U26
|
||||
31C27
|
||||
31U28
|
||||
31X29
|
||||
31C30
|
||||
31C31
|
||||
31C32
|
||||
31R33
|
||||
31P34
|
||||
31C35
|
||||
31P36
|
||||
31R37
|
||||
31R38
|
||||
31X39
|
||||
31X40
|
||||
31R41
|
||||
31R42
|
||||
31X43
|
||||
31P44
|
||||
31P45
|
||||
31P46
|
||||
31X47
|
||||
31X48
|
||||
31P49
|
||||
31X50
|
||||
31P51
|
||||
31P52
|
||||
31P53
|
||||
31P54
|
||||
31X55
|
||||
31X56
|
||||
31U57
|
||||
31X58
|
||||
31C59
|
||||
31U60
|
||||
31C61
|
||||
31P62
|
||||
31C63
|
||||
31U64
|
||||
31X65
|
||||
31U66
|
||||
31U67
|
||||
31U68
|
||||
31U69
|
||||
|
||||
@@ -0,0 +1,143 @@
|
||||
package com.gempukku.lotro.draft2.builder;
|
||||
|
||||
import com.gempukku.lotro.game.CardCollection;
|
||||
import com.gempukku.lotro.game.DefaultCardCollection;
|
||||
import org.json.simple.JSONArray;
|
||||
import org.json.simple.JSONObject;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
public class StartingPoolBuilder {
|
||||
public CardCollectionProducer buildCardCollectionProducer(JSONObject startingPool) {
|
||||
String cardCollectionProducerType = (String) startingPool.get("type");
|
||||
if (cardCollectionProducerType.equals("randomCardPool")) {
|
||||
return buildRandomCardPool((JSONObject) startingPool.get("data"));
|
||||
} else if (cardCollectionProducerType.equals("boosterDraftRun")) {
|
||||
return buildBoosterDraftRun((JSONObject) startingPool.get("data"));
|
||||
}
|
||||
throw new RuntimeException("Unknown cardCollectionProducer type: "+cardCollectionProducerType);
|
||||
}
|
||||
|
||||
private CardCollectionProducer buildRandomCardPool(JSONObject randomCardPool) {
|
||||
JSONArray cardPools = (JSONArray) randomCardPool.get("randomResult");
|
||||
|
||||
final List<CardCollection> cardCollections = new ArrayList<CardCollection>();
|
||||
Iterator<JSONArray> iterator = cardPools.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
JSONArray cards = iterator.next();
|
||||
|
||||
DefaultCardCollection cardCollection = new DefaultCardCollection();
|
||||
Iterator<String> cardIterator = cards.iterator();
|
||||
while (cardIterator.hasNext()) {
|
||||
cardCollection.addItem(cardIterator.next(), 1);
|
||||
}
|
||||
cardCollections.add(cardCollection);
|
||||
}
|
||||
|
||||
return new CardCollectionProducer() {
|
||||
@Override
|
||||
public CardCollection getCardCollection(long seed) {
|
||||
Random rnd = new Random(seed);
|
||||
return cardCollections.get(rnd.nextInt(cardCollections.size()));
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
private CardCollectionProducer buildBoosterDraftRun(JSONObject boosterDraftRun) {
|
||||
final int runLengthInput = ((Number) boosterDraftRun.get("runLength")).intValue();
|
||||
final JSONArray coreCards = (JSONArray) boosterDraftRun.get("coreCards");
|
||||
JSONArray freePeoplesRuns = (JSONArray) boosterDraftRun.get("freePeoplesRuns");
|
||||
JSONArray shadowRuns = (JSONArray) boosterDraftRun.get("shadowRuns");
|
||||
|
||||
final List<List<String>> freePeoplesRunList = new ArrayList<List<String>>();
|
||||
Iterator<JSONArray> freePeoplesIterator = freePeoplesRuns.iterator();
|
||||
while (freePeoplesIterator.hasNext()) {
|
||||
JSONArray cards = freePeoplesIterator.next();
|
||||
|
||||
List<String> orderedCards = new ArrayList<String>();
|
||||
Iterator<String> cardIterator = cards.iterator();
|
||||
while (cardIterator.hasNext()) {
|
||||
orderedCards.add(cardIterator.next());
|
||||
}
|
||||
freePeoplesRunList.add(orderedCards);
|
||||
}
|
||||
|
||||
final List<List<String>> shadowRunList = new ArrayList<List<String>>();
|
||||
Iterator<JSONArray> shadowIterator = shadowRuns.iterator();
|
||||
while (shadowIterator.hasNext()) {
|
||||
JSONArray cards = shadowIterator.next();
|
||||
|
||||
List<String> orderedCards = new ArrayList<String>();
|
||||
Iterator<String> cardIterator = cards.iterator();
|
||||
while (cardIterator.hasNext()) {
|
||||
orderedCards.add(cardIterator.next());
|
||||
}
|
||||
shadowRunList.add(orderedCards);
|
||||
}
|
||||
|
||||
return new CardCollectionProducer() {
|
||||
@Override
|
||||
public CardCollection getCardCollection(long seed) {
|
||||
Random rnd = new Random(seed);
|
||||
List<String> freePeoplesRun = freePeoplesRunList.get(rnd.nextInt(freePeoplesRunList.size()));
|
||||
List<String> shadowRun = shadowRunList.get(rnd.nextInt(shadowRunList.size()));
|
||||
int runLength = 0;
|
||||
if (freePeoplesRun.size() > 0 && shadowRun.size() > 0) {
|
||||
runLength = Math.min(runLengthInput, Math.min(freePeoplesRun.size(), shadowRun.size()));
|
||||
} else if (freePeoplesRun.size() > 0) {
|
||||
runLength = Math.min(runLengthInput, freePeoplesRun.size());
|
||||
} else {
|
||||
runLength = Math.min(runLengthInput, shadowRun.size());
|
||||
}
|
||||
String[] draftRun = new String[runLength];
|
||||
if (freePeoplesRun.size() > 0) {
|
||||
int runSeed = rnd.nextInt() % freePeoplesRun.size();
|
||||
if (runSeed + runLength > freePeoplesRun.size()) {
|
||||
int runFromStart = runSeed + runLength - freePeoplesRun.size();
|
||||
int runAtEnd = runLength - runFromStart;
|
||||
for (int i = 0; i < runAtEnd; i++) {
|
||||
draftRun[i] = freePeoplesRun.get(runSeed+i);
|
||||
}
|
||||
for (int i = 0; i < runFromStart; i++) {
|
||||
draftRun[runAtEnd + i] = freePeoplesRun.get(i);
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < runLength; i++) {
|
||||
draftRun[i] = freePeoplesRun.get(runSeed+i);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (shadowRun.size() > 0) {
|
||||
int runSeed = rnd.nextInt() % shadowRun.size();
|
||||
if (runSeed + runLength > shadowRun.size()) {
|
||||
int runFromStart = runSeed + runLength - shadowRun.size();
|
||||
int runAtEnd = runLength - runFromStart;
|
||||
for (int i = 0; i < runAtEnd; i++) {
|
||||
draftRun[i] = shadowRun.get(runSeed+i);
|
||||
}
|
||||
for (int i = 0; i < runFromStart; i++) {
|
||||
draftRun[runAtEnd + i] = shadowRun.get(i);
|
||||
}
|
||||
} else {
|
||||
for (int i = 0; i < runLength; i++) {
|
||||
draftRun[i] = shadowRun.get(runSeed+i);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
final DefaultCardCollection draftCollection = new DefaultCardCollection();
|
||||
Iterator<String> iterator = coreCards.iterator();
|
||||
while (iterator.hasNext()) {
|
||||
draftCollection.addItem(iterator.next(), 1);
|
||||
}
|
||||
for (int i = 0; i < draftRun.length; i++) {
|
||||
draftCollection.addItem(draftRun[i], 1);
|
||||
}
|
||||
return draftCollection;
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,295 @@
|
||||
{
|
||||
"format": "limited_fotr",
|
||||
"startingPool": {
|
||||
"type": "boosterDraftRun",
|
||||
"data": {
|
||||
"runLength": 14,
|
||||
"coreCards": ["1_2","1_290"],
|
||||
"freePeoplesRuns": [
|
||||
["1_296", "2_110", "1_12", "1_365", "1_112", "1_365", "1_311", "1_317", "2_104", "3_122", "1_364", "3_35", "1_78", "1_364", "2_114", "1_299", "1_303", "3_121", "1_365", "1_112", "1_365", "2_110", "1_298", "2_104", "1_51", "1_364", "3_35", "1_76", "1_364", "2_114"],
|
||||
["1_26", "1_7", "1_9", "1_11", "1_5", "2_121", "1_97", "2_37", "1_97", "1_51", "1_37", "1_48", "1_32", "1_51", "1_97", "2_121", "1_5", "2_6", "1_9", "1_7", "1_6", "2_121", "1_97", "3_7", "1_37", "1_48", "2_18", "3_7", "1_97", "2_121"]
|
||||
],
|
||||
"shadowRuns": [
|
||||
["3_96", "1_270", "2_89", "1_262", "1_262", "2_89", "1_270", "3_96", "1_231", "2_61", "1_179", "2_63", "1_184", "2_62", "2_62", "1_184", "2_63", "1_179", "2_61", "1_234", "1_158", "1_152", "1_154", "1_151", "1_145", "1_151", "1_154", "1_152", "1_158", "1_231", "3_100", "1_267", "1_270", "1_271", "1_271", "1_270", "1_267", "3_100", "1_234", "1_177", "2_67", "1_178", "1_176", "2_60", "2_60", "1_176", "1_178", "2_67", "1_77", "1_231", "3_57", "3_58", "3_59", "3_62", "3_69", "3_62", "3_59", "3_58", "3_57", "1_234"]
|
||||
]
|
||||
}
|
||||
},
|
||||
"choices": [
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:1,2,3 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:1 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:1 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:1 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:2 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:2 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:2 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:3 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:3 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:3 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:1,2,3 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:1 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:1 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:1 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:2 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:2 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:2 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:3 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:3 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:3 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:3"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:5"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:6"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:1,2,3 siteNumber:9"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,133 @@
|
||||
{
|
||||
"format": "limited_hobbit",
|
||||
"startingPool": {
|
||||
"type": "randomCardPool",
|
||||
"data": {
|
||||
"randomResult": [
|
||||
["30_1", "30_2", "30_3", "30_4", "30_5", "30_6", "30_7", "30_8", "30_9", "30_10", "30_11", "30_12", "30_13", "30_14", "30_15", "30_16", "30_17", "30_18", "30_19", "30_20", "30_21", "30_22", "30_23", "30_24", "30_29", "30_30", "30_31", "30_47", "30_48", "30_32", "30_32", "30_32", "30_33", "30_33", "30_34", "30_34", "30_35", "30_35", "30_35", "30_35", "30_36", "30_36", "30_37", "30_37", "30_38", "30_38", "30_39", "30_39", "30_39", "30_40", "30_40", "30_40", "30_41", "30_41", "30_42", "30_42", "30_42", "30_42", "30_58", "30_49", "30_50", "30_51", "30_52", "30_53", "30_54", "30_55", "30_56", "30_57"]
|
||||
]
|
||||
}
|
||||
},
|
||||
"choices": [
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 1,
|
||||
"filter": "side:FREE_PEOPLE name:Bilbo set:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 1,
|
||||
"filter": "side:FREE_PEOPLE name:Gandalf set:30"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 22,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.05,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 2,
|
||||
"filter": "side:SHADOW set:30,31 rarity:X"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 2,
|
||||
"filter": "side:SHADOW set:30,31 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.13,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "side:SHADOW set:30,31 rarity:P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.36,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 4,
|
||||
"filter": "side:SHADOW set:30,31 rarity:U"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.36,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:30,31 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 18,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.15,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 4,
|
||||
"filter": "side:FREE_PEOPLE set:30,31 rarity:X"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.25,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 6,
|
||||
"filter": "side:FREE_PEOPLE set:30,31 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:30,31 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 5,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.2,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:30,31 rarity:X"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.8,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 4,
|
||||
"filter": "cardType:SITE set:30,31 rarity:P"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -0,0 +1,295 @@
|
||||
{
|
||||
"format": "limited_ttt",
|
||||
"startingPool": {
|
||||
"type": "boosterDraftRun",
|
||||
"data": {
|
||||
"runLength": 14,
|
||||
"coreCards": ["4_2","4_302"],
|
||||
"freePeoplesRuns": [
|
||||
["4_90", "4_105", "4_97", "4_98", "4_97", "4_105", "4_90", "4_109", "4_115", "4_112", "4_115", "4_109", "4_71", "4_83", "4_76", "4_78", "4_83", "4_71", "4_74", "4_87", "4_70", "4_87", "4_74", "4_117", "4_135", "4_112", "4_128", "4_130", "4_135", "4_117"],
|
||||
["4_266", "4_278", "4_277", "4_273", "4_273", "4_281", "4_283", "4_266", "4_270", "4_287", "4_265", "4_297", "4_265", "4_287", "4_270", "4_49", "4_44", "4_42", "4_58", "4_42", "4_44", "4_49", "4_310", "4_322", "4_308", "4_314", "4_310", "4_308", "4_322", "4_314"]
|
||||
],
|
||||
"shadowRuns": [
|
||||
["4_248", "4_221", "4_222", "4_227", "4_226", "4_224", "4_228", "4_258", "4_228", "4_224", "4_226", "4_227", "4_222", "4_221", "4_248", "4_165", "4_191", "4_184", "4_206", "4_204", "4_180", "4_198", "4_137", "4_198", "4_180", "4_204", "4_206", "4_184", "4_191", "4_165", "4_4", "4_17", "4_16", "4_25", "4_10", "4_14", "4_12", "4_21", "4_12", "4_14", "4_10", "4_25", "4_16", "4_17", "4_4", "4_207", "4_181", "4_193", "4_189", "4_187", "4_190", "4_178", "4_153", "4_178", "4_190", "4_187", "4_189", "4_193", "4_181", "4_207"]
|
||||
]
|
||||
}
|
||||
},
|
||||
"choices": [
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:4,5,6 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:4 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:4 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:4 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:5 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:5 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:5 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:FREE_PEOPLE set:6 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:FREE_PEOPLE set:6 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:FREE_PEOPLE set:6 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:4,5,6 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:4 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:4 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:4 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:5 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:5 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:5 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},{
|
||||
"type": "weightedSwitch",
|
||||
"repeat": 10,
|
||||
"data": {
|
||||
"switchResult": [
|
||||
{
|
||||
"weight": 0.1,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 5,
|
||||
"filter": "side:SHADOW set:6 rarity:R"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.3,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 8,
|
||||
"filter": "side:SHADOW set:6 rarity:U,P"
|
||||
}
|
||||
},
|
||||
{
|
||||
"weight": 0.6,
|
||||
"type": "filterPick",
|
||||
"data": {
|
||||
"optionCount": 10,
|
||||
"filter": "side:SHADOW set:6 rarity:C"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:1"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:2"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:3"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:4"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:5"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:6"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:7"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:8"
|
||||
}
|
||||
},
|
||||
{
|
||||
"type": "filterPick",
|
||||
"repeat": 1,
|
||||
"data": {
|
||||
"optionCount": 3,
|
||||
"filter": "cardType:SITE set:4,5,6 siteNumber:9"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
@@ -2,5 +2,17 @@
|
||||
{
|
||||
"type": "test_draft",
|
||||
"location": "/draft/testDraft.json"
|
||||
},
|
||||
{
|
||||
"type": "fotr_draft",
|
||||
"location": "/draft/fellowshipDraft.json"
|
||||
},
|
||||
{
|
||||
"type": "ttt_draft",
|
||||
"location": "/draft/twoTowersDraft.json"
|
||||
},
|
||||
{
|
||||
"type": "hobbit_draft",
|
||||
"location": "/draft/hobbitDraft.json"
|
||||
}
|
||||
]
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user