mirror of
https://github.com/notwa/mm
synced 2024-11-05 02:29:03 -08:00
more work on OoT
This commit is contained in:
parent
e4a32dd945
commit
c8a222883a
4 changed files with 103 additions and 53 deletions
|
@ -71,7 +71,7 @@ end
|
|||
local common = {
|
||||
exit_value = AL(0x02, 2),
|
||||
age_modifier = AL(0x04, 4),
|
||||
--cutscene_status = AL(0x0A, 2),
|
||||
cutscene_status = AL(0x0A, 2), -- "cutscene number" 0xFFFx
|
||||
time = AL(0x0C, 2),
|
||||
day_night = AL(0x10, 4),
|
||||
--time_speed = AL(0x14, 4),
|
||||
|
@ -80,27 +80,24 @@ local common = {
|
|||
name = AL(0x24, 8),
|
||||
max_hearts = AL(0x2E, 2),
|
||||
hearts = AL(0x30, 2),
|
||||
--has_magic = AL(0x38, 1), -- ?
|
||||
has_magic = AL(0x32, 1), -- ?
|
||||
magic = AL(0x33, 1),
|
||||
rupees = AL(0x34, 2),
|
||||
--has_normal_magic = AL(0x40, 1),
|
||||
--has_double_magic = AL(0x41, 1),
|
||||
navi_timer = AL(0x38, 2),
|
||||
equip_tunic_boots = AL(0x70, 1),
|
||||
equip_sword_shield = AL(0x71, 1),
|
||||
inventory_items = AL(0x74, 24),
|
||||
inventory_counts = AL(0x8C, 24),
|
||||
inventory_quantities= AL(0x8C, 24),
|
||||
--magic_beans_avail = AL(0x9B, 1),
|
||||
--tunic_boots = AL(0x9C, 1), -- FIXME
|
||||
--sword_shield = AL(0x9C, 1), -- FIXME
|
||||
deku_upgrades = AL(0xA1, 1),
|
||||
wallet_size = AL(0xA2, 1), -- also bullet bag & dive meter in OoT
|
||||
quiver_bag = AL(0xA3, 1), -- also strength in OoT
|
||||
--quest_items = AL(0xBC, 4),
|
||||
tunic_boots = AL(0x9C, 1),
|
||||
sword_shield = AL(0x9D, 1),
|
||||
upgrades = AL(0xA1, 3),
|
||||
quest_items = AL(0xA4, 4),
|
||||
--items_wft = AL(0xC0, 1),
|
||||
--keys_wft = AL(0xCA, 1),
|
||||
--doubled_hearts = AL(0xD3, 1), -- set to 20 by the game
|
||||
doubled_hearts = AL(0xCF, 1), -- set to 20 by the game
|
||||
--strange_string = AL(0xDE, 6),
|
||||
--scene_flags_save = AL(0x470, 0x960),
|
||||
scene_flags_save = AL(0xD4, 0xB0C), -- 0x1C each
|
||||
--slulltula_count_wf = AL(0xEC0, 2),
|
||||
--archery = AL(0xF00, 1),
|
||||
--disable_c_buttons = AL(0xF4A, 1), -- 8
|
||||
|
@ -109,7 +106,7 @@ local common = {
|
|||
--map_visible = AL(0xF62, 2),
|
||||
|
||||
inventory = {
|
||||
b_button = AL(0x68, 1),
|
||||
b_button_item = AL(0x68, 1),
|
||||
c_left_item = AL(0x69, 1),
|
||||
c_down_item = AL(0x6A, 1),
|
||||
c_right_item = AL(0x6B, 1),
|
||||
|
@ -136,25 +133,26 @@ local common = {
|
|||
hammer = AL(0x83, 1),
|
||||
light_arrows = AL(0x84, 1),
|
||||
nayrus_love = AL(0x85, 1),
|
||||
bottle_1 = AL(0x85, 1),
|
||||
bottle_2 = AL(0x86, 1),
|
||||
bottle_3 = AL(0x87, 1),
|
||||
bottle_4 = AL(0x88, 1),
|
||||
trade_1 = AL(0x89, 1),
|
||||
trade_2 = AL(0x8A, 1),
|
||||
bottle_1 = AL(0x86, 1),
|
||||
bottle_2 = AL(0x87, 1),
|
||||
bottle_3 = AL(0x88, 1),
|
||||
bottle_4 = AL(0x89, 1),
|
||||
trade_1 = AL(0x8A, 1),
|
||||
trade_2 = AL(0x8B, 1),
|
||||
},
|
||||
quantities = {
|
||||
arrows = AL(0xA1, 1), -- FIXME
|
||||
bombs = AL(0xA6, 1),
|
||||
bombchu = AL(0xA7, 1),
|
||||
sticks = AL(0xA8, 1),
|
||||
nuts = AL(0xA9, 1),
|
||||
beans = AL(0xAA, 1),
|
||||
kegs = AL(0xAC, 1),
|
||||
sticks = AL(0x8C, 1),
|
||||
nuts = AL(0x8D, 1),
|
||||
bombs = AL(0x8E, 1),
|
||||
arrows = AL(0x8F, 1),
|
||||
seeds = AL(0x92, 1),
|
||||
bombchu = AL(0x94, 1),
|
||||
beans = AL(0x9A, 1),
|
||||
},
|
||||
|
||||
camera_target = AG(0x270, 4),
|
||||
actor_count = AG(0x1C2C, 1),
|
||||
-- TODO: use array here instead of individual keys
|
||||
actor_count_0 = AG(0x1C30, 4),
|
||||
actor_first_0 = AG(0x1C34, 4),
|
||||
actor_count_1 = AG(0x1C38, 4),
|
||||
|
@ -184,5 +182,5 @@ local common = {
|
|||
}
|
||||
|
||||
return merge(common, {
|
||||
|
||||
target_style = AL(0x140C, 1),
|
||||
})
|
||||
|
|
|
@ -33,10 +33,10 @@ function Actor(addr)
|
|||
damage_table = AA(0xA0, 4),
|
||||
hp = AA(0xB7, 1),
|
||||
angle = AA(0xBA, 2),
|
||||
foot_left_x = AA(0xD4, 'f'),
|
||||
foot_left_x = AA(0xD4, 'f'), -- tested on Link, may be other things
|
||||
foot_left_y = AA(0xD8, 'f'),
|
||||
foot_left_z = AA(0xDC, 'f'),
|
||||
foot_right_x = AA(0xE0, 'f'),
|
||||
foot_right_x = AA(0xE0, 'f'), -- tested on Link, may be other things
|
||||
foot_right_y = AA(0xE4, 'f'),
|
||||
foot_right_z = AA(0xE8, 'f'),
|
||||
camera_rel_x = AA(0xEC, 'f'),
|
||||
|
@ -78,7 +78,7 @@ return {
|
|||
sword_shield = AL(0x6D, 1),
|
||||
inventory_items = AL(0x70, 24),
|
||||
inventory_masks = AL(0x88, 24),
|
||||
inventory_counts = AL(0xA0, 24),
|
||||
inventory_quantities= AL(0xA0, 24),
|
||||
wallet_size = AL(0xBA, 1), -- 0, 16, 32, unused 48
|
||||
quiver_bag = AL(0xBB, 1),
|
||||
quest_items = AL(0xBC, 4),
|
||||
|
@ -128,7 +128,7 @@ return {
|
|||
bombers_code_5 = AL(0xFFF, 1),
|
||||
|
||||
inventory = {
|
||||
b_button = AL(0x4C, 1),
|
||||
b_button_item = AL(0x4C, 1),
|
||||
c_left_item = AL(0x4D, 1),
|
||||
c_down_item = AL(0x4E, 1),
|
||||
c_right_item = AL(0x4F, 1),
|
||||
|
|
|
@ -21,10 +21,10 @@ return {
|
|||
[0x012]="Dodongo",
|
||||
[0x013]="Keese",
|
||||
[0x014]="Epona",
|
||||
[0x015]="Collectable Field & Dungeon Items",
|
||||
[0x015]="Collectable / Dungeon Items",
|
||||
[0x016]="Small Orange Flame (Fades Away)",
|
||||
[0x017]=unset,
|
||||
[0x018]="Navi & Healing Fairy",
|
||||
[0x018]="Navi / Fairy",
|
||||
[0x019]="Cucco",
|
||||
[0x01A]=unset,
|
||||
[0x01B]="Tektite",
|
||||
|
@ -37,7 +37,7 @@ return {
|
|||
[0x022]=unset,
|
||||
[0x023]="Room Transition Plane",
|
||||
[0x024]="???",
|
||||
[0x025]="Lizalfos & Dinalfos",
|
||||
[0x025]="Lizalfos / Dinalfos",
|
||||
[0x026]="Flagpole",
|
||||
[0x027]="King Dodongo",
|
||||
[0x028]="Gohma",
|
||||
|
@ -57,7 +57,7 @@ return {
|
|||
[0x036]=unset,
|
||||
[0x037]="Skulltula",
|
||||
[0x038]="Torch Slug",
|
||||
[0x039]="Directional Signposts",
|
||||
[0x039]="Directional Sign",
|
||||
[0x03A]="Stinger (Land)",
|
||||
[0x03B]="Environmental Sound Effects",
|
||||
[0x03C]="Generic Horse",
|
||||
|
@ -81,7 +81,7 @@ return {
|
|||
[0x04E]="???",
|
||||
[0x04F]="Kokiri Girl (Early)",
|
||||
[0x050]="Floating Square Platform (Deku Tree)",
|
||||
[0x051]="Spiked Log & Dropdown Ladder",
|
||||
[0x051]="Spiked Log / Dropdown Ladder",
|
||||
[0x052]="Phantom Ganon",
|
||||
[0x053]=unset,
|
||||
[0x054]="Armos",
|
||||
|
@ -93,9 +93,9 @@ return {
|
|||
[0x05A]="Jabu-Jabu",
|
||||
[0x05B]="Zelda's Horse",
|
||||
[0x05C]="Bombable Stairs",
|
||||
[0x05D]="Blue Warp & Rupee-Shaped Prism",
|
||||
[0x05D]="Blue Warp / Rupee-Shaped Prism",
|
||||
[0x05E]="Torch",
|
||||
[0x05F]="Heart Container & Heart Piece???",
|
||||
[0x05F]="Heart Container / Heart Piece???",
|
||||
[0x060]="Mad Scrub",
|
||||
[0x061]="Rotating Ring",
|
||||
[0x062]="Statue Eye Targets",
|
||||
|
@ -110,7 +110,7 @@ return {
|
|||
[0x06B]="Flying Floor Tile",
|
||||
[0x06C]="Master Sword",
|
||||
[0x06D]="Phantom Ganon's Lightning",
|
||||
[0x06E]="Blank Warp Pad & Ocarina Pedestal",
|
||||
[0x06E]="Blank Warp Pad / Ocarina Pedestal",
|
||||
[0x06F]="Goron Prison Bars",
|
||||
[0x070]="Door of Time Collision Model",
|
||||
[0x071]="???",
|
||||
|
@ -119,7 +119,7 @@ return {
|
|||
[0x074]=unset,
|
||||
[0x075]=unset,
|
||||
[0x076]=unset,
|
||||
[0x077]="Grass & Trees",
|
||||
[0x077]="Grass / Trees",
|
||||
[0x078]=unset,
|
||||
[0x079]=unset,
|
||||
[0x07A]=unset,
|
||||
|
@ -144,7 +144,7 @@ return {
|
|||
[0x08D]="???",
|
||||
[0x08E]="Floormaster",
|
||||
[0x08F]="Hylian Soldier (Castle Hedge Maze)",
|
||||
[0x090]="Redead & Gibdo",
|
||||
[0x090]="Redead / Gibdo",
|
||||
[0x091]="Poe Sisters",
|
||||
[0x092]="Golden Gauntlets Rock",
|
||||
[0x093]="???",
|
||||
|
@ -204,7 +204,7 @@ return {
|
|||
[0x0C9]="Saria (Cutscenes)",
|
||||
[0x0CA]="Goron (Cutscenes)",
|
||||
[0x0CB]="Ingo",
|
||||
[0x0CC]="Kotake & Koume",
|
||||
[0x0CC]="Kotake / Koume",
|
||||
[0x0CD]="Boulder Blocking Dodongo's Cavern",
|
||||
[0x0CE]=unset,
|
||||
[0x0CF]="Bombable Wall (Fire Temple)",
|
||||
|
@ -274,7 +274,7 @@ return {
|
|||
[0x10F]="Collectable Quest Items",
|
||||
[0x110]="Small Wooden Crate",
|
||||
[0x111]="Pot",
|
||||
[0x112]="Invisible Collectable Items",
|
||||
[0x112]="Invisible Collectable",
|
||||
[0x113]="Iron Knuckle",
|
||||
[0x114]="Iron Knuckle (Cutscenes)",
|
||||
[0x115]="Skullkid",
|
||||
|
@ -293,7 +293,7 @@ return {
|
|||
[0x122]="Dampé's Ghost",
|
||||
[0x123]="Dampé's Relay Objects",
|
||||
[0x124]="Diving Game Zora",
|
||||
[0x125]="Grass Clump",
|
||||
[0x125]="Grass",
|
||||
[0x126]="Bean Planting Spot",
|
||||
[0x127]="Bombable Boulder",
|
||||
[0x128]=unset,
|
||||
|
@ -321,7 +321,7 @@ return {
|
|||
[0x13E]="Bean Seller",
|
||||
[0x13F]="Carpenter Boss's Son (Lost Woods)",
|
||||
[0x140]="Gate to Ingo's Ranch",
|
||||
[0x141]="Square Sign",
|
||||
[0x141]="Sign",
|
||||
[0x142]="Hylian Soldier (Hyrule Castle)",
|
||||
[0x143]="???",
|
||||
[0x144]="Cucco (Attacking)",
|
||||
|
@ -334,10 +334,10 @@ return {
|
|||
[0x14B]="Bombchu Bowling Alley Employee",
|
||||
[0x14C]="???",
|
||||
[0x14D]="Kaepora Gaebora",
|
||||
[0x14E]="Silver Gauntlets Boulder",
|
||||
[0x14F]="Graveyard Flower",
|
||||
[0x14E]="Rock / Boulder", -- "Silver Gauntlets Boulder",
|
||||
[0x14F]="? Graveyard Flower",
|
||||
[0x150]="Sun Switch",
|
||||
[0x151]="Groups of Rocks & Bushes",
|
||||
[0x151]="Groups of Rocks / Bushes",
|
||||
[0x152]="Goron (Early)",
|
||||
[0x153]="Windmill Man",
|
||||
[0x154]=unset,
|
||||
|
@ -355,13 +355,13 @@ return {
|
|||
[0x160]="Big Water Spout",
|
||||
[0x161]=unset,
|
||||
[0x162]="Running Man (Hyrule Field & Ending)",
|
||||
[0x163]="Kokiri Spawner",
|
||||
[0x163]="Kokiri Child",
|
||||
[0x164]="King Zora",
|
||||
[0x165]="Weather-Changing Tag",
|
||||
[0x166]="Bongo Bongo's Drum Head",
|
||||
[0x167]="Kakariko Rooftop Man",
|
||||
[0x168]="Bombchu Bowling Prizes???",
|
||||
[0x169]="Iron Knuckle Throne & Columns",
|
||||
[0x169]="Iron Knuckle Throne / Columns",
|
||||
[0x16A]="Carpet Merchant",
|
||||
[0x16B]="Carpet Merchant's Magic Carpet",
|
||||
[0x16C]="Graveyard Boy",
|
||||
|
@ -387,7 +387,7 @@ return {
|
|||
[0x180]=unset,
|
||||
[0x181]="Grotto Treasure Chest",
|
||||
[0x182]="Ending Cutscene NPCs",
|
||||
[0x183]="???",
|
||||
[0x183]="? Zelda Lullaby Fairy?",
|
||||
[0x184]="Great Fairy's Healing Beam",
|
||||
[0x185]="Checkable Spot",
|
||||
[0x186]="Patrolling Gerudo in Purple",
|
||||
|
@ -430,7 +430,7 @@ return {
|
|||
[0x1AB]="Group of Rupees",
|
||||
[0x1AC]="Honey & Darling",
|
||||
[0x1AD]="Haggling Shoppers",
|
||||
[0x1AE]="Goron & Biggoron",
|
||||
[0x1AE]="Goron / Biggoron",
|
||||
[0x1AF]="Wolfos",
|
||||
[0x1B0]="Stalchild",
|
||||
[0x1B1]="???",
|
||||
|
|
52
Lua/oneshot oot.lua
Normal file
52
Lua/oneshot oot.lua
Normal file
|
@ -0,0 +1,52 @@
|
|||
local addrs = require "addrs"
|
||||
require "item values"
|
||||
|
||||
local inv = addrs.inventory
|
||||
local quantities = addrs.quantities
|
||||
|
||||
_=addrs.target_style and addrs.target_style(1)
|
||||
|
||||
addrs.hearts (16*20)
|
||||
addrs.max_hearts (16*20)
|
||||
addrs.doubled_hearts(20)
|
||||
addrs.has_magic (1)
|
||||
addrs.magic (0x60)
|
||||
addrs.rupees (500)
|
||||
|
||||
addrs.tunic_boots (0xFF) -- normally 0x77
|
||||
addrs.sword_shield (0xF7) -- normally 0x77?
|
||||
addrs.upgrades (0x36E458) -- normally ?
|
||||
addrs.quest_items (0x00FFFFFF)
|
||||
|
||||
inv.deku_stick (0x00)
|
||||
inv.deku_nut (0x01)
|
||||
inv.bombs (0x02)
|
||||
inv.bow (0x03)
|
||||
inv.fire_arrows (0x04)
|
||||
inv.dins_fire (0x05)
|
||||
inv.slingshot (0x06)
|
||||
inv.ocarina (0x08)
|
||||
inv.bombchu (0x09)
|
||||
inv.hookshot (0x0B)
|
||||
inv.ice_arrows (0x0C)
|
||||
inv.farores_wind (0x0D)
|
||||
inv.boomerang (0x0E)
|
||||
inv.lens_of_truth (0x0F)
|
||||
inv.magic_beans (0x10)
|
||||
inv.hammer (0x11)
|
||||
inv.light_arrows (0x12)
|
||||
inv.nayrus_love (0x13)
|
||||
inv.bottle_1 (0x14)
|
||||
inv.bottle_2 (0x18)
|
||||
inv.bottle_3 (0x19)
|
||||
inv.bottle_4 (0x1C)
|
||||
--trade_1 (0xFF)
|
||||
--trade_2 (0xFF)
|
||||
|
||||
quantities.sticks (69)
|
||||
quantities.nuts (69)
|
||||
quantities.bombs (69)
|
||||
quantities.arrows (69)
|
||||
quantities.seeds (69)
|
||||
quantities.bombchu (69)
|
||||
quantities.beans (69)
|
Loading…
Reference in a new issue