====== mr:dash_spell ====== Machine-readable reference page for Dash spell in Remixed Dungeon. ==== Lua Implementation ==== **Script File:** * File: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua|Dash.lua]] * Path: scripts/spells/Dash.lua * Entity Kind: DashSpell * Magic Affinity: Combat ==== Spell Properties ==== **Basic Stats:** * Magic Affinity: Combat * Targeting Type: cell * Level: 3 * Mana Cost: 10 * Cooldown: 30 turns * Cast Time: 0.5 turns **Lua Definition:** ```lua desc = function() return { name = "DashSpell", magicAffinity = "Combat", targetingType = "cell", level = 3, spellCost = 10, cooldown = 30, castTime = 0.5, -- ... } end ``` ==== Effects ==== **Primary Effects:** * Dash towards specified direction * Collide with enemies during dash * Deal damage to collided enemies * Apply maim effect to targets * Push enemies aside * Root enemies in place **Cast Function:** ```lua castOnCell = function(caster, cell) -- Dash implementation -- Damage calculation -- Push mechanics -- Root application end ``` ==== Damage Calculation ==== **Damage Formula:** * Base damage from caster stats * Modified by combat affinity * Scales with spell level **Implementation:** * File: Dash.lua lines 52-63 * Uses caster attack stats * Applies combat affinity bonuses ==== Push Mechanics ==== **Push Implementation:** * File: Dash.lua lines 34-46 * Pushes enemies in dash path * Distance based on spell power * Can push into walls/obstacles ==== String Resources ==== **English (values/strings_all.xml):** * DashSpell_Name - Spell name * DashSpell_Info - Spell description * DashSpell_Target - Targeting text **Russian (values-ru/strings_all.xml):** * DashSpell_Name - Russian spell name * DashSpell_Info - Russian description ==== Usage Patterns ==== **Offensive Applications:** * Close distance with ranged enemies * Deal damage while moving * Disrupt enemy formations **Defensive Applications:** * Escape dangerous situations * Reposition in combat * Avoid area effects **Utility Applications:** * Quick traversal of corridors * Reach distant cells * Bypass obstacles ==== Class Compatibility ==== **Primary Classes:** * Classes with Combat affinity * Warrior class variants * Fighter archetypes **Access Methods:** * Class spell list * Spell scrolls * Mod-dependent acquisition ==== Cooldown Management ==== **Cooldown:** 30 turns * Relatively short for mobility spell * Allows frequent repositioning * Strategic timing required **Cast Time:** 0.5 turns * Quick cast * Minimal vulnerability during casting * Can be used in combat ==== Related Spells ==== **Combat Affinity Spells:** * [[mr:ignite_spell|mr:ignite_spell]] - Fire damage spell * [[mr:lightning_bolt_spell|mr:lightning_bolt_spell]] - Lightning damage * [[mr:magic_arrow_spell|mr:magic_arrow_spell]] - Direct damage **Mobility Spells:** * mr:haste_spell - Speed enhancement * mr:blink_spell - Teleportation ==== Wiki Pages ==== **English:** * [[en:rpd:dash_spell|Dash Spell]] - Main wiki page **Russian:** * [[ru:rpd:dash_spell|Рывок]] - Russian wiki page ==== Code References ==== * Main implementation: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua|Dash.lua]] * Spell description: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua#L11-L18|Dash.lua:desc()]] * Cast function: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua#L20-L65|Dash.lua:castOnCell()]] * Damage calculation: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua#L52-L63|Dash.lua:damage]] * Push mechanics: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/assets/scripts/spells/Dash.lua#L34-L46|Dash.lua:push]] * String resources: [[https://github.com/NYRDS/remixed-dungeon/blob/master/RemixedDungeon/src/main/res/values/strings_all.xml#L2251-L2254|strings_all.xml:DashSpell]] {{tag> mr spells combat dash mobility reference machine-readable}}