It is currently 17 Aug 2025, 06:17
   
Text Size

Bug Reports (snapshot builds)

Post MTG Forge Related Programming Questions Here

Moderators: timmermac, Blacksmith, KrazyTheFox, Agetian, friarsol, CCGHQ Admins

Re: Bug Reports (snapshot builds)

Postby gos » 02 Mar 2012, 22:01

Max mtg wrote:To recreate your decks move all files from res/decks/constructed to res/decks and let deckparser assign some better names
How, exactly, will this recreate Crypt of Agadeem, Budget Version 2 ?
gos
 
Posts: 4369
Joined: 03 Mar 2011, 15:21
Location: Reykjavík, Iceland
Has thanked: 231 times
Been thanked: 232 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 03 Mar 2012, 01:43

Does Azorius Herald work for anyone else? The AI cast it, but neither trigger seemed to hit the stack.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby tafkad » 03 Mar 2012, 05:16

Hi - hey saw your message to post here. The bug I reported with the AI playing morph cards from the grave is still happening (your note said it was fixed), I downloaded 1.2.4-r14471 and tried a draft, first morph creature I killed got replayed from the grave. Thanks again
Attachments
morph bug still.png
tafkad
 
Posts: 43
Joined: 29 Dec 2011, 02:40
Has thanked: 2 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby Sloth » 03 Mar 2012, 07:13

tafkad wrote:Hi - hey saw your message to post here. The bug I reported with the AI playing morph cards from the grave is still happening (your note said it was fixed), I downloaded 1.2.4-r14471 and tried a draft, first morph creature I killed got replayed from the grave. Thanks again
It was fixed in r14472 only minutes after the snapshot release. The beta has it fixed.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Bug Reports (snapshot builds)

Postby Chris H. » 03 Mar 2012, 14:06

Max mtg wrote:@14501
Code: Select all
    public final String getBestFileName() {
        return this.getName().replaceAll("[^-_$#@.{[()]} a-zA-Z0-9]", "");
    }
Its older edition was truncating filenames for decks some time ago.

To recreate your decks move all files from res/decks/constructed to res/decks and let deckparser assign some better names
`
I have what I hope to be a simple question.

Is it possible to have the converter code use the existing file name and deck name while performing the conversion? Do we need to use the getBestFileName() method as part of the conversion process?
User avatar
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: Bug Reports (snapshot builds)

Postby Max mtg » 03 Mar 2012, 17:32

Chris H. wrote:
Max mtg wrote:@14501
Code: Select all
    public final String getBestFileName() {
        return this.getName().replaceAll("[^-_$#@.{[()]} a-zA-Z0-9]", "");
    }
Its older edition was truncating filenames for decks some time ago.

To recreate your decks move all files from res/decks/constructed to res/decks and let deckparser assign some better names
`
I have what I hope to be a simple question.

Is it possible to have the converter code use the existing file name and deck name while performing the conversion? Do we need to use the getBestFileName() method as part of the conversion process?
No and yes. Deckname is preserved. Filename is derived from deckname.
Yes, there must be a match between deck name and filename, because decks are keyed by their name, and at the same moment you add it to the map of decks, it's saved to disk.
So there must be a match between the deck name and filename to store decks. The fuction that derives filename used to trim the deckname to 20 characters and removed spaces and other symbols that could be safely kept.
The new version of it (quoted above) makes much better file names.
To rename files for all those decks (which were not overwritten and lost due to derived filenames collsion) place them into /res/decks folder. Code revision 14501+ will put them back into 'constructed' with better filenames.
Single class for single responsibility.
Max mtg
Programmer
 
Posts: 1997
Joined: 02 Jul 2011, 14:26
Has thanked: 173 times
Been thanked: 334 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 03 Mar 2012, 17:37

Max mtg wrote:To rename files for all those decks (which were not overwritten and lost due to derived filenames collsion) place them into /res/decks folder. Code revision 14501+ will put them back into 'constructed' with better filenames.
We should probably add some collision detection in to make sure two decks with the same name don't overwrite each other as well. It seems like that is still possible, even with the new filenaming scheme.
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby tafkad » 03 Mar 2012, 18:01

Twinstrike should be an instant - plays as a sorcery instead
tafkad
 
Posts: 43
Joined: 29 Dec 2011, 02:40
Has thanked: 2 times
Been thanked: 0 time

Re: Bug Reports (snapshot builds)

Postby Agetian » 03 Mar 2012, 18:04

In the latest SVN (at the moment of writing), the Sealed Deck mode appears to be broken - creating a deck and saving it causes Forge to crash with a NullPointerException exception, and the deck is not saved (and does not appear in the list). Tried with Magic 2012 set, not sure if it's the same for all sets.

EDIT: Apparently, the decks are saved before the crash, but they don't appear in the list until the game is reloaded. At least so it seems to me...
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby friarsol » 04 Mar 2012, 02:45

r14526

Second game of a constructed match

Bug | Open
Detailed error trace:
java.lang.NullPointerException
at forge.control.match.ControlWinLose.startNextRound(ControlWinLose.java:101)
at forge.control.match.ControlWinLose.actionOnContinue(ControlWinLose.java:65)
at forge.control.match.ControlWinLose$1.actionPerformed(ControlWinLose.java:43)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
friarsol
Global Moderator
 
Posts: 7593
Joined: 15 May 2010, 04:20
Has thanked: 243 times
Been thanked: 965 times

Re: Bug Reports (snapshot builds)

Postby Doublestrike » 04 Mar 2012, 04:44

Agetian wrote:In the latest SVN (at the moment of writing), the Sealed Deck mode appears to be broken - creating a deck and saving it causes Forge to crash with a NullPointerException exception, and the deck is not saved (and does not appear in the list). Tried with Magic 2012 set, not sure if it's the same for all sets.

EDIT: Apparently, the decks are saved before the crash, but they don't appear in the list until the game is reloaded. At least so it seems to me...
This is now fixed, but not very well - the deck editor now behaves just a bit differently than it did when I did the rebuild, so exit commands (that is, the update trigger) aren't called as reliably. This will be worked on in time, though. Anyway, problem is fixed for now.

===

@friarsol - just noticed that today, now top of the list. EDIT - fixed.
---
A joke is a very serious thing.
User avatar
Doublestrike
UI Programmer
 
Posts: 715
Joined: 08 Aug 2011, 09:07
Location: Bali
Has thanked: 183 times
Been thanked: 161 times

Re: Bug Reports (snapshot builds)

Postby Doublestrike » 04 Mar 2012, 06:49

I tried to play Unburial Rites from my hand, and it looks like it's being played from flashback (maybe?). Anyway, something's odd there.
---
A joke is a very serious thing.
User avatar
Doublestrike
UI Programmer
 
Posts: 715
Joined: 08 Aug 2011, 09:07
Location: Bali
Has thanked: 183 times
Been thanked: 161 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 04 Mar 2012, 11:41

Latest SVN build crash report: After I played Infinite Hourglass, the game crashed with the following message (after closing it, the message kept reappearing after every action, even if I conceded and started the next round):

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.

For input string: "+X"


Version:
Forge version SVN

OS: Windows Vista Version: 6.0 Architecture: x86

Java Version: 1.6.0_21 Vendor: Sun Microsystems Inc.

Detailed error trace:
java.lang.NumberFormatException: For input string: "+X"
   at java.lang.NumberFormatException.forInputString(Unknown Source)
   at java.lang.Integer.parseInt(Unknown Source)
   at java.lang.Integer.valueOf(Unknown Source)
   at forge.StaticEffects.removeStaticEffect(StaticEffects.java:99)
   at forge.StaticEffects.clearStaticEffects(StaticEffects.java:54)
   at forge.GameAction.checkStaticAbilities(GameAction.java:819)
   at forge.GameAction.checkStateEffects(GameAction.java:885)
   at forge.PhaseHandler.handleBeginPhase(PhaseHandler.java:317)
   at forge.control.input.InputControl.updateInput(InputControl.java:201)
   at forge.GuiInput.update(GuiInput.java:52)
   at java.util.Observable.notifyObservers(Unknown Source)
   at java.util.Observable.notifyObservers(Unknown Source)
   at forge.MyObservable.updateObservers(MyObservable.java:38)
   at forge.PhaseHandler.nextPhase(PhaseHandler.java:583)
   at forge.control.match.ControlMessage$1.actionPerformed(ControlMessage.java:57)
   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$Actions.actionPerformed(Unknown Source)
   at javax.swing.SwingUtilities.notifyAction(Unknown Source)
   at javax.swing.JComponent.processKeyBinding(Unknown Source)
   at javax.swing.JComponent.processKeyBindings(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.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)
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby Sloth » 04 Mar 2012, 11:57

tafkad wrote:Twinstrike should be an instant - plays as a sorcery instead
Fixed! thanks tafkad.

Doublestrike wrote:I tried to play Unburial Rites from my hand, and it looks like it's being played from flashback (maybe?). Anyway, something's odd there.
I can't see anything odd with it. Can you be more specific?

Agetian wrote:Latest SVN build crash report: After I played Infinite Hourglass, the game crashed with the following message (after closing it, the message kept reappearing after every action, even if I conceded and started the next round):
Fixed! Thanks Agetian.
User avatar
Sloth
Programmer
 
Posts: 3498
Joined: 23 Jun 2009, 19:40
Has thanked: 125 times
Been thanked: 507 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 04 Mar 2012, 15:28

A bug related to the latest SVN version: in the deck editor for Sealed mode (which I assume is the same for Draft, but I haven't checked it), the number of Red cards and the number of Green cards are switched around (so, if I have 16 red and 1 green cards, the editor will say that I have 16 green and 1 red cards).

And one more bug: in Sealed Deck mode, the "Loading New Game" overlay will persist after the game is started (so I have to manually click on "X" to close it).
Agetian
Programmer
 
Posts: 3489
Joined: 14 Mar 2011, 05:58
Has thanked: 683 times
Been thanked: 572 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: Google Adsense [Bot] and 28 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 29 users online :: 1 registered, 0 hidden and 28 guests (based on users active over the past 10 minutes)
Most users ever online was 7303 on 15 Jul 2025, 20:46

Users browsing this forum: Google Adsense [Bot] and 28 guests

Login Form