Ultima: Quest of the Avatar

From NES Hacker Wiki
Jump to: navigation, search

Ultima: Quest of the Avatar is the NES port of the computer game Ultima IV: Quest of the Avatar. It is a traditional 4-person party fantasy RPG. You fight enemies to collect gold, buy better weapons and armor, and enter 3-D dungeons. However, unlike regular RPGs, there isn't a final villain to face. Instead, you try to become the embodiment of the eight virtues by doing good deeds throughout Britannia.

Easy Cheats

See the guide on Easy Cheats to find out how to use these.

6828 - 25 - Infinite Gold

6871 - FF - Infinite HP: Mariah (Mage)
6873 - FF - Infinite HP: Iolo (Bard)
6875 - FF - Infinite HP: Geoff (Fighter)
6877 - FF - Infinite HP: Jaana (Druid)
6879 - FF - Infinite HP: Julius (Tinker)
687B - FF - Infinite HP: Dupre (Paladin)
687D - FF - Infinite HP: Shamino (Ranger)
687F - FF - Infinite HP: Katrina (Shepherd)

6891 - 63 - Infinite MP: Mariah
6892 - 63 - Infinite MP: Iolo
6893 - 63 - Infinite MP: Geoff
6894 - 63 - Infinite MP: Jaana
6895 - 63 - Infinite MP: Julius
6896 - 63 - Infinite MP: Dupre
6897 - 63 - Infinite MP: Shamino
6898 - 63 - Infinite MP: Katrina

681B - FF - Full Spells 1
681C - 7F - Full Spells 2
681D - F7 - Full Spells 3
681E - 0B - Full Spells 4

681F - 63 - Infinite Ash
6820 - 63 - Infinite Ginseng
6821 - 63 - Infinite Garlic
6822 - 63 - Infinite Silkweb
6823 - 63 - Infinite Moss
6824 - 63 - Infinite Pearl
6825 - 63 - Infinite Fungus
6826 - 63 - Infinite Manroot

6819 - FF - Start With All Stones
681A - FF - Start With All Runes

680C - 64 - Avatariship In Honesty
680D - 64 - Avatariship In Compassion
680E - 64 - Avatariship In Valor
680F - 64 - Avatariship In Justice
6810 - 64 - Avatariship In Sacrifice
6811 - 64 - Avatariship In Honor
6812 - 64 - Avatariship In Spirituality
6813 - 64 - Avatariship In Humility


North America

Ultima - Quest of the Avatar.png

Memory Addresses

00A0-00CF - Sound Memory

00D9 - Accumulator for next random encounter. Accumulates random amounts. When it reaches FF, you have a battle.

0200-02FF - Sprite Memory
0300-03FF - More Sprite Memory
0400-04FF - Object properties
0500-05FF - Tile Memory
0600-06BF - Tile Memory
0708-0747 - Palette

6802-6806 - Player Name

680B - Joined party members
 	+01 - Mage
	+02 - Bard
	+04 - Fighter
	+08 - Druid
	+10 - Tinker
	+20 - Paladin
	+40 - Ranger
	+80 - Shepherd
Virtue Levels (00-63, 64 for Avatarship)
680C - Honesty
680D - Compassion
680E - Valor
680F - Justice
6810 - Sacrifice
6811 - Honor
6812 - Spirituality
6813 - Humility

6814 - 

6815 - Class of Party Member 1 (See Class List)
6816 - Class of Party Member 2
6817 - Class of Party Member 3
6818 - Class of Party Member 4

6819 - Stones
	+01 - Blue
	+02 - Yellow
	+04 - Red
	+08 - Green
	+10 - Orange
	+20 - Purple
	+40 - White
	+80 - Black
681A - Runes
	+01 - Honesty
	+02 - Compassion
	+04 - Valor
	+08 - Justice
	+10 - Sacrifice
	+20 - Honor
	+40 - Spirituality
	+80 - Humility

681B - Spells Page 1
	+01 - Light
	+02 - Missile
	+04 - Awaken
	+08 - Cure
	+10 - Wind
	+20 - Heal
	+40 - Fire
	+80 - Exit
681C - Spells Page 2
	+01 - Dispel
	+02 - View
	+04 - Protect
	+08 - Ice
	+10 - Blink
	+20 - Energy
	+40 - Quick
	+80 - ! (Doesn't do anything)
681D - Spells Page 3
	+01 - Sleep
	+02 - Reflect
	+04 - Negate
	+08 - (Unused)
	+10 - Destroy
	+20 - Jinx
	+40 - Squish
	+80 - Gate
681E - Spells Page 4
	+01 - Tremor
	+02 - Life
	+04 - (Unused)
	+08 - Defeat
	+10 - (Unused)
	+20 - (Unused)
	+40 - (Unused)
	+80 - (Unused)

Reagents (00-63)
681F - Ash
6820 - Ginseng
6821 - Garlic
6822 - Silkweb
6823 - Moss
6824 - Pearl
6825 - Fungus
6826 - Manroot

6827 - Party Gold x1
6828 - Party Gold x256

Item Flags
682B - Torches (00-63)
682A - Gems (00-63)
682B - Key (00-01)
682C - Oil (00-63)
682D - Sextant (00-01)
682E - Scale (00-01)
682F - Flute (00-01)
6830 - Candle (00-01)
6831 - Book (00-01)
6832 - Bell (00-01)
6833 - Wheel (00-01)
6834 - Horn (00-01)
6835 - Skull (00-01)
6836 - Key of Truth (00-01)
6837 - Key of Courage (00-01)
6838 - Key of Love (00-01)

See Item List for item lookup. Add 80 to the item to equip it.
6839-683E - Mage Inventory
683F-6844 - Bard Inventory
6845-684A - Fighter Inventory
684B-6850 - Druid Inventory
6851-6856 - Tinker Inventory
6857-685C - Paladin Inventory
685D-6862 - Ranger Inventory
6863-6868 - Shepherd Inventory

Stats are stored for all eight characters. Each stat has eight values.
The character order is: 0-Mariah, 1-Iolo, 2-Geoff, 3-Jaana, 4-Julius, 5-Dupre, 6-Shamino, 7-Katrina
So, if you want to adjust a stat, add the character value (times the number of bytes) to the initial offset.
For example: If you want to give Dupre the fighter 999 Max Hit Points, start with the Max Hit Point location (6881).
Dupre's character number is 4. Multiply by the number of bytes (2 in this cast).
So, the address is 6881 + 8 = 6889.
Enter the two-byte hex value of 999, E703. And Dupre will have 999 Max HP.

6869 - Levels
6871 - Hit Points (2 bytes)
6881 - Max Hit Points (2 bytes)
6891 - Magic Points
6899 - Max Magic Points
68A1 - Strength
68A9 - Intelligence
68B1 - Dexterity
68B9 - Experience (2 bytes)

68E1 - Meditation Timeout (00-FF)

Class List

01 - Mariah (Mage)
02 - Iolo (Bard)
03 - Geoff (Fighter)
04 - Jaana (Druid)
05 - Julius (Tinker)
06 - Dupre (Paladin)
07 - Shamino (Ranger)
08 - Katrina (Shepherd)

Item List

00 - Nothing
01 - Sling
02 - Bow
03 - X-Bow
04 - +1 Bow
05 - Dagger
06 - Staff
07 - Club
08 - Axe
09 - Sword
0A - +1 Sword
0B - +2 Sword
0C - +1 Axe
0D - Wand
0E - +2 Axe
0F - Sword of Paradise
10 - Cloth
11 - Leather
12 - Chain
13 - Ring
14 - +1 Cloth
15 - Plate
16 - +1 Chain
17 - +1 Plate
18 - Robe
19 - Exotic Magic


Japan

Ultima - Seija Heno Michi.png