Modding Data Parser Schema Enemies

From Cyber Knights: Flashpoint Wiki

References Links for Data Parser Schema

Modding Data Parser Schema Intro/Enemies

Enemies[edit | edit source]

MonsterGroup[edit | edit source]

A MonsterGroup defines a collection of monster slots that are instantiated together as an enemy encounter. Groups have a faction, a class, and a randomization flag that controls whether the composition is fixed or varied.

Fields

Field Type Default Notes
MonsterGroupId INTEGER required

Hand-authored primary key for this monster group.
Hand-authored primary key. Used as the WHERE key for UPDATE/DELETE.

Type INTEGER 0

The monster group type controlling its spawn behavior.
SQL column: MonsterGroupTypeId

Faction INTEGER 0

The faction this group belongs to.
SQL column: FactionId

Class INTEGER 0

The faction class of this group.
SQL column: FactionClass

Starting INTEGER 0

If set, this group is present at mission start.

Randomize INTEGER 0

If set, the group composition is randomized within its member slots.

Value Mappings

Rarity[edit | edit source]

TODO: Confirm if Rarity is used on MonsterGroup or is a data artifact.

Authored Value SQL Value Meaning
Common 1 Common — lowest tier
Rare 2 Rare — second tier
Epic 3 Epic — third tier
Legendary 4 Legendary — highest tier

MonsterGroupMember[edit | edit source]

A MonsterGroupMember defines one slot in a MonsterGroup — specifying what type of monster fills that slot, at what power and security level range, and how the slot interacts with other members.

Fields

Field Type Default Notes
MonsterGroupMemberId INTEGER required

Hand-authored primary key for this group member.
Hand-authored primary key. Used as the WHERE key for UPDATE/DELETE.

Group INTEGER 0

The MonsterGroupId this member belongs to.
SQL column: MonsterGroupId

Type INTEGER 0

The MonsterTypeId assigned to this slot.
SQL column: MonsterType

Slot INTEGER 0

The slot index within the group.

Faction INTEGER 0

Faction restriction for this slot.

MinPower INTEGER 0

Minimum power level for this member.
SQL column: MinPowerLevel

MaxPower INTEGER 0

Maximum power level for this member.
SQL column: MaxPowerLevel

MinSec INTEGER 0

Minimum security level for this member.
SQL column: MinSecLevel

MaxSec INTEGER 0

Maximum security level for this member.
SQL column: MaxSecLevel

Exclusive INTEGER 0

If set, only one member with this exclusive flag fires per group draw.

Weight INTEGER 0

Selection weight for this member.
SQL column: WeightedRoll


MonsterTalent[edit | edit source]

A MonsterTalent defines a special ability available to monster units. Monster talents are assigned to monsters via their talent group and are filtered by power level, faction, and alert level. They can deal damage, apply effects, spawn tokens, and trigger summons.

Fields

Field Type Default Notes
MonsterTalentId INTEGER required

Hand-authored primary key for this monster talent.
Hand-authored primary key. Used as the WHERE key for UPDATE/DELETE.

Group INTEGER 0

The talent group this ability belongs to.
SQL column: MonsterTalentGroup

MinPower INTEGER 0

Minimum power level at which this talent appears.
SQL column: MinPowerLevel

MaxPower INTEGER 0

Maximum power level at which this talent appears.
SQL column: MaxPowerLevel

Faction INTEGER 0

The faction this talent is associated with.
SQL column: FactionId

Weight INTEGER 0

Selection weight when multiple talents compete.

Type INTEGER 0

The monster talent type controlling its specific behavior.
SQL column: MonsterTalentTypeId

AiMode INTEGER 0

The AI use mode — when the AI will choose to use this talent.
SQL column: AiUseMode

AiPriority INTEGER 0

Priority level for AI selection.
SQL column: AiUsePriority

AiValidation INTEGER 0

AI validation rule controlling use eligibility.
SQL column: AiUseValidation

MinAlert INTEGER 0

Minimum alert level required for this talent to be used.
SQL column: MinAlertLevel

AP INTEGER 0

Action point cost to use this talent.
SQL column: ApUse

Charges INTEGER 0

Maximum charges available.
SQL column: MaxCharges

Recharge INTEGER 0

Turns required to recharge.
SQL column: RechargeTurns

Range INTEGER 0

Effective range in tiles.

AoE INTEGER 0

Area of effect radius.
SQL column: RangeAoE

PureDamage INTEGER 0

Pure (untyped) damage dealt.

PhysicalDamage INTEGER 0

Physical damage dealt.

BallisticDamage INTEGER 0

Ballistic damage dealt.

Volume INTEGER 0

Audio volume level.

ExtraAsset INTEGER 0

An additional asset used by this talent.

Filter INTEGER 0

Target filter type.
SQL column: FilterTypeId

Counter INTEGER 0

A counter incremented when this talent fires.

Token INTEGER 0

Token type spawned by this talent.

TokenCount INTEGER 0

Number of tokens spawned.

TokenDuration INTEGER 0

Duration of spawned tokens.

TokenCancel INTEGER 0

If set, existing tokens of this type are cancelled when this fires.

Summon INTEGER 0

A monster type summoned by this talent.

TargetEffect INTEGER 0

An effect applied to the target.

TargetDuration INTEGER 0

Duration of the target effect.
SQL column: TargetEffectDuration

Vfx TEXT ""

Visual effect asset.

TokenVfx TEXT ""

Visual effect for spawned tokens.

Icon TEXT ""

Asset path for this talent's icon.
SQL column: IconPng

EventSFX TEXT ""

Sound effect asset.

GroupSFX TEXT ""

Group sound effect asset.
SQL column: GroupNameSFX

TypeSFX TEXT ""

Type sound effect asset.

Name TEXT ""

The talent's display name.
Written to localization JSON as MonsterTalent.Name.{MonsterTalentId}.
JSON output only — not written to SQL.


MonsterType[edit | edit source]

A MonsterType defines an enemy unit that appears in tactical missions. Each monster has combat stats, AI behavior parameters, weapon and armor assignments, talent groups, and movement rules. Monsters can also be designated as contacts or map objectives.

Fields

Field Type Default Notes
MonsterTypeId INTEGER required

Hand-authored primary key for this monster type.
Hand-authored primary key. Used as the WHERE key for UPDATE/DELETE.

PowerGroup INTEGER 0

The power group this monster belongs to for scaling.
SQL column: PowerGroupId

PowerLevel INTEGER 0

The power level of this monster.

TalentGroup INTEGER 0

The MonsterTalent group assigned to this monster.
SQL column: MonsterTalentGroup

MaxTalents INTEGER 0

Maximum number of talents this monster can have.
SQL column: MaxTalentCount

Animation INTEGER 0

The animation layer used by this monster.
SQL column: AnimationLayer

Entity INTEGER 0

The entity type ID for this monster.
SQL column: EntityType

Agent INTEGER 0

The AI agent type controlling this monster's behavior.
SQL column: AgentTypeId

Class INTEGER 0

The monster class controlling its combat role.
SQL column: ClassId

Outfit INTEGER 0

The outfit ID applied to this monster's appearance.
SQL column: OutfitId

Detail INTEGER 0

The detail group controlling appearance variations.
SQL column: DetailGroup

Effect INTEGER 0

A persistent effect active on this monster.
SQL column: EffectId

Weapon INTEGER 0

The weapon type equipped by this monster.
SQL column: WeaponTypeId

Armor INTEGER 0

The armor type equipped by this monster.
SQL column: ArmorTypeId

Evasion INTEGER 0

Base evasion chance.

CritRate INTEGER 0

Base critical hit rate.

ShotLimit INTEGER 0

Maximum number of shots per turn.

Sight INTEGER 0

Sight range in tiles.
SQL column: SightDistance

Detect INTEGER 0

Detection range in tiles.
SQL column: DetectDistance

FOV INTEGER 0

Field of view angle in degrees.
SQL column: FieldOfView

Flank INTEGER 0

Flank allowance — how far this monster extends its flanking reach.
SQL column: FlankAllowance

EyeKit INTEGER 0

If set, this monster has enhanced detection capabilities.

HP INTEGER 0

Starting hit points.
SQL column: HitPoints

MP INTEGER 0

Movement points per turn.
SQL column: MovePoints

AP INTEGER 0

Action points per turn.
SQL column: ActionPoints

Init INTEGER 0

Initiative bonus.
SQL column: InitBonus

StartI INTEGER 0

Starting initiative value.
SQL column: StartInit

MoveRule INTEGER 0

A special movement rule applied to this monster.
SQL column: SpecialMovementRule

SpecialRule INTEGER 0

A special behavior rule applied to this monster.

Patrol REAL 0

Movement speed while patrolling (tiles per second).
SQL column: PatrolSpeed

Chase REAL 0

Movement speed while chasing a target.
SQL column: ChasingSpeed

Aggro REAL 0

Movement speed when aggroed.
SQL column: AggroSpeed

Contact TEXT ""

If set, this monster can be treated as a contact in certain story contexts.
SQL column: IsContact

Objective TEXT ""

If set, this monster is a mission objective target.
SQL column: MapObjective

DisplayName TEXT ""

The monster's display name as shown in the combat UI.
Written to localization JSON as Monster.DisplayName.{MonsterTypeId}.
JSON output only — not written to SQL.

Name TEXT ""

The monster's internal name used in story references.
Written to localization JSON as Monster.Name.{MonsterTypeId}.
JSON output only — not written to SQL.



Modding: Home · Quick Start Guide · Modkit Uploader · Example Project · Data Modding · Data Parser Schema · Use Cases · Download Modding Resources