We just released a prototype of the cancelled SNES port of Puggsy! Take a look!
As always, thank you for supporting The Cutting Room Floor on Patreon!

Castlevania: Portrait of Ruin

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Castlevania: Portrait of Ruin

Also known as: Akumajou Dracula: Gallery of Labyrinth (JP)
Developer: Konami
Publisher: Konami
Platform: Nintendo DS
Released in JP: November 16, 2006
Released in US: December 5, 2006
Released in EU: March 9, 2007
Released in AU: March 22, 2007


AnimationsIcon.png This game has unused animations.
GraphicsIcon.png This game has unused graphics.
ItemsIcon.png This game has unused items.
Sgf2-unusedicon1.png This game has unused abilities.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.
RegionIcon.png This game has regional differences.
Carts.png This game has revisional differences.


A direct sequel to Castlevania Bloodlines, Portrait of Ruin takes the "switch a character" gameplay of Dracula's Curse and Dawn of Sorrow's Julius mode and fully fleshes it out.

Leftover Face Debugging Dialog

Of course, Portrait of Ruin wouldn't be complete without, well, portraits. And not only do you have the actual paintings in the game, you have, of course, face portraits too. At some point during development, they had a script of dialog that would basically cycle through each and every face graphic. If you notice carefully, "ka," "ge," "ma," and "sa" are cycled through each message. When put all together you get "Kagemasa" (Kozuki) who is the current chairman and CEO of Konami.

The complete text dump for both English and Japanese versions:

English Japanese
{NAME 0x00}{PORTRAIT 0x00}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x01}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x02}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x03}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x04}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x05}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x06}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x07}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x08}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x00}{PORTRAIT 0x09}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0A}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0B}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0C}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0D}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0E}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x0F}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x33}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x34}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x01}{PORTRAIT 0x35}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x10}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x11}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x12}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x13}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x14}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x03}{PORTRAIT 0x15}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x04}{PORTRAIT 0x16}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x04}{PORTRAIT 0x17}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x04}{PORTRAIT 0x18}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x04}{PORTRAIT 0x19}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x04}{PORTRAIT 0x1A}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x1B}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x1C}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x1D}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x1E}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x1F}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x20}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x21}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x22}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x05}{PORTRAIT 0x23}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x24}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x25}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x26}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x27}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x28}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x06}{PORTRAIT 0x29}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2A}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2B}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2C}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2D}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2E}ka\n

{WAITINPUT}{NEWCHAR}{NAME 0x07}{PORTRAIT 0x2F}ge\n

{WAITINPUT}{NEWCHAR}{NAME 0x08}{PORTRAIT 0x30}ma\n

{WAITINPUT}{NEWCHAR}{NAME 0x09}{PORTRAIT 0x31}sa\n

{WAITINPUT}{NEWCHAR}{NAME 0x09}{PORTRAIT 0x32}ka\n

{WAITINPUT}{NEWCHAR}
{NAME 0x0000}{PORTRAIT 0x0000}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0001}びしょう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0002}つよき\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0003}おどろき\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0004}いかり\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0005}かなしい\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0006}あきれ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0007}すまない\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0008}よろこび\n

{WAITINPUT}{NEWCHAR}{NAME 0x0000}{PORTRAIT 0x0009}しょんぼり\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000A}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000B}ほほえみ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000C}つよき\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000D}ふれくされ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000E}おどろき\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x000F}かんがえ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x0033}しんけん\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x0034}こまる\n

{WAITINPUT}{NEWCHAR}{NAME 0x0001}{PORTRAIT 0x0035}おこる\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0010}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0011}ふせめ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0012}あんど\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0013}はっとする\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0014}くるしみ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0003}{PORTRAIT 0x0015}さけび\n

{WAITINPUT}{NEWCHAR}{NAME 0x0004}{PORTRAIT 0x0016}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0004}{PORTRAIT 0x0017}うたがう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0004}{PORTRAIT 0x0018}あわて\n

{WAITINPUT}{NEWCHAR}{NAME 0x0004}{PORTRAIT 0x0019}かおいろ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0004}{PORTRAIT 0x001A}ほっとする\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x001B}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x001C}いかり\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x001D}こんわく\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x001E}さけび\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x001F}ひろう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x0020}ひろう2\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x0021}かいわ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x0022}さけび2\n

{WAITINPUT}{NEWCHAR}{NAME 0x0005}{PORTRAIT 0x0023}ひろう3\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0024}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0025}しんぱい\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0026}さけび\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0027}かんがえ\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0028}しんけん\n

{WAITINPUT}{NEWCHAR}{NAME 0x0006}{PORTRAIT 0x0029}さけび2\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002A}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002B}わらい\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002C}あせり\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002D}しぼう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002E}いかり\n

{WAITINPUT}{NEWCHAR}{NAME 0x0007}{PORTRAIT 0x002F}げきど\n

{WAITINPUT}{NEWCHAR}{NAME 0x0008}{PORTRAIT 0x0030}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0009}{PORTRAIT 0x0031}ふつう\n

{WAITINPUT}{NEWCHAR}{NAME 0x0009}{PORTRAIT 0x0032}くるしみ\n

{WAITINPUT}{NEWCHAR}

Note they changed the Japanese expression name to the "Kagemasa" name placeholders in English.

Unused Item Coding

HP and MP Max Up Items

Mp Max Up Hp Max Up
Unlike instant Max Up items, these versions can't be used up, so one can imagine it was for testing purposes. Or they eventually cut out the inventory-based Max Up items since it would have been pretty damn unbalanced. Eitehr way, text descriptions suggest a failsafe or placeholder.

The "HP Max Up" and "MP Max Up" items are normally used immediately after picking them up. However, fully-functional inventory versions exist, which can be accessed with the Action Replay code 02111BFC 99999999.

Alternate Mode Weapons

Much like the previous game, some of the "alternate game mode" primary weapons – specifically Richter and Maria's – are actually items rather than hard-coded to each character. As such, it's possible to get them in a Normal Game through the use of glitching or Action Replay codes. Sadly, this isn't the case with the Sisters or Old Axe Armor, whose weapons are hard-coded to their respective game modes.

Richter's Vampire Killer

Japan English
CVPoR-JP RichterVKStats.png CPRU-VampireKiller3.png

Richter's Vampire Killer can be accessed in the US version of the game by using the Action Replay code 22111C31 00000010. The description is the same as Jonathan's "unlocked" Vampire Killer whip (or either whip, in English releases), but it has less attack than the unlocked version (22 instead of 28).

CPRU-VampireKiller3swing.png CPRU-VampireKiller3brandishing.png

Due to the sprites being aligned for Richter, it technically has better range than Jonathan's Vampire Killer, but it lacks any weapon-specific Critical Art. The limp whip-dangle move can be used with Whip Skill 1, but it isn't compatible with Whip Skill 2's diagonal-down attack.

Since this version of the Vampire Killer is considered a different weapon from the one Jonathan starts the game with, you can carry it over to a New Game Plus and just run riot.

Maria's Dove

Japan English
CVPoR-JP MariaToriStats.png CVPoR-US JonathanTori1.png

Maria's vicious attack dove can also be accessed in the US game and used by Jonathan using the Action Replay code 22111C50 00000001. It lacks a unique or fitting icon, defaulting to the Knife, and has a very basic description which differs between regions (「まりあ」 ("Maria") in Japan and "Tori" in English). Incidentally, "tori" (or 「とり」) is the Japanese word for "bird". Ergo, Maria's bird is literally called "bird", here.

CVPoR-US JonathanTori2.gif

Unlike Maria, Jonathan can only toss one dove at a time when standing. It is possible to launch more when coming down from a jump or back-sliding, however. Otherwise, it works exactly as expected. Again, no Critical Art for this weapon.

Alternate Mode Sub-Weapons

Japan English
CVPoR-JP PuppetMasterSoulStats.png CVPoR-US RichiterSubWeapons1.png

Lastly, it's possible to get the Alternate Mode sub-weapons in a Normal Game through the use of glitching or the Action Replay codes 02111A6C 11111110 and 22111A70 00000011 on the US game.

CVPoR-US RichiterSubWeapons2.png

Every sub-weapon that's available to Richter, Maria, and even Old Axe Armor's "Puppet Master" ability are fully functional for Jonathan. None of them can be leveled up, but they all work as expected with two exceptions: Maria's (misspelled) "Genbu" is virtually identical to Jonathan's "Stonewall", and…

CVPoR-US JonathanGrandCruzR.gif

… Jonathan defaults to his Dual Crash animation when using Richter's "Grand Cross". The result sadly looks a bit off.

Japan English
CVPoR-JP PuppetMasterSoulStats.png CVPoR-US RichiterSubWeapons1.png
CVPoR-JP AxeArmorSoulStats.png CVPoR-US AxeArmorSoulStats.png

As a sidenote, it would appear that Old Axe Armor's "Puppet Master" the alternate "Axe" sub-weapons were Bullet Souls ported straight from Dawn of Sorrow as they have the exact same descriptions and Japanese names (「パペットマスター」/ "Puppet Master" and 「アックスアーマー」/ "Axe Armor") as they did in that game.

Unused Text

Tori

In the game ROM, the text "Tori"("とり" in Japanese ROM) refers to Maria's Dove attack (stored in Weapon slot in the game's memory). In the Japanese ROM it has a description reading "まりあ" (Maria) while the English ROM simply copies its name.

  • Side note: When Tori is equipped by Jonathan the default value of weapon swing animation is 03 (heavy weapon) though 02 (long sword) is more suitable in animation-wise.
ANOTHER MODE

Likely a scrapped menu system for the alternate characters (Richter/Maria, the Lecarde sisters and Old Axe Armor).

English
Deutsch
Français
Italiano
Español

Texts for a language switch option are present in the game ROM of US version. A hidden language switch option is present in the later European version which can be activated by holding the L and R buttons on boot-up.

English Japanese
The Lost Village

Wizardry Lab

Garden of Madness

The Dark Chapel

Demon Guest House

Condemned Tower

Mine of Judgment

Cursed Clock Tower

Subterranean Hell

Silenced Ruins

The Pinnacle

The Abyss

Gloomy Memories

Echoes Of Darkness

Dark Clouds

Pitch Black Intrusion

Dracula's Tears

Platinum Moonlight

After Confession

Demon Guest House

Condemned Tower

Cursed Clock Tower

Subterranean Hell

Vampire Killer

The Pinnacle

Underground Melodies

The Abyss

Game Over

Black Shudder

Evil invitation

Into The Dark Night

Scarlet Battle Soul

Portal To Dark Bravery

Piercing Battle Fury

Illusionary Song

Equipment's Tale

A Fleeting Respite

After Battle - Blue Memories -

Momentary Moonlight

The Beginning

Bloody Tears
翳りある記憶

闇の響き

暗雲

漆黒の進攻

ドラキュラの涙

プラチナ色の月夜

懺悔の後に

妖魔迎賓館

罪人の塔

呪縛の時計塔

地下冥府

VAMPIRE KILLER

悪魔城最上階

地下室のメロディー

深淵

ゲームオーバー

黒の戦慄

魔の誘い

闇夜の激突

緋の闘魂

闇凛の大扉

尖白の闘志

幻想的舞曲

装具の話

束の間の安らぎ

戦いの後に〜蒼の回想〜

終曲〜透深月夜〜

BEGINNING

BLOODY TEARS

Pointers 4BE to 4E6 (4BA to 4D6 in the Japanese ROM) are song (and area) names in Dawn of Sorrow. The Aguni boss theme, Portal To Dark Bravery ("闇凛の大扉" in Japanese ROM) is used in the game (albeit renamed "Great Gate of Darkness"), but the rest remain unused.

Unused Graphics

Not as interesting as leftovers from recycled graphics, but there's still something shiny.

Holy Water

CVPoR-F uy01 palette 022C69B0-00.png

There is evidence that the Holy Water subweapon would've used a different NES-style flame for a non-mastered version, but was eventually abandoned for final.

  • Fake Trevor uses a similar one to the smaller Holy Water flame but the palette is grey-ish and the flame is taller.

CVPoR-HolyWater-Frame 1.png

This is probably the bigger (mastered) version of Holy Water flask but never actually used in-game. Final game uses version 1 (the smaller flask) instead.

B-U-T, this particular frame was actually used in a preview video of early gameplay - for placeholder graphics of relic pickups!

Early Title Menu

There is evidence that the secret modes were originally meant to be selectable in the title menu (Dawn of Sorrow style), but since the game engine had been updated to the newer one used in the final they are no longer needed and abandoned.

CVPoR-TitleRichterMode.png
Sprite version of Richter Mode selection graphic.

CVPoR-TitleSistersMode.png
Sprite version of Sister Mode selection graphic.

So what could this mode be? The programmers should shed a portion of answer to us.
Sprite version of the mysterious "Another Mode" selection graphic, misspelled. It's yet another evidence of "Another Mode" itself did exist at one point but being abandoned/replaced by Old Axe Armor mode fairly early.

Fake Trevor

CVPoR T ralf 2 palette 022E0DC8-06.png
Fake Trevor never had an exclamatory mark following a partner's action in this game, nor in Symphony of the Night.

CVPoR-T ralf 3 palette 022E0DC8-07.png
A bone made tomahawk-like weapon. Probably intended for Axe sub-weapon for Fake Ralph/Trevor. Even in Symphony of the Night it didn't make an appearance.

Unused Enemies

CVPoR-RulerSword2.png
Ruler Sword/Spectral Sword's graphic data has a strange rope-rod-like weapon that can't be seen in the final version. The grey-ish palette is the closest palette possible for it.

Unused Attack Motion

CVPoR-RichterAirDiveKick.png

Richter has an unused air dive kick attack that even has hitbox properties programmed, but didn't make its debut until Harmony of Despair.

  • Even attempting to force the double jump-air dive kick into Richter's arsenal doesn't trigger this sprite, defaulting to the spinning kick animation as a failsafe (→, ↓, ←, → + Y) instead, meaning a further in-depth hack is needed to replace the misplaced graphic pointer + animation of air dive kick to the correct one.
  • If the proper animation of air dive kick is loaded, the air dive kick move works just as it should, but the leg has rather strange hitbox behavior which makes it hard for Richter to avoid taking a hit after landing one himself. This is because the attacking animation itself is executed wrongly; the animation set will load what should be the graphic of the start up sprite

CVPoR-RichterAirKickStartUP.png thus Richter's leg would retreat after a kick instead of always stretching to its full length when performing an air dive kick from on high.

    • The air dive kick also didn't have a straight down variant, which is probably another reason of it being abandoned: it's still not polished enough to pass the final cut.
  • The back flip counts as a successful double jump thus the player can execute an air dive kick during the back flip animation should the air dive kick be restored.

CVPoR-Sniper-Frame 2.pngCVPoR-Sniper-Frame 22.png

Lerajie's unused shooting variant; it's actually a leftover from the preview video mentioned above, though she never shoots bullets without an arc in the final game.

Unused Enemy Behavior

CVPoR-RazorBatSpawner.png

Razor Bat retains the spawner version variant from Rondo of Blood and uses the exact same speed as in Rondo. This may cause it extremely hard to avoid its blade attacks so the reason it got abandoned is probably because balance concerns.

Leftovers From Previous Games

A huge portion of leftovers from previous Castlevania games.

Dawn of Sorrow Leftovers

Bullet Soul: Axe Armor Level 2 and 3

Actually, Richter's Axe sub-weapon doesn't share the same ID as Jonathan's, and such is the case of Richter's Cross/Holy Water. The two version's Holy Water are divided and they have different attribute (Richter's version lacks flame).

The game contains a leftover of Bullet Soul: Axe Armor (Level 2) from Castlevania: Dawn of Sorrow. It can be accessed in the Japanese version (NDS-0676) by using an Action Replay code below:

94000130 000003FB
D3000000 02111C38
D5000000 00000099
C0000000 000000D2
DC000000 00000000
D8000000 00000000
D2000000 00000000

Use the code and press SELECT in-game in order to add the Axe Armor Bullet Soul (Level 2) as a replacement for Richter's Axe sub-weapon. Compared to it, the normal Richter Axe sub-weapon sprite, and the Level 1/Level 2 forms Bullet Soul: Axe Armor in Dawn of Sorrow, it strongly supports a theory that Richter's version was borrowed directly from Dawn of Sorrow, and even the abandoned (old/DoS system) leveling system was not deleted. Julius in Dawn of Sorrow, actually, also borrowed that very soul for his Axe sub-weapon. It likely was never claned up by mistake during development or they just didn't bother.

Here's a text dump comparison below:

English Name Japanese Name English Description Japanese Description
Old Axe Armor's "Pupper Master" Sub-weapon Puppet Master パペットマスター Throw a puppet and switch places with it. 投げた人形と位置を入れ替える
Richter's Axe Sub-weapon Axe アックスアーマー Throw an axe upwards. 上方に斧を投げる
Richter's Cross Sub-weapon Cross 十字架 A holy cross that dispels evil
Richter's Grand Cross Cross グランドクルス J
Richter's Holy Water Sub-weapon Holy Water 聖水 Blessed water that wards off evil.
Maria's Seiryu Sub-weapon Seiryu せいりゅう M
Maria's Suzaku Sub-weapon Suzaku すざく M
Maria's Byakko Sub-weapon Byakko びゃっこ M
Maria's Genbu Sub-weapon Gnebu げんぶ M
Jonathan's Axe Sub-weapon Axe おの A throwing axe that is especially effective against targets overhead. 対空用の手投げ斧
Jonathan's Cross Sub-weapon Cross クロス A holy cross that dispels evil. 邪を払う聖なる十字架
Richter's Holy Water Sub-weapon Holy Water せいすい Blessed water that wards off evil. 魔よけ効果の高い、清められた水

...All sub-weapons/soul abilitles borrowed from Dawn of Sorrow, included Julius mode-only sub-weapons, had their description/name untouched, but some may have updated in English text in order to match the description of existing version (?) - Jonathan's sub-weapon. Maria, on the other hand, used capital M for description placeholder like how capital J was intended for Richter's sub-weapon - which are - actually borrowed from Dawn of Sorrow Julius (!)

CVPoR-RichterAxeMaster.png

  • Richter's Axe sub-weapon can be edited through editing tools as an enemy drop/pickup and thus can be equipped by Jonathan. If any Skill Mastery point milestones are set and then reached in game, Richter's Axe sub-weapon will change to the one seen in Dawn of Sorrow just like the regular Axe sub-weapon.
    • By default, the evolved "Axe Armor Bullet Soul's" damage is the same as Jonathan's regular Axe sub-weapon and thus can deal abnormally high damage output to enemies with slash weaknesses or has large body frames.

CVPoR-F ub01 palette 022C66BC-01.png

  • All three levels of Bullet Soul: Axe Armor are stored along with other leftover graphics of Dawn of Sorrow Bullet Souls, even a single frame of Soma is along with them!

Dawn of Sorrow Axe Armor

CVPoR-F axe00 palette 022C66BC-01.png CVPoR-F axe01 palette 022C66BC-01.png

The folder sc/f_axe00.dat-sc/f_axe01.dat contains graphics of Dawn of Sorrow Axe Armor! It could be anything, from a legitimate way to get richter's Axe move for Jonathan, or just a leftover along with its soul powerup, or they could have merely forgot to remove the DOS Axe Armor altogether.

Old Boss Intros

The steel door belongs to a part of Balore, only appears in Dawn of Sorrow. Balore himself does appear in the game, but since he is located at one single room in Nest of Evil and Boss Rush mode, there's no chance to see the steel door. The time stop part of Zephyr's intro, only appears in Dawn of Sorrow. Zephyr is also in the game, but since he only appears in Nest of Evil, there's no chance to see the intro.

The Balore and Zephyr boss intros from Dawn of Sorrow remain in the game data should the player hack them in a more-than-two-screen length room in anywhere other than Nest of Evil through map editor tools, and set their Var A value as 01.

  • When the Var A value of Dawn of Sorrow bosses is set to 01, the game will read their variant in Dawn of Sorrow story mode glitches may ensue when putting them in one-block rooms.

Leftover Objects

CVPoR-Blocker-Frame 0.png CVPoR-Blocker-Frame 1.png CVPoR-Blocker-Frame 2.png CVPoR-Blocker-Frame 3.png

A leftover road blocker object from Dawn of Sorrow, redrawn and unused in that game anyway. Likely used in a demo version, although a preview of early gameplay did show this roadblock graphic in action.

  • When the blockade object is restored in-game through editing tools, it will be considered a solid wall by the game, blocking off both players and corporeal enemies.

CVPoR-Blocker-Frame 4.png
The Dawn of Sorrow style wooden wall included within the barricade's graphics.

CVPoR-SomaBatCompany.png
A single frame of Soma's Bat Company Morph from Dawn of Sorrow is left within the graphic data of Owl Morph for some reason.

CVPoR-F dest01 palette 022BC7B4-06.png
Leftover destructible objects from Dawn of Sorrow Castle Top Floor.

  • Though Mimic did appear in this game, an ordinary variant of Mimic's treasure chest is not included in-game.

Symphony of the Night Leftovers

CV Portrait of Ruin-Discuslord.png
Hidden within the graphical data for Amducias are graphics for the Discus Lord from Symphony of the Night. The enemy has two animations for idling and throwing his discus.

  • Hitbox properties intact.

CVPoR-LegionLaserOld.png
Legion's old "berserk mode" laser attack from Symphony of the Night after all corpse parts removed.

CVPoR-MalachiOldFog.png
Malachi's graphic data contains his old Symphony of the Night fog effect leftover.

CVPoR-Owl.png
A single frame of Owl from Symphony of the Night. Owl didn't appear in the DS title until Order of Ecclesia.

CVPoR-MinotaurBlocking.gif
Minotaur still has his Symphony of the Night blocking animation as a boss.

SOTN RichterStairs.gif
Richter still has most of his Rondo of Blood graphics in the ROM, including all stair-related animations. These unwelcome reminders of Castlevania's past thankfully go unused.

Technical explanations:

  • The 2D Castlevania games from Symphony of the Night to Order of Ecclesia all treat stairs like ramps for character's mechanisms (excluding Harmony of Dissonance which used specially coded stairs for the hidden NES Simon).
  • The new Portrait of Ruin system defaults Richter's moving animation to running (excluding when Richter is moving the pot in Keremet fight; the pushing animation uses walking animation graphic from Rondo of Blood and Symphony of the Night but the Keremet fight room didn't have stairs. It's because even in Symphony of the Night Richter's pushing-boxes animation is treated as a walking animation.)
  • Richter's graphics didn't get a total overhaul following the system moving to DS.
    • Despite all the old Rondo of Blood sprites are in the ROM, the animation set is incomplete (lacking animation set when walking down stairs).

SOTN RichterUnusedPowerUp.gif
Richter's unused Symphony of the Night punching/power-up animation.

CVPoR-RichterPowerup.png
Richter's Symphony of the Night power-up animation used when he's about to power-up his whip to flame whip.

  • Animation set is still in the ROM but left unused.

Knife Item Crash animation on the ground. Animation when walking down the stairs. Unused in Symphony of the Night. Animation when climbing stairs. Unused in Symphony of the Night.

Richter's Knife Item Crash Animation is still in the ROM, but Richter never uses any Item Crash other than Grand Cross (which itself was a receycled Julius Mode move).

Rondo of Blood Leftovers

The shield probably has a connection to his immunity to sub-weapons as an enemy, the most possible situation is that you can remove his shield in old-style - just like Rondo of Blood - to make him vulnerable... but why it was removed in-game is unknown. The shield could have more possibilities if it could be used by player...

Old Axe Armor's graphic data contains their shield from Rondo of Blood but never used in-game.

  • Hitbox properties intact.

CVPoR-MinotaurIntro.png
Minotaur's graphic data contains his old boss intro from Rondo of Blood but never used due to him being a regular enemy in this game, and never having the opportunity to bust through a door.

CVPoR-CreatureStone.png
The graphic data of Frankenstein's Creature contains his old stone debris attack from Rondo of Blood but never used since all his attacks are upgraded for the new game engine.

  • Hitbox properties intact.

CVPoR-MummyManStrike.gif
Mummy Man/Akmodan II still has his old Rondo of Blood bandage attack in the ROM but it's actually modified in this game to be a heat seeking bandage attack.

CVPoR-RazorBat0.png
Along with Razor Bat's graphics assets are chipset graphics from Stage 7 of Rondo of Blood.

CVPoR-F raura1.png
Stored in Laura's graphic files are tiles for the Carmilla boss arena from Rondo. All original Rondo of Blood palettes are intact.

Regional Differences

Typos

US Europe
Technically, "Lee-Cheetah" is actually how Japanese would spell "Richter" and used in their own genre in usual. But since Richter is an actual name and "Richiter" is kinda nonsense...

Richter's name was spelled as "RICHITER" on the Japanese and US versions' file select screen (Due to an apparently miss in Japanese-English spelling conversion). This was corrected in the European version, and the Japanese revision.

US Europe
Same with Richter. A rare case where taking the L was good.

Charlotte's name was missing an L on the Equip screen (also because of Japanese-English romanization). This was also fixed in the European version and later Japanese revision.

Vampire Killer Description

Cacti speak Japanese.
...But what does it mean?
This game has text or audio that needs to be translated. If you are fluent with this language, please read our translation guidelines and then submit a translation!
Notes: The descriptions are slightly different in Japan.
Japan English
CVPoR-JP JonathanVK1Stats.png CVPoR-US JonathanVK1Stats.png
CVPoR-JP JonathanVK2Stats.png CVPoR-US JonathanVK2Stats.png

It should be no surprise that a lot of items were renamed or had their descriptions changed during translation. However, it seems that the Vampire Killer whip had unique descriptions for the normal and "unlocked" versions in Japan. The English version just uses the same line of text for both versions.

Glitch Fixes

There are several glitches and exploits in Portrait of Ruin in other countries that got fixed for the European release and Japanese revision.

Bug Japanese
version
North American
version
European
version
Japanese
revision
Players are able to skip Wind/Eric's congratulatory line about finishing the Quest with the Start button thus can duplicate Wind/Eric's Quest rewards. Present Present Fixed Fixed
Players are able to glitch out of the roofs in the Great Stairways by using Rocket Slash - Toad Morph combo. Present Present Fixed Fixed
A glitch involving being permanently locked in Death's room when players return to the boss room after beating and skipping the boss' dialogue. Present Present Fixed Fixed
An exploitable glitch about carrying over progress (all, including stats, map and even the same save point) to a new level-cap game. Present Present Fixed Fixed
Players can glitch the Cross' graphics should Jonathan equip the Cross and Charlotte use a partially charged Spirit of Light spell (ideally via the partner skill button) and then swap Charlotte's magic to something else before she fires the light out (Thor's Bellow is usually recommended and also only partially charged) then release the magic when a Cross is onscreen. Present Present Present Fixed
(Source: http://www.vgmuseum.com/mrp/cv-por/documents/glitches.htm)