This will give you an idea of what the system is capable of... (read it all, it's worth reading)
(Yes that really is the start date of this project)
/////////////////////////////////////////////////////////////////////////////////////////////////
// gen_spell_config
/////////////////////////////////////////////////////////////////////////////////////
// Created By: Genisys / Guile
// Created On: 4/21/11
////////////////////////////////////////////////////////////////////////////
/*
This script will control ALL Spells that utilize this include!
I built this config for greater control over ALL Spells without
requiring the builder to edit & recompile all the spell script individuallly!
This is a very powerful include script, though it only effects the
applicable spells, as not All spells were editable, as there
was not a need to edit all spells.
SPECIAL NOTE: If you want to effect Shifter's DC by adding their druid class
you will need to open the script (x2_inc_shifter) and EVERYWHERE it reads:
int bAddDruidLevels = FALSE (change it to) int bAddDruidLevels = TRUE
This script is the ONLY way you can modify DC for shifters!
You can raise the default DCs if you like (like so)
const int SHIFTER_DC_HARD = 4; (change to) const int SHIFTER_DC_HARD = 8;
etc. (NOTE: Most Shifter Special (spell like) Abilities have been altered)
(some will use the Caster Level Settings below for DURATION ONLY!, NOT DC!)
*/
///////////////////////////////////////////////////////////////////////////
// #### SETTINGS & OPTIONS ######
///////////////////////////////////////////////////////////////////////////
////////////////EPIC DC BONUS OPTION SETTING/////////////////////////////////
/*
The constant below is the # of levels a player must have over level 20
(caster levels) to gain a + 1 bonus to the spell's Saving Throw
Difficulty class (DC) they are casting. (This system is on most spells)
(ie. +2 at caster level 26 if the # = 3) Recommended settings are 2 to 6.
Basically the # you enter is how many caster levels the PC needs over level
20 to get a +1 bonus. This script has been tested thoroughly.
Set this to 60 To turn it Off
::WARNING:: DO NOT SET THIS TO 0!!!
*/
////////////////////////////////////////////////////////////////////////////
// EPIC DC CONTROL For PC's ONLY:
// Set this to the # of levels they need (above 20) get get a +1 DC Caster Bonus
// e.g. 3 = +1 / 3 level above 20 Caster level
// (ie. @ eDC = 3; ~ level 38 = + 6 Epic DC Bonus) (60 = OFF)
const int PC_DC_BONUS_PER_LEVEL = 3;
// Set this to FALSE if you DO NOT want to use Epic DC Bonuses for PCs!
const int USE_EPIC_DC_BONUS_FOR_PC = TRUE; // Default = TRUE; (Use Epic DC Bonuses for PCs)
// Set this to FALSE if you DO NOT Want to use True Caster Level
// This setting uses ALL Caster class to combine the total of the Caster Level
// This also includes Pale Master & Red Dragon Disciple, Shifter, Arcane Archer
// Ranger / Palading & Bard classes also count towards total caster levels!
const int USE_ALL_CASTING_classES_FOR_CASTER_LEVEL = TRUE;
///////////////////////////////////////////////////////////////////////////
// EPIC DC CONTROL For Monsters &/or NPCs ONLY:
const int NPC_MONST_DC_BONUS_PER_LEVEL = 3;
//ie. 3 = + 1 / 3 levels over level 20 (caster levels)
// (ie. @ eDC = 3; ~ level 38 = + 6 Epic DC Bonus) (60 = OFF)
//Set this to FALSE if you DO NOT want to use Epic DC Bonuses for NPC & Monsters!
const int USE_EPIC_NPC_MON_DC_BONUS = TRUE; // Default = TRUE;
////////////////////////////////////////////////////////////////////////////
// Additional DC Bonus For DMs (Possessing a Creature Or Not)
// Set this to the DC Bonus you want ALL DMs to recieve while casting..
// When a DM Possesses a Creature the DC will be the Caster Level of the
// Creature Plus the bonus you apply below!
// Naturally if you set this to 60 or so The Target will always fail it's Saving Throw!
const int DM_DC_BONUS_TO_SPELLS = 20; //Default = + 20 DC (Base + 20 DC)
// Set this to FALSE if you DO NOT want DMs to get a DC Bonus...
const int USE_DM_DC_BONUS = TRUE; //Default = TRUE; (Use DM DC Bonus)
////////////////////////////////////////////////////////////////////////////
//OTHER CONTROL SETTINGS:
//Set this to the MAX AC Bonus a Spell Can Grant!
const int MAX_SPELL_AC_BONUS = 6; //Default = 6; (Spell can give up to 6 AC!)
//Set this to the MAX AB / EB Weapon Bonus a Spell Can Grant!
const int MAX_WEAPON_BONUS = 8; //Default = 8; (+8 Attack or Enchantment Bonus)
//Set this to the Bonus or Penalty Healing Spells Will Achieve
// 1.0; = Standard / 2.0; = Double / 0.50; = 1/2 Normal / 0.25; = 25% of Normal / etc!
const float HEALING_SPELL_ADJUSTMENT = 1.0; // Default = 1.0 (Standard Healing)
////////////////////////////////////////////////////////////////////////////////
// Spell Caps (Adjust Caps to Limit or Increase Maximum Spell Cast Level)
// Set this to TRUE if you want to use Custom Spell Level Caps
// Basically you will set the Max Level for All Spells in that range
// e.g. if you use this system and set SPELL_CAP_LEVEL_0_3 = 20, then..
// All spells cast from level 0 - 3 would be capped at level 20 Max Level
// If this is set to FALSE the default bioware caps will be used (if any exist!)
// Some spells DO NOT have a CAP, and if it has none, then I did NOT place
// a custom cap in the spell, meaning you CANNOT control spells that are NOT capped by default
const int USE_CUSTOM_SPELL_CAPS = FALSE; // Default = FALSE;(NO Custom Lvl Caps)
// Set this to the Max Level Possible For Spells Level 0 - 3
const int SPELL_CAP_LEVEL_0_3 = 15; //Default = 15; (Max Spell Level = 15)
// Set This to Max Level Possible For Spells Level 4 - 5
const int SPELL_CAP_LEVEL_4_5 = 20; // Deafult = 20; (Max Spell Level = 20)
// Set This to Max Level Possible For Spells Level 6 - 7
const int SPELL_CAP_LEVEL_6_7 = 25; // Deafult = 25; (Max Spell Level = 25)
// Set This to Max Level Possible For Spells Level 8 - 9
const int SPELL_CAP_LEVEL_8_9 = 30; // Deafult = 30; (Max Spell Level = 30)
////////////////////////////////////////////////////////////////////////////////
// Additional Damage Bonuses
//Set this to TRUE if you want to use Additional Damage Bonuses
const int USE_DAMAGE_BONUSES = FALSE; // Default = FALSE; (NO Epic Dmg Bonuses)
////////////////////////////////////////////////////////////////////////////////
// IMPORTANT NOTES ON SETTINGS BELOW:
// If you set any of the settings below to 1 the bonus will be 0!
// Because some builders may only want to Alter Certain Levels
// I set the default to 1 which means No Bonus Is Given!
//////////////////////////////////////////////////////////////////////////////
// #### WARNING #### DO NOT Set Any of the Settings Below to 0!!!!
//////////////////////////////////////////////////////////////////////////////
// Set this to any Bonus Damage you want EVOCATION Spells to deal / Level...
// This damage & the ones below are in addition to normal damage!!!!
// ### WARNING ### USE WITH CAUTION: This effects all damage spells by school
// ### DO NOT SET THIS TO 0 ### Or Spells will deal NO DAMAGE (An Option though)
// NOTE: All spells which are not Necromancy or Conjuration fall into this group!
const int EVOCATION_DAMAGE_BONUS_PER_LEVEL = 2; // Default = 2; (2 Dmg / Level)
// Set this to any Bonus Damage you want NECROMANCY Spells to deal / Level...
const int NECROMANCY_DAMAGE_BONUS_PER_LEVEL = 2; // Default = 2; (2 Dmg / Level)
// Set this to any Bonus Damage you want CONJURATION Spells to deal / Level...
const int CONJURATION_DAMAGE_BONUS_PER_LEVEL = 2; // Default = 2; (2 Dmg / Level)
///////////////////////////////////////////////////////////////////////////////
//Controls for Specific Spells
///////////////////////////////////////////////////////////////////////////////
//--------------------------------------------------------------------------
// Implosion is, by far, one of the most powerful & oftenly abused spells
// So to eleviate the abuse & power (OPTIONAL) you can use this
// Set this to TRUE if you wish to Do Damage instead of instantly kill targets
const int IMPLOSION_DEALS_DAMAGE = FALSE; //Default = FALSE (Run spell normally)
// Set this to the Number of d8 Dice to be used (regardless of level!)
// Obviously those who fail their save are going to die if they have low hit points!
// SET THIS TO 0 if you want to use the Caster's Level X d8 (e.g. Max = 40th level!)
// For example if you set this to (50) (50d8 would deal on average 150 - 300 dmg!)
const int IMPLOSION_NUM_DMG_DICE = 30; // Default = 20; (20d8 dice!)
// Change this to the constant of the Saving Throw type the spell will use
// by default SAVING_THROW_TYPE_DEATH is used (though you can change this!)
// NOTE: This can make the spell more powerful (if you change the Save Type!)
// Optionally use (SAVING_THROW_TYPE_NONE) to do a generic Save Check
const int IMPLOSION_SAVE_CONST = SAVING_THROW_TYPE_DEATH; //(Default bioware)
// -----------------------------------------------------------------------
// Harm is, by far, one of the most powerful Cleric Spells, as it only checks
// the targets spell resistance, if they fail they are reduced to 1 life
// UNLESS they have Damage Immunity to Negative Damage, so I made a custom control
// Set this to the TRUE if you want to use a Custom Control for harm
const int USE_CUSTOM_HARM_SPELL = FALSE; //Default = FALSE (Juse use Original Spell)
// Set this to the Percent of Damage you want the spell to take (from current HP)
// So if you set this to 0.8 it would take 80% of the Current HP of the target
// if you set this to 0.5 it would take 50% of the Target's Current Hit Points
// This custom setting will requires the PC to cast multiple times to place the
// target near death (0.5 would require 3-4 castings!)
// *** WARNING *** DO NOT SET THIS ABOVE 1.0 !!! (It may crash your game!)
const float HARM_DMG_PERCENT = 1.0; //Default = 1.0 (Current HP - 1)
//--------------------------------------------------------------------------
// Set this to the BASE SR you want the Spell Resistance (spell) to use
// By default the Spell (Spell Resistance) has a base 12 SR + Caster Level
const int SPELL_RESIST_BASE_SR = 12; //Default = 12 (Bioware Default)
//--------------------------------------------------------------------------
// Set this to the Base DC of the Glyph of Warding Spells
// NOTE: This is only used if the Spell is cast from an item!
// Otherwise the spell will use the Caster's Wisdom Bonus (if cleric)
// PLUS adjust for Metamagic Feats etc..
const int GLYPH_BASE_DC = 16; //Default = 16 (16 = Base DC)
//--------------------------------------------------------------------------
// Set this to the Maximum Level used for Darkfire (default = 20)
// If this is set @ 20 or below 20 the default (1/2 of level) will be used
// If you set this above 20, then what you set will be used instead!
// e.g. if set to 30, this spell will deal 1 dmg / Level (up to level 30!)
const int MAX_DARKFIRE_LVL = 20; //Default = This is capped @ 1/2 of 40 (20 max)
// Set this to the Maximum Damage Flame Weapon Can Deal
// DO NOT set this above 40! or Below 10!!!
const int MAX_FLM_WPN_LVL = 10; //Default = 10 Dmg; (1 dmg/level up to level 10)
//--------------------------------------------------------------------------
// Set this to how many Temporary Hit Points you want spell Virtue to give Per Level
// Bare in mind there can be level 40 Clerics e.g. 2 X 40 = +80 Temp. Hit Points
// I added this because clerics are extremely weak and usually have low hit points.
// NOTE: This DOES STACK with multiple castings!!! (So Be Careful!)
const int VIRTUE_TEMPORARY_HITPOINTS_BONUS = 1; //Default = 1; (1 Temp Hit Points / Level)
//--------------------------------------------------------------------------
//Set this to the # of hit points that Power Word Kill Spell will Slay/kill with
//e.g. if you set this to 400 all creatures with 400 HP or less will die
//NOTE: This also determine the Max Damage the spell can deal too!
const int POWER_WORD_KILL_HP_DEATH = 200; //Default = 200 (200 Hp or less Die)
//--------------------------------------------------------------------------
// Set this to the # of d6 Dice you want Issac's Greater Missle Storm to deal
// Ideally if you raise this to 4 then you should lower the # of missles below!
const int IGMS_NUM_OF_DMG_DICE = 2; //Default = 2 (2d6 dice)
// Set this to the Max # of Levels used for Issac's GMS (levels = # of Missles)
// REMEMBER the spells can shoot UP TO 20 missle, you can ajuste the # of
// missles / level with this spell as this is a custom cap, so if you set this
// to 10, then a max of 10 missles will be used at caster level 10!
// You may set this from 1 - 40, no higher & no lower!
const int IGMS_SPELL_CAP = 20; //Default = 20 (20 Max # of Missles)
//--------------------------------------------------
// Set this to the # of d6 Dice you want Issac's Lesser Missle Storm to deal
const int ILMS_NUM_OF_DMG_DICE = 1; //Default = 1 (1d6 dice)
// Set this to the Max # of Levels used for Issac's LMS (levels = # of Missles)
const int ILMS_SPELL_CAP = 10; //Default = 10 (10 max # of missles)
//--------------------------------------------------
// Set this to the # of Seconds you want the spell TRUE STRIKE to last
const float TRUE_STRIKE_DURATION = 9.0; // Default = 9.0 (9 Seconds)
//--------------------------------------------------
// Set this to the Maximum Level Used for Vampiric Touch
// 10 = Bioware / NWN Defaul Cap, you can raise this if you want more damage.
// NOTE: Bonus Damage is still optional too! (This is a favored spell on many servers)
const int VAMP_TOUCH_MAX_LVL = 10; // default = 10 (10d6 damage max)
///////////////////////////////////////////////////////////////////////////////
// Controlling Concealment
// Set this to the Amount of Concealment you want Cammoflauge & Mass Cammoflauge
// to give (10% may be too low for some)
const int CAMO_CONCEAL_BONUS = 10; //Default = 10; (10% = Standard Concealment)
//Set this to the Amount of Cocealment you want Entropic Shield to Give.
const int ENTRP_SHIELD_CONCEAL_BONUS = 20; //Default = 20; (20% = Standard Concealment)
//Set this to the Amount of Concealment you want Displacement To Give.
const int DISP_CONCEAL_BONUS = 50; //Default = 50; (50% = Standard Concealment)
//Set this to the Amount of Concealment you want Improved Invisibility To Give.
const int IMP_INVIS_CONCEAL_BONUS = 50; //Default = 50; (50% = Standard Concealment)
////////////////////////////////////////////////////////////////////////////////
//Controlling Damage Reduction
//Some may see it fit to change damage reduction from spells (to suit their module)
// Set this to Bonus used by the Spell Premonition (You must use constants!)
// if you set this to DAMAGE_POWER_PLUS_EIGHT it would = +8 / X Dmg Reduction
const int PREMO_BONUS = DAMAGE_POWER_PLUS_FIVE; //(Default set)
// Set this to the Amount of Soak Premonition will soak (up to X / Level)
// so if you set this to 20 it would = +? / 20 Damage reduction...
const int PREMO_SOAK = 30; //Default = 30 (30 Soak by original defaults)
// Set this to the Maximum amount of soak that Premonition spell can soak
// By default (at level 40, 400 is the max dmg that can be soaked by the spell)
const int MAX_PREMO_SOAK = 300; //(NOTE THIS IS A CUSTOM CAP! Test & Adjust!)
// Set this to Bonus used by the Spell Greater Stone Skin (You must use constants!)
const int GSS_BONUS = DAMAGE_POWER_PLUS_FIVE; //(Default set)
// Set this to the Amount of Soak Greater Stone Skin will soak (up to X / Level)
const int GSS_SOAK = 30; //Default = 20 (20 Resist/Reducation)
// Set this to the Maximum amount of soak that Greater Stone Skin can soak
// by default the spell is capped at 150 Max Soak (at level 15 it's capped)
const int MAX_GSS_SOAK = 150; //Default = 300 (300 Max Soak)
// Set this to Bonus used by the Spell Stone Skin (You must use constants!)
const int SS_BONUS = DAMAGE_POWER_PLUS_FIVE; //(Default set)
// Set this to the Amount of Soak Stone Skin will soak (up to X / Level)
const int SS_SOAK = 15; //Default = 10 (10 Resist/Soak)
// Set this to the LIMIT (amount) that Stone Skin can soak (at max)
// This is Multiplied by the # of levels of the caster!
const int SS_LIMIT = 10; //Default = 10 (10 dmg / level can be soaked)
///////////////////////////////////////////////////////////////////////////////
//Handling Inflict Spells
// Some may feel the inflict wound spells are simply too weak to be effective (or useful)
// therefore to give you custom control over the spells & to make the an evil
// cleric & the spells more viable & dangerous (including for monsters!
'>
// Set this to the # of d8 Dice this spell will deal (Default is preset)
const int IF_DMG = 1; //Default = 1 (d8(1)) - (Inflict Wounds - Lvl 1)
const int IMF_DMG = 2; //Default = 2 (d8(2)) - (Inflict Moderate Wounds - Lvl 2)
const int ISF_DMG = 3; //Default = 3 (d8(3)) - (Inflict Serious Wounds - Lvl 3)
const int ICF_DMG = 4; //Default = 4 (d8(4)) - (Inflict Critical Wounds - Lvl 4)
//I wouldn't set any # of dice above 30, 30d8 will do (90-160 dmg on average)
////////////////////////////////////////////////////////////////////////////////
// Because some feel Permanent Haste is entirely too uber, Here is a better option!
// Instead of placing Haste on an item, rather hand out..
// Potions of Expedious Retreat, you can control the duration below
// This will in turn make the spell more noteworthy & useable!
// Naturally PCs will just cast haste to avoid your restrictions (see below!
'>
// Set this to the # of Rounds you wish this spell to last / level...
// 10 = Default Duration. (Note this is cast at level 5 from items!)
const int EXPEDIOUS_RETREAT_DURATION = 20; //Default = 10 (10 Rnds / Level)
// Set this to the MAX # of Rounds you wish the spell HASTE to last
// By default the spell can last 1 round / level (max 40 levels used)
// NOTE This is figured BEFORE Metamagic Extended (so they can still DOUBLE this!)
const int MAX_HASTE_DURATION = 40; //default = 40 (Default Max # Levels Used)
///////////////////////////////////////////////////////////////////////////////
// Controlling Damage Shields (Added For Greater Control over these spells)
// Set this to FALSE if you DO NOT Want to allow Stacking Shield
// e.g. IF you set this to FALSE, the caster may only cast 1 shield at a time!
const int ALLOW_MULTIPLE_DAMAGE_SHIELDS = TRUE;
//Default = TRUE; (By Default Casters are Allowed Multiple Damage Shields)
// Set this to the Maximum # of Damage Shields a caster may have on at one time
// YOU MUST Set the above setting to FALSE to turn this setting on! (use 1 - 4 only)
// NOTE Cleric's Auras do not count as a dmg shield, but wounding whispers does
const int MAX_DMG_SHIELDS_USABLE = 1; // Default = 1 (Only 1 dmg shield at a time)
// NOTE:: All The Settings Below are On By Default & Cannot Be Turned Off
// HOWEVER - They are set to default settings by default (Normal Damage)
// Also, Bonus Damage Settings Above ARE NOT Applied to these spells!!!!
// HOWEVER, These Spells ARE Effected by the Custom Spell Caps if you are using them!
// YOU WILL NEED TO TEST THESE SHIELDS & Adjust Damages Below if using Custom Spell Caps!
// Set the Float Below to what % you want the Death Armor To Deal in Damage.
// e.g. 1.0 = Normal Damage / 1.20 = + 20 % / 0.50 = 50 % (1/2) of Normal Damage
const float DEATH_ARMOR_DAMAGE = 1.0; //Default = 1.0; (Normal Damage)
// Set the Float Below to what % you want the Elemental Shield To Deal in Damage.
// e.g. 1.0 = Normal Damage / 1.20 = + 20 % / 0.50 = 50 % (1/2) of Normal Damage
const float FIRE_SHIELD_DAMAGE = 3.0; //Default = 1.0; (Normal Damage)
// Set the Float Below to what % you want the Acid Sheath To Deal in Damage.
// e.g. 1.0 = Normal Damage / 1.20 = + 20 % / 0.50 = 50 % (1/2) of Normal Damage
const float ACID_SHEATH_DAMAGE = 1.0; //Default = 1.0; (Normal Damage)
// Set the Float Below to what % you want the Wounding Whisper To Deal in Damage.
// e.g. 1.0 = Normal Damage / 1.20 = + 20 % / 0.50 = 50 % (1/2) of Normal Damage
const float WOUNDING_WHISPER_DAMAGE = 1.0; //Default = 1.0; (Normal Damage)
//////////////////////////////////////////////////////////////////////////////
//Controls for Timestop
// Place the following variable on an area to disable timestop in that area.
// NAME : TIMESTOP_DISABLED TYPE : Int VALUE : 1
// If set to 0, the duration will default to 1 + 1d4 rounds. Otherwise, the
// duration will be the number of seconds the variable is changed to.
// e.g., if you set this to 12, timestop will last 12 seconds!
const int TIME_STOP_OVERRIDE_DURATION = 0; //Default = 0 (no changes)
// Number of seconds before Timestop can be recast after being cast. Countdown
// messages are sent based on this time.
// Set to 0.0 if you dont want there to be any cooldown
const float TIME_STOP_COOLDOWN_TIME = 0.0;// Default = 0.0 (no Cooldown)
// If set to 1, Timestop will not be usable\\
const int TIME_STOP_DISABLE = 0;
//////////////////////////////////////////////////////////////////////////////
//Controls for Greater Sanctuary
// Set this to the # of Rounds Per Level you want this spell to last.
// E.G. if you set this to 6 it will last 6 rounds / level. (default duration)
const int GREATER_SANTURARY_DURATION = 6; //Default = 6 (Default NWN Duration)
// Set this to TRUE if you want to Disable Greater Sancutary All Together.
const int DISABLE_GREATER_SANTURARY = FALSE; //Default = FALSE (Working Spell)
// Set this to TRUE if you wish to use a Cool Down Timer
const int USE_GS_COOL_DOWN_TIMER = FALSE; //Default = FALSE (No Cool Down Timer)
// Set this float to the # of seconds you want the cooldown to last.
const float GS_COOL_DOWN_TIME = 20.0; //Default = 60.0 (60 Seconds)
///////////////////////////////////////////////////////////////////////////////
// Miscellaneous Settings
//Set this to FALSE if you DO NOT want to send the PC Any Messages
// About DC Bonuses (NOTE: You should turn this off after testing!)
// As some spells do multiple checks for DC, and the PC will get spammed!
const int SEND_DC_BONUS_MESSAGE = TRUE;
////////////////////////////////////////////////////////////////////////////////
////////// #### END OPTIONAL SETTINGS #### //////////////////////////////////
//////////////////////////////////////////////////////////////////////////////
// WWWHHHHOOOOOOSSSSSHHH (If you only knew how much work it was...)
Modifié par _Guile, 03 septembre 2011 - 02:48 .