|
|
| (3 intermediate revisions by 3 users not shown) |
| Line 13: |
Line 13: |
| |level_innate=Epic | | |level_innate=Epic |
| |school=Evocation | | |school=Evocation |
| |descriptor= | | |descriptor=Acid, Cold, Electrical, Fire, Sonic |
| |components=VS | | |components=VS |
| |range=Long | | |range=Long |
| |area=Huge | | |area=Tremendous |
| |duration=Instant | | |duration=Instant |
| |duration_type= | | |duration_type= |
| |save=Reflex 1/2 (DC +5) | | |save=Reflex 1/2 |
| |save_type=R | | |save_type=R |
| |spell_resistance=No | | |spell_resistance=Yes |
| |hostile=Yes | | |hostile=Yes |
| |touch_attack_type= | | |touch_attack_type= |
| Line 33: |
Line 33: |
| |invocation=}} | | |invocation=}} |
| ==Description== | | ==Description== |
| You unleash a massive blast of energy that detonates upon all in the AoE, dealing 10d6 fire, 10d6 acid, 10d6 electrical and 10d6 sonic damage. The Hellball ignores [[Evasion]] and [[Improved Evasion]].
| | A <i>hellball</i> is a massive blast of energy that detonates with a thundering roar. It deals 10d6 points of acid damage, 10d6 points of cold damage, 10d6 points of fire damage, 10d6 points of electricity damage, and 10d6 points of sonic damage to all creatures within the area. Unattended objects also take this damage. The spell is barely controlled, and there is a 5% chance that you also take 10d6 points of damage as you release it. |
|
| |
|
| ==Gameplay notes==
| | You point your finger and determine the range at which the <i>hellball</i> is to detonate. A sun-bright, fist-sized globe of strobing energy streaks forth and, unless it impacts a material body or solid barrier prior to attaining the indicated range, blossoms into an effect described by the rare survivor as "hell on earth." While fast reflexes or magical protection can reduce the damage taken, there is no evading a <i>hellball</i> - the spell ignores the evasion and improved evasion feats. |
| *The in-game description incorrectly states that this spell is subject to spell resistance.
| |
| | |
| *The NWN2 version functions very differently from the NWN1 version. It is possible to restore the spell to its former glory and to fix some bugs along the way. Check the NWN2 toolset for the NWN1 version (X2_S2_HELLBALL) and NWN2 version (nx_s2_hellball).
| |
| | |
| The caster is supposed to take 10d6 negative energy damage upon casting if the switch MODULE_SWITCH_EPIC_SPELLS_HURT_CASTER has been enabled for the module:
| |
| | |
| Module load script (k_mod_load for Mask of Betrayer):
| |
| | |
| <code> | |
| SetModuleSwitch (MODULE_SWITCH_EPIC_SPELLS_HURT_CASTER, TRUE);
| |
| </code> | |
| | |
| nx_s2_hellball:
| |
| | |
| <code>
| |
| if (GetModuleSwitchValue(MODULE_SWITCH_EPIC_SPELLS_HURT_CASTER)) { </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_HIT_SPELL_INFLICT_6), OBJECT_SELF); </code>
| |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(d6(10), DAMAGE_TYPE_NEGATIVE), OBJECT_SELF); }
| |
| </code>
| |
| | |
| | |
| If the spell deals more than 50 damage to a target the target is knocked down:
| |
| | |
| The problem here is the actual damage dealt calculation. Just because the script calculates 120 points damage doesn't mean the target will actually suffer 120 points damage due to various immunities, damage reductions and resistances. The script needs to check the ACTUAL damage dealt by each particular energy type (except negative damage) and then check if total actual damage dealt exceeds 50. GetTotalDamageDealt() or GetDamageDealtByType() can be used for this purpose, but the damage needs to be checked after each particular damage is dealt, because the game engine only remembers last dealt damage. So several loops are required, during the final loop total damage is checked and the target is knocked down (or not, depending on damage amount):
| |
| | |
| | |
| | |
| <code>void CheckKnockdown(int nDamageAcid, int nDamageElectrical, int nDamageFire, int nDamageSonic, int nTotal, int nCurrent) { </code> | |
| | |
| <code>if(nCurrent==DAMAGE_TYPE_ACID) { </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nDamageAcid, nCurrent), OBJECT_SELF); </code>
| |
| | |
| <code>nTotal+=GetDamageDealtByType(nCurrent); </code>
| |
| | |
| <code>nCurrent=DAMAGE_TYPE_ELECTRICAL; } </code>
| |
| | |
| <code>else if(nCurrent==DAMAGE_TYPE_ELECTRICAL) { </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nDamageElectrical, nCurrent), OBJECT_SELF); </code>
| |
| | |
| <code>nTotal+=GetDamageDealtByType(nCurrent); </code>
| |
| | |
| <code>nCurrent=DAMAGE_TYPE_FIRE; } </code>
| |
| <code>else if(nCurrent==DAMAGE_TYPE_FIRE) { </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nDamageFire, nCurrent), OBJECT_SELF); </code>
| |
| | |
| <code>nTotal+=GetDamageDealtByType(nCurrent); </code>
| |
| | |
| <code>nCurrent=DAMAGE_TYPE_SONIC; } </code>
| |
| <code>else { </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectDamage(nDamageSonic, nCurrent),OBJECT_SELF); </code>
| |
| <code>nTotal+=GetDamageDealtByType(nCurrent); </code>
| |
| <code>nCurrent=0; } </code>
| |
| <code>if (!nCurrent) { </code>
| |
| | |
| <code>if(nTotal>50) </code>
| |
| | |
| <code>ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectKnockdown(), OBJECT_SELF,3.0f); </code>
| |
| <code>return; } </code>
| |
| | |
| <code>CheckKnockdown(nDamageAcid, nDamageElectrical,nDamageFire,nDamageSonic,nTotal,nCurrent); }
| |
| </code>
| |
| | |
| The function above is called by the affected targets themselves later in the script:
| |
| | |
| <code>
| |
| DelayCommand(fDelay+0.0f,AssignCommand(oTarget, CheckKnockdown(nDamageAcid,nDamageElectrical,nDamageFire,nDamageSonic,0,DAMAGE_TYPE_ACID)));
| |
| </code>
| |
| | |
| This spell is useful against creatures with resistance to a single element and weakness to other elements (such as [[Red dragon]]s). However, it does less damage against a creature with some level of resistance to all elements. For example, a ring of elemental resistance decreases the total damage by 60, while a ring of universal energy resistance decreases by a whopping 150 (leaving the average damage at a miniscule 25, 10 points less than a fireball cast by a level 10+ caster) If the ring instead gave '''total''' immunity to a single element, the damage would only be decreased by 20%.
| |
| | |
| This spell's utility is decreased on Hardcore mode and Very Difficult mode, mainly due to its large radius which increases the chance of it hitting allies.
| |
| | |
| See also [[epic spell]].
| |
|
| |
|
| | ==Seeds== |
| | Energy |
|
| |
|
| ==Acquisition== | | ==Acquisition== |
| Line 121: |
Line 45: |
| '''Type of feat''': Epic | | '''Type of feat''': Epic |
|
| |
|
| '''Prerequisite''': Ability to cast 9th level spells<sup>1</sup>, [[Spellcraft]] 30 ranks | | '''Prerequisite''': 21st level, Spellcraft 30, the ability to cast 9th level spells or Dark invocations. |
| | |
| '''Classes:''' [[Druid]], [[Wizard]], [[Sorcerer]], [[Spirit Shaman]], [[Warlock]]<sup>2</sup>, [[Arcane Scholar of Candlekeep]], [[Arcane Trickster]], [[Eldritch Knight]], [[Pale Master]], [[Red Wizard]], [[Stormlord]]
| |
| | |
| ====Notes====
| |
| <sup>1</sup> Any level 9 spell qualifies, regardless of class. Any [[Invocation#Dark_invocations|dark invocation]] also qualifies, regardless of its equivalent spell level.
| |
|
| |
|
| <sup>2</sup> This feat may be taken on a Warlock level if and only if the character is able to cast dark invocations. This is because there are actually two feats corresponding to this epic spell: one for warlocks and one for non-warlocks. It should be noted that no character will ever be eligible for both feats due to the character level cap of 30.
| |
| [[Category:Spells]] | | [[Category:Spells]] |
| [[Category:Epic spells]] | | [[Category:Epic spells]] |
| [[Category:Epic feats]] | | [[Category:Epic feats]] |
Description
A hellball is a massive blast of energy that detonates with a thundering roar. It deals 10d6 points of acid damage, 10d6 points of cold damage, 10d6 points of fire damage, 10d6 points of electricity damage, and 10d6 points of sonic damage to all creatures within the area. Unattended objects also take this damage. The spell is barely controlled, and there is a 5% chance that you also take 10d6 points of damage as you release it.
You point your finger and determine the range at which the hellball is to detonate. A sun-bright, fist-sized globe of strobing energy streaks forth and, unless it impacts a material body or solid barrier prior to attaining the indicated range, blossoms into an effect described by the rare survivor as "hell on earth." While fast reflexes or magical protection can reduce the damage taken, there is no evading a hellball - the spell ignores the evasion and improved evasion feats.
Seeds
Energy
Acquisition
To learn this spell, a character must take the feat Epic Spell: Hellball.
Type of feat: Epic
Prerequisite: 21st level, Spellcraft 30, the ability to cast 9th level spells or Dark invocations.