Jump to content

Ai4rei

Members
  • Posts

    419
  • Joined

  • Last visited

  • Days Won

    36

Posts posted by Ai4rei

  1. Shortcut keys are processed in UIWindowMgr::ProcessPushButton. To locate it, look for a single reference to DefWindowProcA import to find the main window procedure, then follow the call in the WM_KEYUP, WM_KEYDOWN or WM_SYSKEYDOWN handlers.

  2. @hakuren: Since all of these, except the edit control, are bitmap-buttons where the size is taken from the bitmap and the offending code is not inlined, the following patch attempts to move the controls outside the visible area of the window. I cannot test this myself, so you will have to see for yourself what it does. There is no problem with the edit control, as that one can be zero-sized directly.

    F:6A5968B100000068F5000000E8ECDB010068D90A0000E892701C0083C4048BCE50684819AC006A6368B100000068F6000000E8C6DB0100685819AC00686419AC00688400000068BD00000068660100008BCEE8A6DB0100687419AC00688019AC006884000000688D00000068650100008BCEE886DB0100689019AC0068A019AC0068840000006A5D68640100008BCEE869DB010068DA0A0000E80F701C0083C4048BCE5068B419AC0068840000006A2D6863010000E843DB010068DC000000E807EF480083C4048945F0C745FC0000000085C074098BC8E8218EFBFFEB0233C0C745FCFFFFFFFF6A116A638BC8
    R:6A00682C01000068F5000000E8ECDB010068D90A0000E892701C0083C4048BCE50684819AC006A00682C01000068F6000000E8C6DB0100685819AC00686419AC006800000000682C01000068660100008BCEE8A6DB0100687419AC00688019AC006800000000682C01000068650100008BCEE886DB0100689019AC0068A019AC00682C0100006A0068640100008BCEE869DB010068DA0A0000E80F701C0083C4048BCE5068B419AC00682C0100006A006863010000E843DB010068DC000000E807EF480083C4048945F0C745FC0000000085C074098BC8E8218EFBFFEB0233C0C745FCFFFFFFFF6A006A008BC8

     

  3. #include <windows.h>
    #include <tchar.h>
    
    DWORD CALLBACK RunMyApp(LPVOID lpParam)
    {
        STARTUPINFO Si = { sizeof(Si) };
        PROCESS_INFORMATION Pi = { 0 };
    
        if(CreateProcess(_T("myapp.exe"), _T("myapp.exe param1 param2"), NULL, NULL, FALSE, 0, NULL, NULL, &Si, &Pi))
        {
            CloseHandle(Pi.hThread);
            CloseHandle(Pi.hProcess);
        }
      
        return 0;
    }
    
    BOOL CALLBACK DllMain(HINSTANCE hDll, DWORD dwReason, LPVOID lpReserved)
    {
        switch(dwReason)
        {
            case DLL_PROCESS_ATTACH:
            {
                DWORD dwThreadId;
                HANDLE hThread = CreateThread(NULL, 0, &RunMyApp, NULL, 0, &dwThreadId);
              
                if(hThread)
                {
                    CloseHandle(hThread);
                }
              
                break;
            }
        }
      
        return TRUE;
    }

    Here's your sample code. Error handling has been omitted for brevity.

  4. See if this removes the View button for 2015-09-16aRagexe_patched:

    F:C745D40F000000FFB1A0000000C745D000000000FFB19C000000C645C000E8280B0D00
    R:C745D40F000000906800000000C745D000000000906800000000C645C000E8280B0D00
     >              ^^^^^^                    ^^^^^^                        <

    Edit:

    and for 2017-06-14bRagexeRE:

    F:C745D40F000000FFB1B0000000C745D000000000FFB1AC000000C645C000E8B8080F00
    R:C745D40F000000906800000000C745D000000000906800000000C645C000E8B8080F00
     >              ^^^^^^                    ^^^^^^                        <

     

    • Love 1
  5. Since you did not provide a client version, I took a guess and got a 170517RE as match. There is not just one factor involved.

    • Baby novice/super novice(2)/1st class: 75%
    • Baby 2nd/3rd class/mount (any class): 82%
    • Baby summoner: 80%
    • Everything else: 100%

    Either way, at least in HighPriest the scale factor is applied to the whole body layer. The 170517RE has four calls to the scale factor function, so if you provide a client date, you can try you luck changing any of those four (since I cannot run the new clients).

    • Love 1
    • Like 1
  6. F:FF770C8BCFFF7708E843C21500
    R:906A008BCF906A00E843C21500
     >^^^^^^    ^^^^^^          <

    This is instead of the last one. It should remove the selection frames from both humans and doram.

    If that works out, you can just put the select frame on the window background ( 유저인터페이스\make_character\bg_create_character.bmp / À¯ÀúÀÎÅÍÆäÀ̽º\make_character\bg_create_character.bmp ) so that it looks as if there was a selection.

    • Love 1
  7. It's step by step as I cannot run the client myself. That said, can you tell me what happens, when you click on the advertisement on iRO? That might allow me to pin-point the last piece of the patch.

    Edit: Another patch:

    F:FF928C0000008B7DEC8345F00481C79100000043897DEC81FF420100000F8C5BFFFFFF
    R:FF928C0000008B7DEC8345F00481C79100000043897DEC81FF42010000909090909090
     >                                                          ^^^^^^^^^^^^<

     

    • Love 2
  8. data\texture\effect\ring_yellow.tga

    This is what the ground rings are made of.

    data\sprite\이팩트\particle1.act
    data\sprite\이팩트\particle1.spr
    
    이팩트 = ÀÌÆÑÆ® in case your GRF program/Windows cannot display korean.

    These are the dots swirling above the rings.

     

    Depends on whether you mean the NPC (CRagEffect::Warp) or the Skill (CRagEffect::WarpZone, CRagEffect::WarpZone2).

    Either way it is a special-effect hard-coded in the client, so the editing is limited to changing the color/texture (unless you want to rewrite significant portions of the effect code).

    • Upvote 1
  9. F:C78524FFFFFF00000000C78528FFFFFF00000000C7852CFFFFFF000000006A01684C6399006A0C6A006A0068CA0B0000
    R:C78524FFFFFF00000000C78528FFFFFF00000000C7852CFFFFFF00000000E9CB01000090906A0C6A006A0068CA0B0000
     >                                                            ^^^^^^^^^^^^^^                      <
    

    Since you did not specify a client, this patch might not work for yours (this is for 2017-05-17RE). The visuals need editing of bg_create_character.bmp and maybe one or two more patches.

    • Love 2
×
×
  • Create New...