Forge Beta: 10-22-2014 ver 1.5.29
by mtgrares
Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Xitax » 05 Nov 2014, 00:57
Moving the numbers to the right of the icons in the menu column makes double digits unreadably small. Another solution would be to allow overlap, but add an opposite color border on the number text to provide contrast and separation from background items, like the card overlay text.
Re: Forge Beta: 10-22-2014 ver 1.5.29
by ndlarsen » 05 Nov 2014, 20:06
When the AI casts Taigam's Scheming appreantly it can look at the cards in my library for some reason.
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Stampedo » 07 Nov 2014, 01:25
When Hero of Bladehold attacks, shouldnt the tokens benefit from Battle cry?
Whenever she attacks, the newly created tokens are still 1/1.
Radiant, Archangel still benefits from "Radiant gets +1/+1 for each other creature with flying on the battlefield" despite Humility being in play.
Intended?
Whenever she attacks, the newly created tokens are still 1/1.
Radiant, Archangel still benefits from "Radiant gets +1/+1 for each other creature with flying on the battlefield" despite Humility being in play.
Intended?
Re: Forge Beta: 10-22-2014 ver 1.5.29
by friarsol » 07 Nov 2014, 02:04
Both the Battle cry trigger and the token trigger happen at the same time. You get to choose which order they go onto the stack. To allow the tokens to gain the bonus, that trigger needs to resolve first.Stampedo wrote:When Hero of Bladehold attacks, shouldnt the tokens benefit from Battle cry?
Whenever she attacks, the newly created tokens are still 1/1.
- friarsol
- Global Moderator
- Posts: 7593
- Joined: 15 May 2010, 04:20
- Has thanked: 243 times
- Been thanked: 965 times
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Stampedo » 07 Nov 2014, 03:17
I never realized you could choose, how do you do that?
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Yuriel » 07 Nov 2014, 07:53
I was playing a single KTK Draft round and out of nowhere the program crashed as soon as I played a tapland. After searching for a few minutes, I couldn't find if this had happened to anyone already so I thought I'd post it. I've been playing for about two weeks(KTK and M15 drafts exclusively, so far) and this is only the second time it's crashed, yesterday being the first, but I didn't pay it much attention since I had left the game "paused" all day so I figured it was my fault.
EDIT: I just realised that I had forgotten one possibly key detail: the crash happened immediately after I right-clicked the tapland effect on the stack to set it to Auto-yield.

EDIT: I just realised that I had forgotten one possibly key detail: the crash happened immediately after I right-clicked the tapland effect on the stack to set it to Auto-yield.
- IllegalComponentStateException | Open
- Code: Select all
Forge Version: 1.5.29-r28053Mu (mixed revisions detected; please update from the root directory)
Operating System: Windows 8.1 6.3 amd64
Java Version: 1.7.0_67 Oracle Corporation
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.awt.Component.getLocationOnScreen_NoTreeLock(Unknown Source)
at java.awt.Component.getLocationOnScreen(Unknown Source)
at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:165)
at forge.screens.match.TargetingOverlay.access$600(TargetingOverlay.java:59)
at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:377)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JLayeredPane.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JLayeredPane.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintToOffscreen(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(Unknown Source)
at javax.swing.RepaintManager$3.run(Unknown Source)
at javax.swing.RepaintManager$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.access$1100(Unknown Source)
at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(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.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)
Last edited by Yuriel on 07 Nov 2014, 11:55, edited 1 time in total.
- Yuriel
- Posts: 1
- Joined: 07 Nov 2014, 07:24
- Has thanked: 0 time
- Been thanked: 0 time
Re: Forge Beta: 10-22-2014 ver 1.5.29
by mastroego » 07 Nov 2014, 08:07
Well you get a pop-up window to choose your order in case of concurrent triggersStampedo wrote:I never realized you could choose, how do you do that?

Re: Forge Beta: 10-22-2014 ver 1.5.29
by chieuduong » 07 Nov 2014, 08:17
You choose what order you want in this window, don't just jam spacebar randomly.Stampedo wrote:I never realized you could choose, how do you do that?

-
chieuduong - Posts: 37
- Joined: 30 Sep 2013, 05:09
- Has thanked: 42 times
- Been thanked: 2 times
Re: Forge Beta: 10-22-2014 ver 1.5.29
by drdev » 07 Nov 2014, 20:02
For everyone getting this IllegalComponentStateException error, this issue has to do with the stack changing while hovering over an item on it. This issue was fixed right after release, so you can take the latest snapshot build to get the fix right away. Otherwise just be aware of what causes it if you want to workaround it until 1.5.30 is released.Yuriel wrote:I was playing a single KTK Draft round and out of nowhere the program crashed as soon as I played a tapland. After searching for a few minutes, I couldn't find if this had happened to anyone already so I thought I'd post it. I've been playing for about two weeks(KTK and M15 drafts exclusively, so far) and this is only the second time it's crashed, yesterday being the first, but I didn't pay it much attention since I had left the game "paused" all day so I figured it was my fault.![]()
EDIT: I just realised that I had forgotten one possibly key detail: the crash happened immediately after I right-clicked the tapland effect on the stack to set it to Auto-yield.
- IllegalComponentStateException | Open
- Code: Select all
Forge Version: 1.5.29-r28053Mu (mixed revisions detected; please update from the root directory)
Operating System: Windows 8.1 6.3 amd64
Java Version: 1.7.0_67 Oracle Corporation
java.awt.IllegalComponentStateException: component must be showing on the screen to determine its location
at java.awt.Component.getLocationOnScreen_NoTreeLock(Unknown Source)
at java.awt.Component.getLocationOnScreen(Unknown Source)
at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:165)
at forge.screens.match.TargetingOverlay.access$600(TargetingOverlay.java:59)
at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:377)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JLayeredPane.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JLayeredPane.paint(Unknown Source)
at javax.swing.JComponent.paintChildren(Unknown Source)
at javax.swing.JComponent.paint(Unknown Source)
at javax.swing.JComponent.paintToOffscreen(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(Unknown Source)
at javax.swing.RepaintManager$PaintManager.paint(Unknown Source)
at javax.swing.RepaintManager.paint(Unknown Source)
at javax.swing.JComponent._paintImmediately(Unknown Source)
at javax.swing.JComponent.paintImmediately(Unknown Source)
at javax.swing.RepaintManager$3.run(Unknown Source)
at javax.swing.RepaintManager$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
at javax.swing.RepaintManager.access$1100(Unknown Source)
at javax.swing.RepaintManager$ProcessingRunnable.run(Unknown Source)
at java.awt.event.InvocationEvent.dispatch(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.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)
- drdev
- Programmer
- Posts: 1958
- Joined: 27 Jul 2013, 02:07
- Has thanked: 189 times
- Been thanked: 565 times
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Stampedo » 08 Nov 2014, 01:59
I feel stupid now, I never paid attention to this window before, that was helpful thanks guys!
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Vecc » 08 Nov 2014, 05:03
Like a friend once said: life's too short to declare all phases.
(or, in this case, to pay attention to everything while jamming the space bar)
(or, in this case, to pay attention to everything while jamming the space bar)
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Zirbert » 08 Nov 2014, 05:13
Some odd behaviour from Teferi's Puzzle Box - when it triggers for the AI, I get to see, and even arrange, the AI's cards that are put on bottom of the library. That's information that should remain hidden to me. This is still present in 1.5.30 snapshot r28141 (forge-gui-desktop-1.5.30-20141102.152810-4.tar.bz2).
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Zirbert » 09 Nov 2014, 01:01
This was happening in 1.5.29, and is still present in 1.5.30 snapshot r28141 (forge-gui-desktop-1.5.30-20141102.152810-4.tar.bz2).
I hate to bring it up, since it's cool that we have this card at all, but...
Possibility Storm doesn't consistently work correctly. It generally works fine with permanents, exiling the original spell, finding a new one that goes off, then putting the original spell and revealed cards on bottom.
However, when the initially cast spell is an instant or sorcery, it tends to stay on the stack and still resolve, after the "replacement" spell (which resolves as expected). The original spell card is apparently put on bottom of the library - it definitely isn't in the graveyard or exile afterward.
Worst of all is that my testing hasn't returned 100% consistent results. Sometimes instants and sorceries get removed without resolving, although not usually. And sometimes permanents (usually enchantments) stay on the stack and still resolve after their "replacement".
I'm sure that it's not a case of the "replacement" spell PS churns up being another copy of the original triggering spell. I also haven't had any other effects going that might have interfered with the Storm's effect.
Just something to keep an eye on, unless anybody can see a method behind what's happening here. If I notice anything else that might help trace the issue, I'll post it.
I hate to bring it up, since it's cool that we have this card at all, but...
Possibility Storm doesn't consistently work correctly. It generally works fine with permanents, exiling the original spell, finding a new one that goes off, then putting the original spell and revealed cards on bottom.
However, when the initially cast spell is an instant or sorcery, it tends to stay on the stack and still resolve, after the "replacement" spell (which resolves as expected). The original spell card is apparently put on bottom of the library - it definitely isn't in the graveyard or exile afterward.
Worst of all is that my testing hasn't returned 100% consistent results. Sometimes instants and sorceries get removed without resolving, although not usually. And sometimes permanents (usually enchantments) stay on the stack and still resolve after their "replacement".
I'm sure that it's not a case of the "replacement" spell PS churns up being another copy of the original triggering spell. I also haven't had any other effects going that might have interfered with the Storm's effect.
Just something to keep an eye on, unless anybody can see a method behind what's happening here. If I notice anything else that might help trace the issue, I'll post it.
Re: Forge Beta: 10-22-2014 ver 1.5.29
by slo-moe » 09 Nov 2014, 03:08
Here's a good trick: AI cast the same Thoughtseize (131) three times in a row
(see screenshot). In the end, it has two Thoughtseize (131 and 133) in its graveyard, and I discarded four cards.
This would be ok if it had activated Chandra, Pyromaster's ultimate, but it had not done this.

This would be ok if it had activated Chandra, Pyromaster's ultimate, but it had not done this.
Re: Forge Beta: 10-22-2014 ver 1.5.29
by Noah » 09 Nov 2014, 23:48
Got this when attacking with two 7/7 Boneyard Wurms, a Merfolk Looter, a Llanowar Elves, and seven 1/2 Reach Spiders. On OS X 10.9.
- ConcurrentModificationException | Open
- Code: Select all
Forge Version: 1.5.29-r28053Mu (mixed revisions detected; please update from the root directory)
Operating System: Mac OS X 10.9.5 x86_64
Java Version: 1.7.0_71 Oracle Corporation
java.util.ConcurrentModificationException
at java.util.HashMap$HashIterator.nextEntry(HashMap.java:922)
at java.util.HashMap$EntryIterator.next(HashMap.java:962)
at java.util.HashMap$EntryIterator.next(HashMap.java:960)
at forge.game.combat.CombatView.getAttackersOf(CombatView.java:123)
at forge.screens.match.TargetingOverlay.addArcsForCard(TargetingOverlay.java:266)
at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:158)
at forge.screens.match.TargetingOverlay.access$600(TargetingOverlay.java:59)
at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:377)
at javax.swing.JComponent.paint(JComponent.java:1054)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5219)
at javax.swing.RepaintManager$PaintManager.paintDoubleBuffered(RepaintManager.java:1529)
at javax.swing.RepaintManager$PaintManager.paint(RepaintManager.java:1452)
at javax.swing.RepaintManager.paint(RepaintManager.java:1249)
at javax.swing.JComponent._paintImmediately(JComponent.java:5167)
at javax.swing.JComponent.paintImmediately(JComponent.java:4978)
at javax.swing.RepaintManager$3.run(RepaintManager.java:808)
at javax.swing.RepaintManager$3.run(RepaintManager.java:796)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:796)
at javax.swing.RepaintManager.paintDirtyRegions(RepaintManager.java:769)
at javax.swing.RepaintManager.prePaintDirtyRegions(RepaintManager.java:718)
at javax.swing.RepaintManager.access$1100(RepaintManager.java:62)
at javax.swing.RepaintManager$ProcessingRunnable.run(RepaintManager.java:1677)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:312)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:733)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:703)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
Last edited by Noah on 10 Nov 2014, 22:33, edited 14 times in total.
- Noah
- Posts: 4
- Joined: 09 Nov 2014, 20:09
- Has thanked: 0 time
- Been thanked: 0 time
Who is online
Users browsing this forum: No registered users and 48 guests