SVN Bug Reports
Post MTG Forge Related Programming Questions Here
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: SVN Bug Reports
by Chris H. » 15 Mar 2011, 18:05
I could probably spend some time helping with this part of the project. I am currently waiting for replies to my message in reference to using:
rather then the old style:
for code blocks that are used by permanents.
- Code: Select all
card.clearFirstSpellAbility();
rather then the old style:
- Code: Select all
card.clearSpellAbility();
for code blocks that are used by permanents.
-
Chris H. - Forge Moderator
- Posts: 6320
- Joined: 04 Nov 2008, 12:11
- Location: Mac OS X Yosemite
- Has thanked: 644 times
- Been thanked: 643 times
Re: SVN Bug Reports
by UnderFlow » 15 Mar 2011, 21:20
Revision 7632:
I attack the computer with Hero of Bladehold. The computer has Jace Beleren. The tokens generated by Hero of Bladehold attack Jace. I should get to decide which player/planeswalker is attacked.
I attack the computer with Hero of Bladehold. The computer has Jace Beleren. The tokens generated by Hero of Bladehold attack Jace. I should get to decide which player/planeswalker is attacked.
Re: Shameless Doublepost
by Sloth » 16 Mar 2011, 10:29
The AI will now predict the interaction of first strike and wither/infect. Thanks Replika.Replika wrote:The AI attacks with Steppe Lynx only to have it blocked, shrinked and then killed by my Phyrexian Crusader. I know that the AI checks whether its creature can block something (it can't), can be killed by a blocker (4/5 vs. 2/2) and then attacks. This is pretty bad against wither, infect and multiple blockers.
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: SVN Bug Reports
by Sloth » 16 Mar 2011, 15:01
I've added RemRandomDeck as SVar. These should be cards that the AI has no problems with, but are too specific for a random deck (like Root Cage or Into the North).slapshot5 wrote:I've often thought we need to spilt this into multiple SVars. Or 1 SVar with different values. The values would override.
SVar:AI:RemoveRandom - remove it from random decks (like the three cards above)
SVar:AI:DontUse - this is buggy, and should be used by AI even in constructed (also removes from Random decks)
Something like that.
-slapshot5
I've started to convert some card text files. When I'm finished we can consider giving the human player's random decks access to cards with RemAiDeck, but without RemRandomDeck.
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: SVN Bug Reports
by Rob Cashwalker » 16 Mar 2011, 15:18
cool, thanks Sloth!
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: SVN Bug Reports
by Corwin72 » 16 Mar 2011, 15:43
-
Corwin72 - Posts: 793
- Joined: 15 Sep 2009, 13:26
- Location: Grayson, Ga
- Has thanked: 25 times
- Been thanked: 9 times
Re: SVN Bug Reports
by Replika » 16 Mar 2011, 16:41
r7674
Inkmoth Nexus and Tezzeret, Agent of Bolas do not interact with each other the way they should. If the Nexus gets animated and then turned into a 5/5 by Tezzeret, it will turn back into just a land at the end of turn. According to MtGO and this Cranial Insertion article, it should be a 5/5 artifact creature land and only lose flying and infect.
The AI is pretty bad at using fetchlands (the untapped ones like Arid Mesa). Even if it does have a card with PlayMain1:True in its hand, it often cracks the fetch midcombat or something like that and can't cast its spell precombat anymore. In fact, I have never seen the AI casting a Goblin Guide by using its fetchland on turn one during its first main phase.
The AI is pretty bad at using saclands (all of them, including Terramorphic Expanse, Arid Mesa and so on). An example: The AI plays Boros and has two Plains and no Mountains. It plays an Arid Mesa, cracks it and searches up... another Plains.
Is it possible to make the AI prefer basic lands of a color that it does not already have? Or, even better, search for colors it does not have a source of first, then search for colors it has only one source of? That would make sure the AI gets to cast its double-colored cards in a two- or three-colored deck.
Inkmoth Nexus and Tezzeret, Agent of Bolas do not interact with each other the way they should. If the Nexus gets animated and then turned into a 5/5 by Tezzeret, it will turn back into just a land at the end of turn. According to MtGO and this Cranial Insertion article, it should be a 5/5 artifact creature land and only lose flying and infect.
The AI is pretty bad at using fetchlands (the untapped ones like Arid Mesa). Even if it does have a card with PlayMain1:True in its hand, it often cracks the fetch midcombat or something like that and can't cast its spell precombat anymore. In fact, I have never seen the AI casting a Goblin Guide by using its fetchland on turn one during its first main phase.
The AI is pretty bad at using saclands (all of them, including Terramorphic Expanse, Arid Mesa and so on). An example: The AI plays Boros and has two Plains and no Mountains. It plays an Arid Mesa, cracks it and searches up... another Plains.
Is it possible to make the AI prefer basic lands of a color that it does not already have? Or, even better, search for colors it does not have a source of first, then search for colors it has only one source of? That would make sure the AI gets to cast its double-colored cards in a two- or three-colored deck.
-
Sloth - Programmer
- Posts: 3498
- Joined: 23 Jun 2009, 19:40
- Has thanked: 125 times
- Been thanked: 507 times
Re: SVN Bug Reports
by Jaedayr » 17 Mar 2011, 19:44
r7696
- Code: Select all
An error has occured. 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
There is an error in the card code for Identity Crisis:
Version:
Forge -- official beta: $Date: 2011-01-06 11:34:48 -0500 (Thu, 06 Jan 2011) $, SVN revision: $Revision: 4891 $
OS: Windows XP Version: 5.1 Architecture: x86
Java Version: 1.6.0_24 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.RuntimeException: AllZone : getZone() invalid parameters Library null
at forge.AllZone.getZone(AllZone.java:112)
at forge.card.cardFactory.CardFactory_Sorceries$6.canPlayAI(CardFactory_Sorceries.java:224)
at forge.ComputerAI_General.getPlayable(ComputerAI_General.java:181)
at forge.ComputerAI_General.getMain1(ComputerAI_General.java:115)
at forge.ComputerAI_General.playCards(ComputerAI_General.java:37)
at forge.ComputerAI_General.main1(ComputerAI_General.java:24)
at forge.ComputerAI_Input.think(ComputerAI_Input.java:48)
at forge.ComputerAI_Input.showMessage(ComputerAI_Input.java:33)
at forge.GuiInput.setInput(GuiInput.java:29)
at forge.GuiInput.update(GuiInput.java:23)
at java.util.Observable.notifyObservers(Unknown Source)
at java.util.Observable.notifyObservers(Unknown Source)
at forge.MyObservable.updateObservers(MyObservable.java:9)
at forge.Phase.nextPhase(Phase.java:375)
at forge.GuiDisplay4$25.actionPerformed(GuiDisplay4.java:746)
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.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$000(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.awt.EventQueue$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.awt.EventQueue$2.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(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)
Re: SVN Bug Reports
by Replika » 17 Mar 2011, 21:28
r7707
Soul Stair Expedition is not limited to your own graveyard.
The AI only blocks with regenerating creatures if they kill the blocked creature. I have not seen the AI chumping and regenerating just to prevent damage except when being attacked for lethal.
Soul Stair Expedition is not limited to your own graveyard.
The AI only blocks with regenerating creatures if they kill the blocked creature. I have not seen the AI chumping and regenerating just to prevent damage except when being attacked for lethal.
-
Chris H. - Forge Moderator
- Posts: 6320
- Joined: 04 Nov 2008, 12:11
- Location: Mac OS X Yosemite
- Has thanked: 644 times
- Been thanked: 643 times
Re: SVN Bug Reports
by UnderFlow » 18 Mar 2011, 00:59
Revision 7716:
Recycle triggers for every copy of Brain Freeze. (The same is probably true for Null Profusion.)
Recycle triggers for every copy of Brain Freeze. (The same is probably true for Null Profusion.)
Re: SVN Bug Reports
by Zirbert » 18 Mar 2011, 01:40
Yup, if it's true for one, it'll be true for the other. They're functionally identical, copy-and-pasted except for name, colors in ManaCost, etc.UnderFlow wrote:Revision 7716:
Recycle triggers for every copy of Brain Freeze. (The same is probably true for Null Profusion.)
Right now they trigger off "T:Mode$ SpellCast | ValidCard$ Card.YouCtrl" and "T:Mode$ LandPlayed | ValidCard$ Land.YouCtrl." I wouldn't have expected Storm copies to set them off, because the Storm copies aren't Cards.
Hopefully somebody has a suggestion for differentiating between spells played and cards played...
Re: SVN Bug Reports
by friarsol » 25 Mar 2011, 14:06
Not necessarily a bug, but it's very unintuitive that when you purchase your first Pet/Plant it's not automatically enabled.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: SVN Bug Reports
by friarsol » 25 Mar 2011, 19:56
Has the AI equipping code changed? It seems like the AI didn't do anything, and decided not to use his extra mana to equip his lone creature.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Who is online
Users browsing this forum: No registered users and 34 guests