It is currently 26 Apr 2024, 06:48
   
Text Size

[fixed 1st-unsolved 2nd],Cauldron Dance

Report wrong Card behavior to get it fixed.
PLEASE ADD SAVEGAMES TO YOUR TOPIC !

Moderators: BAgate, drool66, Aswan jaguar, gmzombie, stassy, CCGHQ Admins

[fixed 1st-unsolved 2nd],Cauldron Dance

Postby Aswan jaguar » 09 Oct 2013, 14:06

Describe the Bug:
Cauldron Dance 3nd ability to put a creature from hand to battlefield doesn't force you to sacrifice the creature at the end step instead it puts it back to hand like the 2nd ability.

Which card did behave improperly ?
Cauldron Dance 3nd ability

Which update are you using?(date,name)Which type(Duel,Gauntlet,Sealed Deck)
ML3-Onslaught.v2

What exactly should be the correct behavior/interaction ?
Cauldron Dance 3nd ability to put a creature from hand to battlefield forces you to sacrifice the creature at the end step.

Are any other cards possibly affected by this bug ?
Attachments
cauldron dance.rar
(2.25 KiB) Downloaded 212 times
Last edited by Aswan jaguar on 18 Sep 2016, 18:22, edited 4 times in total.
Reason: fixed 1st -unsolved 2nd cast before attackers are declared.
---
Trying to squash some bugs and playtesting.
User avatar
Aswan jaguar
Super Tester Elite
 
Posts: 8078
Joined: 13 May 2010, 12:17
Has thanked: 730 times
Been thanked: 458 times

Re: Cauldron Dance 3nd ability

Postby Aswan jaguar » 09 Oct 2013, 15:09

Cauldron Dance has one more bug as you should be able to cast it also at the beginning of combat phase (before attackers are selected as the original card Jade Statue was activated)and so select the creatures that come in the battlefield to attack at once.
---
Trying to squash some bugs and playtesting.
User avatar
Aswan jaguar
Super Tester Elite
 
Posts: 8078
Joined: 13 May 2010, 12:17
Has thanked: 730 times
Been thanked: 458 times

Re: Cauldron Dance 3nd ability and more

Postby Gargaroz » 09 Oct 2013, 19:19

Fixed the first bug, the second is really troublesome...
----
- Current / medium term task: adjusting the code for making Misdirection and such usable
- Long term task: inserting all the good stuff I left out from the "Golden Years" mod
Gargaroz
Programmer
 
Posts: 7097
Joined: 06 Nov 2009, 11:11
Has thanked: 82 times
Been thanked: 595 times

Re: Cauldron Dance 3nd ability and more

Postby Aswan jaguar » 09 Oct 2013, 19:34

Yes, I do remember we had faced this problem with other cards,too.Maybe Korath can find what the hardcoded Jade Statue uses and can be selected in fact at "Choose Attackers step" maybe because it is thought as a creature in that step?
---
Trying to squash some bugs and playtesting.
User avatar
Aswan jaguar
Super Tester Elite
 
Posts: 8078
Joined: 13 May 2010, 12:17
Has thanked: 730 times
Been thanked: 458 times

Re: Cauldron Dance 3nd ability and more

Postby Korath » 10 Oct 2013, 05:17

Jade Statue just looks like a vanilla TRIGGER_DECLARE_ATTACK response to me.
Code: Select all
int card_jade_statue(int player, int card, event_t event)
{
  card_instance_t* instance = get_card_instance(player, card);

  if (event == EVENT_CAST_SPELL && affect_me(player, card))
    instance->dummy3 = instance->internal_card_id;

  if (event == EVENT_RESOLVE_SPELL)
    {
      instance->state |= STATE_CANNOT_ATTACK|STATE_CANNOT_BLOCK;
      instance->info_slot = -1;
    }

  if ((event == EVENT_ATTACK_LEGALITY || event == EVENT_BLOCK_LEGALITY)
      && affect_me(player, card)
      && !(instance->state & STATE_ATTACKING)
      && !has_mana(player, COLOR_ANY, 2))
    event_result = 1;

  if (((trigger_condition == TRIGGER_DECLARE_ATTACK && current_phase == PHASE_DECLARE_ATTACKERS && reason_for_trigger_controller == current_turn)
       || (trigger_condition == TRIGGER_PAY_TO_BLOCK && current_phase == PHASE_DECLARE_BLOCKERS && reason_for_trigger_controller != current_turn))
      && affect_me(player, card)
      && !instance->eot_toughness
      && !(instance->state & STATE_TAPPED)
      && trigger_cause_controller == player && trigger_cause == card)
    {
      if (!has_mana(player, COLOR_ANY, 2))
        forbid_attack = 1;
      else
        {
          if (event == EVENT_TRIGGER)
            event_result |= RESOLVE_TRIGGER_MANDATORY;
          else if (event == EVENT_RESOLVE_TRIGGER)
            {
              TENTATIVE_put_activated_ability_onto_stack(player, card, EVENT_RESOLVE_ACTIVATION, 0, 0);
              charge_mana(player, 0, 2);
              obliterate_top_card_of_stack();
              if (cancel == 1)  // cancel set by charge_mana(), not obliterate_top_card_of_stack()
                {
                  forbid_attack = 1;
                  cancel = 0;
                }
              else
                {
                  forbid_attack = 0;
                  int iid = create_a_card_type(instance->internal_card_id);
                  if (iid != -1)
                    {
                      cards_data[iid].type |= TYPE_CREATURE;
                      cards_data[iid].power = 3;
                      cards_data[iid].toughness = 6;
                      instance->dummy3 = cardtyp;
                      instance->regen_status |= KEYWORD_RECALC_CHANGE_TYPE;
                      instance->info_slot = instance->internal_card_id;
                    }
                  instance->eot_toughness = 1;
                }
            }
        }
    }

  if (event == EVENT_CHANGE_TYPE
      && !(land_can_be_played & 0x20000)        // second pass of EVENT_CHANGE_TYPE
      && affect_me(player, card)
      && in_play(player, card))
    event_result = instance->dummy3;

  if (trigger_condition == TRIGGER_END_COMBAT
      && affect_me(player, card)
      && reason_for_trigger_controller == player
      && instance->info_slot != -1)
    {
      if (event == EVENT_TRIGGER)
        event_result |= RESOLVE_TRIGGER_MANDATORY;
      else if (event == EVENT_RESOLVE_TRIGGER)
        {
          sub_4A6580(instance->dummy3);
          instance->dummy3 = instance->info_slot;
          instance->info_slot = -1;
          instance->eot_toughness = 0;
        }
    }

  return 0;
}

// releases a created card type?
void sub_4A6580(int iid)
{
  *(int *)&cards_data[iid].id = -1;     // sets ->id and ->reserved2
}
User avatar
Korath
DEVELOPER
 
Posts: 3707
Joined: 02 Jun 2013, 05:57
Has thanked: 496 times
Been thanked: 1106 times

Re: Cauldron Dance 3nd ability and more

Postby Aswan jaguar » 10 Oct 2013, 06:14

- Cauldron Dance Just checked and the only other card we have that can be cast during combat phase is Savage Beating and it was the one that was reported in the past and has the same problem.
---
Trying to squash some bugs and playtesting.
User avatar
Aswan jaguar
Super Tester Elite
 
Posts: 8078
Joined: 13 May 2010, 12:17
Has thanked: 730 times
Been thanked: 458 times


Return to Bug Reports

Who is online

Users browsing this forum: Baidu [Spider] and 78 guests


Who is online

In total there are 79 users online :: 1 registered, 0 hidden and 78 guests (based on users active over the past 10 minutes)
Most users ever online was 4143 on 23 Jan 2024, 08:21

Users browsing this forum: Baidu [Spider] and 78 guests

Login Form