User Tools

Site Tools


mr:dark_sacrifice_spell

Dark Sacrifice Spell - Code References

Dark Sacrifice Spell

Lua Script Implementation

Script Details:

  • File: scripts/spells/DarkSacrifice.lua
  • Type: Spell (Necromancy affinity)
  • Targeting: Character targeting
  • Level requirement: 3
  • Mana cost: 3
  • Cast time: 0.5 seconds

Spell Mechanics (from Lua code):

return spell.init{
    desc  = function ()
        return {
            image         = 1,
            imageFile     = "spellsIcons/necromancy.png",
            name          = "DarkSacrifice_Name",
            info          = "DarkSacrifice_Info",
            magicAffinity = "Necromancy",
            targetingType = "char",
            level         = 3,
            spellCost     = 3,
            castTime      = 0.5
        }
    end,
    castOnChar = function(self, spell, caster, sacrifice)
        -- Sacrifices a owned minion to create liquid flame explosion
        -- Explosion damage based on minion HP and caster skill level
    end
}

Behavior:

  • Targets a character (must be owned by the caster)
  • Sacrifices the targeted minion
  • Creates a Liquid Flame blob at the sacrifice location
  • Explosion damage scales with: sacrifice:hp() * caster:skillLevel()
  • Plays cursed sound effect on successful sacrifice
  • Shows shadow particle curse effect on sacrifice sprite

String Resources

English (values/strings_all.xml):

<string name="DarkSacrifice_Name">Dark Sacrifice</string>
<string name="DarkSacrifice_Info">Sacrifice your loyal minion to cause an explosion. The area covered by the explosion will depend on the remaining health of the servant and your skill level.</string>
<string name="DarkSacrifice_Ok">My life is yours!</string>
<string name="DarkSacrifice_Resist">You have no power over me</string>
<string name="DarkSacrifice_Hint">Choose your loyal servant to sacrifice!</string>

Russian (values-ru/strings_all.xml):

<string name="DarkSacrifice_Name">Тёмная жертва</string>
<string name="DarkSacrifice_Info">Пожертвуйте своим верным прислужником, чтобы вызвать взрыв. Площадь, охваченная взрывом, будет зависеть от оставшегося здоровья слуги и вашего уровня мастерства.</string>
<string name="DarkSacrifice_Ok">Моя жизнь принадлежит тебе!</string>
<string name="DarkSacrifice_Resist">Ты не имеешь власти надо мной</string>
<string name="DarkSacrifice_Hint">Выберите верного слугу для жертвоприношения!</string>

Other Languages:

  • German (values-de): Dunkle Opferung
  • Ukrainian (values-uk): Темна жертва
  • Greek (values-el): Σκοτεινή θυσία
  • Indonesian (values-in): Pengorbanan Gelap
  • Spell base class: spell.lua
  • Common classes: commonClasses.lua
  • Liquid Flame blob: Used for explosion effect
  • Sound effect: snd_cursed
  • Particle effect: RPD.Sfx.ShadowParticle.CURSE

Game Mechanics References

mr/dark_sacrifice_spell.txt · Last modified: by 127.0.0.1