Entity, Combat, Effect, Player, Squad & Tag Nodes¶
SIM Functions from the core entity module BPFLs. These operate on sim-side data and use deterministic types.
Entity Lifecycle¶
From USeinEntityBPFL:
SeinSpawnEntity¶
Spawns a new entity from an archetype Blueprint class. Components are copied from the CDO's USeinArchetypeDefinition. The returned handle is valid immediately.
SeinDestroyEntity¶
Marks an entity for destruction. Actual cleanup occurs during Post-Tick. Emits EntityDestroyed visual event.
SeinGetEntityTransform / SeinSetEntityTransform¶
SeinGetEntityTransform(EntityHandle) → FFixedTransform
SeinSetEntityTransform(EntityHandle, Transform) → void
Get/set the entity's simulation-space transform. Uses fixed-point types.
SeinGetEntityOwner¶
Returns the owning player ID.
SeinIsEntityAlive¶
Returns true if the entity exists and hasn't been destroyed.
SeinIsHandleValid / SeinInvalidHandle¶
Validation utilities. IsHandleValid checks generation counter. InvalidHandle returns a null handle for initialization.
Combat¶
From USeinCombatBPFL:
SeinApplyDamage¶
Applies damage to target. The DamageTag classifies the damage type (for armor calculations, visual FX selection, etc.). Emits DamageDealt visual event.
SeinApplyHealing¶
Applies healing. Emits Healed visual event.
SeinGetEntitiesInRange¶
Spatial query — returns all entities within radius of a point. Optional tag filter (only return entities matching tags). Fixed-point parameters.
SeinGetNearestEntity¶
Returns the closest entity within radius. Returns invalid handle if none found.
SeinGetEntitiesInBox¶
Spatial query with axis-aligned box bounds.
SeinGetDistanceBetween¶
Distance between two entities' positions.
SeinGetDirectionTo¶
Normalized direction vector from one entity to another.
Effects¶
From USeinEffectBPFL:
SeinApplyEffect¶
Applies a timed effect (buff/debuff). Returns an instance ID for later removal. Effects are processed in Pre-Tick (expiration, tick damage/healing).
SeinRemoveEffect¶
Removes a specific effect by instance ID.
SeinRemoveEffectsWithTag¶
Removes all active effects matching a gameplay tag. Useful for "dispel" abilities.
SeinHasEffectWithTag¶
Checks if entity has any active effect with the given tag.
SeinGetEffectStacks¶
Returns the stack count of a named effect. For stackable buffs/debuffs.
Player¶
From USeinPlayerBPFL:
SeinGetPlayerResource¶
Returns the player's current amount of a named resource (e.g., "Manpower", "Fuel").
SeinAddPlayerResource / SeinDeductPlayerResource¶
SeinAddPlayerResource(PlayerID, ResourceName, Amount) → void
SeinDeductPlayerResource(PlayerID, ResourceName, Amount) → bool
Add or deduct resources. Deduct returns false if the player can't afford it (no partial deduction).
SeinCanPlayerAfford¶
Checks if the player can afford a TMap<FName, FFixedPoint> cost. Used by production and ability systems.
SeinGetPlayerEntities¶
Returns all living entities owned by a player.
Squads¶
From USeinSquadBPFL:
SeinGetSquadMembers¶
Returns handles of all living members in a squad.
SeinGetSquadLeader¶
Returns the squad leader entity.
SeinGetEntitySquad¶
Given a member entity, returns the squad entity it belongs to.
SeinIsSquadMember¶
Returns true if the entity is a member of any squad.
SeinGetSquadSize¶
Returns the number of alive members in the squad.
Tags¶
From USeinTagBPFL:
SeinHasTag / SeinHasAnyTag / SeinHasAllTags¶
SeinHasTag(EntityHandle, Tag) → bool
SeinHasAnyTag(EntityHandle, Tags) → bool
SeinHasAllTags(EntityHandle, Tags) → bool
Query an entity's combined tags (base + granted). Uses FSeinTagComponent::CombinedTags.
SeinAddTag / SeinRemoveTag¶
Modify an entity's base tags at runtime.