PDA

View Full Version : RLdev and Clannad


velocity7
2007-02-01, 22:33
Hey guys,

After talking with Haeleth for a bit, I've managed to get rlBabel to finally load up and start running on Clannad. However, I'm coming across the following problems:

Current Bugs:
1. When global.kh is built with "#load 'rlBabel'", the "Return to Previous Selection" button becomes disabled, even if you've just made a selection.
2. \size{} causes the indentation to screw up if used before a ( or " character. See image here (http://forums.visualnews.net/attachment.php?attachmentid=23&stc=1&d=1176600046).

Fixed Bugs:
1. Name text is overlapping. Example image here (http://forums.visualnews.net/attachment.php?attachmentid=8&stc=1&d=1170396943).
FIXED: Used RealLive 1.2.6.8 interpreter.

2. When coming across player choices, the text becomes very weird/corrupt/etc. This only happens when anti-aliasing is set to High. Any other setting works. Tested on different machines. Examples: 1 (http://forums.visualnews.net/attachment.php?attachmentid=9&stc=1&d=1170396943), 2 (http://forums.visualnews.net/attachment.php?attachmentid=10&stc=1&d=1170396943).
FIXED: Modify MOJI_SIZE in GAMEEXE.INI across all WINDOW variables.

3. Verdana doesn't work well in 1.2.6.8. The game will crash at choices due to rlBabel.dll (easy to trigger this crash by going to New Game, hold CTRL, and run through everything up to the first choice). Anti-aliasing being off or high fixes this. Arial and Tahoma fonts seem to work fine on all settings, however.
FIXED: Used RealLive 1.3.9.5.

4. Hypertext glossing is overriding the automatic line breaking, and instead is causing the text to go over when it shouldn't be. Here's an example image (http://clannad.thewafflehouse.net/screens/20070307/clannad_gloss.png).
FIXED: Used SVN build of RLdev.

Questions:
- What archives are supported in RealLive other than the PAK and TXT files?
- Can I make PAK files?
- Is there a way to make the game check the HDD for files before checking the disc?
- Is there a handler for making the hypertext blink or become highlighted when the mouse hovers over the text? (And then when it clicks, is there a handler for the gloss itself, other than the window that displays?)

I've included some images to illustrate the problems at hand. If Haeleth or anyone can help out, that'd be great. :)

Current settings are:

global.kh
#load 'rlBabel'

SEEN9030.ke has "rlcInit()" at the beginning of the file, after the resources are loaded.

Compilation settings:
rlc -d %TEXTDIR% -i %KEYDIR% -e utf-8 -x western

Also using rBabel.dll, RealLive version 1.3.9.5, and 1.3.9.5.map.

Roto
2007-02-02, 18:04
3. Game is crashing on any Japanese text when forcing Western encoding (impossible to fix?)

ISO-8859-1 (Western) is not capable of encoding Japanese characters, which is likely why it's crashing.

Have you tried without the -x western option? I don't know how well RealLive or RealLive+rlBabel deal with mixed single-byte and double-byte characters, but it is possible to represent both most Roman characters (excluding accents, etc.) and Japanese in ShiftJIS.

velocity7
2007-02-02, 19:07
Without the -x western option, dynamic lineation becomes impossible (e.g., variable width fonts), as the rlBabel library will not load unless an output transformation has been set.

I kinda figured it was impossible to fix #3 anyway, so don't mind me. Though I'd like to get everything else to work.

velocity7
2007-02-04, 17:52
Update: #2 is temporarily fixed using the following method...

Using low and no anti-aliasing modes will work. High anti-aliasing causes the corruption mentioned above. Tested across different computers. No matter what though, CTRL will cause the text to grow big for no reason.

Haeleth
2007-02-05, 14:19
One problem may be that you're calling rlcInit() in global.kh, which means it's either executed at the start of every scenario or not at all. It should be called once and only once in the program's startup code, which generally means somewhere like SEEN9030, though I can't offhand remember where Clannad has it.

The name thing seems to be 1.2.3.5-specific; it's an old interpreter which doesn't fully support everything rlBabel wants. Changing to a different NAME_MOD may solve it at the cost of changing the appearance of the game. Alternatively, hack rlBabel's textout routine to fall back on tile rendering regardless of NAME_MOD - it's open source C++, I'm sure you can find someone with the time and inclination.

velocity7
2007-02-05, 18:04
Is it possible to do something like use another RealLive executable with the CLANNAD SEEN.txt? Or not really?

Seems changing NAME_MOD didn't do anything. Neither did initializing rlcInit() in SEEN9030 as opposed to the global header.

EDIT: Oh wow, using Kanon's RealLive engine actually works! Playtesting would be necessary, though. Too bad anti-aliasing still causes #2 to screw up in the same manner.

velocity7
2007-02-07, 12:58
Alright, here's a new list of things that I need to figure out for later. Currently running RealLive 1.2.6.8:

Bugs:
- Verdana doesn't work well in 1.2.6.8. The game will crash at choices due to rlBabel.dll (easy to trigger this crash by going to New Game, hold CTRL, and run through everything up to the first choice). Anti-aliasing being off or high fixes this. Arial and Tahoma fonts seem to work fine on all settings, however.
FIXED USING REALLIVE 1.3.9.5.

Questions:
- What archives are supported in RealLive other than the PAK and TXT files?
- Can I make PAK files?
- Is there a way to make the game check the HDD for files before checking the disc? Or rather, if this setting were set:
#FOLDNAME.G00 = "G00" = 1 : "G00.PAK"
It should check for files in the following order:

1. G00.PAK in local installation directory
2. G00 folder in local installation directory
3. G00.PAK in CD/DVD drive
4. G00 folder in CD/DVD drive

Right now only #1 and #2 happen if the game is fully installed, or #3 and #4 if the game is on a minimal install.

I don't mind if I can't make PAK files or anything, but if I can just get the game to search via the order #2 then #4, even if it's a hack, I'll at least be content with that.

johannes100
2007-02-15, 05:25
I tried to run portions of CLANNAD with rlBabel with the following changes to the gameexe.ini settings:

#DLL.000 = "rlBabel"
#INIT_FONT_TYPE=2
#INIT_FONT_NAME="Arial"
#NAME_ENC=2

Using interpreter that was with CLANNAD.

The rest is as per Velocity mentioned above.

However, when I try to run a secnario with rlBabel, the text box shows 'Error:', and several lines later, says '.unable to format text'. What might be the cause?

velocity7
2007-02-17, 23:05
If you're using the interpreter that was with CLANNAD, you're using only 1.2.3.5 and thus should use much, much older settings. If you read through the manual you'll be able to find them.

johannes100
2007-02-18, 17:21
What games use what versions of the interpreter? And I remember installing on another computer's copy of CLANNAD a patch that fixes reallive's character caching (so that it will appear on text hookers). Will it conflict?

** EDIT ** I tried using 1.3.9.5 from planetarian and it went as expected (I hadn't known that checking the version was as easy as highlighting the icon ^^;;). For my second question, no, it does not conflict.

velocity7
2007-02-19, 22:04
Many thanks to JRaiKetchum; the AA problem has been fixed. Simply go into GAMEEXE.INI and change:

#WINDOW.xxx.MOJI_SIZE=26

This should be 25, not 26. Apparently rlBabel does not like rendering beyond size 25, and thus everything gets screwy as a result (e.g., above example). However, all windows need to be set at the same MOJI_SIZE, otherwise there will be gaps in the rendering. For example:

http://clannad.thewafflehouse.net/screens/aaproblem.PNG

These lines appear if the MOJI_SIZE is different between windows.

Rasqual Twilight
2007-04-10, 06:25
21
22

Haven't written an archiver for this, but this shouldn't be hard to do.
Left as an exercise (do it in OCaml).

The other formats are .ovk and .nwk which are, according to tools authors, very simple:
typedef struct
{
uint32 length; // NWA ファイルのサイズ。
uint32 offset; // NWA ファイルの開始オフセット。
uint32 id; // 識別用の ID。
} nwk_info_t;

// NWK に含まれる NWA の数を読み込む。
uint32 count;
fread(&count, 1, 4, inf);

// NWA の数に応じたバッファを確保し、nwk_info_t 構造体を読み込む。
nwk_info_t *nwk_info = new nwk_info_t[count];
fread(nwk_info, 1, sizeof(nwk_info_t) * count, inf);

(nwk2nwa:Sumire Kinoshita (a.k.a. 触手の人))

velocity7
2007-04-10, 13:31
Many thanks Rasqual Twilight. I've forwarded the information to the people who'll be able to help more with this. :)

velocity7
2007-04-14, 17:23
New bug discovered, please see first post.

Rasqual Twilight
2007-05-03, 11:05
Just to make sure, the extract parameters are:
kprl -d -u -S -o %KEPAGODIR% -e utf-8 SEEN.TXT
aren't they? I seem to obtain extra strings in the resource with those.

velocity7
2007-05-03, 12:13
I didn't use "-S", mainly because of fear of "false positives", as you say.

I may consider it though... could you run it and see if there's any real differences that would be considered useful (say, Kyou's route) and what would be considered not useful? (e.g., useless strings)

Rasqual Twilight
2007-05-04, 06:42
My point is I don't manage to obtain the same raw .utf8 files as those published on the waffle site.

velocity7
2007-05-06, 17:57
Hm, okay. Though I dunno, if it becomes a problem I could attempt a -S and check to see later what the differences are...

fireshark
2007-07-16, 23:46
It gives you strings that are otherwise in the .ke.
For example, you get 2 extra strings in SEEN0425 that would otherwise be in the Kepago file.

That is:- [code]
strS[1016] = '?????' becomes
strS[1016] = #res<0153>
and
<0153> ?????
[code]
making the resource file 2 lines longer.
________
C216 (http://www.mercedes-wiki.com/wiki/Mercedes-Benz_C216)

Quickdart
2007-10-06, 05:50
I'm trying to follow the steps here to extract / recompile the script with English text. I've managed to extract but on recompile using
rlc -d %TEXTDIR% -i %KEYDIR% -e utf-8 -x western %MODIFIEDDIR%\seen0414.ke
I keep getting the error "Error (SEEN0414.utf line 30): `\{}' / `\name{}' invalid in string constants."
Line 30 is the first line in the text using the \{\m{B}} reference. Can anybody tell me what I'm doing wrong?

Quickdart
2007-10-07, 04:28
Yes! It works great. I Fixed some problems, but I still can't seem to get the main characters names to work properly but ah well.
I've wrote a small program to extract the raw translated text from the baka-tsuki wiki, wrote a batch file to insert it and I've been plugging away at fixing all the minor problems I've had. I have about 75% of the translated text inserted now, and it works great. A lot of minor issues because I had to use the -S option when I extracted the files (I use the voice patch, and otherwise the voices are all off).
Now for the REAL questions, Is this hacked-together pre-alpha patch something that people would want? Is it something that Velocity7 would even want people to distribute? Please not that other than being a fan of the game I'm not affiliated with the project in any way, I just didn't want to wait to play it in English :).
So velocity7,since you are the 'boss' of this project, any requests / suggestions / orders?

fireshark
2007-10-07, 13:27
Quickdart, I've been doing that for a while now. :P

Keep it to yourself, velocity7 is doing his own builds with translated seens that hes handing out to editors and what have you.

He prolly won't mind that much, but your thing won't be the only version that's floating around.
________
VERMONT DISPENSARIES (http://vermont.dispensaries.org/)

Sobakhan
2007-12-21, 06:15
This is very useful to me.
I try transition to Korean this game.
Thanks~

Onnuri hanguls Software transition to Korean Team.
http://onuhanguls.ez.ro

JDF
2008-02-06, 18:01
What do I do with the SEEN files?
Am I supposed to put them in the 'Clannad' file and overlap the existing one?

EDIT: I mean the Clannad folder after you install it.

fireshark
2008-02-06, 18:18
There is no 'Clannad' file.
________
Flying star ii (http://www.lamborghini-tech.com/wiki/Lamborghini_Flying_Star_II)

JDF
2008-02-06, 22:28
Where am I supposed to put the SEEN file?

I have this bunch of data which I have no idea how to use.

fireshark
2008-02-07, 00:05
Where did you install Clannad?
________
Sex video (http://www.fucktube.com/)

JDF
2008-02-07, 23:19
Into C:\Key\CLANNAD

Is this enough info?
Because all I can say after this is that it was installed directly into the Local Disk (C:) (I believe it is my hard drive?)

JDF
2008-02-08, 00:02
speaking of which every time I try to do something on the menu (start game, options, load, change name, everything except Exit Game) causes the game to stall with the hourglass thing and makes it 'Not Responding'.
Is this because I didn't use the correct system on starting it? (I was starting it with REALLIVE)

Rasqual Twilight
2008-02-08, 02:47
You MUST start windows with the Japanese System Locale that you can set in the Control Panel (http://www.g4g.it/forum/viewtopic.php?t=922) to run certain RealLive games, if not all.

JDF
2008-02-08, 07:04
So in order to translate the game I need to download all the seen files from baka-tsuki. However they (the files) are all individual, so am I supposed to dump all of it into the Clannad directory or copy and paste all of it into the SEEN.txt in Notepad?

Shizuka
2009-04-21, 23:26
1. When global.kh is built with "#load 'rlBabel'", the "Return to Previous Selection" button becomes disabled, even if you've just made a selection.

Fixed!!
In the rldev folder, lib/rlBabel.kh:
Comment out line 220: DisableAutoSavepoints
Comment out line 257: EnableAutoSavepoints

WARNING: This may break things; ask Haeleth. However, it works under 1.5.0.4 + r30 patch.

2. \size{} causes the indentation to screw up if used before a ( or " character. See image here.
lamely "sidestepped" by foregoing indentation altogether and putting the speaker in a bubble above the text box. :3

Does that mean no more bugs?
Nope, new one to report:
The first text displayed has some formatting abnormality that causes the second character to be placed at the exact same location as the first. "A world" -> Aworld". "Hithere" -> "Hthere" where the H is 'H' and 'i' overlapped.