[Help] Skipping login screen?

Results 1 to 9 of 9
  1. #1
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    Support [Help] Skipping login screen?

    Hello,

    does anyone know if or how it's possible to skip the login screen when starting the game (season 6e3 gmo client)? Sending anything as login credentials would be okay, too...
    Easiest for me would be to send some packets to the client as I'm not an expert in binary (exe) editing xD

    Why do I need this? I would like to build something like "MU Offline" but with a very simple setup (no database etc.), based on my OpenMU project
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub


  2. #2
    cMuServices cMu is online now
    True MemberRank
    Jan 2017 Join Date
    296Posts

    re: [Help] Skipping login screen?

    Ultimate Launcher System

    Maybe this can help you mate?

  3. #3
    0x4D696E68 myheart is online now
    True MemberRank
    Jun 2017 Join Date
    270Posts

    re: [Help] Skipping login screen?

    i think you can do that on server side, check something like ServerListSend,... and change it = LoginSuccessSend packet
    Last edited by myheart; 27-03-18 at 05:26 PM.

  4. #4
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    re: [Help] Skipping login screen?

    @cMu: The "Ultimate Launcher" doesn't seem to work with GMO Main.exe. It does start it with parameters "connect User Password", but the Login Dialog still shows up.
    The original gmo client is a bit different I guess... it was started by a Browser Plugin which set the account id and disabled the textbox, BTW ;)
    @myheart: This doesn't work I guess... the packet which shows the login dialog contains the own player id which the client needs.
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub

  5. #5
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    re: [Help] Skipping login screen?

    Any other ideas?
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub

  6. #6
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    re: [Help] Skipping login screen?

    bump :)
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub

  7. #7
    0x4D696E68 myheart is online now
    True MemberRank
    Jun 2017 Join Date
    270Posts

    re: [Help] Skipping login screen?

    the client doesn't required login box,
    like reconnect system.
    i think you can send packet ("login successful" = characters list send) to client .
    and remove username and password recv in server.
    and define one user and pass by default.
    'Love' never die's

  8. #8
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    re: [Help] Skipping login screen?

    well, you can’t compare reconnect system with the normal login screen... Even if you reconnect, the code walked through the login screen before. This sets some stuff (player id, game state) which might be required for the game to work correctly afterwards.

    I watched a short tutorial about ollydbg and x32dbg on youtube and I think it might be possible to skip the screen by modifying the binary code. I already identified some function calls, e.g. sending a login request and the packet handling logic of the first packet which causes the login dialog to appear. I also found the address where the game stores the own player id. I think I could try several things to get it working soon :)
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub

  9. #9
    Developer nevS is online now
    SubscriberRank
    Aug 2005 Join Date
    GermanyLocation
    457Posts

    Re: [Help] Skipping login screen?

    My findings so far (client 1.04d gmo):
    Addresses:
    - Player ID: 0x87935A8
    - Some state which gets set to 2 before log in dialog appears: 0x87935A4
    - calling login function (see 0x0040B916):
    push account name
    push pw
    call 0x009CF3B0

    So I tried to do the following modifications:







    Unfortunately, it didn't work - the login box still appears and no login packet is sent. I probably missed something :-/

    EDIT: I missed that 0x009CF3B0 actually doesn't cause the login packet to be send... it actually happens somewhere in the calling function after 0x0040B916.
    EDIT2: The packet gets constructed at: 0x0040B928 and following
    and sent at: 0x0040BAA2 -> 0x00404D70

    So, basically it should be possible to put a constructed login packet into memory and then to call 0x00404D70 instead of the code in my first picture.
    Last edited by nevS; 1 Week Ago at 08:46 PM.
    Do not follow where the path may lead. Go, instead, where there is no path and leave a trail. ~Ralph Waldo Emerson

    OpenMU Project: Blog - GitHub



Advertisement