mirror of
https://github.com/Threnklyn/dungeon-sheets.git
synced 2026-05-23 06:08:29 +02:00
194 lines
9.2 KiB
Python
194 lines
9.2 KiB
Python
from .. import (weapons, features)
|
||
from .classes import CharClass, SubClass
|
||
from collections import defaultdict
|
||
|
||
|
||
# PHB
|
||
class CollegeOfLore(SubClass):
|
||
"""Bards of the College o f Lore know something about most things, collecting
|
||
bits of knowledge from sources as diverse as scholarly tomes and peasant
|
||
tales. Whether singing folk ballads in taverns or elaborate compositions in
|
||
royal courts, these bards use their gifts to hold audiences
|
||
spellbound. When the applause dies down, the audience members might find
|
||
themselves questioning everything they held to be true, from their faith in
|
||
the priesthood of the local temple to their loyalty to the king.
|
||
|
||
The loyalty of these bards lies in the pursuit of beauty and truth, not in
|
||
fealty to a monarch or following the tenets of a deity. A noble who keeps
|
||
such a bard as a herald or advisor knows that the bard would rather be
|
||
honest than politic.
|
||
|
||
The college’s members gather in libraries and sometimes in actual colleges,
|
||
complete with classrooms and dormitories, to share their lore with one
|
||
another. They also meet at festivals or affairs of state, where they can
|
||
expose corruption, unravel lies, and poke fun at selfimportant figures of
|
||
authority.
|
||
|
||
"""
|
||
name = "College of Lore"
|
||
features_by_level = defaultdict(list)
|
||
features_by_level[3] = [features.LoreProficiencies, features.CuttingWords]
|
||
features_by_level[6] = [features.AdditionalMagicalSecrets]
|
||
features_by_level[14] = [features.PeerlessSkill]
|
||
|
||
|
||
class CollegeOfValor(SubClass):
|
||
"""Bards of the College of Valor are daring skalds whose tales keep alive the
|
||
memory of the great heroes of the past, and thereby inspire a new
|
||
generation of heroes. These bards gather in mead halls or around great
|
||
bonfires to sing the deeds of the mighty, both past and present. They
|
||
travel the land to witness great events firsthand and to ensure that the
|
||
memory of those events doesn’t pass from the world. With their songs, they
|
||
inspire others to reach the same heights of accomplishment as the heroes of
|
||
old
|
||
|
||
"""
|
||
name = "College of Valor"
|
||
weapon_proficiencies = (weapons.MartialWeapon,)
|
||
_proficencies_text = ('martial weapons', 'medium armor', 'shields')
|
||
features_by_level = defaultdict(list)
|
||
features_by_level[3] = [features.CombatInspiration]
|
||
features_by_level[6] = [features.BardExtraAttack]
|
||
features_by_level[14] = [features.BardBattleMagic]
|
||
|
||
|
||
# XGTE
|
||
class CollegeOfGlamour(SubClass):
|
||
"""The College of Glamour is the home Of bards who mas— tered their craft in
|
||
the vibrant realm of the Feywild or under the tutelage Of someone who
|
||
dwelled there. Tutored by satyrs, eladrin, and other fey, these bards
|
||
learn to use their magic to delight and captivate others.
|
||
|
||
The bards of this college are regarded with a mixture of awe and
|
||
fear. Their performances are the stuff of legend. These bards are so
|
||
eloquent that a speech or song that one of them performs can cause captors
|
||
tO release the bard unharmed and can lull a furious dragon into
|
||
complacency. The same magic that allows them to quell beasts can also bend
|
||
minds. Villainous bards Of this college can leech Off a community for
|
||
weeks, misusing their magic to turn their hosts into thralls. Heroic bards
|
||
of this college instead use this power to gladden the downtrodden and
|
||
undermine oppressors.
|
||
|
||
"""
|
||
name = "College of Glamour"
|
||
features_by_level = defaultdict(list)
|
||
features_by_level[3] = [features.MantleOfInspiration,
|
||
features.EnthrallingPerformance]
|
||
features_by_level[6] = [features.MantleOfMajesty]
|
||
features_by_level[14] = [features.UnbreakableMajesty]
|
||
|
||
|
||
class CollegeOfSwords(SubClass):
|
||
"""Bards of the College of Swords are called blades, and they entertain
|
||
through daring feats of weapon prowess. Blades perform stunts such as sword
|
||
swallowing, knife throwing and juggling, and mock combats. Though they use
|
||
their weapons to entertain, they are also highly trained and skilled
|
||
warriors in their own right.
|
||
|
||
Their talent with weapons inspires many blades to lead double lives. One
|
||
blade might use a circus troupe as cover for nefarious deeds such as
|
||
assassination, robbery, and blackmail. Other blades strike at the wicked,
|
||
bringingjustice to bear against the cruel and powerful. Most troupes are
|
||
happy to accept a blade’s talent for the excitement it adds to a
|
||
performance, but few entertainers fully trust a blade in their ranks.
|
||
|
||
Blades who abandon their lives as entertainers have often run into trouble
|
||
that makes maintaining their secret activities impossible. A blade caught
|
||
stealing or engaging in vigilante justice is too great a liability for most
|
||
troupes. With their weapon skills and magic, these blades either take up
|
||
work as enforcers for thieves’ guilds or strike out on their own as
|
||
adventurers.
|
||
|
||
"""
|
||
name = "College of Swords"
|
||
features_by_level = defaultdict(list)
|
||
weapon_prociciencies = (weapons.Scimitar,)
|
||
_proficiencies_text = ('medium armor', 'scimitar')
|
||
features_by_level[3] = [features.SwordsProficiency,
|
||
features.BardFightingStyle,
|
||
features.BladeFlourish]
|
||
features_by_level[6] = [features.BardExtraAttack]
|
||
features_by_level[14] = [features.MastersFlourish]
|
||
|
||
|
||
class CollegeOfWhispers(SubClass):
|
||
"""Most folk are happy to welcome a bard into their midst. Bards of the
|
||
College of Whispers use this to their advantage. They appear to be like
|
||
other bards, sharing news, singing songs, and telling tales to the
|
||
audiences they gather. In truth, the College of Whispers teaches its
|
||
students that they are wolves among sheep. These bards use their knowledge
|
||
and magic to uncover secrets and turn them against others through extortion
|
||
and threats.
|
||
|
||
Many other bards hate the College of Whispers, viewing it as a parasite
|
||
that uses a bard’s reputation to acquire wealth and power. For this reason,
|
||
members of this college rarely reveal their true nature. They typically
|
||
claim to follow some other college, or they keep their actual calling
|
||
secret in order to infiltrate and exploit royal courts and other settings
|
||
of power
|
||
|
||
"""
|
||
name = "College of Whispers"
|
||
features_by_level = defaultdict(list)
|
||
features_by_level[3] = [features.PsychicBlades, features.WordsOfTerror]
|
||
features_by_level[6] = [features.MantleOfWhispers]
|
||
features_by_level[14] = [features.ShadowLore]
|
||
|
||
|
||
class Bard(CharClass):
|
||
name = 'Bard'
|
||
hit_dice_faces = 8
|
||
subclass_select_level = 3
|
||
saving_throw_proficiencies = ('dexterity', 'charisma')
|
||
primary_abilities = ('charisma',)
|
||
_proficiencies_text = (
|
||
'Light armor', 'simple weapons', 'hand crossbows', 'longswords',
|
||
'rapiers', 'shortswords', 'three musical instruments of your choice')
|
||
weapon_proficiencies = (weapons.HandCrossbow, weapons.Longsword,
|
||
weapons.Rapier, weapons.Shortsword,
|
||
weapons.SimpleWeapon)
|
||
class_skill_choices = ('Acrobatics', 'Animal Handling', 'Arcana',
|
||
'Athletics', 'Deception', 'History', 'Insight',
|
||
'Intimidation', 'Investigation', 'Medicine',
|
||
'Nature', 'Perception', 'Performance', 'Persuasion',
|
||
'Religion', 'Sleight of Hand', 'Stealth',
|
||
'Survival')
|
||
multiclass_weapon_proficiencies = ()
|
||
_multiclass_proficiencies_text = ('Light Armor', '[choose one skill]',
|
||
'[choose one musical instrument]')
|
||
num_skill_choices = 3
|
||
subclasses_available = (CollegeOfLore, CollegeOfValor, CollegeOfGlamour,
|
||
CollegeOfSwords, CollegeOfWhispers)
|
||
features_by_level = defaultdict(list)
|
||
features_by_level[1] = [features.BardicInspiration]
|
||
features_by_level[2] = [features.SongOfRest, features.JackOfAllTrades]
|
||
features_by_level[3] = [features.BardExpertise]
|
||
features_by_level[5] = [features.FontOfInspiration]
|
||
features_by_level[6] = [features.Countercharm]
|
||
features_by_level[10] = [features.MagicalSecrets]
|
||
features_by_level[20] = [features.SuperiorInspiration]
|
||
spellcasting_ability = 'charisma'
|
||
spell_slots_by_level = {
|
||
# char_lvl: (cantrips, 1st, 2nd, 3rd, ...)
|
||
1: (2, 2, 0, 0, 0, 0, 0, 0, 0, 0),
|
||
2: (2, 3, 0, 0, 0, 0, 0, 0, 0, 0),
|
||
3: (2, 4, 2, 0, 0, 0, 0, 0, 0, 0),
|
||
4: (3, 4, 3, 0, 0, 0, 0, 0, 0, 0),
|
||
5: (3, 4, 3, 2, 0, 0, 0, 0, 0, 0),
|
||
6: (3, 4, 3, 3, 0, 0, 0, 0, 0, 0),
|
||
7: (3, 4, 3, 3, 1, 0, 0, 0, 0, 0),
|
||
8: (3, 4, 3, 3, 2, 0, 0, 0, 0, 0),
|
||
9: (4, 4, 3, 3, 3, 1, 0, 0, 0, 0),
|
||
10: (4, 4, 3, 3, 3, 2, 0, 0, 0, 0),
|
||
11: (4, 4, 3, 3, 3, 2, 1, 0, 0, 0),
|
||
12: (4, 4, 3, 3, 3, 2, 1, 0, 0, 0),
|
||
13: (4, 4, 3, 3, 3, 2, 1, 1, 0, 0),
|
||
14: (4, 4, 3, 3, 3, 2, 1, 1, 0, 0),
|
||
15: (4, 4, 3, 3, 3, 2, 1, 1, 1, 0),
|
||
16: (4, 4, 3, 3, 3, 2, 1, 1, 1, 0),
|
||
17: (4, 4, 3, 3, 3, 2, 1, 1, 1, 1),
|
||
18: (4, 4, 3, 3, 3, 3, 1, 1, 1, 1),
|
||
19: (4, 4, 3, 3, 3, 3, 2, 1, 1, 1),
|
||
20: (4, 4, 3, 3, 3, 3, 2, 2, 1, 1),
|
||
}
|