It is currently 09 Nov 2025, 16:34
   
Text Size

Bug Reports (snapshot builds)

Post MTG Forge Related Programming Questions Here

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

Re: Bug Reports (snapshot builds)

Postby Marek14 » 06 Oct 2016, 15:43

Blood-Chin Rager has wrong text (doesn't mention "until end of turn").
Marek14
Tester
 
Posts: 2774
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 303 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 06 Oct 2016, 15:51

-r32286, game hangs (waiting for opponent) at draw spep of AI3 after AI1 put a -1/-1 counter on an Angel Token of mine (not killing it)
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 06 Oct 2016, 15:52

Marek14 wrote:AI attacked my planeswalker and returned the attacker to hand for Ninjutsu of Higure, the Still Wind.
Higure hit me, though it should hit the planeswalker:

702.48c A ninjutsu ability may be activated only while a creature on the battlefield is unblocked (see rule 509.1h). The creature with ninjutsu is put onto the battlefield unblocked. It will be attacking the same player or planeswalker as the creature that was returned to its owner’s hand.
Though this important restriction is not mentioned in the definition of ninjutsu ability for some reason (that only says "tapped and attacking").
should be fixed in r32287.
i just needed to get the previous Attacker from the Returned Card.
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 06 Oct 2016, 21:06

r32287, game jammed, at CL phase, after AI2 killed AI3 with Broodkeeper (dealing Combat DMG)
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

Re: Bug Reports (snapshot builds)

Postby Marek14 » 07 Oct 2016, 10:11

Hypnotic Siren is displayed in the enchantment area, not with creatures.

Korozda Guildmage still has old token wording.
Marek14
Tester
 
Posts: 2774
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 303 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 07 Oct 2016, 10:58

@Marek14:
about the Bestow, it and others did caused massive flickering.
some of them where changed by Agetian.
Probably it did disable some of it total.
(might need still some work)

===
about old token wording. yeah it was not updated yet. (in the forum it is)

there are the oracle changes, do you want to do that? xD
http://yawgatog.com/resources/oracle-changes/cn2-kld/
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 07 Oct 2016, 13:57

game jammed after I killed opponent, at CD Archangel of Thune does not deposit the +1 counter. -r32298.
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

Re: Bug Reports (snapshot builds)

Postby fmartel » 07 Oct 2016, 20:07

game froze when AI triggers Isperia The Inscrutable after defeating another AI -r32298
fmartel
 
Posts: 281
Joined: 31 Dec 2013, 19:27
Location: Québec City
Has thanked: 8 times
Been thanked: 4 times

Re: Bug Reports (snapshot builds)

Postby Marek14 » 09 Oct 2016, 10:17

AI casts Unsummon on Vulturous Zombie. Vulturous Zombie triggers (it shouldn't, because it leaves the battlefield before Unsummon is put into the graveyard), AND it gets a +1/+1 counter while in my hand.
Marek14
Tester
 
Posts: 2774
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 303 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 09 Oct 2016, 18:51

@Marek14: ok i know it has to do something with my triggers, but currently i don't know where and how to fix that.

@all: can someone else look at this too?
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 10 Oct 2016, 08:07

r32319: The "unless" cost on Reality Smasher does not work at all. My spell cast on the AI's Reality Smasher is not countered regardless of whether I discard a card or not (or even have no cards in hand at all).

Similar unless cost does not work on other cards too, for example, Diffusion Sliver or Frost Titan (you can choose not to pay {2} and the spell is not countered anyway).

A rather baffling, but serious issue, looks like it may affect a lot of these "unless" costs. I tried tracing through handleUnlessCost but didn't get any conclusive results as to why this is happening 'cause debugging in NetBeans sort of glitches when the player is to be provided with a way to input the cost payment... :(

EDIT: If it helps, it looks like getInstanceFromSpellAbility can't find the relevant instance of the ability on the stack at CounterEffect.java:107. In particular, the check at MagicStack.java:783 fails when testing the proper ability against the proper stack instance. It looks like SpellAbilityStackInstance::compareToSpellAbility may be broken, it's trying to compare the spell ability to the spell ability on the stack by comparing their targets, but it looks like the spell ability itself (the one compared and not the one on the stack) has no targets, thus the check always fails. Not sure how to best approach fixing this. Help is welcome.

EDIT 2: In continuation of my investigation, adding this code to getInstanceFromSpellAbility as an alternative comparison of sa to si solves the problem, but it's a very "deep-going" change with lots of possible implications (the routine is called from many different places) and I'm not sure if comparing by spell ID is always a good idea, so not sure if this is a good fix (since this type of test does not compare the absence/presence of targets in the SA/SI):
Code: Select all
            if (sa.getId() == si.getSpellAbility(false).getId()) {
                return si;
            }
EDIT 3: I committed an experimental "demo" patch in r32321-32322 that implements an additional function comparing SI to SA by their ID and using that for the purposes of CounterEffect, which fixes the above-mentioned cards seemingly without breaking the basic counterspell effect. However, the ID-based comparison definitely doesn't work for *everything*, I tried it as a global change for getInstanceFromSpellAbility and it breaks quite a number of things (for example, cards like Brutal Expulsion stop working altogether). Therefore, either something else has to be done here, or this type of solution works only for a certain limited range of things... At any rate, additional input and help is welcome here!

- Agetian
Last edited by Agetian on 10 Oct 2016, 12:32, edited 9 times in total.
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby Marek14 » 10 Oct 2016, 08:35

Silumgar's Scorn shows its additional cost twice (plus option to combine both).

Melek, Izzet Paragon doesn't let me play Traumatize from the top of my library.
Marek14
Tester
 
Posts: 2774
Joined: 07 Jun 2008, 07:54
Has thanked: 0 time
Been thanked: 303 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 10 Oct 2016, 11:46

Marek14 wrote:AI casts Unsummon on Vulturous Zombie. Vulturous Zombie triggers (it shouldn't, because it leaves the battlefield before Unsummon is put into the graveyard), AND it gets a +1/+1 counter while in my hand.
i think i found it.

i added a resetActiveTriggers into MagicStack.removeCardFromStack.

i don't know if it has other side effects, feel free to check that out.
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

Re: Bug Reports (snapshot builds)

Postby Agetian » 11 Oct 2016, 15:45

Some more trigger shenanigans (confirming a bug from the Android thread as universally applicable): as of r32329, Finest Hour's trigger that untaps an attacking creature and gives an additional combat phase does not work. It looks like there's something wrong with processing the "FirstCombat$ True" condition...

EDIT: It looks like this can potentially be fixed by tweaking the condition check routine isFirstCombat(), which expects combat phases to be counted from 1 upwards but it looks like the way they are handled in the PhaseHandler, the first combat phase is actually going to be represented by 0, the second one with 1, etc. I'm not entirely sure about this, please let me know if this breaks something (and if you have better advice as to how to handle this, it'd be great! :)). I'm a little wary of this current fix since now both isFirstCombat and isPreCombatMain return true with the same condition (num combats == 0). I checked the relevant code where these methods are used and they both seem to make sense now, but you never know. :/

- Agetian
Agetian
Programmer
 
Posts: 3490
Joined: 14 Mar 2011, 05:58
Has thanked: 684 times
Been thanked: 572 times

Re: Bug Reports (snapshot builds)

Postby Hanmac » 11 Oct 2016, 16:49

i reset your change and fixed it correct i seems.

the problem was: with how the Active Triggers are now,
it was not active the moment the Attack Trigger was checked.

i added a "game.getTriggerHandler().resetActiveTriggers();" after "nCombatsThisTurn++"

now the active Trigger are reset, and now isFirstCombat is True and makes the Trigger active, and if you attack it does trigger as it should.
Hanmac
 
Posts: 954
Joined: 06 May 2013, 18:44
Has thanked: 229 times
Been thanked: 158 times

PreviousNext

Return to Developer's Corner

Who is online

Users browsing this forum: No registered users and 79 guests

Main Menu

User Menu

Our Partners


Who is online

In total there are 79 users online :: 0 registered, 0 hidden and 79 guests (based on users active over the past 10 minutes)
Most users ever online was 9298 on 10 Oct 2025, 12:54

Users browsing this forum: No registered users and 79 guests

Login Form