Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

Creating a new Client for our Serverfiles

Status
Not open for further replies.
Robb
Loyal Member
Joined
Jan 22, 2009
Messages
1,224
Reaction score
466
eistiger is having some bad times IRL. I'm still working on the client however and i hope he will join me later.

coding for pwproxy is beyond me unfortunatly, but its the perfect peice of the puzzle for us to fix the different protocols for us.
 
Last edited:
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
hi,


got my authd now working, it was the java version which caused the problem.

Eistiger why not work together with ronny to make the client work ? im sure he will share how he got it running with you.


My server is sending the correct remaining play time now to client but i still cant login...getting a Link error with some chinese words popup after login... any suggestions ?

Use fixed_msg, server_error and task_err from configs.pck from your 1.3.6 client (in english I guess) and you will know what those chinese errors mean.
 
Joined
Jan 6, 2010
Messages
744
Reaction score
1,051
i just chnaged the server configuration in world2 v530 client to connect to my local server.

My server glinkd was changed to 10207.

Thats all... i'll take a look in my serverfiles later, no idea why this is luckily working...


Update:
"elementclient.exe game:pw" not game:cpw
 
Last edited:
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
i just chnaged the server configuration in world2 v530 client to connect to my local server.

My server glinkd was changed to 10207.

Thats all... i'll take a look in my serverfiles later, no idea why this is luckily working...


Update:
"elementclient.exe game:pw" not game:cpw

Please upload your client :eek:tt1:
 
Robb
Loyal Member
Joined
Jan 22, 2009
Messages
1,224
Reaction score
466
He has, and i have got to login screen but cannot be any further due to a difference in client-server protocols with char data.

We need to go back more client versions basicaly. We could also fix the protocols slowly 1 by 1 using pwproxy, unlocking higher and higher gfx/ecm on the way.
 
Black Magic Development
Loyal Member
Joined
Apr 29, 2010
Messages
2,170
Reaction score
600
Ok, first I'm quite new in the community, but I tried since some time to Work on Encryption part. I used this post to create a simple tool to decrypt packet exchange between client and server.
Hope it'll help you to work on protocols between those clients.

(The project is made in csharp, I only post source code for obvious reason, you'll need Visual Studio to compile the project)

How to use :
- When you will first launch PwProxy, it will create a config.xml file which include Listenning Port, IPServerAddress and ServerPort. Modify this file to match with your case.
- Edit userdata/server/serverlist.txt & add this line :
PwProxy 29000:127.0.0.1 1

Start PW & connect like usual to your server by using PwProxy.
You'll see decrypted packets in the PwProxy console.

Feel free to improve the project.

Very nicely done

I'm liking these new comers that keep coming up with very useful tools :thumbup1:

Since its written in C# I'll see about getting it to work with Mono on my Linux box and from there we can just use this as the glink address and let your app link between glink and the outside world

Will post results of testing later
 
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
He has, and i have got to login screen but cannot be any further due to a difference in client-server protocols with char data.

We need to go back more client versions basicaly. We could also fix the protocols slowly 1 by 1 using pwproxy, unlocking higher and higher gfx/ecm on the way.

And where to get previous versions? :blink:
 
Black Magic Development
Loyal Member
Joined
Apr 29, 2010
Messages
2,170
Reaction score
600
Will post results of testing later

I just finished some quick tests with it (was compiled using windows, had some issues with mono-develops mcs) and it seems that it does work quite well just sitting right on the server only used about 6 mb of ram with 10 clients connected to my server and I don't see any obvious issues that it may be cause so here's yet another "You're awesome"

Output from mono --version
Code:
Mono JIT compiler version 2.6.7 (Debian 2.6.7-3ubuntu1)
Copyright (C) 2002-2010 Novell, Inc and Contributors. www.mono-project.com
        TLS:           __thread
        GC:            Included Boehm (with typed GC and Parallel Mark)
        SIGSEGV:       altstack
        Notifications: epoll
        Architecture:  amd64
        Disabled:      none
 
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
Just asking for Robb...

PW MY-CN v14 (ver. 1.2.7/ Build 2262) is the same as the world2 version? :mellow:
 
Newbie Spellweaver
Joined
Oct 6, 2006
Messages
47
Reaction score
5
Originally Posted by freya421
Ok, first I'm quite new in the community, but I tried since some time to Work on Encryption part. I used this post to create a simple tool to decrypt packet exchange between client and server.
Hope it'll help you to work on protocols between those clients.

(The project is made in csharp, I only post source code for obvious reason, you'll need Visual Studio to compile the project)

How to use :
- When you will first launch PwProxy, it will create a config.xml file which include Listenning Port, IPServerAddress and ServerPort. Modify this file to match with your case.
- Edit userdata/server/serverlist.txt & add this line :
PwProxy 29000:127.0.0.1 1

Start PW & connect like usual to your server by using PwProxy.
You'll see decrypted packets in the PwProxy console.

Feel free to improve the project.


Hi


Just a tought....but if your tool is able to decrypt packets "on-the-fly", wouldnt it be possible to catch the new packets from new clients, exchange/reformat them for the old packets used by 1.3.6 n' send them after that to the client / server which would make it possible to use even the 1.4.2 PW client if i'm not wrong about that ?

Since you released the sourcecode everyone could try some things with it...but you are the creator of the tool, do you think it would be possible to do something like this ? (I know that much reverse-engineering has to be done with the new and old packets...but if it would work it could be a good way to make the latest client work for p-servers)
 
Black Magic Development
Loyal Member
Joined
Apr 29, 2010
Messages
2,170
Reaction score
600
Hi


Just a tought....but if your tool is able to decrypt packets "on-the-fly", wouldnt it be possible to catch the new packets from new clients, exchange/reformat them for the old packets used by 1.3.6 n' send them after that to the client / server which would make it possible to use even the 1.4.2 PW client if i'm not wrong about that ?

Since you released the sourcecode everyone could try some things with it...but you are the creator of the tool, do you think it would be possible to do something like this ? (I know that much reverse-engineering has to be done with the new and old packets...but if it would work it could be a good way to make the latest client work for p-servers)

It might be possible, but he just used the documentation on the packet structure of the client we have, as far as I know there isn't any freely documented packet structure for 1.4.2/3

While it is probably possible figuring out the packet structure does take time...
 
Newbie Spellweaver
Joined
Oct 6, 2006
Messages
47
Reaction score
5
basicaly we would have to catch the packets for different actions like login, char creation, char selection, login into world and so on from both client, compare them, check where informations are stored in them (username, password, force switch for user login, char id & world id for login into world and other things for the different packets)...after we know the difference, the next step would be to take those informations from the packets of a new client, forge a packet for the old client based on those informations and forward it to the client / server...

I know it sounds a bit hard or weird but i'm sure it could be done and would probably be a bit better than the world2 client because new areas and such would be ingame and accessible.

My experience in reverse engineering is only at a basic level from back than when i was working a bit at aion and i dont know if all this would realy be possible, its only a thought...so ppls with higher experience in this would be needed.
 
Black Magic Development
Loyal Member
Joined
Apr 29, 2010
Messages
2,170
Reaction score
600
basicaly we would have to catch the packets for different actions like login, char creation, char selection, login into world and so on from both client, compare them, check where informations are stored in them (username, password, force switch for user login, char id & world id for login into world and other things for the different packets)...after we know the difference, the next step would be to take those informations from the packets of a new client, forge a packet for the old client based on those informations and forward it to the client / server...

I know it sounds a bit hard or weird but i'm sure it could be done and would probably be a bit better than the world2 client because new areas and such would be ingame and accessible.

My experience in reverse engineering is only at a basic level from back than when i was working a bit at aion and i dont know if all this would realy be possible, its only a thought...so ppls with higher experience in this would be needed.

Yeah that's basically what would have to be done...
 
Robb
Loyal Member
Joined
Jan 22, 2009
Messages
1,224
Reaction score
466
pwi introduced a new encryption in their packets.
whereas world2 simply uses more or less data in their packets for an action.

one step at a time ey?

also no 1.2.7 pw2 is not the same as world2 which is pw1.
there was never an english version of pw1 made.
 
Just Eistiger.
Joined
Jul 9, 2008
Messages
442
Reaction score
238
i just chnaged the server configuration in world2 v530 client to connect to my local server.

My server glinkd was changed to 10207.

Thats all... i'll take a look in my serverfiles later, no idea why this is luckily working...


Update:
"elementclient.exe game:pw" not game:cpw

cpw and pw working.
And the exe include the skip allready so no need.

---------- Post added at 02:43 AM ---------- Previous post was at 02:42 AM ----------

I hope all is well and/or gets better for you eistiger...

I do also hope you don't permanently leave the board, or the 'scene'.

Thanks i hope too :(
Just lost my son last week but i will continue on my own forum.
 
Nerd-IO
Loyal Member
Joined
Feb 13, 2009
Messages
3,303
Reaction score
651
I know it sounds a bit hard or weird but i'm sure it could be done and would probably be a bit better than the world2 client because new areas and such would be ingame and accessible.

Possible to get the tideborn maps on world2 client, only need to crack the needed block inside the elementclient.exe to unlock them :mellow:

And btw, we have a base. We can get a ping and can half-login on our server. Totaly impossible with pwi client...

So we got half-way of the work done with 1.2.7 client and its more compatible with our server files.


Eistiger you can do to walk s tideborn world
Stupid and harrassing question.....
 
Last edited:
Joined
Oct 14, 2009
Messages
5,493
Reaction score
2,299
Thanks i hope too :(
Just lost my son last week but i will continue on my own forum.

While I have lost people quite dear to me in the past, I cannot say I've lost a child. I don't know if I'd be on the boards at all for a while after that, well, I suppose, or, on all the time, to take my mind off things, IDK.

Either way, I am certain things will slowly get better for you. I am very sorry to hear this news.
 
Status
Not open for further replies.
Back
Top