New Draft Functionality Finally Done
by mtgrares
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
66 posts
• Page 4 of 5 • 1, 2, 3, 4, 5
Re: New Draft Functionality Finally Done
by Agetian » 28 May 2011, 19:41
The new AI deck filtering functionality works absolutely wonderful, it really does make the games played by the AI cleaner and more bug-free. Great job!
There's one thing I noticed about the Ice Age drafts: in e.g. the ICE/ICE/ICE draft, is there any way to get snow-covered lands? If I recall correctly, the snow-covered lands used to appear from time to time in ICE boosters (perhaps instead of a common card? not sure... you'll probably have to look it up how it worked). I noticed that in the generated boosters for ICE in Forge, there can be land such as Veldt or Adakar Wastes but never a Snow-Covered Land, which is sometimes handy for the effects of cards in Ice Age... Do you think that it could somehow be supported in the future?
There's one thing I noticed about the Ice Age drafts: in e.g. the ICE/ICE/ICE draft, is there any way to get snow-covered lands? If I recall correctly, the snow-covered lands used to appear from time to time in ICE boosters (perhaps instead of a common card? not sure... you'll probably have to look it up how it worked). I noticed that in the generated boosters for ICE in Forge, there can be land such as Veldt or Adakar Wastes but never a Snow-Covered Land, which is sometimes handy for the effects of cards in Ice Age... Do you think that it could somehow be supported in the future?
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by friarsol » 28 May 2011, 20:21
I was thinking about this the other day. Probably the way it should work since Snow-Covered Land is Basic, is if either Ice Age, Alliances, or Coldsnap is there add Snow-Covered Basics to the pile along with the regular Basics. That way you don't need to "draft" snow covered land, but still have access to it.Agetian wrote:There's one thing I noticed about the Ice Age drafts: in e.g. the ICE/ICE/ICE draft, is there any way to get snow-covered lands?
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 06:10
Agreed, I'll try to work on the initial implementation once I get back home - I think I'll start by making this functionality similar to the Quest mode, which gives the ability to choose both standard and snow-covered lands in the initial deck build.friarsol wrote:I was thinking about this the other day. Probably the way it should work since Snow-Covered Land is Basic, is if either Ice Age, Alliances, or Coldsnap is there add Snow-Covered Basics to the pile along with the regular Basics. That way you don't need to "draft" snow covered land, but still have access to it.Agetian wrote:There's one thing I noticed about the Ice Age drafts: in e.g. the ICE/ICE/ICE draft, is there any way to get snow-covered lands?
EDIT: By the way, today I noticed that for the first time the Snow-Covered lands were generated in an Ice Age block CSP/ALL/ICE draft, it seems like they're actually generated, but only for CSP/ALL/ICE and not for ICE/ICE/ICE or ALL/ICE/ICE, at least I haven't seen them in like 20 or so ICE/ICE/ICE drafts and many ALL/ICE/ICE drafts that I did but I saw a bunch generated in CSP/ALL/ICE - so, should we still add the basic snow-covered lands to the list of freely available lands after drafting?.. Does anyone know how the real Ice Age drafts are done, e.g. ICE/ICE/ICE or CSP/ALL/ICE? Do they only let you use the snow-covered lands you got during the draft or are you allowed to add as many as you want?.. And also, does anyone know why the snow-covered lands are not generated in ICE/ICE/ICE drafts? Is that intentional?...
P.S. I located the necessary code parts, it's easy to add extra snow-covered lands to the code in Gui_BoosterDraft and I can do it very quickly myself if necessary but I'd like to postpone it until we discuss how it actually should be done.

- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by friarsol » 29 May 2011, 13:21
I played back in the day (from Homelands to around Planeshift) and drafting was limited to the Pro Tour when Ice Age and Alliances were in print, at least noone I knew of heard about it. I didn't start drafting until maybe Rath Cycle or Urza's Block (for sure). By the time Coldsnap came out (years later) both were wayyyy out of print, so the three weren't really drafted together. I would have to think that Snow-Covered Lands would be treated the same way as Regular Basics, where there was a limitless supply of them was allowed.Agetian wrote:EDIT: By the way, today I noticed that for the first time the Snow-Covered lands were generated in an Ice Age block CSP/ALL/ICE draft, it seems like they're actually generated, but only for CSP/ALL/ICE and not for ICE/ICE/ICE or ALL/ICE/ICE, at least I haven't seen them in like 20 or so ICE/ICE/ICE drafts and many ALL/ICE/ICE drafts that I did but I saw a bunch generated in CSP/ALL/ICE - so, should we still add the basic snow-covered lands to the list of freely available lands after drafting?.. Does anyone know how the real Ice Age drafts are done, e.g. ICE/ICE/ICE or CSP/ALL/ICE? Do they only let you use the snow-covered lands you got during the draft or are you allowed to add as many as you want?.. And also, does anyone know why the snow-covered lands are not generated in ICE/ICE/ICE drafts? Is that intentional?...
Coldsnap may have been designed to be drafted by itself (I didn't play when it was out) so we may need to have a CSP/CSP/CSP as well.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 14:24
Alrighty, then if no one minds I'll go ahead and add the Snow Basic lands to the default pool then once I get some spare time later today.friarsol wrote:I played back in the day (from Homelands to around Planeshift) and drafting was limited to the Pro Tour when Ice Age and Alliances were in print, at least noone I knew of heard about it. I didn't start drafting until maybe Rath Cycle or Urza's Block (for sure). By the time Coldsnap came out (years later) both were wayyyy out of print, so the three weren't really drafted together. I would have to think that Snow-Covered Lands would be treated the same way as Regular Basics, where there was a limitless supply of them was allowed.
Coldsnap may have been designed to be drafted by itself (I didn't play when it was out) so we may need to have a CSP/CSP/CSP as well.

- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by Rob Cashwalker » 29 May 2011, 14:29
The draft used to auto-add 20 of each basic and 20 of each snow land... I dropped it to just 18 of each basic.... I also don't have any ideas on how the AI would add snow land to its deck.
The block definitions are going to become file-based at some point. When tha happens, many of these options will become easier to implement.
The block definitions are going to become file-based at some point. When tha happens, many of these options will become easier to implement.
The Force will be with you, Always.
-
Rob Cashwalker - Programmer
- Posts: 2167
- Joined: 09 Sep 2008, 15:09
- Location: New York
- Has thanked: 5 times
- Been thanked: 40 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 15:15
Hmm, maybe it's worth it to only add Snow-Covered basic lands to the post-draft deck pool if the draft is based on the Ice Age block? (otherwise only add the basic lands). I have no idea about the AI here either though, does anyone have any ideas about it (or any other input related to the snow-covered lands in Draft mode)?Rob Cashwalker wrote:The draft used to auto-add 20 of each basic and 20 of each snow land... I dropped it to just 18 of each basic.... I also don't have any ideas on how the AI would add snow land to its deck.
The block definitions are going to become file-based at some point. When tha happens, many of these options will become easier to implement.
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by friarsol » 29 May 2011, 15:27
This is the way to go. Snow Covered Land shouldn't be available otherwise.Agetian wrote:Hmm, maybe it's worth it to only add Snow-Covered basic lands to the post-draft deck pool if the draft is based on the Ice Age block? (otherwise only add the basic lands). I have no idea about the AI here either though, does anyone have any ideas about it (or any other input related to the snow-covered lands in Draft mode)?
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 15:59
Umm, I read some information about drafting Coldsnap online and it turns out that you have to draft the snow-covered lands from the boosters if you're to use them in your deck, so just letting the player draft lots of those for free is not authentic. OK, I'm going to try and find out why the snow-covered lands from ICE appear in Coldsnap boosters and no snow lands whatsoever appear in Ice Age boosters as such. 
EDIT: It looks like the reason for the above is that in the Forge set info, ICE Snow-Covered lands are listed with the "Land" rarity, while the Coldsnap ones with the "Common" rarity. While magic-cards.info says the same thing, there are several sources online stating that Ice Age used to print Snow-Covered lands on Common sheets (while the others claim, however, that they haven't and the snow-covered lands were only printed in Ice Age starters). At any rate, do you think it would be OK to switch over the Ice Age snow-covered lands from L to C then to make them to appear on Common lists in Ice Age boosters as well as in Coldsnap ones? (appears to be more true to life even if the actual classification of the lands as C rather than L may be a bit off per magic-cards.info - the number of snow-covered lands will be limited (and it's supposed to be) when drafting yet the snow lands will be accessible in ICEx3 drafts...)

EDIT: It looks like the reason for the above is that in the Forge set info, ICE Snow-Covered lands are listed with the "Land" rarity, while the Coldsnap ones with the "Common" rarity. While magic-cards.info says the same thing, there are several sources online stating that Ice Age used to print Snow-Covered lands on Common sheets (while the others claim, however, that they haven't and the snow-covered lands were only printed in Ice Age starters). At any rate, do you think it would be OK to switch over the Ice Age snow-covered lands from L to C then to make them to appear on Common lists in Ice Age boosters as well as in Coldsnap ones? (appears to be more true to life even if the actual classification of the lands as C rather than L may be a bit off per magic-cards.info - the number of snow-covered lands will be limited (and it's supposed to be) when drafting yet the snow lands will be accessible in ICEx3 drafts...)
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 16:37
Ok, I made a commit relevant to the discussion above. I added the standalone Coldsnap block draft (CSP/CSP/CSP) to the list of options (I confirmed that it was indeed a possible and popular draft format back in 2006+), and I also made an experimental change modifying the Snow-Covered lands in the ICE set to be Common instead of Land. While not an accurate classification, it allows Snow-Covered lands to be drafted in the CSP/ALL/ICE, CSP/ICE/ICE, or ICE/ICE/ICE draft formats without having to give an excess amount of free Snow-Covered lands to the player (which would not have been authentic either since I proved via online research that extra Snow-Covered lands could not be requested after the draft is over like the standard five basic lands, so one could only use the ones he drafted from the boosters). I also found some reports online that some Ice Age boosters had snow-covered lands printed on the Common sheet, so it might actually be not a very bad idea to include these lands among the ICE Commons for the purpose of drafting and such.
If you have any further input on this point, feel free to comment.
If you have any further input on this point, feel free to comment.

- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by friarsol » 29 May 2011, 16:42
Be careful with this as it's a slippery slope. As it means Quest Mode might get a Snow-covered Land instead of Common, and lots of the early sets printed Land in the different rarity sheets (including Rare in the very early sets).Agetian wrote: I also found some reports online that some Ice Age boosters had snow-covered lands printed on the Common sheet, so it might actually be not a very bad idea to include these lands among the ICE Commons for the purpose of drafting and such.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: New Draft Functionality Finally Done
by Sloth » 29 May 2011, 16:49
The Snow-covered Land were Commons already in Coldsnap, so I don't think it makes any difference.friarsol wrote:Be careful with this as it's a slippery slope. As it means Quest Mode might get a Snow-covered Land instead of Common, and lots of the early sets printed Land in the different rarity sheets (including Rare in the very early sets).Agetian wrote: I also found some reports online that some Ice Age boosters had snow-covered lands printed on the Common sheet, so it might actually be not a very bad idea to include these lands among the ICE Commons for the purpose of drafting and such.
EDIT: I checked the Mountain text file and we list it as uncommon in Arabian Nights.
Last edited by Sloth on 29 May 2011, 16:51, edited 1 time in total.
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: New Draft Functionality Finally Done
by friarsol » 29 May 2011, 16:51
I just don't want to receive an Arabian Nights Mountain as my Random Rare.Sloth wrote:The Snow-covered Land were Commons already in Coldsnap, so I don't think it makes any differences.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: New Draft Functionality Finally Done
by Agetian » 29 May 2011, 17:01
Yeah, I know that there might be other repercussions, but unfortunately I'm out of ideas for an absolutely authentic and working solution...friarsol wrote:Be careful with this as it's a slippery slope. As it means Quest Mode might get a Snow-covered Land instead of Common, and lots of the early sets printed Land in the different rarity sheets (including Rare in the very early sets).Agetian wrote: I also found some reports online that some Ice Age boosters had snow-covered lands printed on the Common sheet, so it might actually be not a very bad idea to include these lands among the ICE Commons for the purpose of drafting and such.

- During the Ice Age days, lands were mostly included in Starters (something that doesn't exist anymore), and I can't even personally confirm whether Ice Age boosters actually had Snow-Covered lands cause I never bought any ICE boosters myself, I can only judge by the scarce information I can find online, which is rather controversial (some say that Snow-Covered lands were printed on the Common sheet of an ICE booster, while the others claim they did not appear in ICE boosters at all); unless some die-hard MTG fan who played a lot during those old days knows for sure and can confirm what happened in the ICE boosters regarding Snow-Covered land, we may never know the true answer (especially regarding the sheet on which those lands were printed, if they were printed);
- Defining Snow-Covered Lands as Common looks definitely not 100% statistics-authentic because they were classified as Land in the ICE set (per magic-cards.info), and you're right that changing the definition might have repercussions in other modes in Forge as well, such as the Quest mode; however, in the current Quest Mode, the initial deck receives 20 Snow-Covered lands of each type for free, which is pretty much overkill (personally I believe it would have made more sense to sell the Snow-Covered lands in the card shop while not giving that many away for free, because many snow-based abilities in ICE and CSP are indeed powerful and there's too much temptation to just replace all regular lands with Snow lands having gotten a powerful card with a snow ability). Once again, we can do whatever we consider fun here, but multiple sources online, both CSP- and ICE-related, and some info on wizards.com, confirm that snow-covered land was not meant to be that widely accessible and that easily attainable as the regular basic land. For instance, in a CSPx3 draft, one can't ask for extra Snow land after drafting as he can ask for extra non-Snow basic land.
- On the other hand, keeping the authentic definition of ICE Snow-Covered Lands as "Land" and not "Common" will keep the authenticity but will cripple the ICE block drafts - in such a case we may have to start providing free Snow-Covered lands in the Draft mode similar to how we do it in the Quest mode, which is also not authentic and may easily overpower the human deck because there will be a temptation to just hoard on cards with good Snow abilities and then just stuff all Snow land instead of regular land. :\
So, we just have to decide on something here that will, in one way or another, be the "middle ground" between all the true facts about Magic and the considerations that we may have regarding how Forge works.

Here's a related discussion on another forum, very similar to what we're talking about now: http://www.octgn.net/forum/index.php?topic=583.0
It seems that after a similar discussion they decided to also classify ICE lands as Commons due to the fact that other solutions did not work out either.
Do you have any other considerations regarding this difficult question?
Oh OK, that's good to know - maybe it won't have a breaking effect on other game modes then... At any rate, if it proves to be a problem, I can easily revert it back to what it was before.Sloth wrote:The Snow-covered Land were Commons already in Coldsnap, so I don't think it makes any difference.
So true, that would have been a bummer indeed.friarsol wrote:I just don't want to receive an Arabian Nights Mountain as my Random Rare.

- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
Re: New Draft Functionality Finally Done
by Agetian » 31 May 2011, 04:48
Today I was working on fixing the draft mode crashing with the sets that don't have basic land in them (addressed above in this thread). I succeeded in adding an extra parameter to the Set Info array that allows the game to choose another set for the basic lands in case the main set of the draft doesn't have basic lands in them. It works very well, for instance, for Legends (which now takes the lands from Revised) and Coldsnap CSPx3 (which now takes the lands from 9th Edition).
Some of the sets, however, are still not draftable because they crash for another reason which is something I can't understand so far. It looks like there's still another bug in the code - I can see the line that Eclipse points me to but I'm not sure what exactly is up - Rob, if you can, can you please take a look at what's wrong there? For example, the following sets still crash for the reason unknown:
The Dark - lets you draft the cards but crashes immediately after the draft;
Chronicles - crashes immediately even before the draft is started;
The error is the same in both cases:
Thanks in advance for looking it up.
- Agetian
Some of the sets, however, are still not draftable because they crash for another reason which is something I can't understand so far. It looks like there's still another bug in the code - I can see the line that Eclipse points me to but I'm not sure what exactly is up - Rob, if you can, can you please take a look at what's wrong there? For example, the following sets still crash for the reason unknown:
The Dark - lets you draft the cards but crashes immediately after the draft;
Chronicles - crashes immediately even before the draft is started;
The error is the same in both cases:
- Code: Select all
An error has occurred. You can copy/paste this message or save it to a file.
Please report this, plus what you tried to do, to:
http://www.slightlymagic.net/forum/viewforum.php?f=26
If you don't want to register an account, you can mail it directly to
mtgerror@yahoo.com
n must be positive
Version:
Forge -- official beta: $Date: 2011-01-06 19:34:48 +0300 (ЧÑ, 06 Ñнв 2011) $, SVN revision: $Revision: 4891 $
OS: Windows Vista Version: 6.0 Architecture: x86
Java Version: 1.6.0_20 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.IllegalArgumentException: n must be positive
at java.util.Random.nextInt(Unknown Source)
at forge.BoosterDraftAI.choose(BoosterDraftAI.java:225)
at forge.BoosterDraft_1.computerChoose(BoosterDraft.java:259)
at forge.BoosterDraft_1.nextChoice(BoosterDraft.java:220)
at forge.Gui_BoosterDraft.jButton1_actionPerformed(Gui_BoosterDraft.java:477)
at forge.Gui_BoosterDraft$5.actionPerformed(Gui_BoosterDraft.java:204)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Thanks in advance for looking it up.
- Agetian
- Agetian
- Programmer
- Posts: 3489
- Joined: 14 Mar 2011, 05:58
- Has thanked: 684 times
- Been thanked: 572 times
66 posts
• Page 4 of 5 • 1, 2, 3, 4, 5
Who is online
Users browsing this forum: No registered users and 79 guests