//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: //:::::::::::::::::::::::: Shayan's Subrace Engine ::::::::::::::::::::::::::::: //:::::::::::::::::::::: File Name: sha_leto_sraces2 ::::::::::::::::::::::::::: //:::::::::::::::::::::::::: OnModuleLoad script ::::::::::::::::::::::::::::::: // Written By: Shayan // // Description: This script holds the pre-made Elf, Half-Elf and Gnome sub races // listed here: Elf-Wood, Elf-Drow, Elf-Drider, Elf-Nymph, Half-Elf Air-Touched, // Half-Elf Half-Drow, Half-Elf Half-High, Half-Elf Shadow, Half-Elf Satyr // Gnome-Forest // // If you do not want to use these, simply comment the lines: // DelayCommand(3.0, ExecuteScript("sha_leto_sraces2", GetModule())); // in the script: sha_on_modload. // //////////////////////////////////////////////////////////////////////////////// #include "sha_subr_methds" void main() { //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Elf - Wood ECL 0 ::::: //::::::::::::::::::::::::::::::::::::::: CreateSubrace(RACIAL_TYPE_ELF, "Elf-Wood"); SetupSubraceAlias("Elf-Wood", "wood elf"); SetupSubraceAlias("Elf-Wood", "wood-elf"); //LETO - Change ability scores: (Str +2, Dex, Con, Int -2, Wis, Cha -2) struct SubraceBaseStatsModifier ElfWoodStats = CustomBaseStatsModifiers(2, 0, 0, -2, 0, -2, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Elf-Wood", ElfWoodStats, 1); //LETO - Skills: Animal Empathy +4, Craft Trap +2 ModifySubraceSkill("Elf-Wood", SKILL_ANIMAL_EMPATHY, 4, 1, FALSE); ModifySubraceSkill("Elf-Wood", SKILL_CRAFT_TRAP, 2, 1, FALSE); //LETO - Bonus Feats: Alertness ModifySubraceFeat("Elf-Wood", FEAT_ALERTNESS, 1); //Favored Class: Ranger AddSubraceFavoredClass("Elf-Wood", CLASS_TYPE_RANGER, CLASS_TYPE_RANGER); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Elf - Drow ECL +2 :::: //::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: Will +2 //Abilities from the unique item: Cast Spell Darkness (5) 1/Day, Cast Spell Light () 1/Day //Light Sensitive CreateSubrace(RACIAL_TYPE_ELF, "Drow", "sha_pcl_drow", "sha_subrace_drow", TRUE, 0, FALSE, 0, 2); SetupSubraceAlias("Drow", "dark elf"); //Appearance: White Hair, Black Skin ModifySubraceAppearanceColors("Drow", 16, 16, 30, 30, 1); // Give Faerie Fire - Violet AddSubraceItem("Drow","sha_subrace_ff_v"); //LETO - Change ability scores: (Str, Dex, Con, Int +2, Wis, Cha +2) struct SubraceBaseStatsModifier DrowStats = CustomBaseStatsModifiers(0, 0, 0, 2, 0, 2, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Drow", DrowStats, 1); //LETO - Feats: Darkvision ModifySubraceFeat("Drow", FEAT_DARKVISION, 1); //LETO - Skills: Move Silently +2, Hide +2 ModifySubraceSkill("Drow", SKILL_MOVE_SILENTLY, 2, 1, FALSE); ModifySubraceSkill("Drow", SKILL_HIDE, 2, 1, FALSE); //Favored Class - Male: Wizard, Female: Cleric AddSubraceFavoredClass("Drow", CLASS_TYPE_WIZARD, CLASS_TYPE_CLERIC); //Alignment Restriction: Can only be evil CreateSubraceAlignmentRestriction("Drow", FALSE, FALSE, TRUE); //Spell Resistance: Base (at Level 1): 10, Max(at Level 40): 50. CreateSubraceSpellResistance("Drow", 10, 50); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Elf - Drider ECL +7 :: //::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: Will +2 //Abilities from the unique item: Cast Spell Darkness (5) 1/Day, Cast Spell Light () 1/Day //Poison : Drider Bite //Light Sensitive CreateSubrace(RACIAL_TYPE_ELF, "Drider", "sha_pcl_drider", "sha_subrace_drid", TRUE, 0, FALSE, 0, 7); //LETO - Change ability scores: (Str +4, Dex +4, Con +6, Int +4, Wis +6, Cha +6) struct SubraceBaseStatsModifier DriderStats = CustomBaseStatsModifiers(4, 4, 6, 4, 6, 6, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Drider", DriderStats, 1); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Drider", FEAT_DARKVISION, 1); //LETO - Bonus Skills: Hide +4, Silently +4 ModifySubraceSkill("Drider", SKILL_HIDE, 4, 1, FALSE); ModifySubraceSkill("Drider", SKILL_MOVE_SILENTLY, 4, 1, FALSE); //Favored Class - Male: Wizard, Female: Cleric AddSubraceFavoredClass("Drider", CLASS_TYPE_WIZARD, CLASS_TYPE_CLERIC); //Alignment Restriction: Can only be evil CreateSubraceAlignmentRestriction("Drider", FALSE, FALSE, TRUE); //Spell Resistance: Base (at Level 1): 10, Max(at Level 40): 50. CreateSubraceSpellResistance("Drider", 10, 50); //Appearance is permanently changed to Driders (male is different from female) CreateSubraceAppearance("Drider", TIME_BOTH, APPEARANCE_TYPE_DRIDER, APPEARANCE_TYPE_DRIDER_FEMALE); // Give Faerie Fire - Violet AddSubraceItem("Drider","sha_subrace_ff_v"); //::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Elf - Nymph ECL +6 :::::: //::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC+5, Damage Reduction 10/+1 //Abilities from Unique Item: Cast Displacement 1/Day CreateSubrace(RACIAL_TYPE_ELF, "Nymph", "sha_pcl_nymph", "sha_subrace_nymp", FALSE, 0 , FALSE, 0, 6); //LETO - Change ability scores: (Str, Dex +6, Con +2, Int +6, Wis +6, Cha +8) struct SubraceBaseStatsModifier NymphStats = CustomBaseStatsModifiers(0, 6, 2, 6, 6, 8, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Nymph", NymphStats, 1); ModifySubraceFaction("Nymph", "FACTION_DRYAD", SUBRACE_FACTION_REPUTATION_FRIENDLY); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Nymph", FEAT_DARKVISION, 1); //LETO - Bonus Skills: Animal Empath +6 ModifySubraceSkill("Nymph", SKILL_ANIMAL_EMPATHY, 6, 1, FALSE); //Favored Class: Sorcerer AddSubraceFavoredClass("Nymph", CLASS_TYPE_SORCERER, CLASS_TYPE_SORCERER); //Appearance: Nymph - Permanent CreateSubraceAppearance("Nymph", TIME_BOTH, APPEARANCE_TYPE_NYMPH, APPEARANCE_TYPE_NYMPH); //Alignment Restriction: Chaotic Good Only CreateSubraceAlignmentRestriction("Nymph", TRUE, FALSE, TRUE, FALSE, FALSE, TRUE); // Gender : Female Only CreateSubraceGenderRestriction("Nymph",FALSE,TRUE); //::::::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Elf - Air-Touched ECL 0 :: //::::::::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC Bonus vs. Alignment Group Lawful +2 // Magical 25% Damage Vulnerability, Cold 10% Immunity Bonus, Electrical 10% Immunity Bonus CreateSubrace(RACIAL_TYPE_HALFELF, "Air-Touched", "sha_pcl_airtouch"); SetupSubraceAlias("Air-Touched", "air touched"); //Appearance: Hair: lightest gray 16, Skin: light blue 20 ModifySubraceAppearanceColors("Air-Touched",16,16,20,20); //Alignment Restriction: Can only be evil CreateSubraceAlignmentRestriction("Air-Touched", FALSE, FALSE, TRUE); //LETO - Change ability scores: (Str -2, Dex +2, Con, Int +2, Wis -2, Cha) struct SubraceBaseStatsModifier AirTouchedStats = CustomBaseStatsModifiers(-2, 2, 0, 2, -2, 0, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Air-Touched", AirTouchedStats, 1); //Favored Class: Shadow Dancer AddSubraceFavoredClass("Air-Touched", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE); //::::::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Elf - Half-Drow ECL 0 :::: //::::::::::::::::::::::::::::::::::::::::::::: //Abilities from the unique item: Cast Spell Darkness (5) 1/Day, Cast Spell Light (5) 1/Day CreateSubrace(RACIAL_TYPE_HALFELF, "Half-Drow", "sha_pcl_hlfdrow", "sha_sbr_hlfdrow", TRUE, 0, FALSE, 0, 1); //LETO - Change ability scores: (Str, Dex, Con, Int +1, Wis, Cha +1) struct SubraceBaseStatsModifier HalfDrowStats = CustomBaseStatsModifiers(0, 0, 0, 1, 0, 1, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Half-Drow", HalfDrowStats, 1); //LETO - Bonus Skills: Hide +1, Move Silently +1 ModifySubraceSkill("Half-Drow", SKILL_HIDE, 1, 1, FALSE); ModifySubraceSkill("Half-Drow", SKILL_MOVE_SILENTLY, 1, 1, FALSE); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Half-Drow", FEAT_DARKVISION, 1); //Spell Resistance: Base (at Level 1): 10, Max(at Level 40): 50. CreateSubraceSpellResistance("Half-Drow", 10, 10); //Appearance: White Hair, Grey Skin ModifySubraceAppearanceColors("Half-Drow", 16, 16, 43, 43, 1); // Give Faerie Fire - Violet AddSubraceItem("Half-Drow","sha_subrace_ff_v"); //::::::::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Elf - Half-High ECL 0 :::: //::::::::::::::::::::::::::::::::::::::::::::: CreateSubrace(RACIAL_TYPE_HALFELF, "Half-Elf-High"); SetupSubraceAlias("Half-Elf-High", "Half-High"); SetupSubraceAlias("Half-Elf-High", "Half-High Elf"); SetupSubraceAlias("Half-Elf-High", "High Half-Elf"); //LETO - Change ability scores: (Str -1, Dex, Con, Int +1, Wis, Cha +1) struct SubraceBaseStatsModifier HalfElfHighStats = CustomBaseStatsModifiers(-1, 0, 0, 1, 0, 1, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Half-Elf-High", HalfElfHighStats, 1); //LETO - Bonus Skills: Concentration +2, Lore +2, Spellcraft +2 ModifySubraceSkill("Half-Elf-High", SKILL_CONCENTRATION, 2, 1, FALSE); ModifySubraceSkill("Half-Elf-High", SKILL_LORE, 2, 1, FALSE); ModifySubraceSkill("Half-Elf-High", SKILL_SPELLCRAFT, 2, 1, FALSE); //:::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Elf - Shadow ECL 0 :: //:::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC Bonus vs. Alignment Group: Good +1 //Positive Energy 25% Damage Vulnerability, Negative Energy 10% Immunity Bonus CreateSubrace(RACIAL_TYPE_HALFELF, "Shadow", "sha_pcl_shadow", ""); //Alignment Restriction: Can only be evil CreateSubraceAlignmentRestriction("Shadow", FALSE, FALSE, TRUE); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Shadow", FEAT_DARKVISION, 1); //LETO - Change ability scores: (Str, Dex, Con, Int +2, Wis, Cha -2) struct SubraceBaseStatsModifier ShadowStats = CustomBaseStatsModifiers(0, 0, 0, 2, 0, -2, MOVEMENT_SPEED_CURRENT); CreateBaseStatModifier("Shadow", ShadowStats, 1); //Favored Class: Shadow Dancer AddSubraceFavoredClass("Shadow", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE); //:::::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Half-Elf - Satyr ECL +5 :: //:::::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC +4 CreateSubrace(RACIAL_TYPE_HALFELF, "Satyr", "sha_pcl_satyr", "", FALSE, 0, FALSE, 0, 5); //LETO - Change ability scores: (Str, Dex +2, Con +2, Int +2, Wis +2, Cha +2) //Make Fast as Satyr Model is Slower struct SubraceBaseStatsModifier SatyrStats = CustomBaseStatsModifiers(0, 2, 2, 2, 2, 2, MOVEMENT_SPEED_FAST); CreateBaseStatModifier("Satyr", SatyrStats, 1); //LETO - Bonus Feats: Darkvision ModifySubraceFeat("Satyr", FEAT_DARKVISION, 1); //LETO - Bonus Skills: Hide +4, move silent +4, listen +4, perform +4, spot +4 ModifySubraceSkill("Satyr", SKILL_HIDE, 4, 1, FALSE); ModifySubraceSkill("Satyr", SKILL_LISTEN, 4, 1, FALSE); ModifySubraceSkill("Satyr", SKILL_MOVE_SILENTLY, 4, 1, FALSE); ModifySubraceSkill("Satyr", SKILL_PERFORM, 4, 1, FALSE); ModifySubraceSkill("Satyr", SKILL_SPOT, 4, 1, FALSE); //Favored Class: Bard AddSubraceFavoredClass("Satyr", CLASS_TYPE_BARD, CLASS_TYPE_BARD); //Appearance: Satyr - Permanent CreateSubraceAppearance("Satyr", TIME_BOTH, 143, 143); // Gender : Male Only CreateSubraceGenderRestriction("Satyr",TRUE,FALSE); //::::::::::::::::::::::::::::::::::::: //:::: SUBRACE: Gnome - Forest ECL 0 :: //::::::::::::::::::::::::::::::::::::: //Properties from the Skin: AC bonus vs Goblinoid +1, AC bonus vs Orc +1, AC bonus vs Reptillian +1 CreateSubrace(RACIAL_TYPE_GNOME, "Gnome-Forest", "sha_pcl_forest"); SetupSubraceAlias("Gnome-Forest", "Forest Gnome"); //LETO - Bonus Skills: Hide +4 ModifySubraceSkill("Gnome-Forest", SKILL_HIDE, 4, 1, FALSE); //Favored Class: Wizard, Cleric AddSubraceFavoredClass("Gnome-Forest", CLASS_TYPE_WIZARD, CLASS_TYPE_WIZARD); AddSubraceFavoredClass("Gnome-Forest", CLASS_TYPE_CLERIC, CLASS_TYPE_CLERIC); }