OBD:ENVP: Difference between revisions
(various corrections and clarifications to fields) |
m (oops, we should be representing BSL commands this way) |
||
Line 10: | Line 10: | ||
{{OBDtr| 0x04 | lev_id |FFFF00| 01 00 00 06 | 3 | level 3 }} | {{OBDtr| 0x04 | lev_id |FFFF00| 01 00 00 06 | 3 | level 3 }} | ||
{{OBDtr| 0x08 | char[22] |00FF00| AD DE | dead | padding }} | {{OBDtr| 0x08 | char[22] |00FF00| AD DE | dead | padding }} | ||
{{OBDtr| 0x1E | uint16 | {{OBDtr| 0x1E | uint16 |00FFFF| 42 00 | 66 | array size }} | ||
{{OBDtrBK}} | {{OBDtrBK}} | ||
{{OBDtr2|0x00 | char[64] |FFC8C8| locklight | particle class name (reference to 06079-3RAPlocklight.[[OBD:BINA/PAR3|BINA]] in level 0) }} | {{OBDtr2|0x00 | char[64] |FFC8C8| locklight | particle class name (reference to 06079-3RAPlocklight.[[OBD:BINA/PAR3|BINA]] in level 0) }} | ||
{{OBDtr2|0x40 | char[48] |FFFFC8| lock1_locklight01 | particle tag name; lookup name for use in scripts via the | {{OBDtr2|0x40 | char[48] |FFFFC8| lock1_locklight01 | particle tag name; lookup name for use in scripts via the [[particle]] command }} | ||
|- ALIGN=CENTER VALIGN=TOP | |- ALIGN=CENTER VALIGN=TOP |
Latest revision as of 03:59, 20 May 2025
|
|
![]() |
Offset | Type | Raw Hex | Value | Description | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | res_id | 01 9B 02 00 | 667 | 00667-.ENVP | ||||||||||||||||||||||||
0x04 | lev_id | 01 00 00 06 | 3 | level 3 | ||||||||||||||||||||||||
0x08 | char[22] | AD DE | dead | padding | ||||||||||||||||||||||||
0x1E | uint16 | 42 00 | 66 | array size | ||||||||||||||||||||||||
First element (black outline) | ||||||||||||||||||||||||||||
0x00 | char[64] | locklight | particle class name (reference to 06079-3RAPlocklight.BINA in level 0) | |||||||||||||||||||||||||
0x40 | char[48] | lock1_locklight01 | particle tag name; lookup name for use in scripts via the particle command | |||||||||||||||||||||||||
0x70 | matrix |
|
|
transform matrix for the particle (in world space) | ||||||||||||||||||||||||
0xA0 | float | 00 00 80 3F | 1.000000 | decal x scale | ||||||||||||||||||||||||
0xA4 | float | 00 00 80 3F | 1.000000 | decal y scale | ||||||||||||||||||||||||
0xA8 | uint16 | 00 00 | 0 | runtime: flags | ||||||||||||||||||||||||
0xAA | uint16 | 00 00 | 0 | runtime: owner type | ||||||||||||||||||||||||
0xAC | uint32 | 00 00 00 00 | 0 | runtime: pointer to owner particle | ||||||||||||||||||||||||
0xB0 | uint32 | 00 00 00 00 | 0 | runtime: pointer to dynamic matrix | ||||||||||||||||||||||||
0xB4 | uint32 | 00 00 00 00 | 0 | runtime: pointer to particle class | ||||||||||||||||||||||||
0xB8 | uint32 | 00 00 00 00 | 0 | runtime: pointer to spawned particle | ||||||||||||||||||||||||
0xBC | uint32 | 00 00 00 00 | 0 | runtime: pointer to spawned particle header | ||||||||||||||||||||||||
0xC0 | uint32 | 00 00 00 00 | 0 | runtime: pointer to previous particle in global spawned particle list | ||||||||||||||||||||||||
0xC4 | uint32 | 00 00 00 00 | 0 | runtime: pointer to next particle in global spawned particle list | ||||||||||||||||||||||||
0xC8 | uint32 | 00 00 00 00 | 0 | runtime: pointer to position in hash list (hash table of all spawned particles with tag names) | ||||||||||||||||||||||||
0xCC | uint32 | 00 00 00 00 | 0 | runtime: pointer to position in tag list (linked list of all spawned particles with the same tag name) |
- Environment particles
- Door lock lights, lights, fire, smoke, steam, "electricity", etc. Loose particles are normally added to the level particle collection. ENVP is used by the level importer tool to store particles attached to objects or furniture.
- Transformation matrix
- Used to orient and stretch the particles (decals, lock lights, etc).
- See e.g. CRSA for a detailed explanation.
ONI BINARY DATA |
---|
DPge << Other file types >> FILM |
ENVP : Env Particle Array |
Level file |