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

Author Topic: Idea No Hi Translation  (Read 3657 times)

Celeste

  • Jr. Member
  • **
  • Posts: 14
    • View Profile
Idea No Hi Translation
« on: May 28, 2019, 01:39:16 pm »


Hello everyone, today I bring you a game I want to aid in translating. I have worked on Gokinjou Boukentai which is currently at a standstill so I've decided to start this.

Idea No Hi, or The Edea Incident (Literally Day Of The Idea) is a nontraditional jrpg about a boy with psychic powers who is tortured into using them. It's very overlooked and hasn't had a translation and that's what I'm here to start.

I need help with extracting the script, translating, and putting the script back in. I can help somewhat with translations however.

I really like this game and would love to see it translated, thanks for your contributions.

Psyklax

  • Hero Member
  • *****
  • Posts: 1112
    • View Profile
    • Psyklax Translations
Re: Idea No Hi Translation
« Reply #1 on: May 28, 2019, 02:06:09 pm »
As much as I'm sure this game is a very worthy candidate for translation, you say that you:

need help with extracting the script, translating, and putting the script back in

So... everything? :huh:

I'm not sure a new Personal Projects thread is necessary when you've not even started, and especially when you say you need help with everything connected with the project. It might be okay to do something like a Help Wanted thread or even a post in the Hack Ideas thread at this point. Of course, you could try to learn how to hack. :D

I would help if I didn't have too many projects of my own to finish. Anyone else keen on getting into a SNES RPG? I suppose I could have a go on ripping the main script, but no more.

Celeste

  • Jr. Member
  • **
  • Posts: 14
    • View Profile
Re: Idea No Hi Translation
« Reply #2 on: May 28, 2019, 02:19:15 pm »
So... everything? :huh:
While the script stuff I cannot do, I can do some translation but I'm not too fluent in Japanese so I need help making it sound correct and good.

Anyway I can move the post too I guess

Vehek

  • Full Member
  • ***
  • Posts: 207
    • View Profile
Re: Idea No Hi Translation
« Reply #3 on: May 28, 2019, 04:06:57 pm »
I have some notes from several years ago. I'm double-checking some of these details as I get them ready. All referenced offets are linear addresses, not the lorom the game uses.
  • The dialog text is one blob (at 0x60000), with no pointers, instead it counts end tokens. There are two different end token, which affect both the current string and the following one. The first, 00, is a typical string ender. The other, 0F, inserts a closing 」mark and an opening「 mark with asterisk into the next string.
  • FD XX, FE XX, and FF XX are mostly kanji, but FD XX also contains dictionary strings (Pascal strings)
  • My notes say there are graphic pointers for each individual text character. Important, since past a certain point, the raw order in the font graphics doesn't match the internal order.
Quote
58000 - Offsets into the font graphics for each font character?
*583C6 - Start of regular text
*589A6, 58BA6, 58DA6 - Start of kanji tables
**Of note: FD-kanji are the last in the graphics
***Starting with FD48, the kanji graphics are no longer in alignment with the previous ones.
**Not all Roman alphabet letters are used. A few have blank offsets, as their slots are used for control codes.
59CCE - Font
Quote
Pascal strings
117DF8
Format: Dict.String #, offset of dictionary string relative to 117DCA.

Psyklax

  • Hero Member
  • *****
  • Posts: 1112
    • View Profile
    • Psyklax Translations
Re: Idea No Hi Translation
« Reply #4 on: May 28, 2019, 04:47:44 pm »
I'm not a mod so it ain't my call, I'm just making an observation.

Anyway, I was intrigued so I spent an hour looking into the game. Here's a few things I discovered, which may be useful for anyone who has a go at it themselves. (I did all of this before I noticed Velek's post above mine, so it may repeat a couple of things. Still, this is what I figured out in the last hour or so. :) )

The graphics for the text are 2 BPP and the first kanji is stored at $5DC86. The game, for some reason, takes the values stored there, then does an EOR #$FF before putting it in RAM for a DMA transfer to VRAM. No idea why they need to do the EOR instead of just putting the actual value, but whatever.

The table reference to $5DC86 is at $58F2A. Ultimately, the reference to this address comes from $117F6B, where the C2 there is doubled then added to a value stored at $585A4, but that's not important right now. What IS important is that the C2 refers to that particular kanji, and another look tells me how the text system works.

Before C2 is FF, and FF tells the game to use kanji bank 3, if you like (the game checks for FD, FE and FF). If the address is under FD, it signals the primary bank, where the kana etc is.

It's at this point that I realise this is just for the character name: in this case, 博士 [hakase] or 'doctor'. Before the name, there's a byte saying how many bytes to read - in this case, 04, because it's FF C2 FD 67 (two kanji). The actual text is another matter.

Making a table file for the basic kana is trivial at this point, and a quick search for the first two characters bring me to $60000. Yep, that's where the text is stored. A little fiddling tells me exactly what's going on. It starts with 03 FD E8, which tells the game that this is the aforementioned doctor speaking. If I change it to E7, the name changes to Charles. I haven't delved into the meaning of 03 FD, but if you change FD to FE, you get a different kanji, so who knows for now.

With some messing around, I had enough information to make a simple Romaji table file. Whoever wants to give this a try can replace what's there with Shift-JIS or what have you. Here you are:

Code: [Select]
00=[END]
0D=[BUT]
10=
11=0
12=1
13=2
14=3
15=4
16=5
17=6
18=7
19=8
1A=9
1B=A
1C=B
1D=C
1E=D
1F=E
20=F
21=G
22=H
23=I
24=[LIN]
25=[...]
26=L
27=M
28=N
29=nai
2A=ja
2B=suru
2C=da!
2D=S
2E=T
2F=kure
30=V
31=[jo]
32=[watashi]
33=Y
34=!!
35=a
36=i
37=u
38=e
39=o
3A=ka
3B=ki
3C=ku
3D=ke
3E=ko
3F=sa
40=shi
41=su
42=se
43=so
44=ta
45=chi
46=tsu
47=te
48=to
49=na
4A=ni
4B=nu
4C=ne
4D=no
4E=ha
4F=hi
50=fu
51=he
52=ho
53=ma
54=mi
55=mu
56=me
57=mo
58=ya
59=yu
5A=yo
5B=ra
5C=ri
5D=ru
5E=re
5F=ro
60=wa
61=wo
62=nn
63=xa
64=tt
65=xya
66=xyu
67=xyo
68=ga
69=gi
6A=gu
6B=ge
6C=go
6D=za
6E=ji
6F=zu
70=ze
71=zo
72=da
73=dji
74=du
75=de
76=do
77=ba
78=bi
79=bu
7A=be
7B=bo
7C=pa
7D=pi
7E=pu
7F=pe
80=po
81=A
82=I
83=U
84=E
85=O
86=KA
87=KI
88=KU
89=KE
8A=KO
8B=SA
8C=SHI
8D=SU
8E=SE
8F=SO
90=TA
91=CHI
92=TSU
93=TE
94=TO
95=NA
96=NI
97=NU
98=NE
99=NO
9A=HA
9B=HI
9C=FU
9D=HE
9E=HO
9F=MA
A0=MI
A1=MU
A2=ME
A3=MO
A4=YA
A5=YU
A6=YO
A7=RA
A8=RI
A9=RU
AA=RE
AB=RO
AC=WA
AD=WO
AE=NN
AF=XA
B0=XI
B1=XU
B2=XE
B3=XO
B4=TT
B5=XYA
B6=XYU
B7=XYO
B8=VU
B9=GA
BA=GI
BB=GU
BC=GE
BD=GO
BE=ZA
BF=JI
C0=ZU
C1=ZE
C2=ZO
C3=DA
C4=DJI
C5=DU
C6=DE
C7=DO
C8=BA
C9=BI
CA=BU
CB=BE
CC=BO
CD=PA
CE=PI
CF=PU
D0=PE
D1=PO
D2=*
D3=(
D4=)
D5=!
D6=?
D7=~
D8=.
D9=[dot]
DA=:
F1=-
F2='
F5=[rep]
F6=((
F7=))
FA=~~~
FB=ita
FD=[K1]
FE=[K2]
FF=[K3]

So that's as far as I've got, but really, anyone with some small ROM hacking ability can go to $60000 with this table file and get to work. I haven't documented some control codes in the $00-$0F range, so there's more to be discovered, but it looks like the system is pretty straightforward.

Hope this gives you a start! ;)

Celeste

  • Jr. Member
  • **
  • Posts: 14
    • View Profile
Re: Idea No Hi Translation
« Reply #5 on: May 28, 2019, 06:04:07 pm »
Thank you Psylax, I'll try to learn how to hack and such and get this game started

Psyklax

  • Hero Member
  • *****
  • Posts: 1112
    • View Profile
    • Psyklax Translations
Re: Idea No Hi Translation
« Reply #6 on: May 29, 2019, 03:19:55 am »
I should have pointed out that the first order of business is getting an English font in there, because the only font currently there is an incomplete capital alphabet. This is complicated by the fact that it goes through the EOR process I mentioned, but I think I'll have a go at converting the existing font so that I could convert a new one in there. Of course it'll be up to you which exact font to use. I'll come back later with my results.

EDIT: okay, I had a go. Fortunately there's an online bitwise calculator which lets me do mass EOR conversion. So the way the font is stored in the ROM, it uses six of the eight rows in an 8x8 tile. The six lines for the top tile are followed by the six lines for the bottom tile, and then the next character, and so on. If I add FF FF to the six bytes for a tile, it displays correctly in Tile Molester. Next step is to do the process in reverse to insert an English alphabet. Of course, the system used in the game could be modified to use a dictionary compression system. As it stands it's pretty limited, but there you go. I'll try inserting a font and report back.
« Last Edit: May 29, 2019, 03:50:21 am by Psyklax »

aqualung

  • Full Member
  • ***
  • Posts: 233
    • View Profile
Re: Idea No Hi Translation
« Reply #7 on: May 29, 2019, 09:50:21 am »
Idea no Hi!!!  :o :o :o

I was waiting for someone to start a fantranslation of this game for sooo many years. In fact, about half a year ago, I started a translation of another snes rpg, Jungle Wars 2, using a tool called Wanderbar and, if things had gone smoothly, the next game I wanted to translate using this tool was precisely Idea no Hi. Unfortunately, I had to halt the Jungle Wars 2 project because my Japanese is still too basic to undertake a full game translation.

I wish there was anything I could do to help in this project, as I've heard it's a fairly good game if you're into old school rpgs. You have my best wishes!

Badseed

  • Jr. Member
  • **
  • Posts: 76
    • View Profile
Re: Idea No Hi Translation
« Reply #8 on: May 29, 2019, 11:17:14 am »
Interesting choice for a project....

There's some good:
-dark funny story by Koji Aihara
- wearing panties on head to enable shopping in "pervert town" for boosts

And some bad:
- aggravating instadeath truck maze
- clunky game mechanics

But in my mind a great quirky RPG in that certain Japanese way. I'll be watching and looking forward to hearing about progress.
"Now is the happening of Plan B!! Time for max-strength spray! Your brains will be washed with 99.9% effectiveness!"

Gideon Zhi

  • Discord Staff
  • Hero Member
  • *****
  • Posts: 3532
    • View Profile
    • Aeon Genesis
Re: Idea No Hi Translation
« Reply #9 on: May 29, 2019, 11:44:38 am »
Fair warning: Celeste did something like this with Gokinjo Boukentai, then did not contribute at all to the project beyond corralling a couple of actually competent workers together. She then bumped the project several times in an attempt to draw more attention (and, presumably, more workers) to it. I cannot imagine that this one would be much different.

Psyklax

  • Hero Member
  • *****
  • Posts: 1112
    • View Profile
    • Psyklax Translations
Re: Idea No Hi Translation
« Reply #10 on: May 29, 2019, 01:25:53 pm »
Fair warning

That was my assumption when I read the first post, hence my initial response. I'm still gonna have a little go with the font and such, for experience, but I'm certainly not going to translate it, or do any of the real work. I've got too much else to do. :)

EDIT: well I'm just puttin' this out there. I've decompressed the FE and FF kanji and put them in a binary file. If anyone wants to identify all 512 kanji and make a table file, be my guest. :D But don't worry, there's still the FD kanji to do, but they're a little bit off so I'll need to do a tad more work on them.
To view correctly, open in Tile Molester, make sure you're in 1bpp planar and change block size to 2x2. This is how it's arranged in the ROM, after EORing with FF, reordering the bytes into a more sensible order, then adding some FFs for padding because they're actually 12x12 and the game sticks them together.
http://s346165667.websitehome.co.uk/psyktrans/ideanohi-kanjifeff.bin
« Last Edit: May 29, 2019, 02:26:11 pm by Psyklax »

Vehek

  • Full Member
  • ***
  • Posts: 207
    • View Profile
Re: Idea No Hi Translation
« Reply #11 on: May 29, 2019, 11:24:25 pm »
The simpler way of viewing the font would be to use a tile viewer that allows custom heights. For example, use CrystalTile2 with width 16, height 12, and solid 1bpp. Font graphics stored this way are fairly common.
However, graphic viewers don't work perfectly with this game because the "pointers for each font character" thing can create mismatches between the character index and the raw graphics viewed directly from the ROM.
What would seem in a raw dump to be the last 10 kanji of the FE block are actually the last 10 of the FD block (FD C3 through FD CC). I'll write down what replaces the 10 last FE kanji slots, since it's just the alphabet letters that got removed from the one-byte range: J K O P Q R U W X Z. This seems to be the only major discrepancy, all other kanji are in order. Just ignore that duplicate kanji at the point FD kanji get misaligned. (Go to 0x5E92C if you want to see that section properly.)