User Tools

Site Tools


mr:bat_mob

Bat Mob - Code References

Bat

Java Classes

  • Bat.java - Main mob class implementation (com.watabou.pixeldungeon.actors.mobs.Bat)

JSON Configuration

String Resources

English (values/strings_all.xml):

<string name="Bat_Name">vampire bat</string>
<string name="Bat_Name_Objective">vampire bat</string>

Russian (values-ru/strings_all.xml):

<string name="Bat_Name">летучая мышь-вампир</string>
<string name="Bat_Name_Objective">вампира</string>

Lua Scripts

This entity is implemented in Java, no Lua script exists

Entity Mechanics

  • HP: 30 (base) - Set via hp(ht(30)) in constructor
  • Defense Skill: 15 - Set via baseDefenseSkill = 15
  • Attack Skill: 16 - Set via baseAttackSkill = 16
  • Damage: 6-12 - Set via dmgMin = 6 and dmgMax = 12
  • Defense (DR): 4 - Implemented in dr() method
  • EXP for Kill: 7 - Set via expForKill = 7
  • Max Level: 15 - Set via maxLvl = 15
  • Speed: 2.0 (flying, faster than normal) - Set via baseSpeed = 2f
  • Flying: true (immune to ground traps) - Set via flying = true
  • Leech Resistance: true (immune to lifesteal enchantments) - Added via addResistance(Leech.class)
  • Loot: Potion of Healing (12.5% drop chance) - Set via loot(PotionOfHealing.class, 0.125f)
  • Special Ability: Heals for damage dealt on attack (vampiric) - Implemented in attackProc(Char enemy, int damage) method via heal(damage, enemy)

Code Implementation Details

The Bat class extends Mob and implements vampiric behavior:

// In Bat.java constructor
public Bat() {
    hp(ht(30));
    baseDefenseSkill = 15;
    baseAttackSkill  = 16;
    baseSpeed = 2f;
    dmgMin = 6;
    dmgMax = 12;
    expForKill = 7;
    maxLvl = 15;
    flying = true;
    loot(PotionOfHealing.class, 0.125f);
    addResistance( Leech.class );
}
 
// Defense rating
@Override
public int dr() {
    return 4;
}
 
// Vampiric attack - heals bat for damage dealt
@Override
public int attackProc(@NotNull Char enemy, int damage ) {
    heal(damage, enemy);
    return damage;
}

mr/bat_mob.txt · Last modified: by 127.0.0.1