2026-02-19 04:57:07 +00:00
|
|
|
extends Node
|
|
|
|
|
|
|
|
|
|
enum CharacterClass {
|
|
|
|
|
BARBARIAN,
|
|
|
|
|
BARD,
|
|
|
|
|
CLERIC,
|
|
|
|
|
DRUID,
|
|
|
|
|
FIGHTER,
|
|
|
|
|
MONK,
|
|
|
|
|
PALADIN,
|
|
|
|
|
RANGER,
|
|
|
|
|
ROGUE,
|
|
|
|
|
SORCERER,
|
|
|
|
|
WARLOCK,
|
|
|
|
|
WIZARD
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
var class_info: Dictionary[CharacterClass, Dictionary] = {
|
|
|
|
|
CharacterClass.BARBARIAN: {
|
2026-02-20 02:47:23 +00:00
|
|
|
"known_for": "Rage",
|
2026-02-19 04:57:07 +00:00
|
|
|
"primary_abilities": [
|
2026-02-19 17:25:10 +00:00
|
|
|
Abilities.Ability.STRENGTH
|
2026-02-19 04:57:07 +00:00
|
|
|
],
|
|
|
|
|
"skill_proficiencies": [
|
|
|
|
|
Skills.Skill.ANIMAL_HANDLING,
|
|
|
|
|
Skills.Skill.ATHLETICS,
|
|
|
|
|
Skills.Skill.INTIMIDATION,
|
|
|
|
|
Skills.Skill.NATURE,
|
|
|
|
|
Skills.Skill.PERCEPTION,
|
|
|
|
|
Skills.Skill.SURVIVAL,
|
|
|
|
|
],
|
2026-02-20 02:47:23 +00:00
|
|
|
"skill_proficiencies_number_to_choose": 2,
|
2026-02-19 04:57:07 +00:00
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 15,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 13,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 14,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 10,
|
|
|
|
|
Abilities.Ability.WISDOM: 12,
|
|
|
|
|
Abilities.Ability.CHARISMA: 8,
|
|
|
|
|
}
|
2026-02-19 17:25:10 +00:00
|
|
|
},
|
|
|
|
|
CharacterClass.BARD: {
|
2026-02-20 02:47:23 +00:00
|
|
|
"known_for": "Razzle-dazzle",
|
2026-02-19 17:25:10 +00:00
|
|
|
"primary_abilities": [
|
|
|
|
|
Abilities.Ability.CHARISMA
|
|
|
|
|
],
|
|
|
|
|
"skill_proficiencies": [
|
|
|
|
|
Skills.Skill.ACROBATICS,
|
|
|
|
|
Skills.Skill.ANIMAL_HANDLING,
|
|
|
|
|
Skills.Skill.ARCANA,
|
|
|
|
|
Skills.Skill.ATHLETICS,
|
|
|
|
|
Skills.Skill.DECEPTION,
|
|
|
|
|
Skills.Skill.HISTORY,
|
|
|
|
|
Skills.Skill.INSIGHT,
|
|
|
|
|
Skills.Skill.INTIMIDATION,
|
|
|
|
|
Skills.Skill.INVESTIGATION,
|
|
|
|
|
Skills.Skill.MEDICINE,
|
|
|
|
|
Skills.Skill.NATURE,
|
|
|
|
|
Skills.Skill.PERCEPTION,
|
|
|
|
|
Skills.Skill.PERFORMANCE,
|
|
|
|
|
Skills.Skill.PERSUASION,
|
|
|
|
|
Skills.Skill.RELIGION,
|
|
|
|
|
Skills.Skill.SLEIGHT_OF_HAND,
|
|
|
|
|
Skills.Skill.STEALTH,
|
|
|
|
|
Skills.Skill.SURVIVAL,
|
|
|
|
|
],
|
2026-02-20 02:47:23 +00:00
|
|
|
"skill_proficiencies_number_to_choose": 3,
|
2026-02-19 17:25:10 +00:00
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 8,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 14,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 12,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 13,
|
|
|
|
|
Abilities.Ability.WISDOM: 10,
|
|
|
|
|
Abilities.Ability.CHARISMA: 15
|
|
|
|
|
}
|
2026-02-20 02:47:23 +00:00
|
|
|
},
|
|
|
|
|
CharacterClass.CLERIC: {
|
|
|
|
|
"known_for": "Devotion",
|
|
|
|
|
"primary_abilities": [
|
|
|
|
|
Abilities.Ability.WISDOM
|
|
|
|
|
],
|
|
|
|
|
"skill_proficiencies": [
|
|
|
|
|
Skills.Skill.HISTORY,
|
|
|
|
|
Skills.Skill.INSIGHT,
|
|
|
|
|
Skills.Skill.MEDICINE,
|
|
|
|
|
Skills.Skill.PERSUASION,
|
|
|
|
|
Skills.Skill.RELIGION,
|
|
|
|
|
],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 2,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 14,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 8,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 13,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 10,
|
|
|
|
|
Abilities.Ability.WISDOM: 15,
|
|
|
|
|
Abilities.Ability.CHARISMA: 12,
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.DRUID: {
|
|
|
|
|
"known_for": "Vibes",
|
|
|
|
|
"primary_abilities": [
|
|
|
|
|
Abilities.Ability.WISDOM
|
|
|
|
|
],
|
|
|
|
|
"skill_proficiencies": [
|
|
|
|
|
Skills.Skill.ANIMAL_HANDLING,
|
|
|
|
|
Skills.Skill.ARCANA,
|
|
|
|
|
Skills.Skill.INSIGHT,
|
|
|
|
|
Skills.Skill.MEDICINE,
|
|
|
|
|
Skills.Skill.NATURE,
|
|
|
|
|
Skills.Skill.PERCEPTION,
|
|
|
|
|
Skills.Skill.RELIGION,
|
|
|
|
|
Skills.Skill.SURVIVAL,
|
|
|
|
|
],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 8,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 12,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 14,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 13,
|
|
|
|
|
Abilities.Ability.WISDOM: 15,
|
|
|
|
|
Abilities.Ability.CHARISMA: 10,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.FIGHTER: {
|
|
|
|
|
"known_for": "...fighting?",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.MONK: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.PALADIN: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.RANGER: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.ROGUE: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.SORCERER: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.WARLOCK: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
CharacterClass.WIZARD: {
|
|
|
|
|
"known_for": "",
|
|
|
|
|
"primary_abilities": [],
|
|
|
|
|
"primary_abilities_number_to_choose": 1,
|
|
|
|
|
"skill_proficiencies": [],
|
|
|
|
|
"skill_proficiencies_number_to_choose": 1,
|
|
|
|
|
"default_ability_scores": {
|
|
|
|
|
Abilities.Ability.STRENGTH: 1,
|
|
|
|
|
Abilities.Ability.DEXTERITY: 1,
|
|
|
|
|
Abilities.Ability.CONSTITUTION: 1,
|
|
|
|
|
Abilities.Ability.INTELLIGENCE: 1,
|
|
|
|
|
Abilities.Ability.WISDOM: 1,
|
|
|
|
|
Abilities.Ability.CHARISMA: 1,
|
|
|
|
|
},
|
2026-02-19 04:57:07 +00:00
|
|
|
}
|
|
|
|
|
}
|