-
Notifications
You must be signed in to change notification settings - Fork 0
Event Loc 12 A3
Navigation: Home - Wiki - Event Loc 12 A3
-
event.dat offset
0x004477, length 1325 bytes - Map: map screen 12; overland sector A3
-
Record kind:
standard - Triggers: 30; script segments: 17; strings: 19
| Tile (y,x) | pos | Event | Condition |
|---|---|---|---|
| (0,6) | 0x06 |
3 | ANY_DIR |
| (0,14) | 0x0E |
3 | ANY_DIR |
| (1,4) | 0x14 |
14 | ANY_DIR |
| (1,8) | 0x18 |
2 | ANY_DIR |
| (1,12) | 0x1C |
3 | ANY_DIR |
| (2,2) | 0x22 |
4 | ANY_DIR |
| (2,10) | 0x2A |
3 | ANY_DIR |
| (2,14) | 0x2E |
14 | ANY_DIR |
| (4,13) | 0x4D |
13 | ANY_DIR |
| (5,1) | 0x51 |
13 | ANY_DIR |
| (5,8) | 0x58 |
8 | ANY_DIR |
| (6,5) | 0x65 |
8 | ANY_DIR |
| (6,15) | 0x6F |
13 | ANY_DIR |
| (7,7) | 0x77 |
1 | ANY_DIR |
| (8,0) | 0x80 |
14 | ANY_DIR |
| (8,2) | 0x82 |
13 | ANY_DIR |
| (8,10) | 0x8A |
5 | DIR_N?+DIR_E? |
| (9,9) | 0x99 |
5 | DIR_E? |
| (9,12) | 0x9C |
9 | ANY_DIR |
| (10,9) | 0xA9 |
5 | DIR_E? |
| (11,2) | 0xB2 |
11 | ANY_DIR |
| (11,10) | 0xBA |
5 | DIR_S? |
| (11,11) | 0xBB |
5 | DIR_S? |
| (11,12) | 0xBC |
5 | DIR_S? |
| (11,13) | 0xBD |
5 | DIR_S? |
| (13,1) | 0xD1 |
7 | DIR_W? |
| (14,0) | 0xE0 |
15 | ANY_DIR |
| (14,1) | 0xE1 |
6 | DIR_W? |
| (14,8) | 0xE8 |
12 | ANY_DIR |
| (14,14) | 0xEE |
10 | ANY_DIR |
Event 01 — triggers: (7,7)/ANY_DIR
0e 5d
00: exec_selector(0x5D)
Event 02 — triggers: (1,8)/ANY_DIR
17 11 00 11 01 14 02 04 09 10 01 0f 0e 5e
00: cond = load_var8(group=0x11, index=0x00)
01: if not cond: skip_tokens(1)
# skip -> show_text_block(str[4] "Squirming prisoners are staked to the / ground. Free them (y/n)?")
02: clear_current_tile_event_flag()
03: show_text_block(str[4] "Squirming prisoners are staked to the / ground. Free them (y/n)?")
04: cond = prompt_yes_no()
05: if cond: skip_tokens(1)
# skip -> exec_selector(0x5E)
06: end_script()
07: exec_selector(0x5E)
Event 03 — triggers: (0,6)/ANY_DIR, (0,14)/ANY_DIR, (1,12)/ANY_DIR, (2,10)/ANY_DIR
2b 05 02 04 09 10 01 0f 12 76 76 76 00 00 00 00 00 00 00 00 00 14
00: skip_tokens(5)
# skip -> clear_current_tile_event_flag()
01: show_text_block(str[4] "Squirming prisoners are staked to the / ground. Free them (y/n)?")
02: cond = prompt_yes_no()
03: if cond: skip_tokens(1)
# skip -> encounter_setup(monsters=76 76 76 00 00 00 00 00 00 00, flags=00 00)
04: end_script()
05: encounter_setup(monsters=76 76 76 00 00 00 00 00 00 00, flags=00 00)
06: clear_current_tile_event_flag()
Event 04 — triggers: (2,2)/ANY_DIR
2b 1a 02 03 15 02 0c 00 10 01 18 02 43 00 81 15 03 0c 00 10 01 18 03 43 00 81 15 04 0c 00 10 01 18 04 43 00 81 15 05 0c 00 10 01 18 05 43 00 81 15 06 0c 00 10 01 18 06 43 00 81 15 07 0c 00 10 01 18 07 43 00 81 15 08 0c 00 10 01 18 08 43 00 81 15 01 0c 00 10 01 18 01 43 00 81 12 e4 e4 e4 e4 e2 e2 e3 e3 e5 e5 00 00 02 06 2a 10 27 00 00 00 58 00 00 00 00 00 05 00 00 07 14
00: skip_tokens(26)
# skip -> show_text_block(str[6] "In the hull of this old ship, you will / find sunken treasure if you sea")
01: show_text_block(str[3] "A sultry siren's seductive song sweeps / surreptitiously through the sea")
02: apply_party(count=0x02, op=0x0C, val=0x00)
03: if cond: skip_tokens(1)
# skip -> apply_party(count=0x03, op=0x0C, val=0x00)
04: apply_party_masked(count=0x02, set=0x43, and=0x00, or=0x81)
05: apply_party(count=0x03, op=0x0C, val=0x00)
06: if cond: skip_tokens(1)
# skip -> apply_party(count=0x04, op=0x0C, val=0x00)
07: apply_party_masked(count=0x03, set=0x43, and=0x00, or=0x81)
08: apply_party(count=0x04, op=0x0C, val=0x00)
09: if cond: skip_tokens(1)
# skip -> apply_party(count=0x05, op=0x0C, val=0x00)
10: apply_party_masked(count=0x04, set=0x43, and=0x00, or=0x81)
11: apply_party(count=0x05, op=0x0C, val=0x00)
12: if cond: skip_tokens(1)
# skip -> apply_party(count=0x06, op=0x0C, val=0x00)
13: apply_party_masked(count=0x05, set=0x43, and=0x00, or=0x81)
14: apply_party(count=0x06, op=0x0C, val=0x00)
15: if cond: skip_tokens(1)
# skip -> apply_party(count=0x07, op=0x0C, val=0x00)
16: apply_party_masked(count=0x06, set=0x43, and=0x00, or=0x81)
17: apply_party(count=0x07, op=0x0C, val=0x00)
18: if cond: skip_tokens(1)
# skip -> apply_party(count=0x08, op=0x0C, val=0x00)
19: apply_party_masked(count=0x07, set=0x43, and=0x00, or=0x81)
20: apply_party(count=0x08, op=0x0C, val=0x00)
21: if cond: skip_tokens(1)
# skip -> apply_party(count=0x01, op=0x0C, val=0x00)
22: apply_party_masked(count=0x08, set=0x43, and=0x00, or=0x81)
23: apply_party(count=0x01, op=0x0C, val=0x00)
24: if cond: skip_tokens(1)
# skip -> encounter_setup(monsters=E4 E4 E4 E4 E2 E2 E3 E3 E5 E5, flags=00 00)
25: apply_party_masked(count=0x01, set=0x43, and=0x00, or=0x81)
26: encounter_setup(monsters=E4 E4 E4 E4 E2 E2 E3 E3 E5 E5, flags=00 00)
27: show_text_block(str[6] "In the hull of this old ship, you will / find sunken treasure if you sea")
28: set_treasure(gold/exp=10000, gems=0, items=[88, 0, 0])
29: wait_for_space()
30: clear_current_tile_event_flag()
Event 05 — triggers: (8,10)/DIR_N?+DIR_E?, (9,9)/DIR_E?, (10,9)/DIR_E?, (11,10)/DIR_S?, (11,11)/DIR_S?, (11,12)/DIR_S?, (11,13)/DIR_S?
01 07 29
00: show_text_basic(str[7] "Rotting corpses line the bay!")
01: set_abort_and_exit()
Event 06 — triggers: (14,1)/DIR_W?
02 08 09 10 02 02 09 29 02 0a 18 00 43 f7 08 29
00: show_text_block(str[8] "Two fountains sit side by side. / Drink from the right one (y/n)?")
01: cond = prompt_yes_no()
02: if cond: skip_tokens(2)
# skip -> show_text_block(str[10] "A voice yells, "Ha, ha! It's poison!"")
03: show_text_block(str[9] "A voice whispers, "You'll never know / what you're missing!"")
04: set_abort_and_exit()
05: show_text_block(str[10] "A voice yells, "Ha, ha! It's poison!"")
06: apply_party_masked(count=0x00, set=0x43, and=0xF7, or=0x08)
07: set_abort_and_exit()
Event 07 — triggers: (13,1)/DIR_W?
02 0b 09 10 02 02 0c 29 02 0d 1f 00 23 01 19 00 00 29
00: show_text_block(str[11] "Two fountains sit side by side. / Drink from the left one (y/n)?")
01: cond = prompt_yes_no()
02: if cond: skip_tokens(2)
# skip -> show_text_block(str[13] "A voice exclaims, "Darn, I thought I / could fool you!" (+25 Speed)")
03: show_text_block(str[12] "A voice whispers, "Good, you should / drink from the right fountain anyw")
04: set_abort_and_exit()
05: show_text_block(str[13] "A voice exclaims, "Darn, I thought I / could fool you!" (+25 Speed)")
06: party_effect(sel=0x00, 23 01 19 00 00)
07: set_abort_and_exit()
Event 08 — triggers: (5,8)/ANY_DIR, (6,5)/ANY_DIR
2b 02 02 0e 12 85 74 74 00 00 00 00 00 00 00 00 00 14
00: skip_tokens(2)
# skip -> clear_current_tile_event_flag()
01: show_text_block(str[14] "Dragons strike from above!")
02: encounter_setup(monsters=85 74 74 00 00 00 00 00 00 00, flags=00 00)
03: clear_current_tile_event_flag()
Event 09 — triggers: (9,12)/ANY_DIR
2b 01 12 92 aa bb 8e 7a 5d 4c 3f 3c 3b 00 00 14
00: skip_tokens(1)
# skip -> clear_current_tile_event_flag()
01: encounter_setup(monsters=92 AA BB 8E 7A 5D 4C 3F 3C 3B, flags=00 00)
02: clear_current_tile_event_flag()
Event 10 — triggers: (14,14)/ANY_DIR
2b 01 12 2d 2d 2d 2d 2d 2d 2d 2d 2d 2d 00 00 14
00: skip_tokens(1)
# skip -> clear_current_tile_event_flag()
01: encounter_setup(monsters=2D 2D 2D 2D 2D 2D 2D 2D 2D 2D, flags=00 00)
02: clear_current_tile_event_flag()
Event 11 — triggers: (11,2)/ANY_DIR
2b 01 12 65 00 00 00 00 00 00 00 00 00 00 00 14
00: skip_tokens(1)
# skip -> clear_current_tile_event_flag()
01: encounter_setup(monsters=65 00 00 00 00 00 00 00 00 00, flags=00 00)
02: clear_current_tile_event_flag()
Event 12 — triggers: (14,8)/ANY_DIR
2b 01 12 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 00 00 14
00: skip_tokens(1)
# skip -> clear_current_tile_event_flag()
01: encounter_setup(monsters=2B 2B 2B 2B 2B 2B 2B 2B 2B 2B, flags=00 00)
02: clear_current_tile_event_flag()
Event 13 — triggers: (4,13)/ANY_DIR, (5,1)/ANY_DIR, (6,15)/ANY_DIR, (8,2)/ANY_DIR
01 0f 07 0d 09 31 00 28 00 0c 0c 48
00: show_text_basic(str[15] "A tidal wave sweeps the party away!")
01: wait_for_space()
02: engine_call(0x09)
03: for_party(mask=0x00): call(0x28,0x00)
04: map_transition(0x0C, 0x48)
Event 14 — triggers: (1,4)/ANY_DIR, (2,14)/ANY_DIR, (8,0)/ANY_DIR
01 10 07 0d 09 0c 0f 86
00: show_text_basic(str[16] "A whirlpool sucks the party under!")
01: wait_for_space()
02: engine_call(0x09)
03: map_transition(0x0F, 0x86)
Event 15 — triggers: (14,0)/ANY_DIR
2b 02 02 11 12 65 00 00 00 00 00 00 00 00 00 00 00 14
00: skip_tokens(2)
# skip -> clear_current_tile_event_flag()
01: show_text_block(str[17] ""Uh oh! You caught me!"")
02: encounter_setup(monsters=65 00 00 00 00 00 00 00 00 00, flags=00 00)
03: clear_current_tile_event_flag()
-
[00] -
[01]N -
[02]<SENTINEL_Z> -
[03]A sultry siren's seductive song sweeps / surreptitiously through the sea air. -
[04]Squirming prisoners are staked to the / ground. Free them (y/n)? -
[05]A sultry siren's seductive song sweeps / surreptitiously through the sea air. / The party is hypnotically drawn toward / the sweet sound. All males are dead. -
[06]In the hull of this old ship, you will / find sunken treasure if you search. -
[07]Rotting corpses line the bay! -
[08]Two fountains sit side by side. / Drink from the right one (y/n)? -
[09]A voice whispers, "You'll never know / what you're missing!" -
[10]A voice yells, "Ha, ha! It's poison!" -
[11]Two fountains sit side by side. / Drink from the left one (y/n)? -
[12]A voice whispers, "Good, you should / drink from the right fountain anyway." -
[13]A voice exclaims, "Darn, I thought I / could fool you!" (+25 Speed) -
[14]Dragons strike from above! -
[15]A tidal wave sweeps the party away! -
[16]A whirlpool sucks the party under! -
[17]"Uh oh! You caught me!" -
[18]
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
- Amiga audio in exe ← Paula / DATA / remake
- Controls: Sounds / Walk Beep
- MM2 music format (superseded)
- Title/death audio paths (superseded)
- Known songs catalog (superseded)
- 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