Jaysyn904 66a0a3e043 Initial commit
Initial commit.
2024-08-03 14:13:18 -04:00

534 lines
17 KiB
Plaintext

//: The World of Aerth Subraces
//: Created by Shargast October 2007
//:
//: Kentra - godling of beauty and order
//: 1. Kentran
//: 2. Wood Elf
//: 3. Broadarm-Dwarf
//: 4. Fellow friend Gnome
//: 5. Clurichaun
//: 6. Avariel
//: Ra - godling of balance and change
//: 7. Plainrunner Elf
//: 8. Broad foot Halfling
//: 9. Tigrasidis
//: 10. Minotaur
//: 11. Cynocephali
//: 12. Shroudrunner
//: Dorgon - godling of chaos and destruction
//: 13. Dark Elf (aka Dar'Roth)
//: 14. Black Dwarf (aka Dar'Hammith)
//: 15. Orc (aka Dar'Sinered)
//: 16. Goblin (aka Sen'Kiips)
//: 17. Kobald (aka Sen'Renn)
//: 18. Ogre (aka Dar'Greneloth)
//: 19. Ravian (aka Nec'Crau)
#include "sha_subr_methds"
void main()
{
//:::::::::::::::::::::::::::::::::::::::
// The Races of Kentra :
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Kentran
//Properties from the Skin:
//Damage Resistance: Acid Resist 5 / -
//Damage Resistance: Cold Resist 5 / -
//Damage Resistance: Electrical Resist 5 / -
//Saving Throw Bonus: Universal +2
//Must be: Human
//ECL: + 1
CreateSubrace(RACIAL_TYPE_HUMAN, "kentran", "mm_pcl_hman", "none", FALSE, 0, FALSE, 0, 1);
//LETO - Change ability scores:
//Ability Bonus: Strength +1
//Ability Bonus: Charisma +2
//Ability Bonus: Wisdom +2
struct SubraceBaseStatsModifier KentranStats = CustomBaseStatsModifiers(1, 0, 0, 2, 2, 2, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("kentran", KentranStats, 1);
//LETO - Feats:
//Undead Favoured Enemy
ModifySubraceFeat("kentran", FEAT_FAVORED_ENEMY_UNDEAD, 1);
//LETO - Skills:
//Skill Bonus: Discipline +2
//Skill Bonus: Concentration +2
ModifySubraceSkill("kentran", SKILL_DISCIPLINE, 2, 1, FALSE);
ModifySubraceSkill("kentran", SKILL_CONCENTRATION, 2, 1, FALSE);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("kentran", TRUE, FALSE, FALSE);
//Subrace Appearence
AddSubraceEffect("kentran", EFFECT_TYPE_VISUALEFFECT, VFX_DUR_AURA_YELLOW_DARK, FALSE, DURATION_TYPE_PERMANENT, 0.0, TIME_BOTH);
//Favored Class: Paladin
AddSubraceFavoredClass("kentran", CLASS_TYPE_PALADIN, CLASS_TYPE_PALADIN);
//Spell Resistance: Base: 10, Max: 50. (5 + 1 per level)
CreateSubraceSpellResistance("kentran", 10, 50);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Wood-Elf :::::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Wood-Elf
//Must be: Elf
CreateSubrace(RACIAL_TYPE_ELF, "wood-elf", "mm_pcl_welf", "none", FALSE, 0, FALSE, 0, 1);
//LETO - Change ability scores:
//Ability Bonus: Dexterity +3
//Ability Bonus: Intelligence +1
//Ability Bonus: Wisdom +1
//Ability Bonus: Charisma +3
//Decreased Ability Score: Strength -1
//ECL: +1
struct SubraceBaseStatsModifier ElfWoodStats = CustomBaseStatsModifiers(-1, 3, 0, 1, 1, 3, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("wood-elf", ElfWoodStats, 1);
//Favored Class: Ranger
AddSubraceFavoredClass("wood-elf", CLASS_TYPE_RANGER, CLASS_TYPE_RANGER);
//Orc Favoured Enemy
ModifySubraceFeat("wood-elf", FEAT_FAVORED_ENEMY_ORC, 1);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("wood-elf", TRUE, FALSE, FALSE);
//Spell Resistance: Base: 12
CreateSubraceSpellResistance("wood-elf", 12, 12);
//:::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Broadarm-Dwarf ::::::::
//:::::::::::::::::::::::::::::::::::::
//Subrace Name: Broadarm-Dwarf
//Properties from the Skin:
//AC Bonus +1
//Immunity: Damage Type: Cold 25% Immunity Bonus
//Immunity: Damage Type: Fire 25% Immunity Bonus
//Immunity: Damage Type: Bludgeoning 25% Immunity Bonus
//Saving Throw Bonus: Cold +2, Fear +4, Fire +2
//Bonus Feat: Alertness
//Must be: Dwarf.
//ECL: + 3
CreateSubrace(RACIAL_TYPE_DWARF, "broadarm-dwarf", "mm_pcl_bdw", "", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Ability Bonus: Strength +5
//Decreased Ability Score: Dexterity -2
//Decreased Ability Score: Charisma -1
struct SubraceBaseStatsModifier BroadarmDwarfStats = CustomBaseStatsModifiers(5, -2, 3, 0, 0, -1, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("broadarm-dwarf", BroadarmDwarfStats, 1);
//LETO - Skills:
//Skill Bonus: Discipline +4
ModifySubraceSkill("broadarm-dwarf", SKILL_DISCIPLINE, 4, 1, FALSE);
//Favored class: barbarian
AddSubraceFavoredClass("broadarm-dwarf", CLASS_TYPE_BARBARIAN, CLASS_TYPE_BARBARIAN);
//Gaint Favoured Enemy
ModifySubraceFeat("broadarm-dwarf", FEAT_FAVORED_ENEMY_GIANT, 1);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("broadarm-dwarf", TRUE, FALSE, FALSE);
//:::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Fellowfriend-Gnome ::::
//:::::::::::::::::::::::::::::::::::::
//Subrace Name: Fellowfriend-Gnome
//Properties from the Skin:
//Spell Focus: Enchantment
//Damage Resistance: Magical 15%
//Saving throws: Mind Affecting +4, Will +2
//Must be: Gnome
//ECL: + 1
CreateSubrace(RACIAL_TYPE_GNOME, "fellowfriend-gnome", "mm_pcl_ffg", "", FALSE, 0, FALSE, 0, 1);
//LETO - Change ability scores:
//Ability Bonus: Dexterity +2
//Decreased Ability Score: -2
//Decreased Ability Score: Strength -1
//Decreased Ability Score: Constitution -1
//Ability Bonus: Charisma +1
struct SubraceBaseStatsModifier FellowfriendGnomeStats = CustomBaseStatsModifiers(-1, 2, -1, 0, 0, 1, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("fellowfriend-gnome", FellowfriendGnomeStats, 1);
//LETO - Skills:
//Skill Bonus: Spellcraft +4
ModifySubraceSkill("fellowfriend-gnome", SKILL_SPELLCRAFT, 4, 1, FALSE);
//Favored class: Ranger.
AddSubraceFavoredClass("fellowfriend-gnome", CLASS_TYPE_SORCERER, CLASS_TYPE_SORCERER);
AddSubraceFavoredClass("fellowfriend-gnome", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE);
//Vermin Favoured Enemy
ModifySubraceFeat("fellowfriend-gnome", FEAT_FAVORED_ENEMY_VERMIN, 1);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("fellowfriend-gnome", TRUE, FALSE, FALSE);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Halfling - Clurichaun ::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Clurichaun
//Properties from the Skin:
//AC Bonus +4
//Bonus Feat Alertness
//Freesom of Movement
//Immunity: Poison, Sneak Attack
//Regeneration +1
//Must be: Halfling.
//ECL: +1
CreateSubrace(RACIAL_TYPE_HALFLING, "clurichaun", "mm_pcl_clu", "", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Ability Bonus: Dexterity +8
//Ability Bonus: Wisdom +4
//Decreased Ability Score: Strength -5
//Movement Speed: Fast
struct SubraceBaseStatsModifier ClurichaunStats = CustomBaseStatsModifiers(-3, 8, 0, 0, 4, 0, MOVEMENT_SPEED_FAST);
CreateBaseStatModifier("clurichaun", ClurichaunStats, 1);
//LETO - Feats:
//Darkvision
//Bonus Feat: Dodge
ModifySubraceFeat("clurichaun", FEAT_DARKVISION, 1);
ModifySubraceFeat("clurichaun", FEAT_DODGE, 1);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("clurichaun", TRUE, FALSE, FALSE);
//Undead Favoured Enemy
ModifySubraceFeat("clurichaun", FEAT_FAVORED_ENEMY_UNDEAD, 1);
//Class Restriction: Can only be either: Cleric, Bard, Rogue, Sorcerer or Wizard.
CreateSubraceClassRestriction("clurichaun", FALSE, TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE);
//Favored Class: Cleric.
AddSubraceFavoredClass("clurichaun", CLASS_TYPE_CLERIC, CLASS_TYPE_CLERIC);
AddSubraceFavoredClass("clurichaun", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE);
//Appearance Change: Permanent - Clurichaun
CreateSubraceAppearance("clurichaun", TIME_BOTH, APPEARANCE_TYPE_MEPHIT_WATER,APPEARANCE_TYPE_MEPHIT_WATER);
//Spell Resistance: Base (at Level 1): 15, Max(at Level 40): 55.
CreateSubraceSpellResistance("clurichaun", 15, 55);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Avariel ::::::::::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Avariel
//Properties from the Skin:
//Damage Immunity: 100% Electrical
//Damage Susceptibility: 25% Fire
//Must be: Elf
CreateSubrace(RACIAL_TYPE_ELF, "avariel", "mm_pcl_avr", "none", FALSE, 0, FALSE, 0, 3);
//LETO - Change ability scores:
//Ability Bonus: Dexterity +6
//Ability Bonus: Strength +4
//Ability Bonus: Wisdom +2
//Decreased Ability Score: Intelligence -1
//ECL +2
struct SubraceBaseStatsModifier AvarielStats = CustomBaseStatsModifiers(4, 6, 0, -1, 2, 0, MOVEMENT_SPEED_FAST);
CreateBaseStatModifier("avariel", AvarielStats, 1);
//LETO - Skills:
//Skill Bonus: Spot +4
ModifySubraceSkill("avariel", SKILL_SPOT, 4, 1, FALSE);
//Favored Class: Cleric
AddSubraceFavoredClass("avariel", CLASS_TYPE_CLERIC, CLASS_TYPE_CLERIC);
AddSubraceFavoredClass("avariel", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Bonus Feat: Dodge
ModifySubraceFeat("avariel", FEAT_MOBILITY, 1);
ModifySubraceFeat("avariel", FEAT_DODGE, 1);
ModifySubraceFeat("avariel", FEAT_ALERTNESS, 1);
//Leto - Add Bird wings
ModifySubraceAppearanceAttachment("avariel", APPEARANCE_TYPE_ATTACHMENT_WINGS_BIRD, APPEARANCE_TYPE_ATTACHMENT_WINGS_BIRD, 0, 0, 1);
//Shapechangers Favoured Enemy
ModifySubraceFeat("avariel", FEAT_FAVORED_ENEMY_SHAPECHANGER, 1);
//Alignment Restriction: Good
CreateSubraceAlignmentRestriction("avariel", TRUE, FALSE, FALSE);
//:::::::::::::::::::::::::::::::::::::::
// The Races of Ra :
//:::::::::::::::::::::::::::::::::::::::
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Plainrunner-Elf ::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Plainrunner-Elf
//Properties from the Skin:
//Damage Immunity: 100% Electrical
//Must be: Elf
CreateSubrace(RACIAL_TYPE_ELF, "plainrunner-elf", "mm_pcl_pre", "none", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Ability Bonus: Constitution +3
//Ability Bonus: Dexterity +3
//Decreased Ability Score: Intelligence -2
struct SubraceBaseStatsModifier PlainrunnerElfStats = CustomBaseStatsModifiers(0, 3, 3, -2, 0, 0, MOVEMENT_SPEED_FAST);
CreateBaseStatModifier("plainrunner-elf", PlainrunnerElfStats, 1);
//Favored Class: Ranger & Rogue
AddSubraceFavoredClass("plainrunner-elf", CLASS_TYPE_RANGER, CLASS_TYPE_RANGER);
AddSubraceFavoredClass("plainrunner-elf", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE);
//Magical Beast Favoured Enemy
ModifySubraceFeat("plainrunner-elf", FEAT_FAVORED_ENEMY_MAGICAL_BEAST, 1);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("plainrunner-elf", FALSE, TRUE, FALSE);
//Bonus Feat: Dodge & Mobility
ModifySubraceFeat("plainrunner-elf", FEAT_MOBILITY, 1);
ModifySubraceFeat("plainrunner-elf", FEAT_DODGE, 1);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Broadfoot-Halfling ::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Broadfoot-Halfling
//Properties from the Skin:
//Damage AC +2
//Must be: Halfling
CreateSubrace(RACIAL_TYPE_HALFLING, "broadfoot-halfling", "mm_pcl_bfh", "none", FALSE, 0, FALSE, 0, 1);
//LETO - Change ability scores:
//Ability Bonus: Constitution +3
//Ability Bonus: Strength +2
//Decreased Ability Score: Intelligence +2
//Decreased Ability Score: Dexterity -1
struct SubraceBaseStatsModifier BroadfootHalflingStats = CustomBaseStatsModifiers(2, -1, 3, 2, 0, 0, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("broadfoot-halfling", BroadfootHalflingStats, 1);
//Favored Class: Wizard & Fighter
AddSubraceFavoredClass("broadfoot-halfling", CLASS_TYPE_WIZARD, CLASS_TYPE_WIZARD);
AddSubraceFavoredClass("broadfoot-halfling", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Magical Beast Favoured Enemy
ModifySubraceFeat("broadfoot-halfling", FEAT_FAVORED_ENEMY_MAGICAL_BEAST, 1);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("broadfoot-halfling", FALSE, TRUE, FALSE);
//Bonus Feat: Dodge
ModifySubraceFeat("broadfoot-halfling", FEAT_DODGE, 1);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Tigrasidis ::::::::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Tigrasidis
//Properties from the Skin:
//Damage: AC +4
//Damage Resistence: +1/10
//Saving Throws: +2 Fear, + 1 Reflex
//Must be: Human
CreateSubrace(RACIAL_TYPE_HUMAN, "tigrasidis", "mm_pcl_lup", "none", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//AC Bonus: +1
//Saving Throws: +2 Fear
//Ability Bonus: Constitution +3
//Ability Bonus: Strength +5
//Decreased Ability Score: Intelligence -2
//Decreased Ability Score: Dexterity -2
//Decreased Ability Score: Charisma -1
struct SubraceBaseStatsModifier TigrasidisStats = CustomBaseStatsModifiers(5, -2, 3, -2, 0, -1, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("tigrasidis", TigrasidisStats, 1);
//Favored Class: Fighter
AddSubraceFavoredClass("tigrasidis", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Animals Favoured Enemy
ModifySubraceFeat("tigrasidis", FEAT_FAVORED_ENEMY_ANIMAL, 1);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("tigrasidis", FALSE, TRUE, FALSE);
//Bonus Feat: Dodge
ModifySubraceFeat("tigrasidis", FEAT_AMBIDEXTERITY, 1);
//Appearance: Tigrasidis
CreateSubraceAppearance("tigrasidis", TIME_BOTH, APPEARANCE_TYPE_RAKSHASA_TIGER_MALE, APPEARANCE_TYPE_RAKSHASA_TIGER_MALE);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Minotaur ::::::::::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Minotaur
//Properties from the Skin:
//Damage: AC +2
//Damage Resistence: +1/5
//Must be: Half-Orc
CreateSubrace(RACIAL_TYPE_HALFORC, "minotaur", "mm_pcl_min", "none", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Ability Bonus: Constitution +6
//Ability Bonus: Strength +8
//Decreased Ability Score: Intelligence -3
//Decreased Ability Score: Dexterity -2
//Decreased Ability Score: Charisma -3
//Decreased Ability Score: Wisdom -3
struct SubraceBaseStatsModifier MinotaurStats = CustomBaseStatsModifiers(8, -2, 6, -3, -3, -3, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("minotaur", MinotaurStats, 1);
//Favored Class: Fighter
AddSubraceFavoredClass("minotaur", CLASS_TYPE_FIGHTER, CLASS_TYPE_FIGHTER);
//Dragon Favoured Enemy
ModifySubraceFeat("minotaur", FEAT_FAVORED_ENEMY_DRAGON, 1);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("minotaur", FALSE, TRUE, FALSE);
//Bonus Feat: Dodge
ModifySubraceFeat("minotaur", FEAT_BLIND_FIGHT, 1);
//Appearance: Minotaur
CreateSubraceAppearance("minotaur", TIME_BOTH, APPEARANCE_TYPE_MINOTAUR_CHIEFTAIN, APPEARANCE_TYPE_MINOTAUR_SHAMAN);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Cynocephali ::::::::::::::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Cynocephali
//Properties from the Skin:
//Immunity: Fear
//Must be: Half-Orc
CreateSubrace(RACIAL_TYPE_HALFORC, "cynocephali", "mm_pcl_cyn", "none", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Strength: + 2
//Dexterity: - 2
//Constitution: + 2
//Intelligence: + 4
//Wisdom:- 2
//Charisma: - 3
struct SubraceBaseStatsModifier CynocephaliStats = CustomBaseStatsModifiers(2, -2, 2, 4, -2, -3, MOVEMENT_SPEED_CURRENT);
CreateBaseStatModifier("cynocephali", CynocephaliStats, 1);
//Favored Class: Wizard
AddSubraceFavoredClass("cynocephali", CLASS_TYPE_WIZARD, CLASS_TYPE_WIZARD);
//Dwarf Favoured Enemy
ModifySubraceFeat("cynocephali", FEAT_FAVORED_ENEMY_DWARF, 1);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("cynocephali", FALSE, TRUE, FALSE);
//Bonus Feat: Keen Sense
ModifySubraceFeat("cynocephali", FEAT_KEEN_SENSE, 1);
//Spell Resistance: Base: 12
CreateSubraceSpellResistance("cynocephali", 12, 12);
//Appearance: Cynocephali
CreateSubraceAppearance("cynocephali", TIME_BOTH, APPEARANCE_TYPE_RAKSHASA_WOLF_MALE, APPEARANCE_TYPE_WEREWOLF);
//:::::::::::::::::::::::::::::::::::::::
//:::: SUBRACE: Elf - Shroudrunner ::::
//:::::::::::::::::::::::::::::::::::::::
//Subrace Name: Shroudrunner
//Properties from the Skin:
//Immunity Spell Darkness
//Must be: Elf
CreateSubrace(RACIAL_TYPE_ELF, "shroudrunner", "mm_pcl_shr", "none", FALSE, 0, FALSE, 0, 2);
//LETO - Change ability scores:
//Strength: 0
//Dexterity: +2
//Constitution: 0
//Intelligence: +1
//Wisdom: 0
//Charisma: 0
struct SubraceBaseStatsModifier ShroudrunnerStats = CustomBaseStatsModifiers(0, 2, 0, 1, 0, 0, MOVEMENT_SPEED_FAST);
CreateBaseStatModifier("shroudrunner", ShroudrunnerStats, 1);
//LETO - Feats:
//Darkvision
ModifySubraceFeat("shroudrunner", FEAT_DARKVISION, 1);
//Favored Class: Rogue
AddSubraceFavoredClass("shroudrunner", CLASS_TYPE_ROGUE, CLASS_TYPE_ROGUE);
//Appearance: Cynocephali
CreateSubraceAppearance("shroudrunner", TIME_BOTH, APPEARANCE_TYPE_SHADOW_FIEND, APPEARANCE_TYPE_SHADOW);
//Alignment Restriction: Neutral Only.
CreateSubraceAlignmentRestriction("cynocephali", FALSE, TRUE, FALSE);
//Spell Resistance: 10 + 1 Per Level.
CreateSubraceSpellResistance("shroudrunner", 10, 50);
}