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!

[Help]Question About RYL2 v2240 Launcher

Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
Hey guys, im here to ask a question about the RYL2 programming methods.

I mean, basic my idea is to build my own RYL2 Launcher in C#, my problem is, i dont know what ryl uses for example: to open the client.exe since we cant just open client.exe error, it return the 'open the client using the launcher' error.

Would be awesome if someone could help me out by any means and maybe even helping me with your own sources and ideas.

Thanks!
 
Experienced Elementalist
Joined
Apr 20, 2011
Messages
207
Reaction score
13
Hey dude, i suggest you just using launcher alphaest release before ..
It work fine, just need some modification to make it work .
Good luck to you :thumbup1:
 
Initiate Mage
Joined
May 5, 2009
Messages
2
Reaction score
0
it takes the ip of the auth server as argument, cannot pass it normally though only through windows api so you can code your own launcher.
Pretty much same question i asked back in ages. Basically, it's include
login.dat, login.dll and login.exe which need to adjust
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
And how more or less this inclusion works? Could you give me some more info?

EDIT--

As I was looking over the internet i've found alphaest's RYL Launcher SRC files.
I was looking over his code and founded the method that matters wich is:

Private Sub runRyl(Optional ByVal game As CGameItem = Nothing)
Dim ryldir As String = ""
If Not game Is Nothing Then
ryldir = Ryl2.Items(game.OwnerID).directory
ElseIf game Is Nothing AndAlso Ryl2.Items.Length > 1 Then
Dim frm As New frmSelectRyl
If frm.ShowDialog = Windows.Forms.DialogResult.OK Then
ryldir = Ryl2.Items(frm.selectedId).directory
End If
ElseIf game Is Nothing AndAlso Ryl2.Items.Length = 1 Then
ryldir = Ryl2.Items(0).directory
End If
If ryldir <> "" Then
Try
Shell(ryldir & "login.exe", AppWinStyle.NormalFocus, False)
Catch ex As System.IO.FileNotFoundException
Me.LabStatus.Text = "Login.exe not found in ryl2 directory"
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End If
End Sub

To be more specific, this is the part that really im looking for:

If ryldir <> "" Then
Try
Shell(ryldir & "login.exe", AppWinStyle.NormalFocus, False)
Catch ex As System.IO.FileNotFoundException
Me.LabStatus.Text = "Login.exe not found in ryl2 directory"
Catch ex As System.Exception
MsgBox(ex.Message)
End Try
End If

But, the problem is, in this part it still uses the old ryl2 launcher, as you see, it seeks for the Login.exe file instead of directly open the RYL2 Client file.

This isn't really what i'm looking for.
Any other ideas?
 
Last edited:
Experienced Elementalist
Joined
Apr 20, 2011
Messages
207
Reaction score
13
About 5 month ago, i seen launch make by someone ..
and it pretty awesome ..
lordraven - [Help]Question About RYL2 v2240 Launcher - RaGEZONE Forums
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
I see, its pretty interesting.
But the launcher i'm planning to make is a little different, is a launcher to replace the original one.
I mean, when you click on the Play button for example it opens your ryl and go straight to login screen.

However I cant do that because as I see it must be done something a little bit deeper in the launcher, instead of just open
the client.exe.

Everyone knows if you directly open it it gives you an error about "Open the game using the launcher" or something.
As darkstraz said, the original launcher probably include the Login.dat or the Login.dll on the Client.exe to validate the game launching operation.

This is the problem I'm facing, I actually dont even know where to start from, i dont know how to "include" the .dll and the .dat on the client.exe since i dont know much about ryl coding...

Oh and btw this is what i've got so far:
lordraven - [Help]Question About RYL2 v2240 Launcher - RaGEZONE Forums


I named it reactor, it basically have some functionalities like: Registering, Changing Password, News, Downloads, Updating, and a Banner as you can see there.
Also I'm implementing an unique perma-ban(not by ip) system. Meaning: hacking = cya.
The biggest problem that i've faced was the one i've been mentioning on this topic, the dll and/or dat inclusion in the client(if that is really the case).
 
Experienced Elementalist
Joined
Apr 20, 2011
Messages
207
Reaction score
13
That nice dude, got more funtions that old :lol:
But, this perma-ban seems make sense . But i never tried before :)
Also I'm implementing an unique perma-ban(not by ip) system.

Sent me a pm dude if you want anythings :lol:
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
Hmm... related to the "How to launch the client.exe" i guess i got it now.
I was doing a little digging over the forum and found one Thread and Alphaest was in this post explaining about how it works.
I did a little of research about it, and found a method on C# who does the work. Did a little test, and i could pass into the NProtect Update. However i didnt waited to Update afterall I dont have a server to test it if i can actually login into it.
This is the small application i've made to do the tests, if anyone can test it on a server(or send me a server 1753 along with its IP) it would be good so i can make sure it actually works.
The reason i dont have my own test server, is because my connection sux ballz and it take some time to download the required thinks and set it up everything.

Here is the app:
Put it on your RYL Client folder and were is Process type: client.exe
and were is IP: put the server IP.

--EDIT
I've forgot to say, you need .NET Framework 4 to run this application.
 
Last edited:
Banned
Banned
Joined
Jan 21, 2009
Messages
58
Reaction score
4
Hi there, nice idea!
i'm really interested in do something related to launcher too, but i'm not a programmer yet so, i have a small knowledge.

as we can begin is doing some questions:

what is related go launcher?

ryl launcher "login.exe" its like a new version of "login.dat", if you rename the extension of dat to exe you will see a executable
i guess this is the older version of launcher

what i know is the Login.exe initialize the launcher > Login.dat (containing some checks and adresses) and then it load the login.res (resolutions style), when you press the name of server it runs the "client.exe"

so, How we can know the content of login.dat and make a newer launcher?

i THINK before all you need to map what have on login.dat, the checks, the links of connection (i mean the function that connect to the game adress and port).

so, if you have any sucess please let us know.
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
Hi there, nice idea!
i'm really interested in do something related to launcher too, but i'm not a programmer yet so, i have a small knowledge.

as we can begin is doing some questions:

what is related go launcher?

ryl launcher "login.exe" its like a new version of "login.dat", if you rename the extension of dat to exe you will see a executable
i guess this is the older version of launcher

what i know is the Login.exe initialize the launcher > Login.dat (containing some checks and adresses) and then it load the login.res (resolutions style), when you press the name of server it runs the "client.exe"

so, How we can know the content of login.dat and make a newer launcher?

i THINK before all you need to map what have on login.dat, the checks, the links of connection (i mean the function that connect to the game adress and port).

so, if you have any sucess please let us know.

its not like we "need to know" the content of the login.dat and loginres.dll, my guess is that when we use the CreateProcess method wich has two parameters that matter for ryl, ApplicationName and Arguments, i think we must pass some defined parameters after the IP to make it include the login.dat and loginres.dll

for example:
in the small application that i coded and posted up there you will find 2 textboxes, 1 is for the AppName wich is simple client.exe, and the other for the ip and the rest of the arguments, my guess it should be something like this, if you open the ProcessStart.exe and type on the field Process: 'client.exe' and on the IP: '127.0.0.1 /add LoginRes.dll /add Login.dat' (without the aphostrophes ofc).
In theory this would be something like I guess it should be, the problem is the HOW to include the Arguments correctly, it could be '127.0.0.1 /add LoginRes.dll /add Login.dat' or '127.0.0.1 /include LoginRes.dll /include Login.dat' or '127.0.0.1 /call LoginRes.dll /call Login.dat' or simply '127.0.0.1 LoginRes.dll Login.dat'.

I dont know, and I can't test it atm because I dont have a server running and working to test this kind of stuff. Case anyone knows a server online post it here along with the server IP so I can run tests.
 
Banned
Banned
Joined
Jan 21, 2009
Messages
58
Reaction score
4
search for RYL Gamers on facebook, download the game and install, login on server, run a cmd with netstat -t and look for a ip with 10101 port or something like this, then you will be able to run a aplication to that ip and test like you want
 
Newbie Spellweaver
Joined
May 13, 2012
Messages
20
Reaction score
0
I have another question related to making a launcher:
How the AutoPatch works? And how to implement in my launcher?
It would be something that check the RYL Client files and compares with the server files? Compares the checksum of each file?
 
Experienced Elementalist
Joined
Apr 20, 2011
Messages
207
Reaction score
13
I have another question related to making a launcher:
How the AutoPatch works? And how to implement in my launcher?
It would be something that check the RYL Client files and compares with the server files? Compares the checksum of each file?

i think autopatch dosen't suitable for launcher, it's made for original login because launcher don't support it .
That what i think, tell me if i wrong :lol:
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
My idea of auto patcher would be something like this, on client side the user would have 2 files, well 3 to be more specific, the Launcher itself, the Updater, and the config.ini file, what would happen is the launcher open a webrequest to an specific page on any hosting place, could it be on the server hosting pc or simply on any free webhosting server. reminding that on the server should have a XML file wich would contain the latest version, and on the config.ini would contain the lastest client version, basically what the launcher would do, is compare everytime it is opened the version on the web agains the config.ini on the client side. if the version on client is lower, the launcher open the Updater and close the Launcher, then the Updater download the patch package fro mthe webserver and unpack it on RYL Folder replacing the existent files.
After the Updater finish it job, it just open the Launcher again...

Its a pretty simple process. Theres no need to check for RYL files integrity(it could be done, but unecessary) if theres a patch, the launcher shall update it, no matter what...

--EDIT

And btw, anyone here have the v1753 RYL Unmodified Server Files and DBs? I am trying to make a local server to run some tests but the custom server files i've been finding are too bugged for me, and I didnt finded a working link for the original files. Not even on google. All links are dead.

Thanks.
 
Last edited:
Newbie Spellweaver
Joined
May 13, 2012
Messages
20
Reaction score
0
I think checking only a "version" file is useless, coz everyone can change this file to the "newest" and continues with the older files, so autopatch will not run.
Hoewever, I'll try check the integrity of every important file.
 
Newbie Spellweaver
Joined
Jul 16, 2012
Messages
18
Reaction score
0
what would the player gain by changing the version to the newest one?
It would cause a lot of server bugs and lack of necessary files, is like trying to use a MS Office 2010 with the MS Office 1997 files and Office 2010 main executable file.
Only the most dumb players would change the version like that, and to solve that out it can be done an encryption algorythm and crypt a .dat file like is used on the RYL Launcher atm, this way theres no way to change version, or even making a MD5 encryption/decryption on the version line, this way it would be harder to edit the file version. But as I said, would be unecessary...

What are the gains of having the game using an "incomplete patch"?
Not mentioning the checksum errors that could probably occurr on ryl itself.
 
Experienced Elementalist
Joined
Apr 20, 2011
Messages
207
Reaction score
13
My idea of auto patcher would be something like this, on client side the user would have 2 files, well 3 to be more specific, the Launcher itself, the Updater, and the config.ini file, what would happen is the launcher open a webrequest to an specific page on any hosting place, could it be on the server hosting pc or simply on any free webhosting server. reminding that on the server should have a XML file wich would contain the latest version, and on the config.ini would contain the lastest client version, basically what the launcher would do, is compare everytime it is opened the version on the web agains the config.ini on the client side. if the version on client is lower, the launcher open the Updater and close the Launcher, then the Updater download the patch package fro mthe webserver and unpack it on RYL Folder replacing the existent files.
After the Updater finish it job, it just open the Launcher again...

Its a pretty simple process. Theres no need to check for RYL files integrity(it could be done, but unecessary) if theres a patch, the launcher shall update it, no matter what...

--EDIT

And btw, anyone here have the v1753 RYL Unmodified Server Files and DBs? I am trying to make a local server to run some tests but the custom server files i've been finding are too bugged for me, and I didnt finded a working link for the original files. Not even on google. All links are dead.

Thanks.

That seem legit hahahahha :lol:
If you want server file v1753, just sent me a pm .
I will give you the link .
 
Back
Top