Linux hgaming w. Wine

I’m posting this here because the games i’m taking about use Japanese fonts. I know a few, very few, hgames use Onscripter which makes it much easier to run natively. Most don’t. So i’m asking what hoops you might have to go through to see the Japanese text and any ways to fix games with special characters in their fonts.

Also, is there a way to hook things like AGTH and Atlas (any version) or rikachan (though firefox) through Wine? I’m learning Japanese, but unfortunately there aren’t many games with furigana.

First of all, make sure you actually have the Japanese fonts etc. installed.

Next, you want ‘winelocale’, which sort of fulfills applocale’s role under wine, and can be invaluable for getting eroges to run under Wine.

AGTH, Atlas and Rikaichan, though? I have no idea; haven’t tried any of that; you could give it a shot and see if it magically works anyway.

I’ve heard there is a way to directly copy the source text a game runs through Wine natively on Linux and then use that through translation tool (i don’t think there is a native japanese-english Linux translator).

As a professional programmer, if I understand how these text-hooking games work, it should be even easier to write one for Wine than for vanilla Windows. All the tools do is hook the Windows API calls that write text to the screen, and take a Unicode string as an argument. Since with Wine, you have the source for those methods, you can simply go into the appropriate part of Wine, and implement equivalent functionality with a lot less fuss than hax0ring a Windows resident driver (or whatever the tool has to do) to do it.

No way. Identify the intermodule call and replace it with a jump to your own piece of code that grabs whatever you need, then make the call. You aren’t actually creating the hook within the DLL’s executable space at all; just creating it within the application you’re hooking. And believe me, it is VERY easy to place a hook there - or anywhere else, really, it’s just that certain intermodule calls are far more likely to carry useful text than other places within the code. (which is why those are identified and hooked by text hooker apps; so you don’t have to necessarily have someone with a debugger/disassembler on hand to find out where to hook)

I see.

It’s probably still easier to insert such hooks into the “system API” being invoked, if you have the source for such APIs. It’s pretty easy, I mean, all you really have to do is insert a line that says “invoke the text hooker functionality” and pass data.

unfortunatly I’m not sure exactly how to do that. I know how to find the text hooks for most games (except ones like Princess Maker 3…grrr!!!), but not sure how you’d go about having linux hook the text you want and copy it.

You would have to know a fair amount about the Windows API. Since Wine is actually an implementation of these APIs, and is open source, you could simply go to their implementations of the appropriate Windows functions and directly modify them to add what you want.

Sure, you’d essentially be forking Wine … but it IS a nice feature.

Well the program i wanted to run the most doesn’t seem to want to even with winelocale. Ordinarly in XP using applocale won’t work. You actually have to set non-unicode font to Japanese, otherwise it claims it’s a non-Japanese OS and won’t install. Looks like that’s happening here and i don’t know if and how to get around that.