Difference between revisions of "FF7/Field/Triggers"

From Final Fantasy Inside
< FF7‎ | Field
Jump to navigation Jump to search
my_wiki>Myst6re
my_wiki>Albeoris
(Created page with "= Triggers/Gateways = [http://forums.qhimm.com/index.php?topic=4358.msg58674#msg58674] [http://forums.qhimm.com/index.php?topic=3247.msg53525#msg53525] and [http://forums.q...")
Line 1: Line 1:
= Triggers/Gateways =
+
= Triggers/Gateways =
  
(http://forums.qhimm.com/index.php?topic=4358.msg58674#msg58674 http://forums.qhimm.com/index.php?topic=3247.msg53525#msg53525 and http://forums.qhimm.com/index.php?topic=7129.msg87583#msg87583)
+
[http://forums.qhimm.com/index.php?topic=4358.msg58674#msg58674] [http://forums.qhimm.com/index.php?topic=3247.msg53525#msg53525] and [http://forums.qhimm.com/index.php?topic=7129.msg87583#msg87583]
  
{| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;"
+
{| class="wikitable"
! style="background:rgb(204,204,204)" | Offset
+
! Offset
! style="background:rgb(204,204,204)" | Size
+
! Size
! style="background:rgb(204,204,204)" | Data
+
! Data
 
|-
 
|-
 
| 0
 
| 0
Line 24: Line 24:
 
| Camera Range
 
| Camera Range
 
|-
 
|-
|style="background:rgb(255,255,204)" | 20
+
| style="background: rgb(255,255,204)" | 20
|style="background:rgb(255,255,204)" | 4
+
| style="background: rgb(255,255,204)" | 4
|style="background:rgb(255,255,204)" | Unknown (Bg layer 3 & 4 related)
+
| style="background: rgb(255,255,204)" | Unknown (Bg layer 3 & 4 related)
 
|-
 
|-
 
| 24
 
| 24
Line 44: Line 44:
 
| Background layer 4 animation height (or 1024)
 
| Background layer 4 animation height (or 1024)
 
|-
 
|-
|style="background:rgb(255,255,204)" | 32
+
| style="background: rgb(255,255,204)" | 32
|style="background:rgb(255,255,204)" | 24
+
| style="background: rgb(255,255,204)" | 24
|style="background:rgb(255,255,204)" | Unknown (Bg layer 3 & 4 related)
+
| style="background: rgb(255,255,204)" | Unknown (Bg layer 3 & 4 related)
 
|-
 
|-
 
| 56
 
| 56
Line 65: Line 65:
 
|}
 
|}
  
== range ==
+
== range ==
  
 
  typedef struct {
 
  typedef struct {
Line 74: Line 74:
 
  } Range;
 
  } Range;
  
== Vertex ==
+
== Vertex ==
  
 
  typedef struct {
 
  typedef struct {
Line 82: Line 82:
 
  } Vertex;
 
  } Vertex;
  
== Gateways data ==
+
== Gateways data ==
  
 
For each gateway:
 
For each gateway:
  
{| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;"
+
{| class="wikitable"
! style="background:rgb(204,204,204)" | Offset
+
! Offset
! style="background:rgb(204,204,204)" | Size
+
! Size
! style="background:rgb(204,204,204)" | Data
+
! Data
 
|-
 
|-
 
| 0
 
| 0
Line 107: Line 107:
 
| Field ID
 
| Field ID
 
|-
 
|-
|style="background:rgb(255,255,204)" | 20
+
| style="background: rgb(255,255,204)" | 20
|style="background:rgb(255,255,204)" | 4
+
| style="background: rgb(255,255,204)" | 4
|style="background:rgb(255,255,204)" | Unknown (four equal bytes)
+
| style="background: rgb(255,255,204)" | Unknown (four equal bytes)
 
|}
 
|}
  
== Triggers data ==
+
== Triggers data ==
  
 
For each trigger:
 
For each trigger:
  
{| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;"
+
{| class="wikitable"
! style="background:rgb(204,204,204)" | Offset
+
! Offset
! style="background:rgb(204,204,204)" | Size
+
! Size
! style="background:rgb(204,204,204)" | Data
+
! Data
 
|-
 
|-
 
| 0
 
| 0
Line 146: Line 146:
 
|}
 
|}
  
=== Behavior ===
+
=== Behavior ===
  
 
behavior can be from 0 to 5:
 
behavior can be from 0 to 5:
  
0 - OnTrigger - ON<br/>
+
0 - OnTrigger - ON<br /> 1 - OnTrigger - OFF<br /> 2 - OnTrigger - ON, AwayFromTrigger - OFF<br /> 3 - OnTrigger - OFF, AwayFromTrigger - ON<br /> 4 - OnTrigger - ON, AwayFromTriggerOnPlusSide - OFF<br /> 5 - OnTrigger - OFF, AwayFromTriggerOnPlusSide - ON<br />
1 - OnTrigger - OFF<br/>
 
2 - OnTrigger - ON, AwayFromTrigger - OFF<br/>
 
3 - OnTrigger - OFF, AwayFromTrigger - ON<br/>
 
4 - OnTrigger - ON, AwayFromTriggerOnPlusSide - OFF<br/>
 
5 - OnTrigger - OFF, AwayFromTriggerOnPlusSide - ON<br/>
 
  
== Shown arrows ==
+
== Shown arrows ==
  
 
For each gateway you can show an arrow. If shown arrow = 1, a red arrow is displayed in the middle of the corresponding gateway line.
 
For each gateway you can show an arrow. If shown arrow = 1, a red arrow is displayed in the middle of the corresponding gateway line.
  
== Arrows ==
+
== Arrows ==
  
 
This an arrow list to position an arrow where you want.
 
This an arrow list to position an arrow where you want.
  
{| border="1" cellspacing="1" cellpadding="3" align="center" style="border: 1px solid black; border-collapse: collapse;"
+
{| class="wikitable"
! style="background:rgb(204,204,204)" | Offset
+
! Offset
! style="background:rgb(204,204,204)" | Size
+
! Size
! style="background:rgb(204,204,204)" | Data
+
! Data
 
|-
 
|-
 
| 0
 
| 0

Revision as of 02:17, 24 March 2018

Triggers/Gateways

[1] [2] and [3]

Offset Size Data
0 9 Name of field (\0 terminated)
9 1 Control Direction
10 2 Height to focus the camera on the character (0= normal focus, <0= focus below, >0= focus above)
12 8 Camera Range
20 4 Unknown (Bg layer 3 & 4 related)
24 2 Background layer 3 animation width (or 1024 if no layer 3)
26 2 Background layer 3 animation height (or 1024)
28 2 Background layer 4 animation width (or 1024)
30 2 Background layer 4 animation height (or 1024)
32 24 Unknown (Bg layer 3 & 4 related)
56 12 * 24 Gateways
344 12 * 16 Triggers
536 12 Shown arrows on gateway lines (not present in jp version)
548 12 * 16 Arrows (not present in jp version)

range

typedef struct {
  S16 left;
  S16 bottom; // maybe top, I dont know/care Its nearly always centred
  S16 right;
  S16 top;    // maybe bottom.
} Range;

Vertex

typedef struct {
  S16 x;
  S16 z;
  S16 y;
} Vertex;

Gateways data

For each gateway:

Offset Size Data
0 6 Vertex 1 of exit line
6 6 Vertex 2 of exit line
12 6 Destination vertex
18 2 Field ID
20 4 Unknown (four equal bytes)

Triggers data

For each trigger:

Offset Size Data
0 6 Vertex of corner1
6 6 Vertex of corner2
12 1 Background group ID (parameter)
13 1 Background frame ID (state)
14 1 Behavior
15 1 Sound ID

Behavior

behavior can be from 0 to 5:

0 - OnTrigger - ON
1 - OnTrigger - OFF
2 - OnTrigger - ON, AwayFromTrigger - OFF
3 - OnTrigger - OFF, AwayFromTrigger - ON
4 - OnTrigger - ON, AwayFromTriggerOnPlusSide - OFF
5 - OnTrigger - OFF, AwayFromTriggerOnPlusSide - ON

Shown arrows

For each gateway you can show an arrow. If shown arrow = 1, a red arrow is displayed in the middle of the corresponding gateway line.

Arrows

This an arrow list to position an arrow where you want.

Offset Size Data
0 4 Position X (signed)
4 4 Position Z (signed)
8 4 Position Y (signed)
12 4 Arrow type (0= disabled, 1= red, 2= green)