Re: (Finally Complete) Telefang English Translation

Discuss anything related to hacking ROMs of the Telefang games here.
User avatar
andwhyisit
Site Admin
Posts: 1199
Joined: Fri Dec 14, 2007 9:24 pm

Re: (Incomplete) Telefang English Translation

Post by andwhyisit »

ErrorPwnage wrote:I posted my save for nothing now. Nobody is commenting about the Denfare thing..


>:(
I have the fix and will apply it as well as numerous other fixes and changes after the next patch release so that I don't work over kmeisthax's changes before he gets a chance to release them, or alternatively if I figure out how to do kmeisthax's hack before he does.

tl;dr; It's fixed but not released yet.

@kmeisthax: I'm thinking that creating an extra pointer and message exclusively for name input might be the better way to go. I'm looking into that now.
Telefang Patch v86:
http://www.mediafire.com/?e06d79bf25mbq7u

- Moved D4B1 names to D658 where they can't overwrite reserved values in ram.
- Mass replaced E5 B1 D4 with E5 58 D6 in the script.
- Fixed an E5 code typo in the phrase "[name]'s Denma attack went up!" causing the name to not display.
- Found a cure for Ornith's sadness. :P Yep. More name limit expansions.
- Expanded D420 to 16 chars and a trailing E0. Sorry Sanky but I had to remove your old hack.
- Moved D420's content to an unused section of ram to accomodate the full 17 bytes.
- Refixed the "[name] appeared!" message after the above changes.
- Applied FWF to name input screens. This adds an extra pointer to the game script btw.

It should all be working but I had not the time to test everything, so keep an eye out for bugs.
A few things I am worried about in regards to the inserter:
1. In wikifang are custom codes EA and EB represented as «ea» and «eb» or some other way?
2. I inserted the new pointer at the end of the pointer table but 0x114190 onwards repeats and doesn't show up in wikifang. Is this dummy data?
3. If it is dummy data then would the 11 pointer gap between 0x114188 and 0x1141A0 in wikifang break the inserter when read?
kmeisthax
Posts: 129
Joined: Sat Dec 04, 2010 3:20 pm

Re: (Incomplete) Telefang English Translation

Post by kmeisthax »

@andwhyisit that was my plan, but I was busy writing new text insertion tools that could properly update the master list of text pointer tables in B:494F to properly account for moving mid-bank text banks around if needed. I didn't want to update it by hand and then watch Sanky's tools break the patch when he tried to inject new translations... although in all honesty I could have just appended it to the end of the ROM bank like I usually do.

Also the person who suggested "treat US and JP version Telefang differently for link trades", there's two ways to do it:

1. Ask the user what version game is being linked. Easy for us, but it might cause confusion.
2. Alter the SIO protocol to detect a Japanese game. Or, more likely, alter it so that we assume Japanese by default and only use the English protocol if some criteria was detected. This requires a complete disassembly of the link cable routines to determine what changes we can make that the Japanese version won't notice but the English version can pick up on.
3. Don't be compatible at all, warn users not to link the two. (not truely a way to achieve compatibility)

Given that we already changed the internal character sets around, there is a case for separate link modes between JP and US version cartridges. This would probably count as a low-priority task though because few people will be linking. Most emulators don't support the link cable protocol anyway and people wanting to move their progress over from a Japanese ROM to a US one would probably be better helped with a save conversion tool than completely polished link trading capabilities.
User avatar
andwhyisit
Site Admin
Posts: 1199
Joined: Fri Dec 14, 2007 9:24 pm

Re: (Incomplete) Telefang English Translation

Post by andwhyisit »

kmeisthax wrote:@andwhyisit that was my plan, but I was busy writing new text insertion tools that could properly update the master list of text pointer tables in B:494F to properly account for moving mid-bank text banks around if needed. I didn't want to update it by hand and then watch Sanky's tools break the patch when he tried to inject new translations... although in all honesty I could have just appended it to the end of the ROM bank like I usually do.
Ah well. I just added it to the end of the pointer table. I'll wait till Sanky answers my questions about the inserter and make changes as needed, but I really, really had a backlog to burn. Sorry about that.

And if you want to know what was changed at least...

Original function is at 4:649A. Naming screen version is at 4:6492. New pointer is at 0x1141A0.

New function is pretty much:
ld b,00
ld c,d0 (index of the new pointer)
jp 649e (piggybacks off of the original function from here on out, to preserve space an' all)

Jumps to 649A were changed to 6492 at addresses 4:6791, 4:6727, 4:64D2, 4:655C, 4:65AB, 4:6629, 4:4538, and 4:430B.
kmeisthax wrote:Also the person who suggested "treat US and JP version Telefang differently for link trades", there's two ways to do it:

1. Ask the user what version game is being linked. Easy for us, but it might cause confusion.
2. Alter the SIO protocol to detect a Japanese game. Or, more likely, alter it so that we assume Japanese by default and only use the English protocol if some criteria was detected. This requires a complete disassembly of the link cable routines to determine what changes we can make that the Japanese version won't notice but the English version can pick up on.
3. Don't be compatible at all, warn users not to link the two. (not truely a way to achieve compatibility)

Given that we already changed the internal character sets around, there is a case for separate link modes between JP and US version cartridges. This would probably count as a low-priority task though because few people will be linking. Most emulators don't support the link cable protocol anyway and people wanting to move their progress over from a Japanese ROM to a US one would probably be better helped with a save conversion tool than completely polished link trading capabilities.
Option 2 was the plan I was thinking of. Low priority of course, as you said, but I can still play around with writing name conversion functions in the meantime. ;)
Also does anyone have those old patch versions? At all?
User avatar
andwhyisit
Site Admin
Posts: 1199
Joined: Fri Dec 14, 2007 9:24 pm

Re: (Incomplete) Telefang English Translation

Post by andwhyisit »

Anyhow this is the basic idea for nickname conversion:
Spoiler!
Image
kmeisthax
Posts: 129
Joined: Sat Dec 04, 2010 3:20 pm

Re: (Incomplete) Telefang English Translation

Post by kmeisthax »

Sounds good, although I would recommend letting the user edit and approve the romanized-and-truncated name after the trade.

Also, as a note: Text messages are completely broken because they use main script - which assumes a 2x16 window - to draw into a 6x6 window. Sanky's text inserter naively inserted newlines assuming a 2x16 window, which a) badly formats the text and b) causes the main script to return early assuming it's being called per-frame. So dynamic window sizes is going to tie into wordwrap and line centering too...
telefangfan(imported)
Posts: 61
Joined: Sat Dec 20, 2008 12:30 am

Re: (Incomplete) Telefang English Translation

Post by telefangfan(imported) »

"[name]'s Denma attack went up!"

name= trainer's name?
User avatar
andwhyisit
Site Admin
Posts: 1199
Joined: Fri Dec 14, 2007 9:24 pm

Re: (Incomplete) Telefang English Translation

Post by andwhyisit »

telefangfan wrote:"[name]'s Denma attack went up!"

name= trainer's name?
No. It's the name of the player's Denjuu.
User avatar
Sanqui
Posts: 736
Joined: Sun Dec 16, 2007 12:25 am

Re: (Incomplete) Telefang English Translation

Post by Sanqui »

Telefang patch version 87:
http://wikifang.meowcorp.us/etc/TPatch87.ips

* Added in Kimbles' Iris story and NPC translations!
* Tweaked the map text routine to enable text longer than 15 characters (moved it from CA00 to CCC0)
* Changed Pepperi Mount. to Pepperi Mountain accordingly, although we probably want to do full names later (i.e., The Devil's Mountain, Mt. Pepperi)

EDIT: Oh, and I also gutted out the centering for map text.
User avatar
andwhyisit
Site Admin
Posts: 1199
Joined: Fri Dec 14, 2007 9:24 pm

Re: (Incomplete) Telefang English Translation

Post by andwhyisit »

andwhyisit wrote:A few things I am worried about in regards to the inserter:
1. In wikifang are custom codes EA and EB represented as «ea» and «eb» or some other way?
2. I inserted the new pointer at the end of the pointer table but 0x114190 onwards repeats and doesn't show up in wikifang. Is this dummy data?
3. If it is dummy data then would the 11 pointer gap between 0x114188 and 0x1141A0 in wikifang break the inserter when read?
Sanky, while you're here, mind answering these few questions?
User avatar
Sanqui
Posts: 736
Joined: Sun Dec 16, 2007 12:25 am

Re: (Incomplete) Telefang English Translation

Post by Sanqui »

wrote:1. In wikifang are custom codes EA and EB represented as «ea» and «eb» or some other way?
It doesn't matter; originally only «234» would work, but I changed it just fine.
wrote:2. I inserted the new pointer at the end of the pointer table but 0x114190 onwards repeats and doesn't show up in wikifang. Is this dummy data?
I don't know, but would assume it is.
wrote:3. If it is dummy data then would the 11 pointer gap between 0x114188 and 0x1141A0 in wikifang break the inserter when read?
No, the inserter treats each pointer individually, it could be in the middle of the bank and it wouldn't care.

Sorry for forgetting about the questions!
Post Reply