Namespace TDMaker.Core.Defs
Classes
- AbilityActionDef
A generic timed action channel; payloads can be combined.
- AbilityDef
A purchasable ability slot with optional executable rank payloads.
- AbilityExecutionDef
Executable payloads for each purchase rank.
- AbilityRankDef
Complete payload of one purchased rank; rank payloads replace earlier rank payloads.
- AreaEffectDef
A timed region repeatedly requesting attached effects from current occupants.
- AreaPulseDef
Direct periodic region payload; recipients are rescanned each pulse, with no lingering damage after exit.
- ArmorDef
Fractional physical and magical damage reductions.
- AttackCycleDef
Release offsets measured from attack start; the repeat cooldown starts at that same mark.
- AuraDef
An optional region emitter slot.
- BarracksDef
Soldier population and rally settings.
- BeamDef
A tracked single-target channel with an exact integer raw damage budget.
- BountyDef
Rewards and exit penalties for an enemy.
- BuildSlotDef
A location at which a tower may be built.
- ChainAttackDef
One attack whose successive links visit distinct opposing units; state is held in a fixed simulation pool.
- CombatModifierDef
Additional reversible combat state, suitable for support, concealment, dash and tower-disabling effects.
- CompanionDef
Persistent owner-bound slots, attached through EntityTemplate.WithCustomData.
- DamageDef
Immutable damage roll and optional impact area.
- DamageOptions
Immutable damage extensions, including on-hit effects and experience credit.
- DeploymentPlanDef
Automatic path-node production plan. Reservation and placement are atomic; failure never installs a fallback.
- EntityRulesDef
Optional behavior slots; generic actions also extend enemy behavior without named unit subclasses.
- EntityTemplate
An immutable template with nullable definition slots; null inherits its parent's slot.
- FlyingDef
Flying component marker.
- HealingDef
A health restoration formula independent of damage mitigation.
- HealthDef
Immutable maximum health.
- HeroDef
An independent hero behavior slot.
- HeroLevelDef
A full hero growth row; null component values retain the original template's values.
- HeroProfileDef
Hero progression, movement, and resurrection settings.
- HeroSkillDef
Hero skill ranks with explicit level requirements and point costs.
- ImpactPayloadDef
Optional payload after a resolved health packet. Despawn and defense-only packets do not trigger it. One roll gates all operations.
- LevelDef
Immutable simulation inputs baked by an authoring layer.
- LevelRulesDef
Level-wide economy and M2 authoring data.
- LifeStealDef
Healing after positive actual health loss by this damage definition; shields and reflected packets do not qualify.
- MechanicTargetDef
Additional eligibility for mechanic actions; never replaces lifecycle or faction checks.
- MeleeDef
Immutable melee attack settings.
- MeleeEngagementDef
Immutable template-data slot for world-axis contact geometry, independent of attack/search range.
- MotionDef
Immutable movement speed.
- MultiTargetAttackDef
One activation hits multiple distinct opponents in priority order, optionally reserving a total victim-health budget.
- PathDef
A path consisting of lanes with matching node counts.
- PathDestinationDef
A validated-at-use authored path destination.
- PathDisplacementDef
Moves a living enemy along its current authored path and lane; never teleports off path geometry.
- PathFollowDef
Path-following configuration.
- PathTransferDef
Moves nearby path-following enemies to a destination, without requiring a damage hit.
- PeriodicDamageDef
A periodic hit using inclusive uniform integer rolls.
- PeriodicHealingDef
Periodic healing on an attached effect; refreshing lifetime does not reset cadence or replay the first heal.
- PointRuleDef
Reusable finite-coordinate, bounds, path, and optional terrain checks.
- ProjectileDef
Immutable projectile travel data.
- ProjectileOptions
Prediction and target loss behavior for flight entities.
- RaiseRemainsDef
Deterministic closest-then-body-Id reservation followed by delayed, atomic consumption.
- RangedAttackDef
An independently timed ranged attack.
- RangedDef
A read-only collection of ranged attack channels.
- RecoveryDef
Recovery values; timers pause while the actor is ineligible.
- ReflectionDef
One-bounce reflection from actual health loss, not raw input or shield absorption.
- RenderDef
Optional engine-independent view lookup data.
- ReviveDef
Finite same-identity recovery, independent of death-successor production and ordinary hero respawning.
- ShieldDef
A finite damage shield, stored separately for each accepted effect binding.
- SoldierDef
Soldier interception settings.
- SpawnEntryDef
A timed sequence of identical enemies.
- SpellDef
An authored spell combining support units, strikes, traps, and optional residual fields.
- StatModifierDef
Immutable reversible stat changes, recomputed from base values in attachment order.
- StatusEffectDef
Definition-key based attachment, conflict, and lifetime rules.
- StatusImmunityDef
Status immunity tags matching effect identities or families.
- StrikeSequenceDef
Individually timed and scattered impacts for a single cast.
- SummonDef
A summon sequence that can be used by spells, abilities, and death emissions.
- TargetTraitsDef
Target and immunity traits, distinct from damage mitigation.
- TemplateData
Small immutable type-keyed definition array. Treat stored objects as immutable configuration.
- TemplateRegistry
Resolves inheritance once and exposes immutable resolved templates.
- TowerDef
Economy, branching upgrades, and ability slots for a tower.
- TrapDef
A fixed-position deployment with separate arming, detection, trigger count and lifetime.
- UpgradeEffectDef
An immutable numeric patch, behavior attachment, or nested template-reference substitution.
- UpgradeSnapshot
Immutable battle input. Tracks apply in authored order, then stages 1..rank, then authored effect order.
- UpgradeStageDef
One purchased stage; effects retain authored order.
- UpgradeTargetDef
AND between supplied filters; IDs and roles are OR within their respective filters. Tags require every selected bit.
- UpgradeTrackDef
One independent contiguous purchase track.
- VictoryRatingDef
Immutable three-tier victory rating using the remaining/starting life ratio, with inclusive thresholds.
- WaveDef
A wave whose call timing starts after the preceding wave finishes all emissions.
- WaveGroupDef
A group of spawn sequences sharing a path and start delay.
Structs
- UpgradeRank
A track key and its highest contiguous purchased or applied rank.
Interfaces
- ILevelCompletionRule
Optional level action completion beyond waves and enemy accounting.
- IMovementPolicy
Optional host navigation for friendly actors; implementations must avoid fixed-tick allocation.
- IPointRule
Author-supplied terrain validation; implementations must be deterministic and allocation-free.
Enums
- CompanionMode
Companion locomotion and interception model.
- DamageFalloff
How impact area damage depends on distance.
- DamageFlags
Independent damage control behaviors.
- DamageKind
The defense channel used by a damage packet.
- DamageMask
Damage channels that may be independently immunized.
- DeploymentSpacingScope
Which deployments participate in minimum spacing checks.
- HeroSkillMode
How hero skill ranks become active.
- LaneSelection
Lane selection for each spawned unit.
- ProjectileKind
The movement model of an attack projectile.
- RemainsFaction
Body faction is independent from the faction of the raised result.
- SuccessorBountyPolicy
Reward policy for successors. A lineage can never pay twice.
- TargetPriority
Stable tower target ordering, with entity Id as the final tie breaker.
- TrapPlacement
Automatic placement origin for an ability-created trap.
- UpgradeField
Supported numerical destinations. All matching nested payloads in the selected template are visited.
- UpgradeOperation
One arithmetic step; rounding is performed immediately, never after combining effects.
- UpgradeTargetKind
Template roles used by permanent-upgrade selectors. Multiple roles are alternatives.