Page 2 of 6

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 14:28
by Fizanko
I ran into a concurrent error , the AI was making its final attack

Now before that turn in which the concurrent error happened, i noticed during several turn of that specific duel round that each phase of the AI were "lagging" , i mean i pressed spacebar/clicked OK and there was between 1 and 2 seconds of delay (while usually it's immediate)

It had a few tokens, but i had battle in the past with much more than that on the battlefield without that odd delay

The round that followed played normally, with the delay

Image

ConcurrentModificationException | Open
Code: Select all
Forge Version:    1.5.21-r26540
Operating System: Windows XP 5.1 x86
Java Version:     1.7.0_10 Oracle Corporation

java.util.ConcurrentModificationException
   at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
   at java.util.ArrayList$Itr.next(Unknown Source)
   at com.google.common.collect.AbstractMapBasedMultimap$Itr.next(AbstractMapBasedMultimap.java:1150)
   at forge.game.combat.Combat.getAttackers(Combat.java:197)
   at forge.screens.match.TargetingOverlay.addArcsForCard(TargetingOverlay.java:234)
   at forge.screens.match.TargetingOverlay.assembleArcs(TargetingOverlay.java:139)
   at forge.screens.match.TargetingOverlay.access$100(TargetingOverlay.java:48)
   at forge.screens.match.TargetingOverlay$OverlayPanel.paintComponent(TargetingOverlay.java:354)
   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.BufferStrategyPaintManager.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.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.paintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.prePaintDirtyRegions(Unknown Source)
   at javax.swing.RepaintManager.access$700(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)

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 16:09
by timmermac
As far as delays go, Forge does use an increasing amount of memory as a session goes on. If you start to notice a bit lagginess, go into your Windows Task Manager and see how much memory your javaw.exe process is using. If it's getting up around a gig, it might be time to close Forge and relaunch it. That's usually good for another several matches worth of play before you have to do it again.

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 16:14
by Fizanko
Thanks, if i run into this next time i'll give a look into the memory eaten by java.
Though in that case i don't think it was a "normal" memory leak/accumulation as it was only my 3rd duel in a row in that Forge session (and in the past i have played much more duels in a row without running into a similar "lag" case)

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 16:39
by Marek14
Putting a creature onto the battlefield with Sphinx Ambassador should not be automatic.

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 17:51
by Bog Wraith
With the wonderful addition of being able to play music in this latest version of Forge, I added some old familiar music from the plane of Shandalar from the old MicroProse MTG game.

Here is a link to the thread that it is posted in which has more info about this as well as the associated files: viewtopic.php?f=26&t=8570&p=155197#p155197

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 17:53
by enxel
It's a shame this will be my first post (an error report), however I've been around here since a long time ago and first of all I want to thank all the Forge team for all the effort and the marvelous work they've done. Now, onto the report...

Description: I just wanted to play a Constructed match, but when I click 'Constructed' on the menu this error happens. Sealed and Booster draft work normally.

NullPointerException | Open
Code: Select all
Forge Version:    1.5.21-r26540
Operating System: Windows 7 6.1 x86
Java Version:     1.7.0_51 Oracle Corporation

java.lang.NullPointerException
   at forge.itemmanager.ItemManager.stringToItem(ItemManager.java:591)
   at forge.itemmanager.ItemManager.setSelectedStrings(ItemManager.java:622)
   at forge.deckchooser.FDeckChooser.restoreSavedState(FDeckChooser.java:360)
   at forge.deckchooser.FDeckChooser.populate(FDeckChooser.java:249)
   at forge.screens.home.sanctioned.VSubmenuConstructed.populate(VSubmenuConstructed.java:412)
   at forge.screens.home.CHomeUI.itemClick(CHomeUI.java:54)
   at forge.screens.home.LblMenuItem$1.mousePressed(LblMenuItem.java:45)
   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$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)

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 20:40
by Fizanko
Played a new session of Forge, 2nd duel in Ravnica world vs one of the Boros AI, 2nd round and back at the 2 seconds delay (and more sometime during that round) by phase during the AI turn.

Looked at javaw.exe , it was taking +/- 230mb , i checked and still have a lot more memory available, so it wasn't that.

Now i looked at the graph for my 2 core :
Image

Ouch, i don't know what's going on but there's something with Forge that is making one of the core working a lot more than it should.

That looks to be a problem new to 1.5.21 for me as i never noticed that before (and never noticed that in the pre-new release snapshots) .

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 21:06
by Fizanko
For a comparison, i went back to play on a previous snapshot ( r26456 ) and after 4 duels (2 vs the green AI i posted about in the previous page, and 2 vs the 2 Boros) i had no delay at all.

After 3 duels, i checked and the CPU was :
Image

the memory consumption of javaw.exe is +/- the same,

Now for the 4th duel, that i won 2 rounds vs 1, in the last round on my final attack the CPU use increase noticably (though i didn't noticed any delay) as i attacked with a 8/7 creature and the AI had at least 5 1/1 creatures (and 1 1/2) creatures trying to block it, generating several arrows and me adjusting the damage 1 by 1 manually.
But other than this peak it was nowhere near that level during those 3 matches and previous rounds, and even that peak has nothing in common with what i experienced in the previous post

Image

Not sure why the 1.5.21 release got this problem for me.
The only real noticable difference i see between the snapshot and 1.5.21 is that that snapshot is from before music support was introduced.
But i turned music off from day 1 of the release (so i was with music off when i experienced the cpu increased usage)

Wonder if anyone else is noticing sometime the AI phase lagging after you press OK/space key ?

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 21:21
by horsekateer
Running this version (1.5.21) on a Mac with OSX Mavericks 10.9.3 I haven't been able to download new card images since before Journey Into Nyx. The content downloader says I have 272 LQ Card Pictures to download but when I try to get them it runs through the numbers then says it skipped all of them. Same thing for LQ set pictures. Any idea how I can fix this? Thanks so much!

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 05 Jul 2014, 21:42
by Fizanko
That's because the cards images aren't actually on the content server, that's why they're skipped.

If you can't wait, you should download manually packs people upload from time to time.

By example there's a LQ version of the CNS set (Conspiracy) that you can get there :
viewtopic.php?f=26&t=14680&start=45#p154697

I know some other people have made it for the JOU (Journey into Nyx) in another Forge release past thread and in this very thread you can find the M15 set (Magic 2015) though Forge does not yet have the actual set ingame

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 06 Jul 2014, 01:26
by correioalternativo
horsekateer wrote:Running this version (1.5.21) on a Mac with OSX Mavericks 10.9.3 I haven't been able to download new card images since before Journey Into Nyx. The content downloader says I have 272 LQ Card Pictures to download but when I try to get them it runs through the numbers then says it skipped all of them. Same thing for LQ set pictures. Any idea how I can fix this? Thanks so much!
Maybe this will help:

https://www.mediafire.com/folder/h7xpqq ... 4j8/shared

BNG HQ.zip Size: 25 MB
C13 HQ.zip Size: 80 MB
C13.zip Size: 29 MB
DDM.zip Size: 6 MB
JOU.zip Size: 11 MB
THS.zip Size: 14 MB
V20.zip Size: 891 KB

Sources: http://magiccards.info and viewforum.php?f=15

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 06 Jul 2014, 03:22
by xbon
Urborg Syphon-Mage does not restore your life when effect is used and it successfully deals damage.

Sakura-Tribe Springcaller (not really a bug but a convenience...) You keep getting the mana depletion message even though it wont leave your mana pool til end of turn.

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 06 Jul 2014, 06:51
by Marek14
It seems that Duplicant doesn't work - I exiled Ruric Thar, the Unbowed, but neither creature type, neither P/T changed.

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 06 Jul 2014, 12:08
by Banichi
That warning about having mana and passing your turn is tremendously annoying.
If you think it's really necessary to have, can you at least make an option for it in the preferences section? Given that mana burn is no longer mandatory, and there are cards that allow you to keep mana in your pool (Upwelling), it really just add clicks to a already clicky game.
While I'm whining, please make all dialogues passable with the spacebar, instead of the enter key.

Re: Forge Beta: 07-04-2014 ver 1.5.21

PostPosted: 06 Jul 2014, 12:36
by jureidinim
Hi ,
Is anyone else able to get GAUNTLET mode to work? I still get an error when I try to start that game mode:

Description: Click START for Gauntlet mode (quick gauntlet AND making my own)

ArrayIndexOutOfBoundsException | Open
Code: Select all
Forge Version:    1.5.21-r26540
Operating System: Windows 8.1 6.3 x86
Java Version:     1.7.0_55 Oracle Corporation

java.lang.ArrayIndexOutOfBoundsException: 0
   at forge.deck.DeckgenUtil.getRandomCustomDeck(DeckgenUtil.java:124)
   at forge.screens.home.gauntlet.CSubmenuGauntletQuick.startGame(CSubmenuGauntletQuick.java:119)
   at forge.screens.home.gauntlet.CSubmenuGauntletQuick.access$000(CSubmenuGauntletQuick.java:33)
   at forge.screens.home.gauntlet.CSubmenuGauntletQuick$1.actionPerformed(CSubmenuGauntletQuick.java:38)
   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$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)