[UPDATED] My new patching utility: Universal Dreamcast Patcher (v1.2)

Place for discussing homebrew games, development, new releases and emulation.

Moderators: pcwzrd13, deluxux, VasiliyRS

User avatar
ateam
Heroine Console
Posts: 478

[UPDATED] My new patching utility: Universal Dreamcast Patcher (v1.2)

Post#1 » Mon May 17, 2021 6:11 pm

Hi everyone,

As some of you know, I've worked on three separate English translations for Dreamcast in the last 6 months. Throughout that time, I considered writing a small application to streamline the GDI patching process. While still in its early stages, Universal Dreamcast Patcher certainly delivers on its core features.

Image

Everything you'd ever want to know about how it works, its features, its flaws, and its future, can be found right here:
https://github.com/DerekPascarella/UniversalDreamcastPatcher

Due to the size of DCP patches (my new "patching format"), I cannot store them on GitHub without bundling them in with my previous English translation releases. While I'll eventually do this, I wanted to provide some of them right now via my Google drive:
https://drive.google.com/drive/folders/1XsQHWXs_0lnGAg37CjKUQdQ3ZpgX2S7y?usp=sharing

...and for now, that's it! I look forward to feedback and constructive criticism, and potentially even some assistance with helping me reach my Roadmap goals!
Last edited by ateam on Sat Mar 19, 2022 11:43 am, edited 5 times in total.
Find me on...

DreamcastForever.com
GitHub
Reddit
SegaXtreme
Twitter
YouTube
• Discord: derek.ateam

User avatar
Ro Magnus Larsson
Vagabond
Posts: 795

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#2 » Mon Jun 07, 2021 7:49 am

I think it is great work !, Only a question, it is a software for translating any DC games to any laguage ? thanks for improve in Dreamcast technology
Ro Magnus
Argentina.-

User avatar
ateam
Heroine Console
Posts: 478

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#3 » Mon Jun 07, 2021 8:51 am

Ro Magnus Larsson wrote:I think it is great work !, Only a question, it is a software for translating any DC games to any laguage ? thanks for improve in Dreamcast technology


Thank you!

This is a general purpose GDI patching utility. The README on the GitHub Project page (https://github.com/DerekPascarella/Univ ... astPatcher) explains how to create patches. Being that I have worked on several English translations for Dreamcast, I definitely had this type of patch in mind when I developed it. However, it can be used for any type of game modification.
Find me on...

DreamcastForever.com
GitHub
Reddit
SegaXtreme
Twitter
YouTube
• Discord: derek.ateam

User avatar
Ro Magnus Larsson
Vagabond
Posts: 795

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#4 » Tue Jun 08, 2021 1:02 pm

I will give it a try with some patches I had filed time ago...
Ro Magnus
Argentina.-

User avatar
fraggle200
chill
Posts: 307

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#5 » Wed Aug 11, 2021 5:40 pm

ateam wrote:Hi everyone,

As some of you know, I've worked on three separate English translations for Dreamcast in the last 6 months. Throughout that time, I considered writing a small application to streamline the GDI patching process. While still in its early stages, Universal Dreamcast Patcher certainly delivers on its core features.

Image

Everything you'd ever want to know about how it works, its features, its flaws, and its future, can be found right here:
https://github.com/DerekPascarella/UniversalDreamcastPatcher

Due to the size of DCP patches (my new "patching format"), I cannot store them on GitHub without bundling them in with my previous English translation releases. While I'll eventually do this, I wanted to provide some of them right now via my Google drive:
https://drive.google.com/drive/folders/1XsQHWXs_0lnGAg37CjKUQdQ3ZpgX2S7y?usp=sharing

...and for now, that's it! I look forward to feedback and constructive criticism, and potentially even some assistance with helping me reach my Roadmap goals!


Hey ateam, I had started looking at all the widescreen hex codes that Esppiral has created and thought about making patches for them all so it's easier for folks to apply them if they're not comfortable in doing the hex edits, plus it's easier/quicker to d/l a bundle of patches than pre patched images. After seeing this post I had looked into using UDP but the way it stands at the moment it wouldn't be viable as each patch would more or less contain the track3.bin for each GDI.

I'm sure you're already away that that would mean, for example, a 800MB UDP patch would end up giving the same result as a 5KB Xdelta patch in this scenario. I hope in future that you're able to apply the "orig image vs patched image" patch generation that's on the roadmap, which I assume would resolve this.

Maybe this wasn't the right application for it as I can see benefit in it in what you do with the translations. I had hoped to use it to help spread the word and give this project some love but it wasn't to be this time. I'll keep an eye on this though for any future updates.

Keep up the good work!

User avatar
ateam
Heroine Console
Posts: 478

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#6 » Thu Aug 12, 2021 9:16 am

fraggle200 wrote:Hey ateam, I had started looking at all the widescreen hex codes that Esppiral has created and thought about making patches for them all so it's easier for folks to apply them if they're not comfortable in doing the hex edits, plus it's easier/quicker to d/l a bundle of patches than pre patched images. After seeing this post I had looked into using UDP but the way it stands at the moment it wouldn't be viable as each patch would more or less contain the track3.bin for each GDI.

I'm sure you're already away that that would mean, for example, a 800MB UDP patch would end up giving the same result as a 5KB Xdelta patch in this scenario. I hope in future that you're able to apply the "orig image vs patched image" patch generation that's on the roadmap, which I assume would resolve this.

Maybe this wasn't the right application for it as I can see benefit in it in what you do with the translations. I had hoped to use it to help spread the word and give this project some love but it wasn't to be this time. I'll keep an eye on this though for any future updates.

Keep up the good work!


Firstly, thank you for the kind words!

Regarding creating .DCP patches for use with UDP, why do you need to ship an entire track03.bin file? Just extract the widescreen-hacked GDI, locate the file that has been modified (likely just the 1ST_READ.BIN fie) and then create a .DCP from it. The filesize would be very tiny!

If you can provide me with an example, I can show you what I'm talking about.
Find me on...

DreamcastForever.com
GitHub
Reddit
SegaXtreme
Twitter
YouTube
• Discord: derek.ateam

User avatar
fraggle200
chill
Posts: 307

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#7 » Thu Aug 12, 2021 10:10 am

ateam wrote:
fraggle200 wrote:Hey ateam, I had started looking at all the widescreen hex codes that Esppiral has created and thought about making patches for them all so it's easier for folks to apply them if they're not comfortable in doing the hex edits, plus it's easier/quicker to d/l a bundle of patches than pre patched images. After seeing this post I had looked into using UDP but the way it stands at the moment it wouldn't be viable as each patch would more or less contain the track3.bin for each GDI.

I'm sure you're already away that that would mean, for example, a 800MB UDP patch would end up giving the same result as a 5KB Xdelta patch in this scenario. I hope in future that you're able to apply the "orig image vs patched image" patch generation that's on the roadmap, which I assume would resolve this.

Maybe this wasn't the right application for it as I can see benefit in it in what you do with the translations. I had hoped to use it to help spread the word and give this project some love but it wasn't to be this time. I'll keep an eye on this though for any future updates.

Keep up the good work!


Firstly, thank you for the kind words!

Regarding creating .DCP patches for use with UDP, why do you need to ship an entire track03.bin file? Just extract the widescreen-hacked GDI, locate the file that has been modified (likely just the 1ST_READ.BIN fie) and then create a .DCP from it. The filesize would be very tiny!

If you can provide me with an example, I can show you what I'm talking about.


I might be wrong but my understanding was that Esppirals guidance was to apply the hex values to the track3.bin file as a whole, instead of the 1st_read.bin. I know what you mean though as I've seen a few comments in the Assemblergames archive with people just patching the 1st_read.bin. I'm not entirely sure that it's a foolproof method for every game, whereas I know patching the full track3.bin etc will get the results I need, and with the amount I have to do, plus testing for each validated dump of a particular game its already looking like a sizable task so if i can skim a bit of time off anywhere I'll take it. Extracting a 1st_read.bin to patch it to then rebuild the track/GDI before I can test it seems like a luxury I don't have, compared to copying the track3.bin, patching and testing with the other orig GDI files. Especially if I want to try and finish this, this side of Xmas. :lol:

thanks anyway for the offer of help, it's really appreciated.

On a side note: I saw a few days back that YZB was involved in a chinese translation of Tokyo Bus Guide, is either that or Densha De Go something you've considered doing?

User avatar
ateam
Heroine Console
Posts: 478

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#8 » Thu Aug 12, 2021 10:30 am

fraggle200 wrote:I might be wrong but my understanding was that Esppirals guidance was to apply the hex values to the track3.bin file as a whole, instead of the 1st_read.bin. I know what you mean though as I've seen a few comments in the Assemblergames archive with people just patching the 1st_read.bin. I'm not entirely sure that it's a foolproof method for every game, whereas I know patching the full track3.bin etc will get the results I need, and with the amount I have to do, plus testing for each validated dump of a particular game its already looking like a sizable task so if i can skim a bit of time off anywhere I'll take it. Extracting a 1st_read.bin to patch it to then rebuild the track/GDI before I can test it seems like a luxury I don't have, compared to copying the track3.bin, patching and testing with the other orig GDI files. Especially if I want to try and finish this, this side of Xmas. :lol:

thanks anyway for the offer of help, it's really appreciated.

On a side note: I saw a few days back that YZB was involved in a chinese translation of Tokyo Bus Guide, is either that or Densha De Go something you've considered doing?


So I hear what you're saying, but as track03.bin (and other data tracks) are just a representation of all the data files on the disc, I believe it would be pretty easy to tell. In fact, I have a very strong hunch that ALL widescreen hacks are done inside of 1ST_READ.BIN (or the custom filename given to the main game binary). Take this example with Shenmue...

Image

To confirm other widescreen hacks, you'd just have to search for those hex values inside the 1ST_READ.BIN to confirm they're all there. Otherwise, it obviously gets a big more complicated (like you said). You'd have to programmatically search for the target hex values recursively inside all of the game's data files. I certainly understand why you wouldn't want to do that!

Regarding Tokyo Bus Guide and Densha De Go, the former of these two games is one that I loved back in the day and I'd definitely consider doing an English translation of it!
Find me on...

DreamcastForever.com
GitHub
Reddit
SegaXtreme
Twitter
YouTube
• Discord: derek.ateam

User avatar
FlorreW
Animated Violence
Posts: 499

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#9 » Thu Aug 12, 2021 12:01 pm

ateam wrote:Regarding Tokyo Bus Guide and Densha De Go, the former of these two games is one that I loved back in the day and I'd definitely consider doing an English translation of it!


I do feel the love <3 Finished Densha de go a couple of years ago , great times playing late with a friend and "some" whiskey <3

densha.jpg


Anyway , about translations there are so many good games and games probably great that needs a translation.

Panzer front is a good game that could do with a translation.

But most intresting of them all , a game that i guess if translated could also generate alot of "game hours" for thoose who like strategy games is

Vermilion Desert , as far as i know there are no game like this available in english on the dreamcast. I understand from other posts on this forum that this game is difficult to translate becouse of some reason i forgot.

Some job was already done to it it seems...
Vermilion Desert || lucasmilu || Project abandoned || JP-EN
Files : https://www.mediafire.com/file/p93ilkt4uwclk6h/Vermilion_Desert_Files.zip/file [GFX & script is extrated to txt file, half-width font]

Anyway , great that we do have som ppl in the dreamcast community that actually are translating jap games. Thanks for all you are doing !

PS: If i can help out in any way please just pm me

User avatar
fraggle200
chill
Posts: 307

Re: My new patching utility: Universal Dreamcast Patcher (v0.7)

Post#10 » Thu Aug 12, 2021 4:29 pm

ateam wrote:So I hear what you're saying, but as track03.bin (and other data tracks) are just a representation of all the data files on the disc, I believe it would be pretty easy to tell. In fact, I have a very strong hunch that ALL widescreen hacks are done inside of 1ST_READ.BIN (or the custom filename given to the main game binary).


I reckon you're right. I'm just trying to save any effort where possible and extracting, hex editing and rebuilding seems like more effort than just copying and hex editing. And that's before I've tested it works in Widescreen, verified this through multiple attempts at hex edits and created the patch then checked the CRC/SHA from the applied patch as well (rather than patch size this last part may be the undoing of UDP as I'm sure I read in some of your documentation that the way GDIBuilder works is that it rewrites the date on the files so the CRC can be different with each new patch. Unsure if XDelta does this as well but I assume it doesn't as I think it only looks for the differences in the source file and modified file and then puts those bytes into the patch). It may seem like overkill but I want to make sure I'm confident that the patches are legit and are going to cause as little issue as possible when they're out in the wild.

ateam wrote:Regarding Tokyo Bus Guide and Densha De Go, the former of these two games is one that I loved back in the day and I'd definitely consider doing an English translation of it!


Well if you did, I'm sure you'd make a lot of folks happy. They're two very odd games in that they shouldn't really be as enjoyable as they are given the premise of them. I know nothing of DC coding and my Japanese never went any further than conversational with me knowing absolutely no written stuff.... and that was 10 years ago so I've forgot about 99% of it but if I was able to help in any way, I'd be more than happy to where possible. (this goes for any game not just these 2, btw)

  • Similar Topics
    Replies
    Views
    Last post

Return to “New Releases/Homebrew/Emulation”

Who is online

Users browsing this forum: No registered users