News: 11 March 2016 - Forum Rules
Current Moderators - DarkSol, KingMike, MathOnNapkins, Azkadellia, Danke

Author Topic: Dragon Quest I - IV: Delocalized Editions  (Read 46822 times)

Tom

  • Hero Member
  • *****
  • Posts: 608
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #80 on: January 13, 2019, 02:45:17 am »
I like your proposal of Slime Bess a lot more than "She Slime."

laserlambert

  • Jr. Member
  • **
  • Posts: 23
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #81 on: January 13, 2019, 12:53:06 pm »
Wouldn't Slime Beth/Slimebeth work better? S is often used instead of Th in Japanese, and according to the wiki Dragon-Quest.org, Beth being the second letter in Hebrew alphabet implies that it is the second slime you meet (like the equivalent of calling it Slime B or Slime Beta), plus with Beth/Elizabeth being a woman's name, it keeps the female connotation.

BTW, what is the origin for the tile-set you are using in the DQ1 patch, alot of the wall tiles and the tiles of the king's throne look odd and don't look like the ones in the japanese Dragon Quest rom I have, and the change isn't listed in your description of the patch. Is there some reason I'm unaware of for why it looks like that?

« Last Edit: January 13, 2019, 01:02:14 pm by laserlambert »

Tyrantnyx

  • Jr. Member
  • **
  • Posts: 29
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #82 on: January 13, 2019, 02:51:59 pm »
I really like Slime Bess, partly because I always names my Beast Slime in Dragon Warrior Monsters 2 Bess, and I've seen Slime Bess in a couple games I used to like playing.

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #83 on: January 13, 2019, 04:01:04 pm »
Wouldn't Slime Beth/Slimebeth work better? S is often used instead of Th in Japanese, and according to the wiki Dragon-Quest.org, Beth being the second letter in Hebrew alphabet implies that it is the second slime you meet (like the equivalent of calling it Slime B or Slime Beta), plus with Beth/Elizabeth being a woman's name, it keeps the female connotation.

I've also thought about Beth and I've seen it suggested in various sources. I agree that it would be one possible way to render the word besu in English. But transliterating besu wasn't really my goal. I wanted to create a situation that mimicked the similarity between mesu (general term for a female animal) and besu (nonsense word) in Japanese. I looked at a lot of words for female animals in English (sow, cow, doe, etc) and without an equivalency that captures how general mesu is, I thought that "slimess" would be the best option. I could make the same mesu/besu tweak and display it as “slimebess” but that looks a little inelegant to my eyes—and I’d like to hear if anyone likes that one better. I chose Slime Bess with "Bess" not intended as a proper name, but as a made-up word that denotes female in the slime family, like doe, sow, etc. It is also one that thankfully sounds distinctly female. If I were looking for a female proper name, Beth would be a fine option but that wasn't the intention. As far as the connection to the Hebrew #2, well--it's certainly interesting but I think one of us would have to meet Horii and pin him down to get the true interpretation of the mysterious "besu". This has been much speculated in Japan so I'm sure he has a long history of evading those questions.  :laugh:

BTW, what is the origin for the tile-set you are using in the DQ1 patch, alot of the wall tiles and the tiles of the king's throne look odd and don't look like the ones in the japanese Dragon Quest rom I have, and the change isn't listed in your description of the patch. Is there some reason I'm unaware of for why it looks like that?



Great question. In fact, I discovered this bizarre situation this morning when I was pulling some text from the Famicom game for translation purposes. At first, I assumed that all those tiles were changed for the US version and I was perplexed as to why the cutting room floor site didn't detail this. Then I discovered that some roms with the normal US release label have those tiles and others have the tiles native to the Famicom game. You'll see the same disparity on various youtube videos. After doing additional research, it turned out that multiple rom sites had mistakenly offered the graphical hack that you see as the original rom without notating it, thus propagating massive confusion. I've been using that rom for so many years that I simply forgot it ever looked different. After this shocking discovery, it gave me double the fire under my ass to finish this massive script overhaul in the next few days so you can all be spared of these alien graphics that go totally against my intention for this project. I was hoping no one would notice in the meantime.  :laugh: This has been sitting here for awhile and you are the first! Hold tight for the update. I don't want to send out my new script half-finished.

« Last Edit: January 13, 2019, 04:22:10 pm by Chicken Knife »

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #84 on: January 14, 2019, 12:01:12 pm »
The first step was getting the script extracted and insert-ready through abw's fantastic abcde software.
Heh, thanks for the praise, but let's try not to oversell it - abcde is pretty great at some things, but it still has a long way to go before it really earns that "fantastic" :P.

My original version was limited by the length of individual lines so I'm overjoyed to have cast off that restriction.
If the next limitation you run in to is total available space, don't forget about options such as adding DTE compression (see e.g. the Dragon Warrior 1 in Spanish thread) or ROM expansion (see e.g. the Help editing Item Names (and other text) in Dragon Warrior (NES) thread); you could easily increase the effective amount of available space by a couple of orders of magnitude if you combined both approaches.

Slime Bess
In related news, I came across the code for pluralizing monster names in Dragon Warrior II (used e.g. in the text "Three Slimes appeared") and summarized it on the wiki, so if you haven't done so already, you might want to check whether any monster names you changed in DW2 still get pluralized correctly.

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #85 on: January 14, 2019, 01:38:29 pm »
In related news, I came across the code for pluralizing monster names in Dragon Warrior II (used e.g. in the text "Three Slimes appeared") and summarized it on the wiki, so if you haven't done so already, you might want to check whether any monster names you changed in DW2 still get pluralized correctly.

Ok, this is interesting. I noticed in DW2 that plural forms were handled quite differently than they are in DW3, where the monster names are immediately followed in the list by an opcode indicating the appropriate plural form. (I charted them out and could send the list if you ever want it)

For DW2, 95 percent of the time the game seems to be handling my plural forms correctly but there were some exceptions to that. I think it would take another playthrough for me to remember them unfortunately. In cases where the existing plural form system doesn't accommodate my names, would you modify one of the existing options to accommodate it? For instance, I changed the Mouse names to Rat names per the Japanese so I don't need Mice.

One little nitpick on this topic. If you kill a group of different enemies in DW2 the text goes something like "You defeated the enemies". However, if you kill multiples of a single enemy (let's say Big Slugs), the game will tell you "You defeated the Big Slug." It's annoying having this text singular in some cases but plural in the others.
« Last Edit: January 14, 2019, 01:44:31 pm by Chicken Knife »

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #86 on: January 14, 2019, 04:08:48 pm »
Ok, this is interesting. I noticed in DW2 that plural forms were handled quite differently than they are in DW3, where the monster names are immediately followed in the list by an opcode indicating the appropriate plural form. (I charted them out and could send the list if you ever want it)
That sounds like useful information. How about putting it somewhere on the Dragon Warrior III wiki page so that everybody can benefit? :beer:

For DW2, 95 percent of the time the game seems to be handling my plural forms correctly but there were some exceptions to that. I think it would take another playthrough for me to remember them unfortunately.
It should be a lot faster to check your insert script or even just re-dump the monster list than to go through an entire playthrough - some of those monsters like to hide :P.

In cases where the existing plural form system doesn't accommodate my names, would you modify one of the existing options to accommodate it? For instance, I changed the Mouse names to Rat names per the Japanese so I don't need Mice.
Yeah, or in my case, since the entire English pluralization routine was wrong for a non-English translation, I ended up completely rewriting it.

One little nitpick on this topic. If you kill a group of different enemies in DW2 the text goes something like "You defeated the enemies". However, if you kill multiples of a single enemy (let's say Big Slugs), the game will tell you "You defeated the Big Slug." It's annoying having this text singular in some cases but plural in the others.
The closer I look at the English text, the more nits I see that are just asking for picking, especially if you care about capitalization :P.

This particular one shouldn't be too hard to fix, though. The game has different control codes for guaranteed singular names (0xF5 / 0b1110111101, used almost everywhere in the script) and possibly plural names (0xF3/0b1110111001, used only in the "X monster(s) appeared" texts), and I've verified that changing the "Thou hast defeated the [name]." text to use the possibly plural form works. Unfortunately, the same string is used not only when winning a battle, but also when killing an individual monster.

So, if you want some extra debugging/tracing practice, try tracking down the code that loads the "Thou hast defeated the [name]." string at the end of a battle and change it to use a separate new string that uses the possibly plural name instead.

Choppasmith

  • Full Member
  • ***
  • Posts: 134
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #87 on: January 15, 2019, 10:14:48 am »
In related news, I came across the code for pluralizing monster names in Dragon Warrior II (used e.g. in the text "Three Slimes appeared") and summarized it on the wiki, so if you haven't done so already, you might want to check whether any monster names you changed in DW2 still get pluralized correctly.

Oh, this is neat. I had thought Chicken Knife told me via PM that DW2 just tacks on an S for plural and that DW3 has a proper plural system (this made sense to me as I thought that's probably why they have dracky as "drackie"). This is great for me, the mobile port has some weird form of plurals, namely "madusa" which has the plural "madusae" and I wasn't sure how I was going to do "magus" whose plural form is "magi" In all my text rips, SE stores the monster names (DQ2) like this

Code: [Select]
<9Fslime/the /a /slime/the /some /slimes/N  0<9Fmaulusc/the /a /maulusc/the /some /mauluscs/N  7<9Firon <9Fant/the /an /iron ant/the /some /iron ants/N  .<9Fdracky/the /a /dracky/the /some /drackies/N  0<9Fratscal/the /a /ratscal/the /some /ratscals/N  6<9Fhealslime/the /a /healslime/the /some /healslimes/N  -<9Fspirit/the /a /spirit/the /some /spirits/N  B<9Fbubble <9Fslime/the /a /bubble slime/the /some /bubble slimes/N  7<9Farmy <9Fant/the /an /army ant/the /some /army ants/N  (<9Fmagus/the /a /magus/the /some /magi/N  3<9Ffat <9Frat/the /a /fat rat/the /some /fat rats/N  <<9Fcobra <9Fking/the /a /cobra king/the /some /cobra kings/N  <<9Fsomnol <9Fant/the /a /somnol ant/the /some /somnol ants/N  6<9Fdrackmage/the /a /drackmage/the /some /drackmages/N  9<9Fsentripede/the /a /sentripede/the /some /sentripedes/N  ;<9Fman o' <9Fwar/the /a /man o' war/the /some /men o' war/N  5<9Fdragonfry/the /a /dragonfry/the /some /dragonfry/N  K<9Fcorpse <9Fcorporal/the /a /corpse corporal/the /some /corpse corporals/N  '<9Fsmog/the /a /smog/the /some /smogs/N  9<9Fdirty <9Frat/the /a /dirty rat/the /some /dirty rats/N  0<9Fbadboon/the /a /badboon/the /some /badboons/N  0<9Fchewlip/the /a /chewlip/the /some /chewlips/N  6<9Fkillipede/the /a /killipede/the /some /killipedes/N  0<9Fmerlusc/the /a /merlusc/the /some /merluscs/N  -<9Fmadusa/the /a /madusa/the /some /madusae/N  ,<9Fshaman/the /a /shaman/the /some /shamen/N  E<9Fmud <9Fmannequin/the /a /mud mannequin/the /some /mud mannequins/N  ?<9Fbig <9Fbadboon/the /a /big badboon/the /some /big badboons/N  9<9Fsekerleton/the /a /sekerleton/the /some /sekerletons/N  0<9Fgremlin/the /a /gremlin/the /some /gremlins/N  ?<9Fgnashturtium/the /a /gnashturtium/the /some /gnashturtiums/N  9<9Fmummy <9Fboy/the /a /mummy boy/the /some /mummy boys/N  0<9Fgoregon/the /a /goregon/the /some /goregons/N  3<9Fsabrecat/the /a /sabrecat/the /some /sabrecats/N  7<9Fdragonfly/the /a /dragonfly/the /some /dragonflies/N  3<9Ftreeface/the /a /treeface/the /some /treefaces/N  3<9Fdeadnaut/the /a /deadnaut/the /some /deadnauts/N  B<9Fcobra <9Fkaiser/the /a /cobra kaiser/the /some /cobra kaisers/N  <<9Fmuddy <9Fhand/the /a /muddy hand/the /some /muddy hands/N  %<9Forc/the /an /orc/the /some /orcs/N  N<9Fmagic <9Fmarionette/the /a /magic marionette/the /some /magic marionettes/N  +<9Fmummy/the /a /mummy/the /some /mummies/N  0<9Ftreevil/the /a /treevil/the /some /treevils/N  -<9Fmiasma/the /a /miasma/the /some /miasmas/N  H<9Fwalking <9Fcorpse/the /a /walking corpse/the /some /walking corpses/N  5<9Fhawk <9Fman/the /a /hawk man/the /some /hawk men/M  3<9Fsorcerer/the /a /sorcerer/the /some /sorcerers/N  ?<9Fmetal <9Fslime/the /a /metal slime/the /some /metal slimes/N  9<9Fheadhunter/the /a /headhunter/the /some /headhunters/N  0<9Fheyedra/the /a /heyedra/the /some /heyedras/N  H<9Fbrainy <9Fbadboon/the /a /brainy badboon/the /some /brainy badboons/N  ?<9Fbloody <9Fhand/the /a /bloody hand/the /some /bloody hands/N  F<9Forc <9Fchieftain/the /an /orc chieftain/the /some /orc chieftains/N  9<9Fwhackolyte/the /a /whackolyte/the /some /whackolytes/N  *<9Fghoul/the /a /ghoul/the /some /ghouls/N  ?<9Fterrordactyl/the /a /terrordactyl/the /some /terrordactyls/N  9<9Fchasmonaut/the /a /chasmonaut/the /some /chasmonauts/N  Q<9Fstriking <9Fsabrecat/the /a /striking sabrecat/the /some /striking sabrecats/N  ?<9Fhunter <9Fmech/the /a /hunter mech/the /some /hunter mechs/N  0<9Fgrimlin/the /a /grimlin/the /some /grimlins/N  7<9Feyelasher/the /an /eyelasher/the /some /eyelashers/N  3<9Fgargoyle/the /a /gargoyle/the /some /gargoyles/N  7<9Forc <9Fking/the /an /orc king/the /some /orc kings/M  B<9Ftyrannodactyl/the /a /tyrannodactyl/the /some /tyrannodactyls/N  6<9Fberserker/the /a /berserker/the /some /berserkers/N  W<9Fliquid <9Fmetal <9Fslime/the /a /liquid metal slime/the /some /liquid metal slimes/N  2Hargonaut/the/a /Hargonaut/the /some /Hargonauts/N  /<9Fcyclops/the /a /cyclops/the /some /cyclops/N  K<9Fkilling <9Fmachine/the /a /killing machine/the /some /killing machines/N  B<9Fgreen <9Fdragon/the /a /green dragon/the /some /green dragons/N  3<9Fwrecktor/the /a /wrecktor/the /some /wrecktors/N  E<9Fdancing <9Fflame/the /a /dancing flame/the /some /dancing flames/N  C<9Fsilvapithecus/the /a /silvapithecus/the /some /silvapithecuses/N  6<9Ffrostburn/the /a /frostburn/the /some /frostburns/N  2<9Fgigantes/the /a /gigantes/the /some /gigantes/N  <<9Fbatmandrill/the /a /batmandrill/the /some /batmandrills/N  7<9Farchdemon/the /an /archdemon/the /some /archdemons/N  Atlas///Atlas///Atlases/M  Pazuzu///Pazuzu///Pazuzus/M  Belial///Belial///Belials/M  Hargon///Hargon///Hargons/M  Malroth///Malroth///Malroths/M 
And they have a similar setup for items

Anyway, I didn't mean to steal the spotlight, best of luck Chicken Knife!

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #88 on: January 15, 2019, 07:26:32 pm »
Anyway, I didn't mean to steal the spotlight, best of luck Chicken Knife!

Ain't no stealing spot lights are here. We are fam.

I'm definitely going to be wrapping my brain around correcting these plural form issues and touching up a couple other continuity things with 2. But I'm 90 percent finished with my DQ1 rewrite. Coming along extremely well.

@abw, thanks for the offers of additional script expansion. I'm tracking to not need it as of this moment but I'll definitely be touching base if I do.

Interesting tidbit to discuss or debate:

The Japanese name for the Staff of Rain is really Staff of Rain Clouds.
I can't fit that, but I can fit Raincloud Staff. I think it's a cool change.
« Last Edit: January 15, 2019, 07:35:13 pm by Chicken Knife »

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #89 on: January 16, 2019, 08:41:34 pm »
I've verified that changing the "Thou hast defeated the [name]." text to use the possibly plural form works.
Actually, after trying this again, I'm going to take that back - upon closer examination, it turns out that the RAM address the game checks for the number of enemies in a group gets used for a bunch of other things before the final "Thou hast defeated the [name]." text gets printed, so whether you got the singular or plural form dedpended on something besides the number of enemies originally in the group (in this case, that appears to be the amount of damage the killing blow dealt). On the plus side, tracking down the string index for that final "Thou hast defeated the [name]." wasn't too hard (0x1175B) and re-pointing that to some previously empty string that I gave new text to is working pretty well.

This is great for me, the mobile port has some weird form of plurals, namely "madusa" which has the plural "madusae" and I wasn't sure how I was going to do "magus" whose plural form is "magi"
I'm definitely going to be wrapping my brain around correcting these plural form issues and touching up a couple other continuity things with 2.
If it helps any, I've added a commented disassembly of the pluralization code on the wiki.

The Japanese name for the Staff of Rain is really Staff of Rain Clouds.
I can't fit that, but I can fit Raincloud Staff. I think it's a cool change.
This is also possible with ROM hacking. From the last time I looked at this, I remember that widening the item menu to fit up to 12 letters on the second line and display all those letters was easy enough, but the Herb/Magic Key counts were throwing off the alignment of the rest of the items and I wasn't motivated enough to track down the problem code.

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #90 on: January 17, 2019, 05:04:12 pm »
Actually, after trying this again, I'm going to take that back - upon closer examination, it turns out that the RAM address the game checks for the number of enemies in a group gets used for a bunch of other things before the final "Thou hast defeated the [name]." text gets printed, so whether you got the singular or plural form dedpended on something besides the number of enemies originally in the group (in this case, that appears to be the amount of damage the killing blow dealt). On the plus side, tracking down the string index for that final "Thou hast defeated the [name]." wasn't too hard (0x1175B) and re-pointing that to some previously empty string that I gave new text to is working pretty well.

Ok, I can be slow with code related discussion as we all know. Do you mean that you've created a work around to what sounds like a bug where the game is accessing incorrect information when trying to determine pluralization? I'd love to mimic what you achieved in my version if you could give me what to plug in where. I'm much better with graphical design and writing if you haven't noticed already.  :laugh: :laugh: :laugh:

This is also possible with ROM hacking. From the last time I looked at this, I remember that widening the item menu to fit up to 12 letters on the second line and display all those letters was easy enough, but the Herb/Magic Key counts were throwing off the alignment of the rest of the items and I wasn't motivated enough to track down the problem code.

It's good to know this option exists, but I personally like Raincloud Staff along with the other item names I've gone with and I don't think there is a pressing reason to expand for my version. I did a poll in a DQ Facebook group to see whether people liked or didn't like the Raincloud Staff name. Got 27 positive votes and 3 negative. You never know if I'll eventually want to do a mach 3 of my DQ1 project and go for DTE, rom expansion, menu enlargement etc, who knows. But I really should be moving on to 3 some point soon.

Another cool little update:

I'm really doing away with every vestige of the old Dragon Warrior localization. I was debating whether to switch out the talk of Imperial Scrolls of Honor for some form of the restoration spell for saving the game. (which would refer to the password system in the J version)

After weighing my options and discussing with my collaborators, I decided to incorporate almost the exact language that Japanese DQ3 uses for saving with the king recording the events of your journey on an "Adventure Log". I like how it all came out in game, as it has a very authentic Dragon Quest feeling.

January 18, 2019, 08:05:24 am - (Auto Merged - Double Posts are not allowed before 7 days.)
« Last Edit: January 18, 2019, 08:37:28 am by Chicken Knife »

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #91 on: January 18, 2019, 08:09:06 am »
Do you mean that you've created a work around to what sounds like a bug where the game is accessing incorrect information when trying to determine pluralization?
No, sorry, what I meant was that trying to use the pluralization code as-is in places it wasn't intended to be run doesn't work the way I was hoping it would, because the variable that used to hold the number of monsters in a group gets used for other things instead. The pluralization code works just fine when it gets run where the original game wants it to be run. Pluralizing the monster names in the final "Thou hast defeated the [name]." string should still be possible, but apparently it's going to take more than a simple script update to achieve :P.

It's good to know this option exists, but I personally like Raincloud Staff along with the other item names I've gone with and I don't think there is a pressing reason to expand for my version.
Yup, "Raincloud Staff" sounds fine to me too. Just providing some extra info in case you decided to go the "Staff of Rain Clouds" route :).

After weighing my options and discussing with my collaborators, I decided to incorporate almost the exact language that Japanese DQ3 uses for saving with the king recording the events of your journey on an "Adventure Log". I like how it all came out in game, as it has a very authentic Dragon Quest feeling.
As extra support for that, "Adventure Log" is also what they're called from the game load menu. I wonder why they went with two different names for the same thing?

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #92 on: January 18, 2019, 08:39:03 am »
@abw,

All sounds great.

Now that you are doing some heavy tinkering with DW2, I wanted to run something else past you.

The space for the lists of item names/spells/monster names in DW2 was too short for me. I'm *relatively* happy with the names I chose but if there is a functional way to move one of those sections somewhere else in the rom, I would be overjoyed to be able to fix a large number of small compromises. Any thoughts? I'm guessing this would have something to do with changing rom banks for one of the lists--which would be a new frontier of tinkering for me.

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #93 on: January 18, 2019, 10:53:57 pm »
Yeah, the space was too short for me too - after translating all the lists, I was a few hundred bytes over the original size and would have been hard pressed to find alternate text that would still be intelligible. Fortunately there is plenty of free space (over 30%, including 3 completely empty banks) in the DW2 ROM, so I was able to move the monster list to a different bank that had room for it. It's only partially tested, and quite possibly there's a better way of achieving the same effect, but what I'm currently using (in a form you can include in your insert script) is this:

Code: [Select]
#JMP($3F3EE)
// update monster list bank/address pointers
<$F4><$F5><$FA><$FB>

#JMP($3FFA7, $3FFC9)
// new code to read pointer from $9000,X instead of $8000,X
//PHA
<$48>
//LDA $05F6
<$AD><$F6><$05>
//STA $60D7
<$8D><$D7><$60>
//PLA
<$68>
//JSR $FF33
<$20><$33><$FF>
//LDA $9000,X
<$BD><$00><$90>
//STA $57
<$85><$57>
//LDA $9001,X
<$BD><$01><$90>
//STA $58
<$85><$58>
//RTS
<$60>

#JMP($3F3E5)
// update JSR to target new code
<$97><$FF>

#JMP($1D050, $2000F)
#HDR($14010)

#W16($1D038)
// monster list part 1, line 1 goes here
#W16($1D044)
// monster list part 2, line 1 goes here
#W16($1D03A)
// monster list part 1, line 2 goes here
#W16($1D046)
// monster list part 2, line 2 goes here

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #94 on: January 18, 2019, 11:03:33 pm »
Yeah, the space was too short for me too - after translating all the lists, I was a few hundred bytes over the original size and would have been hard pressed to find alternate text that would still be intelligible. Fortunately there is plenty of free space (over 30%, including 3 completely empty banks) in the DW2 ROM, so I was able to move the monster list to a different bank that had room for it. It's only partially tested, and quite possibly there's a better way of achieving the same effect, but what I'm currently using (in a form you can include in your insert script) is this:

Code: [Select]
#JMP($3F3EE)
// update monster list bank/address pointers
<$F4><$F5><$FA><$FB>

#JMP($3FFA7, $3FFC9)
// new code to read pointer from $9000,X instead of $8000,X
//PHA
<$48>
//LDA $05F6
<$AD><$F6><$05>
//STA $60D7
<$8D><$D7><$60>
//PLA
<$68>
//JSR $FF33
<$20><$33><$FF>
//LDA $9000,X
<$BD><$00><$90>
//STA $57
<$85><$57>
//LDA $9001,X
<$BD><$01><$90>
//STA $58
<$85><$58>
//RTS
<$60>

#JMP($3F3E5)
// update JSR to target new code
<$97><$FF>

#JMP($1D050, $2000F)
#HDR($14010)

#W16($1D038)
// monster list part 1, line 1 goes here
#W16($1D044)
// monster list part 2, line 1 goes here
#W16($1D03A)
// monster list part 1, line 2 goes here
#W16($1D046)
// monster list part 2, line 2 goes here

Plugging this information into my insert script is easy enough, but what would I do with the actual pointers to the monster list addresses in the rom? Does this insert script take care of that for me as long as I start the list segments in the locations you instructed?
« Last Edit: January 18, 2019, 11:11:36 pm by Chicken Knife »

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #95 on: January 19, 2019, 12:46:55 pm »
Yup. When loading a segment of the monster list, the game start by reading a byte from $F3DE,Y that tells it which bank to load (via the high 3 bits) and which pointer to read from $8000,X (via the low 5 bits), so e.g. in the original ROM, a value of 0xD4/0b11010100 means to swap in bank 6 (110) and read the 20th 2-byte pointer (10100) from $8000, a.k.a. $06:$8028 or 0x18038. With this patch, I changed those first bytes to load bank 7 instead, which had plenty of free space, but since there was already plenty of stuff using bank 7's first page, I switched the monster list code to read from the unused space at $9000,X instead. After the bank and pointer addresses are sorted out, the pointer values themselves get set by the #W16 statements as usual.

Chicken Knife

  • Sr. Member
  • ****
  • Posts: 296
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #96 on: January 20, 2019, 10:37:26 am »
Thank you for the explanation as always @abw. I am in the constant process of trying to learn how these things actually work so I can bother you.... slightly less. With your update to insert script for name lists, I have another question. For this section:

#W16($1D038)
// monster list part 1, line 1 goes here
#W16($1D044)
// monster list part 2, line 1 goes here
#W16($1D03A)
// monster list part 1, line 2 goes here
#W16($1D046)
// monster list part 2, line 2 goes here

The addresses you listed are all in a blank data area, but are very close together which means that I cant actually start the lists at that location. Am I supposed to replace these addresses in the insert script with any addresses that I use for the new monster list that I write into the hex editor? Do I have to adjust anything else in the insert script to correspond to these?

On second thought, is your intention that I actually write these monster lists directly into the insert script? That would be a new way of handling this. I'd love to see an example of what the list formatting would look like for the insert script.

Abrupt shift in topic:

Ok, so my massive overhaul of Dragon Quest: Delocalized Edition is complete for now. I've just submitted for publication (with the version date 1/20/18  :banghead:) but I already uploaded the patch to the first post of this thread. If anyone has been waiting to give it a try, now is the time. If anyone tried my hack and wasn't all that impressed with the writing, please try it again. The script is probably around 20 percent larger now, better written, and much more faithful to the Japanese version. Every single line was rewritten with zero adherence to the US localization this time. No compromises were made due to space. My friend Sparrow Dearden who has done paid translation work from Japanese to English has become my steadfast collaborator in translation and writing. Masafumi Sato was also very helpful as our native Japanese speaker to consult with. I started this project to redo the DQ1 script several weeks ago to bring it up to par with our work for DQ2 but I feel like we may have succeeded it. Please provide any feedback on errors or issues. The text gets rewritten as I do a full playthrough so I can have the best feel for what's going on in the game and test the changes on screen. That being said, I'm sure there is a small error or two that I overlooked.

I did update some minor things with graphics, including making the black dragon sprite better fit against the D in the title screen. (you may want to borrow this  minor edit Choppasmith) I've also eradicated those alien background tiles mentioned above and touched up several pixels with the 4 direction hero sprite.

Now to move on to updating some things with DQ2. No rewrite needed; only some continuity fixes based on my new edition of DQ1. I am super excited about doing away with my item and monster naming compromises per the instructions from abw!



« Last Edit: January 20, 2019, 12:32:26 pm by Chicken Knife »

Choppasmith

  • Full Member
  • ***
  • Posts: 134
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #97 on: January 20, 2019, 12:26:04 pm »
Thank you for the explanation as always @abw. I am in the constant process of trying to learn how these things actually work so I can bother you.... slightly less.

Ok, so my massive overhaul of Dragon Quest: Delocalized Edition is complete for now. I've just submitted for publication (with the version date 1/20/18  :banghead:) but I already uploaded the patch to the first post of this thread. If anyone has been waiting to give it a try, now is the time. If anyone tried my hack and wasn't all that impressed with the writing, please try it again. The script is probably around 20 percent larger now, better written, and much more faithful to the Japanese version. Every single line was rewritten with zero adherence to the US localization this time. No compromises were made due to space. My friend Sparrow Dearden who has done paid translation work from Japanese to English has become my steadfast collaborator in translation and writing. Masafumi Sato was also very helpful as our native Japanese speaker to consult with. I started this project to redo the DQ1 script several weeks ago to bring it up to par with our work for DQ2 but I feel like we may have succeeded it. Please provide any feedback on errors or issues. The text gets rewritten as I do a full playthrough so I can have the best feel for what's going on in the game and test the changes on screen. That being said, I'm sure there is a small error or two that I overlooked.

I did update some minor things with graphics, including making the black dragon sprite better fit against the D in the title screen. (you may want to borrow this  minor edit Choppasmith) I've also eradicated those alien background tiles mentioned above and touched up several pixels with the 4 direction hero sprite.

Now to move on to updating some things with DQ2. No rewrite needed; only some continuity fixes based on my new edition of DQ1. I am super excited about doing away with my item and monster naming compromises per the instructions from abw!





That's looking realy good, man.  :thumbsup:

I just updated my hack hopefully for the last time in a while. I really need to get to my edited DW2 script. But if it something comes up, I'll give it a quick edit.

abw

  • Sr. Member
  • ****
  • Posts: 295
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #98 on: January 20, 2019, 09:15:14 pm »
On second thought, is your intention that I actually write these monster lists directly into the insert script? That would be a new way of handling this. I'd love to see an example of what the list formatting would look like for the insert script.
This. How are you currently inserting your updated lists? The formatting works the same for this as it does for the main script: take whatever text you want to insert, say where you want to insert it, what table file to use to translate the text to binary, stick in some pointer writes wherever they need to go, and if necessary, update the ROM -> RAM offset for pointer value calculations. The #JMP says where to insert the text, I forgot to mention the part about making sure you're using the right table file earlier (important detail :P), the #W16's take care of updating the pointers, and the #HDR says how the RAM address differs from the ROM address. So, putting that all together and adding in a little more explanation, you get a monster list insert script that looks like this:

Code: [Select]
// switch to the right table if your script isn't currently using this table
#VAR(Table, TABLE)
#ADDTBL("dw2.tbl", Table) // or whatever you named your table file
#ACTIVETBL(Table)

// start writing data to ROM 0x1D050 and throw an error if we try writing beyond 0x2000F
#JMP($1D050, $2000F)
// for ROM bank 7 loaded into RAM slot 0, RAM address = ROM address - $14010
#HDR($14010)

// write a pointer to the current address (i.e. 0x1D050 / $07:9040) to 0x1D038 / $07:$9028
#W16($1D038)
// monster list part 1, line 1:
Slime[end-FF]
Big[end-FF]
Iron[end-FF]
// etc., etc.

// write a pointer to the current address (i.e. the byte after wherever the previous list segment ended) to 0x1D044
#W16($1D044)
// monster list part 2, line 1:
Hibabango[end-FF]
Graboopi[end-FF]
Gold[end-FF]
// etc., etc.

// write a pointer to the current address (i.e. the byte after wherever the previous list segment ended) to 0x1D03A
#W16($1D03A)
// monster list part 1, line 2:
[end-FF]
Slug[end-FF]
Ant[end-FF]
// etc., etc.

// write a pointer to the current address (i.e. the byte after wherever the previous list segment ended) to 0x1D046
#W16($1D046)
// monster list part 2, line 2:
[end-FF]
[end-FF]
Orc[end-FF]
// etc., etc.

svenge

  • Jr. Member
  • **
  • Posts: 83
    • View Profile
Re: Dragon Quest I - IV: Delocalized Editions
« Reply #99 on: January 20, 2019, 11:03:17 pm »
I'm sorry if this was covered elsewhere, but I was wondering why the copyright symbol " © " on the title screen of DW1 was replaced by a frowny face?