> [!NOTE|div-m] Player Name: `Michael`
> [!column|no-i no-t]
>> [!div-m|no-title]
>> ![[uhtred.png|center|400]]
>
>> [!div-m|no-title] Place Name
>> ~~~meta-bind
>> INPUT[select(
>> option(1, ℹ️General),
>> option(2, 🧙Description),
>> option(3, ⚙️Configure),
>> option(4, 📝DM Notes),
>> class(tabbed)
>> )]
>> ~~~
>>>[!tabbed-box-maxh480|10]
>>> >[!div-m|no-title]
>>> > ![[#General|no-h clean]]
>>>
>>> >[!div-m|no-title]
>>> > ![[#Description|no-h clean]]
>>>
>>> >[!div-m|no-title]
>>> > ![[#Configure|no-h clean]]
>>>
>>> > [!div-m|no-title]
>>> > ![[#DM Notes|no-h clean]]
>>>
> [!NOTE|no-title]
> ~~~meta-bind
> INPUT[select(
> option(1, 🤹Abilities+Skills),
> option(2, 💪Traits),
> option(3, ⚔️Inventory),
> option(4, 🔗Connections),
> option(5, 🧑🤝🧑Relationships),
> class(tabbed)
> )]
> ~~~
> >[!tabbed-box-maxh]
> > >[!div-m|no-title]
> > > ![[#Skills|no-h clean]]
> >
> > >[!div-m|no-title]
> > > ![[#Traits|no-h1 clean]]
> >
> > > ![[#Inventory|no-h1 clean]]
> >
> > > [!div-m|no-title]
> > > ![[#Connections|no-h1 clean]]
> >
> > > [!div-m|no-title]
> > > ![[#Relationships|no-h1 clean]]
---
# General
```badges
items:
- label: Race
value: '{{frontmatter.char_race}}'
- label: Level
value: '{{frontmatter.level}}'
- label: Initiative
value: '{{frontmatter.modifier}}'
```
<br>
```badges
items:
- label: Alchemy Reaction Save
value: 14
- label: AC
value: '{{frontmatter.ac}}'
```
<br>
```healthpoints
state_key: uhtred_health
health: '{{ frontmatter.hp }}'
reset_on: long-rest
hitdice:
dice: d8
value: 3
```
```event-btns
items:
- name: Short Rest
value: short-rest
- name: Long Rest
value: long-rest
```
# Description
51 years old, male, hazel eyes, brown hair, fair skin. 5'10", 160 lbs.
Was a member of a wealthy and influential mercantile/commerce family in Rejken, and was being brought up in the family business. As such, was familiar with airships from a young age, as well as shipping logistics. Also knew the Rejkenur clan, since his family was so important within the city's economy, and has met Lord Haakon a handful of times, though not since the Exodus. When The Riving occurred, Uhtred was 15 years old. His parents and family were killed by the chthona when the city fell, but Uhtred managed to escape with other refugees.
Growing up after The Riving, Uhtred has been driven to use the skills that he learned in his youth to help people, and so he became a smuggler, trying to ensure that everyone had what they needed in this new, harsh world, skirting local laws or market forces if necessary. He is very sympathetic to others who have lost family to the chthona. He is also possessed of a burning hatred of the chthona for killing his parents and also for ending the world that humanity had built for 3000 years.
# Configure
| Stat | Value |
| ---------- | --------------------------------------------- |
| Status | `INPUT[template-person-status][:char_status]` |
| Race | `INPUT[template-person-race][:char_race]` |
| Class | `INPUT[template-person-class][:char_class]` |
| Level | `INPUT[number:level]` |
| Gender | `INPUT[template-person-gender][:char_gender]` |
| Age | `INPUT[template-person-age-range][:char_age]` |
| HP | `INPUT[number:hp]` |
| Max HP | `INPUT[number:max_hp]` |
| AC | `INPUT[number:ac]` |
| Initiative | `INPUT[number:modifier]` |
# DM Notes
Uhtred has introduced himself to Lord Haakon, who recognises and remembers him. Haakon remembers well his father's merchant business and so thinks highly of Uhtred… for now.
# Skills
```ability
abilities:
strength: 10
dexterity: 17
constitution: 14
intelligence: 10
wisdom: 10
charisma: 14
proficiencies:
- intelligence
- dexterity
```
<br>
```skills
proficiencies:
- acrobatics
- athletics
- deception
- insight
- intimidation
- perception
- persuasion
- piloting
- stealth
expertise:
- persuasion
- stealth
```
# Traits
Feats, class features, and other traits are listed here.
### Versatile and Skilful (Origin)
You start with an additional Origin Feat and an additional skill proficiency of your choice (chose Skilled feat and proficiency in Charisma (Persuasion)).
You gain **Heroic Inspiration** whenever you finish a Long Rest.
### Down Low (Smuggler Background)
You are acquainted with a network of smugglers who are willing to help you out of tight situations. While in a particular town, city, or other similarly sized community (DM's discretion), **you and your companions can stay for free in safe houses**. Safe houses provide a Poor Lifestyle. While staying at a safe house, you can choose to keep your presence (and that of your companions) a secret.
### Favoured by Carn (Religion)
You get a +1 bonus to Wisdom (Perception) checks to track or spot a quarry.
### Sneak Attack (Rogue 1st Level)
You know how to strike subtly and exploit a foe's distraction. Once per turn, **you can deal an extra 1d6 damage** to one creature you hit with an attack roll **if you have Advantage on the roll and the attack uses a Finesse or Ranged weapon**. The extra damage's type is the same as the weapon's type.
You don't need Advantage on the attack roll if at least one of your allies is within 5 feet of the target, the ally isn't Incapacitated, and you don't have Disadvantage on the attack roll.
The extra damage increases as you gain Rogue levels, as shown in the Sneak Attack column of the Rogue features table.
### Thieves' Cant (Rogue 1st Level)
During your Rogue training, you learned Thieves' Cant, a secret mix of dialect, jargon, and code that allows you to hide messages in seemingly normal conversations. Only another person who knows Thieves' Cant understands such messages. It takes four times longer to convey such a message than it does to speak the same idea plainly.
In addition, you understand a set of secret signs and symbols used to convey short, simple messages, such as whether an area is dangerous or the territory of a thieves' guild, whether loot is nearby, or whether the people in an area are easy marks or will provide a safe house for thieves on the run.
### Weapon Mastery (Rogue 1st Level)
Your training with weapons allows you to use the **Mastery Properties** of two kinds of weapons of your choice with which you have proficiency. Whenever you finish a Long Rest, you can change the kinds of weapons you chose.
```badges
items:
- label: Weapon Type
value: Shortswords
- label: Weapon Type
value: Shortbows
```
**Shortswords: Vex** (If you hit a creature with this weapon and deal damage to the creature, you have Advantage on your next attack roll against that creature before the end of your next turn.)
**Shortbows: Vex** (If you hit a creature with this weapon and deal damage to the creature, you have Advantage on your next attack roll against that creature before the end of your next turn.)
### Cunning Action (Rogue 2nd Level)
On your turn, you can take one of the following actions as a Bonus Action: **Dash, Disengage, or Hide**.
### Steady Aim (Rogue 3rd Level)
As a Bonus Action, you give yourself Advantage on your next attack roll on the current turn. You can use this feature only if you haven't moved during this turn, and after you use it, your Speed is 0 until the end of the current turn.
### Master of Intrigue (Mastermind 3rd Level)
When you choose this archetype at 3rd level, you gain proficiency with the disguise kit, the forgery kit, and one gaming set of your choice. You also learn the Old Tongue.
Additionally, you can unerringly mimic the speech patterns and accent of a creature that you hear speak for at least 1 minute, enabling you to pass yourself off as a native speaker of a particular region or group, provided that you know the language.
### Master of Tactics (Mastermind 3rd Level)
You can use the [[Actions#Help|Help]] action as a Bonus Action. Additionally, when you use the Help action to aid an ally in attacking a creature, the target of that attack can be within 30 feet of you, rather than 5 feet of you, if the target can see or hear you.
# Inventory
The following items belong to `= this.file.name`.
Items: `INPUT[inlineListSuggester(optionQuery(#Category/Item)):char_items]`
#### [[Talisman of Balance]]
When rolling a d20 for a d20 test, treat all rolls of 1 as a 2 and all rolls of 20 as a 19.
#### [[Crown of Vigilance]]
You gain 1 Temporary Hit Point at the start of each of your turns as long as you can see an enemy creature. These Temporary Hit Points expire at the end of combat.
#### [[Voyager's Boots]]
Difficult Terrain doesn't cost you extra movement to traverse.
# Proficiencies
**Armour:** Light Armour
**Weapons:** Simple weapons and other weapons with the Finesse or Light properties
**Tools:** Airships, Disguise Kit, Forgery Kit, Thieves' Tools
# Connections
Is the person linked to any groups or quests?
Quests: `INPUT[inlineListSuggester(optionQuery(#Category/Quest)):Connected_Quests]`
Groups: `INPUT[inlineListSuggester(optionQuery(#Category/Group)):Connected_Groups]`
# Relationships
List important relationships here.
```dataviewjs
var parents = dv.current().parents ?? [];
var children = dv.current().children ?? [];
var enemies = dv.current().enemies ?? [];
var allies = dv.current().allies ?? [];
var siblings = dv.current().siblings ?? [];
var current = dv.current().file.name;
var partner = dv.current().partner ?? [];
dv.paragraph("```mermaid\nflowchart LR\n" +
// Parents with internal-link on individual nodes only
(parents.length > 0 ? parents.map((parent, index) => `P${index + 1}[${parent}]:::internal-link\nP${index + 1} --> Current\n`).join('') : '') +
// Current node
`Current[${current}]\n` +
// Partner group node (no internal-link applied)
(partner.length > 0 ? `PT[Partner]\nCurrent --> PT\n` : '') +
// Individual partners with internal-link
(partner.length > 0 ? partner.map((p, index) => `PT${index + 1}[${p}]:::internal-link\nPT --> PT${index + 1}\n`).join('') : '') +
// Children group node (no internal-link applied)
(children.length > 0 ? `C[Children]\nCurrent --> C\n${children.map((child, index) => `C${index + 1}[${child}]:::internal-link\nC --> C${index + 1}\n`).join('')}` : '') +
// Siblings group node (no internal-link applied)
(siblings.length > 0 ? `S[Siblings]\nCurrent --> S\n${siblings.map((sibling, index) => `S${index + 1}[${sibling}]:::internal-link\nS --> S${index + 1}\n`).join('')}` : '') +
// Enemies group node (no internal-link applied)
(enemies.length > 0 ? `E[Enemies]\nCurrent --> E\n${enemies.map((enemy, index) => `E${index + 1}[${enemy}]:::internal-link\nE --> E${index + 1}\n`).join('')}` : '') +
// Allies group node (no internal-link applied)
(allies.length > 0 ? `A[Allies]\nCurrent --> A\n${allies.map((ally, index) => `A${index + 1}[${ally}]:::internal-link\nA --> A${index + 1}\n`).join('')}` : '') +
// Styling: Apply internal-link only to individual nodes, not group nodes
`class ${parents.length > 0 ? parents.map((_, index) => `P${index + 1},`).join('') : ''}Current${children.length > 0 ? children.map((_, index) => `C${index + 1},`).join('') : ''}${siblings.length > 0 ? siblings.map((_, index) => `S${index + 1},`).join('') : ''}${enemies.length > 0 ? enemies.map((_, index) => `E${index + 1},`).join('') : ''}${allies.length > 0 ? allies.map((_, index) => `A${index + 1},`).join('') : ''} internal-link;`
)
```
%% CODE ABOVE CREATED WITH CHAT-GPT. ITS COMPLEX CODE THAT SHOULD NOT BE CHANGED UNLESS YOU KNOW WHAT YOU ARE DOING %%
%% MERMAID-FIX-TEXT-CLIPPING.CSS is enabled in Settings > Appearance > CSS Snippets. This fixes text clipping and styles the boxes %%
> [!NOTE]- Relationship Config - Enter name of People Notes
> `BUTTON[button_person]` Nodes will link to notes of the same name.
>
> | Parents | Partner | Children |
> | --- | --- | --- |
> | `INPUT[list:parents]` | `INPUT[list:partner]` | `INPUT[list:children]` |
>
> | Siblings | Enemies | Allies |
> | --- | --- | --- |
> | `INPUT[list:siblings]` | `INPUT[list:enemies]` | `INPUT[list:allies]` |
```dataviewjs
const player = dv.current();
const factions = dv.pages('"3-Mechanics/Guilds and Groups"');
let tableData = [];
for (let faction of factions) {
let factionName = faction.faction;
let playerStanding = player.faction_standing?.[factionName] || 0;
// Ensure benefits is treated as an array
let benefitsList = Array.isArray(faction.benefits) ? faction.benefits : [];
// Filter benefits the player qualifies for
let qualifiedBenefits = benefitsList
.filter(b => playerStanding >= b.standing)
.map(b => b.reward)
.join(", ");
let primaryContact = faction.primary_contact || "No contact set";
tableData.push([factionName, playerStanding, qualifiedBenefits || "No benefits yet", primaryContact]);
}
dv.table(["Faction", "Your Standing", "Benefits", "Primary Contact"], tableData);
```