From 0bf69338f7d7e750bb0e6d072b8d1273494ec3f8 Mon Sep 17 00:00:00 2001 From: Marcos Eduardo Crivellaro Date: Wed, 20 Dec 2023 15:52:39 -0300 Subject: [PATCH] Submiting upgraded character sheet for Fabula Ultima. This sheet is an upgraded version of the Fabula Ultima sheet, using the test sheet's as base but with several modifications applied and new content added. The layout was much improved in comparison, it is more user-friendly, more sections were added and the content was reorganized using a better logistic for information. --- Fabula Ultima/FabulaUltima.html | 2813 +++++++++++++++++++------------ 1 file changed, 1706 insertions(+), 1107 deletions(-) diff --git a/Fabula Ultima/FabulaUltima.html b/Fabula Ultima/FabulaUltima.html index 908f38ba05..ddfbb8398e 100644 --- a/Fabula Ultima/FabulaUltima.html +++ b/Fabula Ultima/FabulaUltima.html @@ -1,279 +1,504 @@ - - - - - + +
+
{{charName}}
+
+
+
+

**Weapon Attack**

+

**{{weaponName}}**

+
+

+ {{#weaponCategory}} + **{{weaponCategory}}** + {{#weaponRange}} + - + {{/weaponRange}} + {{/weaponCategory}} + {{#weaponRange}} + **{{weaponRange}}** + {{/weaponRange}} +

+ {{#weaponGrip}} +
[{{weaponGrip}}{{#weaponMartial}} - {{weaponMartial}}{{/weaponMartial}}]
+ {{/weaponGrip}} +
+
- // add change:shieldresist and shieldResist - on('change:hiddencurrentinsight change:addedmagicdefense change:armorresist change:shieldresist sheet:opened', function(){ - getAttrs(["hiddenCurrentInsight", "addedMagicDefense", "armorResist", "shieldResist"], function(values) { - if (values.shieldResist.startsWith("+")) - { - values.shieldResist = values.shieldResist.substring(1); - } +
+
**Attack:** {{attack}}
- if (values.armorResist.startsWith("+")) - { - //if magicArmor start with '+' - var resistBonus = values.armorResist.substring(1); + {{#rollTotal() dice2 dice1}} +
+ {{#^rollWasFumble() dice1}} - setAttrs({ - hiddenMagicDefense: (parseInt(values.hiddenCurrentInsight) + parseInt(values.addedMagicDefense) + parseInt(resistBonus) + parseInt(values.shieldResist)) - }); - } - else - { - setAttrs({ - hiddenMagicDefense: (parseInt(values.armorResist) + parseInt(values.addedMagicDefense) + parseInt(values.shieldResist)) - }); - } - }); - }); + {{#rollGreater() dice1 5}} +
**Critical Success!**
+ {{/rollGreater() dice1 5}} - on('change:repeating_charclasses remove:repeating_charclasses ', function() { - getSectionIDs("charClasses", function(idArray) { - var attributesToGet = []; - idArray.forEach(id => { - attributesToGet.push(`repeating_charClasses_${id}_firstSkillLevel`); - attributesToGet.push(`repeating_charClasses_${id}_secondSkillLevel`); - attributesToGet.push(`repeating_charClasses_${id}_thirdSkillLevel`); - attributesToGet.push(`repeating_charClasses_${id}_fourthSkillLevel`); - attributesToGet.push(`repeating_charClasses_${id}_fifthSkillLevel`); - }); + {{#^rollGreater() dice1 5}} +
**Doubles!**
+ {{/^rollGreater() dice1 5}} - getAttrs(attributesToGet, function(values) { - var totalLevel = 0; - for (let value of Object.values(values)){ - totalLevel += parseInt(value); - } +
**Damage: {{dice1}} + {{weaponDamage}}  ({{damageType}})**
- setAttrs({ - hiddenTotalLevel: totalLevel - }); - }); - }); - getSectionIDs("charClasses", function(idArray) { - var attributesToGet = []; - idArray.forEach(id => attributesToGet.push(`repeating_charClasses_${id}_classBonus`)); + {{/^rollWasFumble() dice1}} - getAttrs(attributesToGet, function(values) { - var health = 0; - var magic = 0; - var inventory = 0; - for (let value of Object.values(values)) - { - if (value == "HP") - health++; - else if (value == "MP") - magic++; - else if (value == "IP") - inventory++; - } + {{#rollWasFumble() dice1}} +
**Critical Fail!**
+ {{/rollWasFumble() dice1}} - setAttrs({ - hiddenBonusHealthPoints: health, - hiddenBonusMagicPoints: magic, - hiddenBonusInventoryPoints: inventory - }); - }); - }); - }); + {{/rollTotal() dice2 dice1}} - //tabs handler - const buttonlist = ["character","stats","magic","class","notes"]; - buttonlist.forEach(button => { - on(`clicked:${button}`, function() { - setAttrs({ - sheetTab: button - }); - }); - }); - + {{#rollGreater() dice1 dice2}} +
**Damage: {{dice1}} + {{weaponDamage}}  ({{damageType}})**
+ {{/rollGreater() dice1 dice2}} + {{#rollGreater() dice2 dice1}} +
**Damage: {{dice2}} + {{weaponDamage}}  ({{damageType}})**
+ {{/rollGreater() dice2 dice1}} + {{#desc}}
**Description:** {{desc}}
{{/desc}} +
+
+ +
+
{{charName}}
+
+
+
+

**{{magicTitle}}**

+

**{{spellName}}**

+
+
+

**Cost: {{spellCost}}**

+

**Target: {{spellTarget}}**

+

**Duration: {{spellDuration}}**

+
+
+ + {{#magicAttack}} + {{#dice1}} + {{#dice2}} + +
+
**Magic Attack:** {{magicAttack}}
+ + {{#rollTotal() dice2 dice1}} +
+ {{#^rollWasFumble() dice1}} + + {{#rollGreater() dice1 5}} +
**Critical Success!**
+ {{/rollGreater() dice1 5}} + + {{#^rollGreater() dice1 5}} +
**Doubles!**
+ {{/^rollGreater() dice1 5}} + + {{#magicDamage}} +
**Damage: {{dice1}} + {{magicDamage}}  ({{magicDamageType}})n**
+ {{/magicDamage}} + + {{/^rollWasFumble() dice1}} + + {{#rollWasFumble() dice1}} +
**Critical Fail!**
+ {{/rollWasFumble() dice1}} + + {{/rollTotal() dice2 dice1}} + + {{#rollGreater() dice1 dice2}} + {{#magicDamage}} +
**Damage: {{dice1}} + {{magicDamage}}  ({{magicDamageType}})**
+ {{/magicDamage}} + {{/rollGreater() dice1 dice2}} + {{#rollGreater() dice2 dice1}} + {{#magicDamage}} +
**Damage: {{dice2}} + {{magicDamage}}  ({{magicDamageType}})**
+ {{/magicDamage}} + {{/rollGreater() dice2 dice1}} + {{/dice2}} + {{/dice1}} + {{/magicAttack}} + + {{#magicEffect}}
**Effect:** {{magicEffect}}
{{/magicEffect}} +
+
+ + +
+
{{charName}}
+
+
+
+

**Check**

+

**{{name}}**

+ {{#attrs}} +
+

{{attrs}}

+
+ {{/attrs}} +
+ +
+
**Result:** {{total}}
+ + {{#rollTotal() dice2 dice1}} +
+ {{#^rollWasFumble() dice1}} + + {{#rollGreater() dice1 5}} +
**Critical Success!**
+ {{/rollGreater() dice1 5}} + + {{#^rollGreater() dice1 5}} +
**Doubles!**
+ {{/^rollGreater() dice1 5}} + + {{/^rollWasFumble() dice1}} + + {{#rollWasFumble() dice1}} +
**Critical Fail!**
+ {{/rollWasFumble() dice1}} + + {{/rollTotal() dice2 dice1}} +
+
+ + +
+
{{charName}}
+
+
+
+

**{{genericTitle}}**

+

+ **{{name}}** +

+ {{#level}} +
+
[Lvl {{level}}]
+
+ {{/level}} + + {{#genericType}} +
+

**{{genericType}}**

+ {{#genericType2}} +

**{{genericType2}}**

+ {{/genericType2}} +
+ {{/genericType}} + + {{#genericValue1}} +
+
+

**{{genericParam1}}: {{genericValue1}}**

+ {{#genericValue2}} +

**{{genericParam2}}: {{genericValue2}}**

+ {{/genericValue2}} + {{#genericValue3}} +

**{{genericParam3}}: {{genericValue3}}**

+ {{/genericValue3}} +
+ {{/genericValue1}} +
+ + {{#genericRoll}} +
+
**Result:** {{genericRoll}}
+ {{/genericRoll}} + + {{#desc}} +
+
**Description:** {{desc}}
+ {{/desc}} + + {{#trigger}} +
+ {{#triggerType}} +

**{{triggerType}}**

+ {{/triggerType}} +
**Trigger:** {{trigger}}
+ {{/trigger}} + + {{#effect}} +
+ {{#effectType}} +

**{{effectType}}**

+ {{/effectType}} +
**Effects:** {{effect}}
+ {{/effect}} +
+
-
+ + +
+ + + - - + + +
+
+

Character

-
+
- -
Name
+
+ + +
+
Name
Identity
Theme
Origin
@@ -282,152 +507,366 @@
-
-
+
+
Bond 1 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
-
-
+
+ Description +
+
+
+
Bond 2 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
-
-
+
+ Description +
+
+
+
Bond 3 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
+
+ Description +
-
-
+
+
Bond 4 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
-
-
+
+ Description +
+
+
+
Bond 5 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
-
-
+
+ Description +
+
+
+
Bond 6 - + +
- Admiration -
-
- Inferiority -
-
- Loyalty -
-
- Mistrust -
-
- Affection -
-
- Hatred + +
+ +
+
+
+ Description +
@@ -474,209 +913,422 @@
-
- - Zenit -
- Projects
-
- Project - Description
+
+
+ +
Name
+
Category + +
+
+
+ + + + + +
+
+ Damage [HR + ] + Type +
+
+ Grip + Range +
+
+
+ Description
-
- -
-
Defense
-
Added defense - -
- -
Magic defense
-
Added magic defense - -
- -
- -
-
initiative
-
-
-
- - Name -
- Defense - Magic defense -
- Armor initiative -
- Description -
-
- -
- Name - -
- Description -
-
- -
-
- -
- Name -
-
- Category +
Name
+
+ Category +
-
- - + + + + + - + +
+
+ Damage [HR + ] + Type
- -
- Damages [HR + ] - -
-
- Grip + -
-
- Range +
-
Martial
-
Description
-
-
- -
Name +
+ Description
-
- Category -
-
-
- Bonus Defense - Bonus Magic defense -
- Shield initiative -
-
-
- - - -
- -
- Damages [HR + ] - -
-
- Grip -
-
- Range -
-
- Martial -
-
-
- Description
+
+
-
-
-
- -
-
-
- Name -
-
- Category -
-
- - -
- -
- Damages [HR + ] - -
-
- Grip -
-
- Range -
-
- Martial -
- Description -
-
-
-
-
-
-
-
- - - - -
-
-
- - - - - - - - - - - - -
-
-
-
- - - - -
-
-
+
+
+
+ + +
+
+ Name + + Armor Initiative +
+ Bonus Defense + Bonus Magic Defense +

+ Description +
+
+
+ + +
+
+ Name +
+
+ Description +
+
+
+ + +
+
+ Name + + Shield Initiative +
+ Bonus Defense + Bonus Magic Defense +

+ Description +
+
+
+

Inventory

+
+ + + +
+
+ +
+
+
Item
+
IP Cost
+
Effect
+
+
+
+ + Elixir +
+
3
+
One creature recovers 50 Mind Points.
+ +
+
+
+ + Remedy +
+
3
+
One creature recovers 50 Hit Points.
+ +
+
+
+ + Tonic +
+
2
+
One creature recovers from a single status effect.
+ +
+
+
+ + Elemental Shard +
+
2
+
One creature suffers 10 damage of a type of your choice (air, + bolt, earth, fire, or ice).
+ +
+
+
+ + Magic Tent +
+
4
+
Allows the entire group to rest in the wilderness.
+ +
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+ Project Name: + + +
+ Cost + Advancement + Max Advancement +
+ Description: +
+
+
+
+
+

Classes

+ + + +

+ +
+
+ +
+ Name + Level + +
+
+ Bonus +
+
+ Description +
+
+
+
+
+ Name + Level + +
+ Description +
+
+
+ Name + Level + +
+ Description +
+
+
+ Name + Level + +
+ Description +
+
+
+ Name + Level + +
+ Description +
+
+
+ Name + Level + +
+ Description +
+
+
+
+
+ Name + +
+ Effect +
+
+
-
-
- +

Magic

+
+ +
+
+ +
+ Name +
+
+ + + + + +
+
+ Damage [HR + ] + Type +
+
+ Cost + Duration +
+
+ Target +
+
+ Effect +
+
+ +
+
+
+
+
+ +
+
+ +
+ Name + +
+
+ Cost + Duration +
+
+ Target +
+
+ Effect +
+
+ +
+
+
+
+
+

Rituals

+
+
+
Arcanism
Chimerism
@@ -1013,292 +1709,195 @@
- +
-
- +
+
+
-
Name
+
+ Name + +
Advancement - Clock max
-
Effect
-
-
-
-
-
- -
-
- - -
-
- - - - Damages [HR + - -
-
- Cost - Target - Duration -
- Effect -
-
-
- -
-
- Name - -
-
- Cost - Target - Duration -
- Effect + Clock Max
+
Effect:
-
- -
- - -
- -
-
-
-
- Name -
-
- Bonus - Level - -
- Description -
-
- -
- Name -
- Effect -
-
- -
-
- Name - Level -
- Description -
-
-
- Name - Level -
- Description -
-
-
- Name - Level -
- Description -
-
-
- Name - Level -
- Description -
-
-
- Name - Level -
- Description -
-
-
-
-
-
-
+
+

Journal

+
- +
+ Title: + +
+
+ +
+
+ Quest: + +
+ +
+
+
+ +
+
+ Character: + +
+ +
+
+
+ +
+
+ Creature: + +
+ +
+
+
+ +
+
+ Location: + +
+ +
+
+
+ +
+
+ Item: + +
+ +
+
+
+ +
+
+ Discovery: + +
+ +
+
+
+
+

Atlas High Fantasy

+

(Optional Content)

+
+ +
+ Name: + Type: + +
+
Description: +
Effects: +
+
+
+ +
+ Name: + Clock: / + +
+
Description: +

+ + +
+ Trigger: +
+ Filled Sections: per trigger +
+
+
Mechanics: +

+ + +
+ Effect: +
+
Mechanics: +
+
+
+

Rolls

+
+ + + + + + +

+
+
+ + + + + + +
+
+
+
+ + + + + + + + + + + + + +
- - - - - - -
-
-

**Weapon Attack**

-
-

**{{weaponName}}**

- {{#weaponCategory}}
**{{weaponCategory}}**
{{/weaponCategory}} -
-
- {{#weaponRange}}

**{{weaponRange}}**

{{/weaponRange}} -
-
- -
**Attack:** {{attack}}
- - {{#rollTotal() dice2 dice1}} - {{#^rollWasFumble() dice1}} - - {{#rollGreater() dice1 5}} -
**Critical Success !**
- {{/rollGreater() dice1 5}} - - {{#^rollGreater() dice1 5}} -
**Doubles !**
- {{/^rollGreater() dice1 5}} - -
**Damage:** {{dice1}} + {{weaponDamage}} {{damageType}}
- - {{/^rollWasFumble() dice1}} - - {{#rollWasFumble() dice1}} -
**Critical Fail !**
- {{/rollWasFumble() dice1}} - - {{/rollTotal() dice2 dice1}} - - {{#rollGreater() dice1 dice2}} -
**Damage:** {{dice1}} + {{weaponDamage}} {{damageType}}
- {{/rollGreater() dice1 dice2}} - {{#rollGreater() dice2 dice1}} -
**Damage:** {{dice2}} + {{weaponDamage}} {{damageType}}
- {{/rollGreater() dice2 dice1}} - - {{#desc}}
**Description :** {{desc}}
{{/desc}} - - -
-
- - -
-
-

**{{spellName}}**

-
-

**Cost: **{{spellCost}}

-

**Target: **{{spellTarget}}

-

**Duration: **{{spellDuration}}

-
-
- - {{#magicAttack}} - {{#dice1}} - {{#dice2}} - -
**Magic Attack:** {{magicAttack}}
- - {{#rollTotal() dice2 dice1}} - {{#^rollWasFumble() dice1}} - - {{#rollGreater() dice1 5}} -
**Critical Success !**
- {{/rollGreater() dice1 5}} - - {{#^rollGreater() dice1 5}} -
**Doubles !**
- {{/^rollGreater() dice1 5}} - - {{#magicDamage}}
**Damage:** {{dice1}} + {{magicDamage}}
{{/magicDamage}} - - {{/^rollWasFumble() dice1}} - - {{#rollWasFumble() dice1}} -
**Critical Fail !**
- {{/rollWasFumble() dice1}} - - {{/rollTotal() dice2 dice1}} - - {{#rollGreater() dice1 dice2}} - {{#magicDamage}}
**Damage:** {{dice1}} + {{magicDamage}}
{{/magicDamage}} - {{/rollGreater() dice1 dice2}} - {{#rollGreater() dice2 dice1}} - {{#magicDamage}}
**Damage:** {{dice2}} + {{magicDamage}}
{{/magicDamage}} - {{/rollGreater() dice2 dice1}} - {{/dice2}} - {{/dice1}} - {{/magicAttack}} - - {{#magicEffect}}
**Effect :** {{magicEffect}}
{{/magicEffect}} -
-
- - -
-
-

**{{name}}**

-
- -
**Result : ** {{total}}
- - {{#rollTotal() dice2 dice1}} - {{#^rollWasFumble() dice1}} - - {{#rollGreater() dice1 5}} -
**Critical Success !**
- {{/rollGreater() dice1 5}} - - {{#^rollGreater() dice1 5}} -
**Doubles !**
- {{/^rollGreater() dice1 5}} - - {{/^rollWasFumble() dice1}} - - {{#rollWasFumble() dice1}} -
**Critical Fail !**
- {{/rollWasFumble() dice1}} - - {{/rollTotal() dice2 dice1}} - - -
-
- - - -