GM Client and some other questions.

04/16/2019 20:56 annoyinglyUgly#1
First of all, how exactly does a GM Client look like? How many files does that consist of? At present I've got some DLL files, such as xfcontrol_gm, mcogame (or something) and maybe 1 more; and then there's the executable, might be known as NineDragons_gm dot exe. Starting up the game wasn't easy either - had to modify a bunch of files to succeed. The whole client is KR by default, I used english text but the error messages were still in korean language.

I tried to log in... although it kept telling me I'm not registered or something, while I was trying to log into different accounts with GM characters on them.

Subsequent to the these failed login attempts I ultimately typed "nexon" into account ID field and it triggered a different error message saying "not nexon member", if I remember correctly.

Now...I didn't even have an account called "nexon" in my DB so how the hell does this work? GM accounts were hardcoded into the exe? Or I should create some new DB tables? Can anyone help?

Thanks!
04/16/2019 21:13 bog18dy#2
A gm client just has an extended exe that contains some extra UI for teleport/mob spawning, the data files are the same as for the regular client.

Also, nobody will help you with these specific errors because most likely it would require RE and nobody does that for free.

Also you know that the 2008 files are nexon internal test servers right ? And you try to connect to them with their internal client, right ? No? Ofc not, that's why almost nothing works.
04/16/2019 22:28 annoyinglyUgly#3
Quote:
Originally Posted by bog18dy View Post
A gm client just has an extended exe that contains some extra UI for teleport/mob spawning, the data files are the same as for the regular client.

Also, nobody will help you with this specific errors because most likely it would require RE and nobody does that for free.

Also you know that the 2008 files are nexon internal test servers right ? And you try to connect to them with their internal client, right ? No? Ofc not, that's why almost nothing works.
Maybe I could RE too if I knew the exact cause of this error. I'm not an expert at this but I used OllyDBG in the past.

I've got one more question, though:

These are the files I use:
[Only registered and activated users can see links. Click Here To Register...]

I have the 2008 VN server files and I managed to start it but when I try to join it gets stuck at "connecting to login server".

Here are the things I've tried:

1.| downloaded the client that matches this 2008 server (VN client, update 31)
I set versions correctly everywhere (SQL, patch.psc, etc) - nope, no success

2.| tried lots of different ndlogin executables like: ndlogin_us, ndlogin_vina, ndlogin acclaim, ndlogin_ru, etc, - none of these worked, same error, stuck at login server.

3.| downloaded 2008 SQL and configured the DB with the original 2008 ones that were included in the 2008 srv files - did not work

4.| made absolutely sure the IP addresses, ports and .enc files were correct!

Now, since none of these worked...there's only one thing left that I can think of: authentication.py file. Originally this file called "authentication.py" was made by ZeroBurner (for the 2012 leaked files) and it basically tells the ndlogin executable that the login was successful / failed.

I checked the 'AuthAddr' .ini file and it says "address=http://<my hamachi or external IP here>/cgi-bin/Login.py".

I had already renamed 'authentication.py' to 'login.py' before and interestingly if I modify that file in such a manner as to cause a syntax error, the login server crashes. I'm pretty convinced the login server gets stuck because of the authorization process error. In short, I'd need a 'login.py' that works, a 'login.py' that can tell the 2008 VN NDlogin executable that the login was successful. I'm not a programmer so I have no idea how to get started.

Could you help me with this please? I wasted days and days, you're my last hope, tbh!
04/17/2019 08:49 bog18dy#4
Quote:
Originally Posted by annoyinglyUgly View Post
Maybe I could RE too if I knew the exact cause of this error. I'm not an expert at this but I used OllyDBG in the past.

I've got one more question, though:

These are the files I use:
[Only registered and activated users can see links. Click Here To Register...]

I have the 2008 VN server files and I managed to start it but when I try to join it gets stuck at "connecting to login server".

Also, if you know ollydb it shouldn't be hard for you to bypass any authentication.

I don't have time to work on even older files than 2012 ones, since I'm working on something way bigger with eclipse, sorry man.

Here are the things I've tried:

1.| downloaded the client that matches this 2008 server (VN client, update 31)
I set versions correctly everywhere (SQL, patch.psc, etc) - nope, no success

2.| tried lots of different ndlogin executables like: ndlogin_us, ndlogin_vina, ndlogin acclaim, ndlogin_ru, etc, - none of these worked, same error, stuck at login server.

3.| downloaded 2008 SQL and configured the DB with the original 2008 ones that were included in the 2008 srv files - did not work

4.| made absolutely sure the IP addresses, ports and .enc files were correct!

Now, since none of these worked...there's only one thing left that I can think of: authentication.py file. Originally this file called "authentication.py" was made by ZeroBurner (for the 2012 leaked files) and it basically tells the ndlogin executable that the login was successful / failed.

I checked the 'AuthAddr' .ini file and it says "address=http://<my hamachi or external IP here>/cgi-bin/Login.py".

I had already renamed 'authentication.py' to 'login.py' before and interestingly if I modify that file in such a manner as to cause a syntax error, the login server crashes. I'm pretty convinced the login server gets stuck because of the authorization process error. In short, I'd need a 'login.py' that works, a 'login.py' that can tell the 2008 VN NDlogin executable that the login was successful. I'm not a programmer so I have no idea how to get started.

Could you help me with this please? I wasted days and days, you're my last hope, tbh!
I know, I encoutered the same issue with those files, the thing is, they are not VN 2008 files actually, like I said, also not sure if the DB structure even matches what the LS expects.
04/17/2019 10:27 annoyinglyUgly#5
Quote:
Originally Posted by bog18dy View Post
I know, I encoutered the same issue with those files, the thing is, they are not VN 2008 files actually, like I said, also not sure if the DB structure even matches what the LS expects.
Well, it looks VN to me, there's a VNShutdown.ini file and vietnamese license files.
I did a "testlogin" inside the NDLogin console and for some reason it recognizes the account and says login successful.

[Only registered and activated users can see links. Click Here To Register...]
04/17/2019 10:43 bog18dy#6
Quote:
Originally Posted by annoyinglyUgly View Post
Well, it looks VN to me, there's a VNShutdown.ini file and vietnamese license files.
I did a "testlogin" inside the NDLogin console and for some reason it recognizes the account and says login successful.

[Only registered and activated users can see links. Click Here To Register...]
If you know RE, why not just make the login function always return true ?
04/17/2019 11:40 annoyinglyUgly#7
Quote:
Originally Posted by bog18dy View Post
If you know RE, why not just make the login function always return true ?
I don't know RE, I can just open Olly and "jump" some lines (lol). I still think it's that .py file...I opened the 2012 ndlogin_us in olly and checked string references and found "<result>" and "resultcode" which is exactly what ZeroBurner's authentication.py file uses. But I opened the 2008 one as well and found nothing...so that's why I don't know how to code this .py file.
04/17/2019 11:49 bog18dy#8
Quote:
Originally Posted by annoyinglyUgly View Post
I don't know RE, I can just open Olly and "jump" some lines (lol). I still think it's that .py file...I opened the 2012 ndlogin_us in olly and checked string references and found "<result>" and "resultcode" which is exactly what ZeroBurner's authentication.py file uses. But I opened the 2008 one as well and found nothing...so that's why I don't know how to code this .py file.
I don't remember exactly, but where I left with 2008 files was after I managed to pass LS and the DS would instantly disconnect me at char screen with some mismatch error.
04/17/2019 12:02 annoyinglyUgly#9
Quote:
Originally Posted by bog18dy View Post
I don't remember exactly, but where I left with 2008 files was after I managed to pass LS and the DS would instantly disconnect me at char screen with some mismatch error.
Lol how did you pass login? :wat:
04/17/2019 12:08 ethbtc#10
Hook ND_Login and redirect Login Message to new custiom function
04/17/2019 12:22 annoyinglyUgly#11
Quote:
Originally Posted by ethbtc View Post
Hook ND_Login and redirect Login Message to new custiom function
In more details, pls? :(
04/17/2019 12:34 ethbtc#12
Quote:
Originally Posted by annoyinglyUgly View Post
In more details, pls? :(
It's my idea