Announcement

Collapse

Please use the Hentai ID thread for all hentai ID requests. Click me for link!

The Identification Thread is Here:

http://www.hongfire.com/forum/showthread.php/447081
See more
See less

Interactive Text Hooker - new text extraction tool

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Interactive Text Hooker - new text extraction tool

    Interactive Text Hooker (ITH) is a tool to help you extract text from Japanese games.
    It works very like AGTH. if you are familiar with AGTH you will find it easy to work with ITH.
    Right now ITH is not quite stable and under developing. Please help me test it and report any bugs you find.
    Also any suggestion about new features or improvement is welcome.
    Latest ITH 2.3 (2011.7.9). ITH64 1.0 (2011.5.15). 3.0 test.
    Latest engine support module(10.15).


    Manual & Tutorials
    User manual: http://code.google.com/p/interactive...iki/UserManual
    English: http://craneanime.blogspot.com/2011/01/tutorial-ith-interactive-text-hooker.html
    Korean: http://blog.naver.com/foolmaker/30098345502
    Vietnamese: http://vnsharing.net/forum/showthread.php?t=235841
    Just googled these tutorials out. Thanks to the authors of these tutorials. I'm just too lazy to write one.
    If you also write tutorial please send me the link and I will add it here.
    Chinese(need register): http://bbs.sumisora.org/read.php?tid=10997379
    Written by me. Also ITH Chinese version can be found here.

    Links:
    ITH at Google code: http://code.google.com/p/interactive-text-hooker/
    ITH at Google group: http://groups.google.com/group/interactive-text-hooker
    AGTH main thread by Setx: http://www.hongfire.com/forum/showthread.php?t=36807
    AGTH tutorial by fhc: http://www.hongfire.com/forum/showthread.php?t=59189
    Advanced AGTH Video Tutorials by Freaka: http://www.hongfire.com/forum/showthread.php?t=80401
    Translation Aggregator by ScumSuckingPig: http://www.hongfire.com/forum/showthread.php?t=94395
    VirusTotal: http://www.virustotal.com/

    System requirement:
    Intel Pentium4 or later processor. Recommend OS is Windows XP or later.
    Technically your processor must support SSE2 and OS support common control library 6.
    ITH is also assumed to work in 64-bit Windows.

    Basic usage:
    Spoiler

    Please put ITH.exe, ITH.dll and ITH_engine.dll in the same folder.
    To let ITH extract text from a game, click on the process button,
    it will open a dialog with a process list. Find your target and click attach then.
    When you don't want to extract more text from that game, click detach to tell ITH stop extracting.
    After attached, the shorter drop-down list will contain the pid and name of the game you select.
    If ITH could extract some text, the longer drop down list in the main window will have more than one item.
    When you select one text will appeared in the big square.
    Every item is called a thread. Try to go through every item and find if the text is the same
    to the text in the game.

    User-defined hooks:
    Spoiler

    Also UserHook. AGTH uses this term in its thread.
    When the default hooks doesn't give you right text you want, you will need to install a user-defined hook.
    A special string is needed to inform ITH about the hook you want to install.
    This string is called H-code in AGTH terms. Usually it's game and version dependent.
    Refer to AGTH help and Freaka's video tutorial for further information.
    ITH can handle AGTH H-code, so if you have an AGTH H-code for a game, ITH will also work well for that one.
    Input this string right to the process list(the shorter drop down list) and press enter, a new hook will be installed.

    Thread window:
    Spoiler

    You can manage thread linking information and comment here. Thread linking is a mechanism to merge thread.
    Select the sender thread at the top, then select a thread in link to list.
    Click set, a link will be created to that. Notice that no cyclic link is permitted. Like 1>2>3>1.
    Link list will list all thread on this chain one by one.
    Last sentence contains the last sentence from one thread.
    Comment is some text to describe the thread.
    After you have commented some thread, its name will change in the main window.


    Hook window:
    Spoiler

    Click hook in the main window will open a dialog to help you manage hooks.
    But it is for advanced users who are familiar with H-code internal.

    H-code defined by Setx: /H[X]{A|B|W|S|Q|H}[N][data_offset[*drdo]][:sub_offset[*drdo]]@addr[:module[:{name|#ordinal}]]
    addr->Hook Address, data_offset->Data Offset (when data_offset is negative value, sub more 4 from that, e.g. -8 for EAX, but still -4 for EAX in H-code)
    *drdo->Data Indirection when after data_offset, Split Indirection when after sub_offset
    sub_offset->Split Parameter, also sub 4 when negative.
    Module/Function Base(ITH original): Here fill hash values of module and name. You enter a string in the right blank,
    click hash module/function, then hash values is calculated and filled into this 2 blanks.
    CheckBoxes on the left enable correspond function.
    CheckBoxes On the right correspond to charset option.
    A->Big Endian (ITH different from AGTH defination), B->None, W->Unicode
    S->String, Q->String&Unicode, H->Hex value, N->No context.
    Last Char(ITH original), give in string pointer and extract last char of that string.
    Click generate code you will see h-code of this hook in the bottom.
    Notice that module and name is string in AGTH h-code, but ITH can't get string back from hash.
    Click Remove Hook to remove current selected hook from target process and clear all threads from that hook.
    Click Modify Hook to modify current selected hook. In fact original hook is removed and ITH insert new hook base on parameters in hook window.


    Profile:
    Spoiler

    After attached to some process, you can add that to profile. ITH will record its path.
    If you enable auto inject in option window, ITH will monitor process and attach to that whose path has been record.
    You can also assign up to 4 user-define hook codes(h-code) to a record.
    If you enable auto insert in option window, ITH will insert these hooks after attached.
    Hook code contains module/function name will be transform into hash value.
    They represent equivalent hook. Module name is case insensitive while function name is case sensitive.
    Original : change to ! to indicate that's hash value.
    e.g. /HA4@123:foo.bar:abc -> /HA4@123!BD097770!C5840063

    On the left is a list of all games you have attached and added to profile.
    They other three boxes stores information about remote downloaded profiles.
    Click Refresh to list all profiles stored locally. You can update this list with the updater.
    Click a game on the left and click Find, ITH will find a correspond profile according to executable hash value.
    The click import to copy all information and insert hooks.
    .


    Option:
    Spoiler

    Split time: Time interval to insert line break. At least 100.
    Process delay: ITH will check one process if it's in profile. At least 50.
    If there are N processes running on your system, it takes N*PD for one round.
    This is the longest time ITH waits to attach after a process in profile launched.
    Inject delay: ITH delay attach after process in profile found. At least 1000.
    Insert delay: ITH delay insert hooks after attached. At least 200.
    Auto attach: ITH will attach to processes in profile automatically.
    Auto insert: ITH will insert hooks after attached automatically. Notice that auto insert will not work if auto attach is not enabled.
    Time unit is millisecond.
    Suppress: Enable suppress repetition function. This is the case ABCABCABC.
    Clipboard: ITH will copy the last sentence to the clipboard. Other tools which monitors clipboard will make use of it.
    Here "last sentence" means characters from right after the last line break to the current character

    Global filter: Global filter is a customizable filter that will apply to all threads.
    Currently only single character policy is implemented.
    Maybe in the future I will introduce more complex rules into ITH.
    All characters in the filter list will be filterd out before dispatch to correspond thread.
    Therefore those characters will not appear in final output.

    Full space at the beginning is by default filtered. If it's in the middle of a sentence,
    explicitly add it to global filter list.



    Miscellaneous:
    Spoiler

    Top: ITH will stay on top when pushed.
    Clear: Wiped out the text in the current thread.
    Save: Save profile for current game.
    This includes UserHooks, thread links, thread comment, and current select thread.

    Suspend/Terminate thread: You can suspend terminate some thread of some process.
    Select one thread and operation type, then click Execute.
    There's an box in the right upper corner of the process dialog.
    If you enter an function address here then operation will be proceed on all threads with the same start address.

    ITH is able to attach to multiple processes at same time, although it seems useless now.
    When you close ITH while a program, which is already attached by ITH, is still running,
    open ITH once more then ITH will automatically attached to that program.

    Link: You can type L[num1]-[num2] in the command line (without brackets, only number).
    ITH will make a link from thread num1 to thread num2.
    All text thread num1 receives will also be sent to thread num2.

    ITH will remove single character repetition, that is the case AAABBBCCC....


    ITH64:
    Spoiler

    Based on worldwide data taken during June 2010 from Windows Update 46% of Windows 7 PCs run the 64-bit edition of Windows 7.
    It's likely that more and more game engine will have a 64 bit version. Currently already one exist(CMVS64).
    Neither current ITH nor AGTH can hook 64 bit process, since they're all 32 bit program.
    ITH64 is designed to address this problem. It's native 64 bit program. Its internal architecture is reformed to fit the 64 bit environment.
    Although it's possible for ITH64 to hook 32 bit process, I want to leave that task to original ITH currently.
    In other word, ITH64 will NOT hook ANY 32 bit process. Please use original ITH instead.
    Maybe at some future point I will write a compatible layer. Then you need only ITH64 to do all your hook task.

    Usage of ITH64 is almost the same to original ITH. Only difference is about register representation in h-code.
    Original h-code has the following register map:
    EAX -> -4, ECX -> -8 ... EDI -> -20
    New 64 bit version is as this:
    RAX -> 0, RCX -> -8 ... RDI -> -38, R8-> -40 ... R15 -> -78
    It becomes zero-based and the increment is changed from 4 to 8.

    Example code for current CMVS64 engine.
    /HA-40:-48@4E050:cmvs64.exe
    This means that at 4E050 in module cmvs64, r8 contains data and r9 stores split parameter.
    Be aware of architecture difference when writing h-code for ITH64.
    I strongly recommend that new code use a base-offset style to indicate the real address.
    Not only because the address has become longer, but also to avoid problems when the target module is map into random address.


    Why ITH:
    Spoiler

    AGTH is a big success in text extraction.
    With UserHook function it can solve more than 95% current text extract issues.
    But new games usually need H-code to help AGTH working, and common users have no way to write one.
    ITH is designed to recognize much more game engines than AGTH and insert proper hooks automatically.

    1)ITH now can detect many popular game engines.
    Currently KiriKiri, BGI, RealLive, ShinaRio, CMVS, MAJIRO, rUGP, Malie, NitroPlus, Lune, QLIE,
    Apricot, CandySoft, AB2Try, Debonosu, System40, CIRCUS, AtelierKaguya, Waffle, YU-RIS,
    TinkerBell, AbelSoftware, SofthouseChara, LiveMaker, Bruns, CaramelBox, Pensil.
    More will be added later. If you find some engine ITH currently can't detect, feel free to request it here.
    I will then study that engine and try to find a way to detect it.
    General speaking ITH works well without special codes for more than 70% new released games.

    2)ITH has a graphic attach/hook insert interface. You don't need to pass parameters to ITH via cmd or link target line.

    3)ITH is able to insert multiple UserHooks into target process, while AGTH only one.

    4)ITH can join threads together as your wish(Link function), while AGTH will join many together, sometimes with useless threads.
    Since ITH is able to insert multiple UserHooks, this also means you can join text from different hooks together.
    This is useful when the text process function appears at different place.

    5)ITH can detach from process, remove/modify UserHook while the process is running.
    You don't need to restart the process when you find you have inserted wrong hooks.
    Bad hooks won't crash the process, just yield error message.
    This means you can use try-error method to guess hook code more efficiently.

    6)ITH is open source and is under developing. More features will be added to ITH in future versions.

    a) AGTH has option to hook common system routine(/X?), ITH currently only hook APIs in GDI32.dll


    IMPORTANT note:
    I have submit this program to VirusTotal, some anti-virus software report ITH as malware.
    I use NOD32 and it report nothing here. There is some aggressive technique that may be used in virus.
    ITH requires administrative privilege to function properly, means it has potential to damage your computer.
    I promise that original ITH will not
    1)spy programs other than you tell it to attach,
    2)create/modify/move/delete any files without explicit prompt, other than "ITH.pro" and "ITH.ini" resides in its folder,
    In the case of ITH64, it will create "ITH64.pro" and "ITH64.ini" respectively.
    3)create/write/delete any system registry keys,
    4)send/receive any information through network.
    Make sure you have checked hash values to ensure it is original version.

    Hash value of ITH
    Spoiler

    Hash values for current ITH.exe
    MD5 : 339360e57c9940ab33631071947a8e42
    SHA1 : f8a1b98c7b77b0b1fa45a1998bb80c0a6f34aad2
    SHA256: 540a5ec6f6d5092b1d76f96427d8cd344103b256e4526ad460 2b1a25ef1c882e

    Hash values for current ITH.dll
    MD5 : 2685073a5825725d09bb6671f99ac151
    SHA1 : 6e5cffd1886d7d131c91a6afe20244b79f3d89ac
    SHA256: 34548ec22b4e22774255b13c0ac799d13a535c03bcb84a0e4a ad3a06d454ad6e

    Hash values for ITH_engine.dll (2011.7.9)
    MD5 : 6d9cd2bf506aede1bcc40b1db8b116e0
    SHA1 : f066d124ee91de2da0dc89c864390969602aff3b
    SHA256: c61e1fe060d5bf6e69c1b70a122f51e406714e7821ea43761e 0046ad6dc505ce

    Hash values for current ITH_engine.dll (2011.10.15)
    MD5 : c027319d9f652747c2beb9be2cc0a6e7
    SHA1 : cdb6b380e859cf45c6747ac5880d2ac4896c251d
    SHA256: faca50c43ab62b2366d4b927d234dcf4522e01e369c415a9ac 9b1d27dd632d90


    Hash value of ITH64
    Spoiler

    Hash values for current ITH64.exe
    MD5 : 394b168b58e2f8da89fa73c507ea1136
    SHA1 : 412a3fdac7b9ec42bafd30f2fc2f821c25c2513d
    SHA256: 180dea1d34c23260bfbef0d529ecfdea437395d86ca8f44ac6 a1730c44a51b0d

    Hash values for current ITH64.dll
    MD5 : 523089418cc41e410f1c58f71e277b2b
    SHA1 : 251eb10d20d1083e99d2697db30d987c561bd970
    SHA256: 12073ed66c13967818b7778ce3e5ac37f0edd87f4e8adf9b6c 4c02a4849b0511

    Hash values for current ITH64_engine.dll
    MD5 : 2657858b2beb04dc104adcccbb343691
    SHA1 : 6bb730cbfc7715d5b8c5f56c008923d6d25a5ebf
    SHA256: 78b4ae62b19e04bce75ba2bdd5bf7ca3c1d5db3e95df53db9e 8c2117329e6a35


    About the source:
    Spoiler

    From 2.2 source code of ITH is under GPLv3. Older source is no longer available.
    ITH is written in C++ and inline assembly, compiled by VC10.0.
    A ready-for-compile project pack is also uploaded. Please get ntdll.lib and msvcrt.lib from latest WDK.
    Since I begin develop ITH with VS10.0 so maybe it's inconvenient for those under 10.0.
    I develop this program in WIN7 64 so it's assumed to work well under both 32 and 64bit OS.
    Attached Files
    Last edited by kaosu; 03-02-2012, 09:27 PM.
    sigpic
    Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
    http://www.hongfire.com/forum/showthread.php?t=208860

  • #16
    ITH now can suppress repetition like AGTH with /KF option on now, but it uses different heuristic to approach the goal.
    Currently I can't come out with a perfect method that can detect repetition precisely,
    so maybe sometimes ITH can't give ideal clean output.
    If you encounter such situation, please help me record that.
    If I am able to reproduce the situation then an improved heuristic will overcome that.
    Last edited by kaosu; 10-03-2010, 05:35 AM.
    sigpic
    Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
    http://www.hongfire.com/forum/showthread.php?t=208860

    Comment


    • #17
      First release version of ITH is out. Currently ITH support 11 types of popular game engines.
      More engines will be added later to increase the detect rate.
      sigpic
      Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
      http://www.hongfire.com/forum/showthread.php?t=208860

      Comment


      • #18
        Is ITH capable of ignoring the first line on outputted text? I could never get AGTH to do that. I'm referring to games that treat the name in the upper left as part of the text window, such as "Escalation Hardcore" (see image). Text Hookers seem to have issues ignoring dialog with names displayed, like this:

        Click image for larger version

Name:	escalationTextEx.jpg
Views:	1
Size:	73.3 KB
ID:	4837208

        Comment


        • #19
          @ReMeDy: If ITH can't split names into different threads by default,
          you will have to find out a special option(h-code) to help ITH identify names from text.

          I have ITH tested on 25 major games released during July.
          ITH works well with 22 of them, achieves a detect rate of 88%.
          Generally it's assumed to be over 70% right now.
          Here's a test list:
          O means ITH can extract text from game without special codes.
          X means can't work by default. Need a h-code to insert userhook.
          Spoiler

          O[100723][raiLsoft]信天翁航海録 ---Default
          O[100722][あっぷりけ]黄昏のシンセミア ---KiriKiri
          O[100723][ROOT]PARA-SOL ---Default
          O[100723][Tinker Bell]サマヨイ淫夢校舎 ~こんな授業ありえないっ!~ ---TinkerBell
          O[100723][アトリエかぐや P-ch]クラ☆クラ ~CLASSY☆CRANBERRY’S~ ---Default
          O[100723][Cassiopeia]げきたま! ~青陵学園演劇部~ 初回限定版 ---Default
          O[100723][Lose]ゴスデリ -GOTHIC DELUSION- ---KiriKiri
          O[100723][MAIKA]秘書 沙織 ---KiriKiri
          O[100723][裸足少女]女医さんのお言いつけっ!!~エッチな診察してあげる♪~ ---RealLive
          O[100730][age]マブラヴ オルタネイティヴ クロニクルズ01 ---rUGP
          O[100730][ALcotハニカム]VESTIGE -刃に残るは君の面影- ---ShinaRio
          X[100730][CandySoft]もっと 姉、ちゃんとしようよっ! ---X
          O[100730][chuablesoft]Sugar+Spice2 ---KiriKiri
          O[100730][Escu:de]乙女恋心プリスターFANDISC ~もっとHに恋せよ乙女!~ ---Default
          X[100730][Love Juice]オレの姉ちゃん。~オレは姉ちゃんのオモチャじゃないっ!~ ---X
          O[100730][Navel]俺たちに翼はない AfterStory - Limited Edition - ---Lucifen
          O[100730][ninetail]遠望のフェルシス Horizon of the earth and sky ---KiriKiri
          O[100730][Potage(ポタージュ)]籠の中の彼女~カ・ゴ・カ・ノ~ ---KiriKiri
          O[100730][TOPCAT]ななプリ。 ---Default
          O[100730][Whirlpool]MagusTale W-Pack ---Default
          O[100730][アトリエかぐや]すぷらっしゅ! ---Default
          X[100730][でぼの巣製作所]空を仰ぎて雲たかく ---X
          O[100730][ぱれっと]すてぃ~るMyはぁと~Rhapsody of moonlight~ ---Default
          O[100730][ソフトハウスキャラ]BUNNYBLACK ---SofthouseChara
          O[100730][ローズクラウン]娼母清華 ~背徳の交わり~ ---KiriKiri
          Last edited by kaosu; 11-04-2010, 09:43 PM.
          sigpic
          Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
          http://www.hongfire.com/forum/showthread.php?t=208860

          Comment


          • #20
            I tested some games, OS: Windows 7
            [100618][OVERDRIVE] DEARDROPS -- working (BGI)

            Norn games, I think have same problem :
            [100326] [Norn Soft] 完璧お姉さま御子神沙耶の無人島孕ませ修行~ふふ、元気のいい精子だ…早く私に妻の証を宿してくれ~\
            [100625] [Norn Soft] 魔界プリンセスフィリーネの優雅な搾精ライフ ~打ち止めなんて許さないわよ~\
            [100716] [Norn Soft] ツンデレ妹は孕ませ希望の発情期!~責任とって中に出してよね!変態おにぃ!~\
            [100716] [Norn Soft] 大天使ミカエラ様の孕ませ審判~いいでしょう、好きなだけ出しなさい。私は快楽などに負けません!~\
            [100910] [Norn Soft] 聖乳の巫女お姉ちゃん瑠璃~癒しの母乳で中出し生活~\
            [101008] [Norn Soft] 軍人少女の子作り任務~ハレンチな!…う、上官命令なら…貴方の精子で子宮を撃ち抜いてください!~\

            After processing some text this message appear, see attachment :
            The error occurred.
            File: Scenario.ks Line: XX
            Tag: Ch(<-Tag before and after the error's occurring might be shown)
            EAccessViolation

            Spoiler

            Inject process 3512. Module base 10000000

            3512: tunhin.exe
            3512: Pipe connected.
            3512: 00400000:007f7000
            3512: 3798F351347E71964A8CB8577A5E4D5E
            3512: CALL addr:0x0054170C
            3512: Hook addr: 0x00541254
            3512: KiriKiri2
            3512: Additional hook inserted.
            3512: Insert address 0x00541254.
            3512: CALL addr:0x00542318
            3512: Hook addr: 0x00549467
            3512: KiriKiri1
            3512: Additional hook inserted.
            3512: Insert address 0x00549467.
            3512: Initialized successfully

            0001:3512:0x7795B535:0x0054231E:0x00000000:GetText ExtentPoint32W
            0002:3512:0x00549467:0x00000000:0x00000014:KiriKir i1
            0003:3512:0x00541254:0x00547A1A:0x00000011:KiriKir i2
            0004:3512:0x7797C292:0x00541712:0x00000000:GetGlyp hOutlineW
            0005:3512:0x7795B535:0x00541796:0x00000000:GetText ExtentPoint32W
            0006:3512:0x7797C292:0x00541A3C:0x00000000:GetGlyp hOutlineW
            0007:3512:0x00549467:0x00000000:0x00000012:KiriKir i1

            0008:3512:0x76CC7BDD:0x0FFF40B4:0x00000000rawTextExW
            0009:3512:0x77958053:0x0FFF3EEC:0x00000000:ExtText OutW

            000A:3512:0x7795B535:0x0FFF3C57:0x00000000:GetText ExtentPoint32W

            000B:3512:0x00549467:0x00000000:0x0000000C:KiriKir i1
            000C:3512:0x00541254:0x00547F9E:0x0000000A:KiriKir i2
            000D:3512:0x7797C292:0x0FFF3A94:0x00000000:GetGlyp hOutlineW

            Process 3512 detached.


            [090918][ALICESOFT]ももいろガーディアン (Momoiro Guardian)
            Looks need h-code, but I don't know if I'm doing right or not...
            Using h-code /HB38@623F0:StoatSpriteEngine.dll
            Spoiler

            Process 1984 detached.

            Try to insert additional hook.

            Inject process 1984. Module base 01C50000
            1984: momonga.exe
            1984: Pipe connected.
            1984: 00400000:0044b000
            1984: 9FFE577625AF8BB67517624AC4DE523B
            1984: Unknown engine.
            1984: Initialized successfully

            Try to insert additional hook.
            1984: Module not present.
            1984: Unable to insert hook.



            Also, how to use Hook Editor? @_@
            Attached Files

            Comment


            • #21
              @errzotl80: Error is fixed. ITH didn't handle some system call very well. Information about hook window is added.
              You need to know what every part of a h-code string means to utilize hook manager.

              ITH v1.2 is out.
              New engine support: TinkerBell, Lune, SofthouseChara
              Old engine detect heuristics refined: CMVS, System40, ShinaRio
              Last edited by kaosu; 10-17-2010, 08:00 AM.
              sigpic
              Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
              http://www.hongfire.com/forum/showthread.php?t=208860

              Comment


              • #22
                Nice, I'll try it later

                *Edit:
                I tried new version, yes, now Momonga Guardian working fine.

                Another problem, it seems if we don't detach manually, the game will not closed properly. If you check it on task manager, it still running.
                Here's the chronology :
                1. Run ITH
                2. Run game
                3. Attach the game
                4. Close the game
                5. Close ITH

                *Edit2:
                About clipboard function :
                When enabled, then we switched to another thread, the copy function not working.
                Even when you switched back to original thread, it's still not working.
                Another trigger is when there are a sudden text flooding (i.e on Kirikiri), though this sudden text flooding is very rare case, but you might want to note it. (Here, I didn't use supress repetition option, because once before I had ITH crashes when enabling it. I'll test this matter later).
                The copy function will working again after enabling/disabling supress button + process some text.

                About Kirikiri engine hooking detection :
                So I was tried to compare text captured by AGTH and ITH. I tried with the same game.

                First is WLO - World Love Organization.
                As you can see at the picture, it has the same address (0x00547A1A), but different subcontext. AGTH = 18, while ITH = 15.
                Subcontext 18 don't have sudden text flooding, while subcontext 15
                had it.

                Another test is with Norn games.
                Same address (0x00547A1A), but different subcontext (AGTH = 14, ITH = 11).
                Result are the same, sudden text flooding, plus line break too.

                ITH is not showing thread that AGTH showed.(subcontext 18 & 14)
                You might want to change the hooking detection so it also showing the same subcontext as AGTH does.
                If you ask me why it is needed, just see at the picture.
                Of course, I already turned off the supress repetition option in both AGTH and ITH, to make sure that the text captured
                is still intact.
                I just want to pointing out that AGTH might have better subcontext selection, which should be implemented into your ITH too.
                Well, people maybe didn't bothered with this case, just choose another thread, it doesn't matter.

                Btw please be mind this comparison method might be not accurate...
                Attached Files
                Last edited by errzotl80; 10-25-2010, 04:00 AM.

                Comment


                • #23
                  @errzotl80: Thank you for your work on testing this program.
                  Those irregular cases is very important for me to improve ITH.

                  I've also randomly seen game doesn't exit after attached before.
                  Seems the problem is synchronization scheme of ITH.
                  I have modified it a lot but this case may still occur in the future.

                  Hook of Kirikiri engine is also under refining, I'm studying the case of WLO.
                  I noticed that process name is not displayed normally in the second and third picture.
                  Seems it's bugs in my code. If you can reproduce that situation it will be a lot of help.
                  Text flood issue should be fixed.

                  I think issue of line break is due to split time. Currently I set it to 200ms,
                  means if after 200ms ITH receive nothing then a line break inserted.
                  I choose this value just because it's my preference.
                  You will be able to modify this value in the next version.
                  Current solution is set text display speed to a relative fast level.

                  New version 1.4 will release in this week, also with new feature of profile.
                  ITH will monitor process on the system and attach to some automatically.

                  Here's a test version. New features not working now.
                  But it has some bug fixed. Please have a try and see if dead process issue still occurs usually.
                  Last edited by kaosu; 10-30-2010, 08:00 PM.
                  sigpic
                  Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
                  http://www.hongfire.com/forum/showthread.php?t=208860

                  Comment


                  • #24
                    Uhh... picture 2 & 3 are from a Norn Game, not WLO ^^;;;
                    The title is [100326] [Norn Soft] 完璧お姉さま御子神沙耶の無人島孕ませ修行~ふふ、元気のいい精子だ…早く私に妻の証を宿してくれ~
                    Maybe another Norn Games have the same "process name" problem too. I'll try it later.

                    Also about line break on Kirikiri engine, I can't conclude wether it's because split time or not,
                    because as you can see, the subcontext address is different.
                    In WLO :
                    AGTH = 0x00547A1A:00000018
                    ITH = 0x00547A1A:00000015

                    In [100326] [Norn Soft] 完璧お姉さま御子神沙耶の無人島孕ませ修行~ふふ、元気のいい精子だ…早く私に妻の証を宿してくれ~ :
                    AGTH = 0x00547A1A:00000014
                    ITH = 0x00547A1A:00000011

                    Comment


                    • #25
                      Ah..Subcontext value just have little influence on text stream I think.
                      Anyway, ITH now use same subcontext for KiriKiri as AGTH.

                      ITH 1.4 is out. New feature of profile is ready.
                      sigpic
                      Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
                      http://www.hongfire.com/forum/showthread.php?t=208860

                      Comment


                      • #26
                        I tried ITH 1.4 with these Kirikiri based games :
                        Spoiler

                        [100326] [Norn Soft] 完璧お姉さま御子神沙耶の無人島孕ませ修行~ふふ、元気のいい精子だ…早く私に妻の証を宿してくれ~
                        [100625] [Norn Soft] 魔界プリンセスフィリーネの優雅な搾精ライフ ~打ち止めなんて許さないわよ~
                        [100716] [Norn Soft] ツンデレ妹は孕ませ希望の発情期!~責任とって中に出してよね!変態おにぃ!~
                        [100716] [Norn Soft] 大天使ミカエラ様の孕ませ審判~いいでしょう、好きなだけ出しなさい。私は快楽などに負けません!~
                        [100910] [Norn Soft] 聖乳の巫女お姉ちゃん瑠璃~癒しの母乳で中出し生活~
                        [101008] [Norn Soft] 軍人少女の子作り任務~ハレンチな!…う、上官命令なら…貴方の精子で子宮を撃ち抜いてください!~
                        [090326][あかべぇそふとつぅ]W.L.O.世界恋愛機構

                        It seems proccess title is working fine now.
                        Also the text captured properly, good job Kaosu

                        Comment


                        • #27
                          ITH 1.5 is out. From now on, engine detect function become a independent module.
                          I will continuously update this module with new game engine, while the main ITH doesn't have to change.
                          sigpic
                          Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
                          http://www.hongfire.com/forum/showthread.php?t=208860

                          Comment


                          • #28
                            Thanks for this great app. Setx stopped developing AGTH and it's not open source. It's good to have an open source application, that is actively developed.

                            What do you think about adding support for getting the H-Code for a game from an online database? Or maybe ITH could get the whole database from the internet. The database would contain a hash for the executable file and the H-Code. I think this would be a "killer" feature that would make everybody switch from AGTH.
                            AGTH wiki

                            Comment


                            • #29
                              @Stomp: Great idea! Get hook codes online then will free people from searching codes,
                              also function properly while user has no knowledge about UserHooks.
                              Something make me haven't implement it is that I need to be very careful with any data from the internet.
                              Ensure that ITH won't become a security vulnerability either do any damage to user's computer.
                              Another issue is that I don't have a server online. I see some awesome people maintaining database.
                              I will want to contact them and discuss a interface then.
                              I've considered about designing a mechanism like DHT used in p2p software to achieve this goal.
                              Also called DHT, but this time it becomes Distributed H-codes Table
                              This is only possible when there is quite a large group of users. I don't know how many people is like to use this.
                              Anyway, I will take this idea into plan then.
                              sigpic
                              Got stuck at AGTH H-codes? Have a try of ITH, supports more game engine.
                              http://www.hongfire.com/forum/showthread.php?t=208860

                              Comment


                              • #30
                                Here is some ideas (Not sure workable or not)


                                How about making a webpage that allows ppls to input the
                                H-codes + Name of game + version of game + Comapany name, and maybe a pic/cover image of the game,
                                and maybe some other info like Does it need to mount Image to play and NoDVD Patch avaliable [Extra optional]

                                Then store the important info like H-codes + Name of game + version of game + Comapany name
                                into a DB or txt file [Encryption up to you]
                                Then make a duplicated copy and place it on another folder [For backup] (Automatic / Manual depends on you)

                                Then the DB or txt file can then be make avaliable using a link that can be downloaded from the website and/or
                                pull from the program using that link and save it on the HDD in the ITH folder maybe in the folder named "Database"

                                thats what i can think of keke
                                just need a free web host maybe with PHP / MySQL (for Database route)
                                or HTML/PHP + normal Text file (for Txt route)

                                Problem is how to append to file instead of overwriting it...
                                Things To be uploaded Next: Will upload If possible...
                                Quote: Anything that can be downloaded will be downloaded regardless the content
                                All My Latest Stuffs, please [Visit Here] Most Updated!!!
                                Featured Game DDL:[KISS] カスタムメイド3D [Custom Maid 3D] ,please [Visit Here]
                                For my H-Movie/Animes DDL links, please [Visit Here]

                                Comment

                                Working...
                                X