Request Simon: Enemies should drop items after death

Discussion in 'Features' started by Mr.Giang, Apr 18, 2012.

  1. Mr.Giang

    Mr.Giang Level 4: Buzzy Beetle

    In Castlevania, you kill an enemy, sometimes they give you weapons like Holy Water or Axe,... More than that, they sometimes drop the Double/Triple shot when you use the special weapon to kill enemies. I really want this feature in SMBC because of the ? block's randomness
  2. sbq92

    sbq92 Level 9: Spike Top

    This would be interesting, but it would probably need to be somewhat uncommon, perhaps rarer than the large heart. It didn't happen very often in the original game, IIRC.

    I considered another alternative to "fix" the randomness a while back (I think I posted it in the "Small Additions" thread): have at least some of the '?' boxes give predetermined sub-weapons, based on where it is in the world or level. The Castlevania games usually gave you a sub-weapon you would need in a situation coming up, such as providing the Axe just before a flying boss, etc. In SMBC, castle levels could provide the Dagger, because it's the most useful sub-weapon against Bowser (just as an example).
    Rey D likes this.
  3. Nitron_ZX

    Nitron_ZX Level 5: Spiny

    actually, i'm certain this doesn't happen at all, at least in the NES titles. Subweapons were candle drops only, they were never randomized.

    i could go record a video of me killing enemies until I time out a few times if you wish, but I can say with 100% certainty enemies do not drop subweapons/double/triple shots.
  4. TheomanZero

    TheomanZero Level 9: Spike Top

    I'm not sure about Double/Triple Shot, but I'm pretty sure enemies sometimes dropped sub-weapons in Castlevania III at least.
  5. Rey D

    Rey D Level 12: Super Mod

    Hm... I think it's very rare but they do drop sub-weapons and double and triple shot.
    At least they drop whip upgrades for sure.

    Imma check.

    EDIT: Yeah they do! And this code proves it:
    function SpawnItem_WhenEnemyDies: # Is at $1E09A:
    var ai_type = this->ObjectAItype

    if((ai_type < 32 AND ai_type ≠ 11) OR (ai_type ≥ 40))
    if((FrameCounter MOD 16) = 2)
    return this->SpawnSpecialItem();

    if(ai_type = 10 OR ai_type = 19)
    return this->BecomeBonusItem(4); # unconditionally a large heart

    var default_item ≔ 0; # random bonus

    if(ai_type = 3 OR ai_type = 8 OR ai_type = 12 OR ai_type = 14 OR ai_type = 18)
    default_item ≔ 4; # a large heart instead of random bonus
    # (but it can still become a multiplier instead of large heart)

    if( (FrameCounter MOD 8) ≠ 0)
    ai_type ≔ 0x30 # just disappears after a while, no bonus!
    ai_type ≔ 0x31 # will become a bonus item.

    this->BecomeBonusItem(default_item, ai_type);
  6. Scorpion42

    Scorpion42 Level 6: Lakitu

    What language is Castlevania written in?

Share This Page