StarterGuide - RF-Dev
StarterGuide - RF-Dev
Welcome to RF Online development! This article will walk you through setting up your first
RF Online server to start local development.
Game Version
Our Starter Guide is written assuming you are using our 2232 game files. Other versions
will have a similar setup but may have other requirements. If you are using different server
files, refer to their respective release thread for assistance.
Stay up to date with latest changes to our game files with our Changelog.
Receiving Help
Need help with development? Click here to visit the Community Support section.
General non-game related questions or feedback? Join Discord and let us know in the
#feedback channel.
Downloads
• 2.2.3.2 Golden Age Game Files
• Microsoft SQL Server 2008 Express
• 7zip
Installation
• 1: Getting Started (you are here)
• 2: Install Requirements
• 3: Install Microsoft SQL Server (MSSQL)
• 4: Install Game Databases
• 5: Install Server
• 6: Account Creation
• 7: Install Client
• 8: GM Commands
System Requirements
Server Hardware
• CPU: 2 core high clock speed (3.0ghz+)
• RAM: 8 GB
Server Software
• Operating System
• Windows Server 2012 R2
rf-dev.net 2019
• Windows 10
• Windows 8
• Windows 7
• Windows Vista
• Windows XP
• Database
• Microsoft SQL Server 2008
• Additional
• 7zip
• Notepad++ (or any code editor)
Client Hardware
• CPU: Pentium 3-4 or higher
• RAM: 1GB
• Disk Space: 5GB
• GPU:
• NVidia Geforce FX Series or higher
• ATI Radeon 9500 or higher
Client Software
• Operating System
• Windows 10
• Windows 8
• Windows 7
• Windows Vista
• Wndows XP
• Graphics
• DirectX 9.0c+
• Additional
• 7zip
• .NET Framework 2.0
Edited May 30 by Ron
Update game file text, fix forum section references (show revisions)
File Extraction
1. Extract server.7z to C:\rf\server
2. Extract client.7z to C:\rf\client
Install Dependencies
This application will install dependencies required by RF on your machine.
rf-dev.net 2019
1. Run C:\rf\server\install\RF Dependencies.exe
2. Click Install.
rf-dev.net 2019
• All Others:
• C:\rf\server\install\msodbcsql_17.msi
Closing
You now have all requirements installed. Proceed to 3: Install Microsoft SQL Server
(MSSQL).
Edited May 9, 2020 by Ron (show revisions)
Summary
This document will walk you through setting up Microsoft SQL Server 2008 Express, then
configuring the game databases. This guide assumes you are installing SQL Server on a
fresh operating system.
If you already have MSSQL installed, skip to 4: Install Game Databases.
Express Limitations
Be advised that SQL Sever Express has specific software limitations and limited tools. The
full and developer versions of SQL Server come with all features available, but are not
publicly available. SQL Server Express may be downloaded publicly directly from
Microsoft's website and meets the minimum requirements to get started with development.
The installation steps will be the same with all 2008 versions. Newer versions of SQL
Server will have additional options but the general steps will be the same.
MSSQL Download
1. Visit Microsoft's website to Download Microsoft SQL Server 2008 R2 SP2
rf-dev.net 2019
3. Run SQLEXPRWT_x64_ENU.exe from your Downloads folder to extract and run
the installer. The installer will run automatically after extraction. Proceed to the next
section.
rf-dev.net 2019
2. Select the option for New Installation
rf-dev.net 2019
4. Ignore the Product Key information and just click Next.
5. Check the box for accepting the License Terms, then click Next
rf-dev.net 2019
7. Click Next
8. Select SQL Server Feature Installation, then click Next. (no image, sorry)
rf-dev.net 2019
10.Allow Installation Rules to process, then click Next.
rf-dev.net 2019
12.Verify disk checks pass, then click Next
rf-dev.net 2019
14.Under Authentication Mode, select Mixed Mode and enter a secure default
password. After, click Add Current User and allow the installer a few moments to
load.
rf-dev.net 2019
15.Verify your user is added, then click Next
rf-dev.net 2019
16.Click Next to skip through the Error Reporting information
rf-dev.net 2019
17.Click Next through the Installation Rules
19.Allow some time for the installer to run. This usually takes around five to ten
minutes.
rf-dev.net 2019
20.Click Close once completed.
rf-dev.net 2019
21.Close the Setup Wizard
2. Locate SQL Server Network Configuration -> Protocols for MSSQL Server, right
click TCP/IP, then select Properties.
rf-dev.net 2019
3. Click on the IP Addresses tab. Change the Enabled option for IP Address
127.0.0.1.
rf-dev.net 2019
4. Verify your settings, then click OK. You will see a warning dialog box advising a
restart. Click OK again.
5. Right click TCP/IP and click Enable. Accept the same extra dialog box when
prompted.
rf-dev.net 2019
6. Verify TCP/IP is Enabled, then close SQL Server Configuration Manager.
7. Open Start -> Run, then type in services.msc and press OK.
rf-dev.net 2019
8. Locate SQL Server (MSSQL), right click it, then select Restart. Allow a moment for
MSSQL to restart.
Verify Connection
Now, let’s confirm we can connect to MSSQL.
1. Find and run SQL Server Management Studio
2. Connect to localhost with Windows Authentication
Closing
You now have a functional instance of MSSQL. You are ready to configure your game
databases and ODBC settings. Proceed to 4: Install
rf-dev.net 2019
Summary
Ensure you have MSSQL installed before proceeding. 3: Install Microsoft SQL Server
(MSSQL)
Create Databases
We are now going to create our new databases to store our game data.
1. Right Click the Databases folder, then click New Database
2. Enter RF_User into the Database name field, then click OK
rf-dev.net 2019
3. Expand the Databases folder, and you should now see the RF_User database.
Restore Databases
Next, we are restoring the clean RF database content into our new databases.
rf-dev.net 2019
1. Right click RF_User, then navigate to Tasks → Restore → Database…
rf-dev.net 2019
3. Click Add on the new dialog
rf-dev.net 2019
4. Browse to the databases folder, then select RF_User.bak and click OK
rf-dev.net 2019
5. Click OK again
7. Check the box for Overwrite the existing database (WITH REPLACE), then click
OK
rf-dev.net 2019
8. Click OK on the success message.
9. Expand RF_User → Databases and observe the tables. Your database now has
content from the clean backup
rf-dev.net 2019
10.Repeat steps 1~9 to restore the following additional databases:
1. RF_World
2. BILLING
Configure ODBC
Finalize your database connectivity by configuring your ODBC settings. ODBC allows
applications to connect to your Microsoft SQL server through various connection drivers.
1. Open ODBC Data Sources (32-bit)
rf-dev.net 2019
2. Click Add to add a new ODBC connection.
3. Select ODBC Driver 17 for SQL Server for the driver. If you are using Windows 7
select ODBC Driver 13 for SQL Server.
Then click Finish.
rf-dev.net 2019
4. Enter RF_User for the Name, localhost for the Server, then click Next.
6. Select to use a Default database with the connection, select the RF_User
database, then click Next
rf-dev.net 2019
7. Click Finish
rf-dev.net 2019
8. Test the new datasource. You should see a success message.
rf-dev.net 2019
9. You will now see the RF_User datasource listed.
Closing
You may now proceed to 5: Install Server.
Summary
This guide will walk you through preparing the RF Online game server.
WARNING: This guide is for general development server configuration. This guide does
not cover setting up a game server for a production purpose, and we do not recommend
following this guide for that purpose.
Server Installation
1. Verify your files are extracted to C:\rf\server
rf-dev.net 2019
Running Servers
You are now ready to start your game servers. This is easily accomplished by the RF
Manager application.
RF Manager
1. Run C:\rf\server\Start Server.bat
2. Allow the application a few moments to load. The game servers will start in the
background.
rf-dev.net 2019
3. The Account, Billing, and Login servers will now be running, but minimized. Here is
what to expect:
1. Account Server
2. Login Server
rf-dev.net 2019
3. Zone Server. Click Display All to show the map mode.
4. In the Login Server Window, use /open to open the server to normal player
accounts. You may login with a GM without using /open.
5. Press Y then ENTER in RF Manager to quickly close all servers. RF Manager will
close automatically.
rf-dev.net 2019
Server Commands
The Account and Login servers have special commands available. Additional
documentation on these commands is coming soon.
Account Server
/login num
/num per world
/worldstart
/worldstop
/userexit
/msg
/worldclose
/worldping
rf-dev.net 2019
/checkzombie
/ipcount
/setmaxuser
/getmaxuser
/setallowipnum
/setallowipnumpcbang
Login Server
/open
/close
/auth
/blockupdate
/loginstat
/clientcount
/delaydown
/delaydown_10
/delayup
Manual Startup
The following section explains how to run the game servers manually instead of through
RF Manager. RF Manager just streamlines this process.
Configure Compatibility
Change the Compatibility properties of the following server binaries to run as administrator.
1. c:/rf/server/account-login/RF_Bin/AccountServerSD.exe
2. c:/rf/server/account-login/RF_Bin/LoginServerSD.exe
3. c:/rf/server/zoneserver/RF_Bin/ZoneServerUD_x64.exe
rf-dev.net 2019
LoginServer
1. Run LoginServerSD.exe
2. Type /open if you are opening the server to non-GM accounts.
AccountServer
1. Run AccountServerSD.exe
ZoneServer
1. Run ZoneServerUD_x64.exe.
NOTE: The zoneserver supports a map view mode which is off by default. Enabling
map view will decrease server performance. Click Display All to show the map
mode.
rf-dev.net 2019
LAN Routing
The following steps address a connectivity bug when connecting from a LAN network. This
bug is also present within Windows 7.
WARNING: Only try this if you are setting up a LAN server, or if you are using an older
system such as Windows 7, and are experiencing connectivity issues.
Quote
rf-dev.net 2019
2. Locate the Address0 line.
3. Update this to your LAN IP, obtained from ipconfig. Here is an example.
The local IP here is 192.168.1.10.
rf-dev.net 2019
Closing
You now have a running game server! Proceed to 6: Account Creation to setup GM and
player accounts.
Summary
Creating game accounts requires running queries against your user database. If you're
already aware of how to run queries in MSSQL, skip to the Player Accounts section.
Database Queries
Queries allow you to insert, modify, and delete game data in the database. Here is how to
work with them.
WARNING: Always use caution when running database queries. Queries make immediate
changes to your databases and are not always easily reversible.
1. Right click the desired database, then click New Query
rf-dev.net 2019
2. Modify your query using the text editor, then click Execute
Creating Accounts
Players
Create a player account named test1 with a password of test1.
rf-dev.net 2019
Notice: Type /open in your login server to allow normal players to connect. GM accounts
bypass this restriction.
-- RF_User
-- Version: RF-Dev Game Files
INSERT INTO dbo.tbl_RFTestAccount
(id, password, BCodeTU)
VALUES
(CONVERT(binary, 'test1'), CONVERT(binary, 'test1'), 0);
Game Masters
Create a GM account named !test1 with a password of test1 using the following query.
Additional steps are required after the query and before you can login.
If your GM account name is not on the Login_Filter_Dev.ini you won't be able to use all
the GM commands! Check below how to do this.
-- RF_User
-- Version: RF-Dev Game Files
DECLARE @RC int
DECLARE @id varchar(13)
DECLARE @pw varchar(13)
DECLARE @depart varchar(32)
DECLARE @class varchar(12)
DECLARE @name varchar(12)
DECLARE @birthday varchar(10)
DECLARE @grade int
DECLARE @subgrade int
SELECT @id = '!test1'
SELECT @pw = 'test1'
SELECT @depart = 'none'
SELECT @class = 'GM'
SELECT @name = 'name'
SELECT @birthday = 'None'
SELECT @grade = 2
SELECT @subgrade = 2
EXEC @RC = [rf_user].[dbo].[pInsert_Staff] @id, @pw, @depart, @class, @name, @birthday, @grade,
@subgrade
DECLARE @PrnLine nvarchar(4000)
PRINT 'Stored Procedure: rf_user.dbo.pInsert_Staff'
SELECT @PrnLine = ' Return Code = ' + CONVERT(nvarchar, @RC)
rf-dev.net 2019
Replace the contents with the files below, adding as many filters as needed. The first filter
must start with zero. This example assumes your username is !test1 and that you will be
connecting from 127.0.0.1 (localhost).
[IPAddress]
FilterNum = 1
Filter0 = 127.0.0.1
FilterRange0 = 255
[ID]
FilterNum = 1
Filter0 = !test1
Closing
You now know how to run manual queries to create player and GM accounts. Modifying
other aspects of the database may be completed in the same way. Always use caution as
all changes are permanent. Modifying some data may also provide unexpected results.
Summary
At this stage your server is now running and you have game accounts created. It's time to
login!
Client Installation
1. Extract the client files to C:\rf\client
rf-dev.net 2019
2. Run C:\rf\client\RFLauncher.exe
3. Enter your username and password, then press Enter or click Launch to start the
game.
When logging in with a GM account remember to use ! infront of the username. All
GM accounts start with ! ie. !username
Closing
Congratulations, you've completed our Starter Guide! You now have a fully functional local
development game server. Now the real fun begins!
Proceed on to 8: GM Commands to learn about the available in-game management
commands.
This is the end of our official wiki content for now. We have vast community content and
we recommend taking a look through available resources. Keep in mind some topics
discussed apply to different versions of the game and do not directly apply to our game
files, but may still work with them. Use the Game Files section for all discussion dedicated
to the files you have just finished setting up.
Your next best step is reviewing the Structorian Guide written by @Alyx. This guide will
explain how to use Structorian to parse and modify RF data formats. Official wiki content
on various game data formats is coming soon.
rf-dev.net 2019
Get Involved
The latest news happens on Discord! Join and check out #game-files as well as our other
channels. If you see us in #v-lounge drop in and say hello!
Happy developing!
rf-dev.net 2019