Author Topic: Field Sections 3 and 8  (Read 3471 times)

Reunion

  • *
  • Posts: 104
    • View Profile
Field Sections 3 and 8
« on: 2005-07-15 04:49:48 »
I spent some time working with sections 3 and 8 of the pc field files but in section 8 I could use some help with the camera range matrix and the exit positions matrix. The camera range matrix seems to set the range of motion by the camera on a x,y axis. The exit positions matrix sets the position of an exit in a level map on a x,y axis. I just don't understand the how the matrices are set up.

Field Section Summary:
Section 1 Field Script & Dialog
Section 2 Camera Matrix
Section 3 HRC Loader
Section 4 Palette
Section 5 Walkmesh
Section 6 Unknown
Section 7 Encounter
Section 8 Camera Ranges & Exit Positions/Level Linking
Section 9 Background

Note- please forgive a non-programmers ugly descriptions...

Section 3: HRC Loader
Code: [Select]
Section length: long

short: blank
short: num_HRC //number of hierarchys
short: (512),(1024)… //hierarchy type

len(short): char_str //length of character string
char_str: (level_map)(char_name).char //#example# md1stinmain_n_cloud.char
short: blank
HRC_str: (HRC_file_name).(HRC),(512),(1024)…+ blank byte //#example# AAAA.HRC512
short: num_animations //number of animations

HRC_light_map: 30 bytes //all animations render under hierarchy’s light map
#example of HRC_light_map #
134,130,131
110,0,73
250,252,14
157,155,156
138,9,62
246,163,247
77,77,77
118,244,73
250,103,246
64,64,64 // RGB level

len(short): aki_str //length of animation string
aki_str: (animation_file_name).(aki),(yos),(ani),(tor).. //#example# ACFE.aki
short: 1


Section 8: Camera Ranges & Exit Positions/Level Linking
Code: [Select]
Section length: long
(level_map_str) + blank byte //level map string
short: blank
byte: main_char control axis //for inverting controls
#examples#(128:up = y right = x) (64:up = x right = -y)

10 bytes: camera range matrix + 1 blank byte //sets some camera ranges...
#example (not arranged properly) #
64,0
0,-1
0,-1
0,1
0,1

long: blank
Short: 4 unknown
short: 4 unknown
short: 4 unknown
byte : 4 unknown
24 blank bytes

14 bytes: exit position matrix //sets the positions for the level map exits…
#example (not arranged properly) #
82,255
175,254
64,-255
-45,255
112,254
64,255
96,251

long: next_map_pos //sets the linked level maps main_char starting position
short: exit_link //sets level map that exit is linked to
#examples#
1-64 world map locations
65 - Debug room
66 - 786? Field locations
long: unknown


well the rest of section 8 I just don't get at all so...
and if someone could explain how  the matrices work further…

Anyway I hope someone can make use of this information.

-Reunion