Users browsing this thread: 2 Guest(s)
Custom event freezing
Hello guys,
I've tried making my own custom event for when the party visits the town of Maranda for the first time (before the Vector/Magitek research facility chapter, when you need to have both Locke and Celes in your party). It is supposed to work as follows: on an event tile near the stairs, the party splits up, some dialogue happens, some characters strike certain poses, then the party regroups again. Should be simple enough, but for some reason I get a freeze after the party splits, before the first dialogue box is supposed to appear, and I can't quite figure out why. Here's my event code:
C0 02 80 B3 5E 00 47 B2 AC C6 00 B2 34 2E 01 3C 01 06 FF FF 31 04 C2 80 CD FF 32 04 C2 A0 CF FF 33 03 C2 81 CC FF 34 02 CC FF 92 4B 8E 05 91 06 82 22 FF 91 4B 24 04 C0 A2 01 B6 E1 35 02 82 18 FF 94 4B D4 04 91 06 85 CE E0 02 63 FF 4B 29 05 95 4B 84 05 01 85 83 E0 02 81 FF 06 82 CF FF 4B FC 05 06 02 83 FF 33 02 A3 FF 34 82 80 FF 42 32 42 33 42 34 45 47 3A 78 31 78 32 78 33 78 34 D0 02 FE
And here the breakdown of what it's supposed to do:
C0 02 80 = check if event bit 002 is set, if yes:
B3 5E 00 = branch to return function
47 = make character in slot 0 the leader
B2 AC C6 00 = subroutine that loads caseword with characters in active party (checks who is currently there)
B2 34 2E 01 = subroutine that enables party members to pass through other objects
3C 01 06 FF FF = sets up a party with characters 01 (Locke), 06 (Celes), two irrelevant (FFs)
31 04 C2 80 CD FF = action queue for character 1, 4 bytes long, move 1 up & turn right
32 04 C2 A0 CF FF= action queue for character 2, 4 bytes long, move 1 right-up & turn left
33 03 C2 81 CC FF= action queue for character 3, 4 bytes long, move 1 right & turn up
34 02 CC FF= action queue for character 4, 2 bytes long, turn up
FREEZE HERE??
92 = pause for 30 units
4B 8E 05 = text box
91 = pause for 15 units
06 82 22 FF =action queue for Celes, 2 bytes long, head down sad left
91 = pause for 15 units
4B 24 04 = text box
C0 A2 01 B6 E1 35 = check if Cyan is in party, if not branch to 3FE1B6 (9 bytes further down)
02 82 18 FF = action queue for Cyan, 2 bytes long, armfolded pose
94 = pause for 60 units
4B D4 04 = text box
91 = pause for 15 units
06 85 CE E0 02 63 FF = action queue for Celes, 4 bytes long, look down, delay, turn head to right
4B 29 05 = text box
95 = pause for 120 units
4B 84 05 = text box
01 85 83 E0 02 81 FF = action queue for Locke, 4 bytes long, move 1 left, delay, move 1 right
06 82 CF FF = action queue for Celes, 2 bytes long, turn left
4B FC 05 = text box
06 02 83 FF = action queue for Celes, 2 bytes long, move 1 left
33 02 A3 FF = action queue for character 3, 2 bytes long, move left-up
34 82 80 FF = action queue for character 4, 2 bytes long, move up
42 32 = hide character 2 sprite
42 33 = hide character 3 sprite
42 34 = hide character 4 sprite
45 = refresh objects
47 = make character in slot 0 the leader
3A = enable movement while event is executing
78 31 = enable passing through sprite 1
78 32 = enable passing through sprite 2
78 33 = enable passing through sprite 3
78 34 = enable passing through sprite 4
D0 02 = set event bit 002
FE = return
The bold part is where the game freezes. Maybe someone of you can see where I made a mistake. Any help is appreciated.
EDIT: Oh yeah, another thing: the fourth character is facing in the wrong direction after the party splits (down instead of up). It's just a small issue, but could this be related to the main problem?
I've tried making my own custom event for when the party visits the town of Maranda for the first time (before the Vector/Magitek research facility chapter, when you need to have both Locke and Celes in your party). It is supposed to work as follows: on an event tile near the stairs, the party splits up, some dialogue happens, some characters strike certain poses, then the party regroups again. Should be simple enough, but for some reason I get a freeze after the party splits, before the first dialogue box is supposed to appear, and I can't quite figure out why. Here's my event code:
C0 02 80 B3 5E 00 47 B2 AC C6 00 B2 34 2E 01 3C 01 06 FF FF 31 04 C2 80 CD FF 32 04 C2 A0 CF FF 33 03 C2 81 CC FF 34 02 CC FF 92 4B 8E 05 91 06 82 22 FF 91 4B 24 04 C0 A2 01 B6 E1 35 02 82 18 FF 94 4B D4 04 91 06 85 CE E0 02 63 FF 4B 29 05 95 4B 84 05 01 85 83 E0 02 81 FF 06 82 CF FF 4B FC 05 06 02 83 FF 33 02 A3 FF 34 82 80 FF 42 32 42 33 42 34 45 47 3A 78 31 78 32 78 33 78 34 D0 02 FE
And here the breakdown of what it's supposed to do:
C0 02 80 = check if event bit 002 is set, if yes:
B3 5E 00 = branch to return function
47 = make character in slot 0 the leader
B2 AC C6 00 = subroutine that loads caseword with characters in active party (checks who is currently there)
B2 34 2E 01 = subroutine that enables party members to pass through other objects
3C 01 06 FF FF = sets up a party with characters 01 (Locke), 06 (Celes), two irrelevant (FFs)
31 04 C2 80 CD FF = action queue for character 1, 4 bytes long, move 1 up & turn right
32 04 C2 A0 CF FF= action queue for character 2, 4 bytes long, move 1 right-up & turn left
33 03 C2 81 CC FF= action queue for character 3, 4 bytes long, move 1 right & turn up
34 02 CC FF= action queue for character 4, 2 bytes long, turn up
FREEZE HERE??
92 = pause for 30 units
4B 8E 05 = text box
91 = pause for 15 units
06 82 22 FF =action queue for Celes, 2 bytes long, head down sad left
91 = pause for 15 units
4B 24 04 = text box
C0 A2 01 B6 E1 35 = check if Cyan is in party, if not branch to 3FE1B6 (9 bytes further down)
02 82 18 FF = action queue for Cyan, 2 bytes long, armfolded pose
94 = pause for 60 units
4B D4 04 = text box
91 = pause for 15 units
06 85 CE E0 02 63 FF = action queue for Celes, 4 bytes long, look down, delay, turn head to right
4B 29 05 = text box
95 = pause for 120 units
4B 84 05 = text box
01 85 83 E0 02 81 FF = action queue for Locke, 4 bytes long, move 1 left, delay, move 1 right
06 82 CF FF = action queue for Celes, 2 bytes long, turn left
4B FC 05 = text box
06 02 83 FF = action queue for Celes, 2 bytes long, move 1 left
33 02 A3 FF = action queue for character 3, 2 bytes long, move left-up
34 82 80 FF = action queue for character 4, 2 bytes long, move up
42 32 = hide character 2 sprite
42 33 = hide character 3 sprite
42 34 = hide character 4 sprite
45 = refresh objects
47 = make character in slot 0 the leader
3A = enable movement while event is executing
78 31 = enable passing through sprite 1
78 32 = enable passing through sprite 2
78 33 = enable passing through sprite 3
78 34 = enable passing through sprite 4
D0 02 = set event bit 002
FE = return
The bold part is where the game freezes. Maybe someone of you can see where I made a mistake. Any help is appreciated.
EDIT: Oh yeah, another thing: the fourth character is facing in the wrong direction after the party splits (down instead of up). It's just a small issue, but could this be related to the main problem?
« Next Oldest | Next Newest »
|
||||
Users browsing this thread: 2 Guest(s)