//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //:::::::::::::::::::::::: Shayan's Subrace Engine ::::::::::::::::::::::::::::: //:::::::::::::::::File Name: sha_subraces2 :::::::::::::::::::::::::::::::::::: //::::::::::::::::::::: OnModuleLoad script :::::::::::::::::::::::::::::::::::: //:: Written By: Shayan. //:: Contact: mail_shayan@yahoo.com // // Description: This script holds the pre-made 'wacky' subraces. These sub-races // are either planar or monsterous. These include things like: // Ogre, Illithid, Pixies... just to name a few. // If you do not want to use these, simply comment the lines: // DelayCommand(1.0, ExecuteScript("sha_subraces1", GetModule())); // in the script: sha_on_modload. #include "sha_subr_methds" void main() { //::::::::::::::::::::::::::::::::: //:::: SUBRACE: Human - Illithid :: //::::::::::::::::::::::::::::::::: //Subrace Name: Illithid. //Properties from the Skin: //Ability Bonus: Charisma +2 //Ability Bonus: Constitution -4 //Ability Bonus: Dexterity +4 //Ability Bonus: Intelligence +8 //Ability Bonus: Strength +2 //Ability Bonus: Wisdom +4 //AC Bonus +3 //Darkvision //Immunity: Miscellaneous: Mind-Affecting Spells //Abilities from the unique item: //Cast Spell: Charm Monster (10) 1 Use/Day //Cast Spell: Charm Person (10) 1 Use/Day //Must be Human, and is light sensitive. //ECL: + 2 CreateSubrace(RACIAL_TYPE_HUMAN, "illithid", "sha_pc_illithid", "sha_subrace_illi", TRUE, 0, FALSE, 0, 3); //Lawful Evil Only CreateSubraceAlignmentRestriction("illithid", FALSE, FALSE, TRUE, TRUE, FALSE, FALSE); //Favored Class: Male: Wizard, Female: Wizard. AddSubraceFavoredClass("illithid", CLASS_TYPE_WIZARD, CLASS_TYPE_WIZARD); //Can only be Monk, Cleric or Wizard CreateSubraceClassRestriction("illithid", FALSE, FALSE, TRUE, FALSE, FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE); //Spell Resistance: Base: 25, Max: 65. (25 + 1 per level) CreateSubraceSpellResistance("illithid", 25, 65); //Appearance is permanently changed to Mind flayers (male is different from female) CreateSubraceAppearance("illithid", TIME_BOTH, APPEARANCE_TYPE_MINDFLAYER, APPEARANCE_TYPE_MINDFLAYER_2); //::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Dwarf - Azer :::::::: //::::::::::::::::::::::::::::::::::: //Subrace Name: Azer //Properties from the Skin: //Ability Bonus: Dexterity +2 //Ability Bonus: Intelligence +2 //Ability Bonus: Constitution +2 //Ability Bonus: Strength +2 //Ability Bonus: Wisdom +2 //AC Bonus +6 //Damage Vulnerability: Cold 50% Damage Vulnerability //Darkvision //Immunity: Damage Type: Fire 100% Immunity Bonus //Must be: Dwarf //ECL: + 3 CreateSubrace(RACIAL_TYPE_DWARF, "azer", "sha_pc_azer", "", FALSE, 0, FALSE, 0, 3); //Appearance: Azer - Permanent. CreateSubraceAppearance("azer", TIME_BOTH, APPEARANCE_TYPE_AZER_MALE, APPEARANCE_TYPE_AZER_FEMALE); //Spell Resistance: 13 + 1 Per Level. CreateSubraceSpellResistance("azer", 13, 53); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Halfling - Pixie :::::::: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Pixie //Properties from the Skin: //Ability Bonus: Charisma +6 //Ability Bonus: Dexterity +8 //Ability Bonus: Intelligence +6 //Ability Bonus: Wisdom +4 //AC Bonus +1 //Bonus Feat: Dodge //Damage Reduction: +1 Soak 5 Damage //Darkvision //Decreased Ability Score: Constitution -4 //Decreased Ability Score: Strength -4 //Abilities from the unique item: //Cast Spell: Confusion (10) 1 Use/Day //Cast Spell: Entangle (5) 1 Use/Day //Cast Spell: Invisibility (3) 1 Use/Day //Cast Spell: Lesser Dispel (5) 1 Use/Day //Cast Spell: Polymorph Self (7) 1 Use/Day //Must be: Halfling. //ECL: +3 CreateSubrace(RACIAL_TYPE_HALFLING, "pixie", "sha_pc_pixie", "sha_subrace_pixi", FALSE, 0, FALSE, 0, 3); //Alignment Restriction: Neutral Only. CreateSubraceAlignmentRestriction("pixie", FALSE, TRUE, FALSE); //Class Restriction: Can only be either: Bard, Rogue, Sorcerer or Wizard. CreateSubraceClassRestriction("pixie", FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE); //Favored Class: Sorcerer. AddSubraceFavoredClass("pixie", CLASS_TYPE_SORCERER, CLASS_TYPE_SORCERER); //Appearance Change: Permanent - Pixie CreateSubraceAppearance("pixie", TIME_BOTH, APPEARANCE_TYPE_FAIRY, APPEARANCE_TYPE_FAIRY); //Effect: Visual Effect - Fairy Dust. AddSubraceEffect("pixie", EFFECT_TYPE_VISUALEFFECT, VFX_DUR_PIXIEDUST, FALSE, DURATION_TYPE_PERMANENT, 0.0, TIME_BOTH); //Spell Resistance: Base (at Level 1): 15, Max(at Level 40): 55. CreateSubraceSpellResistance("pixie", 15, 55); //Pixie fix //Replaced Old : SubraceRestrictUseOfItems("Pixie", ITEM_TYPE_ARMOR_TYPE_CLOTH |ITEM_TYPE_WEAPON_SIZE_TINY, TIME_SPECIAL_APPEARANCE_SUBRACE, ITEM_TYPE_REQ_ANY); //Added Shayan's Fix from Forum //Updated to ITEM_TYPE_ARMOR_AC_0 //Removed from Shayan's Forum fix : /* ITEM_TYPE_MAGICAL_ITEM, */ //Can only use tiny weapons, Can only wear clothing. Can't use any shields. SubraceRestrictUseOfItems("Pixie", ITEM_TYPE_WEAPON_SIZE_TINY | ITEM_TYPE_ARMOR_AC_0 | ITEM_TYPE_MISC_CLOTHING | ITEM_TYPE_JEWLERY | ITEM_TYPE_HELM | TIME_BOTH,ITEM_TYPE_REQ_ALL); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Orc - Ogre ::::::::: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Ogre //Properties from the Skin: //Ability Bonus: Constitution +4 //Ability Bonus: Strength +6 //AC Bonus +5 //Bonus Feat: Armor Proficiency (light) //Bonus Feat: Armor Proficiency (medium) //Bonus Feat: Shield Proficiency //Bonus Feat: Weapon Proficiency (martial) //Bonus Feat: Weapon Proficiency (simple) //Darkvision //Decreased Ability Score: Charisma -4 //Decreased Ability Score: Dexterity -2 //Decreased Ability Score: Intelligence -4 //Decreased Skill Modifier: Hide -8 //Decreased Skill Modifier: Move Silently -5 //Must be: Half-Orc //ECL: + 2 CreateSubrace(RACIAL_TYPE_HALFORC, "ogre", "sha_pc_ogre", "", FALSE, 0, FALSE, 0, 2); //Alignment Restriction - Cannot be Lawful. CreateSubraceAlignmentRestriction("ogre", TRUE, TRUE, TRUE, FALSE); //Appearance: Ogre - Permanent. CreateSubraceAppearance("ogre", TIME_BOTH, APPEARANCE_TYPE_OGRE_CHIEFTAIN, APPEARANCE_TYPE_OGREB); //Can't use any Tiny weapons (Too big to hold them!!) SubraceRestrictUseOfItems("ogre", ITEM_TYPE_WEAPON_SIZE_TINY, TIME_BOTH); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Orc - Troll :::::::: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Troll //Properties from the Skin: //Ability Bonus: Constitution +6 //Ability Bonus: Strength +6 //AC Bonus +4 //Darkvision //Decreased Ability Score: Charisma -4 //Decreased Ability Score: Intelligence -4 //Decreased Ability Score: Wisdom -2 //Regeneration +3 //Decreased Skill Modifier: Hide -8 //Decreased Skill Modifier: Move Silently -5 //Must be: Half-Orc //ECL: + 2 CreateSubrace(RACIAL_TYPE_HALFORC, "troll", "sha_pc_troll","", FALSE, 0, FALSE, 0, 2); //Appearance: Troll - Permanent. CreateSubraceAppearance("troll", TIME_BOTH, APPEARANCE_TYPE_TROLL_CHIEFTAIN, APPEARANCE_TYPE_TROLL_SHAMAN); //Can't use any Tiny weapons (Too big to hold them!!) SubraceRestrictUseOfItems("troll", ITEM_TYPE_WEAPON_SIZE_TINY, TIME_BOTH); //Favored Class: Fighter. AddSubraceFavoredClass("troll", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Halfling - Bugbear :::::: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Bugbear. //Properties from the Skin: //Ability Bonus: Constitution +2 //Ability Bonus: Strength +4 //AC Bonus +3 //Bonus Feat: Armor Proficiency (light) //Bonus Feat: Shield Proficiency //Bonus Feat: Weapon Proficiency (simple) //Darkvision //Decreased Ability Score: Charisma -2 //Must be: Halfling. //ECL: + 1 CreateSubrace(RACIAL_TYPE_HALFLING, "bugbear", "sha_pc_bugbear", "", FALSE, 0 , FALSE, 0, 1); //Apearance: Bugbear - Permanent. CreateSubraceAppearance("bugbear", TIME_BOTH, APPEARANCE_TYPE_BUGBEAR_CHIEFTAIN_A, APPEARANCE_TYPE_BUGBEAR_A); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Halfling - Goblin ::::::: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Goblin //Properties from the Skin: //Darkvision //Decreased Ability Score: Charisma -2 //Must be: Halfling. CreateSubrace(RACIAL_TYPE_HALFLING, "goblin", "sha_pc_goblin", ""); //Apearance: Goblin - Permanent. CreateSubraceAppearance("goblin", TIME_BOTH, APPEARANCE_TYPE_GOBLIN_CHIEF_A, APPEARANCE_TYPE_GOBLIN_A); //:::::::::::::::::::::::::::::::::::: //::::: SUBRACE: Undead - Lich ::::::: //:::::::::::::::::::::::::::::::::::: //This is an example of how you can equip different skins on Players at different level. //So that you do not necessarily have to give all subrace feats at once. //Subrace Name: Lich //Properties from the Skin: //Level 1: //Ability Bonus: Charisma +2 //Ability Bonus: Intelligence +2 //Ability Bonus: Wisdom +2 //Damage Reduction: +1 Soak 15 Damage //Turn Resistance +4 //Immunity: Damage Type: Cold 100% Immunity Bonus //Immunity: Damage Type: Electrical 100% Immunity Bonus //Level 5: //Gains - Immunity: Miscellaneous: Disease //Level 10: //Gains - Immunity: Miscellaneous: Poison //Level 15: //Gains - Immunity: Miscellaneous: Paralysis //Level 20: //Gains - Immunity: Miscellaneous: Level/Ability Drain //Level 25: //Gains - Immunity: Miscellaneous: Mind-Affecting Spells //Level 30: //Gains - Immunity: Miscellaneous: Death Magic //Level 35: //Gains - Immunity: Miscellaneous: Sneak Attack //Level 40: //Gains - Immunity: Miscellaneous: Critical Hits //Abilities from the unique item: //Cast Spell: Destruction (13) 1 Use/Day //Cast Spell: Vampiric Touch (5) 1 Use/Day //Human. Light Sensitive. Takes 5 Divine Damage While in Sunlight. //ECL: + 3 //Undead CreateSubrace(RACIAL_TYPE_HUMAN, "lich", "sha_pc_lich", "sha_subrace_lich", TRUE, 4, FALSE, 0, 3, TRUE); //Can also be Elf. AddAdditionalBaseRaceToSubrace("lich", RACIAL_TYPE_ELF); //Can also be Half-Elf. AddAdditionalBaseRaceToSubrace("lich", RACIAL_TYPE_HALFELF); //The different skins to be equipped at different levels... AddAdditionalSkinsToSubrace("lich", "sha_pc_lich1", 5); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich2", 10); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich3", 15); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich4", 20); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich5", 25); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich6", 30); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich7", 35); AddAdditionalSkinsToSubrace("lich", "sha_pc_lich8", 40); //Alignment Restriction - Must be Evil. CreateSubraceAlignmentRestriction("lich", FALSE, FALSE, TRUE); //Class Restriction - Can only be Wizard or Sorcerer. CreateSubraceClassRestriction("lich", FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE); //Spell Resistance: 10 + 1/2 Per Level. CreateSubraceSpellResistance("lich", 10, 30); //Appearance: Lich - Permanent. CreateSubraceAppearance("lich", TIME_BOTH, APPEARANCE_TYPE_LICH, APPEARANCE_TYPE_HEURODIS_LICH); //Favored Class: Pale Master AddSubraceFavoredClass("lich", CLASS_TYPE_WIZARD, CLASS_TYPE_WIZARD); //:::::::::::::::::::::: //:::SUBRACE: Vampire :: //:::::::::::::::::::::: //Subrace Name: Vampire //Properties from the Skin: //Level 1: //Damage Vulnerability: Divine 100% Damage Vulnerability //Darkvision //Decreased Ability Score: Charisma -2 //Decreased Saving Throws: Divine -5 //Regeneration +1 //Level 5: //Gains - Immunity: Miscellaneous: Paralysis //Level 10: //Gains - Immunity: Miscellaneous: Poison //Level 15: //Gains - Immunity: Miscellaneous: Disease //Level 20: //Gains - Immunity: Miscellaneous: Death Magic // Regeneration Increases by +1 //Level 25: //Gains - Immunity: Miscellaneous: Level/Ability Drain //Level 30: //Gains - Immunity: Miscellaneous: Mind-Affecting Spells //Level 35: //Gains - Immunity: Miscellaneous: Sneak Attack //Level 40: //Gains - Immunity: Miscellaneous: Critical Hits // Regeneration Increases by +1 //NOTE: Final Regeneration rate (At Level 40) is +3. //Human. Light Sensitive. Takes 2 Divine Damage while in Sunlight. //ECL: + 3 //Undead CreateSubrace(RACIAL_TYPE_HUMAN, "vampire", "sha_pc_vamp001", "sha_subrace_vamp", TRUE, 2, FALSE, 0, 3, TRUE); //Can also be Elf AddAdditionalBaseRaceToSubrace("vampire", RACIAL_TYPE_ELF); //Can also be Half-Elf AddAdditionalBaseRaceToSubrace("vampire", RACIAL_TYPE_HALFELF); //Skins that are equipped at certain levels... AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp002", 5); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp003", 10); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp004", 15); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp005", 20); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp006", 25); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp007", 30); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp008", 35); AddAdditionalSkinsToSubrace("vampire", "sha_pc_vamp", 40); //Alignment Restriction: Can only be evil. CreateSubraceAlignmentRestriction("vampire", FALSE, FALSE, TRUE); //Appearance: Change the Appearance to a Vampire using the appearance changer device. CreateSubraceAppearance("vampire", TIME_NONE, APPEARANCE_TYPE_VAMPIRE_MALE, APPEARANCE_TYPE_VAMPIRE_FEMALE, 1); //Temporary Stats: Bonuses at Night time. //Increase Strength by 6 points, Dexterity by 4 points, Consitution by 4, Charisma by 2, and AC by 5 and AB 10 during the Night. struct SubraceStats VampStats1 = CreateCustomStats(SUBRACE_STAT_MODIFIER_TYPE_POINTS, 6.0, 4.0, 0.0, 0.0, 0.0, 2.0, 5.0, 10.0); CreateTemporaryStatModifier("vampire", VampStats1, TIME_NIGHT); //Favored Class: Rogue. AddSubraceFavoredClass("vampire", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE); //Appearance changer device AddSubraceItem("vampire", "sha_vamp_cont", 1); }