The overridable entity-class registry, keyed by class name. Each value is the class constructor itself (typeof ClassName), so new sohl.entity.X(...) and class Y extends sohl.entity.X {} both type-check. Hand-declared (rather than typeof someObjectLiteral) because the backing is populated dynamically by self-registration, not a literal — keep it in sync with the ENTITY_NAMES list and the registerEntity call in each class module. Each property is the class constructor (typeof X), not an instance.

Hierarchy (View Summary)

Properties

AttackResult: typeof sohl.entity.result.AttackResult

The attacker's side of a combat exchange. See sohl.entity.result.AttackResult.

BodyLocation: typeof sohl.entity.body.BodyLocation

One hit location within a sohl.entity.body.BodyPart. See BodyLocation.

BodyPart: typeof sohl.entity.body.BodyPart

One anatomical division (head, torso, a limb). See sohl.entity.body.BodyPart.

BodyStructure: typeof sohl.entity.body.BodyStructure

Root anatomy: parts, adjacency, and hit-location resolution. See sohl.entity.body.BodyStructure.

BodyZone: typeof sohl.entity.body.BodyZone

One anatomical region (head, arms, torso, legs). See sohl.entity.body.BodyZone.

CombatModifier: typeof sohl.entity.modifier.CombatModifier

Combat-tagged mastery-level modifier (attack/defense tests). See CombatModifier.

CombatResult: typeof sohl.entity.result.CombatResult

Full attack-vs-defense exchange outcome. See CombatResult.

DefendResult: typeof sohl.entity.result.DefendResult

The defender's side of a combat exchange. See DefendResult.

ImpactModifier: typeof sohl.entity.modifier.ImpactModifier

Damage/impact modifier — dice plus aspect. See ImpactModifier.

ImpactResult: typeof sohl.entity.result.ImpactResult

Resolved impact/damage outcome. See ImpactResult.

MasteryLevelModifier: typeof sohl.entity.modifier.MasteryLevelModifier

sohl.entity.modifier.ValueModifier specialized for d100 roll-under mastery tests. See sohl.entity.modifier.MasteryLevelModifier.

MeleeStrikeMode: typeof sohl.entity.strikemode.MeleeStrikeMode

A melee strike mode. See MeleeStrikeMode.

MissileStrikeMode: typeof sohl.entity.strikemode.MissileStrikeMode

A missile (ranged) strike mode. See MissileStrikeMode.

OpposedTestResult: typeof sohl.entity.result.OpposedTestResult

Two success tests compared to determine a winner. See OpposedTestResult.

SohlAction: typeof sohl.entity.action.SohlAction

Executable action — a context-menu entry / chat-card button. See sohl.entity.action.SohlAction.

StrikeModeBase: typeof sohl.entity.strikemode.StrikeModeBase

Abstract base for a weapon/technique's mode of use in combat. See StrikeModeBase.

SuccessTestResult: typeof sohl.entity.result.SuccessTestResult

Single d100 roll-under mastery test outcome. See sohl.entity.result.SuccessTestResult.

TestResult: typeof sohl.entity.result.TestResult

Abstract base for test/combat resolution outcomes. See TestResult.

ValueDelta: typeof sohl.entity.modifier.ValueDelta

One operator-tagged delta applied by a sohl.entity.modifier.ValueModifier. See ValueDelta.

ValueModifier: typeof sohl.entity.modifier.ValueModifier

Auditable base-plus-ordered-deltas value tracker. See sohl.entity.modifier.ValueModifier.