Skip to content

Commit

Permalink
Merge pull request #754 from doug1234/PrismaticRay
Browse files Browse the repository at this point in the history
Added Prismatic Ray
  • Loading branch information
doug1234 authored Feb 6, 2024
2 parents 4611c7d + 61026fb commit eb48ba6
Show file tree
Hide file tree
Showing 10 changed files with 203 additions and 1 deletion.
1 change: 1 addition & 0 deletions tpdata/templeplus/lib/templeplus/constants.py
Original file line number Diff line number Diff line change
Expand Up @@ -3222,6 +3222,7 @@
spell_waves_of_fatigue = 1003
spell_waves_of_exhaustion = 1004
spell_fire_shield_mass = 1005
spell_prismatic_ray = 1006
# Reserved for Sagenlicht 1050-1199
spell_sound_lance = 1050
spell_critical_strike = 1051
Expand Down
1 change: 1 addition & 0 deletions tpdatasrc/tpgamefiles/mes/help/spell_compendium_help.tab
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ TAG_SPELLS_ORB_OF_FIRE TAG_SPELLS TAG_SORCERER_4 TAG_WIZARD_4 TAG_WARMAGE_4 Orb
TAG_SPELLS_ORB_OF_SOUND TAG_SPELLS TAG_SORCERER_4 TAG_WIZARD_4 TAG_WARMAGE_4 Orb of Sound ~Conjuration~[TAG_MAGIC_SCHOOLS_CONJURATION](Creation)[Sound] Level: ~Sorcerer~[TAG_SORCERERS]/~Wizard~[TAG_WIZARDS] 4, ~Warmage~[TAG_WARMAGES] 4 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Close (25 ft. +5 ft./2 levels) Target: One creature Duration: Instantaneous Saving Throw: ~Fortitude~[TAG_FORTITUDE] partial; see text Spell Resistance: No An orb of sound about 3 inches across shoots from your palm at its target, dealing 1d6 points of sonic damage per caster level (maximum 15d6). You must succeed on a ~ranged touch attack~[TAG_TOUCH_ATTACK] to hit your target. In addition, a creature struck by an orb of sound must make a ~Fortitude save~[TAG_FORTITUDE] or be ~deafened~[TAG_DEAFENED] for 1 round.
TAG_SPELLS_PHANTOM_FOE TAG_SPELLS TAG_ASSASSIN_2 TAG_SORCERER_2 TAG_WIZARD_2 Phantom Foe ~Illusion~[TAG_MAGIC_SCHOOLS_ILLUSION](Phantasm)[Mind-Affecting] Level: ~Assassin~[TAG_ASSASSINS] 2, ~Sorcerer~[TAG_SORCERERS]/~Wizard~[TAG_WIZARDS] 2 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Touch Target: One Creature Duration: 1 round/level Saving Throw: ~Will~[TAG_WILL] negates Spell Resistance: No By waving around a tiny pewter figurine and picturing in your mind the figurine attacking the target creature, you complete the spell. You feel a phantasmal force leap from the figurine toward your target. If the target creature fails its saving throw, this spell creates in the subject's mind an illusory double of whichever creature currently threatens it that it deems most dangerous. The form of this phantom foe changes as appropriate whenever the target perceives a different threatening creature more dangerous than the last. This illusory double provides two effects. First, the subject believes it is being ~flanked~[TAG_FLANKED] by the phantom foe and the real creature the foe duplicates. Thus, the duplicated creature is always considered to be flanking the subject in melee. A creature that can't be flanked is immune to this aspect of the spell. Second, the subject of the spell is unable to determine that the phantom foe is not a real threat, and whenever the subject attempts to attack the creature duplicated by the phantom foe, that creature benefits from a 50% miss chance against attacks from the subject of the spell. Because this miss chance comes from the subject's inability to tell the phantom foe from the original, it is rolled separately from any miss chance that applies due to displacement or concealment. Creatures other than the subject cannot see the phantom foe, although they can attempt to guess its location by how the target acts. If the subject is not threatened by any creature at the start of its turn, the spell ends.
TAG_SPELLS_PHANTOM_THREAT TAG_SPELLS TAG_BARD_1 Phantom Threat ~Illusion~[TAG_MAGIC_SCHOOLS_ILLUSION](Phantasm)[Mind-Affecting] Level: ~Bard~[TAG_BARDS] 1 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Close (25 ft. + 5 ft./ 2 levels) Target: One Creature Duration: 1 round/level Saving Throw: ~Will~[TAG_WILL] negates Spell Resistance: Yes Reaching out to your foe's mind, you cause him to feel as though a threat looms close behind no matter which way he turns. You create the sensation in the subject's mind that it is threatened by more foes than it actually faces. Though the subject doesn't actually perceive any additional enemies (and thus doesn't waste any attacks on the phantasm), a creature affected by this spell is considered ~flanked~[TAG_FLANKING], even if not threatened by other creatures. No amount of convincing by others can help the subject of this spell avoid its effect-only a successful ~saving throw~[TAG_SAVING_THROW_DESC] against the spell when initially cast can help the target. A creature that can't be flanked is immune to this spell.
TAG_SPELLS_PRISMATIC_RAY TAG_SPELLS TAG_WIZARD_5 TAG_SORCERER_5 Prismatic Ray ~Evocation~~[TAG_MAGIC_SCHOOLS_EVOCATION] Level: ~Sorcerer~[TAG_SORCERERS] 5 ~Wizard~[TAG_WIZARDS] 5 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Medium (100 ft. + 10 ft./ 2 levels) Target: One Creature Duration: Instantaneous Saving Throw: See Text Spell Resistance: Yes A single beam of brilliantly colored light shoots from your outstretched hand. On a successful ranged touch attack, creatures with 6 Hit Dice or fewer are blinded for 2d4 rounds by the prismatic ray in addition to suffering a randomly determined effect (see the accompanying table). Table
TAG_SPELLS_RAY_OF_DIZZINESS TAG_SPELLS TAG_BARD_3 Ray of Dizziness ~Enchantment~[TAG_MAGIC_SCHOOLS_ENCHANTMENT](Compulsion)[Mind-Affecting] Level: ~Bard~[TAG_BARDS] 3 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Medium (100 ft. +10 ft./level) Effect: Ray Duration: 1 round/level Saving Throw: None Spell Resistance: Yes You release a drab violet ray from your palm. The ray shoots toward your target in a spiraling corkscrew. You strike out at your enemy with a ray that causes intense feelings of vertigo. You must succeed on a ~ranged touch attack~[TAG_TOUCH_ATTACK] with the ray to strike a target. A struck subject experiences strong feelings of vertigo and can take only a ~move action~[TAG_MOVEMENT_ACTION] or a ~standard action~[TAG_STANDARD_ACTION] each round (but not both, and it cannot take a ~full-round~[TAG_FULL_ROUND_ACTION] action).
TAG_SPELLS_RAY_OF_LIGHT TAG_SPELLS TAG_BARD_6 TAG_SORCERER_6 TAG_WIZARD_6 Ray of Light ~Evocation~[TAG_MAGIC_SCHOOLS_EVOCATION][Light] Level: ~Bard~[TAG_BARDS] 6, ~Sorcerer~[TAG_SORCERERS]/~Wizard~[TAG_WIZARDS] 6 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Close (25 ft. +5 ft./2 levels) Effect: Ray Duration: Instantaneous Saving Throw: None Spell Resistance: Yes Your palm emits a ray of light. The ray gives off a soft, continuous glow. You direct a short ray at the eyes of a target. You must succeed on a ranged touch attack with the ray to strike a target. With a successful ranged touch attack, the subject is ~blinded~[TAG_BLINDED] for 1d4 rounds.
TAG_SPELLS_RESIST_ENERGY_MASS TAG_SPELLS TAG_CLERIC_3 TAG_DRUID_3 TAG_SORCERER_4 TAG_WIZARD_4 Resist Energy, Mass ~Abjuration~[TAG_MAGIC_SCHOOLS_ABJURATION] Level: ~Cleric~[TAG_CLERICS] 3, ~Druid~[TAG_DRUIDS] 3, ~Sorcerer~[TAG_SORCERERS]/~Wizard~[TAG_WIZARDS] 4 Components: V, S Casting Time: 1 ~standard action~[TAG_STANDARD_ACTION] Range: Close (25 ft. + 5 ft./2 levels) Targets: One creature/level, no two of which are more than 30 ft. apart Duration: 10 minutes/level Saving Throw: None Spell Resistance: No You call upon the protective energies of magical power, surrounding your subjects in temporarily visible fields of energy. Although the fields fade from view, you can still just barely sense their existence. This spell functions like ~resist energy~[TAG_SPELLS_RESIST_ENERGY], except that it affects all targeted creatures.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

// Added by doug but in the compendium
{1005}{Fire Shield, Mass}
{1006}{Prismatic Ray}

//Additional spells added by Sagenlicht

Expand Down Expand Up @@ -156,6 +157,7 @@
{5795}Vigor {[Conjuration] Fast Healing 2 for 10 +1/level rounds, max 25.}
{5796}Vigor, Greater {[Conjuration] Fast Healing 4 for 10 +1/level rounds, max 35.}
{6005} Fire Shield, Mass {[Evocation] Fire shield for multiple creatures.}
{6006} Prismatic Ray {[Evocation] Ray blinds creatures with 6 Hit Dice or less and produces a random effect.}

{6050} Sound Lance {[Evocation] Projectile of intense sonic energy that deals 1d8/level (max 10d8) sonic damage.}
{6051} Critical Strike {[Divination] Against flanked or dexterity denied foes gain 1d6 damage, +4 to confirm critical hits and weapon is considered to be keen.}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -925,6 +925,12 @@ Range: Close (25ft. + 5ft./2 lvls)
Target: allied creatures, no more than 30' apart
Duration: 1 round/level (D)}

{6006} Prismatic Ray {Ray blinds creatures with 6 Hit Dice or less Hit Dice and produces a random effect on a successful ranged touch attack.
Casting: 1 std action [Evocation, V,S]
Range: Medium (100ft. +10 ft./level)
Area: Ray
Duration: Inst., Save: Yes, SR: Yes}

{6182} Accuracy {For the duration of the spell, the range increment for the affected weapon or weapons is doubled.
School: Transmutation
Casting: 1 action [V,S]
Expand Down Expand Up @@ -1036,3 +1042,4 @@ Casting: 1 action [V,S]
Range: Close (25ft. + 5ft./2 lvls)
Target: One creature
Duration: Inst., Save: Fortitude partial, SR: No}

2 changes: 1 addition & 1 deletion tpdatasrc/tpgamefiles/rules/char_class/class047_warmage.py
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ def GetClassHelpTopic():
2: (spell_blades_of_fire, spell_continual_flame, spell_fire_trap, spell_fireburst, spell_flaming_sphere, spell_ice_knife, spell_melfs_acid_arrow, spell_pyrotechnics, spell_shatter, spell_scorching_ray, spell_whirling_blade),
3: (spell_fire_shield, spell_fireball, spell_flame_arrow, spell_gust_of_wind, spell_ice_storm, spell_lightning_bolt, spell_poison, spell_ring_of_blades, spell_sleet_storm, spell_stinking_cloud),
4: (spell_blast_of_flame, spell_contagion, spell_evards_black_tentacles, spell_orb_of_acid, spell_orb_of_cold, spell_orb_of_electricity, spell_orb_of_fire, spell_orb_of_sound, spell_phantasmal_killer, spell_shout, spell_wall_of_fire),
5: (spell_cloudkill, spell_cone_of_cold, spell_flame_strike, spell_fire_shield_mass, spell_greater_fireburst),
5: (spell_cloudkill, spell_cone_of_cold, spell_flame_strike, spell_fire_shield_mass, spell_greater_fireburst, spell_prismatic_ray),
6: (spell_blade_barrier, spell_chain_lightning, spell_circle_of_death, spell_disintegrate, spell_fire_seeds, spell_otilukes_freezing_sphere, spell_tensers_transformation),
7: (spell_delayed_blast_fireball, spell_earthquake, spell_finger_of_death, spell_fire_storm, spell_mordenkainens_sword, spell_prismatic_spray, spell_sunbeam, ),
8: (spell_horrid_wilting, spell_incendiary_cloud, spell_polar_ray, spell_prismatic_wall, spell_sunburst),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,14 @@ sp-Orb of Cold-proj acid-goo-dribbles perm 1000 Object YPR Sprite flare
sp-Orb of Electricity-proj acid-goo-dribbles perm 1000 Object YPR Sprite flare-big 30 Blend 0 AcidArrow 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?-30 0 0 0 0 5,10 0 0 0 0 0 255,0 176,240,255,255,0 196,248,255,255,0 222,255,255,255,0
sp-Orb of Fire-proj Burning Sphere 1 perm 300 Object Pos Sprite Polar flare-1 15 Add 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,50 0 0?360 0?360 0,30 10,0 0 0 0?360 0 0 0,255,200,150,100,50,0 255 128 64 70
sp-Orb of Fire-proj Burning Sphere 2 perm 1200 Object Pos Sprite Polar fire-sprite 15 Add 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,50 0 0?360 0?360 0,30 5?10 0 0 0?360 0 0 0,100,90,80,70,60,50,40,30,20,10,0 255 128 64 300
sp-Prismatic Ray bang start 15 15 World Sprite flare-big 15 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10?-10 10?-10 10?-10 50?20 0 0 0?360 0 0 255,0 64 64 255,128
sp-Prismatic Ray New Emitter perm 30 Object Pos Sprite World Cartesian flare-1 8 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10?-10 10?-10 10?-10 10?-10 10?-10 10?-10 8,0 0 0 0?360 0 0 0,255,255,255,0 255,0,0 0,255,0 0,0,255
sp-Prismatic Ray ray time perm 45 Object Pos Sprite flare-2 60 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 20,0 0 0 0?360 0 0 0,255,255,255,0 0,0,255 255,0,0 0,255,0
sp-Prismatic Ray New Emitter perm 45 Object Pos Sprite flare-1 120 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 5,0 0 0 0?360 0 0 0,255,255,255,0 0,255,0 0,0,255 255,0,0
sp-Prismatic Ray-Hit New Emitter 15 45 Object Pos Sprite Polar flare-1 120 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?360 0?360 #radius 5,0 0 0 0?360 0 0 0,255,255,255,0 255,0,0 0,255,0 0,0,255
sp-Prismatic Ray-Hit ray time 15 45 Object Pos Sprite Polar flare-2 60 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?360 0?360 #radius 20,0 0 0 0?360 0 0 0,255,255,255,0 0,0,255 255,0,0 0,255,0
sp-Prismatic Ray-Hit New Emitter 15 30 Object Pos Sprite World Polar Cartesian flare-1 8 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 10?-10 10?-10 10?-10 0?360 0?360 #radius 8,0 0 0 0?360 0 0 0,255,255,255,0 0,255,0 0,0,255 255,0,0
sp-Prismatic Ray-Hit bang start 15 15 World Sprite Polar flare-big 15 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?360 0?360 #radius 50?20 0 0 0?360 0 0 255,0 64 64 255,128
sp-Shock and Awe shockwave 40 150 Object YPR Sprite Same as Emitter Polar flare-1 20 Add 0 0 0 0 0 0 0 0 40 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -15?15 -15?15 -15?15 0 0 0 0,650 0 0 0?360 0 0 128,0 15 15 15 1
sp-Veil of Shadow veil perm 150 Object Pos Disc Polar fire-sprite 60 Add 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?360 0?30 1?4 0 0 0?360 0 0 128,0 0 0 0 30
sp-Veil of Shadow veil2 perm 100 Object Pos Sprite Polar fire-sprite 60 Blend 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0?20 0?360 0?30 2,15 0 0 0 0 0 0,150,100,50,0 87?156 0?28 127?255 30
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@

// Added by doug but in the compendium
{1005}{Fire Shield, Mass}
{1006}{Prismatic Ray}

// Additional spells added by Sagenlicht

Expand Down Expand Up @@ -157,6 +158,7 @@
{5795}{Vigor}
{5796}{Vigor, Greater}
{6005}{Fire Shield, Mass}
{6006}{Prismatic Ray}
{6050}{Sound Lance}
{6051}{Critical Strike}
{6052}{Camouflage}
Expand Down Expand Up @@ -307,6 +309,7 @@
{20796}{TAG_SPELLS_VIGOR,_GREATER}

{21005}{TAG_SPELLS_FIRE_SHIELD_MASS}
{21006}{TAG_SPELLS_PRISMATIC_RAY}

{21050}{TAG_SPELLS_SOUND_LANCE}
{21051}{TAG_SPELLS_CRITICAL_STRIKE}
Expand Down
20 changes: 20 additions & 0 deletions tpdatasrc/tpgamefiles/rules/spells/1006 - Prismatic Ray.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
School: Evocation
Level: Sor 5
Level: Wiz 5
Component: V
Component: S
Casting Time: 1 action
Range: Medium
Saving Throw: Yes
Spell Resistance: Yes
Projectile: Yes
flags_Target: Range
inc_flags_Target: Other
exc_flags_Target: Self
exc_flags_Target: Dead
exc_flags_Target: Non-critter
mode_Target: Single
min_Target: 1
max_Target: 1
radius_Target: 0
ai_type: ai_action_offensive
Loading

0 comments on commit eb48ba6

Please sign in to comment.