Skip to main content

Crate wowlab_manifest_schema

Crate wowlab_manifest_schema 

Source
Expand description

Canonical TOML schema for engine spec and items manifests.

use wowlab_manifest_schema::{ScalarRef, SpellScalarField};

let scalar: ScalarRef = toml::from_str(
    "spell_id = 61304\nfield = \"gcd_ms\"\nmultiplier = 0.8",
)?;
assert!(matches!(
    scalar,
    ScalarRef::SpellRef {
        field: SpellScalarField::GcdMs,
        ..
    }
));

Modules§

aura 🔒
Aura authoring schema and scalar-reference traversal.
combat 🔒
manifest 🔒
Root manifest documents and top-level sections.
periodic 🔒
Periodic aura components.
repository 🔒
Filesystem-backed manifest discovery and loading.
repository_composition 🔒
TOML component parsing, ordered composition, and shared-section patching.
scalar 🔒
Literal and game-data-backed scalar values.
spell 🔒
Spell and auto-attack authoring schema.
validation 🔒
Symbolic reference validation for composed manifests.

Structs§

AoeDef
AoE shape on a crate::ManifestSpellDef.
AutoAttackDef
[auto_attacks.<name>] block describing a swing-driven physical hit.
ChannelDef
Channel behavior on a crate::ManifestSpellDef.
ContentEffectCoverage
Explicit coverage for an opaque spell effect that requires spec or item content.
DamageEffectDef
One exact DBC trigger edge appended to a spell’s ordered damage program.
EffectRef
[effects.<NAME>] — a named (spell_id, effect_index) pair read by the spec hooks.
EmpowerDef
Structured empower behavior for a spell definition.
ExtendAuraDef
ImpactProcDef
ItemImpactHookDef
An item hook driven by landed player damage impacts.
ItemManifestEntry
One entry in [items.*].
ItemsManifest
Top-level shape of crates/engine/manifests/items.toml.
Manifest
Fully composed shape of a manifests/specs/<class>/<specialization>/manifest.toml entry.
ManifestAuraDef
[auras.<name>] block describing a single registered aura.
ManifestHeroTalentTree
One hero talent tree under [hero_talents.<name>].
ManifestRepository
Canonical filesystem-backed source for spec, shared, and item manifests.
ManifestSpellDef
[spells.<name>] block describing a single registered spell.
MasterySection
[mastery] section: the spec’s mastery spell and the hook path that applies it.
MetricKeysSection
Optional [metric_keys] block declaring the engine-side metric enum.
OnCritReduceCharge
Charge-reduction proc fired on an AutoAttackDef’s crits.
PeriodicApplyAura
Periodic aura-apply component on an crate::ManifestAuraDef.
PeriodicDamage
Periodic damage component on an crate::ManifestAuraDef.
PeriodicHook
Hook-only periodic component on an crate::ManifestAuraDef (pure pulse window).
PeriodicRemoveStack
Periodic stack-decay component on an crate::ManifestAuraDef.
PeriodicResidualDamage
Periodic drain for a post-mitigation residual damage pool.
PeriodicResource
Periodic resource-gain component on an crate::ManifestAuraDef.
PeriodicResourceDrain
Periodic resource-drain component on an crate::ManifestAuraDef.
ReducesCd
Cooldown reduction that fires unconditionally on a ManifestSpellDef’s cast.
ReducesCdChance
Probabilistic cooldown reduction triggered on a ManifestSpellDef’s cast.
ResetsCdWhile
Conditional cooldown reset on a ManifestSpellDef while the named aura is active.
ResourceSection
[resource] block describing the spec’s primary resource; max/regen/starts_at derive from game.power_types when omitted.
RotationSchema
Optional [rotation_schema] block listing rotation-state fields the spec exposes.
SecondaryResourceSection
[secondary_resource] block describing the spec’s secondary resource; max derives from game.power_types when omitted.
SharedBindings
Bindings a shared manifest can expose to hand-authored shared hooks.
SharedManifestPath
A shared manifest path discovered below a class-local shared directory.
SpecSection
[spec] block identifying the spec.
SpellGroupDef
Group of auras that share a runtime rule.
SpellScopedPct
A per-stack percent magnitude scoped to a list of manifest spell names.
SpellScopedValue
A scalar magnitude scoped to a list of manifest spell names.
StackingDamageMult
Additive damage fractions for an aura whose first stack differs from later stacks.
TalentGatedAuraEffectDef
A [[talent_gated_aura_effects]] entry for a talent-conditional DBC aura effect.
TickCostAltDef
Aura-conditional alternative tick cost for a ChannelDef.
TickCostDef
Per-tick resource cost for a ChannelDef.
TickDamageAltDef
Aura-conditional alternative damage payload for a channel tick.

Enums§

ChannelDamageType
Combat result classification for a channel’s child tick action.
ContentEffectStatus
How content accounts for an opaque DBC spell effect.
DamageSchoolKind
Armor-relevant damage school category used by manifest-authored payloads.
EventEffectDef
ImpactProcHitDef
ImpactProcPhaseDef
ImpactProcRngDef
ManifestAuraTickBehavior
ManifestDamageDef
Damage payload on a crate::ManifestSpellDef or ChannelDef::tick_damage.
ManifestDiagnostic
Structural problem found while validating a composed manifest.
ManifestDiagnosticLocation
Typed location of a structural manifest diagnostic.
ManifestLoadError
Error returned while discovering, reading, composing, or parsing manifests.
ManifestProcAttribute
Authored server-side SpellProcEntry attribute.
ManifestReferenceKind
Kind of manifest entry targeted by a symbolic reference.
PeriodicDamageMode
Governs periodic-damage refresh behavior.
ScalarField
Game-data field a ScalarRef::EffectRef resolves against.
ScalarRef
A scalar coefficient that is either a literal or a reference resolved from game data.
SpellGroupRule
Governs how auras in a spell group interact.
SpellScalarField
Resolved spell property a ScalarRef::SpellRef reads.

Constants§

CURRENT_SCHEMA_VERSION
Current manifest schema version.