Creature Pool
Base:0x0048d0a8 (creature_pool)Entry size:
0x98 bytesCount:
0x180 entries (384 creatures max)
Struct Layout
Key Fields
| Offset | Field | Type | Description |
|---|---|---|---|
| 0x00 | active | u8 | 1 if slot occupied |
| 0x04 | type_id | i32 | Creature type (0-31) |
| 0x08 | pos_x | float | World position X |
| 0x0c | pos_y | float | World position Y |
| 0x10 | health | float | Current health |
| 0x14 | max_health | float | Maximum health |
| 0x20 | size | float | Collision radius |
| 0x30 | target_player | i32 | Targeted player index |
| 0x38 | death_timer | float | Fade-out timer after death |
Projectile Pool
Base:0x004926b8 (projectile_pool)Entry size:
0x40 bytesCount:
0x60 entries (96 projectiles max)
Struct Layout
Key Fields
| Offset | Field | Type | Description |
|---|---|---|---|
| 0x00 | active | u8 | 1 if slot occupied |
| 0x04 | angle | float | Direction (radians) |
| 0x08 | pos_x | float | Current position X |
| 0x0c | pos_y | float | Current position Y |
| 0x20 | type_id | i32 | Projectile type (weapon-specific) |
| 0x24 | life_timer | float | Despawns when <= 0 |
| 0x30 | damage_pool | float | Piercing damage budget |
| 0x3c | owner_id | i32 | Player index (-100 to -103) |
src/crimson/projectiles/.
Particle Pool
Base:0x00493eb8 (particle_pool)Entry size:
0x38 bytesCount:
0x80 entries (128 particles max)
Struct Layout
Secondary Projectile Pool
Base:0x00495ad8 (secondary_projectile_pool)Entry size:
0x2c bytesCount:
0x40 entries (64 secondaries max)
Struct Layout
Type Behaviors
| type_id | Behavior |
|---|---|
| 1 | Straight rocket (accelerates) |
| 2 | Homing rocket (steers toward target) |
| 3 | Detonation state (expanding explosion) |
| 4 | Fast straight rocket |
Effect Pool
Base:0x004ab1dc (effect_pool)Entry size:
0xbc bytesFree list head:
effect_free_list_head
Struct Layout
Effect Flags
| Bit | Meaning |
|---|---|
| 0x1 | Active (entry in use) |
| 0x4 | Update rotation |
| 0x8 | Update scale |
| 0x10 | Fade alpha over lifetime |
| 0x40 | Render in first batch |
| 0x80 | Spawn FX queue on expire |
| 0x100 | Use dim alpha on expire |
Sprite Effect Pool
Base:0x00496820 (sprite_effect_pool)Entry size:
0x2c bytesCount:
0x180 entries (384 sprites max)
Struct Layout
FX Queue (Structure-of-Arrays)
Base:0x004912b8 (fx_queue)Entry count:
0x80 (128 max)Queue length:
fx_queue_count @ 0x004912b0
Field Arrays
| Field | Base | Stride |
|---|---|---|
| effect_id | 0x004912b8 | 4 bytes |
| rotation | 0x004914b8 | 4 bytes |
| pos_x | 0x004916b8 | 4 bytes |
| pos_y | 0x004918b8 | 4 bytes |
| height | 0x00491ab8 | 4 bytes |
| width | 0x00491cb8 | 4 bytes |
| color_r | 0x00491eb8 | 4 bytes |
| color_g | 0x004920b8 | 4 bytes |
| color_b | 0x004922b8 | 4 bytes |
| color_a | 0x004924b8 | 4 bytes |
Related Pages
Game State
Global game state and configuration
Weapon Structures
Weapon tables and player weapon state
Effects Docs
Complete effect pool documentation