Skip to content

Expands the Maniac Mansion ROM file and decodes all of the encoded data to make it easy to edit the graphics and layouts.

License

Notifications You must be signed in to change notification settings

gzip/nes-6502-maniac-mansion-decoded

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Maniac Mansion Decoded

Maniac Mansion for the Nintendo Entertainment System uses a simple compression scheme for it's graphics and layouts known as Run Length Encoding (RLE). The encoding makes it very difficult to edit any of the layouts or graphics in the game.

This mod expands the game and decodes all of the encoded data to make it very easy to edit graphics and layouts. The number of tiles for each room is also maximized to make room for new graphics. A lot of space is freed up as a result which makes it easier to edit game objects and text as well. As such, this hack can serve as a base for modifications to Maniac Mansion.

A code example is included which adds a new puzzle chain that modifies existing objects, adds new objects, and adds a whole new room as a final payoff. It does not affect the rest of the game.

The following optional patches are applied by default:

  • char_select.ips - Adds rounded corners to the character select screen.
  • fridge.ips - Rearranges the fridge to recolor the lettuce green and the batteries brown.
  • portraits.ips - Improves the various portraits in the house, including Fred in Edna's room, Edna in Fred's room, Fred in Edna's attic, and the family portrait in the den.
  • title_screen.ips - Uses the title screen from the Japanese version, which is based on the C64 graphics. (Not included in default patches, must be applied separately.)
  • under_house_enhanced.ips - Improves the post and valve graphics under the house and fixes the background mask.

Several bugs from the original game are also fixed. More information can be found on romhacking.net.

Building

  1. Download or clone this repository.
  2. Add your legally obtained copy of Maniac Mansion (USA).nes (the "game file") to the repository directory.
  3. Run build.bat by double clicking it or executing it from a command prompt in the directory of step 1.
  4. Open the resulting Maniac Mansion (USA) Decoded.nes file in the emulator of your choice.
  5. Generated files can be cleaned up by running build clean from the command prompt.

Build Options

  • By default the mod will build with the optional patches applied.
  • Running build puzzle from the command prompt will include the custom puzzle code as well.
  • Running build base will omit both the optional patches and the custom puzzle.
  • Running build title will apply the Japanese title screen along with the optional patches.
  • Finally, build release or build [puzzle|base|title] release will package the resulting files.

Source Code

  • The runtime changes that execute during gameplay are found in src/decompress.asm.
  • The data portions are generated by reading from the original game file and decoding the content into a format suitable for assembly source files that are then compiled into patches during the build process. These source files are generated by code found under tools/generator and can be regenerated by running build patches from a command prompt.
  • Code for the custom puzzle chain can be found in src/puzzle.
  • The changes for bug fixes to the orginal game are only available as patch files found under src/patches.
  • Optional patches and their source code are found under src/patches/optional.
  • During build time the original game file is expanded, the various source files are compiled, and the resulting patches are applied to the expanded game file to produce the final result.

About

Expands the Maniac Mansion ROM file and decodes all of the encoded data to make it easy to edit the graphics and layouts.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published