{{!-- Sheet Header --}}
{{!-- The grid classes are defined in scss/global/_grid.scss. To use, use both the "grid" and "grid-Ncol" class where "N" can be any number from 1 to 12 and will create that number of columns. --}} {{!-- The grid classes are defined in scss/global/_grid.scss. To use, use both the "grid" and "grid-Ncol" class where "N" can be any number from 1 to 12 and will create that number of columns. --}}
SLA Industries
{{!-- REST button — top-right, above Race --}}
{{!-- ROW 2: Name / Class / Race --}}
{{ localize 'Mosh.Name' }}
{{ localize 'Mosh.CLASS' }}
Race
{{!-- ROW 3: Bottom row — all equal width, same font --}}
L.A.D.
{{ localize 'Mosh.Credits' }}
S.C.L.
Height
Weight
{{ localize 'Mosh.Current' }}
{{ localize 'Mosh.Maximum' }}
{{ localize 'Mosh.Current' }}
{{ localize 'Mosh.Maximum' }}
{{#if system.settings.useCalm}}
{{ localize 'Mosh.Current' }}
{{ localize 'Mosh.Maximum' }}
{{else}}
{{ localize 'Mosh.Current' }}
{{ localize 'Mosh.Minimum' }}
{{/if}} {{#if isEbbUser}}
{{ localize 'Mosh.Current' }}
{{ localize 'Mosh.Maximum' }}
{{else}} {{#if system.settings.firstEdition}} {{else}}
{{/if}} {{/if}} {{#if system.settings.firstEdition}}
{{system.stats.armor.mod}}
{{#if (compare 'str' system.stats.armor.cover '===' 'insignificant')}}
 5
{{/if}} {{#if (compare 'str' system.stats.armor.cover '===' 'light')}}
 10
{{/if}} {{#if (compare 'str' system.stats.armor.cover '===' 'heavy')}}
 20
{{/if}}
{{system.stats.armor.damageReduction}}
{{#if (compare 'str' system.stats.armor.cover '===' 'heavy')}}
 5
{{/if}}
{{ localize 'Mosh.ArmorPoints' }}
{{ localize 'Mosh.DMGReduction' }}
{{/if}}
{{ localize 'Mosh.TraumaResponse' }}
{{#if system.settings.firstEdition}}
{{else}}
{{/if}}
{{ localize 'Mosh.Strength' }}
+
{{ localize 'Mosh.Speed' }}
+
{{ localize 'Mosh.Intellect' }}
+
{{ localize 'Mosh.Combat' }}
+
{{#if conditions.length}}
CONDITIONS: {{#each conditions as |condition|}} {{condition.name}}{{#if condition.system.severity}} {{condition.system.severity}}{{/if}} {{/each}}
{{/if}}
{{#if system.settings.firstEdition}}
{{else}}
{{/if}}
{{ localize 'Mosh.Sanity' }}
+
{{ localize 'Mosh.Fear' }}
+
{{ localize 'Mosh.Body' }}
+
{{#unless system.settings.firstEdition}}
{{ localize 'Mosh.Armor' }}
+
{{system.stats.armor.mod}}
{{/unless}}
Carry Load
{{slaCarry.current}} / {{slaCarry.capacity}} kg
State: {{slaCarry.state}} | Equipped {{slaCarry.equipped}} kg | Carried {{slaCarry.carried}} kg | Stowed {{slaCarry.stowed}} kg | Free {{slaCarry.available}} kg
{{!-- Sheet Tab Navigation --}} {{!-- Sheet Body --}}
{{!-- Biography Tab --}}
{{editor enriched.biography target="system.biography" button=true editable=true}}
{{!-- Notes Tab --}}
Operation Log
Recent rolls, outcomes, and field actions for this operative.
Ammo Economy Ledger
Firing spend total: {{system.sla.ammoSpendTotal.value}} cR. Purchases are logged below as separate entries.
{{editor enriched.notes target="system.notes" button=true editable=true}}
SLA Operative Profile
{{system.sla.species.value}} {{#if system.sla.trainingPackage.value}}/ {{system.sla.trainingPackage.value}}{{/if}}
{{system.sla.bpn.value}} SCL {{system.sla.scl.value}} {{#if isEbbUser}}Ebb {{system.sla.ebbRating.value}}{{/if}}
Package Focus
{{system.sla.trainingPackage.value}}
{{system.sla.packageSummary.value}}
Employer {{system.sla.employer.value}} Sector {{system.sla.sector.value}} {{#if system.sla.packageWealth.value}}Wealth {{system.sla.packageWealth.value}}{{/if}}
Species Dossier
{{system.sla.species.value}}
{{system.sla.speciesNotes.value}}
Operative {{system.sla.operativeType.value}} {{#if isEbbUser}}Flux Channel {{system.sla.ebbRating.value}}{{/if}}
Rules Snapshot
{{slaEnabledSpeciesRuleCount}} active rules
{{#each slaEnabledSpeciesRules as |rule|}}
{{rule.label}}
{{/each}}
{{#unless slaEnabledSpeciesRuleCount}}
No optional species rules are enabled right now.
{{/unless}}
Sheet Mode
{{#if (compare 'str' slaSheetTheme '===' 'legacy')}}Legacy{{else}}Modern SLA{{/if}}
Use the palette button in the header to swap the entire presentation style without changing the operative data.
{{#if isEbbUser}}
{{/if}}
Species Notes
{{#each slaSpeciesTraitList as |note|}}
{{note}}
{{/each}}
Package Skills
{{#each slaPackageSkillList as |skill|}}
{{skill}}
{{/each}}
Species Rules
Turn these on or off to match the version of the species rules your table is using.
{{#if slaSpeciesRules.length}}
{{#each slaSpeciesRules as |rule|}} {{/each}}
{{else}}
No species-specific toggles are defined for this operative yet.
{{/if}}
Trait Engine
Balanced Personal Traits
{{traitCount}} traits {{traitValidation.rankBalance.advantageRanks}} / {{traitValidation.rankBalance.disadvantageRanks}} {{#if traitValidation.rankBalance.balanced}}Balanced{{else}}Needs Balance{{/if}}
Trait
Positive Traits
Choose one advantage and add it to the operative.
Negative Traits
Choose one disadvantage and add it to the operative.
Trait Count: {{traitCount}}
Advantage Ranks: {{traitValidation.rankBalance.advantageRanks}}
Disadvantage Ranks: {{traitValidation.rankBalance.disadvantageRanks}}
Balance Net: {{traitValidation.rankBalance.net}}
Coverage: {{traitValidation.coverage.mapped}} mapped / {{traitValidation.coverage.unmapped}} unmapped
Status: {{#if traitValidation.rankBalance.balanced}}Balanced{{else}}Needs Balance{{/if}}
{{#if traitValidation.errors.length}}
Errors: {{#each traitValidation.errors as |err|}}{{err}}{{/each}}
{{/if}} {{#if traitValidation.warnings.length}}
Warnings: {{#each traitValidation.warnings as |warn|}}{{warn}}{{/each}}
{{/if}}
{{#if persTraitsEnhanced.length}}
  1. Icon
    Trait
    Rank
    Type
    State
    Effect
    Delete
  2. {{#each persTraitsEnhanced as |trait|}}
  3. {{trait.name}}
    {{trait.slaTrait.rank}} / {{trait.slaTrait.maxRank}}
    {{trait.slaTrait.type}}
    {{trait.slaTrait.status}}
    {{trait.slaTrait.effectSummary}}
  4. {{/each}}
{{else}}
No personal traits are on this operative yet. Add balanced good and bad traits here and the audit will keep track of the rank balance.
{{/if}}
Species Snapshot
{{#each slaSpeciesTraitList as |note|}}
{{note}}
{{/each}}
{{#unless slaSpeciesTraitList.length}}
No species notes are currently listed for this operative.
{{/unless}}
Package Snapshot
{{#each slaPackageSkillList as |skill|}}
{{skill}}
{{/each}}
{{#unless slaPackageSkillList.length}}
No package skills are currently listed for this operative.
{{/unless}}
Species Doctrine
{{system.sla.species.value}} Special Rules
{{system.sla.species.value}} {{#if system.sla.trainingPackage.value}}{{system.sla.trainingPackage.value}}{{/if}}
Rule Toggles
Turn these on or off to match the version of the species rules your table is using.
{{#if slaSpeciesRules.length}}
{{#each slaSpeciesRules as |rule|}} {{/each}}
{{else}}
No species-specific toggles are defined for this operative yet.
{{/if}}
Combat Rule Status
{{#if slaPrometheusStatus.enabled}}
Prometheus Regeneration is enabled.
{{#if slaPrometheusStatus.inCombat}}
Current combat round: {{slaPrometheusStatus.currentRound}}
{{#if slaPrometheusStatus.pulseThisRound}}
Regeneration triggers this round.
{{else}}
Rounds until next regeneration pulse: {{slaPrometheusStatus.roundsUntilPulse}}
{{/if}}
Every fourth combat round, recover 1d5 Health automatically.
{{else}}
Not currently in combat. Prometheus regeneration will trigger on rounds 4, 8, 12, and so on once combat starts.
{{/if}} {{else}}
No active round-based special rule is currently enabled for this operative.
{{/if}}
{{#if isVevaphon}}
Stormer Vevaphon
Polymorphic Form Control
Form: {{system.sla.morphForm.value}} Instability {{system.sla.vevaphonInstability.value}} / 12 Sanity {{system.stats.sanity.value}}
{{!-- Instability Track --}}
Instability Track
{{data.sla.vevaphonInstability.value}} / 12
{{vevaphonInstabilityDesc}}
At 12, the Vevaphon is lost — immediate retirement or death.
{{!-- Active Morph Form --}}
Active Morph Form
Each morph shift costs 1 Instability. Changing form mid-scene requires a Sanity save at Instability 6+.
{{#each slaMorphForms as |form|}} {{/each}}
{{!-- Morph Panic Reference --}}
Morph Panic Reference
Triggered at Instability 10+ on a failed Sanity save. Roll 1d6:
{{#each vevaphonMorphPanic as |entry|}}
{{entry.roll}}. {{entry.label}} — {{entry.desc}}
{{/each}}
{{!-- Morph Notes --}}
Morph Notes
{{/if}} {{#if isEbbUser}}
Ebb Discipline
{{system.sla.species.value}} Flux Channel
Flux {{system.sla.flux.value}} / {{system.sla.flux.max}} {{slaFlux.label}} Fear Save {{system.stats.fear.value}}
Flux State
{{slaFlux.label}}
{{slaFlux.description}}
Risk bands: {{slaFlux.thresholds}}
Reserve remaining: {{system.sla.flux.value}} / {{system.sla.flux.max}}
Ebb Skill Deck
Click a discipline below to roll that Ebb skill directly. Use the ability roster underneath to channel a specific power and spend Flux.
{{#each ebbSkills as |skill|}} {{/each}}
Core and discipline skills are grouped here so powers like Awareness are easier to find. Ebb skills live here, while the actual powers are listed in the ability roster below.
Panic Protocol
{{#each slaFluxGuidance as |entry|}}
{{entry}}
{{/each}}
Discipline Notes
Use this space for doctrine, trainer notes, squad warnings, or sector-specific Ebb restrictions.
  1. Ebb Ability
    Skill
    Flux
    Tier
    Save
  2. {{#each abilities as |ability id|}}
  3. {{ability.name}}
    {{ability.system.sla.skillRef}}
    {{ability.system.sla.fluxCost}}
    {{ability.system.sla.tier}}
    {{ability.system.sla.panicSave}}
  4. {{/each}}
{{/if}} {{!-- Owned Items Tab --}}
{{#if system.settings.firstEdition}}
  1. {{ localize 'Mosh.ArmorName' }}
    {{ localize 'Mosh.AP' }}
    {{ localize 'Mosh.DR' }}
    {{ localize 'Mosh.Speed' }}
    {{ localize 'Mosh.Oxygen' }}
    Carry
  2. {{#each armors as |armor id|}}
  3. {{armor.name}}

    {{armor.system.armorPoints}}
    {{armor.system.damageReduction}}
    {{armor.system.speed}}
    {{#if armor.system.oxygenMax}}
    {{armor.system.oxygenCurrent}}/{{armor.system.oxygenMax}}
    {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}}
    {{armor.slaCarry.totalWeight}} kg
  4. {{/each}}
{{else}}
  1. {{ localize 'Mosh.ArmorName' }}
    {{ localize 'Mosh.SaveBonus' }}
    {{ localize 'Mosh.Speed' }}
    {{ localize 'Mosh.Oxygen' }}
    Carry
  2. {{#each armors as |armor id|}}
  3. {{armor.name}}

    {{armor.system.armorPoints}}
    {{armor.system.speed}}
    {{#if armor.system.oxygenMax}}
    {{armor.system.oxygenCurrent}}/{{armor.system.oxygenMax}}
    {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}}
    {{armor.slaCarry.totalWeight}} kg
  4. {{/each}}
{{/if}}
  1. {{ localize 'Mosh.ItemName' }}
    {{ localize 'Mosh.Quantity' }}
    {{ localize 'Mosh.Weight' }}
    Carry
    {{ localize 'Mosh.Value' }}
  2. {{#each gear as |item id|}}
  3. {{item.name}}

    {{item.system.quantity}}
    {{item.slaCarry.totalWeight}} kg
    {{item.system.cost}}
  4. {{/each}}
{{ localize 'Mosh.CarryingCapacity' }}: {{system.weight.capacity}} kg
{{ localize 'Mosh.CurrentWeight' }}: {{system.weight.current}} kg
Stowed: {{system.weight.stowed}} kg
{{#if drugAlerts.length}}
{{#each drugAlerts as |alert id|}}
{{alert.name}}
{{alert.stateLabel}} {{#if alert.duration}}{{alert.duration}}{{/if}}
{{alert.summary}}
{{/each}}
{{/if}}
  1. Drug
    Qty
    Rating
    Value
    Weight
    Carry
    State
    Duration
  2. {{#each drugRows as |drug id|}}
  3. {{drug.name}}{{drug.summary}}
    {{drug.quantity}}
    {{drug.rating}}
    {{drug.cost}}
    {{drug.slaCarry.totalWeight}} kg
    {{drug.statusLabel}}
    {{drug.duration}}
  4. {{/each}}
{{!-- Owned Skills Tab --}}
Field Skill Deck
Standard operative skills are listed here by category. Ebb-only skills stay on the Ebb tab so non-Ebb characters and general play stay uncluttered.
  1. {{ localize 'Mosh.SkillName' }}
    Category
    {{ localize 'Mosh.SkillRank' }}
    {{ localize 'Mosh.SkillBonus' }}
  2. {{#each skills as |skill id|}}
  3. {{skill.name}} {{#if skill.isCombatSkill}}Combat Use{{/if}} {{#if skill.slaBreakdown.summary}}{{skill.slaBreakdown.summary}}{{/if}}
    {{skill.system.sla.category}}
    {{skill.system.rank}}
    {{skill.system.displayBonus}} {{#if skill.slaTraitPreview.modLabel}}{{skill.slaTraitPreview.modLabel}} trait{{/if}}
  4. {{/each}}
{{#if system.settings.firstEdition}}
{{ localize 'Mosh.SkillTraining' }}
{{{system.xp.html}}}
{{/if}}
  1. {{ localize 'Mosh.Condition' }}
    {{ localize 'Mosh.Severity' }}
    {{ localize 'Mosh.Treatment' }}
  2. {{#each conditions as |condition id|}}
  3. {{condition.name}}
    {{condition.system.severity}}
    {{#if condition.system.treatment.html}}
    {{{condition.system.treatment.html}}}
    {{else}}
    {{condition.name}}
    {{/if}}
  4. {{/each}}
{{!-- Owned Weapons Tab --}}
Weapons Readiness
Ammo stacks: {{slaAmmoInventory.stackCount}} | Total loose rounds: {{slaAmmoInventory.roundCount}} | Running firing spend: {{system.sla.ammoSpendTotal.value}} cR
Carry: {{slaCarry.current}} / {{slaCarry.capacity}} kg | {{slaCarry.state}}
  1. {{ localize 'Mosh.WeaponName' }}
    {{ localize 'Mosh.Damage' }}
    {{ localize 'Mosh.Ammo' }}
    {{ localize 'Mosh.Shots' }}
    Mode
    Carry
    {{ localize 'Mosh.Range' }}
  2. {{#each weapons as |weapon id|}}
  3. {{weapon.name}} {{#if weapon.system.useAmmo}}{{weapon.sla.calibreLabel}}{{/if}} {{#if weapon.system.useAmmo}}{{weapon.sla.ammoState}}{{/if}}
    {{#if weapon.system.antiArmor}}
    {{weapon.system.damage}} ({{ localize 'Mosh.AntiArmorAcronym' }})
    {{else}}
    {{weapon.system.damage}}
    {{/if}} {{#if weapon.system.useAmmo}}
    {{weapon.system.ammoLoadedType}} | {{weapon.sla.loadedAmmoReserve}}
    {{weapon.sla.reserveSummary}}
    {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}} {{#if weapon.system.useAmmo}} {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}} {{#if weapon.system.useAmmo}} {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}}
    {{weapon.slaCarry.totalWeight}} kg
    {{#if weapon.system.ranges.value}}
    {{weapon.system.ranges.value}}
    {{else}}
    {{ localize 'Mosh.NA' }}
    {{/if}}
  4. {{/each}}