Difference between revisions of "Game Opcodes:SetPushEventConditionWithTriggerBox"
From FFXIV Classic Wiki
(→Visual Layout) |
m (Changed 'circle' to 'box', also tested if it was still the case with this opcode, and yes it still is.) |
||
(8 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | Sets a push event trigger to this actor. "Push" events are collision tested events, this one specifically | + | Sets a push event trigger to this actor. "Push" events are collision tested events, this one specifically assigning a predefined trigger box to an actor. This seems to be some kind of driver for BG Objects. |
:; Opcode - 0x175 | :; Opcode - 0x175 | ||
Line 21: | Line 21: | ||
| 0x08 || int32 || 4 Bytes || actorID || Actor ID that this triggers from? 1.22+ it is just set to 0x4. | | 0x08 || int32 || 4 Bytes || actorID || Actor ID that this triggers from? 1.22+ it is just set to 0x4. | ||
|- | |- | ||
− | | 0x0C || | + | | 0x0C || float || 4 Bytes || unknown || |
|- | |- | ||
| 0x10 || int32 || 4 Bytes || unknown || | | 0x10 || int32 || 4 Bytes || unknown || | ||
|- | |- | ||
− | | 0x14 || byte || 1 Bytes || | + | | 0x14 || byte || 1 Bytes || options || Format is 000[W] [Z][Y][XX] If 0x11; triggers when player leaves the box. If 0x1, triggers when player enters the box. |
|- | |- | ||
− | | 0x15 || byte || 1 Bytes || | + | | 0x15 || byte || 1 Bytes || priority || |
|- | |- | ||
− | | 0x16 || byte || 1 Bytes || | + | | 0x16 || byte || 1 Bytes || isSilent || |
|- | |- | ||
− | | 0x17 || string || | + | | 0x17 || string || 32 Bytes || eventName || The name of the event that will be sent when a Start/End event is fired. |
|- | |- | ||
− | | 0x38 || string || 8 Bytes || reactionName || | + | | 0x37 || byte || 1 Bytes || unknown || |
+ | |- | ||
+ | | 0x38 || string || 8 Bytes || reactionName || DoorStandard passes to _onReaction. MarketEntrance to <code>dwti</code> for Limsa, <code>dtwi</code> for Gridania and Ul'dah. | ||
|} | |} | ||
== Notes == | == Notes == | ||
− | MarketEntrance is the only known actor that uses this trigger. | + | MarketEntrance is the only known actor that uses this trigger. The box it uses presumably defined by dtwi, dtwo, utwi, utwo in the MapLayoutResourceData file. |
+ | |||
+ | DoorStandard also uses this programmatically in its script to trigger doors opening/closing when a player goes near them. | ||
== Visual Layout == | == Visual Layout == | ||
Line 49: | Line 53: | ||
|- | |- | ||
! 0x00 | ! 0x00 | ||
− | | colspan="4" style="background:# | + | | colspan="4" style="background:#8FE0C2" | '''bgObjectID''' |
− | | colspan="4" style="background:# | + | | colspan="4" style="background:#8FA6E8" | '''layoutID''' |
− | | colspan="4" style="background:# | + | | colspan="4" style="background:#C0E8A7" | '''actorID''' |
| colspan="4" style="background:#CEE0F2" | '''unknown''' | | colspan="4" style="background:#CEE0F2" | '''unknown''' | ||
|- | |- | ||
! 0x10 | ! 0x10 | ||
| colspan="4" style="background:#CEE0F2" | '''unknown''' | | colspan="4" style="background:#CEE0F2" | '''unknown''' | ||
− | | colspan="1" style="background:# | + | | colspan="1" style="background:#C0E8A7" | '''options''' |
− | | colspan="1" style="background:# | + | | colspan="1" style="background:#f1cbff" | '''priority''' |
− | | colspan="1" style="background:# | + | | colspan="1" style="background:#eedfcc" | '''isSilent''' |
− | | colspan="9" style="background:# | + | | colspan="9" style="background:#fdf5e6" | |
|- | |- | ||
! 0x20 | ! 0x20 | ||
− | | colspan="16" style="background:# | + | | colspan="16" style="background:#fdf5e6" | '''eventName''' |
|- | |- | ||
! 0x30 | ! 0x30 | ||
− | | colspan=" | + | | colspan="7" style="background:#fdf5e6" | |
− | | colspan="8" style="background:# | + | | colspan="1" style="background:#CEE0F2" | '''unk''' |
+ | | colspan="8" style="background:#FFA6E8" | '''reactionName''' | ||
|} | |} | ||
[[Category:Unfinished]] | [[Category:Unfinished]] |
Latest revision as of 22:05, 19 March 2020
Sets a push event trigger to this actor. "Push" events are collision tested events, this one specifically assigning a predefined trigger box to an actor. This seems to be some kind of driver for BG Objects.
- Opcode - 0x175
- Source - Server
- Data Size - 0x40 bytes
- Requirements - None
Data
Offset | Data Type | Length | Variable | Description |
---|---|---|---|---|
0x00 | int32 | 4 Bytes | bgObjectID | BG Object ID |
0x04 | int32 | 4 Bytes | layoutID | Layout ID |
0x08 | int32 | 4 Bytes | actorID | Actor ID that this triggers from? 1.22+ it is just set to 0x4. |
0x0C | float | 4 Bytes | unknown | |
0x10 | int32 | 4 Bytes | unknown | |
0x14 | byte | 1 Bytes | options | Format is 000[W] [Z][Y][XX] If 0x11; triggers when player leaves the box. If 0x1, triggers when player enters the box. |
0x15 | byte | 1 Bytes | priority | |
0x16 | byte | 1 Bytes | isSilent | |
0x17 | string | 32 Bytes | eventName | The name of the event that will be sent when a Start/End event is fired. |
0x37 | byte | 1 Bytes | unknown | |
0x38 | string | 8 Bytes | reactionName | DoorStandard passes to _onReaction. MarketEntrance to dwti for Limsa, dtwi for Gridania and Ul'dah.
|
Notes
MarketEntrance is the only known actor that uses this trigger. The box it uses presumably defined by dtwi, dtwo, utwi, utwo in the MapLayoutResourceData file.
DoorStandard also uses this programmatically in its script to trigger doors opening/closing when a player goes near them.
Visual Layout
Packet Data layout | ||||||||||||||||
0x0 | 0x1 | 0x2 | 0x3 | 0x4 | 0x5 | 0x6 | 0x7 | 0x8 | 0x9 | 0xA | 0xB | 0xC | 0xD | 0xE | 0xF | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0x00 | bgObjectID | layoutID | actorID | unknown | ||||||||||||
0x10 | unknown | options | priority | isSilent | ||||||||||||
0x20 | eventName | |||||||||||||||
0x30 | unk | reactionName |