1 RF 2.2.3.2 local server setup guide Introduction: What follows is a method (determined by internet searching and trial and error) to setup an RF Online 2.2.3.2 server for a local network. What worked for this system may not work for others. This is by no means a definitive guide; there will most likely be better options in setting up the server. There will be security and stability errors that should not be exposed to the internet without testing and correction. If errors are encountered, search appropriate forums and try manually troubleshooting; all trial and error was completed using the tools in the Recommended tools for modifying/debugging: list. Do not pass up the opportunity to broaden knowledge. Feel free to modify this guide, just maintain a list of editors. System: The system was configured to use a VMware Workstation virtual machine to run the RF server, with a PlayRF.com client (modified launcher) running on the host. This way Wireshark could be used to troubleshoot. Host: Windows 7 Ultimate x64 Intel i7 920 12GB RAM 30GB free HDD space Guest OS (running RF server): 2 core processor 5.5GM RAM Windows Server 2008 R2 x64 with updates applied + vmware tools 20GB HDD (this can be reduced if paging is disabled) Network IP:10.53.1.182 Server files: RF Online 2.2.3.2 GU - Xtreme Server Files – FIXED –H4TE Recommended tools for modifying/debugging: Notepad++ Wireshark TCPView A Hex editor with search & replace functionality – Hex Workshop was used A file search utility with binary search functionality – PowerGREP 4 was used AnjLab SQLProfiler The Tracing option in ODBC
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
RF 2.2.3.2 local server setup guide
Introduction: What follows is a method (determined by internet searching and trial and error) to setup an RF Online 2.2.3.2 server
for a local network.
What worked for this system may not work for others.
This is by no means a definitive guide; there will most likely be better options in setting up the server. There will be
security and stability errors that should not be exposed to the internet without testing and correction.
If errors are encountered, search appropriate forums and try manually troubleshooting; all trial and error was
completed using the tools in the Recommended tools for modifying/debugging: list. Do not pass up the opportunity
to broaden knowledge.
Feel free to modify this guide, just maintain a list of editors.
System: The system was configured to use a VMware Workstation virtual machine to run the RF server, with a PlayRF.com
client (modified launcher) running on the host. This way Wireshark could be used to troubleshoot.
Host: Windows 7 Ultimate x64
Intel i7 920
12GB RAM
30GB free HDD space
Guest OS (running RF server): 2 core processor
5.5GM RAM
Windows Server 2008 R2 x64 with updates applied + vmware tools
20GB HDD (this can be reduced if paging is disabled)
Network IP:10.53.1.182
Server files: RF Online 2.2.3.2 GU - Xtreme Server Files – FIXED –H4TE
Recommended tools for modifying/debugging: Notepad++
Wireshark
TCPView
A Hex editor with search & replace functionality – Hex Workshop was used
A file search utility with binary search functionality – PowerGREP 4 was used
MSSQL configuration Configure MSSQL2008 R2 Express for network access:
Open SQL Server Configuration Manager
Enable TCP/IP:
SQL Server Network Configuration: Protocols for SQLEXPRESS
Named Pipes -> Enabled
TCP/IP -> Enabled
Restart the MSSQL server:
SQL Server Services: Right click SQL Server (SQLEXPRESS); click restart.
Server file extraction Create the folder for the RF server and extract the server files into it: C:\RF_server_2.2.3.2\
4
MSSQL database setup
Setup the databases:
Open SQL Server Management Studio
Login to 127.0.0.1\SQLEXPRESS with sa:SA1password
Create the databases
Right click Databases, select New Database.
Create 3 new databases named: RF_World, RF_User and BILLING
5
Restore the databases
Right click RF_world; Tasks; Restore; Database
From Device
File; Add (select backup file: RF_WORLD.bak)
6
Check restore
Options; Overwrite the existing database
OK (repeat for RF_User & Billing)
Set up the new users
name:rf SQL server authentication: pass: rfpass. uncheck enforce
7
User mapping: all options excluding denys: for rf: all RF Databases, for rfrusaccount, only database: RF_User, for rfrusworld, only database:
RF_World.
Also create the accounts: rfrusaccount:#rf%rusaccount and rfrusworld:#rf%rusworld
(These are hardcoded into the AccountServer and ZoneServer respectively and they change with
country code; if a different country is used (not RU), use ODBC trace and AnjSql Profiler to determine
the user, then hex search user in AccountServerSD.exe to find user & pass)
Allow the appropriate users execute permissions
New Query: run this SQL (execute)
USE RF_User GRANT EXECUTE TO rfrusaccount, rf USE RF_World GRANT EXECUTE TO rf, rfrusworld USE BILLING GRANT EXECUTE TO rf
8
Create the ODBC connections: Open ODBC Data Source
Add: SQL server native: Finish
Name:RF_User. Server:127.0.0.1\SQLEXPRESS
sql server authentication: rf:rfpass
9
Change default database to: RF_User
Next:Finish:Test. If OK: OK. repeat for RF_World & BILLING, using RF_World and BILLING as the default
database respectively.
ODBC Data Sources:
10
Server configuration modification (see appendix for this servers configuration files) Setup RF ini (Account and Login\RF_Bin\Initialize\[Account|Billing|Login]System.ini,
Testing (All server executable must be run as administrator; it is easiest to set this in compatibility options)
Start the AccountServer and LoginServer enter /open in the login server.
12
Note, (this version of) LoginServer uses port 10001 (use tcpview to confim)
Allow programs through (computer) firewall (LoginServer, ZoneServer) or appropriate ports (through (or turn off (not recommended on a computer connected to
the internet)) Windows firewall)
13
Try to login RF client should produce a "Wrong Account input" error message (there are not yet any accounts on the server) on
attempting to connect.
Add (normal) user test:test to RF_User.rfaccount
INSERT INTO RF_USER.dbo.tbl_rfaccount (Id,Password,accounttype,email,birthdate) VALUES ((CONVERT
RF Client should give login, and display the server as closed.
Start the ZoneServer
Add a GM account to ini configuration and MSSQL USE RF_User Insert Into tbl_StaffAccount (ID,PW,Grade,Depart,RealName,SubGrade,Birthday,ComClass) Values