WoR_PRC8/_module/nss/sha_leto_sraces4.nss
Jaysyn904 b5e28e52f4 Initial commit
Initial commit [1.18]
2025-04-03 11:49:34 -04:00

241 lines
11 KiB
Plaintext

//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::::::::::::::::::::::: Shayan's Subrace Engine :::::::::::::::::::::::::::::
//:::::::::::::::::::::: File Name: sha_leto_sraces4 :::::::::::::::::::::::::::
//:::::::::::::::::::::::::: OnModuleLoad script :::::::::::::::::::::::::::::::
// Written By: Shayan
//
// Description: This script holds the pre-made Half-Orc subraces listed here:
// Half-Orce Savage, Half-Orc Bugbear, Half-Orc Gnoll,
// Half-Orc Hill Giant, Half-Orc Lizardfolk, Half-Orc Minotaur, Half-Orc Ogre,
// Half-Orc Ogre-Mage, Half-Orc Orc
//
// If you do not want to use these, simply comment the lines:
// DelayCommand(3.0, ExecuteScript("sha_leto_sraces4", GetModule()));
// in the script: sha_on_modload.
//
////////////////////////////////////////////////////////////////////////////////
#include "sha_subr_methds"
void main()
{
//::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Savage ECL 0 ::
//::::::::::::::::::::::::::::::::::::::::
CreateSubrace(RACIAL_TYPE_HALFORC, "Half-Orc-Savage");
SetupSubraceAlias("Half-Orc-Savage", "Savage Half-Orc");
//::::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Bugbear ECL +3 ::
//::::::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +3
CreateSubrace(RACIAL_TYPE_HALFORC, "Bugbear", "sha_pcl_bugbear", "", FALSE, 0 , FALSE, 0, 3);
//LETO - Change ability scores: (Str +4, Dex +2, Con +2, Int, Wis, Cha -2)
struct SubraceBaseStatsModifier BugbearStats = CustomBaseStatsModifiers(4, 2, 2, 0, 0, -2, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Bugbear", BugbearStats, 1);
// set Bugbear subrace to be friendly with Goblins (not all goblins)
ModifySubraceFaction("Bugbear", "FACTION_GOBLIN", SUBRACE_FACTION_REPUTATION_FRIENDLY);
//LETO - Bonus Feats: Darkvision, Armor Proficiency (light), Shield Proficiency
//Weapon Proficiency (simple)
ModifySubraceFeat("Bugbear", FEAT_DARKVISION, 1);
ModifySubraceFeat("Bugbear", FEAT_ARMOR_PROFICIENCY_LIGHT, 1);
ModifySubraceFeat("Bugbear", FEAT_SHIELD_PROFICIENCY, 1);
ModifySubraceFeat("Bugbear", FEAT_WEAPON_PROFICIENCY_SIMPLE, 1);
//LETO - Bonus Skills: Hide +2, Spot +2, Listen +2, Move Silently +2
ModifySubraceSkill("Bugbear", SKILL_LISTEN, 2, 1, FALSE);
ModifySubraceSkill("Bugbear", SKILL_SEARCH, 2, 1, FALSE);
ModifySubraceSkill("Bugbear", SKILL_SPOT, 2, 1, FALSE);
ModifySubraceSkill("Bugbear", SKILL_MOVE_SILENTLY, 2, 1, FALSE);
//Alignment Restriction: Cannot be Lawful
CreateSubraceAlignmentRestriction("Bugbear", TRUE, TRUE, TRUE, FALSE);
//Apearance: Bugbear - Permanent
CreateSubraceAppearance("Bugbear", TIME_BOTH, APPEARANCE_TYPE_BUGBEAR_CHIEFTAIN_A, APPEARANCE_TYPE_BUGBEAR_A);
//::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Gnoll ECL +1 ::
//::::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +1
CreateSubrace(RACIAL_TYPE_HALFORC, "Gnoll", "sha_pcl_gnoll", "",FALSE, 0, FALSE, 0,1);
// Set Hill Giant subrace to be friendly with Giants (not all giants) gnolls part of this faction
ModifySubraceFaction("Gnoll", "FACTION_GIANT", SUBRACE_FACTION_REPUTATION_FRIENDLY);
//LETO - Change ability scores: (Str +2, Dex, Con +2, Int, Wis, Cha)
struct SubraceBaseStatsModifier GnollStats = CustomBaseStatsModifiers(2, 0, 2, 0, 0, 0, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Gnoll", GnollStats, 1);
//LETO - Bonus Feats: Darkvision
ModifySubraceFeat("Gnoll", FEAT_DARKVISION, 1);
//Apearance: Gnoll - Permanent
CreateSubraceAppearance("Gnoll", TIME_BOTH, 1546, 1554);
//Favored Class: Fighter
AddSubraceFavoredClass("Gnoll", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Alignment Restriction: Evil Only
CreateSubraceAlignmentRestriction("Gnoll", FALSE, FALSE, TRUE);
//::::::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Lizardfolk ECL 0 ::
//::::::::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +5
CreateSubrace(RACIAL_TYPE_HALFORC, "Lizardfolk", "sha_pcl_lizard", "");
// set Lizardfolk subrace to be friendly with lizardfolk
ModifySubraceFaction("Giant-Hill", "FACTION_LIZARDFOLK", SUBRACE_FACTION_REPUTATION_FRIENDLY);
//LETO - Change ability scores: (Str, Dex, Con +2, Int, Wis, Cha +2)
struct SubraceBaseStatsModifier LizardStats = CustomBaseStatsModifiers(0, 0, 2, 0, 0, 2, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Lizardfolk", LizardStats, 1);
//LETO - Bonus Feats: Darkvision
ModifySubraceFeat("Lizardfolk", FEAT_DARKVISION, 1);
ModifySubraceFeat("Lizardfolk", FEAT_WEAPON_PROFICIENCY_CREATURE, 1);
ModifySubraceFeat("Lizardfolk", FEAT_WEAPON_PROFICIENCY_SIMPLE, 1);
ModifySubraceFeat("Lizardfolk", FEAT_SHIELD_PROFICIENCY, 1);
//Apearance: Lizardfolk - Permanent
CreateSubraceAppearance("Lizardfolk", TIME_BOTH, 2508, 2509);
SetupSubraceAlias("Lizardfolk", "Lizardman");
SetupSubraceAlias("Lizardfolk", "Lizard Man");
// Claws d4
AddClawsToSubrace("Lizardfolk","sha_claw_d4","sha_claw_d4",1);
// Add Lizard tail
ModifySubraceAppearanceAttachment("Lizardfolk", CREATURE_WING_TYPE_NONE, CREATURE_WING_TYPE_NONE, CREATURE_TAIL_TYPE_LIZARD, CREATURE_TAIL_TYPE_LIZARD, 1);
//Favored Class: Druid
AddSubraceFavoredClass("Lizardfolk", CLASS_TYPE_DRUID, CLASS_TYPE_DRUID);
//Alignment Restriction: Neutral Only
CreateSubraceAlignmentRestriction("Lizardfolk", FALSE, TRUE, FALSE, FALSE, TRUE, FALSE);
//:::::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Minotaur ECL +5 ::
//:::::::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +5
//Natural Weaponry: Gore d8
CreateSubrace(RACIAL_TYPE_HALFORC, "Minotaur", "sha_pcl_minotaur", "",FALSE, 0, FALSE, 0, 5);
//LETO - Change ability scores: (Str +6, Dex, Con +4, Int -2, Wis, Cha)
struct SubraceBaseStatsModifier MinotaurStats = CustomBaseStatsModifiers(6, 0, 4, -2, 0, 0, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Minotaur", MinotaurStats, 1);
//LETO - Bonus Feats: Darkvision, Weapon Prof (Simple, Martial, Creature), Power Attack
ModifySubraceFeat("Minotaur", FEAT_DARKVISION, 1);
ModifySubraceFeat("Minotaur", FEAT_WEAPON_PROFICIENCY_SIMPLE, 1);
ModifySubraceFeat("Minotaur", FEAT_WEAPON_PROFICIENCY_MARTIAL, 1);
ModifySubraceFeat("Minotaur", FEAT_WEAPON_PROFICIENCY_CREATURE, 1);
//LETO - Bonus Skills: Search +4, Spot +4, Listen +4
ModifySubraceSkill("Minotaur", SKILL_LISTEN, 4, 1, FALSE);
ModifySubraceSkill("Minotaur", SKILL_SEARCH, 4, 1, FALSE);
ModifySubraceSkill("Minotaur", SKILL_SPOT, 4, 1, FALSE);
//Apearance: Minotaur - Permanent
CreateSubraceAppearance("Minotaur", TIME_BOTH, APPEARANCE_TYPE_MINOTAUR, APPEARANCE_TYPE_MINOTAUR_SHAMAN);
//Add Natural Weaponry: Gore d8
AddClawsToSubrace("Minotaur","sha_gore_d8","",1);
//Favored Class: Fighter
AddSubraceFavoredClass("Minotaur", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Alignment Restriction: Evil Only
CreateSubraceAlignmentRestriction("Minotaur", FALSE, FALSE, TRUE);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Ogre ECL +5 ::
//:::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +5
CreateSubrace(RACIAL_TYPE_HALFORC, "Ogre", "sha_pcl_Ogre", "", FALSE, 0, FALSE, 0, 5);
// set Hill Giant subrace to be friendly with Giants (not all giants)
ModifySubraceFaction("Ogre", "FACTION_GIANT", SUBRACE_FACTION_REPUTATION_FRIENDLY);
//LETO - Change ability scores: (Str +6, Dex -2, Con +6, Int -4, Wis, Cha -4)
struct SubraceBaseStatsModifier OgreStats = CustomBaseStatsModifiers(6, -2, 4, -4, 0, -4, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Ogre", OgreStats, 1);
//LETO - Bonus Feats: Darkvision, Armor Prof (light, medium), Wep Prof (Martial, Simple)
//Bonus Feat: Shield Proficiency
ModifySubraceFeat("Ogre", FEAT_DARKVISION, 1);
ModifySubraceFeat("Ogre", FEAT_ARMOR_PROFICIENCY_LIGHT, 1);
ModifySubraceFeat("Ogre", FEAT_ARMOR_PROFICIENCY_MEDIUM, 1);
ModifySubraceFeat("Ogre", FEAT_SHIELD_PROFICIENCY, 1);
ModifySubraceFeat("Ogre", FEAT_WEAPON_PROFICIENCY_MARTIAL, 1);
ModifySubraceFeat("Ogre", FEAT_WEAPON_PROFICIENCY_SIMPLE, 1);
//LETO - Skills: Move Silently -5, Hide -8
ModifySubraceSkill("Ogre", SKILL_HIDE, -8, 1, FALSE);
ModifySubraceSkill("Ogre", SKILL_MOVE_SILENTLY, -5, 1, FALSE);
//Alignment Restriction - Cannot be Lawful
CreateSubraceAlignmentRestriction("Ogre", TRUE, TRUE, TRUE, FALSE);
//Appearance: Ogre - Permanent
CreateSubraceAppearance("Ogre", TIME_BOTH, 75, APPEARANCE_TYPE_OGREB);
//Can't use any Tiny weapons (Too big to hold them!!)
SubraceRestrictUseOfItems("Ogre", ITEM_TYPE_WEAPON_SIZE_TINY, TIME_BOTH);
//Favored Class: Barbarian
AddSubraceFavoredClass("Ogre", CLASS_TYPE_BARBARIAN, CLASS_TYPE_BARBARIAN);
//::::::::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Ogre Mage ECL +7 ::
//::::::::::::::::::::::::::::::::::::::::::::
//Properties from the Skin: AC +5, Regeneration 5, Cast Invisibility at will
//Darkness, Charm person, Cone of cold, Polymorph, Sleep 1/day
CreateSubrace(RACIAL_TYPE_HALFORC, "Ogre-Mage", "sha_pcl_ogre_mag", "sha_subrace_ogrm", FALSE, 0, FALSE, 0, 7);
SetupSubraceAlias("Ogre-Mage", "Ogre Mage");
SetupSubraceAlias("Ogre-Mage", "Ogre Magi");
SetupSubraceAlias("Ogre-Mage", "Ogre-Magi");
// set Hill Giant subrace to be friendly with Giants (not all giants)
ModifySubraceFaction("Ogre-Mage", "FACTION_GIANT", SUBRACE_FACTION_REPUTATION_FRIENDLY);
// Can Fly
AddSubraceItem("Ogre-Mage", "sha_subrace_fly");
//LETO - Change ability scores: (Str +8, Dex, Con +6, Int +2, Wis +4, Cha +8)
struct SubraceBaseStatsModifier OgreMageStats = CustomBaseStatsModifiers(8, 0, 6, 2, 4, 8, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Ogre-Mage", OgreMageStats, 1);
//LETO - Bonus Feats: Darkvision
ModifySubraceFeat("Ogre-Mage", FEAT_DARKVISION, 1);
//Spell Resistance: 18
CreateSubraceSpellResistance("Ogre-Mage", 18, 18);
//Appearance: Ogre - Permanent
CreateSubraceAppearance("Ogre-Mage", TIME_BOTH, 3461, 3461);
//Can't use any Tiny weapons (Too big to hold them!!)
SubraceRestrictUseOfItems("Ogre-Mage", ITEM_TYPE_WEAPON_SIZE_TINY, TIME_BOTH);
//Favored Class: Sorcerer
AddSubraceFavoredClass("Ogre-Mage", CLASS_TYPE_SORCERER, CLASS_TYPE_SORCERER);
//Alignment Restriction: Lawful Evil Only
CreateSubraceAlignmentRestriction("Ogre-Mage", FALSE, FALSE, TRUE, TRUE, FALSE, FALSE);
//:::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Half-Orc - Orc ECL 0 ::
//:::::::::::::::::::::::::::::::::::::
//Light Sensitive
CreateSubrace(RACIAL_TYPE_HALFORC, "Orc", "", "", TRUE);
//LETO - Change ability scores: (Str +2, Dex, Con, Int, Wis -2, Cha)
struct SubraceBaseStatsModifier OrcStats = CustomBaseStatsModifiers(2, 0, 0, 0, -2, 0, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("Orc", OrcStats, 1);
//LETO - Feats: Darkvision
ModifySubraceFeat("Orc", FEAT_DARKVISION, 1);
//Alignment Restriction - Evil
CreateSubraceAlignmentRestriction("Orc", FALSE, FALSE, TRUE);
//Appearance: Orc - Permanent
CreateSubraceAppearance("Orc", TIME_BOTH, 1128, APPEARANCE_TYPE_ORC_SHAMAN_A);
}