Difference between revisions of "Game Opcodes:SetPushEventConditionWithCircle"

From FFXIV Classic Wiki
Jump to: navigation, search
(Visual Layout)
m (Notes)
 
(14 intermediate revisions by one other user not shown)
Line 3: Line 3:
 
:; Opcode - 0x16F
 
:; Opcode - 0x16F
 
:; Source - Server
 
:; Source - Server
:; Data Size - 0x38 bytes
+
:; Data Size - 0x58 bytes
 
:; Requirements - None
 
:; Requirements - None
  
Line 17: Line 17:
 
| 0x00 || float || 4 Bytes || radius || How far the trigger circle extends from the actor.
 
| 0x00 || float || 4 Bytes || radius || How far the trigger circle extends from the actor.
 
|-
 
|-
| 0x04 || float || 4 Bytes || unknown ||  
+
| 0x04 || int32 || 4 Bytes || unknown ||  
 
|-
 
|-
 
| 0x08 || float || 4 Bytes || unknown ||
 
| 0x08 || float || 4 Bytes || unknown ||
Line 23: Line 23:
 
| 0x0C || float || 4 Bytes || unknown ||
 
| 0x0C || float || 4 Bytes || unknown ||
 
|-
 
|-
| 0x10 || byte || 1 Bytes || direction || Changes behavior of the push circle. If 0x11; triggers when player leaves the circle. If 0x1, triggers when player enters the circle.
+
| 0x10 || byte || 1 Bytes || options || Format is 000[W] [Z][Y][XX] If 0x11; triggers when player leaves the circle. If 0x1, triggers when player enters the circle.  
 
|-
 
|-
| 0x11 || byte || 1 Bytes || unknown ||
+
| 0x11 || byte || 1 Bytes || priority ||  
 
|-
 
|-
 
| 0x12 || byte || 1 Bytes || isSilent || If 0x1, does not cause the UI and player to lockup.
 
| 0x12 || byte || 1 Bytes || isSilent || If 0x1, does not cause the UI and player to lockup.
 
|-
 
|-
| 0x13 || string || 25 Bytes || eventName || The name of the event that will be sent when a Start/End event is fired.
+
| 0x13 || string || 32 Bytes || eventName || The name of the event that will be sent when a Start/End event is fired.
 
|}
 
|}
  
 
== Notes ==
 
== Notes ==
  
Event names can be "emoteDefault1" to emoteDefault8".
+
* Generic events are usually named "pushDefault". Certain scripts require specific event names; ie: PushCommands need a "pushCommandIn" and "pushCommandOut" trigger.
 +
 
 +
* If the eventName starts with <code>_!</code> the circle will block and "push back" a mounted player informing them that you cannot proceed on Chocoback. If it starts with <code>_@</code> a generic "you cannot proceed" is shown, regardless of mount status.
 +
** Having no valid eventName just has it paint the radius of the actor's circle coverage on the minimap.
  
 
== Visual Layout ==
 
== Visual Layout ==
Line 52: Line 55:
 
! 0x10
 
! 0x10
 
| colspan="1" style="background:#8FA6E8" | '''direction'''
 
| colspan="1" style="background:#8FA6E8" | '''direction'''
| colspan="1" style="background:#CEE0F2" | '''unknown'''
+
| colspan="1" style="background:#8FA6E8" | '''priority'''
 
| colspan="1" style="background:#8FA6E8" | '''isSilent'''
 
| colspan="1" style="background:#8FA6E8" | '''isSilent'''
 
| colspan="13" style="background:#8FA6E8" |
 
| colspan="13" style="background:#8FA6E8" |
Line 58: Line 61:
 
! 0x20
 
! 0x20
 
| colspan="16" style="background:#8FA6E8" | '''eventName'''
 
| colspan="16" style="background:#8FA6E8" | '''eventName'''
 +
|-
 +
! 0x30
 +
| colspan="3" style="background:#8FA6E8" |
 +
| 00 || 00 || 00 || 00 || 00
 
|}
 
|}
  
 
[[Category:Unfinished]]
 
[[Category:Unfinished]]

Latest revision as of 17:19, 26 December 2021

Sets a push event trigger to this actor. "Push" events are collision tested events, this one specifically setting a trigger circle around the actor.

Opcode - 0x16F
Source - Server
Data Size - 0x58 bytes
Requirements - None

Data

Offset Data Type Length Variable Description
0x00 float 4 Bytes radius How far the trigger circle extends from the actor.
0x04 int32 4 Bytes unknown
0x08 float 4 Bytes unknown
0x0C float 4 Bytes unknown
0x10 byte 1 Bytes options Format is 000[W] [Z][Y][XX] If 0x11; triggers when player leaves the circle. If 0x1, triggers when player enters the circle.
0x11 byte 1 Bytes priority
0x12 byte 1 Bytes isSilent If 0x1, does not cause the UI and player to lockup.
0x13 string 32 Bytes eventName The name of the event that will be sent when a Start/End event is fired.

Notes

  • Generic events are usually named "pushDefault". Certain scripts require specific event names; ie: PushCommands need a "pushCommandIn" and "pushCommandOut" trigger.
  • If the eventName starts with _! the circle will block and "push back" a mounted player informing them that you cannot proceed on Chocoback. If it starts with _@ a generic "you cannot proceed" is shown, regardless of mount status.
    • Having no valid eventName just has it paint the radius of the actor's circle coverage on the minimap.

Visual Layout

Packet Data layout
0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7 0x8 0x9 0xA 0xB 0xC 0xD 0xE 0xF
0x00 radius unknown unknown unknown
0x10 direction priority isSilent
0x20 eventName
0x30 00 00 00 00 00