Forge Beta: 11-16-2012 ver 1.3.1
by mtgrares
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Forge Beta: 11-16-2012 ver 1.3.1
by Draconas » 21 Nov 2012, 12:43
I've noticed a performance issue with both Brass Squire, and Kor Outfitter. It isn't generating an error code, but when their abilities resolve nothing happens. the equipment doesn't equip. I know it worked in the previous release, not sure why it isn't working now.
- Draconas
- Posts: 6
- Joined: 17 Nov 2012, 00:57
- Has thanked: 0 time
- Been thanked: 0 time
Re: Forge Beta: 11-16-2012 ver 1.3.1
by gos » 21 Nov 2012, 12:57
I got this error after casting Mana Drain, a the beginning of my next main phase:
- Code: Select all
This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.
null
Version:
Forge version 1.3.1-r18201
OS: Windows 7 Version: 6.1 Architecture: amd64
Java Version: 1.7.0_07 Vendor: Oracle Corporation
Detailed error trace:
java.lang.NullPointerException
at forge.card.abilityfactory.effects.ManaEffect.resolve(ManaEffect.java:60)
at forge.card.abilityfactory.CommonDrawback.resolve(CommonDrawback.java:65)
at forge.card.abilityfactory.AbilityFactory.passUnlessCost(AbilityFactory.java:1585)
at forge.card.abilityfactory.AbilityFactory.resolve(AbilityFactory.java:1715)
at forge.GameAction.playSpellAbilityNoStack(GameAction.java:2094)
at forge.card.trigger.WrappedAbility.resolve(WrappedAbility.java:514)
at forge.card.abilityfactory.AbilityFactory.resolve(AbilityFactory.java:1712)
at forge.game.zone.MagicStack.resolveStack(MagicStack.java:909)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:718)
at forge.game.player.ComputerAIGeneral.playSpellAbilities(ComputerAIGeneral.java:374)
at forge.control.input.InputControl.getActualInput(InputControl.java:251)
at forge.gui.GuiInput.update(GuiInput.java:50)
at java.util.Observable.notifyObservers(Unknown Source)
at java.util.Observable.notifyObservers(Unknown Source)
at forge.util.MyObservable.updateObservers(MyObservable.java:38)
at forge.control.input.InputControl.resetInput(InputControl.java:140)
at forge.control.input.InputControl.resetInput(InputControl.java:136)
at forge.game.phase.PhaseHandler.passPriority(PhaseHandler.java:723)
at forge.control.input.InputPassPriority.selectButtonOK(InputPassPriority.java:74)
at forge.gui.GuiInput.selectButtonOK(GuiInput.java:80)
at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:51)
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.AbstractButton.doClick(Unknown Source)
at javax.swing.AbstractButton.doClick(Unknown Source)
at forge.gui.toolbox.FButton$1.keyPressed(FButton.java:91)
at java.awt.Component.processKeyEvent(Unknown Source)
at javax.swing.JComponent.processKeyEvent(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.KeyboardFocusManager.redispatchEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(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$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.awt.EventQueue$4.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$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)
- gos
- Posts: 4369
- Joined: 03 Mar 2011, 15:21
- Location: Reykjavík, Iceland
- Has thanked: 231 times
- Been thanked: 232 times
Re: Forge Beta: 11-16-2012 ver 1.3.1
by cc-drake » 21 Nov 2012, 21:50
I control Silent Arbiter, but AI still attacs with 3 creatures.
Re: Forge Beta: 11-16-2012 ver 1.3.1
by TastetheJace » 21 Nov 2012, 23:40
In draft mode, the Avacyn Restored set is located outside of the Innistrad block, so you can't choose to draft DKA/ISD/AVR.
- TastetheJace
- Posts: 91
- Joined: 30 Jul 2012, 00:13
- Has thanked: 0 time
- Been thanked: 0 time
Re: Forge Beta: 11-16-2012 ver 1.3.1
by SpiderBrigade » 22 Nov 2012, 00:48
Not sure if this is a bug or just a known quirk of how timing works
Seems like triggered events from anything that doesn't use the stack doesn't go on the stack immediately.
For instance mana abilities that cause something else to trigger
Phyrexian Altar with Rotlung Reanimator and Conspiracy in play (for cleric), sacrificing one (other) creature.
This will trigger Rotlung Reanimator 's ability, but it doesn't appear on the stack until something else is put on the stack.
If you then sacrifice a second creature, BOTH sets of triggers will go on.
Similarly, Ashnod's Altar with Saproling Cluster and Fecundity in play.
A non-sacrifice example is Fastbond - in most cases the 1 damage doesn't go on the stack until something else is put there, and then will go on underneath the new thing. So if you play 4 swamp then cast Lich the Lich goes on the top of the stack which shouldn't be possible. You should have to wait for the stack to empty before you can cast it in the first place.
Nothing gamebreaking but it has some impact on strategy since the triggers may not go on the stack when you want them to...
Thanks for the continuing work on this program by the way, you folks are amazing.
Seems like triggered events from anything that doesn't use the stack doesn't go on the stack immediately.
For instance mana abilities that cause something else to trigger
Phyrexian Altar with Rotlung Reanimator and Conspiracy in play (for cleric), sacrificing one (other) creature.
This will trigger Rotlung Reanimator 's ability, but it doesn't appear on the stack until something else is put on the stack.
If you then sacrifice a second creature, BOTH sets of triggers will go on.
Similarly, Ashnod's Altar with Saproling Cluster and Fecundity in play.
A non-sacrifice example is Fastbond - in most cases the 1 damage doesn't go on the stack until something else is put there, and then will go on underneath the new thing. So if you play 4 swamp then cast Lich the Lich goes on the top of the stack which shouldn't be possible. You should have to wait for the stack to empty before you can cast it in the first place.
Nothing gamebreaking but it has some impact on strategy since the triggers may not go on the stack when you want them to...
Thanks for the continuing work on this program by the way, you folks are amazing.
- SpiderBrigade
- Posts: 23
- Joined: 21 Nov 2012, 19:31
- Has thanked: 1 time
- Been thanked: 3 times
Re: Forge Beta: 11-16-2012 ver 1.3.1
by gwurb » 22 Nov 2012, 03:16
Came here to post the same bug as well.gos wrote:I got this error after casting Mana Drain, a the beginning of my next main phase:
Obviously didn't get the mana. As a side note, I tried closing the report then cast Show and Tell.
Paid the 2U, but game wants 1 more. I can't pay and cancel button causes card to keep going on the stack. Can't close the game window either.
Re: Forge Beta: 11-16-2012 ver 1.3.1
by Hellfish » 22 Nov 2012, 08:07
AVR is a large set and so should be drafted alone. This is really a bit of "Because Wizards says so", since ISD is a large set too..TastetheJace wrote:In draft mode, the Avacyn Restored set is located outside of the Innistrad block, so you can't choose to draft DKA/ISD/AVR.
You can use RumbleBBU's instructions in the other sticky to create a custom draft format, I think.
So now you're
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
Screaming for the blood of the cookie monster
Evil puppet demon of obesity
Time to change the tune of his fearful ballad
C is for "Lettuce," that's good enough for me
-
Hellfish - Programmer
- Posts: 1297
- Joined: 07 Jun 2009, 10:41
- Location: South of the Pumphouse
- Has thanked: 110 times
- Been thanked: 169 times
Re: Forge Beta: 11-16-2012 ver 1.3.1
by RumbleBBU » 22 Nov 2012, 08:17
Thanks, Marc - I've been busy (RL busy) the past couple of days, ever since the last beta release, to be precise, and you have summarized a lot of it neatly.moomarc wrote:Rumble is slowly expanding the format and hopes to have 'quest worlds' where everything will be limited by your sefined formats. There is still quite a lot of work before that's all set up though and he had some setbacks because of some massive code base overhauls that kept interfering with his work.
Just a few clarifications and explanations related to unlocking and quest worlds:
- The "every 50 wins" limitation was in 1.3.0. The new beta, 1.3.1, gives you an unlocking button that will be displayed right next to the Spell Shop and Bazaar buttons when applicable. "When applicable" means, here, that 1) you are playing a quest where you can unlock new sets, 2) there are unlockable sets available in Forge, 3) you have enough wins to have at least one unlock available, and 4) you have unused "unlock tokens". Every "n" wins, you get an "unlock token" that entitles you to unlock a set. Currently "n" is 20, I believe. You can have more than one, and you can choose when to use them. You still have to pay money, though, and while I changed the formula to make the set prices a bit less exorbitant, they might still be too expensive (your feedback will be appreciated here). And, finally, the number of sets you can choose from depends on how many wins you have overall. Basically it is two options + one more per every 50 wins, to up to 8 different sets to choose from. So if you click the unlock button and don't see anything you like...you don't have to spend your token(s) now, you can win some more duels, and there will be more options to choose from.
- The quest worlds: what I'm working on (or "will be working on again" is more like it - see explanation later on) is the easy part. I'm just building a skeleton structure, or supporting code, that enables the possibility of different quest worlds. The hard part is actually building different "worlds" for the different formats. I have one practically complete one already, my Shandalar conversion, that I will be using for testing, although I'm not sure if we want to/can include it in the actual distribution in its current format (it contains art from the Microprose game - maybe I should drop the icons?). But what we need is decks, with descriptions when/for which blocks and formats they were legal. Once we have enough decks for, say, Urza's Saga block, we could add an "Urza's World". This is where we are going to need help from Forge users. Even deck lists would help.
...and what's currently stalling my progress...is, unfortunately, the Concurrent Modification Exception bug that quest challenges with preset cards give you, introduced in 1.3.0. I have been looking into it and banging my head to a wall. I just can't nail it. When I add some tests (for example, test println's), it randomly goes away - or reappears. And so far, my understanding of the relevant display code is still rather limited, so don't expect any results soon...

But I really, really need that fixed before I can continue on the quest worlds.
Re: Forge Beta: 11-16-2012 ver 1.3.1
by saturnine » 22 Nov 2012, 09:48
I was just clicking on a Plains. Are crash reports like these needed?
- Code: Select all
This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.
null
Version:
Forge version 1.3.1-r18201
OS: Windows 7 Version: 6.1 Architecture: x86
Java Version: 1.6.0_37 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.NullPointerException
at forge.gui.framework.SDisplayUtil$1$1.run(SDisplayUtil.java:62)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$400(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.pumpEventsForFilter(Unknown Source)
at java.awt.Dialog$1.run(Unknown Source)
at java.awt.Dialog$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Unknown Source)
at java.awt.Component.show(Unknown Source)
at java.awt.Component.setVisible(Unknown Source)
at java.awt.Window.setVisible(Unknown Source)
at java.awt.Dialog.setVisible(Unknown Source)
at forge.error.ErrorViewer.showDialog(ErrorViewer.java:192)
at forge.error.ErrorViewer.showError(ErrorViewer.java:117)
at forge.error.ErrorViewer.showError(ErrorViewer.java:79)
at forge.error.ExceptionHandler.handle(ExceptionHandler.java:62)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at java.awt.EventDispatchThread.handleException(Unknown Source)
at java.awt.EventDispatchThread.processException(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)
- Code: Select all
This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.
null
Version:
Forge version 1.3.1-r18201
OS: Windows 7 Version: 6.1 Architecture: x86
Java Version: 1.6.0_37 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.lang.NullPointerException
at forge.gui.framework.SDisplayUtil$1$1.run(SDisplayUtil.java:62)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$400(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: Forge Beta: 11-16-2012 ver 1.3.1
by saturnine » 22 Nov 2012, 12:38
AI started game #2 with Leyline of Singularity. Am unable to mulligan or do anything at all.
- Code: Select all
This is a Crash Report. An error has occurred. Please save this message to a file.
Please follow the instructions at this address to submit this Crash Report, plus what you were doing at the time:
http://tinyurl.com/3zzrnyb
Reporting bugs in Forge is very important. We thank you for your time.
null
Version:
Forge version 1.3.1-r18201
OS: Windows 7 Version: 6.1 Architecture: x86
Java Version: 1.6.0_37 Vendor: Sun Microsystems Inc.
Detailed error trace:
java.util.ConcurrentModificationException
at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
at java.util.AbstractList$Itr.next(Unknown Source)
at java.util.Collections$UnmodifiableCollection$1.next(Unknown Source)
at forge.control.input.InputMulligan.end(InputMulligan.java:123)
at forge.control.input.InputMulligan.selectButtonOK(InputMulligan.java:74)
at forge.gui.GuiInput.selectButtonOK(GuiInput.java:80)
at forge.gui.match.controllers.CMessage$2.actionPerformed(CMessage.java:51)
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.AWTEventMulticaster.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$400(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.security.AccessControlContext$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.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: Forge Beta: 11-16-2012 ver 1.3.1
by TastetheJace » 22 Nov 2012, 14:43
Cool, thanks for the info. Innistrad is one of my favorite blocks and so I like to draft a booster from each set, but it's good to know there's a reason behind why this isn't the case.Hellfish wrote:AVR is a large set and so should be drafted alone. This is really a bit of "Because Wizards says so", since ISD is a large set too..TastetheJace wrote:In draft mode, the Avacyn Restored set is located outside of the Innistrad block, so you can't choose to draft DKA/ISD/AVR.
You can use RumbleBBU's instructions in the other sticky to create a custom draft format, I think.
- TastetheJace
- Posts: 91
- Joined: 30 Jul 2012, 00:13
- Has thanked: 0 time
- Been thanked: 0 time
Re: Forge Beta: 11-16-2012 ver 1.3.1
by gos » 22 Nov 2012, 22:26
I got this same error when the AI started with a Leyline of Sanctity.saturnine wrote:AI started game #2 with Leyline of Singularity. Am unable to mulligan or do anything at all.
- gos
- Posts: 4369
- Joined: 03 Mar 2011, 15:21
- Location: Reykjavík, Iceland
- Has thanked: 231 times
- Been thanked: 232 times
Re: Forge Beta: 11-16-2012 ver 1.3.1
by cc-drake » 23 Nov 2012, 00:23
- AI is able to cast Chaotic Strike even if there are no creatures in play.
- Sleeper Agent doesn't change control to my opponent.
- Sleeper Agent doesn't change control to my opponent.
Re: Forge Beta: 11-16-2012 ver 1.3.1
by serrasmurf » 23 Nov 2012, 11:25
When I play against Fat Albert, none of my lands untap when the fat men has Winter Orb in play, as if it completely skips that phase. If i remember correctly winter orb started working correctly when i had also stoic angel in play...
Need any screenshots/logs?
- serrasmurf
- Posts: 316
- Joined: 30 Jan 2010, 14:09
- Location: The Netherlands
- Has thanked: 3 times
- Been thanked: 18 times
Re: Forge Beta: 11-16-2012 ver 1.3.1
by serrasmurf » 23 Nov 2012, 11:28
Azor's Elocutors doesn't yield the alternative win bonus in quest..
- serrasmurf
- Posts: 316
- Joined: 30 Jan 2010, 14:09
- Location: The Netherlands
- Has thanked: 3 times
- Been thanked: 18 times
Who is online
Users browsing this forum: No registered users and 42 guests