Bug reports
by ubeefx
Moderators: ubeefx, beholder, melvin, ShawnieBoy, Lodici, CCGHQ Admins
Re: Bug reports
by hong yie » 16 Jul 2014, 04:37
after i read some reference about "Death's Shadow" rules,
i start to think that this card doesn't not need the "if" part. let it reach negative number, as Magic rule does allow it.
consider this condition:
- 1 Bad Moon in play, at 20 life, Death's Shadow arrive
- 1 Platinum Angel in play, at -2 life, Death's Shadow arrive
- 1 Phyrexian Unlife in play. at -2 life, Death's Shadow arrive
Another issue is, Death's Shadow keep its 13/13 while in hand to be used for card such as Cragganwick Cremator. i see in Magarena this power toughness keeps changing while in hand.
Things starts to getting complicated.
i start to think that this card doesn't not need the "if" part. let it reach negative number, as Magic rule does allow it.
consider this condition:
- 1 Bad Moon in play, at 20 life, Death's Shadow arrive
- 1 Platinum Angel in play, at -2 life, Death's Shadow arrive
- 1 Phyrexian Unlife in play. at -2 life, Death's Shadow arrive
Another issue is, Death's Shadow keep its 13/13 while in hand to be used for card such as Cragganwick Cremator. i see in Magarena this power toughness keeps changing while in hand.
Things starts to getting complicated.
-
hong yie - Programmer
- Posts: 216
- Joined: 10 Mar 2013, 06:44
- Location: Jakarta
- Has thanked: 75 times
- Been thanked: 9 times
Re: Bug reports
by melvin » 16 Jul 2014, 06:21
Your right, we can simplify the groovy script.hong yie wrote:after i read some reference about "Death's Shadow" rules,
i start to think that this card doesn't not need the "if" part. let it reach negative number, as Magic rule does allow it.
Another issue is, Death's Shadow keep its 13/13 while in hand to be used for card such as Cragganwick Cremator. i see in Magarena this power toughness keeps changing while in hand.
Things starts to getting complicated.
The second issue is due to use of CDA, Death's Shadows's ability is not a characteristic defining ability. The easiest way to tell is that for cards whose pt is defined by a CDA, you'll see * in the pt box on the card, for example Tarmogoyf.
The correct groovy script is as follows:
- Code: Select all
[
new MagicStatic(MagicLayer.ModPT) {
@Override
public void modPowerToughness(final MagicPermanent source, final MagicPermanent permanent, final MagicPowerToughness pt) {
final int amt = permanent.getController().getLife();
pt.add(-amt, -amt);
}
}
]
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Re: Bug reports
by hong yie » 16 Jul 2014, 06:27
i'm playing version 1.52 from BuildHive, with new load deck menu. the validation check in this new menu seems to trigger the error, but doesn't explain which dec file cause it.melvin wrote:Are you referring to version 1.51?hong yie wrote:i can't continue to run any test with this version now. Thanx
-
hong yie - Programmer
- Posts: 216
- Joined: 10 Mar 2013, 06:44
- Location: Jakarta
- Has thanked: 75 times
- Been thanked: 9 times
Re: Bug reports
by Lodici » 16 Jul 2014, 06:30
Thanks for the feedback. I will look into it and publish an update asap.hong yie wrote:i'm playing version 1.52 from BuildHive, with new load deck menu. the validation check in this new menu seems to trigger the error, but doesn't explain which dec file cause it.melvin wrote:Are you referring to version 1.51?hong yie wrote:i can't continue to run any test with this version now. Thanx
EDIT: This is also related to issue 617 which I am currently working on.
Re: Bug reports
by Lodici » 16 Jul 2014, 07:01
I have just published a fix that will display the deck name and it should not crash out either - it will just skip the invalid deck. Hopefully it will make it into the next 1.52 build.
This is very much a temporary fix since I am currently looking at how to make the handling of invalid decks less brittle so that, for example, you can view (although not play) a deck even if it contains invalid/missing cards -
This is very much a temporary fix since I am currently looking at how to make the handling of invalid decks less brittle so that, for example, you can view (although not play) a deck even if it contains invalid/missing cards -
Re: Bug reports
by hong yie » 16 Jul 2014, 07:03
a very comprehensive solution,Lodici wrote:I have just published a fix that will display the deck name and it should not crash out either - it will just skip the invalid deck. Hopefully it will make it into the next 1.52 build.
This is very much a temporary fix since I am currently looking at how to make the handling of invalid decks less brittle so that, for example, you can view (although not play) a deck even if it contains invalid/missing cards -screenshot.png
as expected from Lodici.
Will continue testing...
-
hong yie - Programmer
- Posts: 216
- Joined: 10 Mar 2013, 06:44
- Location: Jakarta
- Has thanked: 75 times
- Been thanked: 9 times
Re: Bug reports
by PalladiaMors » 17 Jul 2014, 04:05
I've downloaded the 1.52 version of Magarena so that I can play with some of the newly added cards and am really happy trying out again my sooper dooper Mirrodin Block Constructed Death Cloud deck. I've found out that when I have two Greater Harvesters in play Magarena allows me to sacrifice the same permanent to both Harvesters. Unless the rules have changed dramatically since the last time I've played, this shouldn't be possible. I think the deal is that the sacrifice is entering the stack and I'm pretty much certain that sacrifice costs should not enter the stack, the permanent is moved directly to the graveyard as part of the cost and you cannot even respond to it before it gets to the graveyard. Once there you've lost control of it and can't sac it again. Is this correct?
- PalladiaMors
- Posts: 343
- Joined: 12 Jul 2014, 17:40
- Has thanked: 36 times
- Been thanked: 22 times
Re: Bug reports
by melvin » 17 Jul 2014, 05:48
Good find! Thanks for playing the new buildPalladiaMors wrote:I've found out that when I have two Greater Harvesters in play Magarena allows me to sacrifice the same permanent to both Harvesters.
The choice of creature to sacrifice should be made when the trigger resolves and not when it goes onto the stack, fixed in https://code.google.com/p/magarena/sour ... 040962ce10
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Re: Bug reports
by melvin » 20 Jul 2014, 09:13
Thanks for the report, finally got around to it as I was testing a new card that search lands from the library.muppet wrote:Not a bug. A.I. still incapable of finding things when searching 99% of the time. The searching part seems to work but it never actually finds anything e.g. fetch lands stone forge mystic, pretty much any search at all.
Made some fixes that solves this. The bug is caused by the non-cheating AI changing all the cards in the library to a special hidden card with no type as it is not suppose to know what is in the library. This causes search to fail as it cannot find any card of the specific type (land, artifact, etc).
Fixed by making sure we first reveal the cards in the library to the AI before it makes it choice, and hiding it later after the search is completed during the shuffle step.
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Re: Bug reports
by muppet » 21 Jul 2014, 18:33
Ok I grabbed 1.52 mainly to check out the searching which seems to be ok.
A.I. played a Moat I animated an Inkmoth Nexus but it could not attack will repost If I find other flyers can't attack too.
A.I. played a Moat I animated an Inkmoth Nexus but it could not attack will repost If I find other flyers can't attack too.
Re: Bug reports
by ShawnieBoy » 21 Jul 2014, 19:16
Looking at the code, I can't see anything obviously wrong, but able to duplicate not only with permanents that animate, but with non-flying creatures gaining flying.muppet wrote:Ok I grabbed 1.52 mainly to check out the searching which seems to be ok.
A.I. played a Moat I animated an Inkmoth Nexus but it could not attack will repost If I find other flyers can't attack too.
Must be a layering issue. With the animation, it is creating a creature (which doesn't have flying yet as the ability flags haven't been set yet), it gets "can't attack" but doesn't lose it when it gains the flying ability flag.
edit: I'll submit a groovy for the Moat types for now - don't want to potentially mess up all 'lord' abilities. The ability can be viewed more as a conditional change: "If a creature doesn't have flying, it gains 'cannot attack'"
-
ShawnieBoy - Programmer
- Posts: 601
- Joined: 02 Apr 2012, 22:42
- Location: UK
- Has thanked: 80 times
- Been thanked: 50 times
Re: Bug reports
by ShawnieBoy » 21 Jul 2014, 23:47
Actually this is a bit more complicated than I thought...
Even with groovy, I can't get them to work as they should, even working at the game layer after abilities are applied.
Creatures that gain flying by whatever means, are still treated as if they do not have it.
Even with groovy, I can't get them to work as they should, even working at the game layer after abilities are applied.
Creatures that gain flying by whatever means, are still treated as if they do not have it.
-
ShawnieBoy - Programmer
- Posts: 601
- Joined: 02 Apr 2012, 22:42
- Location: UK
- Has thanked: 80 times
- Been thanked: 50 times
Re: Bug reports
by melvin » 22 Jul 2014, 01:54
Fixed in https://code.google.com/p/magarena/sour ... b4787ca28c
by moving Moat's ability to the correct layer (should be Game instead of Ability). I think we can code this as a general rule, ability containing "can't/cannot" should be at the game layer, I'll try to add this to the card script.
@ShawnieBoy: can you test the above fix, it seems to work for me.
by moving Moat's ability to the correct layer (should be Game instead of Ability). I think we can code this as a general rule, ability containing "can't/cannot" should be at the game layer, I'll try to add this to the card script.
@ShawnieBoy: can you test the above fix, it seems to work for me.
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Re: Bug reports
by melvin » 22 Jul 2014, 02:27
Added LordGainCant, finally able to remove all the awkward 'have can't *' in the card scripts and now they also work at the correct layer. https://code.google.com/p/magarena/sour ... afe3d7ea61
-
melvin - AI Programmer
- Posts: 1062
- Joined: 21 Mar 2010, 12:26
- Location: Singapore
- Has thanked: 36 times
- Been thanked: 459 times
Who is online
Users browsing this forum: No registered users and 47 guests