From 4faf79f891edcadcb550889bfd77691a512bb4cc Mon Sep 17 00:00:00 2001 From: Connor Olding Date: Tue, 19 Jan 2016 16:35:07 -0800 Subject: [PATCH] add crappy exit value monitor --- Lua/data/_exits_seen.lua | 232 +++++++++++++++++++++++++++++++++++++ Lua/monitor exits used.lua | 37 ++++++ 2 files changed, 269 insertions(+) create mode 100644 Lua/data/_exits_seen.lua create mode 100644 Lua/monitor exits used.lua diff --git a/Lua/data/_exits_seen.lua b/Lua/data/_exits_seen.lua new file mode 100644 index 0000000..bd760ba --- /dev/null +++ b/Lua/data/_exits_seen.lua @@ -0,0 +1,232 @@ +return { + ["0000"] = true, + ["0400"] = true, + ["0800"] = true, + ["0E00"] = true, + ["0E10"] = true, + ["1500"] = true, + ["1C00"] = true, + ["2000"] = true, + ["2010"] = true, + ["2020"] = true, + ["2030"] = true, + ["2050"] = true, + ["2060"] = true, + ["20B0"] = true, + ["20C0"] = true, + ["20D0"] = true, + ["20E0"] = true, + ["2200"] = true, + ["2210"] = true, + ["2220"] = true, + ["2230"] = true, + ["2240"] = true, + ["2260"] = true, + ["2270"] = true, + ["22A0"] = true, + ["22C0"] = true, + ["2400"] = true, + ["2600"] = true, + ["2800"] = true, + ["2A00"] = true, + ["2C00"] = true, + ["2E10"] = true, + ["3200"] = true, + ["3210"] = true, + ["3400"] = true, + ["3410"] = true, + ["3420"] = true, + ["3430"] = true, + ["3440"] = true, + ["3450"] = true, + ["3460"] = true, + ["3600"] = true, + ["3A00"] = true, + ["3C00"] = true, + ["3E00"] = true, + ["3E20"] = true, + ["3E30"] = true, + ["4000"] = true, + ["4010"] = true, + ["4020"] = true, + ["4030"] = true, + ["4050"] = true, + ["4060"] = true, + ["4080"] = true, + ["4090"] = true, + ["40A0"] = true, + ["4200"] = true, + ["4400"] = true, + ["4410"] = true, + ["4600"] = true, + ["4610"] = true, + ["4620"] = true, + ["4630"] = true, + ["4640"] = true, + ["4800"] = true, + ["4A00"] = true, + ["4C00"] = true, + ["4C10"] = true, + ["4C20"] = true, + ["5000"] = true, + ["5010"] = true, + ["5020"] = true, + ["5030"] = true, + ["5040"] = true, + ["5050"] = true, + ["5200"] = true, + ["5400"] = true, + ["5410"] = true, + ["5420"] = true, + ["5430"] = true, + ["5440"] = true, + ["5450"] = true, + ["5460"] = true, + ["5470"] = true, + ["5480"] = true, + ["5490"] = true, + ["54A0"] = true, + ["5600"] = true, + ["5800"] = true, + ["5E00"] = true, + ["5E10"] = true, + ["6000"] = true, + ["6010"] = true, + ["6020"] = true, + ["6030"] = true, + ["6040"] = true, + ["6050"] = true, + ["6060"] = true, + ["6200"] = true, + ["6400"] = true, + ["6800"] = true, + ["6810"] = true, + ["6820"] = true, + ["6830"] = true, + ["6840"] = true, + ["6850"] = true, + ["6860"] = true, + ["6870"] = true, + ["6880"] = true, + ["68C0"] = true, + ["6A00"] = true, + ["6A10"] = true, + ["6A20"] = true, + ["6A30"] = true, + ["6A40"] = true, + ["6A50"] = true, + ["6C00"] = true, + ["7000"] = true, + ["7010"] = true, + ["7020"] = true, + ["7030"] = true, + ["7040"] = true, + ["7050"] = true, + ["7060"] = true, + ["7200"] = true, + ["7400"] = true, + ["7600"] = true, + ["7610"] = true, + ["7A00"] = true, + ["7A10"] = true, + ["7A20"] = true, + ["8000"] = true, + ["8400"] = true, + ["8410"] = true, + ["8420"] = true, + ["8430"] = true, + ["8440"] = true, + ["8450"] = true, + ["8460"] = true, + ["8470"] = true, + ["8480"] = true, + ["8490"] = true, + ["8600"] = true, + ["8620"] = true, + ["8E00"] = true, + ["9000"] = true, + ["9010"] = true, + ["9200"] = true, + ["9210"] = true, + ["9220"] = true, + ["9230"] = true, + ["9250"] = true, + ["9400"] = true, + ["9420"] = true, + ["9430"] = true, + ["9600"] = true, + ["9800"] = true, + ["9A10"] = true, + ["9A20"] = true, + ["9A30"] = true, + ["9A40"] = true, + ["9A60"] = true, + ["9C00"] = true, + ["9E00"] = true, + A000 = true, + A010 = true, + A020 = true, + A200 = true, + A400 = true, + A600 = true, + A800 = true, + A810 = true, + AA00 = true, + AA10 = true, + AA20 = true, + AC00 = true, + AC10 = true, + B000 = true, + B010 = true, + B200 = true, + B210 = true, + B220 = true, + B400 = true, + B410 = true, + B420 = true, + BA00 = true, + BC00 = true, + BC10 = true, + C000 = true, + C010 = true, + C200 = true, + CA00 = true, + CE00 = true, + CE30 = true, + D000 = true, + D200 = true, + D210 = true, + D220 = true, + D230 = true, + D240 = true, + D250 = true, + D260 = true, + D270 = true, + D280 = true, + D290 = true, + D2A0 = true, + D2B0 = true, + D400 = true, + D410 = true, + D420 = true, + D430 = true, + D440 = true, + D450 = true, + D460 = true, + D470 = true, + D480 = true, + D600 = true, + D610 = true, + D620 = true, + D630 = true, + D640 = true, + D800 = true, + D810 = true, + D820 = true, + D840 = true, + D850 = true, + D860 = true, + D870 = true, + DA00 = true, + DA10 = true, +} diff --git a/Lua/monitor exits used.lua b/Lua/monitor exits used.lua new file mode 100644 index 0000000..1cdedfe --- /dev/null +++ b/Lua/monitor exits used.lua @@ -0,0 +1,37 @@ +require "lib.setup" +require "boilerplate" +require "addrs" +require "serialize" + +local entrance_names = require "data.entrance names" + +local fn = mm and 'data/_exits_seen.lua' or 'data/_exits_seen_oot.lua' +local exits_seen = deserialize(fn) or {} + +-- one-way entrances +-- 2C00 going to top of clock tower (usually) + +-- one-way exits +-- 5010 thrown out of deku palace +-- 8490 down ikana waterfall +-- 3440 into castle from above +-- 3450 into trap fall from above castle blah + +-- TODO: get peeking into/out of shop +-- TODO: get blue warp in deku race +-- TODO: is getting thrown out after sonata different? +-- TODO: get graveyard stuff + +-- TODO: mark more one-way stuff (remember: it's anything that isn't paired!) + +while true do + local exit_id = addrs.warp_destination() + local exit_hex = ('%04X'):format(exit_id) + local frame = emu.framecount() + if not exits_seen[exit_hex] then + exits_seen[exit_hex] = true + print(frame, exit_hex) + serialize(fn, exits_seen) + end + emu.frameadvance() +end