| AOB |
Array-of-bytes signature. A byte pattern used by native hook loaders or scanners to locate engine functions. |
| BP / Blueprint |
Unreal's visual scripting. Packaged as .uasset/.uexp. |
| CDO |
Class Default Object. The template UObject Unreal uses to spawn new instances of a class. |
| DataTable |
Unreal asset holding rows of a USTRUCT schema. Common for move/parameter data. |
| exec trampoline |
The execFoo_ClassName function UE4 generates for each BP-callable UFunction. Reads params off the VM stack and calls the C++ _Impl; hooks placed only on reflected dispatch do not see native callers that skip this path. |
| FLuxCapsule |
The endpoint pair used by SC6's visual weapon-trail system (Trace pipeline). 80 bytes; only the tail (+0x30 .. +0x4F) carries data — two (BoneId, LocalOffset[3]) endpoints plus a CapsuleType tag. Not the hitbox primitive — actual hit detection runs through KHitBase linked-list nodes (see Hitbox System). See Trace System for FLuxCapsule's role. |
| FName |
Unreal's interned string type, 8 bytes, used for identifiers. |
| Impl |
The C++ body of a UFunction (e.g. ALuxBattleChara::GetTracePosition_Impl). The game often calls Impls directly, bypassing the exec trampoline and any hook placed only on reflected dispatch. |
| MoveProvider |
ULuxBattleMoveProvider — legacy name for the per-chara move-data asset. Absent from the SC6 Steam shipping binary: chara+0x388 is now CharaMesh0 (a USkeletalMeshComponent*). Any native function that still encodes the old chara+0x388 → +0x30 → capsule container walk is a stale code path. The live hit volumes live in the Hitbox System (KHit linked lists at chara+0x44478/+0x44498/+0x444B8). |
| Pak / PAK |
Packaged content archive. SC6 reads game content from .pak files. |
| Pose / PoseSelector |
The uint32 argument that ALuxBattleChara::GetBoneTransformForPose and GetTracePosition_Impl take to pick which evaluated skeletal pose to sample. Callers in the shipping binary pass small integers (0 and 1 are the values observed from GetTracePositionForPlayer). Those values line up with per-player pose slots, but the parameter is a pose selector, not a player index — it just happens to coincide for the PlayerRight / PlayerLeft pair. |
| Trace |
SC6's internal word for the visual weapon trail / swoosh / particle FX on a swing — not a hitbox. ALuxTraceManager drives traces; it has no role in hit resolution. Real hit detection runs through KHitBase linked-list nodes — see Hitbox System. The two systems only share an AttackTag / KindTag coordination key so a move script can turn both on at once. |
| TraceManager |
ALuxTraceManager. The visual-trail actor on a chara (chara+0x458). Owns EffectSlotA/B particle components, a ULuxTraceComponent for trail rendering, and a KindIndex picking the visual style. Does not own, store, or resolve hitboxes. |
| UFunction |
A reflected Unreal function. Native code can find or call these through Unreal's UFunction / ProcessEvent path when the metadata and call boundary are valid. |
| UObject |
Root base class of Unreal's reflection system. |
| UStruct |
Reflected C++ struct. |
| ULineBatchComponent |
UE4's debug-line rendering component. UWorld owns three instances at offsets +0x40 (depth-tested), +0x48 (persistent), +0x50 (foreground / always on top). Appending FBatchedLine to its BatchedLines array at +0x808 is the canonical path for mod-drawn 3D debug overlays in a shipping build. See Drawing 3D Debug Lines. |
| FBatchedLine |
0x34-byte POD consumed by ULineBatchComponent — Start + End FVectors, FLinearColor, Thickness, RemainingLifeTime, DepthPriority. The unit of work for debug-line rendering in shipping SC6. |
| ForegroundLineBatcher |
The ULineBatchComponent* at UWorld+0x50. Its scene proxy renders without depth test, so lines always appear on top of world geometry. The recommended batcher for a hitbox overlay — see Drawing 3D Debug Lines. |
| ALuxBattleWeaponEventHandler |
Native class that fires ReceiveGetWeaponTip as a BlueprintImplementableEvent during SC6 attacks. No SC6 character subclass overrides the event, so every observed call returns all-zero out-params — a dead path. Documented in Game Structures so future passes don't rediscover the same null. |
| ReceiveGetWeaponTip |
A BlueprintImplementableEvent on ALuxBattleWeaponEventHandler. Fires every frame during attacks; returns zeros because no BP override ships in SC6. Not a usable data source. See Trace System. |
| ProcessEvent diagnostic |
Native diagnostic pattern: detour UObject::ProcessEvent temporarily and log each unique (UClass, UFunction) pair for one action. Answers "which UFunctions fire during this one action?" without speculation. |
| GMalloc |
UE4's global FMalloc* pointer (shipping SC6: DAT_1441971C8). The thread-safe heap allocator used by FMemory::Malloc/Realloc/Free. A mod that grows a game-owned TArray must use this same allocator; otherwise the component's later Flush frees a CRT-allocated buffer and corrupts the heap. |
| Stage code |
The string identifier for a stage (e.g. STG001, STG011_R, STG006_V). Routed to an asset path by ResolveStageCodeToAssetPath @ 0x140641840 via substring matching on DLC keys (014, _V, 016, 006_R, 011_R, 015, 017, 018). Custom mod codes that avoid these substrings auto-route to /Game/Stage/<code>/Maps/<code>. Packed into an int by ParseStageCodeStrToId: bit 8 = _R, bit 9 = _V. See Stage System. |
| StageInfoHandler |
scbattle::StageInfoHandler, allocated by LuxBattle_CreateStageInfoHandler @ 0x1403c3010. The block at 0x144844070 once attributed to stage geometry is actually a structured round-restore payload. Deterministic terrain/wall/ring queries use the paired J_StgHitChkData frame-bounds grids; UE4 stage actors and mesh collision are separate layers. See Stage System. |
| Master stage enum |
g_LuxStage_MasterEnumStringTable @ 0x144149c50 — the TArray<FBattleStageEnumEntry> (31 stock rows) that defines the entire stage roster. Statically built by InitGlobalLuxStageMasterEnumStringTable @ 0x140149720. Adding a new stage to the random-pool / picker UI requires hooking this initializer to append entries. See Stage System. |
_T / _R / _V stage suffixes |
Variant codes on stock stages. _T = Anomaly (Story-mode tutorial-style alt arena, filtered out of the random pool). _R = Remix (DLC variant of a base stage). _V = DLC13 alt-VS variant. The random-map filter only strips _T; _R and _V survive, which is why STG006 / STG011 etc. roll 3× as often as singleton stages. See Random-pool bias. |
| Steam Leaderboards (SC6) |
The actual storage backend for character usage stats and ranked-match scores. App ID 544750. Six known leaderboards: Characterboard (per-character usage), RankmatchWorld/Asia/America/Europe/Other (regional ranked match). Publicly readable via Steam Web API — no game modification needed. See Leaderboards. |
| Cosmos Channel / CeBank |
BANDAI NAMCO's online backend at cosmos.channel.or.jp. SC6's service ID is 024803. Carries KPI / telemetry / sign-in / sign-up; uses MessagePack over HTTPS POST. Not the source of character ranking data — that's Steam Leaderboards. Implemented by ULuxCeBankManager. Useful only for understanding what telemetry the game phones home with. |
| RVA / image base |
Image-relative address notation. SC6 docs use absolute addresses with image base 0x140000000; an RVA 0xN maps to 0x140000000 + 0xN. See Symbol Index conventions. |
| TArray |
UE4 dynamic array header: data pointer, element count, and capacity. In SC6 docs, TArray fields usually mean game-owned memory; if a mod grows one, allocate through UE's allocator path (GMalloc / FMemory), not the CRT heap. See TArrayHeader. |
| UClass |
Unreal's reflected class object. Used for class lookup, object type checks, and (UClass, UFunction) diagnostics when tracing ProcessEvent. |
| UProperty metadata |
Reflected property descriptors used by Unreal's UFunction parameter marshaling. Missing metadata means a direct native _Impl call or lower-level data read can be more reliable than a reflected call. |
| WorldContextObject |
Explicit or hidden context parameter for static Unreal functions that need a UWorld. Native callers must pass a real UObject with a valid world context, such as the BattleManager when appropriate. |
| ProcessEvent |
UObject::ProcessEvent, Unreal's central dispatch for reflected UFunction calls. A native detour can observe reflected calls, including Blueprint event dispatch, but direct _Impl callers bypass it. |
| BlueprintImplementableEvent |
A UFunction event whose body is supplied by Blueprint. If SC6 ships no overriding Blueprint body, the default event path can fire and still return no useful state. |
| MoveVM / LuxMoveVM |
SC6's native command-script VM for gameplay move state: inputs, predicates, transitions, effects, reactions, and in-battle audio triggers. Distinct from the UE4 DataTable display layer. See Move System. |
FLuxMoveBank / .khd |
Per-character move-bank binary loaded from hdr/hdr<cid>.khd. The live bank sits at chara+0x455C0 and contains the 48-byte header, slot records, attack cells, event records, and per-slot bytecode. See On-disk Battle Data Files. |
| FLuxMoveBankCell / attack cell |
112-byte move-bank row consumed by hit classification. Carries the current hitbox slot mask, damage, block/hit flags, stun values, reaction ids, and timing metadata. It is not a KHitBase node. See Hitbox System. |
| FLuxMoveLane |
Per-lane MoveVM state block (0x468 bytes). Three lanes live inline on every chara at chara+0x444F0, +0x44958, and +0x44DC0, covering primary, secondary, and stance/reaction state. See Move System. |
| CALLCOND |
Stack-VM opcode 0x25 in .khd slot bytecode. It calls g_LuxMoveVM_OpcodeIfDispatchTable entries for predicates, effect dispatch, nested slot execution, and transition helpers. See CALLCOND dispatch table. |
| KHit / KHitBase |
SC6's runtime linked-list hit-volume system. Body, attack, and hurtbox lists are made of KHitBase* nodes and drive actual hit detection, separate from visual Trace capsules. See Hitbox System. |
| yarare |
SC6's term for defender hit-reaction state (Japanese やられ, "being hit"). Yarare ids drive stun, launch, knockdown, wall, get-up, and throw-reaction routing after the hit classifier fires. See Reaction System. |
| FLuxDataTable / ConfigTable |
SC6's hierarchical, refcounted key-value tree at BattleManager+0x50. It is not a UE UDataTable; match setup writers build FLuxDataTablePath cursors and commit leaves such as StageSetting.StageCode or BattleRule.Rounds. See Battle Manager. |
| Offset shorthand |
Documentation convention for structure-relative offsets: chara+0xN means ALuxBattleChara*, BM+0xN means ALuxBattleManager*, vmCtx+0xN means FLuxMoveCommandPlayer*, and InputLog+0xN means ALuxBattleFrameInputLog*. See Symbol Index conventions. |
| VMFreezeByte / freeze gates |
SC6's internal VM-pause lever is g_LuxBattle_VMFreezeRecord.bVMFreezeByte, but it only covers some time-dilation paths. Reliable frame-step / replay freeze mods also gate tick drivers such as WorldTickGate, ReplayClockGate, ActorTickGate, and TimeDilationGate. See Battle Manager. |
| Style id / cid |
Three-hex per-character style key such as 001 or 006. It keys paths like hdr<cid>.khd, Content/Style/<cid>/, and ID_CMD_<cid>_*; it is not the character-select order or ELuxFightStyle. See Character Data. |
| HgCpuDirect / SubVM |
SC6's CPU behavior framework. Each behavior module is a CCpuDirectCommand-derived SubVM object; normal AI and tutorial scripts both emit inputs through this path. See CPU / AI System. |
CRI ADX2 / UAtomComponent / .acb |
SC6's audio middleware stack. Cue banks are CRI Atom .acb files, playback runs through CRI ADX2, and UE-side in-world emitter control uses CRI's UAtomComponent, not stock UAudioComponent. See Audio System. |
| AssetManager / Map primary asset |
UE4's asset discovery/loading path for maps. Any mounted .umap under /Game/ is indexed as a Map primary asset; SC6's native stage load path requests these by stage code. See Custom Stage. |
_P.pak suffix |
Pak filename suffix that gives a mod pak priority over stock assets when mounted by UE4. Stage replacement recipes use pakchunk999-WindowsNoEditor_P.pak in Content/Paks/~mods/. See Replace an Existing Stage. |
| BodySetup / AggGeom collision |
UE4 static-mesh collision data. Blender/FBX collision meshes named with UCX_, UBX_, USP_, or UCP_ cook into StaticMesh.BodySetup.AggGeom; this fixes visual/camera/overlap collision but not SC6 deterministic ring/wall data. See Replace an Existing Stage. |
| StageInfoTable / LuxBattleStageInfoTableRow |
UE4 DataTable row type for per-stage round positions, ring edge, wall descriptor, optional centers, and camera DOF. Editing it changes stage setup metadata but does not replace deterministic J_StgHitChkData terrain/wall/ring data. See Stage System. |
| ULuxStageAssetPaths / RawAssets / ESA_HitData |
Per-stage content-side asset list. RawAssets maps ESA_HitData and ESA_HitData2 to the A/B J_StgHitChkData* blobs and also carries compact cosmetic settings (bWet, anomaly VFX, breath). See Stage System. |
| J_StgHitChkData / FrameBoundsGrid |
Serialized legacy terrain/wall/ring-edge collision blob expanded at runtime into A/B frame-bounds grids. MoveVM geometry predicates, terrain sampling, wall collision, and ring-edge logic read this layer, not UE4 mesh BodySetup alone. See Stage System. |