-
Notifications
You must be signed in to change notification settings - Fork 783
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement [BLB] Collation #13193
base: master
Are you sure you want to change the base?
Implement [BLB] Collation #13193
Conversation
Found the problem - I put the file in the wrong place. Now to remember how to delete it. |
private final CardRun uncommonB = new CardRun(true, "213", "31", "256", "228", "22", "236", "33", "238", "11", "259", "233", "21", "240", "13", "228", "256", "14", "213", "22", "258", "33", "236", "255", "16", "234", "27", "257", "24", "259", "11", "206", "15", "222", "31", "238", "21", "233", "16", "234", "4", "258", "19", "236", "27", "222", "31", "256", "11", "231", "13", "233", "24", "255", "4", "206", "16", "228", "21", "240", "22", "213", "257", "14", "238", "33", "231", "259", "15", "255", "31", "234", "24", "206", "16", "222", "4", "259", "228", "22", "238", "27", "213", "21", "258", "13", "233", "33", "231", "19", "236", "15", "257", "11", "256", "14", "258", "13", "240", "19", "231", "27", "222", "4", "234", "14", "206", "15", "255", "24", "257", "240", "19"); | ||
private final CardRun uncommonC = new CardRun(true, "113", "55", "141", "87", "74", "165", "104", "135", "247", "177", "149", "97", "127", "164", "162", "63", "145", "116", "60", "138", "174", "118", "52", "146", "114", "73", "128", "94", "199", "137", "57", "147", "173", "58", "116", "162", "65", "145", "70", "114", "137", "247", "165", "52", "87", "58", "146", "76", "97", "43", "104", "179", "141", "63", "168", "70", "128", "73", "135", "113", "55", "199", "138", "72", "121", "127", "177", "98", "44", "126", "101", "169", "131", "185", "92", "74", "85", "174", "95", "125", "173", "57", "118", "157", "164", "60", "147", "166", "94", "149", "179", "98", "43", "126", "95", "185", "48", "125", "44", "168", "85", "72", "101", "166", "65", "157", "92", "48", "169", "121", "76", "131"); | ||
// private final CardRun rare = new CardRun(false, "204", "204", "124", "124", "41", "41", "205", "205", "129", "129", "207", "207", "6", "6", "209", "209", "86", "86", "88", "88", "90", "90", "9", "9", "47", "47", "211", "211", "133", "133", "12", "12", "252", "252", "171", "171", "134", "134", "212", "212", "172", "172", "253", "253", "214", "214", "139", "139", "140", "140", "180", "180", "99", "99", "18", "18", "221", "221", "181", "181", "53", "53", "223", "223", "224", "224", "143", "143", "184", "184", "61", "61", "227", "227", "103", "103", "187", "187", "66", "66", "28", "28", "111", "111", "191", "191", "34", "34", "75", "75", "155", "155", "196", "196", "197", "197", "260", "260", "78", "78", "158", "158", "79", "79", "202", "202", "36", "36", "119", "119", "239", "239", "40", "40", "120", "120", "81", "81", "242", "242", "2", "132", "49", "215", "217", "218", "54", "183", "100", "230", "107", "192", "112", "152", "29", "68", "154", "219", "38", "241"); | ||
// removed unimplemented rares and mythics: Clement, the Worrywort , Dragonhawk, Fates Tempest , Festival of Embers , Jackdaw Savior , Portent of Calamity , Season of the Bold , Season of Weaving , The Infamous Cruelclaw |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not support adding this level of complex collation with all these unimplemented cards. It's great for complete sets, or if the unimplemented card/cards are actually out of scope (e.g. text changing), but not good if this code needs to be manually adjusted when another card is implemented. Easy problem is if cards get implemented without being added to booster generation, and hard problem is if there's a mistake in adding the card and it throws off booster generation.
What I would recommend if there are unimplemented cards:
- If you think you may need further adjustments to the collation implementation (e.g. some guesses that will be resolved with more data/research), then hold off on PR for the time being.
- If you think the collation is completed in a final state, it could be added but not activated, so that there's only one task to enable it when the set is completed.
In either case - we need a general play booster implementation (not using collators) to deal with mostly-implemented sets like this one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Enough data has been collected that the implementation is complete. (The small amount of uncertainty in the uncommonA run is irrelevant because there is never more than one card being drawn from uncommonA at a time.)
However, the fact that an uncommon card (Heirloom Epic) is unimplemented means that mathimatical adjustments were needed. I can understand your hesitation with this set.
For the rares and mythics, they simply need to be added to the approriate runs when implemented and no other changes. Also the reason I left the commented out complete run, so that when the other cards are implemented, it can simply be uncommented and the other version removed.
Generic booster generation is a little complicated for Play Booster sets because you have both the foil wildcard and non-foil wildcard to worry about. If anyone wants to go ahead and code it, for Bloomburrow, the data suggests:
- nonfoil wildcard - 1/6 common, 2/3 uncommon, 1/6 rare.
- foil wildcard - 2/3 common, 1/4 uncommon, 1/12 rare.
#13160