Author Topic: Ys IV: The Dawn of Ys English Dub Project.  (Read 3686 times)

NightWolve

  • Hero Member
  • *****
  • Posts: 5277
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #120 on: August 23, 2012, 06:55:35 AM »
Awesome!

I'll be using a hacked save file that I made using NightWolve's Ys IV YAME perl script, hosted on his site. Let's me start the game off with everything maxed out and all the armor/items unlocked.

Ah, good ole perl. Yeah, that's mainly what the full exp, gold, item cheat/hack is good for. Lets ya breeze through the game for testing out your changes. I wonder though if the full item hack shouldn't be in place as that might affect the story progression when it comes to event items and something could be skipped, no? Easy enough to disable it, just open the perl script and comment out the lines related to "print "All weapons and items available!!\n";" - above it and below it.

Burnt Lasagna

  • Sr. Member
  • ****
  • Posts: 354
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #121 on: August 23, 2012, 07:25:52 AM »
I wonder though if the full item hack shouldn't be in place as that might affect the story progression when it comes to event items and something could be skipped, no? Easy enough to disable it, just open the perl script and comment out the lines related to "print "All weapons and items available!!\n";" - above it and below it.
You know, I'm not sure.
I could disable it just to be careful, since being at the max level should be more than enough to plow through the game. However I noticed that even though it gives you maxed out exp it doesn’t max out your health or your actual level. That is until you eat the fresh fruit from your items menu, then everything sky rockets up. It’s been a good two years since the last time I played Ys IV so I don’t remember what this item was supposed to do exactly. In either case I need at least this one item to remain after doing the hack in order to get the remaining stats up…though I haven’t actually played much of anything with the hacked save file yet, so maybe the stats just wake up after killing an enemy...

I guess I'll need to find out :)
http://burntprojects.wordpress.com/
What Button Do You Press To Jump!?!

NightWolve

  • Hero Member
  • *****
  • Posts: 5277
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #122 on: August 23, 2012, 09:30:07 AM »
Yeah, you need to attack an enemy I recall for the max leveling to "kick in" essentially.

I kinda just remembered why the full items/equipment hack was useful: I needed to make sure every item's name/text would display properly and from the right offset. Making sure I had EVERY item and weapon in the game was useful on that account. I think first I found the bytes related to gold because that's pretty unique and changes all the time. If I'm not mistaken, the bytes for storing what items you have were near it also.

Basically, I had a very time-consuming hack where I had to use a brute force method of trying to identify one byte in a ~500KB state file that corresponded to a text pointer for the item display screen. How to find it without a debugger and without understanding the Assembly code?? Together with YAME and a perl script I did the following: Press F5 to load the state file in YAME (you can set a hotkey for it), open Ys4 item menu, check if text pointer was adjusted to properly read an item name from the 1st char, if not, ALT+Tab to perl script in DOS window, press enter whereby the script decrements the previous byte in the state file and increments the next one, then ALT+Tab back to YAME and press F5 to reload, and try again... I had to do this for thousands of times across several weeks before finally identifying the right byte. ;) Yeap, hence "brute force" method, but it got the job done and allowed me to fit all the item names in their fully translated lengths... But yeah, having ALL items to scroll through in the menus was needed to get them to display right and make text pointer adjustments.

Dunno if I explained it clearly enough, but you get the idea! Pain in the ass - a taste of what I went through to get this project done BITD! I was doing it manually before by simply using a hex editor: 1) open the state file with a hex editor and 2) then just go byte by byte, incrementing the next value and decrementing the previous one, 3) then reloading the state file in YAME to see if any change took effect on the text reading offset when it came to the item display screen. Later in frustration I said, the ONLY way this is gonna happen is with some kind of script because I will lose my mind if I have to find the right byte like this (thousands of trial/error changes), so I came up with a perl script that helped automate this same procedure and sped up the process somewhat. Not that much mind you, but with this kind of method, ANY shortcut was extremely helpful! Heh!

I kinda shocked myself that I was able to find it in the end. I narrowed the search range of bytes in the state file, which helped, because some of it is for ADPCM and other uses; RAM is in the 256KB range and you can tell where it starts in a YAME state file. So really, the search for this one byte was in 256 x 1024 bytes. ;) With a linear search, as I did, if it was the last byte in RAM, it could've taken 262,144 tries of this technique to find it (change a byte in the state file, save it, reload in YAME, check menu for difference, etc.)..... Well enough, it was as painful to write about it (hence relive it) as it was in doing it! Heh!

Eh supposedly, modern hackers should have it easy though with built-in debuggers that Mednafen comes with, but I never tried that feature. Too bad that emulator is all command-line. I used to ask David Michel all the time about adding that to MagicEngine, but he never got around to it. I don't see him much these days, not since his PCFX emulator.

Anyway, I hope this component mod idea of thesteve's works out. I'm looking forward to playing a fully translated version of Ys IV with a component video connection on my 32" CRT when you're finished! The component hack I did for my SNES is just gorgeous (comes close to looking like you're using an emulator with an analog VGA connection)! If a cheap component mod could've been done to NEC hardware all along, it'd really be something! I was actually playing my last Ys IV burn a couple of days ago and I was having fun! It is a game I will be able to fully replay after all these years. Not interested in replaying the first 3 anytime soon though, but definitely this one once the dubs are finished!!

EDIT: You probably don't have to bother removing the item hack. When it comes to event items, the game just acts like you don't even have it and "regives" you the item. I was playing around with some of my old state files and this is how I was playing the game to test things from what I see.
« Last Edit: August 23, 2012, 12:22:45 PM by NightWolve »

Duo_R

  • Hero Member
  • *****
  • Posts: 3302
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #123 on: August 23, 2012, 03:50:11 PM »
I have had component video on my Duo for several years now, all you need is a RGB to component box and your set!
Add my YouTube channel:


For sale trade list: http://tinyurl.com/2csm7kq

Burnt Lasagna

  • Sr. Member
  • ****
  • Posts: 354
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #124 on: August 23, 2012, 05:20:59 PM »
@NightWolve
Wow, that's quite impressive! Big hats off to you Nightwolve! I always enjoy reading stuff like this from experienced ROM hackers. Your skill/patients definitely shows through in the final patch and I greatly applaud the effort you put into making it!
EDIT: You probably don't have to bother removing the item hack. When it comes to event items, the game just acts like you don't even have it and "regives" you the item. I was playing around with some of my old state files and this is how I was playing the game to test things from what I see.
I actually just finished playing up to where you get to the village of Arieda with the item hack. The village elder acts like Lemnos has already been saved and has left the hospital...

I guess I'll restart with the item hack off. Max health and exp should more the suffice.
http://burntprojects.wordpress.com/
What Button Do You Press To Jump!?!

NightWolve

  • Hero Member
  • *****
  • Posts: 5277
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #125 on: August 24, 2012, 06:45:42 AM »
I have had component video on my Duo for several years now, all you need is a RGB to component box and your set!


Ah, but if the circuit idea that thesteve gave me works, it can be done with only a few bucks worth of resistors, transistors and capacitors since the huc6260 video encoder chip was outputting a luminance signal all along! We'll see! :) Without luminance, you'd have to build it from the full RGB and sync signals and the circuit would be a lot more complex. The circuit linked is just a mixer of luminance to the Red and Blue signals because the R-Y and B-Y off the chip are not ready for TV use unfortunately, but yeah, it'll be awesome if it works. Probably better than a full RGB conversion to component box.

@NightWolve
Wow, that's quite impressive! Big hats off to you Nightwolve! I always enjoy reading stuff like this from experienced ROM hackers. Your skill/patients definitely shows through in the final patch and I greatly applaud the effort you put into making it!


Heh, you wonder if anyone will bother to read long, occasional thoughts/experiences like that. ;) If there was a good NEC debugger/emulator combo at the time and I knew how to use it, I obviously could've tracked down the byte I needed to change a lot easier... But, you'd still need some NEC programming knowledge which I didn't have much of at the time. Thus, all I had was this brute force trial and error method... I could've asked David Shadoff to find it for me, he had tracked down the font code (I actually helped a little bit with the font hack) after all at this point, but I kinda didn't wanna stick him with this work after he accomplished writing the ADPCM stuff, the Ys IV text compression code (he reversed Neill Corlett's C-level rewrite of the Ys IV text decompression code), and the font hack, etc. The harder, technical stuff got done by the pros, so I tried to do all the remaining small stuff, the annoying grunt work. That's why I preferred working on PC games because I had competent Intel x86 assembly knowledge and could do most things myself because of all the great disassembly/debugging software available. Dealing with 8-bit 65C02 assembly with no supporting software was never my thing, let's say.

Quote
I actually just finished playing up to where you get to the village of Arieda with the item hack. The village elder acts like Lemnos has already been saved and has left the hospital...

I guess I'll restart with the item hack off. Max health and exp should more the suffice.


Ah crap, yeah, makes sense, get rid of it then... Better safe than sorry. My worry was it'd possibly cause a scenario with voice acting to be skipped and looks like it might.
« Last Edit: August 25, 2012, 10:09:22 AM by NightWolve »

esteban

  • Hero Member
  • *****
  • Posts: 24063
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #126 on: August 25, 2012, 01:57:19 AM »

@NightWolve
Wow, that's quite impressive! Big hats off to you Nightwolve! I always enjoy reading stuff like this from experienced ROM hackers. Your skill/patients definitely shows through in the final patch and I greatly applaud the effort you put into making it!


Heh, you wonder if anyone will bother to read long, occasional thoughts/experiences like that. ;) ...



There are at least a handful of folks who read along.

  |    | 

Burnt Lasagna

  • Sr. Member
  • ****
  • Posts: 354
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #127 on: August 25, 2012, 04:55:34 PM »
Ah crap, yeah, makes sense, get rid of it then... Better safe than sorry. My worry was it'd possibly cause a scenario with voice acting to be skipped and looks like it might.
Yup, I started over with the item hack disabled. As of now the dub seems to be working great! There have been a couple of issues I've come across such as the audio clipping and causing distortion, and some clips being too quiet, though I've been able to fix those as they’ve revealed themselves. 

It feels nice to hear Ys IV’s cut scenes in English and with solid voice work as well :)
Hoping everyone else will feel the same way after this is done.
http://burntprojects.wordpress.com/
What Button Do You Press To Jump!?!

Keranu

  • Hero Member
  • *****
  • Posts: 9054
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #128 on: August 25, 2012, 05:34:34 PM »
Can't wait to try the final patch! This roxxxsssss!
Quote from: Bonknuts
Adding PCE console specific layer on top of that, makes for an interesting challenge (no, not a reference to Ys II).

SeymorOnion

  • Full Member
  • ***
  • Posts: 182
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #129 on: August 25, 2012, 05:49:10 PM »
Quote from: Burnt Lasagna
Quote from: NightWolve
Ah crap, yeah, makes sense, get rid of it then... Better safe than sorry. My worry was it'd possibly cause a scenario with voice acting to be skipped and looks like it might.
Yup, I started over with the item hack disabled. As of now the dub seems to be working great! There have been a couple of issues I've come across such as the audio clipping and causing distortion, and some clips being too quiet, though I've been able to fix those as they’ve revealed themselves

It feels nice to hear Ys IV’s cut scenes in English and with solid voice work as well :)
Hoping everyone else will feel the same way after this is done.
Bold Mine
That's great to hear! (pun somewhat intended)
Uneven volume during voice acting is something that really bothers me, and there are tons of Official Releases that have this problem.  #-o

It gives me great joy to know that you are going the extra mile with this dub.

BigusSchmuck

  • Hero Member
  • *****
  • Posts: 3425
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #130 on: September 02, 2012, 09:11:44 AM »
Yeah, you need to attack an enemy I recall for the max leveling to "kick in" essentially.

I kinda just remembered why the full items/equipment hack was useful: I needed to make sure every item's name/text would display properly and from the right offset. Making sure I had EVERY item and weapon in the game was useful on that account. I think first I found the bytes related to gold because that's pretty unique and changes all the time. If I'm not mistaken, the bytes for storing what items you have were near it also.

Basically, I had a very time-consuming hack where I had to use a brute force method of trying to identify one byte in a ~500KB state file that corresponded to a text pointer for the item display screen. How to find it without a debugger and without understanding the Assembly code?? Together with YAME and a perl script I did the following: Press F5 to load the state file in YAME (you can set a hotkey for it), open Ys4 item menu, check if text pointer was adjusted to properly read an item name from the 1st char, if not, ALT+Tab to perl script in DOS window, press enter whereby the script decrements the previous byte in the state file and increments the next one, then ALT+Tab back to YAME and press F5 to reload, and try again... I had to do this for thousands of times across several weeks before finally identifying the right byte. ;) Yeap, hence "brute force" method, but it got the job done and allowed me to fit all the item names in their fully translated lengths... But yeah, having ALL items to scroll through in the menus was needed to get them to display right and make text pointer adjustments.

Dunno if I explained it clearly enough, but you get the idea! Pain in the ass - a taste of what I went through to get this project done BITD! I was doing it manually before by simply using a hex editor: 1) open the state file with a hex editor and 2) then just go byte by byte, incrementing the next value and decrementing the previous one, 3) then reloading the state file in YAME to see if any change took effect on the text reading offset when it came to the item display screen. Later in frustration I said, the ONLY way this is gonna happen is with some kind of script because I will lose my mind if I have to find the right byte like this (thousands of trial/error changes), so I came up with a perl script that helped automate this same procedure and sped up the process somewhat. Not that much mind you, but with this kind of method, ANY shortcut was extremely helpful! Heh!

I kinda shocked myself that I was able to find it in the end. I narrowed the search range of bytes in the state file, which helped, because some of it is for ADPCM and other uses; RAM is in the 256KB range and you can tell where it starts in a YAME state file. So really, the search for this one byte was in 256 x 1024 bytes. ;) With a linear search, as I did, if it was the last byte in RAM, it could've taken 262,144 tries of this technique to find it (change a byte in the state file, save it, reload in YAME, check menu for difference, etc.)..... Well enough, it was as painful to write about it (hence relive it) as it was in doing it! Heh!

Eh supposedly, modern hackers should have it easy though with built-in debuggers that Mednafen comes with, but I never tried that feature. Too bad that emulator is all command-line. I used to ask David Michel all the time about adding that to MagicEngine, but he never got around to it. I don't see him much these days, not since his PCFX emulator.

Anyway, I hope this component mod idea of thesteve's works out. I'm looking forward to playing a fully translated version of Ys IV with a component video connection on my 32" CRT when you're finished! The component hack I did for my SNES is just gorgeous (comes close to looking like you're using an emulator with an analog VGA connection)! If a cheap component mod could've been done to NEC hardware all along, it'd really be something! I was actually playing my last Ys IV burn a couple of days ago and I was having fun! It is a game I will be able to fully replay after all these years. Not interested in replaying the first 3 anytime soon though, but definitely this one once the dubs are finished!!

EDIT: You probably don't have to bother removing the item hack. When it comes to event items, the game just acts like you don't even have it and "regives" you the item. I was playing around with some of my old state files and this is how I was playing the game to test things from what I see.
This makes a lot of sense to me. I can see why there isn't a big push in the rom hacking community to work on turbo stuff, it just sounds really freaking hard to do. :) It makes me appreciate what hard work you guys have put into this thing. If there is anything I can do to help, please let me know. I may not have much programming experience, but I can definitely build you a bad ass pc for cheap! :P

Bardoly

  • Hero Member
  • *****
  • Posts: 1953
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #131 on: September 02, 2012, 04:43:47 PM »
First time to hear of this project.  Sounds great!
Kudos to all involved!

Bloody Wolf

  • Newbie
  • *
  • Posts: 48
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #132 on: September 02, 2012, 06:28:01 PM »
Ohhhh dang can't believe dis is coming a reality.... Crazy insane fo shizza need to play this one!!! Ah man that is sick bro!!!!

SeymorOnion

  • Full Member
  • ***
  • Posts: 182
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #133 on: September 03, 2012, 04:40:14 AM »
Ohhhh dang can't believe dis is coming a reality.... Crazy insane fo shizza need to play this one!!! Ah man that is sick bro!!!!
Sorry to burst your bubble, but they are dubbing it into English.  :mrgreen:

Just kidding; I get like this when I'm sleep deprived.

Duo_R

  • Hero Member
  • *****
  • Posts: 3302
Re: Ys IV: The Dawn of Ys English Dub Project.
« Reply #134 on: September 03, 2012, 04:53:26 AM »
What's engrish! Haha

NOTE - it's too bad he didn't try out for one of the voice acting roles. We would have had a gehtto thug actor in YS....lol

I tried convincing him to try out but he wouldn't.
« Last Edit: September 03, 2012, 04:58:34 AM by Duo_R »
Add my YouTube channel:


For sale trade list: http://tinyurl.com/2csm7kq