heRO-Server Forum

Full Version: Getting heRO to work on linux...
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Well I've been working on getting RO to work on Linux via WINE for a few days now. I know their are other threads on these forums about this same subject, but they don't contain anything I don't already know from reading guides.

This is a guide I found from another p server's forums created by a person named ipridian:
Quote:1. Get wireshark (formely ethereal) and run it from root (IMPORTANT must be run from root)
2. Open a terminal and run wine on the .exe
3. Put wireshark on capture mode on eth0 or whatever your net interface is. Best is to also close down every other application which uses the net line (run netstat to see).
4. Enter username and password, click connect and wait till it gives the Failed to connect to server message.
5. Close wine
6. Switch to wireshark, and stop the capture.
Now please pay attention..
7. Scroll down the packets recorded, and look for a DNS request to <put your game server info here>. Also note that, if there is no DNS request made, then the .xml file in the .grf patched by your private server (the one who identifies the server) uses an IP address. Please resolve it to a Hostname and edit it with grftool, then repacks the file.
8. After looking at the DNS request, write down the IP address returned.
9. Then scroll down and look for any grayed out packet which contains a weird IP address "to" value. Something like 160.0.0.0 or 101.122.133.165 could be it. You can also look at the ASCII value of the IP address for a hint (for example, the one for *pserver name* was "line" which resolved to a weird 123...something IP address). Note it down.
Now this following process needs you to google and do it on your own if you don't have iptables.
10. Supposedly you have iptables installed and the extension DNAT, you then su to root and enter :
# iptables -t nat -A OUTPUT -d $WRONG_ADDRESS -j DNAT --to $REAL_ADDRESS
Please do not type out "#" (lol), and replace wrong address with the weird IP, real address with the IP resolved returned by your DNS server.
11. iptables-save, and you're good to go !
- Also note that Ragnarok requires mfc42.dll, but the 2000 version one, not the 1998/1999 one offered on dllfiles.com. Please google and download the one which is not on dllfiles.com, or use your own from an up-to-date Windows system.

- Please do not choose fullscreen. Always do windowed, and use winecfg to make it run in a double-buffered virtual desktop which matches your game's resolution chosen. Also, put the hardware 3d on emulation, and disable sound if it gets buggy. Lastly, please disable fog inside Setup.exe, and disable weather by @weather off if the private server suddenly presents you with some weird weather effect.

Now before trying this guide I was getting the "Failed to connect to server" message, however after messing around with different IP addresses, I instead get the "Disconnected from server" message...which isn't a good thing...but at least its progressSweat.

Here are the various commands I have tried so far:
Quote:iptables -t nat -A OUTPUT -d 111.117.110.99 -j DNAT --to 192.168.1.254

iptables -t nat -A OUTPUT -d 111.117.110.99 -j DNAT --to 76.232.179.27

iptables -t nat -A OUTPUT -d 111.117.110.99 -j DNAT --to 70.38.64.91

The part in bold I am fairly positive is the "Wrong Address", and it should vary from person to person. The part I am having trouble figuring out is the "Real Address" I suppose.

So, is there anyone out there who is running RO on Linux atm, and if so, what IP did you use for "Real Address"? Also, if someone on these forums happens to have Linux, any chance you could try to install RO and use the above guide to see if RO works for you or not?

If all else fails, I guess I'll resort to using the alternate method in step 7. Now that I think about it, thats probably the way to get it to work...but at least one person on these forums(from an earlier thread) has gotten it to work using the "iptables" method (and yes, i've tried his IPs...and they didnt work Thinking ).
Sorry for the double post, but I guess its needed Icon_wink.

I tried the alternate option in step 7, where you use "grf tool" to unpack heRO.grf and take a peek at the "sclientinfo.xml file for an IP address. However, when opening the .xml file, I was not able to see any sort of IP listed Cry. When looking through the ratemyserver forums, I found a little more info.

Quote:Wine and Cedega (WineX) can both run RO. Wine's winsocks interface has problems handling DNS-requests with Ragnarok Online if your client doesn't have DNS support built in, which would give you a failed to connect message after trying to resolve the IP incorrectly.

So after knowing that...Im guessing heRO doesnt have DNS support built in...? Or if it does, then it reassures me that I am using the wrong IP address to try to connect.


As I type this I realize that tomorrow is the SVN update, and if I am correct, a new installer will also be released? I guess I might as well wait for that to come out before I resume trying to get this friggin server to work!Icon_razz
OK, I think I've finally gotten it to work. I dl'ed the newly updated installer so I cant connect...yet, but once the SVN is officially up I'll try to connect again and hopefully everything goes through (right now I get to the character select screen and get rejected from the server).

If everything works as I believe it should, I'll whip up a guide custom-tailored to our server, so that people that have Linux, or those that are scared to make "the jump" can do so knowing they won't have to spend nearly a week trying to figure out how to make everything work Icon_wink.
What distro are you using?
Linux Mint, based off of Ubuntu
Reference URL's