Support OpenKore:
Learn about
the Fund Pool

Xkore 2 / Proxy Guide

Contents


What is XKore 2 / Proxy?

Mode Description
1 This mode is your basic XKore, it injects itself into the RO client and can not function without the client.
2 This mode is what you'd call "semi-proxy". It will work without a client connected, but you can also connect to it with the client and see what the bot is doing.
Proxy This mode is a pure proxy, hence its name. It will only function with a client connected.


Step 1: Configuring the XKore 2 Server in Openkore

In config.txt, there are several options that you need to configure in order to make Openkore start an XKore 2 server.

XKore <flag>

Set this option to 2 or proxy to tell Kore that you want to use XKore 2 or XKore Proxy. Check the config.txt section of the manual for further details on the option XKore.

XKore_ID <server name>

Set this option to the name of your game server (e.g. Chaos, Loki, or Sarah). This name will appear on the RO Client when you connect to XKore 2 and you are prompted to choose a server.
Note: The value for this option does not necessarily have to be the same as the name of your actual game server. However, keep in mind that the RO Client may use this value in one way or another. For example, it appends this server name to the filename of every screenshots you take.


Xkore_listenIp <IP address>

If this option is not set, the XKore 2 server will listen to connection requests from any of the installed network devices on your system by default (recommended).
If you have multiple network devices installed on your system and you want to bind the XKore 2 server to a specific network device, set this option to the IP address of the corresponding network device (for advanced users only).

XKore_listenPort <port number>

The value for this option will be the port number that the RO Client will use to connect to the XKore 2 server.
If this option is not set, the Xkore 2 server will listen to connection requests from the port 6900 by default.
If you want to bind the XKore 2 server to a port other than the default (6900), set this option to the chosen port number.

XKore_publicIp <IP address>

The value for this option will be the IP address that the RO Client will use to connect to the XKore 2 server.
If this option is not set, XKore 2 uses the localhost IP address 127.0.0.1 as the default value. You can, therefore, only use an RO Client that will be run on the same computer where Openkore runs to connect to the XKore 2 server using the localhost IP (127.0.0.1).
If you are connected to a network (or the internet) and you want to allow an RO Client that runs on another computer across the network (or the internet) to connect to the XKore 2 server, you must set this option to your computer's IP address.
Notes
  • Your IP address from the same network is different from your IP address over the internet and past a router.
  • To know your network IP address, use the command ifconfig (linux command) or ipconfig /all (windows 2k/xp command), or contact your network administrator.
  • To know your IP address over the internet, visit http://www.whatismyip.com/.

adminPassword <password>

The value for this option will be used as the login password when the RO Client connects to the XKore 2 server.


Step 2: Configuring the RO Client to connect to XKore 2

Note: Actually, you can use any filename for this file (except for their original filename), but for clarity and easy identification, it will be referred to as "xkore2.xml" throughout this guide.
Note: This guide will not cover the format of an xml file. For further information on this file format, please visit the W3C recommendation on Extensible Markup Language (XML) 1.0.


A sample clientinfo.xml file would look like this:
<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>

	<servicetype>america</servicetype>
	<servertype>primary</servertype>
	<hideaccountlist></hideaccountlist>
	<extendedslot></extendedslot>

	<connection>
		<display>iRO Server</display>
		<desc>None</desc>
		<address>38.144.194.2</address>
		<port>6900</port>
		<version>18</version>
		<langtype>1</langtype>
		<registrationweb>http://enweb.gravity.co.kr/e_regist.htm</registrationweb>
		<aid>
			<admin>1650290</admin><admin>1650292</admin><admin>1650297</admin>
			<admin>1650302</admin><admin>1650306</admin><admin>1650310</admin><admin>1650313</admin>
			<admin>1650315</admin><admin>1650319</admin><admin>1650330</admin><admin>1650296</admin>
			<admin>1650298</admin><admin>1650300</admin><admin>1650303</admin>
			<admin>1650304</admin><admin>1650309</admin><admin>1650312</admin><admin>1650314</admin>
			<admin>1650317</admin><admin>1650320</admin><admin>527214</admin><admin>527215</admin>
		</aid>
		<yellow>
			<admin>1650290</admin><admin>1650292</admin><admin>1650297</admin>
			<admin>1650302</admin><admin>1650306</admin><admin>1650310</admin><admin>1650313</admin>
			<admin>1650315</admin><admin>1650319</admin><admin>1650330</admin><admin>1650296</admin>
			<admin>1650298</admin><admin>1650300</admin><admin>1650303</admin>
			<admin>1650304</admin><admin>1650309</admin><admin>1650312</admin><admin>1650314</admin>
			<admin>1650317</admin><admin>1650320</admin><admin>527214</admin><admin>527215</admin>
		</yellow>
	</connection>
</clientinfo>

Using the sample clientinfo.xml file above, assuming your server is Chaos and you will be running Openkore and the RO Client on the same computer, the contents of the new xkore2.xml file would look like this:

<?xml version="1.0" encoding="euc-kr" ?>
<clientinfo>

	<servicetype>america</servicetype>
	<servertype>primary</servertype>
	<hideaccountlist></hideaccountlist>
	<extendedslot></extendedslot>

	<connection>
		<display>iRO Server</display>
		<desc>None</desc>
		<address>127.0.0.1</address>
		<port>6900</port>
		<version>18</version>
		<langtype>1</langtype>
		<registrationweb>http://enweb.gravity.co.kr/e_regist.htm</registrationweb>
		<aid>
			<admin>1650290</admin><admin>1650292</admin><admin>1650297</admin>
			<admin>1650302</admin><admin>1650306</admin><admin>1650310</admin><admin>1650313</admin>
			<admin>1650315</admin><admin>1650319</admin><admin>1650330</admin><admin>1650296</admin>
			<admin>1650298</admin><admin>1650300</admin><admin>1650303</admin>
			<admin>1650304</admin><admin>1650309</admin><admin>1650312</admin><admin>1650314</admin>
			<admin>1650317</admin><admin>1650320</admin><admin>527214</admin><admin>527215</admin>
		</aid>
		<yellow>
			<admin>1650290</admin><admin>1650292</admin><admin>1650297</admin>
			<admin>1650302</admin><admin>1650306</admin><admin>1650310</admin><admin>1650313</admin>
			<admin>1650315</admin><admin>1650319</admin><admin>1650330</admin><admin>1650296</admin>
			<admin>1650298</admin><admin>1650300</admin><admin>1650303</admin>
			<admin>1650304</admin><admin>1650309</admin><admin>1650312</admin><admin>1650314</admin>
			<admin>1650317</admin><admin>1650320</admin><admin>527214</admin><admin>527215</admin>
		</yellow>
	</connection>
</clientinfo>

Step 3: Start Openkore

Wait until Openkore fully connects to the map server and into the game.

Note: XKore 2 will not wait for you to start the RO Client. It will automatically connect to the RO server and start botting. XKore Proxy will wait!


Step 4: Start the RO Client

Now you have to make the RO Client connect to the XKore server instead of the real RO server. But first, there are several things that you have to check first:

Make sure that:

To make the RO Client connect to the XKore 2 server, you have to run the RO Client (Ragexe.exe, Pkexe.exe, or Sakexe.exe) with additional command-line arguments. You can achieve this by either creating a shortcut, or a batch file. For simplicity of this guide, batch files will not be discussed here.

The 1rag1 command-line argument is used so we can run the RO Client (ragexe.exe, Pakexe.exe or Pkexe.exe) without first running the Patch Client (Ragnarok.exe). It tells the RO Client to load data from the data.grf and then the data\ folder. The RO Client will use the account info file named "clientinfo.xml" by default.


If you are using an executable other than Ragexe.exe or Pkexe.exe, the following is a list of other command-line arguments that you can use in place of 1rag1:

Command Locations of data to load Account info file
1rag1 data.grf, data\ clientinfo.xml
1sak1 sdata.grf, data.grf, data\ sclientinfo.xml
1gld1 gdata.grf, data.grf, data\ gclientinfo.xml
1eve1 eventdata.grf, sdata.grf, data.grf, data\ eventclientinfo.xml
1pvpsak1 psakdata.grf, sdata.grf, data.grf, data\ psakclientinfo.xml
1pksak1 pksakdata.grf, sdata.grf, data.grf, data\ pksakclientinfo.xml
1sak21 s2data.grf, sdata.grf, data.grf, data\ s2clientinfo.xml
1rag21 p2data.grf, data.grf, data\ p2clientinfo.xml

For example, use 1gld1 for gldexe.exe, and 1sak1 for Sakexe.exe.

Usually, RO Clients load data from locations in sequence as they appear on the table above. Others, load data from the "data\" folder first and then load the .grf files in sequence listed.


/account:xkore2.xml

The /account:xkore2.xml command-line argument overrides the filename of the account info file that the RO Client will use. It tells the RO Client to use the file "xkore2.xml" instead of the default "clientinfo.xml".
If you specified a different filename for xkore2.xml, replace the string "xkore2.xml" in the command-line argument "/account:xkore2.xml" with the filename you used. Say, if you named xkore2.xml to swordie1.xml, use "/account:swordie1.xml" instead.


For example, assuming you're using Ragexe.exe, the Target field in the shortcut properties should read:

Shortcut Target:
"C:\Program Files\Gravity\RagnarokOnline\Ragexe.exe" 1rag1 /account:xkore2.xml


Make sure the command-line arguments are added AFTER the last quotation mark.