Register for your free account! | Forgot your password?

Go Back   elitepvpers > Popular Games > Silkroad Online > SRO Guides & Templates
You last visited: Today at 18:51

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



[Guide] How to patch any client into an English client

Discussion on [Guide] How to patch any client into an English client within the SRO Guides & Templates forum part of the Silkroad Online category.

Reply
 
Old 09/01/2009, 20:37   #31
 
elite*gold: 0
Join Date: Dec 2008
Posts: 44
Received Thanks: 134
Thanks, I don't saw it.
If someone has problems and wants to compare the things, download the client in the attachment, its for TSRO.
Attached Files
File Type: rar sro_client.rar (2.29 MB, 80 views)
TheWhiteRabbit is offline  
Old 09/02/2009, 10:46   #32

 
elite*gold: 260
Join Date: Aug 2008
Posts: 560
Received Thanks: 3,779
Ok, now that I finally got swsro downloaded.

Quote:
Originally Posted by ovidiu View Post
I did exactly like it says ( i think):
Your crash is because of what I mentioned in my second post:
Quote:
I just wanted to add that I've tested this and it works fine in sunsro private server. However, their client is really old, so things are not as straight forward. For example, you have to find the GetGlobalData function by looking at other clients to identify a location where it is used. Once you do that though and follow the rest of the guide, you can have an English version. You do need to patch the CRC check on the client though, but that's pretty simple.
So, the call you are referencing in your code is not the right one. Instead, you have to find the GetGlobalSettings function call another way.

Here's the method I used originally to determine the patch:

1. Search for all referenced text strings and find the language name of the client version you are using. In this case Chinese.

2. On the original language flag code, you will want to set a breakpoint on the language flag code. For this client:
Code:
00643039   .  C783 60070000>MOV DWORD PTR DS:[EBX+760],1


3. Now, when you run the client in Olly (bypass the launcher msg) and you hit the BP, you will want to set a Hardware Breakpoint on the memory address that is getting the language flag. This is a pointer to the structure that the GetGlobalSettings function returns. To set the HWBP:

First, click on the address in the preview pane and choose Follow Address in Dump.


Second, select the first byte in the dump, right click and choose: Breakpoint->Hardware, on access->Byte.


4. Now press F9. You should hit the HWBP. If you look at the call, you will notice it's NOT what you want. However, you can see how the language flag is being used to load data from specific pk2 files.

Press F9 again 4 more times until that loading code is complete and the client starts.

5. You end up hitting another PK2 loading code, so hit F9. You can check the call to make sure it's not the right one.

6. Now, you hit another access on the byte, but this time, if you check the call, it looks like the right one. Here is where you should be now:


If you look at the call above and follow it, you will see:
Code:
004968DF      CC            INT3
004968E0  /$  B8 90C6A900   MOV EAX,SRO_Clie.00A9C690
004968E5  \.  C3            RETN
004968E6      CC            INT3
That is how we know that is our GetGlobalData function. if we go back to the current code, we can see how the language flag is used:
Code:
0065B411   .  E8 CAB4E3FF   CALL SRO_Clie.004968E0
0065B416   .  83B8 38010000>CMP DWORD PTR DS:[EAX+138],1
This is just like the guide shows, except it's in a different spot.

Now you know the correct call address is: 0x4968E0 and you need to modify the flag by using:
Code:
MOV DWORD PTR DS:[EAX+0x138],1
instead!

Go to Debug->Hardware Breakpoints in the OllyDbg menu and Delete the hardware breakpoint now.

Now, you can patch the two English/Chinese flags as needed, then add in the new code for the language flag:


Don't forget to add in the CRC patch (I see you did, but to anyone else reading this post) and then save all the patches to the exe.

Now, you should have a correctly patched client



Attached is mine if anyone needs to compare.
Attached Files
File Type: zip [edx][swsro][021]SRO_Client.zip (2.47 MB, 59 views)
pushedx is offline  
Thanks
2 Users
Old 09/02/2009, 12:53   #33
 
ovidiu's Avatar
 
elite*gold: 0
Join Date: Jan 2008
Posts: 395
Received Thanks: 172
Yes , thanks a lot i finaly made it.
ovidiu is offline  
Old 09/12/2009, 13:10   #34
 
elite*gold: 0
Join Date: Jul 2009
Posts: 47
Received Thanks: 3
Thanks pushedx.



Skils, and names of the monsters are not English subtitles.
nemek is offline  
Old 11/22/2009, 09:01   #35


 
Yo123's Avatar
 
elite*gold: 41
Join Date: Nov 2007
Posts: 3,385
Received Thanks: 2,700
is there any way to make this work on R-Sro?
the changes do not have any effect on the ingame language.
nor does it allow to create english named chars
Yo123 is offline  
Old 12/01/2009, 16:55   #36
 
elite*gold: 0
Join Date: Mar 2009
Posts: 48
Received Thanks: 35
The video toturial will be great.. Couse i am not good at english and fail at this toturial..
noname456 is offline  
Old 12/31/2009, 16:19   #37
 
elite*gold: 0
Join Date: Dec 2009
Posts: 1
Received Thanks: 0
How to get the language ID's?

//Edit
NVM I found it looking at the images... I did it with the Russian Silkroad version and it doesn't did nothing (still in russian).
blagblog is offline  
Old 01/01/2010, 21:21   #38
 
wizardLT's Avatar
 
elite*gold: 0
Join Date: Jan 2008
Posts: 128
Received Thanks: 27
Yes, not working for Rsro, maby someone how to do it right?
wizardLT is offline  
Old 01/07/2010, 09:27   #39
 
PhreaK™'s Avatar
 
elite*gold: 0
Join Date: Aug 2009
Posts: 226
Received Thanks: 78
If someone could put up the rsro client i could see if it is possible
PhreaK™ is offline  
Old 01/07/2010, 10:47   #40
 
Kazuya¹'s Avatar
 
elite*gold: 0
Join Date: Apr 2007
Posts: 449
Received Thanks: 236
Quote:
Originally Posted by PhreaK™ View Post
If someone could put up the rsro client i could see if it is possible
Kazuya¹ is offline  
Old 01/07/2010, 19:28   #41
 
PhreaK™'s Avatar
 
elite*gold: 0
Join Date: Aug 2009
Posts: 226
Received Thanks: 78
Yea rsro is coded waay differently then the other ones....drew is going to have to mess with it a bit...im not that good with coding yet
PhreaK™ is offline  
Old 01/09/2010, 23:00   #42


 
Yo123's Avatar
 
elite*gold: 41
Join Date: Nov 2007
Posts: 3,385
Received Thanks: 2,700
i guess you'll have to change the font and swearfilter as well ^-^
Yo123 is offline  
Old 03/14/2010, 16:36   #43
 
elite*gold: 0
Join Date: Apr 2009
Posts: 32
Received Thanks: 19
so...any1 know how this works in rsro now?^^
MagiCircle is offline  
Old 03/14/2010, 16:41   #44
 
elite*gold: 0
Join Date: Mar 2008
Posts: 556
Received Thanks: 545
Quote:
Originally Posted by MagiCircle View Post
so...any1 know how this works in rsro now?^^
Use pk2 editor
Media/type.txt

It should be
Code:
Language = "Russia"
Country = "Russia"
LanguageTabIndex = "11"
GameType = "Silkroad"
GameGuard = ""
MarkFTPAddr = "files.silkroad.ru/SRO_CREST"
MarkFTPPath = ""
Change this to
Code:
Language = "English"
Country = "Russia"
LanguageTabIndex = "7"
GameType = "Silkroad"
GameGuard = ""
MarkFTPAddr = "files.silkroad.ru/SRO_CREST"
MarkFTPPath = ""
And boom! full English. takes 5 seconds.
Attached Files
File Type: txt type.txt (168 Bytes, 57 views)
Murgen is offline  
Thanks
1 User
Old 03/14/2010, 16:45   #45
 
elite*gold: 0
Join Date: Apr 2009
Posts: 32
Received Thanks: 19
Thats to easy...i want the hard way with ollydbg^^
MagiCircle is offline  
Reply


Similar Threads Similar Threads
English Patch for CN client?
08/15/2008 - Dekaron Private Server - 6 Replies
Okay... I was wondering since everything you see on screen (in 2moons) is client based.. If someone translated the names of npcs, items, skills etc.. wouldnt that show on your screen? Example. My bagi gets a new weapon -> 台风 Now translated that is Typhoon. If the name of the item were changed on the client files it would show up as Typhoon on MY screen instead. I am not 100% positive but if someone had a Chinese client modified for english it SHOULD work on pretty much ANY private server...



All times are GMT +1. The time now is 18:53.


Powered by vBulletin®
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2025 elitepvpers All Rights Reserved.