Aeana 31 Posted September 16, 2014 Share Posted September 16, 2014 (edited) Since my chat monitor program has been released, I thought I'd repurpose this thread to be about my general tinkering with the game, which seems to be a sickness because I spend more time doing that than actually playing, lately. --------------------------------------------------------------------------------- This is inspired by a conversation in team chat last week some time when I was trying to help a team member with a quest but he wanted to Google the place name and couldn't type it. Continually impressed that people are managing to play this game without being able to read Japanese, I realized that I might be able to make it just a little bit easier for them. I thought it might be helpful if there were a way to get the game's chat out of the game for some people, particularly for copy/pasting Japanese text that they don't know how to type from the game into Google, either for searching walkthrough sites or for putting into Google translate or whatever they need it for. What this does is read the game memory to extract the chat log. It's still a bit early, so I'm not releasing it yet. I just wanted to gauge interest since my free time suddenly plummeted. If people are interested, I'll try to finish it up ASAP, otherwise I might just let it simmer for a while. Naturally, this is only for the PC version of the game. Sadly, there's no way to make it work with the other versions. Here's how it looks now. The formatting is in flux. At the moment, I'm just kinda emulating the style on the chat tab in-game, but I can easily change it to anything else if anybody has any suggestions. Edited September 27, 2014 by Aeana 1 Quote Link to post Share on other sites
Dwaine 1,169 Posted September 16, 2014 Share Posted September 16, 2014 That is awesome! Should be a great help to regular players and people writing English guides 'n such. Will it be a separate program to run or a patch? Quote Link to post Share on other sites
eal 2,646 Posted September 16, 2014 Share Posted September 16, 2014 Certainly sounds neat! This might be asking too much, but is it also capable of translating English text into Japanese for chat with Japanese speakers? Quote Link to post Share on other sites
Woodus 1,651 Posted September 16, 2014 Share Posted September 16, 2014 That is pretty sweet, good work Quote Link to post Share on other sites
Polantaris 2 Posted September 16, 2014 Share Posted September 16, 2014 This is pretty awesome. I think this is a great idea, and I really appreciate the work you've put into it. Do you mind releasing the source when it's finished? I'm curious .-. Quote Link to post Share on other sites
Gloomy 31 Posted September 16, 2014 Share Posted September 16, 2014 Wow Aeana, that's the tops! Quote Link to post Share on other sites
redneckpride4ever 320 Posted September 16, 2014 Share Posted September 16, 2014 Hell yeah! Sort of a legally dubious fan translation, as opposed to an outright illegal one. LOL Excellent work! Quote Link to post Share on other sites
Aeana 31 Posted September 16, 2014 Author Share Posted September 16, 2014 Certainly sounds neat! This might be asking too much, but is it also capable of translating English text into Japanese for chat with Japanese speakers?I was going to say that this is unlikely, but a friend of mine pointed me to something called Atlas that's used for a lot of machine translating for visual novels and stuff, and it seems like something that should not be too difficult to hook and make use of. But using something like Google Translate is unlikely because they have a quota on the number of requests you can make. I would like to note, though, that a lot of Japanese players use shorthand that machine translators don't fully understand, so you very well might get some gibberish now and then. This is pretty awesome. I think this is a great idea, and I really appreciate the work you've put into it. Do you mind releasing the source when it's finished? I'm curious .-. I don't see any reason not to release the source. It's not a particularly complex program, either. Quote Link to post Share on other sites
Mati 0 Posted September 16, 2014 Share Posted September 16, 2014 I wouldn't be surprised if you can't hear my "thank you" over the sound of how awesome you are. Quote Link to post Share on other sites
Proshall 67 Posted September 16, 2014 Share Posted September 16, 2014 Jesus, that may be one of the most useful things ever! Thanks a ton! Quote Link to post Share on other sites
Murd 3 Posted September 16, 2014 Share Posted September 16, 2014 The dream of copy&patse for game chat will finally come true!! Definately love your hard work!! Quote Link to post Share on other sites
Bunk Moreland 7 Posted September 16, 2014 Share Posted September 16, 2014 Looks great! Quote Link to post Share on other sites
Erdrick The Hero 969 Posted September 17, 2014 Share Posted September 17, 2014 This, coupled with Faolan's game script program/project, will make the game completely playable to non-Japanese players! Quote Link to post Share on other sites
Mimas 172 Posted September 17, 2014 Share Posted September 17, 2014 If you could add a save feature that would be really nice for keeping logs. As far as people talking about cutting and pasting, I would assume that this program only reads from memory so while people can cut and paste from chat, they still can't paste into chat. I looked into Atlas and it seems it costs around $80 so I don't think many people would be in a rush to use it. I was thinking something using EDICT would be good if it existed, but that won't attempt to parse sentences into English. But while looking into that I came accross a piece of software that claims to be able to use Atlas or Google Translate to translate games. I don't know if it would work for DQX as it intercepts the System calls to display grab the text to be translated. It also can read from a specified point in memory. The software was called ChiiTrans. As you can see from the sample translations though you wil notice that the quality of even the translations from Atlas are quite bad. For the chat program (or if you also know the memory location of normal text that as well) I think that feeding the text into the program JGloss might be the better alternative. While it just provides dicionary lookup for the words and little gramatical help, I think it will still make more sense then the automatic translations while also showing the Japanese with glossing so that people can learn words to commuincate with Japanese players. Quote Link to post Share on other sites
Aeana 31 Posted September 17, 2014 Author Share Posted September 17, 2014 I actually intended to eventually add support for something along the lines of JGloss (well, my idea was more like Rikai), because I personally believe that is the best way for people to become informed as they go. It just mostly comes down to finding the right tools with which to do it. Being able to mouse over words and get definitions and conjugation information for verbs should be very useful for anyone who's looking to actually learn about the language. That said, it's a big job and at this point I don't expect to have time to tackle something like that for a while yet. The first release will simply deliver the text, and it will be copyable. From there, people are free to paste it into something like JGloss for more information if they like, or into Google Translate if they must. Quote Link to post Share on other sites
Erdrick The Hero 969 Posted September 17, 2014 Share Posted September 17, 2014 or into Google Translate if they must. But thou must! Quote Link to post Share on other sites
Faolan 16 Posted September 17, 2014 Share Posted September 17, 2014 Actually, if her program can read directly from the memory, then there's no need for mine. Her program will have a 100% chance of getting the text right, whereas mine depends heavily on OCR. There's benefits and drawbacks to both methods. One benefit of doing it my way is that I don't have to worry about the memory addresses being changed, or the values being obscured. I would have to worry about a change in font though. For each new font, the OCR would have to be trained to recognize the font. As long as SE doesn't catch on, Aeana's method is better than mine. I do like the idea of combining these programs with dictionaries so that people have the ability to learn. Aeana, adding Google translate should be a trivial thing. I did my script in C#. If you're using C# and want to add a quick button for the user's convience you can copy that portion(or any portion for that matter) of the code. Quote Link to post Share on other sites
Aeana 31 Posted September 18, 2014 Author Share Posted September 18, 2014 Well so far, this is just for reading chat messages, rather than actual dialog. Although I'm sure it's plenty possible to read the dialog as well, perhaps I will look into that for a subsequent project. Quote Link to post Share on other sites
wiregu 24 Posted September 20, 2014 Share Posted September 20, 2014 (edited) I don't remember if DQX had an anti cheat engine but watch out for that, maybe this could trigger it. If it does have an anti cheat thing maybe test it on free accounts or something until it's safe to use Edited September 20, 2014 by wiregu Quote Link to post Share on other sites
Polantaris 2 Posted September 20, 2014 Share Posted September 20, 2014 I don't remember if DQX had an anti cheat engine but watch out for that, maybe this could trigger it. If it does have an anti cheat thing maybe test it on free accounts or something until it's safe to use This is a good point. A lot of anti-cheat applications determine memory reading as cheating, even if no addresses are edited. Quote Link to post Share on other sites
Ayukawa 9 Posted September 20, 2014 Share Posted September 20, 2014 I've used a few text hooking programs before for older games that were untranslated and I gotta say your version looks much nicer to the eyes than them. I think I used devhook and atlas for playing LoH: sora no kiseki a good 6 years ago. If atlas hasn't gotten much better since then it's definitely not worth paying for. I don't remember if it was a beta thing or if I pirated back then honestly but it was super bad, a step below google back then. Only mildly useful for getting important names out of it when it felt like giving me them Quote Link to post Share on other sites
Aeana 31 Posted September 20, 2014 Author Share Posted September 20, 2014 I apologize for the delay. As I mentioned in the first post, my free time has evaporated, and when I logged in on Thursday, I noticed that my method for locating the chat text in memory was flawed. Since the code up to that point was really sloppy and not easily distributable, I decided to rewrite the whole thing from the ground up. That part is mostly done, but unfortunately in the current form, it's only reliable for the first time you log into a character after starting the game. If you log out and go to the main menu and then log in again, the game moves stuff around and I haven't come up with a reliable way of tracking it down just yet, although I do have a couple of things I'd like to try. Since I know people are waiting for this, I'll be releasing it in the current state soon and work on coming up with something more bulletproof afterward. For now, it just means if you want to change characters and use my program, you would have to exit all the way out to the launcher first. It's a big inconvenience for those who have alt characters, so I'll be trying to get that done ASAP. I've never done anything quite like this before, so it's been a learning experience, to be sure. Quote Link to post Share on other sites
Polantaris 2 Posted September 20, 2014 Share Posted September 20, 2014 I apologize for the delay. As I mentioned in the first post, my free time has evaporated, and when I logged in on Thursday, I noticed that my method for locating the chat text in memory was flawed. Since the code up to that point was really sloppy and not easily distributable, I decided to rewrite the whole thing from the ground up. That part is mostly done, but unfortunately in the current form, it's only reliable for the first time you log into a character after starting the game. If you log out and go to the main menu and then log in again, the game moves stuff around and I haven't come up with a reliable way of tracking it down just yet, although I do have a couple of things I'd like to try. Since I know people are waiting for this, I'll be releasing it in the current state soon and work on coming up with something more bulletproof afterward. For now, it just means if you want to change characters and use my program, you would have to exit all the way out to the launcher first. It's a big inconvenience for those who have alt characters, so I'll be trying to get that done ASAP. I've never done anything quite like this before, so it's been a learning experience, to be sure. I've never really worked with memory addresses or anything like that myself, so unfortunately I don't really have any definite ideas to offer. Perhaps there's a memory location prior to where the chat log starts that may be used to determine that it's starting? Like an identification header or something like that. I probably have no idea what I'm talking about. I'm a programmer, but I've never dipped into addresses like this before so I'm pretty clueless on how to determine what you're looking for. Quote Link to post Share on other sites
Aeana 31 Posted September 22, 2014 Author Share Posted September 22, 2014 (edited) Okay, this isn't quite a release because I'm still working on more accurately grabbing the text before I polish everything else up. I got memory dumps from a couple of other players last night and discovered that some stuff that I took for granted is actually different per-player. I've come up with a solution that I think should work for most, but I would like to have people try it and let me know. <link removed> I'd like people to try it in a variety of situations. Try starting it before logging in, try starting it at the main menu before you choose your character, try starting it once you're already logged in. In theory, it should work in all of these situations but I can't say for sure it does for anybody except me right now. Starting it once you're already in-game on your character is probably the most solid case though, I hope. If, once you're logged in and you'e got text showing up in your chat log and it doesn't show up in the program, then that's evidence enough that it isn't working. If you're not comfortable with alpha-level software, then that's okay, I'll have a more polished release out as soon as I can. I'm just hoping to get feedback from at least one or two people. Thanks~ EDIT I found a bug with the first login not attaching on the main menu, so with this version just stick to starting it up once you're in-game on your character and let me know how that goes. Edited September 26, 2014 by Aeana 1 Quote Link to post Share on other sites
Bunk Moreland 7 Posted September 24, 2014 Share Posted September 24, 2014 I tried it yesterday and it works! You can copy chat text for translation and it will auto-scroll. Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.