Spell definitions cut from the code.

Note: several things in spell definitions have been changed since these spells
were removed. These things include the spell_desc struct itself and the order
of parameters, the addition of tile enum values to the struct, the changing of
the enums containing SPFLAG_s and SPTYP_s to the enum classes spflag:: and
spschool::, and the removal of some spell schools and flags. These would
therefore need to be carefully updated to the new struct format if these spells
were to be restored.

{
    SPELL_CREATE_NOISE, "Create Noise",
     SPTYP_ENCHANTMENT,
     SPFLAG_NONE,
     1,
     0,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     false,
     true
},

{
    SPELL_SWAP, "Swap",
     SPTYP_TRANSLOCATION,
     SPFLAG_NONE,
     4,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_TWIST, "Twist",
     SPTYP_TRANSLOCATION,
     SPFLAG_DIR_OR_TARGET | SPFLAG_NOT_SELF | SPFLAG_BATTLE,
     1,
     25,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     true,
     false
},

{
    SPELL_FAR_STRIKE, "Far Strike",
     SPTYP_TRANSLOCATION,
     SPFLAG_DIR_OR_TARGET | SPFLAG_NOT_SELF | SPFLAG_BATTLE,
     3,
     100,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     true,
     false
},

{
    SPELL_RESTORE_STRENGTH, "Restore Strength",
     SPTYP_HOLY,
     SPFLAG_RECOVERY | SPFLAG_HELPFUL,
     2,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_RESTORE_INTELLIGENCE, "Restore Intelligence",
     SPTYP_HOLY,
     SPFLAG_RECOVERY | SPFLAG_HELPFUL,
     2,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_RESTORE_DEXTERITY, "Restore Dexterity",
     SPTYP_HOLY,
     SPFLAG_RECOVERY | SPFLAG_HELPFUL,
     2,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_CURE_POISON_I, "Cure Poison",
     SPTYP_HOLY,
     SPFLAG_RECOVERY | SPFLAG_HELPFUL,
     3,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_PURIFICATION, "Purification",
     SPTYP_HOLY,
     SPFLAG_RECOVERY | SPFLAG_HELPFUL,
     5,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_REPEL_UNDEAD, "Repel Undead",
     SPTYP_HOLY,
     SPFLAG_AREA,
     3,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_HOLY_WORD, "Holy Word",
     SPTYP_HOLY,
     SPFLAG_AREA,
     7,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_HEAL_OTHER, "Heal Other",
     SPTYP_HOLY,
     SPFLAG_DIR_OR_TARGET | SPFLAG_HELPFUL | SPFLAG_NOT_SELF,
     3,
     100,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     true,
     true
},

{
    SPELL_BURN, "Burn", // used by wanderers
     SPTYP_FIRE,
     SPFLAG_DIR | SPFLAG_NOT_SELF | SPFLAG_BATTLE,
     1,
     25,
     1, 1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_SUMMON_ANGEL, "Summon Angel",
     SPTYP_HOLY,
     SPFLAG_NONE,
     7,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_PESTILENCE, "Pestilence",
     SPTYP_HOLY,
     SPFLAG_NONE,
     4,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_THUNDERBOLT, "Thunderbolt",
     SPTYP_HOLY | SPTYP_AIR,
     SPFLAG_DIR_OR_TARGET,
     6,         // why is this the only holy spell with a secondary? {dlb}
     200,
     8, 8,
     0,
     NULL,
     true,
     false
}
,

{
    SPELL_FLAME_OF_CLEANSING, "Flame of Cleansing",
     SPTYP_HOLY,
     SPFLAG_DIR_OR_TARGET,
     8,
     200,
     6, 6,
     0,
     NULL,
     true,
     false
},

{
    SPELL_SHINING_LIGHT, "Shining Light",
     SPTYP_HOLY,
     SPFLAG_NONE,
     7,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_SUMMON_DAEVA, "Summon Daeva",
     SPTYP_HOLY,
     SPFLAG_NONE,
     8,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_ABJURATION_II, "Abjuration",
     SPTYP_HOLY,
     SPFLAG_AREA | SPFLAG_NEUTRAL | SPFLAG_ESCAPE,
     4,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_CRUSH, "Crush",
     SPTYP_EARTH,
     SPFLAG_DIR | SPFLAG_NOT_SELF | SPFLAG_DEVEL | SPFLAG_BATTLE,
     1,
     25,
     1, 1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_TOMB_OF_DOROKLOHE, "Tomb of Doroklohe",
     SPTYP_CONJURATION | SPTYP_EARTH, // conj makes more sense than tmig -- bwr
     SPFLAG_CARD,
     7,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
}
,

{
    SPELL_ORB_OF_ELECTROCUTION, "Orb of Electrocution",
     SPTYP_CONJURATION | SPTYP_AIR,
     SPFLAG_DIR_OR_TARGET,
     7,
     200,
     7, 12,
     0,
     NULL,
     true,
     false
},

{
    SPELL_ORB_OF_FRAGMENTATION, "Orb of Fragmentation",
     SPTYP_CONJURATION | SPTYP_EARTH,
     SPFLAG_DIR_OR_TARGET,
     7,
     200,
     5, 5,
     0,
     NULL,
     true,
     false
},

{
    SPELL_ARC, "Arc",
     SPTYP_AIR,
     SPFLAG_DIR | SPFLAG_NOT_SELF | SPFLAG_BATTLE,
     1,
     25,
     1, 1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_BEND, "Bend",
     SPTYP_TRANSLOCATION,
     SPFLAG_DIR | SPFLAG_BATTLE,
     1,
     100,
     1, 1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_ERINGYAS_SURPRISING_BOUQUET, "Eringya's Surprising Bouquet",
     SPTYP_TRANSMIGRATION | SPTYP_EARTH,
     SPFLAG_NONE,
     4,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

    // Removing Air Walk... it's currently broken in a number or ways:
    // - the AC/EV bonus probably means very little to any character
    //   capable of casting a level nine spell
    // - the penalty of dropping inventory is a bit harsh considering
    //   the above
    // - the fire/ice susceptibility doesn't work... the AC/EV bonus
    //   cancel it out (so you'd hardly be wary of them since they
    //   can't really do any damage).
    // - there is no need for another invulnerability spell (which is
    //   what this spell is trying to be), one is more than enough...
    //   let people use necromancy.
    // - there is no need for another air spell... air spells are
    //   already very common (i.e,. this level nine spell occurred in
    //   two books!)

{
    SPELL_AIR_WALK, "Air Walk",
     SPTYP_TRANSMUTATION | SPTYP_AIR,
     SPFLAG_HELPFUL,
     9,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_ROTTING, "Rotting",
     SPTYP_TRANSMUTATION | SPTYP_NECROMANCY,
     SPFLAG_AREA,
     5,
     200,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     false,
     false
},

{
    SPELL_SEMI_CONTROLLED_BLINK, "Semi-Controlled Blink",
     SPTYP_TRANSLOCATION,
     SPFLAG_ESCAPE,
     3,
     100,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DETECT_MAGIC, "Detect Magic",
     SPTYP_DIVINATION,
     SPFLAG_DEVEL,
     1,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_IDENTIFY, "Identify",
     SPTYP_DIVINATION,
     SPFLAG_NONE,
     6,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_REMOVE_CURSE, "Remove Curse",
     SPTYP_ENCHANTMENT,
     SPFLAG_NONE,
     5,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DETECT_CURSE, "Detect Curse",
     SPTYP_DIVINATION,
     SPFLAG_NONE,
     3,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_MAGIC_MAPPING, "Magic Mapping",
     SPTYP_DIVINATION | SPTYP_EARTH,
     SPFLAG_MAPPING,
     4,
     45,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DISRUPT, "Disrupt",
     SPTYP_TRANSMUTATION,
     SPFLAG_DIR_OR_TARGET | SPFLAG_BATTLE | SPFLAG_DEVEL,
     1,
     25,
     7, 7,
     0,
     NULL,
     false,
     false
},

{
    SPELL_POISON_AMMUNITION, "Poison Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_POISON,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     4,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},
{
    SPELL_FLAME_AMMUNITION, "Flame Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_FIRE,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     3,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_FROST_AMMUNITION, "Frost Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_ICE,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     3,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_SHOCKING_AMMUNITION, "Shocking Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_AIR,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     5,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_EXPLODING_AMMUNITION, "Exploding Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_FIRE | SPTYP_AIR,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     5,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_WARP_AMMUNITION, "Warp Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_TRANSLOCATION,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     5,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_REAPING_AMMUNITION, "Reaping Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_NECROMANCY,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     7,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_RETURNING_AMMUNITION, "Returning Ammunition",
     SPTYP_ENCHANTMENT | SPTYP_TRANSLOCATION,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     3,
     0,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_SELECTIVE_AMNESIA, "Selective Amnesia",
     SPTYP_ENCHANTMENT,
     SPFLAG_NONE,
     4,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_BURN_SPELLBOOK, "Burn Spellbook",
    SPTYP_ENCHANTMENT,
    SPFLAG_AREA,
    1,
    200,
    LOS_RADIUS, LOS_RADIUS,
    0,
    NULL,
    false,
    false
},

{
    SPELL_BONE_SHARDS, "Bone Shards",
     SPTYP_NECROMANCY,
     SPFLAG_DIR_OR_TARGET | SPFLAG_CORPSE_VIOLATING,
     3,
     200,
     6, 6,
     0,
     NULL,
     true,
     false
},

{
    SPELL_TUKIMAS_VORPAL_BLADE, "Tukima's Vorpal Blade",
     SPTYP_CHARMS,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     2,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_PORTAL, "Portal",
     SPTYP_TRANSLOCATION,
     SPFLAG_ESCAPE,
     7,
     0,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_TAME_BEASTS, "Tame Beasts",
     SPTYP_HEXES,
     SPFLAG_AREA,
     5,
     200,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_DETECT_TRAPS, "Detect Traps",
     0,
     SPFLAG_MAPPING,
     2,
     50,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DETECT_SECRET_DOORS, "Detect Secret Doors",
     0,
     SPFLAG_NONE,
     1,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_LEVITATION, "Levitation",
     SPTYP_CHARMS | SPTYP_AIR,
     SPFLAG_NONE,
     3,
     150,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_EXTENSION, "Extension",
     SPTYP_CHARMS,
     SPFLAG_NONE,
     5,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DETECT_ITEMS, "Detect Items",
     0,
     SPFLAG_MAPPING,
     2,
     50,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_TUKIMAS_BALL, "Tukima's Ball",
     SPTYP_HEXES,
     SPFLAG_NONE,
     9,
     200,
     -1,-1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_STONEMAIL, "Stonemail",
     SPTYP_CHARMS | SPTYP_EARTH,
     SPFLAG_NONE,
     6,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_DETECT_CREATURES, "Detect Creatures",
     0,
     SPFLAG_MAPPING,
     2,
     60,                        // not 50, note the fuzz
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_RESIST_POISON, "Resist Poison",
     SPTYP_CHARMS | SPTYP_POISON,
     SPFLAG_HELPFUL,
     4,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_ALTER_SELF, "Alter Self",
     SPTYP_TRANSMUTATION,
     SPFLAG_CHAOTIC,
     7,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_MAXWELLS_SILVER_HAMMER, "Maxwell's Silver Hammer",
     SPTYP_CHARMS | SPTYP_EARTH,
     SPFLAG_HELPFUL | SPFLAG_BATTLE,
     2,
     200,
     -1, -1,
     0,
     NULL,
     false,
     true
},

{
    SPELL_SUMMON_GREATER_HOLY, "Summon Greater Holy",
     SPTYP_SUMMONING,
     SPFLAG_MONSTER,
     9,
     0,
     -1, -1,
     0,
     NULL,
     false,
     false
},

{
    SPELL_PROJECTED_NOISE, "Projected Noise",
     SPTYP_HEXES,
     SPFLAG_NONE,
     2,
     0,
     LOS_RADIUS, LOS_RADIUS,
     0,
     NULL,
     false,
     false
},


Spell descriptions cut from the code:

[Cure Poison and Abjuration are duplicates of existing spells and are omitted.]

[Summon Angel, Pestilence, Thunderbolt, Flame of Cleansing, Shining Light, Summon Daeva, Orb of Fragmentation, and Semi-Controlled Blink have no descriptions and are omitted.

%%%%
Create Noise

This spell causes a loud noise to be heard.
%%%%
Swap

This spell allows the caster to swap positions with an adjacent being.
%%%%
Twist

This spell causes a slight spatial distortion around a monster in line of sight of the caster, causing injury.
%%%%
Far Strike

This spell allows the caster to transfer the force of a weapon strike to any target the caster can see. This spell will only deliver the impact of the blow; magical side-effects and enchantments cannot be transferred in this way. The force transferred by this spell has little to do with one's skill with weapons, and more to do with personal strength, translocation skill and magic ability.
%%%%
Restore Strength

This spell restores the physical strength of the caster.
%%%%
Restore Intelligence

This spell restores the intelligence of the caster.
%%%%
Restore Dexterity

This spell restores the dexterity of the caster.
%%%%
Purification

This spell purifies the caster's body, removing poison, disease and certain malign enchantments.
%%%%
Repel Undead

This spell calls on a divine power to repel the unholy.
%%%%
Holy Word

This spell involves the intonation of a word of power which repels and can destroy unholy creatures.
%%%%
Heal Other

This spell heals another creature from a distance.
%%%%
Burn

This spell burns a creature.
%%%%
Crush

This spell crushes a nearby creature with waves of gravitational force.
%%%%
Tomb of Doroklohe

This spell entombs the caster within four walls of rock. These walls will destroy most objects in their way, but their growth is obstructed by the presence of any creature. Beware - only the unwise cast this spell without reliable means of escape.
%%%%
Orb of Electrocution

This spell hurls a crackling orb of electrical energy which explodes with immense force on impact.
%%%%
Arc

This spell zaps at random a nearby creature with a powerful electrical current.
%%%%
Bend

This spell applies a localized spatial distortion to the detriment of some nearby creature.
%%%%
Eringya's Surprising Bouquet

This spell transmutes any wooden items in the caster's grasp into a bouquet of beautiful flowers.
%%%%
Air Walk

This spell transforms the caster's body into an insubstantial cloud. The caster becomes immaterial and nearly immune to physical harm, but is vulnerable to magical fire and ice. While insubstantial the caster is, of course, unable to interact with physical objects (but may still cast spells).
%%%%
Rotting

This spell causes the flesh of all those near the caster to rot. It will affect the living and many of the corporeal undead.
%%%%
Detect Magic

This spell probes one or more items lying nearby for enchantment. An experienced diviner may glean additional information.
%%%%
Detect Curse

This spell alerts the caster to the presence of curses on his or her possessions.
%%%%
Identify

This spell allows the caster to determine the properties of an otherwise inscrutable magic item.
%%%%
Magic Mapping

This spell reveals details about the caster's surroundings.
%%%%
Remove Curse

This spell removes curses from any items which are being used by the caster.
%%%%
Selective Amnesia

This spell allows the caster to selectively erase one spell from memory to recapture the magical energy bound up with it.
%%%%
Tukima's Vorpal Blade

This spell bestows a lethal but temporary sharpness on a sword held by the caster. It will not affect weapons otherwise subject to special enchantments.
%%%%
Bone Shards

This spell uses the bones of a skeleton to dispense a lethal spray of slicing fragments, allowing its caster to dispense with conjurations in favour of necromancy alone to provide a low-level yet very powerful offensive spell. The use of a large and heavy skeleton (by wielding it) amplifies this spell's effect.
%%%%
Tame Beasts

This spell attempts to tame animals in the caster's vicinity. It works best on animals amenable to domestication.
%%%%
Portal

This spell creates a gate allowing long-distance travel in relatively ordinary environments (i.e., the Dungeon only). The portal lasts long enough for the caster and nearby creatures to enter. Casters are never taken past the level limits of the current area.
%%%%
Alter Self

This spell causes aberrations to form in the caster's body, leaving the caster in a weakened state (though it is not fatal in and of itself). It may fail to affect those who are already heavily mutated.
%%%%
Banishment

This spell banishes one creature to the Abyss. This magic cannot be used to relocate the caster.
%%%%
Disrupt

This spell disrupts space around another creature, causing injury.
%%%%
Extension

This spell extends the duration of most spells influencing the caster. Be wary that using it slowly contaminates you with magical energy.

You must know the inner workings of a spell to be able to extend it.
%%%%
Exploding Ammunition

This spell will make ammunition held by the caster extremely unstable. With proper handling, they can still be stored indefinitely, though.
%%%%
Flame Ammunition

This spell will make ammunition held by the caster ignite themselves upon being launched. This flammability lasts until the missile is used, at that point it burns away completely.
%%%%
Fragmentation

This spell creates a concussive explosion within a large body of rock (or other hard material), to the detriment of any who happen to be standing nearby.
%%%%
Frost Ammunition

This spell will freeze ammunition held by the caster. Such missiles will shatter upon use, but won't thaw before that.
%%%%
Poison Ammunition

This spell envenoms missile ammunition held by the caster. The poison is permanent.
%%%%
Reaping Ammunition

This spell will infuse missiles held by the caster with necromantic magic which may create zombies from enemies slain by them. This magic will last as long as the missiles last.
%%%%
Returning Ammunition

This spell will cause the wielded missiles to return to the caster after being fired. This power is permanent.
%%%%
Shocking Ammunition

This spell will electrically charge missiles held by the caster. They will retain the charge even after use.
%%%%
Symbol of Torment

This spell calls on the powers of Hell to cause agonising injury to any living thing in the caster's vicinity. It carries within itself a degree of danger, for any brave enough to invoke it, for the Symbol also affects its caller and indeed will not function if he or she is immune to its terrible effects. Despite its ominous power, this spell is never lethal.
%%%%
Warp Ammunition

This spell will infuse missiles held by the caster with translocational energy. That energy does not dissipate with time.
%%%%
Stonemail

This spell covers the caster with chunky scales of stone, the durability of which depends on his or her skill with Earth magic. These scales can coexist with other forms of armour, but are in and of themselves extremely heavy and cumbersome. The effects of this spell are increased if the caster is in Statue Form.
%%%%
Berserker Rage

This spell sends the caster into a temporary psychotic rage.
%%%%
Resist Poison

This spell protects the caster from exposure to all poisons for a period of time.
%%%%
Teleport Self

This spell teleports the caster to a random location.
%%%%
Maxwell's Silver Hammer

This spell bestows a lethal but temporary gravitic field to a crushing implement held by the caster. It will not affect weapons otherwise subject to special enchantments.
%%%%
Disintegrate

This spell violently rends apart anything in a small volume of space. It can be used to cause severe damage.
%%%%
Tukima's Ball

This spell causes weapons on the ground near the caster to all leap into the air and dance together.
%%%%
Detect Creatures

This spell allows the caster to detect any creatures within a certain radius.
%%%%
Detect Items

This spell detects any items lying about the caster's general vicinity.
%%%%
Detect Secret Doors

This spell is beloved by lazy dungeoneers everywhere, for it can greatly reduce time-consuming searches.
%%%%
Detect Traps

This spell reveals traps in the caster's vicinity.
%%%%
Smiting

This spell smites one creature of the caster's choice.
%%%%
Projected Noise spell

This spell produces a noise emanating from a place of the caster's own choosing.
%%%%
