Page 1 of 1

[fixed]Animated Lands + Enchantment Creatures - Bestow

PostPosted: 25 Mar 2014, 20:39
by BAgate
Describe the Bug:
Enchant Creatures stay on animated lands after they stop being creatures. Normal auras work fine now.
Enchantment Creatures with Bestow when played as auras stay on animated lands after the lands stop being creatures.

Which card did behave improperly ?
Blinkmoth Nexus

Which update are you using?(date,name)Which type(Duel,Gauntlet,Sealed Deck)
2014/02/18: Born of the Gods v2 - DUEL

What exactly should be the correct behavior/interaction ?
Enchantments should fall off when target is no longer valid.

Are any other cards possibly affected by this bug ?
Any animated land

Re: Animated Lands + enchantments

PostPosted: 25 Mar 2014, 22:43
by Korath
I'd be very surprised if Mishra's Factory wasn't broken in the other direction, getting rid of more auras than it should.

The way to fix this is to
  1. Get rid of the special handling for protection from color that's in some exe cards (but not even all of the original Microprose ones); most of them go through make_colored_auras_fall_off() at 0x4ca500;
  2. Add SUBTYPE_ENCHANT_CREATURE, SUBTYPE_ENCHANT_CREATURE_OR_LAND, SUBTYPE_ENCHANT_MOUNTAIN_YOU_CONTROL, etc. subtypes to all the aura;
  3. Check protection and the legality of the enchant subtypes in recalculate_all_cards_in_play(), where EVENT_STATIC_EFFECTS is dispatched.

Re: [confirmed]Animated Lands + Enchantment Creatures - Best

PostPosted: 12 Mar 2023, 09:14
by Aswan jaguar
This works fine for normal auras now but for Enchantment Creatures with Bestow when played as auras, they stay on animated lands even after the lands stop being creatures.

generic_creature_with_bestow() doesn't change them to creature when animated lands stop being animated and stay attached.
While new_generic_creature_with_bestow() change's them to creature when animated lands stop being animated but still stays attached. You can see it gained back it's p/t and is treated by AI as a creature when AI considers to attack. But can't be selected to attack or block at least by human(I didn't test AI).

Re: [confirmed]Animated Lands + Enchantment Creatures - Best

PostPosted: 13 Mar 2023, 04:57
by drool66
While new_generic_creature_with_bestow() change's them to creature when animated lands stop being animated but still stays attached. You can see it gained back it's p/t and is treated by AI as a creature when AI considers to attack.
Maybe could be fixed in equipments.c::is_displayed_as_attached(), but more likely the conditions need to be changed at its call for one or more of the calls to it.
But can't be selected to attack or block at least by human(I didn't test AI).
Fixed, unpushed

EDIT: All fixed

Re: [fixed]Animated Lands + Enchantment Creatures - Bestow

PostPosted: 01 May 2023, 19:41
by drool66
Fixed in dd8ce4a

Re: [fixed]Animated Lands + Enchantment Creatures - Bestow

PostPosted: 06 May 2023, 13:21
by Aswan jaguar
Cards with bestow now when cast as auras go to the graveyard when they become unattached when the creature they enchant dies, leaves the battlefield or for any reason if they become unattached but not get destroyed, bounced etc them selves. They should become creatures like when they unattach if the creature is no longer a creature which has been fixed.

Also I don't know if it is because above is broken but if you cast a bestow card as an aura and it's target is no longer there when it resolves although it enters correctly as a creature it dumps an error.

Re: [new bug]Animated Lands + Enchantment Creatures - Bestow

PostPosted: 21 May 2023, 05:29
by drool66
Fixed in bf59190 - they were dying to destroy_attached_auras_and_obliterate_card() because they actually had SUBTYPE_AURA now. I added a janky but necessary exception.

EDIT: hash info