diff --git a/RolemasterUnified/sheet_RMU_v1_1.html b/RolemasterUnified/sheet_RMU_v1_1.html index 2782e6e19a..d4d82c0093 100644 --- a/RolemasterUnified/sheet_RMU_v1_1.html +++ b/RolemasterUnified/sheet_RMU_v1_1.html @@ -1113,2884 +1113,3715 @@ Macro -
Animal:[Ag]+ [Em] -
-
- Animal Handling- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Animal Handling @{animalhandling1name}}} {{subtags=Category: Animal}} {{check=Animal Handling @{animalhandling1name} (@{animalhandling1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll} +[[@{animalhandling1}]] +?{Other bonus/penalty?|0} ]]}} {{raw_roll=$[[0]]}} {{oedownroll= $[[0]]-[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{animalhandling1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{animalhandling1notes} }}  - -
-
- Animal Handling- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Animal Handling @{animalhandling2name}}} {{subtags=Category: Animal}} {{check=Animal Handling @{animalhandling2name} (@{animalhandling2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{animalhandling2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{animalhandling2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{animalhandling2notes} }}  - -
-
- Animal Handling- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Animal Handling @{animalhandling3name}}} {{subtags=Category: Animal}} {{check=Animal Handling @{animalhandling3name} (@{animalhandling3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{animalhandling3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{animalhandling3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{animalhandling3notes} }}  - -
-
- Riding- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Riding @{riding1name}}} {{subtags=Category: Animal}} {{check=Riding @{riding1name} (@{riding1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{riding1}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{riding1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{riding1notes} }}  - -
-
- Riding- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Riding @{riding2name}}} {{subtags=Category: Animal}} {{check=Riding @{riding2name} (@{riding2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{riding2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{riding2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{riding2notes} }}  - -
-
- Riding- - - - -   - Pr - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Riding @{riding3name}}} {{subtags=Category: Animal}} {{check=Riding @{riding3name} (@{riding3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{riding3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{riding3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{riding3notes} }}  - -
-

- Awareness:[In]+[Re]: -
-
- Perception - - - -   - SD - - - - - - - Perception -
-
- Tracking - - - -   - Ag - - - - - - - Tracking - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Tracking }} {{subtags=Category: Artistic, Active}} {{check= Tracking (@{trackingranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{tracking}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{tracking} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{trackingnotes} }}  - -
-
-
- Battle Expertise:[N/A]+ [N/A] -
-
- Maneuvering In Armor - - - - - - Ag - - - - - - - - -
-
- Mounted Combat - - - - - - Ag - - - - - - - - -
-
- Protect - - - - - - Ag - - - - - - - - -
-
- Restricted Quarters - - - - - - Ag - - - - - - - - -
-
- Subduing - - - - - - Ag - - - - - - - - -
-
-
- Body Discipline:[Co]+ [Sd] -
-
- Adrenal Defense - - - - - - Ag - - - - - - - - -
-
- Adrenal Focus - - - - - - Ag - - - - - - - - -
-
- Adrenal Speed - - - - - - Ag - - - - - - - - -
-
- Adrenal Strength - - - - - - Ag - - - - - - - - -
-
-
- Brawn:[Co]+ [Sd] -
-
- Body Development - - - - - - Ag - - - - - - - - -
-
- Fortitude - - - - - - Ag - - - - - - - - -
-
- Weight-Training - - - - - - Ag - - - - - - - - -
-
-
Combat Expertise:[N/A]+ [N/A] -
-
- Blind Fighting - - - - - - Ag - - - - - - - - -
-
- Disarm - - - - - - Ag - - - - - - - - -
-
- Footwork - - - - - - Ag - - - - - - - - -
-
- Multiple Attacks - - - - - - Ag - - - - - - - - -
-
- Reverse Strike - - - - - - Ag - - - - - - - - -
-
-
- Combat Training:[Ag]+ [St] -
-
- Melee Weapons- - - - - - - Ag - - - - - - - - -
-
- Melee Weapons- - - - - - - Ag - - - - - - - - -
-
- Melee Weapons- - - - - - - Ag - - - - - - - - -
-
- Ranged Weapons- - - - - - - Ag - - - - - - - - -
-
- Ranged Weapons- - - - - - - Ag - - - - - - - - -
-
- Ranged Weapons- - - - - - - Ag - - - - - - - - -
-
- Shield - - - - - - Ag - - - - - - - - -
-
- Unarmed (Sweeps)- - - - - - - Ag - - - - - - - - -
-
- Unarmed (Sweeps)- - - - - - - Ag - - - - - - - - -
-
- Unarmed (Sweeps)- - - - - - - Ag - - - - - - - - -
-
- Unarmed (Throws)- - - - - - - Ag - - - - - - - - -
-
- Unarmed (Throws)- - - - - - - Ag - - - - - - - - -
-
- Unarmed (Throws)- - - - - - - Ag - - - - - - - - -
-
-
- Composition:[Em]+ [In] -
-
- Illusion Crafting - - - - - - Ag - - - - - - - - -
-
- Musical Composition - - - - - - Ag - - - - - - - - -
-
- Writing- - - - - - - Ag - - - - - - - - -
-
- Writing- - - - - - - Ag - - - - - - - - -
-
- Writing- - - - - - - Ag - - - - - - - - -
-
-
- Crafting:[Ag]+ [Me] -
-
- Culinary - - - - - - Ag - - - - - - - - -
-
- Drawing/Painting - - - - - - Ag - - - - - - - - -
-
- Fabric Craft - - - - - - Ag - - - - - - - - -
-
- Leathercraft - - - - - - Ag - - - - - - - - -
-
- Metalcraft - - - - - - Ag - - - - - - - - -
-
- Stonecraft - - - - - - Ag - - - - - - - - -
-
- Woodcraft - - - - - - Ag - - - - - - - - -
-
-
- Delving:[Em]+ [In] -
-
- Attunrment - - - - - - Ag - - - - - - - - -
-
- Runes - - - - - - Ag - - - - - - - - -
-
-
- Environmental:[In]+ [Me] -
-
- Navigation - - - - - - Ag - - - - - - - - -
-
- Piloting- - - - - - - Ag - - - - - - - - -
-
- Piloting- - - - - - - Ag - - - - - - - - -
-
- Piloting- - - - - - - Ag - - - - - - - - -
-
- Survival- - - - - - - Ag - - - - - - - - -
-
- Survival- - - - - - - Ag - - - - - - - - -
-
- Survival- - - - - - - Ag - - - - - - - - -
-
-
- Gymnastic:[Ag]+ [Qu] -
-
- Acrobatics - - - - - - Ag - - - - - - - - -
-
- Contortions - - - - - - Ag - - - - - - - - -
-
- Jumping - - - - - - Ag - - - - - - - - -
-
-
- Lore:[Me]+ [Me] -
-
- Creature Lore- - - - - - - Ag - - - - - - - - -
-
- Creature Lore- - - - - - - Ag - - - - - - - - -
-
- Creature Lore- - - - - - - Ag - - - - - - - - -
-
- Historic Lore- - - - - - - Ag - - - - - - - - -
-
- Historic Lore- - - - - - - Ag - - - - - - - - -
-
- Historic Lore- - - - - - - Ag - - - - - - - - -
-
- Language- - - - - - - Ag - - - - - - - - -
-
- Language- - - - - - - Ag - - - - - - - - -
-
- Language- - - - - - - Ag - - - - - - - - -
-
- Materials Lore- - - - - - - Ag - - - - - - - - -
-
- Materials Lore- - - - - - - Ag - - - - - - - - -
-
- Materials Lore- - - - - - - Ag - - - - - - - - -
-
- Racial Lore- - - - - - - Ag - - - - - - - - -
-
- Racial Lore- - - - - - - Ag - - - - - - - - -
-
- Racial Lore- - - - - - - Ag - - - - - - - - -
-
- Region Lore- - - - - - - Ag - - - - - - - - -
-
- Region Lore- - - - - - - Ag - - - - - - - - -
-
- Region Lore- - - - - - - Ag - - - - - - - - -
-
- Religion/Philosophy- - - - - - - Ag - - - - - - - - -
-
- Religion/Philosophy- - - - - - - Ag - - - - - - - - -
-
- Religion/Philosophy- - - - - - - Ag - - - - - - - - -
-
- Spell Lore - - - - - - Ag - - - - - - - - -
-
-
- Magical Expertise:[N/A]+ [N/A] -
-
- Grace- - - - - - - Ag - - - - - - - - -
-
- Grace- - - - - - - Ag - - - - - - - - -
-
- Grace- - - - - - - Ag - - - - - - - - -
-
- Spell Trickery- - - - - - - Ag - - - - - - - - -
-
- Spell Trickery- - - - - - - Ag - - - - - - - - -
-
- Spell Trickery- - - - - - - Ag - - - - - - - - -
-
- Transcendence - - - - - - Ag - - - - - - - - -
-
-
- Medical:[In]+ [Me] -
-
- Herbalism - - - - - - Ag - - - - - - - - -
-
- Medicine - - - - - - Ag - - - - - - - - -
-
- Poison Mastery - - - - - - Ag - - - - - - - - -
-
-
- Mental Discipline:[Pr]+ [SD] -
-
- Control Lycanthropy - - - - - - Ag - - - - - - - - -
-
- Meditation - - - - - - Ag - - - - - - - - -
-
- Mental Focus - - - - - - Ag - - - - - - - - -
-
-
- Movement:[Ag]+ [St] -
-
- Climbing - - - - - - Ag - - - - - - - - -
-
- Flying - - - - - - Ag - - - - - - - - -
-
- Running - - - - - - Ag - - - - - - - - -
-
- Swimming - - - - - - Ag - - - - - - - - -
-
-
- Performance Art:[Em]+ [Pr] -
-
- Acting - - - - - - Ag - - - - - - - - -
-
- Music- - - - - - - Ag - - - - - - - - -
-
- Music- - - - - - - Ag - - - - - - - - -
-
- Music- - - - - - - Ag - - - - - - - - -
-
- Stage Magic - - - - - - Ag - - - - - - - - -
-
-
- Power Manipulation:[R]+ [R] -
-
- Channeling - - - - - - Ag - - - - - - - - -
-
- Directed Spells - Elemental Bolts - - - - - - Ag - - - - - - - - -
-
- Directed Spells - Illusion Crafting - - - - - - Ag - - - - - - - - -
-
- Directed Spells -Hurling - - - - - - Ag - - - - - - - - -
-
- Power Development - - - - - - Ag - - - - - - - - -
-
- Power Projection - - - - - - Ag - - - - - - - - -
-
-
- Science:[Me]+ [Re] -
-
- Architecture - - - - - - Ag - - - - - - - - -
-
- Astronomy - - - - - - Ag - - - - - - - - -
-
- Engineering - - - - - - Ag - - - - - - - - -
-
- Mathematics - - - - - - Ag - - - - - - - - -
-
-
- Social:[Em]+ [In] -
-
- Influence- - - - - - - Ag - - - - - - - - -
-
- Influence- - - - - - - Ag - - - - - - - - -
-
- Influence- - - - - - - Ag - - - - - - - - -
-
- Leadership - - - - - - Ag - - - - - - - - -
-
- Social Awareness - - - - - - Ag - - - - - - - - -
-
- Trading - - - - - - Ag - - - - - - - - -
-
-
- Spellcasting:[R]+ [R] -
-
- Magical Ritual- - - - - - - Ag - - - - - - - - -
-
- Magical Ritual- - - - - - - Ag - - - - - - - - -
-
- Magical Ritual- - - - - - - Ag - - - - - - - - -
-
- Open - - - - - - Ag - - - - - - - - -
-
- Closed - - - - - - Ag - - - - - - - - -
-
- Base - - - - - - Ag - - - - - - - - -
-
- Arcane - - - - - - Ag - - - - - - - - -
-
- Restricted - - - - - - Ag - - - - - - - - -
-
-
- Subterfuge:[Ag]+ [SD] -
-
- Ambush- - - - - - - Ag - - - - - - - - -
-
- Ambush- - - - - - - Ag - - - - - - - - -
-
- Ambush- - - - - - - Ag - - - - - - - - -
-
- Concealment - - - - - - Ag - - - - - - - - -
-
- Stalking - - - - - - Ag - - - - - - - - -
-
- Trickery - - - - - - Ag - - - - - - - - -
-
-
- Technical:[In]+ [Re] -
-
- Locks - - - -   - Ag - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Locks}} {{check= Locks (@{locksranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{locks}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{locks} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{locksnotes} }}  - -
-
- Mechanics- - - - -   - Ag - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Mechanics-@{mechanics1name}}} {{subtags=Category: Artistic, Active}} {{check= Mechanics - @{mechanics1name} (@{mechanics1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{mechanics1}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{mechanics1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{mechanics1notes} }}  - -
-
- Mechanics- - - - -   - Ag - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Mechanics-@{mechanics2name}}} {{subtags=Category: Artistic, Active}} {{check= Mechanics - @{mechanics2name} (@{mechanics2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{mechanics2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{mechanics2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{mechanics2notes} }}  - -
-
- Mechanics- - - - -   - Ag - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Mechanics-@{mechanics3name}}} {{subtags=Category: Artistic, Active}} {{check= Mechanics - @{mechanics3name} (@{mechanics3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{mechanics3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{mechanics3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{mechanics3notes} }}  - -
-
- Traps - - - -   - Ag - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Traps}}   {{check= Traps (@{trapsranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{traps}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{traps} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{trapsnotes} }}  - -
-
-
- Vocation:[Em]+ [Me] -
-
- Administration- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Administration-@{administration1name}}} {{subtags=Category: Vocation}} {{check= Administration - @{administration1name} (@{administration1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{administration1}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{administration1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{administration1notes} }}  - -
-
- Administration- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Administration-@{administration2name}}} {{subtags=Category: Vocation}} {{check= Administration - @{administration2name} (@{administration2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{administration2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{administration2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{administration2notes} }}  - -
-
- Administration- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Administration-@{administration3name}}} {{subtags=Category: Vocation}} {{check= Administration - @{administration3name} (@{administration3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{administration3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{administration3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{administration3notes} }}  - -
-
- Service- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Service-@{service1name}}} {{subtags=Category: Vocation}} {{check= Service - @{service1name} (@{service1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{service1}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{service1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{service1notes} }}  - -
-
- Service- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Service-@{service2name}}} {{subtags=Category: Vocation}} {{check= Service - @{service2name} (@{service2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{service2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{service2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{service2notes} }}  - -
-
- Service- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Service-@{service3name}}} {{subtags=Category: Vocation}} {{check= Service - @{service3name} (@{service3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{service3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{service3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{service3notes} }}  - -
-
- Trade- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Trade-@{trade1name}}} {{subtags=Category: Vocation}} {{check= Trade - @{trade1name} (@{trade1ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{trade1}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{trade1} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{trade1notes} }}  - -
-
- Trade- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Trade-@{trade2name}}} {{subtags=Category: Vocation}} {{check= Trade - @{trade2name} (@{trade2ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{trade2}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{trade2} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{trade2notes} }}  - -
-
- Trade- - - - -   - - - - - - - - /w gm &{template:RmuStdRoll} {{skillflag=true}} {{name=@{character_name}'s Trade-@{trade3name}}} {{subtags=Category: Vocation}} {{check= Trade - @{trade3name} (@{trade3ranks} ranks): }} {{checkroll=[[1d100!>@{oeuproll}cf<@{oedownroll}cs=100 +[[@{trade3}]] +?{Other bonus/penalty?|0} ]]}} {{oedownroll= -[[1d100!>@{oeuproll}[open ended down roll; subtract from previous roll] ]]}} {{critroll= **Check for Nat 100!!!!**}} {{highlight66= [[66 +?{Other bonus/penalty?|0} +@{trade3} ]]}} {{highlight66roll=**Natural 66.** }} {{notes=@{trade3notes} }}  - -
-
-
- - - -
Other Skills
-
-
-
- Category/Skill - Cat/
Total
Bonus
- Ranks - Progression - Rank
Bonus
- Stat1 - Stat2 - Stat3 - Stat
Bonus
- Category - Prof/
Cat
Bonus
- Special
Bonus
- Item
Bonus
- Notes - Macro -
-
-
-
-
- - - - - - - - - - - - - - - - - -
-
-
+Animal:[Ag]+ [Em] +
" +
+ Animal Handling- + + + +   + Pr + + + + + + + + + + + + + +                        Animal Handling - +
+
+ Animal Handling- + + + +   + Pr + + + + + + + + + + + + + +                        Animal Handling - +
+
+ Animal Handling- + + + +   + Pr + + + + + + + + + + + + + +                        Animal Handling - +
+
+ Riding- + + + +   + Pr + + + + + + + + + + + + + +                        Riding - +
+
+ Riding- + + + +   + Pr + + + + + + + + + + + + + +                        Riding - +
+
+ Riding- + + + +   + Pr + + + + + + + + + + + + + +                        Riding - +
+"
+
+Awareness:[In]+ [Re] +
" +
+ Perception + + + +   + Sd + + + + + + + + + + + + + + Perception +
+
+ Tracking + + + +   + Sd + + + + + + + + + + + + + + Tracking +
+"
+
+Battle Expertise:[N/A]+ [N/A] +
" +
+ Maneuvering In Armor- + + + +   + maneuvering-armor + + + + + + + + + + + + + +N/A +
+
+ Mounted Combat- + + + +   + mounted-combat + + + + + + + + + + + + + +N/A +
+
+ Protect- + + + +   + protect + + + + + + + + + + + + + +N/A +
+
+ Restricted Quarters- + + + +   + restricted-quarters + + + + + + + + + + + + + +N/A +
+
+ Subduing- + + + +   + subduing + + + + + + + + + + + + + +N/A +
+"
+
+Body Discipline:[Co]+ [Sd] +
" +
+ Adrenal Defense + + + +   + Ag + + + + + + + + + + + + + + Adrenal Defense +
+
+ Adrenal Focus + + + +   + Sd + + + + + + + + + + + + + + Adrenal Focus +
+
+ Adrenal Speed + + + +   + Qu + + + + + + + + + + + + + + Adrenal Speed +
+
+ Adrenal Strength + + + +   + St + + + + + + + + + + + + + + Adrenal Strength +
+"
+
+Brawn:[Co]+ [Sd] +
" +
+ Body Development + + + +   + Co + + + + + + + + + + + + + + Body Development +
+
+ Fortitude + + + +   + SD + + + + + + + + + + + + + + Fortitude +
+
+ Weight-Training + + + +   + St + + + + + + + + + + + + + + Weight-Training +
+"
+
+Combat Expertise:[N/A]+ [N/A] +
" +
+ Blind Fighting- + + + +   + blind-fighting + + + + + + + + + + + + + +N/A +
+
+ Disarm- + + + +   + disarm + + + + + + + + + + + + + +N/A +
+
+ Footwork- + + + +   + footwork + + + + + + + + + + + + + +N/A +
+
+ Multiple Attacks- + + + +   + multiple-attacks + + + + + + + + + + + + + +N/A +
+
+ Reverse Strike- + + + +   + reverse-strike + + + + + + + + + + + + + +N/A +
+"
+
+Combat Training:[Ag]+ [St] +
" +
+ Melee Weapons- + + + +   + St + + + + + + + + + + + + + +                        Melee Weapons - +
+
+ Melee Weapons- + + + +   + St + + + + + + + + + + + + + +                        Melee Weapons - +
+
+ Melee Weapons- + + + +   + St + + + + + + + + + + + + + +                        Melee Weapons - +
+
+ Ranged Weapons- + + + +   + Ag + + + + + + + + + + + + + +                        Ranged Weapons - +
+
+ Ranged Weapons- + + + +   + Ag + + + + + + + + + + + + + +                        Ranged Weapons - +
+
+ Ranged Weapons- + + + +   + Ag + + + + + + + + + + + + + +                        Ranged Weapons - +
+
+ Shield + + + +   + St + + + + + + + + + + + + + + Shield +
+
+ Unarmed (Sweeps)- + + + +   + Ag + + + + + + + + + + + + + +                        Unarmed (Sweeps) - +
+
+ Unarmed (Sweeps)- + + + +   + Ag + + + + + + + + + + + + + +                        Unarmed (Sweeps) - +
+
+ Unarmed (Sweeps)- + + + +   + Ag + + + + + + + + + + + + + +                        Unarmed (Sweeps) - +
+
+ Unarmed (Throws)- + + + +   + St + + + + + + + + + + + + + +                        Unarmed (Throws) - +
+
+ Unarmed (Throws)- + + + +   + St + + + + + + + + + + + + + +                        Unarmed (Throws) - +
+
+ Unarmed (Throws)- + + + +   + St + + + + + + + + + + + + + +                        Unarmed (Throws) - +
+"
+
+Composition:[Em]+ [In] +
" +
+ Illusion Crafting + + + +   + Pr + + + + + + + + + + + + + + Illusion Crafting +
+
+ Musical Composition + + + +   + Pr + + + + + + + + + + + + + + Musical Composition +
+
+ Writing- + + + +   + Re + + + + + + + + + + + + + +                        Writing - +
+
+ Writing- + + + +   + Re + + + + + + + + + + + + + +                        Writing - +
+
+ Writing- + + + +   + Re + + + + + + + + + + + + + +                        Writing - +
+"
+
+Crafting:[Ag]+ [Me] +
" +
+ Culinary + + + +   + Sd + + + + + + + + + + + + + + Culinary +
+
+ Drawing/Painting + + + +   + In + + + + + + + + + + + + + + Drawing/Painting +
+
+ Fabric Craft + + + +   + Sd + + + + + + + + + + + + + + Fabric Craft +
+
+ Leathercraft + + + +   + Sd + + + + + + + + + + + + + + Leathercraft +
+
+ Metalcraft + + + +   + St + + + + + + + + + + + + + + Metalcraft +
+
+ Stonecraft + + + +   + St + + + + + + + + + + + + + + Stonecraft +
+
+ Woodcraft + + + +   + Sd + + + + + + + + + + + + + + Woodcraft +
+"
+
+Delving:[Em]+ [In] +
" +
+ Attunrment + + + +   + Pr + + + + + + + + + + + + + + Attunrment +
+
+ Runes + + + +   + Pr + + + + + + + + + + + + + + Runes +
+"
+
+Environmental:[In]+ [Me] +
" +
+ Navigation + + + +   + Re + + + + + + + + + + + + + + Navigation +
+
+ Piloting- + + + +   + Ag + + + + + + + + + + + + + +                        Piloting - +
+
+ Piloting- + + + +   + Ag + + + + + + + + + + + + + +                        Piloting - +
+
+ Piloting- + + + +   + Ag + + + + + + + + + + + + + +                        Piloting - +
+
+ Survival- + + + +   + Re + + + + + + + + + + + + + +                        Survival - +
+
+ Survival- + + + +   + Re + + + + + + + + + + + + + +                        Survival - +
+
+ Survival- + + + +   + Re + + + + + + + + + + + + + +                        Survival - +
+"
+
+Gymnastic:[Ag]+ [Qu] +
" +
+ Acrobatics + + + +   + St + + + + + + + + + + + + + + Acrobatics +
+
+ Contortions + + + +   + Sd + + + + + + + + + + + + + + Contortions +
+
+ Jumping + + + +   + St + + + + + + + + + + + + + + Jumping +
+"
+
+Lore:[Me]+ [Me] +
" +
+ Creature Lore- + + + +   + Re + + + + + + + + + + + + + +                        Creature Lore - +
+
+ Creature Lore- + + + +   + Re + + + + + + + + + + + + + +                        Creature Lore - +
+
+ Creature Lore- + + + +   + Re + + + + + + + + + + + + + +                        Creature Lore - +
+
+ Historic Lore- + + + +   + Re + + + + + + + + + + + + + +                        Historic Lore - +
+
+ Historic Lore- + + + +   + Re + + + + + + + + + + + + + +                        Historic Lore - +
+
+ Historic Lore- + + + +   + Re + + + + + + + + + + + + + +                        Historic Lore - +
+
+ Language- + + + +   + Re + + + + + + + + + + + + + +                        Language - +
+
+ Language- + + + +   + Re + + + + + + + + + + + + + +                        Language - +
+
+ Language- + + + +   + Re + + + + + + + + + + + + + +                        Language - +
+
+ Materials Lore- + + + +   + Re + + + + + + + + + + + + + +                        Materials Lore - +
+
+ Materials Lore- + + + +   + Re + + + + + + + + + + + + + +                        Materials Lore - +
+
+ Materials Lore- + + + +   + Re + + + + + + + + + + + + + +                        Materials Lore - +
+
+ Racial Lore- + + + +   + Re + + + + + + + + + + + + + +                        Racial Lore - +
+
+ Racial Lore- + + + +   + Re + + + + + + + + + + + + + +                        Racial Lore - +
+
+ Racial Lore- + + + +   + Re + + + + + + + + + + + + + +                        Racial Lore - +
+
+ Region Lore- + + + +   + Re + + + + + + + + + + + + + +                        Region Lore - +
+
+ Region Lore- + + + +   + Re + + + + + + + + + + + + + +                        Region Lore - +
+
+ Region Lore- + + + +   + Re + + + + + + + + + + + + + +                        Region Lore - +
+
+ Religion/Philosophy- + + + +   + Re + + + + + + + + + + + + + +                        Religion/Philosophy - +
+
+ Religion/Philosophy- + + + +   + Re + + + + + + + + + + + + + +                        Religion/Philosophy - +
+
+ Religion/Philosophy- + + + +   + Re + + + + + + + + + + + + + +                        Religion/Philosophy - +
+
+ Spell Lore + + + +   + In + + + + + + + + + + + + + + Spell Lore +
+"
+
+Magical Expertise:[N/A]+ [N/A] +
" +
+ Grace- + + + +   + grace + + + + + + + + + + + + + +N/A +
+
+ Grace- + + + +   + grace + + + + + + + + + + + + + +N/A +
+
+ Grace- + + + +   + grace + + + + + + + + + + + + + +N/A +
+
+ Spell Trickery- + + + +   + spell-trickery + + + + + + + + + + + + + +N/A +
+
+ Spell Trickery- + + + +   + spell-trickery + + + + + + + + + + + + + +N/A +
+
+ Spell Trickery- + + + +   + spell-trickery + + + + + + + + + + + + + +N/A +
+
+ Transcendence- + + + +   + transcendence + + + + + + + + + + + + + +N/A +
+"
+
+Medical:[In]+ [Me] +
" +
+ Herbalism + + + +   + Re + + + + + + + + + + + + + + Herbalism +
+
+ Medicine + + + +   + Re + + + + + + + + + + + + + + Medicine +
+
+ Poison Mastery + + + +   + Re + + + + + + + + + + + + + + Poison Mastery +
+"
+
+Mental Discipline:[Pr]+ [SD] +
" +
+ Control Lycanthropy + + + +   + SD + + + + + + + + + + + + + + Control Lycanthropy +
+
+ Meditation + + + +   + SD + + + + + + + + + + + + + + Meditation +
+
+ Mental Focus + + + +   + SD + + + + + + + + + + + + + + Mental Focus +
+"
+
+Movement:[Ag]+ [St] +
" +
+ Climbing + + + +   + Co + + + + + + + + + + + + + + Climbing +
+
+ Flying + + + +   + Co + + + + + + + + + + + + + + Flying +
+
+ Running + + + +   + Co + + + + + + + + + + + + + + Running +
+
+ Swimming + + + +   + Co + + + + + + + + + + + + + + Swimming +
+"
+
+Performance Art:[Em]+ [Pr] +
" +
+ Acting + + + +   + Me + + + + + + + + + + + + + + Acting +
+
+ Music- + + + +   + Me + + + + + + + + + + + + + +                        Music - +
+
+ Music- + + + +   + Me + + + + + + + + + + + + + +                        Music - +
+
+ Music- + + + +   + Me + + + + + + + + + + + + + +                        Music - +
+
+ Stage Magic + + + +   + Ag + + + + + + + + + + + + + + Stage Magic +
+"
+
+Power Manipulation:[Realm]+ [Realm] +
" +
+ Channeling + + + +   + SD + + + + + + + + + + + + + + Channeling +
+
+ Directed Spells - Elemental Bolts + + + +   + Ag + + + + + + + + + + + + + + Directed Spells - Elemental Bolts +
+
+ Directed Spells - Illusion Crafting + + + +   + Ag + + + + + + + + + + + + + + Directed Spells - Illusion Crafting +
+
+ Directed Spells -Hurling + + + +   + Ag + + + + + + + + + + + + + + Directed Spells -Hurling +
+
+ Power Development + + + +   + Co + + + + + + + + + + + + + + Power Development +
+
+ Power Projection + + + +   + SD + + + + + + + + + + + + + + Power Projection +
+"
+
+Science:[Me]+ [Re] +
" +
+ Architecture + + + +   + Re + + + + + + + + + + + + + + Architecture +
+
+ Astronomy + + + +   + Re + + + + + + + + + + + + + + Astronomy +
+
+ Engineering + + + +   + Re + + + + + + + + + + + + + + Engineering +
+
+ Mathematics + + + +   + Re + + + + + + + + + + + + + + Mathematics +
+"
+
+Social:[Em]+ [In] +
" +
+ Influence- + + + +   + Pr + + + + + + + + + + + + + +                        Influence - +
+
+ Influence- + + + +   + Pr + + + + + + + + + + + + + +                        Influence - +
+
+ Influence- + + + +   + Pr + + + + + + + + + + + + + +                        Influence - +
+
+ Leadership + + + +   + Pr + + + + + + + + + + + + + + Leadership +
+
+ Social Awareness + + + +   + Em + + + + + + + + + + + + + + Social Awareness +
+
+ Trading + + + +   + Pr + + + + + + + + + + + + + + Trading +
+"
+
+Spellcasting:[Realm]+ [Realm] +
" +
+ Magical Ritual- + + + +   + Me + + + + + + + + + + + + + +                        Magical Ritual - +
+
+ Magical Ritual- + + + +   + Me + + + + + + + + + + + + + +                        Magical Ritual - +
+
+ Magical Ritual- + + + +   + Me + + + + + + + + + + + + + +                        Magical Ritual - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Open- + + + +   + Me + + + + + + + + + + + + + +                        Open - +
+
+ Closed- + + + +   + Me + + + + + + + + + + + + + +                        Closed - +
+
+ Closed- + + + +   + Me + + + + + + + + + + + + + +                        Closed - +
+
+ Closed- + + + +   + Me + + + + + + + + + + + + + +                        Closed - +
+
+ Base- + + + +   + Me + + + + + + + + + + + + + +                        Base - +
+
+ Base- + + + +   + Me + + + + + + + + + + + + + +                        Base - +
+
+ Base- + + + +   + Me + + + + + + + + + + + + + +                        Base - +
+
+ Arcane- + + + +   + Me + + + + + + + + + + + + + +                        Arcane - +
+
+ Arcane- + + + +   + Me + + + + + + + + + + + + + +                        Arcane - +
+
+ Arcane- + + + +   + Me + + + + + + + + + + + + + +                        Arcane - +
+
+ Restricted- + + + +   + Me + + + + + + + + + + + + + +                        Restricted - +
+
+ Restricted- + + + +   + Me + + + + + + + + + + + + + +                        Restricted - +
+
+ Restricted- + + + +   + Me + + + + + + + + + + + + + +                        Restricted - +
+"
+
+Subterfuge:[Ag]+ [SD] +
" +
+ Ambush- + + + +   + In + + + + + + + + + + + + + +                        Ambush - +
+
+ Ambush- + + + +   + In + + + + + + + + + + + + + +                        Ambush - +
+
+ Ambush- + + + +   + In + + + + + + + + + + + + + +                        Ambush - +
+
+ Concealment + + + +   + In + + + + + + + + + + + + + + Concealment +
+
+ Stalking + + + +   + In + + + + + + + + + + + + + + Stalking +
+
+ Trickery + + + +   + In + + + + + + + + + + + + + + Trickery +
+"
+
+Technical:[In]+ [Re] +
" +
+ Locks + + + +   + Ag + + + + + + + + + + + + + + Locks +
+
+ Mechanics- + + + +   + Me + + + + + + + + + + + + + +                        Mechanics - +
+
+ Mechanics- + + + +   + Me + + + + + + + + + + + + + +                        Mechanics - +
+
+ Mechanics- + + + +   + Me + + + + + + + + + + + + + +                        Mechanics - +
+
+ Traps + + + +   + Ag + + + + + + + + + + + + + + Traps +
+"
+
+Vocation:[Em]+ [Me] +
" +
+ Administration- + + + +   + Re + + + + + + + + + + + + + +                        Administration - +
+
+ Administration- + + + +   + Re + + + + + + + + + + + + + +                        Administration - +
+
+ Administration- + + + +   + Re + + + + + + + + + + + + + +                        Administration - +
+
+ Service- + + + +   + Pr + + + + + + + + + + + + + +                        Service - +
+
+ Service- + + + +   + Pr + + + + + + + + + + + + + +                        Service - +
+
+ Service- + + + +   + Pr + + + + + + + + + + + + + +                        Service - +
+
+ Trade- + + + +   + Re + + + + + + + + + + + + + +                        Trade - +
+
+ Trade- + + + +   + Re + + + + + + + + + + + + + +                        Trade - +
+
+ Trade- + + + +   + Re + + + + + + + + + + + + + +                        Trade - +
+
@@ -7419,14 +8250,25 @@ const int = (value, error = 0) => parseInt(value) || 0; const float = (value, error = 0) => parseFloat(value) || 0; + // Build array for stat bonuses const statbonuses = [0,-15,-14,-13,-12,-11,-10,-9,-9,-8,-8,-8,-7,-7,-6,-6,-6,-5,-5,-5,-5,-5,-5,-4,-4,-4,-4,-4,-4,-3,-3,-3,-3,-3,-3,-2,-2,-2,-2,-2,-2,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,6,6,6,7,7,7,8,8,8,9,9,10,11,12,13,14,15]; +const skillbonustag = ['ranks','isprof'] + +// +const skilllist = ['animalhandling1', 'animalhandling2', 'animalhandling3', 'riding1', 'riding2', 'riding3', 'perception', 'tracking', 'maneuveringarmor', 'mountedcombat', 'protect', 'restrictedquarters', 'subduing', 'adrenaldefense', 'adrenalfocus', 'adrenalspeed', 'adrenalstrength', 'bodydev', 'fortitude', 'weighttraining', 'blindfighting', 'disarm', 'footwork', 'multipleattacks', 'reversestrike', 'melee1', 'melee2', 'melee3', 'ranged1', 'ranged2', 'ranged3', 'shield', 'sweeps1', 'sweeps2', 'sweeps3', 'throws1', 'throws2', 'throws3', 'illusioncrafting', 'musicalcomposition', 'writing1', 'writing2', 'writing3', 'culinary', 'drawingpainting', 'fabriccraft', 'leathercraft', 'metalcraft', 'stonecraft', 'woodcraft', 'attunrment', 'runes', 'navigation', 'piloting1', 'piloting2', 'piloting3', 'survival1', 'survival2', 'survival3', 'acrobatics', 'contortions', 'jumping', 'creaturelore1', 'creaturelore2', 'creaturelore3', 'historiclore1', 'historiclore2', 'historiclore3', 'language1', 'language2', 'language3', 'materialslore1', 'materialslore2', 'materialslore3', 'raciallore1', 'raciallore2', 'raciallore3', 'regionlore1', 'regionlore2', 'regionlore3', 'religion1', 'religion2', 'religion3', 'spelllore', 'grace1', 'grace2', 'grace3', 'spelltrickery1', 'spelltrickery2', 'spelltrickery3', 'transcendence', 'herbalism', 'medicine', 'poisonmastery', 'controllycanthropy', 'meditation', 'mentalfocus', 'climbing', 'flying', 'running', 'swimming', 'acting', 'music1', 'music2', 'music3', 'stagemagic', 'channeling', 'bolts', 'illusions', 'hurling', 'powerdevelopment', 'powerprojection', 'architecture', 'astronomy', 'engineering', 'mathematics', 'influence1', 'influence2', 'influence3', 'leadership', 'socialawareness', 'trading', 'magicalritual1', 'magicalritual2', 'magicalritual3', 'open1', 'open2', 'open3', 'open4', 'open5', 'open6', 'open7', 'closed1', 'closed2', 'closed3', 'base1', 'base2', 'base3', 'arcane1', 'arcane2', 'arcane3', 'restricted1', 'restricted2', 'restricted3', 'ambush1', 'ambush2', 'ambush3', 'concealment', 'stalking', 'trickery', 'locks', 'mechanics1', 'mechanics2', 'mechanics3', 'traps', 'administration1', 'administration2', 'administration3', 'service1', 'service2', 'service3', 'trade1', 'trade2', 'trade3', ]; +const skillbonuslist = ['animalhandling1ranks', 'animalhandling2ranks', 'animalhandling3ranks', 'riding1ranks', 'riding2ranks', 'riding3ranks', 'ranks', 'perceptionranks', 'trackingranks', 'ranks', 'maneuveringarmorranks', 'mountedcombatranks', 'protectranks', 'restrictedquartersranks', 'subduingranks', 'ranks', 'adrenaldefenseranks', 'adrenalfocusranks', 'adrenalspeedranks', 'adrenalstrengthranks', 'ranks', 'bodydevranks', 'fortituderanks', 'weighttrainingranks', 'ranks', 'blindfightingranks', 'disarmranks', 'footworkranks', 'multipleattacksranks', 'reversestrikeranks', 'ranks', 'melee1ranks', 'melee2ranks', 'melee3ranks', 'ranged1ranks', 'ranged2ranks', 'ranged3ranks', 'shieldranks', 'sweeps1ranks', 'sweeps2ranks', 'sweeps3ranks', 'throws1ranks', 'throws2ranks', 'throws3ranks', 'ranks', 'illusioncraftingranks', 'musicalcompositionranks', 'writing1ranks', 'writing2ranks', 'writing3ranks', 'ranks', 'culinaryranks', 'drawingpaintingranks', 'fabriccraftranks', 'leathercraftranks', 'metalcraftranks', 'stonecraftranks', 'woodcraftranks', 'ranks', 'attunrmentranks', 'runesranks', 'ranks', 'navigationranks', 'piloting1ranks', 'piloting2ranks', 'piloting3ranks', 'survival1ranks', 'survival2ranks', 'survival3ranks', 'ranks', 'acrobaticsranks', 'contortionsranks', 'jumpingranks', 'ranks', 'creaturelore1ranks', 'creaturelore2ranks', 'creaturelore3ranks', 'historiclore1ranks', 'historiclore2ranks', 'historiclore3ranks', 'language1ranks', 'language2ranks', 'language3ranks', 'materialslore1ranks', 'materialslore2ranks', 'materialslore3ranks', 'raciallore1ranks', 'raciallore2ranks', 'raciallore3ranks', 'regionlore1ranks', 'regionlore2ranks', 'regionlore3ranks', 'religion1ranks', 'religion2ranks', 'religion3ranks', 'spellloreranks', 'ranks', 'grace1ranks', 'grace2ranks', 'grace3ranks', 'spelltrickery1ranks', 'spelltrickery2ranks', 'spelltrickery3ranks', 'transcendenceranks', 'ranks', 'herbalismranks', 'medicineranks', 'poisonmasteryranks', 'ranks', 'controllycanthropyranks', 'meditationranks', 'mentalfocusranks', 'ranks', 'climbingranks', 'flyingranks', 'runningranks', 'swimmingranks', 'ranks', 'actingranks', 'music1ranks', 'music2ranks', 'music3ranks', 'stagemagicranks', 'ranks', 'channelingranks', 'boltsranks', 'illusionsranks', 'hurlingranks', 'powerdevelopmentranks', 'powerprojectionranks', 'ranks', 'architectureranks', 'astronomyranks', 'engineeringranks', 'mathematicsranks', 'ranks', 'influence1ranks', 'influence2ranks', 'influence3ranks', 'leadershipranks', 'socialawarenessranks', 'tradingranks', 'ranks', 'magicalritual1ranks', 'magicalritual2ranks', 'magicalritual3ranks', 'open1ranks', 'open2ranks', 'open3ranks', 'open4ranks', 'open5ranks', 'open6ranks', 'open7ranks', 'closed1ranks', 'closed2ranks', 'closed3ranks', 'base1ranks', 'base2ranks', 'base3ranks', 'arcane1ranks', 'arcane2ranks', 'arcane3ranks', 'restricted1ranks', 'restricted2ranks', 'restricted3ranks', 'ranks', 'ambush1ranks', 'ambush2ranks', 'ambush3ranks', 'concealmentranks', 'stalkingranks', 'trickeryranks', 'ranks', 'locksranks', 'mechanics1ranks', 'mechanics2ranks', 'mechanics3ranks', 'trapsranks', 'ranks', 'administration1ranks', 'administration2ranks', 'administration3ranks', 'service1ranks', 'service2ranks', 'service3ranks', 'trade1ranks', 'trade2ranks', 'trade3ranks', 'animalhandling1isprof', 'animalhandling2isprof', 'animalhandling3isprof', 'riding1isprof', 'riding2isprof', 'riding3isprof', 'isprof', 'perceptionisprof', 'trackingisprof', 'isprof', 'maneuveringarmorisprof', 'mountedcombatisprof', 'protectisprof', 'restrictedquartersisprof', 'subduingisprof', 'isprof', 'adrenaldefenseisprof', 'adrenalfocusisprof', 'adrenalspeedisprof', 'adrenalstrengthisprof', 'isprof', 'bodydevisprof', 'fortitudeisprof', 'weighttrainingisprof', 'isprof', 'blindfightingisprof', 'disarmisprof', 'footworkisprof', 'multipleattacksisprof', 'reversestrikeisprof', 'isprof', 'melee1isprof', 'melee2isprof', 'melee3isprof', 'ranged1isprof', 'ranged2isprof', 'ranged3isprof', 'shieldisprof', 'sweeps1isprof', 'sweeps2isprof', 'sweeps3isprof', 'throws1isprof', 'throws2isprof', 'throws3isprof', 'isprof', 'illusioncraftingisprof', 'musicalcompositionisprof', 'writing1isprof', 'writing2isprof', 'writing3isprof', 'isprof', 'culinaryisprof', 'drawingpaintingisprof', 'fabriccraftisprof', 'leathercraftisprof', 'metalcraftisprof', 'stonecraftisprof', 'woodcraftisprof', 'isprof', 'attunrmentisprof', 'runesisprof', 'isprof', 'navigationisprof', 'piloting1isprof', 'piloting2isprof', 'piloting3isprof', 'survival1isprof', 'survival2isprof', 'survival3isprof', 'isprof', 'acrobaticsisprof', 'contortionsisprof', 'jumpingisprof', 'isprof', 'creaturelore1isprof', 'creaturelore2isprof', 'creaturelore3isprof', 'historiclore1isprof', 'historiclore2isprof', 'historiclore3isprof', 'language1isprof', 'language2isprof', 'language3isprof', 'materialslore1isprof', 'materialslore2isprof', 'materialslore3isprof', 'raciallore1isprof', 'raciallore2isprof', 'raciallore3isprof', 'regionlore1isprof', 'regionlore2isprof', 'regionlore3isprof', 'religion1isprof', 'religion2isprof', 'religion3isprof', 'spellloreisprof', 'isprof', 'grace1isprof', 'grace2isprof', 'grace3isprof', 'spelltrickery1isprof', 'spelltrickery2isprof', 'spelltrickery3isprof', 'transcendenceisprof', 'isprof', 'herbalismisprof', 'medicineisprof', 'poisonmasteryisprof', 'isprof', 'controllycanthropyisprof', 'meditationisprof', 'mentalfocusisprof', 'isprof', 'climbingisprof', 'flyingisprof', 'runningisprof', 'swimmingisprof', 'isprof', 'actingisprof', 'music1isprof', 'music2isprof', 'music3isprof', 'stagemagicisprof', 'isprof', 'channelingisprof', 'boltsisprof', 'illusionsisprof', 'hurlingisprof', 'powerdevelopmentisprof', 'powerprojectionisprof', 'isprof', 'architectureisprof', 'astronomyisprof', 'engineeringisprof', 'mathematicsisprof', 'isprof', 'influence1isprof', 'influence2isprof', 'influence3isprof', 'leadershipisprof', 'socialawarenessisprof', 'tradingisprof', 'isprof', 'magicalritual1isprof', 'magicalritual2isprof', 'magicalritual3isprof', 'open1isprof', 'open2isprof', 'open3isprof', 'open4isprof', 'open5isprof', 'open6isprof', 'open7isprof', 'closed1isprof', 'closed2isprof', 'closed3isprof', 'base1isprof', 'base2isprof', 'base3isprof', 'arcane1isprof', 'arcane2isprof', 'arcane3isprof', 'restricted1isprof', 'restricted2isprof', 'restricted3isprof', 'isprof', 'ambush1isprof', 'ambush2isprof', 'ambush3isprof', 'concealmentisprof', 'stalkingisprof', 'trickeryisprof', 'isprof', 'locksisprof', 'mechanics1isprof', 'mechanics2isprof', 'mechanics3isprof', 'trapsisprof', 'isprof', 'administration1isprof', 'administration2isprof', 'administration3isprof', 'service1isprof', 'service2isprof', 'service3isprof', 'trade1isprof', 'trade2isprof', 'trade3isprof']; + + + +// const skillRoll = (skillname) => { let rollExpression = '1d100!>96cf<5cs>96'; - let rollmodifiers = '@{skillnametotal}'; - rollExpression = rollExpression + ' + ' + rollmodifiers + '[TotalBonus]'; + //let rollmodifiers = '@{skillnamerankbonus}[Rank Bonus] + @{skillnamerankbonus}[Rank Bonus] + '; + let rollmodifiers = '@{skillnametotal}[Total Bonus] + @{skillnamesituationbonus}[Misc Roll Mods] + '; + rollExpression = rollExpression + ' + ' + rollmodifiers //+ '[TotalBonus]'; //console.log(rollmodifiers); // Wrap the two @{attributes} in a [[subroll]] if they're taking up too much space let rollBase = '&{template:RmuStdRolltest} {{roll1=[['+ rollExpression +']]}} {{isdownroll=[[0]]}} {{name=@{character_name}\'s skillname check}} {{skillflag=true}} {{check= skillname (@{skillnameranks} ranks): }} {{roll1name=${rollExpression}}} {{roll1mod=[[(1d100!>95cf<101cs=0)]]}} {{roll1final=[[0]]}}'; @@ -7458,6 +8300,120 @@ const skillRoll = (skillname) => { // +// + + +// + +on ('change:animalhandling1ranks change:animalhandling2ranks change:animalhandling3ranks change:riding1ranks change:riding2ranks change:riding3ranks change:ranks change:perceptionranks change:trackingranks change:ranks change:maneuveringarmorranks change:mountedcombatranks change:protectranks change:restrictedquartersranks change:subduingranks change:ranks change:adrenaldefenseranks change:adrenalfocusranks change:adrenalspeedranks change:adrenalstrengthranks change:ranks change:bodydevranks change:fortituderanks change:weighttrainingranks change:ranks change:blindfightingranks change:disarmranks change:footworkranks change:multipleattacksranks change:reversestrikeranks change:ranks change:melee1ranks change:melee2ranks change:melee3ranks change:ranged1ranks change:ranged2ranks change:ranged3ranks change:shieldranks change:sweeps1ranks change:sweeps2ranks change:sweeps3ranks change:throws1ranks change:throws2ranks change:throws3ranks change:ranks change:illusioncraftingranks change:musicalcompositionranks change:writing1ranks change:writing2ranks change:writing3ranks change:ranks change:culinaryranks change:drawingpaintingranks change:fabriccraftranks change:leathercraftranks change:metalcraftranks change:stonecraftranks change:woodcraftranks change:ranks change:attunrmentranks change:runesranks change:ranks change:navigationranks change:piloting1ranks change:piloting2ranks change:piloting3ranks change:survival1ranks change:survival2ranks change:survival3ranks change:ranks change:acrobaticsranks change:contortionsranks change:jumpingranks change:ranks change:creaturelore1ranks change:creaturelore2ranks change:creaturelore3ranks change:historiclore1ranks change:historiclore2ranks change:historiclore3ranks change:language1ranks change:language2ranks change:language3ranks change:materialslore1ranks change:materialslore2ranks change:materialslore3ranks change:raciallore1ranks change:raciallore2ranks change:raciallore3ranks change:regionlore1ranks change:regionlore2ranks change:regionlore3ranks change:religion1ranks change:religion2ranks change:religion3ranks change:spellloreranks change:ranks change:grace1ranks change:grace2ranks change:grace3ranks change:spelltrickery1ranks change:spelltrickery2ranks change:spelltrickery3ranks change:transcendenceranks change:ranks change:herbalismranks change:medicineranks change:poisonmasteryranks change:ranks change:controllycanthropyranks change:meditationranks change:mentalfocusranks change:ranks change:climbingranks change:flyingranks change:runningranks change:swimmingranks change:ranks change:actingranks change:music1ranks change:music2ranks change:music3ranks change:stagemagicranks change:ranks change:channelingranks change:boltsranks change:illusionsranks change:hurlingranks change:powerdevelopmentranks change:powerprojectionranks change:ranks change:architectureranks change:astronomyranks change:engineeringranks change:mathematicsranks change:ranks change:influence1ranks change:influence2ranks change:influence3ranks change:leadershipranks change:socialawarenessranks change:tradingranks change:ranks change:magicalritual1ranks change:magicalritual2ranks change:magicalritual3ranks change:open1ranks change:open2ranks change:open3ranks change:open4ranks change:open5ranks change:open6ranks change:open7ranks change:closed1ranks change:closed2ranks change:closed3ranks change:base1ranks change:base2ranks change:base3ranks change:arcane1ranks change:arcane2ranks change:arcane3ranks change:restricted1ranks change:restricted2ranks change:restricted3ranks change:ranks change:ambush1ranks change:ambush2ranks change:ambush3ranks change:concealmentranks change:stalkingranks change:trickeryranks change:ranks change:locksranks change:mechanics1ranks change:mechanics2ranks change:mechanics3ranks change:trapsranks change:ranks change:administration1ranks change:administration2ranks change:administration3ranks change:service1ranks change:service2ranks change:service3ranks change:trade1ranks change:trade2ranks change:trade3ranks', function(info) { + + console.log('Skill ranks have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + //skillname = skillname.replace(/isprof/g,""); + //skillname = skillname.replace(/statbonus/g,""); + //skillname = skillname.replace(/knackbonus/g,""); + //skillname = skillname.replace(/specialbonus/g,""); + //skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + +on ('change:animalhandling1isprof change:animalhandling2isprof change:animalhandling3isprof change:riding1isprof change:riding2isprof change:riding3isprof change:isprof change:perceptionisprof change:trackingisprof change:isprof change:maneuveringarmorisprof change:mountedcombatisprof change:protectisprof change:restrictedquartersisprof change:subduingisprof change:isprof change:adrenaldefenseisprof change:adrenalfocusisprof change:adrenalspeedisprof change:adrenalstrengthisprof change:isprof change:bodydevisprof change:fortitudeisprof change:weighttrainingisprof change:isprof change:blindfightingisprof change:disarmisprof change:footworkisprof change:multipleattacksisprof change:reversestrikeisprof change:isprof change:melee1isprof change:melee2isprof change:melee3isprof change:ranged1isprof change:ranged2isprof change:ranged3isprof change:shieldisprof change:sweeps1isprof change:sweeps2isprof change:sweeps3isprof change:throws1isprof change:throws2isprof change:throws3isprof change:isprof change:illusioncraftingisprof change:musicalcompositionisprof change:writing1isprof change:writing2isprof change:writing3isprof change:isprof change:culinaryisprof change:drawingpaintingisprof change:fabriccraftisprof change:leathercraftisprof change:metalcraftisprof change:stonecraftisprof change:woodcraftisprof change:isprof change:attunrmentisprof change:runesisprof change:isprof change:navigationisprof change:piloting1isprof change:piloting2isprof change:piloting3isprof change:survival1isprof change:survival2isprof change:survival3isprof change:isprof change:acrobaticsisprof change:contortionsisprof change:jumpingisprof change:isprof change:creaturelore1isprof change:creaturelore2isprof change:creaturelore3isprof change:historiclore1isprof change:historiclore2isprof change:historiclore3isprof change:language1isprof change:language2isprof change:language3isprof change:materialslore1isprof change:materialslore2isprof change:materialslore3isprof change:raciallore1isprof change:raciallore2isprof change:raciallore3isprof change:regionlore1isprof change:regionlore2isprof change:regionlore3isprof change:religion1isprof change:religion2isprof change:religion3isprof change:spellloreisprof change:isprof change:grace1isprof change:grace2isprof change:grace3isprof change:spelltrickery1isprof change:spelltrickery2isprof change:spelltrickery3isprof change:transcendenceisprof change:isprof change:herbalismisprof change:medicineisprof change:poisonmasteryisprof change:isprof change:controllycanthropyisprof change:meditationisprof change:mentalfocusisprof change:isprof change:climbingisprof change:flyingisprof change:runningisprof change:swimmingisprof change:isprof change:actingisprof change:music1isprof change:music2isprof change:music3isprof change:stagemagicisprof change:isprof change:channelingisprof change:boltsisprof change:illusionsisprof change:hurlingisprof change:powerdevelopmentisprof change:powerprojectionisprof change:isprof change:architectureisprof change:astronomyisprof change:engineeringisprof change:mathematicsisprof change:isprof change:influence1isprof change:influence2isprof change:influence3isprof change:leadershipisprof change:socialawarenessisprof change:tradingisprof change:isprof change:magicalritual1isprof change:magicalritual2isprof change:magicalritual3isprof change:open1isprof change:open2isprof change:open3isprof change:open4isprof change:open5isprof change:open6isprof change:open7isprof change:closed1isprof change:closed2isprof change:closed3isprof change:base1isprof change:base2isprof change:base3isprof change:arcane1isprof change:arcane2isprof change:arcane3isprof change:restricted1isprof change:restricted2isprof change:restricted3isprof change:isprof change:ambush1isprof change:ambush2isprof change:ambush3isprof change:concealmentisprof change:stalkingisprof change:trickeryisprof change:isprof change:locksisprof change:mechanics1isprof change:mechanics2isprof change:mechanics3isprof change:trapsisprof change:isprof change:administration1isprof change:administration2isprof change:administration3isprof change:service1isprof change:service2isprof change:service3isprof change:trade1isprof change:trade2isprof change:trade3isprof', function(info) { + + console.log('Skill isprof have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + skillname = skillname.replace(/isprof/g,""); + skillname = skillname.replace(/statbonus/g,""); + skillname = skillname.replace(/knackbonus/g,""); + skillname = skillname.replace(/specialbonus/g,""); + skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + +on ('change:animalhandling1statbonus change:animalhandling2statbonus change:animalhandling3statbonus change:riding1statbonus change:riding2statbonus change:riding3statbonus change:statbonus change:perceptionstatbonus change:trackingstatbonus change:statbonus change:maneuveringarmorstatbonus change:mountedcombatstatbonus change:protectstatbonus change:restrictedquartersstatbonus change:subduingstatbonus change:statbonus change:adrenaldefensestatbonus change:adrenalfocusstatbonus change:adrenalspeedstatbonus change:adrenalstrengthstatbonus change:statbonus change:bodydevstatbonus change:fortitudestatbonus change:weighttrainingstatbonus change:statbonus change:blindfightingstatbonus change:disarmstatbonus change:footworkstatbonus change:multipleattacksstatbonus change:reversestrikestatbonus change:statbonus change:melee1statbonus change:melee2statbonus change:melee3statbonus change:ranged1statbonus change:ranged2statbonus change:ranged3statbonus change:shieldstatbonus change:sweeps1statbonus change:sweeps2statbonus change:sweeps3statbonus change:throws1statbonus change:throws2statbonus change:throws3statbonus change:statbonus change:illusioncraftingstatbonus change:musicalcompositionstatbonus change:writing1statbonus change:writing2statbonus change:writing3statbonus change:statbonus change:culinarystatbonus change:drawingpaintingstatbonus change:fabriccraftstatbonus change:leathercraftstatbonus change:metalcraftstatbonus change:stonecraftstatbonus change:woodcraftstatbonus change:statbonus change:attunrmentstatbonus change:runesstatbonus change:statbonus change:navigationstatbonus change:piloting1statbonus change:piloting2statbonus change:piloting3statbonus change:survival1statbonus change:survival2statbonus change:survival3statbonus change:statbonus change:acrobaticsstatbonus change:contortionsstatbonus change:jumpingstatbonus change:statbonus change:creaturelore1statbonus change:creaturelore2statbonus change:creaturelore3statbonus change:historiclore1statbonus change:historiclore2statbonus change:historiclore3statbonus change:language1statbonus change:language2statbonus change:language3statbonus change:materialslore1statbonus change:materialslore2statbonus change:materialslore3statbonus change:raciallore1statbonus change:raciallore2statbonus change:raciallore3statbonus change:regionlore1statbonus change:regionlore2statbonus change:regionlore3statbonus change:religion1statbonus change:religion2statbonus change:religion3statbonus change:spelllorestatbonus change:statbonus change:grace1statbonus change:grace2statbonus change:grace3statbonus change:spelltrickery1statbonus change:spelltrickery2statbonus change:spelltrickery3statbonus change:transcendencestatbonus change:statbonus change:herbalismstatbonus change:medicinestatbonus change:poisonmasterystatbonus change:statbonus change:controllycanthropystatbonus change:meditationstatbonus change:mentalfocusstatbonus change:statbonus change:climbingstatbonus change:flyingstatbonus change:runningstatbonus change:swimmingstatbonus change:statbonus change:actingstatbonus change:music1statbonus change:music2statbonus change:music3statbonus change:stagemagicstatbonus change:statbonus change:channelingstatbonus change:boltsstatbonus change:illusionsstatbonus change:hurlingstatbonus change:powerdevelopmentstatbonus change:powerprojectionstatbonus change:statbonus change:architecturestatbonus change:astronomystatbonus change:engineeringstatbonus change:mathematicsstatbonus change:statbonus change:influence1statbonus change:influence2statbonus change:influence3statbonus change:leadershipstatbonus change:socialawarenessstatbonus change:tradingstatbonus change:statbonus change:magicalritual1statbonus change:magicalritual2statbonus change:magicalritual3statbonus change:open1statbonus change:open2statbonus change:open3statbonus change:open4statbonus change:open5statbonus change:open6statbonus change:open7statbonus change:closed1statbonus change:closed2statbonus change:closed3statbonus change:base1statbonus change:base2statbonus change:base3statbonus change:arcane1statbonus change:arcane2statbonus change:arcane3statbonus change:restricted1statbonus change:restricted2statbonus change:restricted3statbonus change:statbonus change:ambush1statbonus change:ambush2statbonus change:ambush3statbonus change:concealmentstatbonus change:stalkingstatbonus change:trickerystatbonus change:statbonus change:locksstatbonus change:mechanics1statbonus change:mechanics2statbonus change:mechanics3statbonus change:trapsstatbonus change:statbonus change:administration1statbonus change:administration2statbonus change:administration3statbonus change:service1statbonus change:service2statbonus change:service3statbonus change:trade1statbonus change:trade2statbonus change:trade3statbonus', function(info) { + + console.log('Skill stat bonus have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + skillname = skillname.replace(/isprof/g,""); + skillname = skillname.replace(/statbonus/g,""); + skillname = skillname.replace(/knackbonus/g,""); + skillname = skillname.replace(/specialbonus/g,""); + skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + +on ('change:animalhandling1knackbonus change:animalhandling2knackbonus change:animalhandling3knackbonus change:riding1knackbonus change:riding2knackbonus change:riding3knackbonus change:knackbonus change:perceptionknackbonus change:trackingknackbonus change:knackbonus change:maneuveringarmorknackbonus change:mountedcombatknackbonus change:protectknackbonus change:restrictedquartersknackbonus change:subduingknackbonus change:knackbonus change:adrenaldefenseknackbonus change:adrenalfocusknackbonus change:adrenalspeedknackbonus change:adrenalstrengthknackbonus change:knackbonus change:bodydevknackbonus change:fortitudeknackbonus change:weighttrainingknackbonus change:knackbonus change:blindfightingknackbonus change:disarmknackbonus change:footworkknackbonus change:multipleattacksknackbonus change:reversestrikeknackbonus change:knackbonus change:melee1knackbonus change:melee2knackbonus change:melee3knackbonus change:ranged1knackbonus change:ranged2knackbonus change:ranged3knackbonus change:shieldknackbonus change:sweeps1knackbonus change:sweeps2knackbonus change:sweeps3knackbonus change:throws1knackbonus change:throws2knackbonus change:throws3knackbonus change:knackbonus change:illusioncraftingknackbonus change:musicalcompositionknackbonus change:writing1knackbonus change:writing2knackbonus change:writing3knackbonus change:knackbonus change:culinaryknackbonus change:drawingpaintingknackbonus change:fabriccraftknackbonus change:leathercraftknackbonus change:metalcraftknackbonus change:stonecraftknackbonus change:woodcraftknackbonus change:knackbonus change:attunrmentknackbonus change:runesknackbonus change:knackbonus change:navigationknackbonus change:piloting1knackbonus change:piloting2knackbonus change:piloting3knackbonus change:survival1knackbonus change:survival2knackbonus change:survival3knackbonus change:knackbonus change:acrobaticsknackbonus change:contortionsknackbonus change:jumpingknackbonus change:knackbonus change:creaturelore1knackbonus change:creaturelore2knackbonus change:creaturelore3knackbonus change:historiclore1knackbonus change:historiclore2knackbonus change:historiclore3knackbonus change:language1knackbonus change:language2knackbonus change:language3knackbonus change:materialslore1knackbonus change:materialslore2knackbonus change:materialslore3knackbonus change:raciallore1knackbonus change:raciallore2knackbonus change:raciallore3knackbonus change:regionlore1knackbonus change:regionlore2knackbonus change:regionlore3knackbonus change:religion1knackbonus change:religion2knackbonus change:religion3knackbonus change:spellloreknackbonus change:knackbonus change:grace1knackbonus change:grace2knackbonus change:grace3knackbonus change:spelltrickery1knackbonus change:spelltrickery2knackbonus change:spelltrickery3knackbonus change:transcendenceknackbonus change:knackbonus change:herbalismknackbonus change:medicineknackbonus change:poisonmasteryknackbonus change:knackbonus change:controllycanthropyknackbonus change:meditationknackbonus change:mentalfocusknackbonus change:knackbonus change:climbingknackbonus change:flyingknackbonus change:runningknackbonus change:swimmingknackbonus change:knackbonus change:actingknackbonus change:music1knackbonus change:music2knackbonus change:music3knackbonus change:stagemagicknackbonus change:knackbonus change:channelingknackbonus change:boltsknackbonus change:illusionsknackbonus change:hurlingknackbonus change:powerdevelopmentknackbonus change:powerprojectionknackbonus change:knackbonus change:architectureknackbonus change:astronomyknackbonus change:engineeringknackbonus change:mathematicsknackbonus change:knackbonus change:influence1knackbonus change:influence2knackbonus change:influence3knackbonus change:leadershipknackbonus change:socialawarenessknackbonus change:tradingknackbonus change:knackbonus change:magicalritual1knackbonus change:magicalritual2knackbonus change:magicalritual3knackbonus change:open1knackbonus change:open2knackbonus change:open3knackbonus change:open4knackbonus change:open5knackbonus change:open6knackbonus change:open7knackbonus change:closed1knackbonus change:closed2knackbonus change:closed3knackbonus change:base1knackbonus change:base2knackbonus change:base3knackbonus change:arcane1knackbonus change:arcane2knackbonus change:arcane3knackbonus change:restricted1knackbonus change:restricted2knackbonus change:restricted3knackbonus change:knackbonus change:ambush1knackbonus change:ambush2knackbonus change:ambush3knackbonus change:concealmentknackbonus change:stalkingknackbonus change:trickeryknackbonus change:knackbonus change:locksknackbonus change:mechanics1knackbonus change:mechanics2knackbonus change:mechanics3knackbonus change:trapsknackbonus change:knackbonus change:administration1knackbonus change:administration2knackbonus change:administration3knackbonus change:service1knackbonus change:service2knackbonus change:service3knackbonus change:trade1knackbonus change:trade2knackbonus change:trade3knackbonus', function(info) { + + console.log('Skill knack bonus have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + skillname = skillname.replace(/isprof/g,""); + skillname = skillname.replace(/statbonus/g,""); + skillname = skillname.replace(/knackbonus/g,""); + skillname = skillname.replace(/specialbonus/g,""); + skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + +on ('change:animalhandling1specialbonus change:animalhandling2specialbonus change:animalhandling3specialbonus change:riding1specialbonus change:riding2specialbonus change:riding3specialbonus change:specialbonus change:perceptionspecialbonus change:trackingspecialbonus change:specialbonus change:maneuveringarmorspecialbonus change:mountedcombatspecialbonus change:protectspecialbonus change:restrictedquartersspecialbonus change:subduingspecialbonus change:specialbonus change:adrenaldefensespecialbonus change:adrenalfocusspecialbonus change:adrenalspeedspecialbonus change:adrenalstrengthspecialbonus change:specialbonus change:bodydevspecialbonus change:fortitudespecialbonus change:weighttrainingspecialbonus change:specialbonus change:blindfightingspecialbonus change:disarmspecialbonus change:footworkspecialbonus change:multipleattacksspecialbonus change:reversestrikespecialbonus change:specialbonus change:melee1specialbonus change:melee2specialbonus change:melee3specialbonus change:ranged1specialbonus change:ranged2specialbonus change:ranged3specialbonus change:shieldspecialbonus change:sweeps1specialbonus change:sweeps2specialbonus change:sweeps3specialbonus change:throws1specialbonus change:throws2specialbonus change:throws3specialbonus change:specialbonus change:illusioncraftingspecialbonus change:musicalcompositionspecialbonus change:writing1specialbonus change:writing2specialbonus change:writing3specialbonus change:specialbonus change:culinaryspecialbonus change:drawingpaintingspecialbonus change:fabriccraftspecialbonus change:leathercraftspecialbonus change:metalcraftspecialbonus change:stonecraftspecialbonus change:woodcraftspecialbonus change:specialbonus change:attunrmentspecialbonus change:runesspecialbonus change:specialbonus change:navigationspecialbonus change:piloting1specialbonus change:piloting2specialbonus change:piloting3specialbonus change:survival1specialbonus change:survival2specialbonus change:survival3specialbonus change:specialbonus change:acrobaticsspecialbonus change:contortionsspecialbonus change:jumpingspecialbonus change:specialbonus change:creaturelore1specialbonus change:creaturelore2specialbonus change:creaturelore3specialbonus change:historiclore1specialbonus change:historiclore2specialbonus change:historiclore3specialbonus change:language1specialbonus change:language2specialbonus change:language3specialbonus change:materialslore1specialbonus change:materialslore2specialbonus change:materialslore3specialbonus change:raciallore1specialbonus change:raciallore2specialbonus change:raciallore3specialbonus change:regionlore1specialbonus change:regionlore2specialbonus change:regionlore3specialbonus change:religion1specialbonus change:religion2specialbonus change:religion3specialbonus change:spelllorespecialbonus change:specialbonus change:grace1specialbonus change:grace2specialbonus change:grace3specialbonus change:spelltrickery1specialbonus change:spelltrickery2specialbonus change:spelltrickery3specialbonus change:transcendencespecialbonus change:specialbonus change:herbalismspecialbonus change:medicinespecialbonus change:poisonmasteryspecialbonus change:specialbonus change:controllycanthropyspecialbonus change:meditationspecialbonus change:mentalfocusspecialbonus change:specialbonus change:climbingspecialbonus change:flyingspecialbonus change:runningspecialbonus change:swimmingspecialbonus change:specialbonus change:actingspecialbonus change:music1specialbonus change:music2specialbonus change:music3specialbonus change:stagemagicspecialbonus change:specialbonus change:channelingspecialbonus change:boltsspecialbonus change:illusionsspecialbonus change:hurlingspecialbonus change:powerdevelopmentspecialbonus change:powerprojectionspecialbonus change:specialbonus change:architecturespecialbonus change:astronomyspecialbonus change:engineeringspecialbonus change:mathematicsspecialbonus change:specialbonus change:influence1specialbonus change:influence2specialbonus change:influence3specialbonus change:leadershipspecialbonus change:socialawarenessspecialbonus change:tradingspecialbonus change:specialbonus change:magicalritual1specialbonus change:magicalritual2specialbonus change:magicalritual3specialbonus change:open1specialbonus change:open2specialbonus change:open3specialbonus change:open4specialbonus change:open5specialbonus change:open6specialbonus change:open7specialbonus change:closed1specialbonus change:closed2specialbonus change:closed3specialbonus change:base1specialbonus change:base2specialbonus change:base3specialbonus change:arcane1specialbonus change:arcane2specialbonus change:arcane3specialbonus change:restricted1specialbonus change:restricted2specialbonus change:restricted3specialbonus change:specialbonus change:ambush1specialbonus change:ambush2specialbonus change:ambush3specialbonus change:concealmentspecialbonus change:stalkingspecialbonus change:trickeryspecialbonus change:specialbonus change:locksspecialbonus change:mechanics1specialbonus change:mechanics2specialbonus change:mechanics3specialbonus change:trapsspecialbonus change:specialbonus change:administration1specialbonus change:administration2specialbonus change:administration3specialbonus change:service1specialbonus change:service2specialbonus change:service3specialbonus change:trade1specialbonus change:trade2specialbonus change:trade3specialbonus', function(info) { + + console.log('Skill special have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + skillname = skillname.replace(/isprof/g,""); + skillname = skillname.replace(/statbonus/g,""); + skillname = skillname.replace(/knackbonus/g,""); + skillname = skillname.replace(/specialbonus/g,""); + skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + +on ('change:animalhandling1itembonus change:animalhandling2itembonus change:animalhandling3itembonus change:riding1itembonus change:riding2itembonus change:riding3itembonus change:itembonus change:perceptionitembonus change:trackingitembonus change:itembonus change:maneuveringarmoritembonus change:mountedcombatitembonus change:protectitembonus change:restrictedquartersitembonus change:subduingitembonus change:itembonus change:adrenaldefenseitembonus change:adrenalfocusitembonus change:adrenalspeeditembonus change:adrenalstrengthitembonus change:itembonus change:bodydevitembonus change:fortitudeitembonus change:weighttrainingitembonus change:itembonus change:blindfightingitembonus change:disarmitembonus change:footworkitembonus change:multipleattacksitembonus change:reversestrikeitembonus change:itembonus change:melee1itembonus change:melee2itembonus change:melee3itembonus change:ranged1itembonus change:ranged2itembonus change:ranged3itembonus change:shielditembonus change:sweeps1itembonus change:sweeps2itembonus change:sweeps3itembonus change:throws1itembonus change:throws2itembonus change:throws3itembonus change:itembonus change:illusioncraftingitembonus change:musicalcompositionitembonus change:writing1itembonus change:writing2itembonus change:writing3itembonus change:itembonus change:culinaryitembonus change:drawingpaintingitembonus change:fabriccraftitembonus change:leathercraftitembonus change:metalcraftitembonus change:stonecraftitembonus change:woodcraftitembonus change:itembonus change:attunrmentitembonus change:runesitembonus change:itembonus change:navigationitembonus change:piloting1itembonus change:piloting2itembonus change:piloting3itembonus change:survival1itembonus change:survival2itembonus change:survival3itembonus change:itembonus change:acrobaticsitembonus change:contortionsitembonus change:jumpingitembonus change:itembonus change:creaturelore1itembonus change:creaturelore2itembonus change:creaturelore3itembonus change:historiclore1itembonus change:historiclore2itembonus change:historiclore3itembonus change:language1itembonus change:language2itembonus change:language3itembonus change:materialslore1itembonus change:materialslore2itembonus change:materialslore3itembonus change:raciallore1itembonus change:raciallore2itembonus change:raciallore3itembonus change:regionlore1itembonus change:regionlore2itembonus change:regionlore3itembonus change:religion1itembonus change:religion2itembonus change:religion3itembonus change:spellloreitembonus change:itembonus change:grace1itembonus change:grace2itembonus change:grace3itembonus change:spelltrickery1itembonus change:spelltrickery2itembonus change:spelltrickery3itembonus change:transcendenceitembonus change:itembonus change:herbalismitembonus change:medicineitembonus change:poisonmasteryitembonus change:itembonus change:controllycanthropyitembonus change:meditationitembonus change:mentalfocusitembonus change:itembonus change:climbingitembonus change:flyingitembonus change:runningitembonus change:swimmingitembonus change:itembonus change:actingitembonus change:music1itembonus change:music2itembonus change:music3itembonus change:stagemagicitembonus change:itembonus change:channelingitembonus change:boltsitembonus change:illusionsitembonus change:hurlingitembonus change:powerdevelopmentitembonus change:powerprojectionitembonus change:itembonus change:architectureitembonus change:astronomyitembonus change:engineeringitembonus change:mathematicsitembonus change:itembonus change:influence1itembonus change:influence2itembonus change:influence3itembonus change:leadershipitembonus change:socialawarenessitembonus change:tradingitembonus change:itembonus change:magicalritual1itembonus change:magicalritual2itembonus change:magicalritual3itembonus change:open1itembonus change:open2itembonus change:open3itembonus change:open4itembonus change:open5itembonus change:open6itembonus change:open7itembonus change:closed1itembonus change:closed2itembonus change:closed3itembonus change:base1itembonus change:base2itembonus change:base3itembonus change:arcane1itembonus change:arcane2itembonus change:arcane3itembonus change:restricted1itembonus change:restricted2itembonus change:restricted3itembonus change:itembonus change:ambush1itembonus change:ambush2itembonus change:ambush3itembonus change:concealmentitembonus change:stalkingitembonus change:trickeryitembonus change:itembonus change:locksitembonus change:mechanics1itembonus change:mechanics2itembonus change:mechanics3itembonus change:trapsitembonus change:itembonus change:administration1itembonus change:administration2itembonus change:administration3itembonus change:service1itembonus change:service2itembonus change:service3itembonus change:trade1itembonus change:trade2itembonus change:trade3itembonus', function(info) { + + + console.log('Skill item bonus have changed'); + + let skillname = info.sourceAttribute + skillname = skillname.replace(/ranks/g,""); + skillname = skillname.replace(/isprof/g,""); + skillname = skillname.replace(/statbonus/g,""); + skillname = skillname.replace(/knackbonus/g,""); + skillname = skillname.replace(/specialbonus/g,""); + skillname = skillname.replace(/itembonus/g,""); + + + console.log('skillname: ' + skillname); + UpdateTotalSkillBonus(skillname); + +}); + // on('clicked:skill', (info) => { skillRoll(info.htmlAttributes.title); @@ -7470,54 +8426,126 @@ on('change:realmselect', function(info) { let calcrealmstatbonus = 0; getAttrs(['realmselect','embonus','inbonus','prbonus'], function(values) { - calcrealmstatbonus = SetRealmStatBonus(values.realmselect, values.embonus, values.inbonus, values.prbonus) + calcrealmstatbonus = SetRealmStatBonus(values.realmselect, values.embonus, values.inbonus, values.prbonus); }); }); // // Calculate Base Bonus -on('change:agraw change:coraw change:emraw change:inraw change:meraw change:prraw change:quraw change:reraw change:sdraw change:straw', function(info) { +on('change:agraw change:coraw change:emraw change:inraw change:meraw change:prraw change:quraw change:reraw change:sdraw change:straw change:agpotential change:copotential change:empotential change:inpotential change:mepotential change:prpotential change:qupotential change:repotential change:sdpotential change:stpotential', function(info) { let statAbbrv = info.sourceAttribute.substring(0, 2); - UpdateBaseStatBonus(statAbbrv); + UpdateBaseStatBonus(statAbbrv); }); -// - // on('change:agbasebonus change:agracial change:agspecial change:cobasebonus change:coracial change:cospecial change:embasebonus change:emracial change:emspecial change:inbasebonus change:inracial change:inspecial change:mebasebonus change:meracial change:mespecial change:prbasebonus change:prracial change:prspecial change:qubasebonus change:quracial change:quspecial change:rebasebonus change:reracial change:respecial change:sdbasebonus change:sdracial change:sdspecial change:stbasebonus change:stracial change:stspecial', function(info) { let statAbbrv = info.sourceAttribute.substring(0, 2); - UpdateTotalStatBonus(statAbbrv); + UpdateTotalStatBonus(statAbbrv); }); // + + +// // +var UpdateTotalSkillBonus = function(skillname) { + + var skillattrfields = [ skillname + "total", skillname + "isprof", skillname + "ranks", skillname + "rankbonus", skillname + "skill1bonus", skillname + "skill1type", skillname + "skill2bonus", skillname + "skill2type", skillname + "skill3bonus", skillname + "skill3type", skillname + "statbonus", skillname + "knackbonus", skillname + "specialbonus", skillname + "itembonus", "agbonus", "cobonus", "embonus", "inbonus", "mebonus", "prbonus", "qubonus", "rebonus", "sdbonus", "stbonus", "realmbonus"]; + var setObj = {}; + + var newprofflag = 0; + var newskillranks = 0; + var newskillrankbonus = 0; + var newskill1bonus = 0; + var skill1type = ""; + var newskill2bonus = 0; + var skill2type = ""; + var newskill3bonus = 0; + var skill3type = ""; + var newskillstatbonus = 0; + var newskillknackbonus = 0; + var newskillspecialbonus = 0; + var newskillitembonus = 0; + var newskilltotalbonus = 0; + var newskill1bonus = 0; + + getAttrs(skillattrfields, function(values) { + + // parse and assign get attrs values + //console.log(values); + + newprofflag = values[skillattrfields[1]]*1||0; + newskillranks = values[skillattrfields[2]]*1||0; + newskillrankbonus = values[skillattrfields[3]]*1||0; + skill1type = values[skillattrfields[5]]; + skill2type = values[skillattrfields[7]]; + skill3type = values[skillattrfields[9]]; + //var newskillstatbonus = values[skillattrfields[10]]*1||0; + newskillknackbonus = values[skillattrfields[11]]*1||0; + newskillspecialbonus = values[skillattrfields[12]]*1||0; + newskillitembonus = values[skillattrfields[13]]*1||0; + newskill1bonus = values[skill1type + "bonus"]*1||0; + newskill2bonus = values[skill2type + "bonus"]*1||0; + newskill3bonus = values[skill3type + "bonus"]*1||0; + + + + //Calculate the new skill rank bonus + newskillrankbonus = GetSkillRankBonus(newprofflag,newskillranks); + + //Calculate the new skill stat bonus + newskillstatbonus = newskill1bonus + newskill2bonus + newskill3bonus ; + + console.log(newskillstatbonus); + + newskilltotalbonus = newskillrankbonus + newskillstatbonus + newskillknackbonus + newskillspecialbonus + newskillitembonus; + + setObj[skillattrfields[0]] = newskilltotalbonus; + setObj[skillattrfields[3]] = newskillrankbonus; + setObj[skillattrfields[10]] = newskillstatbonus; + + setAttrs(setObj); + }); +}; + + // // var UpdateBaseStatBonus = function(statabbrv) { - var statattrfields = [ statabbrv + "basebonus", statabbrv + "raw"]; + var statattrfields = [ statabbrv + "basebonus", statabbrv + "raw", statabbrv + "potential"]; var setObj = {}; var newraw = 0; var newbase = 0; - var currbase = 0; + var newpotent = 0; + var statmin = 1; + var statmax = 100; getAttrs(statattrfields, function(values) { //// parse and assign get attrs values - currbase = values[statattrfields[0]]*1||0; newraw = values[statattrfields[1]]*1||0; - + newpotent = values[statattrfields[2]]*1||0; + + //constrain the stats with max & min amts + newpotent = Math.max(Math.min(statmax,newpotent),statmin); + newraw = Math.max(Math.min(newraw,newpotent),statmin); + newbase = statbonuses[newraw]; setObj[statattrfields[0]] = newbase; + setObj[statattrfields[1]] = newraw; + setObj[statattrfields[2]] = newpotent; + console.log(setObj); setAttrs(setObj); }); }; + // var UpdateTotalStatBonus = function(statabbrv) { @@ -7574,5 +8602,30 @@ function SetRealmStatBonus(rselect, embonus, inbonus, prbonus) { return mod; } +function GetSkillRankBonus(profflag, skillranks) { + var bonus = 0; + var professionalrankbonus = 0; + var skillrankbonus = 0; + + professionalrankbonus = profflag * (Math.min(skillranks,30)); + + if (skillranks == 0) { + skillrankbonus = skillranks - 25; + } else if (skillranks < 11 ) { + skillrankbonus = 5 * skillranks; + } else if (skillranks < 21 ) { + skillrankbonus = 50 + (3 * skillranks); + } else if (skillranks < 31 ) { + skillrankbonus = 80 + (2 * skillranks); + } else if (skillranks > 30 ) { + skillrankbonus = 100 + skillranks; + } + + bonus = professionalrankbonus + skillrankbonus; + + return bonus; +} + + - + \ No newline at end of file