-
Notifications
You must be signed in to change notification settings - Fork 0
Event Loc 51 Luxus Palace Dungeon Level 1
Navigation: Home - Wiki - Event Loc 51 Luxus Palace Dungeon Level 1
-
event.dat offset
0x00FC6C, length 1243 bytes - Map: map screen 51; Luxus Palace Dungeon Level 1
-
Record kind:
standard - Triggers: 57; script segments: 18; strings: 24
| Tile (y,x) | pos | Event | Condition |
|---|---|---|---|
| (0,0) | 0x00 |
5 | DIR_W? |
| (0,1) | 0x01 |
10 | DIR_W? |
| (0,2) | 0x02 |
8 | ANY_DIR |
| (0,5) | 0x05 |
6 | DIR_W? |
| (0,7) | 0x07 |
16 | DIR_W? |
| (0,15) | 0x0F |
2 | DIR_E? |
| (1,2) | 0x12 |
12 | DIR_S? |
| (3,0) | 0x30 |
15 | DIR_S? |
| (3,2) | 0x32 |
13 | DIR_S? |
| (3,4) | 0x34 |
15 | 0xA0 |
| (3,6) | 0x36 |
15 | 0xA0 |
| (3,8) | 0x38 |
14 | DIR_S? |
| (3,9) | 0x39 |
14 | DIR_S? |
| (3,10) | 0x3A |
14 | 0xA0 |
| (3,11) | 0x3B |
14 | 0xA0 |
| (3,12) | 0x3C |
14 | 0xA0 |
| (3,13) | 0x3D |
14 | 0xA0 |
| (3,14) | 0x3E |
14 | 0xA0 |
| (3,15) | 0x3F |
14 | 0xA0 |
| (5,7) | 0x57 |
14 | DIR_E? |
| (5,13) | 0x5D |
3 | DIR_S? |
| (6,13) | 0x6D |
16 | 0x50 |
| (7,7) | 0x77 |
14 | DIR_E? |
| (8,0) | 0x80 |
14 | 0xA0 |
| (8,1) | 0x81 |
14 | DIR_N? |
| (8,2) | 0x82 |
14 | DIR_S? |
| (8,3) | 0x83 |
14 | DIR_N? |
| (8,4) | 0x84 |
14 | DIR_S? |
| (8,5) | 0x85 |
14 | DIR_N? |
| (8,6) | 0x86 |
14 | DIR_S? |
| (8,10) | 0x8A |
11 | DIR_W? |
| (8,13) | 0x8D |
16 | 0x50 |
| (9,7) | 0x97 |
12 | DIR_E? |
| (9,11) | 0x9B |
1 | DIR_N?+DIR_E? |
| (10,0) | 0xA0 |
8 | ANY_DIR |
| (10,1) | 0xA1 |
12 | DIR_W? |
| (11,7) | 0xB7 |
12 | DIR_E? |
| (11,8) | 0xB8 |
8 | ANY_DIR |
| (11,13) | 0xBD |
16 | 0x50 |
| (12,0) | 0xC0 |
16 | DIR_S? |
| (12,1) | 0xC1 |
15 | DIR_N? |
| (12,2) | 0xC2 |
13 | DIR_N? |
| (12,3) | 0xC3 |
15 | DIR_N? |
| (12,4) | 0xC4 |
15 | DIR_S? |
| (12,5) | 0xC5 |
15 | DIR_N? |
| (12,6) | 0xC6 |
15 | DIR_S? |
| (12,13) | 0xCD |
13 | DIR_N? |
| (13,7) | 0xD7 |
15 | DIR_E? |
| (13,13) | 0xDD |
16 | DIR_E? |
| (14,10) | 0xEA |
11 | DIR_E? |
| (14,11) | 0xEB |
7 | DIR_E? |
| (14,13) | 0xED |
16 | DIR_W? |
| (15,0) | 0xF0 |
4 | DIR_W? |
| (15,2) | 0xF2 |
9 | DIR_W? |
| (15,7) | 0xF7 |
15 | 0x50 |
| (15,10) | 0xFA |
8 | ANY_DIR |
| (15,13) | 0xFD |
16 | DIR_E? |
Event 01 — triggers: (9,11)/DIR_N?+DIR_E?
01 01 09 11 01 0c 3a 00 0f
00: show_text_basic(str[1] "Stairs going up. Ascend (y/n)?")
01: cond = prompt_yes_no()
02: if not cond: skip_tokens(1)
# skip -> end_script()
03: map_transition(0x3A, 0x00)
04: end_script()
Event 02 — triggers: (0,15)/DIR_E?
0b 17 00 02 02 0a 11 01 0c 2d f8 0f
00: service_sign(idx=0x17 -> sign 29 [29.anm], pos=0x00)
01: show_text_block(str[2] ""What's a nice party like you doing / in a drab dungeon like this? Hills")
02: cond = prompt_yes_no(mode=1)
03: if not cond: skip_tokens(1)
# skip -> end_script()
04: map_transition(0x2D, 0xF8)
05: end_script()
Event 03 — triggers: (5,13)/DIR_S?
01 03 09 11 01 0c 34 2a 0f
00: show_text_basic(str[3] "Stairs down. Take them (y/n)?")
01: cond = prompt_yes_no()
02: if not cond: skip_tokens(1)
# skip -> end_script()
03: map_transition(0x34, 0x2A)
04: end_script()
Event 04 — triggers: (15,0)/DIR_W?
2d 22 00 11 04 02 04 07 0d 09 0c 33 89 02 07 19 01 f9 00 00 10 01 01 14 07 14
00: cond = check_member_attr(fields=0x22, value=0x00)
01: if not cond: skip_tokens(4)
# skip -> show_text_block(str[7] "You have found a Topaz Shard!")
02: show_text_block(str[4] "Shazam! You're sucked away.")
03: wait_for_space()
04: engine_call(0x09)
05: map_transition(0x33, 0x89)
06: show_text_block(str[7] "You have found a Topaz Shard!")
07: add_party_entity(0x01, f3a=0xF9, f40=0x00, f46=0x00)
08: if cond: skip_tokens(1)
# skip -> wait_for_space()
09: show_text_basic(str[20] "*** Backpacks Full ***")
10: wait_for_space()
11: clear_current_tile_event_flag()
Event 05 — triggers: (0,0)/DIR_W?
2d 24 00 11 04 01 05 07 0d 09 0c 33 89 02 06 19 01 ef 00 00 10 01 01 14 07 14
00: cond = check_member_attr(fields=0x24, value=0x00)
01: if not cond: skip_tokens(4)
# skip -> show_text_block(str[6] "You have found an Amber Skull!")
02: show_text_basic(str[5] "You are teleported elsewhere.")
03: wait_for_space()
04: engine_call(0x09)
05: map_transition(0x33, 0x89)
06: show_text_block(str[6] "You have found an Amber Skull!")
07: add_party_entity(0x01, f3a=0xEF, f40=0x00, f46=0x00)
08: if cond: skip_tokens(1)
# skip -> wait_for_space()
09: show_text_basic(str[20] "*** Backpacks Full ***")
10: wait_for_space()
11: clear_current_tile_event_flag()
Event 06 — triggers: (0,5)/DIR_W?
02 08 09 11 05 02 09 26 20 09 13 01 05 00 00 11 01 1f 09 44 01 03 00 00 0f
00: show_text_block(str[8] "Steam rises from a magical well. / Will you sample the water (y/n)?")
01: cond = prompt_yes_no()
02: if not cond: skip_tokens(5)
# skip -> end_script()
03: show_text_block(str[9] "Who will drink (1-8)?")
04: selected = select_party_member()
05: party_effect_b(sel=0x09, 13 01 05 00 00)
06: if not cond: skip_tokens(1)
# skip -> end_script()
07: party_effect(sel=0x09, 44 01 03 00 00)
08: end_script()
Event 07 — triggers: (14,11)/DIR_E?
2d a2 00 11 04 01 15 07 0d 09 0c 33 89 17 3d 00 10 06 02 0a 07 1c 05 1f 80 3c 02 00 00 00 1a 3d 01 14 02 16 29
00: cond = check_member_attr(fields=0xA2, value=0x00)
01: if not cond: skip_tokens(4)
# skip -> cond = load_var8(group=0x3D, index=0x00)
02: show_text_basic(str[21] "The sign said NO DWARVES!")
03: wait_for_space()
04: engine_call(0x09)
05: map_transition(0x33, 0x89)
06: cond = load_var8(group=0x3D, index=0x00)
07: if cond: skip_tokens(6)
# skip -> show_text_block(str[22] "Sorry, benefits are given only once / per moon phase.")
08: show_text_block(str[10] "A shower of soft pellets cascades / upon the party. You feel different.")
09: wait_for_space()
10: op_1c_engine_query_to_cond(0x05)
11: party_effect(sel=0x80, 3C 02 00 00 00)
12: store_var8(group=0x3D, value=0x01)
13: clear_current_tile_event_flag()
14: show_text_block(str[22] "Sorry, benefits are given only once / per moon phase.")
15: set_abort_and_exit()
Event 08 — triggers: (0,2)/ANY_DIR, (10,0)/ANY_DIR, (11,8)/ANY_DIR, (15,10)/ANY_DIR
02 0b 15 01 01 80 10 03 18 01 3e 00 00 18 01 3f 00 00 18 01 40 00 00 15 02 01 80 10 03 18 02 3e 00 00 18 02 3f 00 00 18 02 40 00 00 15 03 01 80 10 03 18 03 3e 00 00 18 03 3f 00 00 18 03 40 00 00 15 04 01 80 10 03 18 04 3e 00 00 18 04 3f 00 00 18 04 40 00 00 15 05 01 80 10 03 18 05 3e 00 00 18 05 3f 00 00 18 05 40 00 00 15 06 01 80 10 03 18 06 3e 00 00 18 06 3f 00 00 18 06 40 00 00 15 07 01 80 10 03 18 07 3e 00 00 18 07 3f 00 00 18 07 40 00 00 15 08 01 80 10 03 18 08 3e 00 00 18 08 3f 00 00 18 08 40 00 00 07 14
00: show_text_block(str[11] "You have entered an unauthorized area. / Pay the fine!")
01: apply_party(count=0x01, op=0x01, val=0x80)
02: if cond: skip_tokens(3)
# skip -> apply_party(count=0x02, op=0x01, val=0x80)
03: apply_party_masked(count=0x01, set=0x3E, and=0x00, or=0x00)
04: apply_party_masked(count=0x01, set=0x3F, and=0x00, or=0x00)
05: apply_party_masked(count=0x01, set=0x40, and=0x00, or=0x00)
06: apply_party(count=0x02, op=0x01, val=0x80)
07: if cond: skip_tokens(3)
# skip -> apply_party(count=0x03, op=0x01, val=0x80)
08: apply_party_masked(count=0x02, set=0x3E, and=0x00, or=0x00)
09: apply_party_masked(count=0x02, set=0x3F, and=0x00, or=0x00)
10: apply_party_masked(count=0x02, set=0x40, and=0x00, or=0x00)
11: apply_party(count=0x03, op=0x01, val=0x80)
12: if cond: skip_tokens(3)
# skip -> apply_party(count=0x04, op=0x01, val=0x80)
13: apply_party_masked(count=0x03, set=0x3E, and=0x00, or=0x00)
14: apply_party_masked(count=0x03, set=0x3F, and=0x00, or=0x00)
15: apply_party_masked(count=0x03, set=0x40, and=0x00, or=0x00)
16: apply_party(count=0x04, op=0x01, val=0x80)
17: if cond: skip_tokens(3)
# skip -> apply_party(count=0x05, op=0x01, val=0x80)
18: apply_party_masked(count=0x04, set=0x3E, and=0x00, or=0x00)
19: apply_party_masked(count=0x04, set=0x3F, and=0x00, or=0x00)
20: apply_party_masked(count=0x04, set=0x40, and=0x00, or=0x00)
21: apply_party(count=0x05, op=0x01, val=0x80)
22: if cond: skip_tokens(3)
# skip -> apply_party(count=0x06, op=0x01, val=0x80)
23: apply_party_masked(count=0x05, set=0x3E, and=0x00, or=0x00)
24: apply_party_masked(count=0x05, set=0x3F, and=0x00, or=0x00)
25: apply_party_masked(count=0x05, set=0x40, and=0x00, or=0x00)
26: apply_party(count=0x06, op=0x01, val=0x80)
27: if cond: skip_tokens(3)
# skip -> apply_party(count=0x07, op=0x01, val=0x80)
28: apply_party_masked(count=0x06, set=0x3E, and=0x00, or=0x00)
29: apply_party_masked(count=0x06, set=0x3F, and=0x00, or=0x00)
30: apply_party_masked(count=0x06, set=0x40, and=0x00, or=0x00)
31: apply_party(count=0x07, op=0x01, val=0x80)
32: if cond: skip_tokens(3)
# skip -> apply_party(count=0x08, op=0x01, val=0x80)
33: apply_party_masked(count=0x07, set=0x3E, and=0x00, or=0x00)
34: apply_party_masked(count=0x07, set=0x3F, and=0x00, or=0x00)
35: apply_party_masked(count=0x07, set=0x40, and=0x00, or=0x00)
36: apply_party(count=0x08, op=0x01, val=0x80)
37: if cond: skip_tokens(3)
# skip -> wait_for_space()
38: apply_party_masked(count=0x08, set=0x3E, and=0x00, or=0x00)
39: apply_party_masked(count=0x08, set=0x3F, and=0x00, or=0x00)
40: apply_party_masked(count=0x08, set=0x40, and=0x00, or=0x00)
41: wait_for_space()
42: clear_current_tile_event_flag()
Event 09 — triggers: (15,2)/DIR_W?
04 0c
00: show_text_above_door(str[12] "No Archers!")
Event 10 — triggers: (0,1)/DIR_W?
04 0d
00: show_text_above_door(str[13] "No Sorcerers!")
Event 11 — triggers: (8,10)/DIR_W?, (14,10)/DIR_E?
04 0e
00: show_text_above_door(str[14] "No Dwarves!")
Event 12 — triggers: (1,2)/DIR_S?, (9,7)/DIR_E?, (10,1)/DIR_W?, (11,7)/DIR_E?
04 0f
00: show_text_above_door(str[15] "Guards")
Event 13 — triggers: (3,2)/DIR_S?, (12,2)/DIR_N?, (12,13)/DIR_N?
04 10
00: show_text_above_door(str[16] "Isolation")
Event 14 — triggers: (3,8)/DIR_S?, (3,9)/DIR_S?, (3,10)/0xA0, (3,11)/0xA0, (3,12)/0xA0, (3,13)/0xA0, (3,14)/0xA0, (3,15)/0xA0, (5,7)/DIR_E?, (7,7)/DIR_E?, (8,0)/0xA0, (8,1)/DIR_N?, (8,2)/DIR_S?, (8,3)/DIR_N?, (8,4)/DIR_S?, (8,5)/DIR_N?, (8,6)/DIR_S?
04 11
00: show_text_above_door(str[17] "Bad Guys")
Event 15 — triggers: (3,0)/DIR_S?, (3,4)/0xA0, (3,6)/0xA0, (12,1)/DIR_N?, (12,3)/DIR_N?, (12,4)/DIR_S?, (12,5)/DIR_N?, (12,6)/DIR_S?, (13,7)/DIR_E?, (15,7)/0x50
04 12
00: show_text_above_door(str[18] "Really Bad Guys")
Event 16 — triggers: (0,7)/DIR_W?, (6,13)/0x50, (8,13)/0x50, (11,13)/0x50, (12,0)/DIR_S?, (13,13)/DIR_E?, (14,13)/DIR_W?, (15,13)/DIR_E?
04 13
00: show_text_above_door(str[19] "Very Bad Guys")
-
[00] -
[01]Stairs going up. Ascend (y/n)? -
[02]"What's a nice party like you doing / in a drab dungeon like this? Hillstone / Dungeon is much more exciting. Follow / me there (Y/n)?" -
[03]Stairs down. Take them (y/n)? -
[04]Shazam! You're sucked away. -
[05]You are teleported elsewhere. -
[06]You have found an Amber Skull! -
[07]You have found a Topaz Shard! -
[08]Steam rises from a magical well. / Will you sample the water (y/n)? -
[09]Who will drink (1-8)? -
[10]A shower of soft pellets cascades / upon the party. You feel different. -
[11]You have entered an unauthorized area. / Pay the fine! -
[12]No Archers! -
[13]No Sorcerers! -
[14]No Dwarves! -
[15]Guards -
[16]Isolation -
[17]Bad Guys -
[18]Really Bad Guys -
[19]Very Bad Guys -
[20]*** Backpacks Full *** -
[21]The sign said NO DWARVES! -
[22]Sorry, benefits are given only once / per moon phase. -
[23]
Generated by tools/build_event_location_docs.py from event.dat. Decoder: tools/decode_event.py.
- Docs Wiki Hub ← full doc index
- Getting Started ← read this first
- Overview
- Workspace Notes
- Open Questions
- Full Analysis
- Game Remake
- Startup and Init
- Runtime Memory Map
- Main Loop and Map
- Exploration Input and Options
- Party and Session
- Game State Struct
- Data Hunk mm2 data 00
- Time Era Calendar
- GFX Loading
- ANM TV Format
- PC DOS graphics
- SNES graphics
- 3D View and Game Screen
- Amiga 3D Render Process
- Scripted Scene Graphics
- Event Graphics Opcodes
- Title Screen Assets
- Title Screen Animation
- Format inventory
- items.dat
- monsters.dat
- roster.dat
- attrib.dat
- map.dat
- spells & item use
- event.dat
- Events by location ← 71 maps
- Events hub (numbered)
- Event Script Opcodes
-
Event Script DSL ←
.mm2evtauthoring - Event Text Rendering
- Event Graphics Opcodes
- Combat Overview
- Combat System
- Encounter Tables
- Spell Cast ASM
- monsters.dat abilities
- Spells and item use
- Town Services
- Spell Sources
- Character Mechanics
- Skills and Hirelings
- Commerce Formulas
- Commerce World Services
- Mount Farview Class Quest
- Class Quest HP Bug
- Event Runtime
- Event to String Path
- Embedded Exe Strings
- Copy Protection
- Time Era Calendar
- Game State Struct
- MM1 Overview ← hub + decode status
- MM1 MAZEDATA format
- MM1 to MM2 outdoor
- MM1 WALLPIX by sector
- MM1 art & graphics
- MM1 items / monsters (status)
- MM1 map walker ↗
- MM1 2D maps gallery
- MM1 WALLPIX gallery