Difference between revisions of "Castlevania II: Simon's Quest"

From NES Hacker Wiki
Jump to: navigation, search
Line 1: Line 1:
 +
Castlevania II: Simon's Quest is the sequel to [[Castlevania]]. The game play shits from the original to a platform adventure. You control Simon Belmont, a vampire hunter who uses a whip to fight monsters. You must collect items and enter mansions to find the lost body parts of Dracula. Only then can you resurrect him and vanquish him forever. The game itself is a lot of fun, but it suffered such awful translation problems that it's unplayable without a guide. However, there is an [http://www.thealmightyguru.com/Games/Hacking/Hacks/SimonsRedaction.html unofficial patch] that fixes the dialog.
 +
 +
==North America==
 
[[File:Castlevania 2 - Simon's Quest.png|256px|right]]
 
[[File:Castlevania 2 - Simon's Quest.png|256px|right]]
  
Castlevania II: Simon's Quest is the sequel to [[Castlevania]]. The game play shits from the original to a platform adventure. You control Simon Belmont, a vampire hunter who uses a whip to fight monsters. You must collect items and enter mansions to find the lost body parts of Dracula. Only then can you resurrect him and vanquish him forever. The game itself is a lot of fun, but it suffered such awful translation problems that it's unplayable without a guide. However, there is an [http://www.thealmightyguru.com/Games/Hacking/Hacks/SimonsRedaction.html unofficial patch] that fixes the dialog.
+
===Memory Addresses===
 
 
==Memory Offsets==
 
  
 
  0031 - Lives
 
  0031 - Lives
Line 115: Line 116:
 
  04F8 - Invincibility Timeout
 
  04F8 - Invincibility Timeout
  
==ROM Contents==
+
====Weapon Index====
 
 
00000-0000F - iNES Header
 
00010-03856 - Not Patterned
 
03856-03FDF - Empty Data (FF)
 
04010-07728 - Not Patterened
 
04642-04649 - Bit increase table (01 02 04 08 10 20 40 80) Read for most bitwise manipulation.
 
05B9C - Berkley Mansion Organ
 
05CE1 - Grim Reaper's Hit Points
 
05D59 - Delay between Camilla's tears
 
05FAE - Bodley Mansion Organ
 
07729-07FDF - Empty Data (FF)
 
08010-0C00F - Patterend Data (Map Data)
 
0C010-0CC7F - Not Patterened
 
0CC80-0DD05 - Game Dialog
 
0DD06-0FFDF - Empty Data (FF)
 
1000F-11E8F - Patterned Data (Tile Data)
 
10160-101BF - Title Screen
 
10360-1042F - Prologue
 
1043E-???  - Map chunk palette data.
 
124CC-127BF - Ending Dialog
 
13AF0-1C00F - Mostly Empty Data (FF)
 
1C010-1F7F0 - Not Patterned
 
1C960-1CA4F - Password Entry
 
1E0F0-1E103 - Enemy Movement Routine
 
1F210-1F23F - Whip Names
 
1F800-2000F - Patterened Data (Map Data)
 
20010-40010 - Graphics
 
 
 
==Tables==
 
 
 
===Weapon Index===
 
 
  01 - Dagger
 
  01 - Dagger
 
  02 - Silver Dagger
 
  02 - Silver Dagger
Line 157: Line 127:
 
  09 - Garlic
 
  09 - Garlic
  
===Object Index===
+
====Object Index====
 
  00 - None
 
  00 - None
 
  01 - Town Bat
 
  01 - Town Bat
Line 237: Line 207:
 
  4D - Dracula Explosion Fire
 
  4D - Dracula Explosion Fire
  
===Object Index 2===
+
====Object Index 2====
 
  18 - Orb (Rib)
 
  18 - Orb (Rib)
 
  19 - Orb (Heart)
 
  19 - Orb (Heart)
Line 246: Line 216:
 
  42 - Cloaked man selling Chain Whip
 
  42 - Cloaked man selling Chain Whip
  
==Code Routines==
+
==ROM Data==
 +
 
 +
00000-0000F - iNES Header
 +
00010-03856 - Not Patterned
 +
03856-03FDF - Empty Data (FF)
 +
04010-07728 - Not Patterened
 +
04642-04649 - Bit increase table (01 02 04 08 10 20 40 80) Read for most bitwise manipulation.
 +
05B9C - Berkley Mansion Organ
 +
05CE1 - Grim Reaper's Hit Points
 +
05D59 - Delay between Camilla's tears
 +
05FAE - Bodley Mansion Organ
 +
07729-07FDF - Empty Data (FF)
 +
08010-0C00F - Patterend Data (Map Data)
 +
0C010-0CC7F - Not Patterened
 +
0CC80-0DD05 - Game Dialog
 +
0DD06-0FFDF - Empty Data (FF)
 +
1000F-11E8F - Patterned Data (Tile Data)
 +
10160-101BF - Title Screen
 +
10360-1042F - Prologue
 +
1043E-???  - Map chunk palette data.
 +
124CC-127BF - Ending Dialog
 +
13AF0-1C00F - Mostly Empty Data (FF)
 +
1C010-1F7F0 - Not Patterned
 +
1C960-1CA4F - Password Entry
 +
1E0F0-1E103 - Enemy Movement Routine
 +
1F210-1F23F - Whip Names
 +
1F800-2000F - Patterened Data (Map Data)
 +
20010-40010 - Graphics
 +
 
 +
 
 +
 
 +
===Code Routines===
  
===Camilla Code===
+
====Camilla Code====
  
 
  Frame (0306)
 
  Frame (0306)

Revision as of 16:53, 2 March 2010

Castlevania II: Simon's Quest is the sequel to Castlevania. The game play shits from the original to a platform adventure. You control Simon Belmont, a vampire hunter who uses a whip to fight monsters. You must collect items and enter mansions to find the lost body parts of Dracula. Only then can you resurrect him and vanquish him forever. The game itself is a lot of fun, but it suffered such awful translation problems that it's unplayable without a guide. However, there is an unofficial patch that fixes the dialog.

North America

Castlevania 2 - Simon's Quest.png

Memory Addresses

0031 - Lives
0037 - D-Pad Pushing (00-Idle 01-Left FF-Right)
0046 - Experience: 99XX
0047 - Experience: XX99
0048 - Hearts: 99XX
0049 - Hearts: XX99
004A - Weapon Bit Flag
	01 - Dagger
	02 - Silver Dagger
	03 - Golden Knife
	04 - Holy Water
	05 - Crystal
	06 - Sacred Flame
	07 - Oak Stake
	08 - Nothing
004C - Laurels
004D - Garlic
0058 - Map X Chunk
0059 - Map X Position
006A - Simon Y Position
0077 - Dialog writing text row
0078 - Dialog writing text column
007B - Dialog text timeout until next letter.
007C - Dialog text memory offset
007D - Dialog starting column
	Also the dialog timeout to automatically disappear
	Also the option highlighted for Yes/No questions.
007F - Sun flag (1=Day, 0=Night)
0080 - Current Hit Points (x8)
0080 - Maximum Hit Points (x8)
0083 - Game Time (Days)
0084 - Game Time (Seconds)
0085 - Game Time (Minutes)
0086 - Game Time (Hours) (6-17 Day time, 18-5 Night time)
0087 - Counter for day/night palette shift.
0088 - Counter for day/night palette shift.
008B - Level
0091 - Inventory Bit Flag
	01 - Rib
	02 - Heart
	03 - Eye
	04 - Nail
	05 - Ring
	06 - White Crystal
	07 - Blue Crystal
	6+7 - Red Crystal
0092 - Carry Items Bit Flag
	01 - Silk Bag
	02 - Magic Cross
	03 - Laurels
	04 - Garlic
0300 - Simon Sprite Frame
0303-0305 - Weapon Frame
0306-030B - Object Frame
0318-031D - Object Palette
0324 - Simon Y Pos on Screen
0327-0329 - Weapon Y
032A-032F - Object Y
0336 - Simon Jumping Work ?
0339-033B - Weapon Work 1?
033C - Object Work ?
0348 - Simon X Pos on Screen
034B-034D - Weapon X
034E-0353 - Object X
0360 - Object Work?
036C - Simon Y Delta
036F-0371 - Weapon Y Delta (Signed)
0372-0377 - Object Y Delta (Signed)
037E - Object Work ?
0381-0383 - Weapon Work 2?
0384 - Object Work?
0393-0395 - Weapon X Delta (Signed)
0396-039B - Object X Delta (Signed)
03B7-03B9 - Weapon Index (See List)
03BA-03BF - Object Index (See List)
03D8 - Simon Action
	00 - Idle
	01 - Walking
	02 - Jumping
	03 - Crouching
	04 - Attacking
03DB-03DD - Weapon Flags
0402-0407 - Object Frame
040E - Movement flag? (00 - when moving, 01 - When jumping or crouching, 11 - When idle)
0420 - Simon Sprite Mirroring
0423-0425 - Weapon Sprite Mirroring
0426-042B - Object Sprite Mirroring
0434 - Whip
	00 - Leather Whip
	01 - Thorn Whip
	02 - Chain Whip
	03 - Morning Star
	04 - Flame Whip
0445 - Whip State
	00 - Idle
	01 - Back
	02 - Middle
	03 - Forward
0446 - Jumping Flag
0447-0449 - Weapon Flags
044A - Object Work?
0457 - Delay between next whip.
045C - Object Work?
046E - Object Work?
04C2 - Set at 1 when up is pressed, set to 0 when down is pressed.
04C5-04C7 - Weapon State
04C8-04CD - Object Hit Points / OR - Index2 (See Table)
04DA - Object Work?
04F8 - Invincibility Timeout

Weapon Index

01 - Dagger
02 - Silver Dagger
03 - Golden Knife
04 - Holy Water
05 - Diamond
06 - Sacred Fire
07 - 
08 - 
09 - Garlic

Object Index

00 - None
01 - Town Bat
02 - 
03 - Skeleton / Skeleton Warrior
04 - Fishman
05 - Spearman
06 - Gator Men
07 - 
08 - Floating Eye
09 - Bat (Flying)
0A - Medusa
0B - 
0C - Bouncing Skeleton Bone Fire
0D - Bouncing Skeleton
0E - Spider
0F - Winged Devil
10 - Floating Skull
11 - Bat (Swooping)
12 - 
13 - 
14 - 
15 - 
16 - 
17 - Town Zombie
18 - Marsh Spitter
19 -
1A - Spider Silk
1B - 
1C - 
1D - Burning Man
1E - Old Man In Cemetery
1F - Slime
20 - Flying Spike
21 - Horizontally moving platform (Tall)
22 - Horizontally moving platform (Wide) / Vertically Moving Platform (Wide)
23 - 
24 - Sign
25 - Crystal Orb / Bag
26 - 
27 - Clue Book
28 - 
29 - Red Woman
2A - Man
2B - 
2C - Old Woman
2D - Priest
2E - Cloaked Man (Town)
2F - Cloaked Man (Outside)
30 - Enemy Fireball
31 - 
32 - Seeking Fireball
33 - Spider Web
34 - Vertically moving platform (Narrow)
35 - Old Man
36 - Enemy Explosion
37 - Heart / Half Heart / Big Heart
38 - Cemetery Hand
39 - 
3A - Mummy
3B - Harpy
3C - Ferryman
3D - Ferryboat
3E - 
3F - Giant Plant
40 - Leech
41 - 
42 - Camilla
43 - Marsh?
44 - Grim Reaper
45 - Camilla Tear
46 - Reaper Scythe
47 - Dracula
48 - Dracula Scythe
49 - 
4A - 
4B - Organ Bag
4C - Dracula Summoning Fire
4D - Dracula Explosion Fire

Object Index 2

18 - Orb (Rib)
19 - Orb (Heart)
1A - Orb (Eyeball)
1B - Orb (Nail)
1C - Orb (Ring)
77 - Golden Knife
42 - Cloaked man selling Chain Whip

ROM Data

00000-0000F - iNES Header
00010-03856 - Not Patterned
03856-03FDF - Empty Data (FF)
04010-07728 - Not Patterened 
04642-04649 - Bit increase table (01 02 04 08 10 20 40 80) Read for most bitwise manipulation.
05B9C - Berkley Mansion Organ
05CE1 - Grim Reaper's Hit Points
05D59 - Delay between Camilla's tears
05FAE - Bodley Mansion Organ
07729-07FDF - Empty Data (FF)
08010-0C00F - Patterend Data (Map Data)
0C010-0CC7F - Not Patterened
0CC80-0DD05 - Game Dialog
0DD06-0FFDF - Empty Data (FF)
1000F-11E8F - Patterned Data (Tile Data)
10160-101BF - Title Screen
10360-1042F - Prologue
1043E-???   - Map chunk palette data.
124CC-127BF - Ending Dialog
13AF0-1C00F - Mostly Empty Data (FF)
1C010-1F7F0 - Not Patterned
1C960-1CA4F - Password Entry
1E0F0-1E103 - Enemy Movement Routine
1F210-1F23F - Whip Names
1F800-2000F - Patterened Data (Map Data)
20010-40010 - Graphics


Code Routines

Camilla Code

Frame (0306)
Palette (0318)
Camilla Y, X (032A)(034E)
Tear Y, X (032B) (032C)
? (033C)
? (0360)
Camilla Delta (0372), (0396)
Tear Delta (0373), (0397)
? (0384)
? (03A8)

Status (044A) (00 - Rising, 02 - Begin Crying, 03 - Crying, 04 - Spinning, 05 - Idle)

Counter (045C)
When spinning: 00-3F for a full rotation.
When crying: 00-FF

Flag (046E)
0/1 For spinning. Switches each loop.
Counts while crying.

Tear Delay (04DA) (00-20)