11 March 2016 - Forum Rules

Main Menu

Blaster Master (NES) Randomizer

Started by Quantam, March 29, 2019, 10:01:03 PM

Previous topic - Next topic


Hi, all. My new project is at the point of showing off: a Blaster Master randomizer. While I could give a list of what is randomized (in fact I had done just that before deleting it and writing this sentence), I think it would be more fun to try it and discover for yourselves.

BMRandomizer v1.0 Beta 1
It requires the Blaster Master (U).nes ROM, with CRC32 52bcf64a.

There's a lot more I've had planned from the beginning, but ran out of time to implement stuff before this weekend. There's a bunch more I intend to randomize. I'd also like to fix some bugs and exploits in the original game. The title screen also needs to give the seed number and options, for use in competitions. And finally, the entire GUI was made in a few hours prior to release, and could use some more polish.


New version for this week:

Not a large amount of changes, as most work was spent reverse-engineering (including for future stuff), rather than implementing:
- Enemy (but not yet boss) stats randomized
- Added options for random music, random lives, infinite lives, and infinite continues
- Fixed issues that created uncompletable level 7s
- Boss 8-1 can now appear in other levels

NOTE: While it should never generate an uncompletable seed (that'd be a bug), there are places where careless exploration can get you into places you can't get out with your current items (e.g. below the crusher blocks in level 5 without dive). Bosses should never be located in such places unless the boss provides the item to get out, so it's advisable to only explore such locations when all other options have already been exhausted, to avoid having to intentionally die or game over to get out. This is ESPECIALLY important when using infinite lives, as the inability to game over can cause soft locks if you go somewhere you shouldn't.

There's still a ton of stuff on the todo list (more than is already implemented). Much more to come.


I'm gonna give this a try, I play with alotta randomizers when I'm not working on my projects, time to dive in... ;)


Beta 3:

  • Add some prerequisites to certain levels to increase the average number of tunnels that can have a boss
  • Make upgrade graphics correctly reflect their items
  • Randomize boss music with other music
  • Support using wall 1+2 to pass through level 5 in the randomization logic
  • Prevent using crusher to bypass hyper gate keeper
  • Add Randomize Powerup Quantities option
  • Add Wall 2 Last option to make most seeds 100% (at least barring use of exploits).
  • Add Fix Exploits option that fixes the level 5 boss room exploit (more to come)
  • Add Safe Mode option to hopefully prevent softlock scenarios when using Infinite Lives. However, this significantly reduces randomization, so it is recommended that it only be used with Infinite Lives, and only if you are not experienced enough to know not to go places you don't have the upgrades to get out of unless you have checked every other tunnel, as the randomizer will not put bosses there unless they give the needed upgrade.
Some major features currently being worked on:
  • Randomize boss stats and add progression system that makes later bosses harder than earlier bosses
  • Randomized dungeon layout
  • All Bosses mode where all bosses must be killed to finish the game and upgrades are not given by bosses but found elsewhere in the level
  • Fixes to additional bugs (harmful glitches) and exploits
  • Investigating ways to reduce lag in the original game


Ooh, a new update, cool I'm gonna try this out, thanks man. :)