Jump to content
  • 0

Randomizing Chests, people who give masks and shops in MM?


TyranitarTime
 Share

Question

Recommended Posts

  • 0

As it stands, I don't know if I'm even going to finish this now. The randomisation and making sure items are accessible is not a problem, but there's a lot of things that can still potentially make the game unbeatable which I did not anticipate. I'll think about this for a while because I did want to finish this, it's just going to be a lot more work than I expected.

Link to comment
Share on other sites

  • 0

Basically, each time an NPC wants to give you a mask or whatever, they'll check your inventory to decide if they gave you that item before. Since things have been randomised, let's say as an example you could get Kafei's Mask from Grog in place of the Bunny Hood; if you then went to the Mayor's Residence and talked to the mayor's wife, she'll see that you already have Kafei's Mask and therefore you'll never be able to get the item she should give to you. In some situations this could prevent you from getting key items, which is something I really wanted to avoid.

I'll take one more look tomorrow because I'm thinking I can probably find a quick way around this, otherwise I guess I'll just release what's done already.

Link to comment
Share on other sites

  • 0

I'm probably about half way to finding all the checks I need but it does involve having to play through most of the game, so it's taking a while (not that I mind actually playing for once). Once I find the rest I'll make sure I've found and fixed all the bugs caused by the stuff I've changed and then test it out a bit. Hopefully it'll be fully playable in three or four days and then I'll see what I can do about making a wad file for it so it can be played on VC too, though I haven't had any luck trying to inject Majora's Mask ROMs before so somebody else might need to try that.

Link to comment
Share on other sites

  • 0

Sorry this has taken such a long time, I just really haven't had much motivation to work on it for a while. That said, the bulk of the work left to do is just copying the main part of the hack to my ROM (again) and then I'll play through it for a bit (again) to make sure everything works. I should be able to release this later tonight or tomorrow.

 

I'll make a patch or whatever tomorrow, I'm tired now.

Edited by DeathBasket
Link to comment
Share on other sites

  • 0

PPF patch to apply to a normal Majora's Mask (U) ROM: (link removed while I fix this up)

 

I'm trying to get it working for VC but I'm just getting freezes after the Nintendo logo so far. I'll try a few more times but maybe someone else will be able to get it to work.

  • Like 1
Link to comment
Share on other sites

  • 0

I didn't keep very good notes. Basically this though:

 

 

80112E80(803E6B20, item_number) - item giving function (puts item in inventory only)

used in cutscenes and for things like rupees and item drops in gameplay

item values:

 

0 ocarina

1 bow

2 fire arrow

3 ice arrow

4 light arrow

5 fairy ocarina

6 bomb

7 bombchu

8 deku stick

9 deku nut

a magic bean

b slingshot

c powder keg

d pictobox

e lens of truth

f hookshot

10 gf sword

11 hookshot (OoT)

12 empty bottle

13 red potion

14 green potion

15 blue potion

16 fairy

17 deku princess

18 milk

19 milk (half)

1a fish

1b bugs

1c blue fire

1d poe

1e big poe

1f water

20 hot water

21 zora egg

22 gold dust

23 mushroom

24 seahorse

25 chateau romani

26 eel

27 empty bottle

28 moon's tear

29 town deed

2a swamp deed

2b mountain deed

2c ocean deed

2d room key

2e mama's letter

2f letter to kafei

30 pendant

31 map

32 deku mask

33 goron mask

34 zora mask

35 fierce deity's mask

36 mask of truth

37 kafei's mask

38 all night mask

39 bunny hood

3a keaton mask

3b garo's mask

3c romani mask

3d circus leader's mask

3e postman's hat

3f couple's mask

40 great fairy's mask

41 gibdo's mask

42 don gero's mask

43 kamaro's mask

44 captain's hat

45 stone mask

46 bremen mask

47 blast mask

48 mask of scents

49 giant's mask

4a bow + fire arrow

4b bow + ice arrow

4c bow + light arrow

4d kokiri sword

4e razor sword

4f gilded sword

50 helix sword (can't equip)

51 hero's shield

52 mirror shield

53 quiver (30)

54 quiver (40)

55 quiver (50)

56 bomb bag (20)

57 bomb bag (30)

58 bomb bag (40)

59 wallet (beta)

5a wallet 2

5b wallet 3

5c fishing rod

5d odolwa's remains

5e goht's remains

5f gyorg's remains

60 twinmold's remains

61 sonata of awakening

62 goron lullaby

63 new wave bossa nova

64 elegy of emptiness

65 oath to order

66 saria's song

67 song of time

68 song of healing

69 epona's song

6a song of soaring

6b song of storms

6c sun's song

6d bomber's notebook

 

7b heart piece

 

83 heart

84 green rupee

85 blue rupee

 

87 red rupee

88 purple rupee

89 silver rupee

 

8e deku nuts (10)

 

93 arrows (10)

94 arrows (20)

 

 

800B8A1C(80410440,803E6B20,item) - puts item in inventory, shows text and object over Link's head

for some reason they used different values for items with this function

item values:

 

 

00 invalid

01 green rupee

02 blue rupee

03 red rupee (no text)

04 red rupee

05 purple rupee

06 silver rupee

07 huge rupee

08 adult wallet

09 giant wallet

0A heart

0B heart

0C piece of heart

0D heart container

0E magic jar

0F large magic jar

10 heart

11 green rupee

12 heart

13 heart

14 bombs

15 5 bombs

16 10 bombs

17 20 bombs

18 bombs

19 deku stick

1A 10 bombchu

1B bomb bag

1C big bomb bag

1D biggest bomb bag

1E arrows

1F arrows

20 arrows

21 arrows

22 bow + quiver (30)

23 large quiver

24 largest quiver

25 fire arrow

26 ice arrow

27 light arrow

28 deku nut

29 5 deku nuts

2A 10 deku nuts

2B deku nut (no text)

2C deku nut (no text)

2D deku nut (no text)

2E 20 bombchu

2F deku stick (no text)

30 deku stick (no text)

31 deku stick (no text)

32 hero's shield

33 mirror shield

34 powder keg

35 magic bean

36 bombchu

37 kokiri sword (no text)

38 razor sword

39 gilded sword

3A 5 bombchu

3B great fairy's sword

3C small key

3D boss key

3E dungeon map

3F compass

40 green rupee

41 hookshot

42 lens of truth

43 pictograph box

44 nothing (no text, gives pictograph box)

45 heart

46 green rupee

47 green rupee

48 green rupee

49 green rupee

4A green rupee

4B green rupee

4C heart

4D green rupee

4E green rupee

4F green rupee

50 bomber's notebook

51 heart

52 gold skulltula spirit

53 green rupee

54 green rupee

55 odolwa's remains (crash)

56 goht's remains (crash)

57 gyorg's remains (crash)

58 twinmold's remains (crash)

59 bottle of red potion

5A empty bottle

5B red potion

5C green potion

5D blue potion

5E fairy

5F deku princess in bottle

60 milk

61 milk (no text) (half milk)

62 fish

63 bugs

64 nothing (no text) (blue fire)

65 poe (gives empty bottle)

66 big poe

67 spring water

68 hot spring water

69 zora egg

6A gold dust

6B magic mushroom

6C green rupee

6D empty bottle (no text)

6E gold dust (seahorse icon) gives seahorse

6F chateau romani

70 empty bottle (eel icon)

71 green rupee

72 green rupee

73 green rupee

74 green rupee

75 green rupee

76 green rupee

77 green rupee

78 deku mask

79 goron mask

7A zora mask

7B fierce deity's mask

7C captain's hat

7D giant's mask

7E all night mask

7F bunny hood

80 keaton mask

81 garo mask

82 romani mask

83 circus leader's mask

84 postman's hat

85 couple's mask

86 great fairy mask

87 gibdo mask

88 don gero mask

89 kamaro mask

8A mask of truth

8B stone mask

8C bremen mask

8D blast mask

8E mask of scents

8F kafei's mask

90 green rupee

91 ?

92 ?

93 ?

94 ?

95 ?

96 moon's tear

97 land title deed

98 swamp title deed

99 mountain title deed

9A ocean title deed

9B great fairy sword (buying)

9C kokiri sword (buying)

9D razor sword (buying)

9E gilded sword (buying)

9F hero's shield (no text)

A0 room key

A1 mama's letter

A2 green rupee

A3 green rupee

A4 ?

A5 green rupee

A6 green rupee

A7 green rupee

A8 green rupee

A9 bottle (buying)

AA kafei's letter

AB pendant of memories

AC green rupee

AD green rupee

AE green rupee

AF green rupee

B0 green rupee

B1 green rupee

B2 green rupee

B3 ?

B4 clock town map

B5 woodfall map

B6 snowhead map

B7 romani ranch map

B8 great bay map

B9 stone tower map

 

 

 

 

 

 

This probably isn't very useful for you.

  • Like 1
Link to comment
Share on other sites

  • 0

It's a bit buggy.

 

With a file name of DungRush, I got Kamaro's mask instead of Bremen's. When I visited Kamaro I got nothing.

Someone with a file name Tortus got obtained two Goron Masks, one from Mikau, one from Darunia.

The Lens of truth chest will sometimes disappear giving no item.

Link to comment
Share on other sites

  • 0

I didn't test transformation masks because I got lazy and just uploaded what I had after about 5 minutes actual testing yesterday. I know about the Kamaro bug but I thought I had fixed it, must have forgot to change something in the final ROM...

 

I guess I'll go back and fix these soon.

 

 

 

The Lens of truth chest will sometimes disappear giving no item.

 

Under what circumstances/with which items in inventory, if you know? This is something I haven't seen but it may be related to some stuff in the chest's actor that got changed (which I doubt).

 

 

Also, re: VC inject, I know of no tool that can compress the ROM using the format used in Majora's Mask wads, though I have found a tool to decompress the romc files it doesn't handle recompressing them. I'll see what I can do but a wad file isn't looking likely right now. 

Compression is not the issue, I made a four byte change to the normal ROM (NTSC injected in a PAL wad, works unedited) and it didn't work. I'll try again...

Link to comment
Share on other sites

  • 0

The title screen shows up for me. I don't have problems running the ROM itself in project64 or Nemu, might be that you're using a plugin that blacks out the screen instead of blurring (which plugin does this? Jabo's 1.5/1.6?).

 

Progress! I've got the VC inject working (turns out there's a romc version that is uncompressed, OoT uses it). However, the game crashes as soon as you load your file, which doesn't happen on PC emulators that I've tried. I'm guessing this would happen on an N64 too, time to figure out what the problem is and how to fix it. Probably something to do with the filesystem because the program I used to insert files raped it (also why the patch is >20MB).

 

No filesystem errors, the VC emulator is just more like real hardware in that it's picky about which order you put instructions in... I'm a bad programmer anyway.

 

The next release will hopefully fix the bugs pointed out here and probably change a few things around based on what I noticed while watching GoronGuy streaming this. While I want to keep the game beatable, I'll probably change some things that could prevent 100% completion, but who wants to go for 100% in a randomiser anyway? I'd really like to keep any% and all masks possible though. Also, there will definitely be a VC release for anyone wanting to play on Wii.

 

I'm going to spend a while finding any VC crashes before I get to fixing this up - if I know what I shouldn't be doing in my code then I won't run into problems later on.

Edited by DeathBasket
Link to comment
Share on other sites

  • 0

Now that I've found out just how broken this is... I guess it could take a while longer to fix than I thought.

 

To do:

fix chests

fix bottles

fix Kamaro

check out a load of other bugs

 

Hopefully I can get it working properly soon.

 

 

Edit: Okay, a lot of things should be fixed with what I've found now - as I thought, a few items were being randomised multiple times (mainly because of my bad coding, though also because there are invalid item values being thrown around by the game somewhere... ?) . I also found the code that gives you bottle items is different that what is used for all other items, so the bottle randomisation outside of shops will actually work now. As for chests, they are also different than I expected; the best I can do for them is to change the item they give you but not what Link will be holding over his head.

 

The next release should fix everything and will also increase the number of items being randomised. Hopefully there will be a wad file too if I can figure out somewhere to put my code that won't crash on VC (something is overwriting it which doesn't happen on other emulators). I'll see what I can do about that.

 

I doubt I'll do a lot tomorrow, going to the beach probably for most of the day...

Edited by DeathBasket
Link to comment
Share on other sites

  • 0

Okay, what I have (should have) now fixed:

  • NPCs who gave wrong items due to re-randomisation (something was being reset or the game used an invalid item value). This affected Grog and Kamaro and I'm pretty sure it was the cause of getting two Goron masks that was mentioned above.
  • Chests - found the part I was missing that would give you 5 rupees instead of an item. However, because of the way chests work, I can't have the correct item/text displayed, you'll have to check the pause menu.
  • Bottles - they use a different function to put the items in your inventory than other items, probably because they need to be distinguishable.
  • Postman not taking Mama's letter - I'm not too sure what was happening with this but it's fixed anyway.
  • Red rupee chest softlock in Pirate's Fortress - what is this I don't even the game was using an invalid item, I didn't even change anything there.
  • Lens of Truth chest crash - seems to be due to invalid items again, the last 3 or 4 times I tested it was fine.

This is everything on my list bar one thing that I cannot reproduce. Please tell me if anybody who played the version I released found anything else so I can fix it and release a (hopefully) fixed version ASAP. I will start working on a VC compatible version now since I need to figure out what area of memory to use for the hack that it won't mess with.

Link to comment
Share on other sites

  • 0

Fixed. The problem is that since it is in the middle of the Deku Scrub's text, it expects another text box before it will continue and this won't appear if you already had the item. I should be fine to start reworking the hack for VC compatibility now, so I guess I'll get on with that.

Link to comment
Share on other sites

 Share

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.