Might and Magic Character Hacking Guide (NES)
January 16, 2007 v1.0
dammit9x at hotmail dot com

Copyright 2006

    This document may be not be reproduced under any circumstances except for 
personal, private use. It may not be placed on any web site or otherwise 
distributed publicly without advance written permission. Use of this guide on 
any unauthorized web site or as a part of any public display is strictly 
prohibited and a violation of copyright.
--------------------------------------------------------------------------------

***************************************
TABLE OF CONTENTS

1. CHARACTERS
2. ADDRESSES
3. ITEM GLITCH

CLOSING
***************************************


1. CHARACTERS

  Here are the 16 characters with their initial attributes. Note the number of 
each character (#), as it is the only attribute that never be changes. Use the 
number as a shortcut to find the hex addresses you want to edit.

# Name   Race  S algn class  INT MIG SPE LUC PER END ACC EXP Town      BACKPACK
0 (you)  HUMAN M GOOD KNIGHT 12  18  12  12  12  12  14    0 SORPIGAL  CLUB
1 RIGEL  ELF   M NEUT WIZARD 19  11  12  12  12  11  15  250 SORPIGAL  CLUB
2 SAGE   GNOME M EVIL ROBBER 13  11  12  14  11  13  14  100 SORPIGAL  CLUB
3 SONJA  DWARF F EVIL KNIGHT 11  18  11  13  12  13  14  200 SORPIGAL  CLUB
4 LILAC  ELF   F NEUT WIZARD 19  11  12  12  12  11  15  900 SORPIGAL  CLUB
5 VYRANA HUMAN F GOOD CLERIC 12  12  12  12  18  12  14  800 SORPIGAL  CLUB
6 AZALEA ELF   F GOOD ARCHER 17  11  12  12  12  11  16 1400 ERLIQUIN  SLING
7 KIRIE  DWARF F NEUT CLERIC 11  12  11  13  18  13  14 1200 ERLIQUIN  MACE
8 FLINT  DWARF M NEUT ROBBER 13  10  11  16  12  13  14 1500 ERLIQUIN  DAGGER
9 JHARED H-ORC M GOOD KNIGHT 12  18  11  14  12  12  13 1200 ERLIQUIN  DAGGER
A BULZAI ELF   M EVIL ARCHER 17  11  12  12  12  11  16 1800 ALGARY    SLING
B ZORA   ELF   F EVIL WIZARD 19  11  12  12  12  11  15 1500 ALGARY    DAGGER
C THORAK H-ORC M EVIL CLERIC 12  12  11  14  18  12  13 1600 ALGARY    MACE
D TIKRA  HUMAN F GOOD KNIGHT 12  18  12  12  12  12  14 2500 PORTSMITH SPEAR
E CHAROB GNOME F EVIL ROBBER 13  11  12  14  11  13  14 2200 PORTSMITH SLING +1
F HAMMER HUMAN M EVIL PALADI 12  15  12  12  14  16  14 3500 DUSK      DEF. RING


2. ADDRESSES

  The following tables list the addresses in RAM where key variables are stored.
Edit the value of these addresses directly to manipulate the game. Or, use this 
information to make Game Genie codes. 

009F  X coordinate
00A0  Y coordinate

For the following, add (0x0001 * #) to reach the desired character:

0308  GEMS share
0318  GOLD share
0328  FOOD share

A character's share is the weighting given to that character when distributing 
goods in the camp menu. Normally it is set from 1-3.

For the following, add (0x0080 * #) to reach the desired character:

6F00  sex (1-2: MALE, FEMALE)
6F01  ?
6F02  alignment (1-3: GOOD, EVIL, NEUT)
6F03  race (1-5: HUMAN, ELF, DWARF, GNOME, H-ORC)
6F04  class (1-6: KNIGHT, PALADI, ARCHER, CLERIC, WIZARD, ROBBER)
6F05  permanent INT
6F06  current INT
6F07  permanent MIG
6F08  current MIG
6F09  permanent PER
6F0A  current PER
6F0B  permanent END
6F0C  current END
6F0D  permanent SPE
6F0E  current SPE
6F0F  permanent ACC
6F10  current ACC
6F11  permanent LUC
6F12  current LUC
6F13  ?
6F14  LEV
6F15  AGE
6F16  ?
6F17  EXP x 1
6F18  EXP x 256
6F19  EXP x 65536
6F1A  ?
6F1B  current MP x 1
6F1C  current MP x 256
6F1D  max MP x 1
6F1E  max MP x 256
6F1F  ?
6F20  spell level
6F21  GEM x 1
6F22  GEM x 256
6F23  current HP x 1
6F24  current HP x 256
6F25  max HP x 1
6F26  max HP x 256
6F27  ?
6F28  ?
6F29  GOLD x 1
6F2A  GOLD x 256
6F2B  GOLD x 65536
6F2C  ?
6F2D  AC
6F2E  ?
6F2F  FOOD
6F30  COND
6F31-6F36  Equipped items
6F37-6F3C  Held items
6F3D-6F42  Charges of equipped items
6F43-6F48  Charges of held items
6F49  permanent Magic resistance
6F4A  current Magic resistance
6F4B  permanent Fire resistance
6F4C  current Fire resistance
6F4D  permanent Cold resistance
6F4E  current Cold resistance
6F4F  permanent Electric resistance
6F40  current Electric resistance
6F41  permanent Acid resistance
6F42  current Acid resistance
6F43  permanent Fear resistance
6F44  current Fear resistance
6F45  permanent Poison resistance
6F46  current Poison resistance
6F47  permanent Sleep resistance
6F48  current Sleep resistance

For item addresses, the value is the item ID. Match up the IDs with the items 
using ASchultz's FAQ/Walkthrough on gamefaqs. He gives a table of items. The IDs
aren't shown, but the items are listed in order from 01 to FF, except for the 
blank space, which is 00.


3. ITEM GLITCH

  The item IDs are also important for exploiting the item glitch. To perform the
glitch, go to the use item menu and press B on an empty space in player 1's 
equipped item list when his backpack is full. The ID of the last backpack item 
is reduced by 1. Use this in conjuction with the item table to get any item.

To see the glitch in action, as well as a fast play-through of the game, watch 
my TAS (tool-assisted speedrun) on NESvideos:

http://tasvideos.org/1418S.html

--------------------------------------------------------------------------------
CLOSING

  Credit goes to beastiecube for publishing the item glitch and AShultz for 
publishing the item table.

  The rest of this document is my own work. Any questions, comments, corrections
or complaints should be addressed to the address below, with clear indication in
the subject line that the email is concerning this FAQ. 

dammit9x at hotmail dot com