//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //:::::::::::::::::::::::: Shayan's Subrace Engine ::::::::::::::::::::::::::::: //:::::::::::::::::::::: File Name: sha_leto_sraces7 ::::::::::::::::::::::::::: //:::::::::::::::::::::::::: OnModuleLoad script ::::::::::::::::::::::::::::::: // Written By: Shayan // // Description: This script holds the pre-made "monster" sub races listed here: // Werewolf, Werecat, Troglodyte, Sahuagin, Illithid, Hobgoblin, Troll, Stinger // // If you do not want to use these, simply comment the lines: // DelayCommand(3.0, ExecuteScript("sha_leto_sraces7", GetModule())); // in the script: sha_on_modload // //////////////////////////////////////////////////////////////////////////////// #include "sha_subr_methds" void main() { //::::::::::::::::::::::::::::::::::::::: //:: SUBRACE: Human - Werewolf ECL + 3 :: //::::::::::::::::::::::::::::::::::::::: //Subrace Name: Werewolf //Properties from the Skin: Damage Reduction 10/+1 CreateSubrace(RACIAL_TYPE_HUMAN, "Werewolf", "sha_pcl_lycan", "", FALSE, 0, FALSE, 0, 3); //LETO - Change ability scores: (Str, Dex, Con, Int, Wis +2, Cha) struct SubraceBaseStatsModifier WereWolfStats = CustomBaseStatsModifiers(0, 0, 0, 0, 2, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Werewolf", WereWolfStats, 1); //LETO - Bonus Feats: Darkvision, Creature Wep Prof, Iron Will ModifySubraceFeat("Werewolf", FEAT_WEAPON_PROFICIENCY_CREATURE, 1); ModifySubraceFeat("Werewolf", FEAT_IRON_WILL, 1); ModifySubraceFeat("Werewolf", FEAT_DARKVISION, 1); //Alignment Restriction: Can only be chaotic evil. CreateSubraceAlignmentRestriction("Werewolf", FALSE, FALSE, TRUE, FALSE, FALSE, TRUE); //Appearance: Change the Appearance to a Werewolf using the appearance changer device. CreateSubraceAppearance("Werewolf", TIME_NIGHT, APPEARANCE_TYPE_WEREWOLF, APPEARANCE_TYPE_WEREWOLF, 1); //Temporary Stat bonuses at Night time. (Str +2, Dex +4, Con +4, Int, Wis, Cha, AC +2) struct SubraceStats LycanWolfStats1 = CreateCustomStats(SUBRACE_STAT_MODIFIER_TYPE_POINTS, 2.0, 4.0, 4.0, 0.0, 0.0, 0.0, 2.0, 0.0); CreateTemporaryStatModifier("Werewolf", LycanWolfStats1, TIME_NIGHT); //Appearance no longer changes, but the player will get a control item. CreateSubraceAppearance("Werewolf", TIME_NONE, APPEARANCE_TYPE_WERECAT, APPEARANCE_TYPE_WERECAT, 20); AddSubraceItem("Werewolf", "sha_werwolf_cont", 20); AddClawsToSubrace("Werewolf","sha_claw_d4","sha_claw_d4",1,TIME_NIGHT); //::::::::::::::::::::::::::::::::::::: //:::SUBRACE: Human - Werecat ECL +4 :: //::::::::::::::::::::::::::::::::::::: //Must be human //Properties from the Skin: Dr 5 to slashing, bludgeoning, and piercing CreateSubrace(RACIAL_TYPE_HUMAN, "Werecat", "sha_pcl_werecat", "", FALSE, 0, FALSE, 0, 4); //LETO - Change ability scores: (Str, Dex, Con, Int, Wis +2, Cha) struct SubraceBaseStatsModifier WereCatStats = CustomBaseStatsModifiers(0, 0, 0, 0, 2, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Werecat", WereCatStats, 1); //LETO - Feats: Darkvision, Creature Wep Prof, Iron Will ModifySubraceFeat("Werecat", FEAT_WEAPON_PROFICIENCY_CREATURE, 1); ModifySubraceFeat("Werecat", FEAT_IRON_WILL, 1); ModifySubraceFeat("Werecat", FEAT_DARKVISION, 1); //Alignment Restriction: CreateSubraceAlignmentRestriction("Werecat", TRUE, TRUE, TRUE, FALSE); // Change appearance at night CreateSubraceAppearance("Werecat", TIME_NIGHT, APPEARANCE_TYPE_WERECAT, APPEARANCE_TYPE_WERECAT); //Temporary stat bonuses at night (Str +6, Dex +4, Con +4, Int, Wis -4, Cha -2) struct SubraceStats WereCatStats1 = CreateCustomStats(SUBRACE_STAT_MODIFIER_TYPE_POINTS, 6.0, 4.0, 4.0, 0.0, -4.0, -2.0, 0.0, 0.0); CreateTemporaryStatModifier("Werecat", WereCatStats1, TIME_NIGHT); //Appearance no longer changes, but the player will get a control item. CreateSubraceAppearance("Werecat", TIME_NONE, APPEARANCE_TYPE_WERECAT, APPEARANCE_TYPE_WERECAT, 20); AddSubraceItem("Werecat", "sha_werecat_app", 20); //Favored Class: Barbarian AddSubraceFavoredClass("Werecat", CLASS_TYPE_BARBARIAN, CLASS_TYPE_BARBARIAN); AddClawsToSubrace("Werecat","sha_claw_d4","sha_claw_d4",1,TIME_NIGHT); //:::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Human - Troglodyte ECL +2: //:::::::::::::::::::::::::::::::::::::::: //Propertide from Skin: AC +5 //Subrace Ability: Cast Troglodyte Stench 1/day CreateSubrace(RACIAL_TYPE_HUMAN, "Troglodyte", "sha_pcl_trog", "sha_subrace_trog", TRUE, 0, FALSE, 0, 2); //LETO - Change ability scores: (Str, Dex -2, Con +2, Int -2, Wis, Cha) struct SubraceBaseStatsModifier TrogStats = CustomBaseStatsModifiers(0, -2, 2, -2, 0, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Troglodyte", TrogStats, 1); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Troglodyte", FEAT_WEAPON_PROFICIENCY_CREATURE, 1); ModifySubraceFeat("Troglodyte", FEAT_DARKVISION, 1); //LETO - Bonus Skills: Hide +4 ModifySubraceSkill("Troglodyte", SKILL_HIDE, 4, 1, FALSE); // Favored Class : Cleric AddSubraceFavoredClass("Troglodyte", CLASS_TYPE_CLERIC, CLASS_TYPE_CLERIC); // Alignment Restriction: Evil Only CreateSubraceAlignmentRestriction("Troglodyte", FALSE, FALSE, TRUE); //Appearance: Troglodyte CreateSubraceAppearance("Troglodyte", TIME_BOTH, APPEARANCE_TYPE_TROGLODYTE, APPEARANCE_TYPE_TROGLODYTE_WARRIOR); // Claws d4 AddClawsToSubrace("Troglodyte","sha_claw_d4","sha_claw_d4",1); //:::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Human - Sahuagin ECL +4 :::: //:::::::::::::::::::::::::::::::::::::::::: //Properties from Skin: AC +5 //Subrace Abilities : Cast Blood Frenzy 1/day //Light Sensitive CreateSubrace(RACIAL_TYPE_HUMAN, "Sahuagin", "sha_pcl_Sahuagin", "sha_subrace_shau", TRUE, 0, FALSE, 0, 4); //LETO - Change ability scores: (Str +4, Dex +2, Con +2, Int +4, Wis +2, Cha) struct SubraceBaseStatsModifier SahuStats = CustomBaseStatsModifiers(4, 2, 2, 4, 2, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Sahuagin", SahuStats, 1); //LETO - Bonus Feats: Creature Weapons, Blind Fighting, Darkvision ModifySubraceFeat("Sahuagin", FEAT_DARKVISION, 1); ModifySubraceFeat("Sahuagin", FEAT_WEAPON_PROFICIENCY_CREATURE, 1); ModifySubraceFeat("Sahuagin", FEAT_BLIND_FIGHT, 1); //LETO - Bonus Skills: Hide +4, Listen +4, Spot +4, Animal Empathy +4 ModifySubraceSkill("Sahuagin", SKILL_HIDE, 4, 1, FALSE); ModifySubraceSkill("Sahuagin", SKILL_LISTEN, 4, 1, FALSE); ModifySubraceSkill("Sahuagin", SKILL_SPOT, 4, 1, FALSE); ModifySubraceSkill("Sahuagin", SKILL_ANIMAL_EMPATHY, 4, 1, FALSE); // Favored Class : Ranger AddSubraceFavoredClass("Sahuagin", CLASS_TYPE_RANGER, CLASS_TYPE_RANGER); // Lawful Evil Only CreateSubraceAlignmentRestriction("Sahuagin", FALSE, FALSE, TRUE, TRUE, FALSE, FALSE); //Appearance: CreateSubraceAppearance("Sahuagin", TIME_BOTH, APPEARANCE_TYPE_SAHUAGIN, APPEARANCE_TYPE_SAHUAGIN_CLERIC); // Claws d4 AddClawsToSubrace("Sahuagin","sha_claw_d4","sha_claw_d4",1); //:::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Human - Illithid ECL + 4:: //:::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC Bonus +3 //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 //light sensitive CreateSubrace(RACIAL_TYPE_HUMAN, "Illithid", "sha_pcl_Illithid", "sha_subrace_illi", TRUE, 0, FALSE, 0, 4); SetupSubraceAlias("Illithid", "mind flayer"); SetupSubraceAlias("Illithid", "mind-flayer"); // Add Extract Brain AddSubraceItem("illithid", "sha_subrace_illb"); // Add Dimension Door AddSubraceItem("illithid", "sha_subrace_dimd"); // Add Psionic Mind Blast AddSubraceItem("illithid", "sha_subrace_ps_m"); //LETO - Change ability scores: (Str +2, Dex +4, Con -4, Int +8, Wis +4, Cha -2) struct SubraceBaseStatsModifier IllithidStats = CustomBaseStatsModifiers(2, 4, -4, 8, 4, -2, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Illithid", IllithidStats, 1); //LETO - Feats: Darkvision ModifySubraceFeat("Illithid", FEAT_DARKVISION, 1); //Alignment Restriction: 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); //Class Restriction: 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, 1221, APPEARANCE_TYPE_MINDFLAYER_2); //::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: HUMAN - Hobgoblin ECL +1 :: //::::::::::::::::::::::::::::::::::::::::: //Subrace Name: Hobgoblin CreateSubrace(RACIAL_TYPE_HUMAN, "Hobgoblin", "sha_pc_hobgoblin", "",FALSE, 0, FALSE, 0,1); // set Hobgoblin subrace to be friendly with Goblins (not all goblins) ModifySubraceFaction("Hobgoblin", "FACTION_GOBLIN", SUBRACE_FACTION_REPUTATION_FRIENDLY); //Apearance: HobGoblin - Permanent. CreateSubraceAppearance("Hobgoblin", TIME_BOTH, APPEARANCE_TYPE_HOBGOBLIN_WARRIOR, APPEARANCE_TYPE_HOBGOBLIN_WIZARD); //LETO - Change ability scores: (Str, Dex +2, Con +2, Int, Wis, Cha) struct SubraceBaseStatsModifier HobgoblinStats = CustomBaseStatsModifiers(0, 2, 2, 0, 0, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Hobgoblin", HobgoblinStats, 1); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Hobgoblin", FEAT_DARKVISION, 1); //LETO - Bonus Skills: Move Silent +4 ModifySubraceSkill("Hobgoblin", SKILL_MOVE_SILENTLY, 4, 1, FALSE); //Favored Class: Fighter AddSubraceFavoredClass("Hobgoblin", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER); //Evil Only CreateSubraceAlignmentRestriction("Hobgoblin", FALSE, FALSE, TRUE); //::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Orc - Troll ECL + 4 :: //::::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC Bonus +4, Regeneration +3 CreateSubrace(RACIAL_TYPE_HALFORC, "Troll", "sha_pcl_Troll","", FALSE, 0, FALSE, 0, 4); //LETO - Change ability scores: (Str +6, Dex, Con +6, Int -4, Wis -2, Cha -4) struct SubraceBaseStatsModifier TrollStats = CustomBaseStatsModifiers(6, 0, 6, -4, -2, -4, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Troll", TrollStats, 1); //LETO - Feats: Darkvision ModifySubraceFeat("Troll", FEAT_DARKVISION, 1); //LETO - Decreased Skill Modifier: Move Silently -5, Hide -8 ModifySubraceSkill("Troll", SKILL_HIDE, -8, 1, FALSE); ModifySubraceSkill("Troll", SKILL_MOVE_SILENTLY, -5, 1, FALSE); //Appearance: Troll - Permanent. CreateSubraceAppearance("Troll", TIME_BOTH, 2500, 2501); //Can't use any Tiny weapons (Too big to hold them!!) SubraceRestrictUseOfItems("Troll", ITEM_TYPE_WEAPON_SIZE_TINY, TIME_BOTH); //Alignment Restriction - Evil. CreateSubraceAlignmentRestriction("Troll", FALSE, FALSE, TRUE); //Favored Class: Fighter. AddSubraceFavoredClass("Troll", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER); //:::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Orc - Stinger ECL +6 :: //:::::::::::::::::::::::::::::::::::::::::: //Properties from Skin: AC +4 CreateSubrace(RACIAL_TYPE_HALFORC, "Stinger", "sha_pcl_stinger", "", FALSE, 0, FALSE, 0, 6); //LETO - Change ability scores: (Str +6, Dex +4, Con +4, Int, Wis +2, Cha) struct SubraceBaseStatsModifier StingerStats = CustomBaseStatsModifiers(6, 4, 4, 0, 2, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Stinger", StingerStats, 1); //LETO - Feats: improved initiative, creature weapon, exotic weapon ModifySubraceFeat("Stinger", FEAT_IMPROVED_INITIATIVE, 1); ModifySubraceFeat("Stinger", FEAT_WEAPON_PROFICIENCY_CREATURE, 1); ModifySubraceFeat("Stinger", FEAT_WEAPON_PROFICIENCY_EXOTIC, 1); //LETO - Skills: Listen +4, Search +4, Spot +4, move silent +2 ModifySubraceSkill("Stinger", SKILL_LISTEN, 4, 1, FALSE); ModifySubraceSkill("Stinger", SKILL_SEARCH, 4, 1, FALSE); ModifySubraceSkill("Stinger", SKILL_SPOT, 4, 1, FALSE); ModifySubraceSkill("Stinger", SKILL_MOVE_SILENTLY, 2, 1, FALSE); // Favored Class : Ranger AddSubraceFavoredClass("Stinger", CLASS_TYPE_RANGER, CLASS_TYPE_RANGER); // Add Poison Stinger AddClawsToSubrace("Stinger","sha_tail_stinger","",1); //Alignment Restriction: Evil Only CreateSubraceAlignmentRestriction("Stinger", FALSE, FALSE, TRUE); // Appearance: Stinger CreateSubraceAppearance("Stinger", TIME_BOTH, APPEARANCE_TYPE_STINGER, APPEARANCE_TYPE_STINGER); // Gender : Male Only CreateSubraceGenderRestriction("Stinger",TRUE,FALSE); }