Castlevania II (Simon's Quest) - Multilingual enhancement

Started by Bisqwit, December 19, 2012, 01:38:36 PM

Previous topic - Next topic

TheZunar123

Quote from: Vanya on April 05, 2013, 10:27:24 PMB button should be confirm, and A should be cancel as a rule of thumb.
I don't know where you got that crazy idea. That should be switched around, A should be confirm and B should be cancel. It really bugs me when they are switched.
Speedrunner and Let's Player.
www.youtube.com/ZunarSR

Bisqwit

Thank you Vanya for your valuable out-of-box thoughts.

> crows (and maybe bats?), right? They can just fly away.
Hmm, true. But now I made them just burn away like the zombies do. Saved me from having to write new AI code. :-)

> The Priests say this:
There were several situations where I tried to avoid excessively using the word "the" even if it is with the cost of technical correctness. This is one of them. I wanted to keep the text more fluent, and not have the 50% of the lines consisting of the same preposition repeated (exaggerated). I will change it if people agree it should be done though.

> When I exit from saving, Simon jumps when I return to the game.
Use the start button rather than the A button to select the Cancel option. I will fix it some day when I stumble upon the right way to do it.

> In towns at night it would be a nice touch to make the open doors close so they don't look
> like you can enter them. perhaps bank swapping could be used to accomplish this.

That's an idea I agree with. I'm not sure if I can pull it off, though. I'll leave it late in the checklist, since it requires in-depth study of the level data.

> experience from destroying enemies instead of from collecting hearts.
I agree with this in principle, but it's just how the game happens to work. For now I don't think I will act on this idea.
Also, re: game balance, changing this would double or triple the rate at which Simon will receive level-ups, potentially breaking the game balance. Since the minimum exp. increment is already 1, you can't reduce the amount of experience given per kill, either. You would need to increase the thresholds for level-up, and that is an uncomfortable idea.

> if the up button is being pressed so that dialogue doesn't interrupt
Minor, too specific nuisance, in my opinion. Probably harmless to change though.

> In the status dialogue use a whip icon instead of writing out the word like how you did on the save screen.
I did it in the credits and in the save screen for space reasons, and I still had to use VWF and custom tiles to pull it off. In the status screen, the space is enough, except for leather whip. I don't think I am going to change it for now.

> Activating the clues menu with the left and right arrows seems a little counter intuitive. Consider using the B button instead.
The reason why it works like that is because the status screen does not capture the A or B buttons, and I was too lazy to rewrite the surrounding code to do so. I did the best that I could with arrow keys and the start button.

> skeletons
Yeah, not going to touch them. It's a bit too holy-cowey to me.

> to give town interiors a different tile set
Perhaps. But I am not feeling graphics artisty enough. If someone is, I am open for contributions (but I do not promise to approve them).

> change the behavior of the text scroll
Will have to think about this. Thank you for your valuable input.

> Consider changing the dialogue for the gypsy people that appear [...] keeps giving
This is indeed on my TODO list. It is exactly the sort of stuff that the "dialog extensions" is about. I already did it for the fire hermit.

Vanya

Quote from: TheZunar123 on April 05, 2013, 11:42:36 PM
I don't know where you got that crazy idea. That should be switched around, A should be confirm and B should be cancel. It really bugs me when they are switched.

Many decades of playing games where B is the primary button used to do your main attack. B is the aggressive button used to take offensive action. A is the passive button used to retreat by jumping away. Even in SMB where jumping is your main attack, you still spend most of your time interacting with the B button by holding down to run. And in CV2 B is the main action button used to attack, throw sub-weapons and  initiate dialogue.


Quote from: Bisqwit on April 06, 2013, 12:56:55 AM
Thank you Vanya for your valuable out-of-box thoughts.

My pleasure. You can expect more as I play through the game.

As a matter of fact I just thought about something I took for granted while I was working on my CV1 fan game. The body parts and crystals are basically relics like in the metroidvanias. So wouldn't it be nice if you could just turn them on and off? It is a bit of an unnecessary hassle to have to be switching between them. They probably aren't coded to allow their effects to overlap, but it could be an interesting challenge to get them to do so.


Quote from: Bisqwit on April 06, 2013, 12:56:55 AM
> When I exit from saving, Simon jumps when I return to the game.
Use the start button rather than the A button to select the Cancel option. I will fix it some day when I stumble upon the right way to do it.

This I'm curious about. Would changing it to B result in Simon whipping when I exit? Come to think of it this might be the reason why they didn't use B & A button inputs on the status menu.


Quote from: Bisqwit on April 06, 2013, 12:56:55 AM
> skeletons
Yeah, not going to touch them. It's a bit too holy-cowey to me.

I might do it just to see if I can figure it out. At the very least I'd prefer to have the bones not burst into flames.


Quote from: Bisqwit on April 06, 2013, 12:56:55 AM
> to give town interiors a different tile set
Perhaps. But I am not feeling graphics artisty enough. If someone is, I am open for contributions (but I do not promise to approve them).

I'll do it. I'm in the mood since I've been making new 8-bit graphics for my Eggerland remake lately. Plus at the very least I'll use them myself for my personal version of the patch.

MathUser2929

I don't think there should be drastic changes to the graphics. It might make sense to some people to add sheetrock to the walls or whatever (if that existed back then), but that would probably lead to redesigning the mansions, maybe adding chandeliers and other luxury items like vases to try to make the level make more sense in the real world. That might lead to readding the cv1 castle entrance graphics back to draculas castle to create a blah moment where you've already seen those graphics many, many times replaying cv1 on NES and GBA.

I see what is being said when B should be confirm and A cancel. In the US on Playstation games, this is what is done for the most part. In JP it is common to have Circle (A) confirm and X (B) cancel. But in US X is usually confirm and Circle is usually cancel. It can be confusing on some localized US games that don't switch the buttons. For a while you might be pressing the wrong button to confirm and cancel until you've played the game a while. Dunno why it was decided to make it different in different regions.

To fix the not enough room for all the whip icons problem. Simply add a arrow at the left and right side of the whip selection screen. Then when the player reaches the left or right most side of the screen you can scroll further left or right to find the rest of the whips. Or you could have just one whip on the screen at the time with the icon on the left and a abbreviation of the name on the right. Then pressing left or right will change the whips.

Any reason why the B button has to exit the menu? You could disable that. It'd be consistant with other Castlevania games. In other Castlevania games you expect for Start button to be the only button to enter and exit the menu. The same could be done for the map if you allow B button to exit them too.

Vanya

Nope. No sheetrock back then. Stucco, plaster, stuff like that, yes. Hell even mud. I don't see why the interiors looking not exactly like exteriors in towns has to necessarily lead to any other graphical changes. But it IS outside the main focus of this project. But I think it's clear that I have no qualms about those sorts of changes anyway.

I thought of something a minute ago and was the reason I'm posting in the first place.
Since the "Horrible night" and "Vanquishing sun" dialogs are gone and the were intended to be in the game...
Are they going to appear anywhere else? Maybe as part of the extended dialogue portion of the patch?

MathUser2929

I'd probably click the option to restore the day/night transition dialogue if one were offered. Funny that the hack is a retranslation, yet dialogue is being removed.

Bisqwit

Quote from: Vanya on April 06, 2013, 06:10:04 AMSince the "Horrible night" and "Vanquishing sun" dialogs are gone and the were intended to be in the game...
Are they going to appear anywhere else? Maybe as part of the extended dialogue portion of the patch?
No, they do not appear at all (well, one of them does appear if you somehow get a clue #14 and read it on the status screen; this would involve a glitch / RAM hack though).

Quote from: MathUser2929 on April 06, 2013, 09:17:29 AMI'd probably click the option to restore the day/night transition dialogue if one were offered. Funny that the hack is a retranslation, yet dialogue is being removed.
Thou art given ye choice.
I'm not a purist on definitions of words here.

MathUser2929

So far, the removal of the day/night transition text doesn't seem to be popular:

http://castlevaniadungeon.net/forums/index.php?topic=5519.30

I think it was an oversight to not include text when leveling up. It was obviously intented to be there going by the unused leveling up text. I think having no text indicating that night is changing to morning and day is turning to night could be seen as an oversight if the original game didn't have the transitional text. That transitional text marked the time of day. You can't really tell what time of day it is going by the ingame clock I think. It just keeps going up and up, it don't reset when 24 hours pass. Newcomers could get confused. Pokemon Gold/Silver/Crystal and later games, do have a AM/PM indicator on the clock I think, so when the palette changes at least the clock will tell you that it's nighttime or morning. If you really must remove the text for the day/night transitions, could you add a day counter and have the timer reset when 24 hours pass? If need be you could maybe press a button when you highlight the timer to show accumulated time.

Bisqwit

Quote from: MathUser2929 on April 06, 2013, 10:27:17 AM
So far, the removal of the day/night transition text doesn't seem to be popular:
http://castlevaniadungeon.net/forums/index.php?topic=5519.30

I don't know, the response so far in this RHDN thread has been quite good. But then again, since you've got the choice, what are you sulking about? P.S. When was the last time you actually tried this patch? You seem to complain a lot of things based on what you've just read.

TheZunar123

Quote from: Vanya on April 06, 2013, 04:34:10 AM
Many decades of playing games where B is the primary button used to do your main attack. B is the aggressive button used to take offensive action. A is the passive button used to retreat by jumping away. Even in SMB where jumping is your main attack, you still spend most of your time interacting with the B button by holding down to run. And in CV2 B is the main action button used to attack, throw sub-weapons and  initiate dialogue.
I see your point. I guess it's just this psychological thing for me, whenever I see a B Button I immediately assume that it's used as a Cancel button and A as the Confirm button.

It might also be because of the games I've played. EarthBound, Chrono Trigger (the controls are customizable though, so the point is kinda flat on this game), the Final Fantasy games (at least the SNES ones, I haven't played any other than DoS, 3-6, and 8 ), most of the Zelda games (barring the original, which had Attack on A and Items on B, which bugs me even more), etc., just to name some.
Speedrunner and Let's Player.
www.youtube.com/ZunarSR

KingMike

Quote from: MathUser2929 on April 06, 2013, 04:42:23 AM
I see what is being said when B should be confirm and A cancel. In the US on Playstation games, this is what is done for the most part. In JP it is common to have Circle (A) confirm and X (B) cancel. But in US X is usually confirm and Circle is usually cancel. It can be confusing on some localized US games that don't switch the buttons. For a while you might be pressing the wrong button to confirm and cancel until you've played the game a while. Dunno why it was decided to make it different in different regions.
I don't why Sony was (supposedly) insistent on changing it for the west. The Circle and X were chosen BECAUSE those symbols mean success (right) and failure (wrong) in Japanese. (they also said the Square was meant to be a document (menu) button and Triangle a camera button.)
Despite that Triangle is the same place as the SNES X button, which was a menu button in most RPGs following the Final Fantasy menu style (primary action button is talk/search) over the Dragon Quest style (using a menu even to talk/search).
"My watch says 30 chickens" Google, 2018

Fes

Quick question since you know the game's code inside and out by now. I used to speedrun this game years ago, and always wondered about the heart drop algorithm. While practicing in an emulator I noticed that whether or not an enemy drops a heart is related to controller input, but couldn't glean any more than that. I'm curious if there's a weakness in the algorithm that could be exploited to increase the odds of a heart drop without requiring TAS-like precision.

Bisqwit

Quote from: Fes on April 06, 2013, 12:16:41 PMQuick question since you know the game's code inside and out by now. I used to speedrun this game years ago, and always wondered about the heart drop algorithm. While practicing in an emulator I noticed that whether or not an enemy drops a heart is related to controller input, but couldn't glean any more than that. I'm curious if there's a weakness in the algorithm that could be exploited to increase the odds of a heart drop without requiring TAS-like precision.

When an enemy dies, it turns into object $36 (burning flame), unless it's a special soulless creature which simply erases itself. After 24 frames of burning, object $36 turns into object $37.
Object $37 samples RandomSeed (RAM $2E). If the value is even (bit 0 is clear), the object erases itself. Otherwise (bit 0 is set), the object assumes the appearance of a heart, and goes on to idle for 240 frames before erasing itself. The type of heart is identified by sprite number, which is $8B, $8C or $8D depending on heart size. The heart size is assigned by reading an array which defines the heart class depending on enemy type and whether it is night (or a mansion).

RandomSeed (RAM $2E) is permutated in the game's main loop at maximum speed using the following formula: RandomSeed += FrameCounter (RAM $1D).

Given the RandomSeed value within a NMI, the value of RandomSeed at the beginning of next NMI will be approximately (RandomSeed + FrameCounter * n) % 256, where n is the number of clockcycles remaining before next NMI, divided by 14.
I say approximately, because the NMI may occur at any point within the permutation loop, including after the ADC and before the STA, meaning it may still do one addition with the old FrameCounter value before using the new one.

FrameCounter (RAM $1D) is incremented by 1 every non-lag-frame.

A particular consequence of this design is that nearly anything you do, including holding down buttons that do not do anything but are nonetheless checked for, will affect the RandomSeed, because it affects how many cycles are spent in the NMI. It also means that when FrameCounter is EVEN, chances are that nothing you do will change the fact of whether a heart is generated on the next frame or not.

MathUser2929

Oh, I see that you added the option to have the day/night transitional text on your website. Good. Usually I only play incomplete hacks when it's obvious the author abandoned the hack and no future revisions will be released. Since there are frequent updates to this hack, I'll probably hold off on it. I like to hear what is added tho, so I'll know what to look for when I do play it.

Vanya

Another thought. One of the things that makes platforming in CV2 more of a hassle than it should be is the fact that Simon collides with overhead block when he jumps. The problem with that is that the designers didn't really compensate for this as much as they should have. This causes certain jumps to be a pain in the ass where in CV1/CV3 they pose no problem at all. Perhaps an option to use CV1/CV3 style collision detection is in order? Presumably the simple thing would be to branch passed the block collision code if there is not solid object directly over Simon's head.

EDIT: It's a minor thing, but maybe the orbs in the mansions shouldn't reappear after I get the body part.

EDIT2: Maybe make the Ferryman stop when he reaches the opposite shore? To bock just talk to him again. Presumably the way he works is that when you talk to him he changes into a different object or switches to a mode where he ignores button input. So when the opposite shore is reached just change him into the appropriate object or switch modes or whatever.

EDIT3: If there were more space in the status menu I'd say that a possible alternative to changing the purpose of money might be to change all the sub-weapons to use individual inventories like the laurels and garlic. This would extend the lives the merchants that sell sub-weapons. Of course the sub-weapons that consume hearts might be a complication. They could be kept as a set of true sub-weapons, their heart use could be removed and secret merchants just for their inventory could be added, or simply more of them could be hidden in more locations. Either way this would greatly impact game play, and would depend on being able to expand the status menu anyway.

Bisqwit

Quote from: Vanya on April 06, 2013, 04:01:21 PM
Another thought. One of the things that makes platforming in CV2 more of a hassle than it should be is the fact that Simon collides with overhead block when he jumps. The problem with that is that the designers didn't really compensate for this as much as they should have. This causes certain jumps to be a pain in the ass where in CV1/CV3 they pose no problem at all. Perhaps an option to use CV1/CV3 style collision detection is in order? Presumably the simple thing would be to branch passed the block collision code if there is not solid object directly over Simon's head.
Doing that would allow for some, hum, creative shortcuts.




> maybe the orbs in the mansions shouldn't reappear after I get the body part.
True.

> Maybe make the Ferryman stop when he reaches the opposite shore? To bock just talk to him again.
A reasonable request. I'll keep this in mind if I some day stumble upon the convenient solution to doing that. Then again, there's some recognizable nostalgia in having to jump off at the shore as it is now :-)

Bregalad

The problem I see is that despite that I picked a "no save game" feature patch, I still have the save option show up (even if it can't be used).

Thanks god the old versions of the patche are still there :)

Turambar

Is it good or bad that the life bar disappears during the day/night transition?
Is it possible to create an exception for the life bar during transition?
I don't see much point for it to disappear.

Bisqwit

Quote from: Bregalad on April 06, 2013, 05:39:21 PMThe problem I see is that despite that I picked a "no save game" feature patch, I still have the save option show up (even if it can't be used).


If Excitebike can get away with that, so can Simon's Quest. (With the difference being that Simon's Quest doesn't crash when the feature is not available.)

(It is too much trouble to change it, for reasons related to the internal design of the patcher.)


Quote from: Turambar on April 06, 2013, 06:32:07 PMIs it good or bad that the life bar disappears during the day/night transition?
Is it possible to create an exception for the life bar during transition?
I don't see much point for it to disappear.

There are a few things that you cannot do during the transition. You cannot talk to people, you cannot bring up the map, and you cannot enter the status screen. These are probably mandatory. This is also signified by the life bar disappearing. There is no real obligation for the life bar to disappear though, and I might in fact bring it back. (Its disappearing was not planned to begin with: the manner in which the game calls the render-HPbar function reeks of bad coding and hindsight, which I had not accounted for.)


Quote from: MathUser2929 on April 06, 2013, 12:58:35 PMOh, I see that you added the option to have the day/night transitional text on your website.

It was there already in the very moment I released the palettefade patch. Please, stop making stupid accusations based on your own willingful ignorance. This is not the first time I say this to you.
Also, if you indeed plan to withhold yourself the trying out of this patch until it is "finished", you are up for a long wait. This patch was already finished months ago. Things are added to it, because of how development goes. Pet projects are never finished. There is no goal line. Attention to them usually just eventually and gradually diminishes. If you plan never to play this patch, there is not much point to argue about it based on your own ideas on what it should or should not be.

MathUser2929

Beta testing hacks can be appealing sometime if there are features that you really want to try out right away. I beta tested Sonic Classic Heroes before release cause I wanted to try Sonic, Tails, Knuckles as a team with Sonic 1 + 2 levels. The currently released version only had Sonic 2 levels. Anyway, I'm gonna hold off testing this hack probably, at least till the JP instruction manual story is inserted.