If you want to help us maintaining this wiki, check out our discord server: https://discord.gg/3u69jMa 

Difference between revisions of "Setting up a Server"

From SWRC Wiki
Jump to navigation Jump to search
 
(6 intermediate revisions by the same user not shown)
Line 1: Line 1:
This page will help you setting up a dedicated Republic Commando server.
==Requirements==
==Requirements==
*Windows operating system           (Linux guide will follow)
* Windows operating system (For Linux: [[Run a server on Linux with UCC]])
*Graphical User Interface - GUI    (No need for that with UCC)
* Microsoft Visual C++ 2005 Redistributable x86 and x64
*Microsoft Visual C++ 2005 Redistributable x86 and x64
* Game files need to be present on host system
*Some RAM and CPU power, todays computers are strong enough
* Republic Commando UCC
*Game files need to be present on host system


==Setting up shortcut==
==Setup==
Create a shortcut of SWRepublicCommando.exe, open up its properties and add this line at the end:
* Download [[Republic Commando UCC]] and install it into GameData/System folder
<pre>
* Create a shortcut for UCC tool and add this parameter on target line:
-server -ini=System.ini
</pre>
So it should look like this:
<pre>
<pre>
...System\SWRepublicCommando.exe" -server -ini=System.ini
Engine.ServerCommandlet
</pre>
</pre>
The name of the ini file can be variable as long it exists.
* If necessary, forward ports 7777 TCP/UDP and 11138 TCP/UDP on your gateway. (Router)


==Configure System.ini==
==Configure System.ini==
Open up System.ini file with notepad.
Open up GameData\System\System.ini file with notepad.
 
===Entry Point===


Change
===URL===
Change the lines
<pre>
<pre>
Map=Entry.ctm
Map=Entry.ctm
Line 34: Line 27:
LocalMap=DM_Siege?Game=MPGame.DMGame
LocalMap=DM_Siege?Game=MPGame.DMGame
</pre>
</pre>
Both lines have to be identical!!!


This will boot the server into Arena A17 with DeathMatch gamemode.
This will boot the server into Arena A17 with DeathMatch gamemode.


The commandline syntax is always: Mapname, Gamemode, Additional parameters
The commandline syntax is: Mapname, Gamemode, Additional parameters
 
* Note: Parameters get seperated by "?" symbol
 
===IpDrv.TcpNetDriver===
Change NetServerMaxTickRate attribute to 35.


*Note: Parameters get seperated with ? symbol
<pre>
NetServerMaxTickRate=35
</pre>


===Maps===
===IpDrv.MasterServerUplink===
Change the AdvertiseServer attribute accordingly if you want to announce server on LAN or internet.


<pre>
;Set the below to broadcast on Lan
;Set this to 2 to broadcast to gamespy
AdvertiseServer=2
</pre>
===[Engine.GameReplicationInfo]===
Change the server name being displayed on internet browser.
<pre>
ServerName= My cool server
ShortName=RC Server
</pre>
==Maps==
Available Maps for DM/TDM:
Available Maps for DM/TDM:
<pre>
<pre>
Line 72: Line 87:
</pre>
</pre>


Booting up a CTF map for DM/TDM gamemode doesn't matter, but booting up a DM map for CTF/AS gamemode will have the sideeffect that flags won't spawn.
==Gamemodes==
 
===Gamemodes===
 
Available gamemodes:
Available gamemodes:
<pre>
<pre>
Line 84: Line 96:
</pre>
</pre>


===Additional Parameters===
==Additional Parameters==
 
Available parameters:
Available parameters:
(X represents a number)
(Y represents a string)
<pre>
<pre>
GoalScore=X          -Set the score
GoalScore=           -Set the score limit
Timelimit=X          -Set the timelimit in minutes
Timelimit=           -Set the timelimit in minutes
MaxPlayers=X        -Set max players for server, maximum is 32
MaxPlayers=         -Set max players for server
MaxSpectators=X      -Set max spectators for server, maximum is 32
MaxSpectators=       -Set max spectators for server
RespawnWaitTime=X    -Set respawn time, maximum are 7 seconds
RespawnWaitTime=     -Set respawn time, maximum are 7 seconds
MapListType=Y        -Tell the server to use this map list pool
MapListType=         -Tell the server to use this map list pool
NumRounds=8          -For Assault gamemode, set the number of rounds until match ends
NumRounds=           -For Assault gamemode, set the number of rounds until match ends
RoundTime=300        -For Assault gamemode, set the round time in seconds
RoundTime=           -For Assault gamemode, set the round time in seconds
bEmptyTeamStart=    -Set to either True or False, tells the game to start even if only one player joined
</pre>
</pre>


===Conclusion===
==Conclusion==
 
Example commandline:
Using this line
<pre>
<pre>
CTF_Siege?Game=MPGame.CTFGame?GoalScore=50?Timelimit=60?MaxPlayers=32?MaxSpectators=8?RespawnWaitTime=4?MapListType=MPGame.MapListCaptureTheFlag
CTF_Siege?Game=MPGame.CTFGame?GoalScore=3?Timelimit=60?MaxPlayers=32?MaxSpectators=8?RespawnWaitTime=4?MapListType=MPGame.MapListCaptureTheFlag
</pre>
</pre>
will boot the server into:
Result:
*Arena A17
* Arena A17
*Set the score to 50 points
* Capture The Flag gamemode
*Set the timelimit to 1 hour (60 minutes)
* Set the score to 3 points
*Max players set to 32
* Set the timelimit to 1 hour (60 minutes)
*Max spectators set to 8
* Max players set to 32
*Respawn time set to 4 seconds
* Max spectators set to 8
*Use maps from MapListCaptureTheFlag pool
* Respawn time set to 4 seconds
* Use maps from MapListCaptureTheFlag pool


For the map list pools, see below.
==Add server to ingame browser==
Download server browser fix from [[Useful Stuff for Client]] and install it accordingly. When set to broadcasting on internet, it should appear on server list.


===Add the server to ingame browser===
==Map pools==
 
Map list pools are found at the end of System.ini file and are used to cycle through maps/gamemodes.
Both, client and server, need [http://www.moddb.com/mods/star-wars-republic-commando-graphics-fix/downloads/republic-commando-multiplayer-fix-updated this] patch installed in order to see/put servers on master list for ingame browser.
 
Search for
<pre>
[IpDrv.MasterServerUplink]
;Set the below to broadcast on Lan
;Set this to 2 to broadcast to gamespy
AdvertiseServer=2
</pre>
and set it to 2 in order to broadcast it on the browser.
 
===Change server name===
 
Search for
<pre>
[Engine.GameReplicationInfo]
ServerName=Republic Commando Server
ShortName=RC Server
</pre>
and change ServerName to your desired name.
 
===Map pools===
 
At the end of your ini file, you will find 5 default map pools. The structure is always the same. Besides those default pools, you can add custom pools aswell.
 
The commandline parameters from the top always get carried to the new map on map change as long you dont change them. You can of course change stuff like gamemode.


<pre>
<pre>
[MPGame.MapListMix]
[MPGame.MapListCaptureTheFlag]
MapNum=0
MapNum=0
Maps=DM_Siege?Game=MPGame.DMGame?GoalScore=50?timelimit=60
Maps=DM_Siege?Game=MPGame.DMGame?GoalScore=50?timelimit=60
Line 166: Line 151:
Maps+=DM_Underpass?Game=MPGame.DMGame?GoalScore=25?timelimit=10
Maps+=DM_Underpass?Game=MPGame.DMGame?GoalScore=25?timelimit=10
</pre>
</pre>
Note:
*MapNum=0 needs to be there, to be honest I don't know why
*Every other map on slot 2 or higher has to be added with Maps+=XXX instead of Maps=XXX
==System.ini file in Save folder==
After first start of server and closing it after boot up, take a look at the System.ini file in \GameData\Save folder.
It's not only a 1 to 1 copy of the System.ini from System folder, it also adds some extra config stuff at the end.
For example you will find something like this at the end:
<pre>
[MPGame.TDGame]
bBalanceTeams=True                -Balance teams?
bEmptyTeamStart=True              -Let the player spawn on TDM/CTF/AS when he is alone
bPermanentDeath=False            -No effect
RoundTime=0                      -Assault stuff
NumRounds=0                      -Assault stuff
MaxTeamSize=16                    -Change the maximum numbers of players per team
FriendlyFireScale=0              -Friendly fire in %
bPlayersMustBeReady=False        -No effect
bForceRespawn=False              -Respawn players automatically
bAdjustSkill=False                -No effect
bAllowTaunts=True                -No effect
SpawnProtectionTime=2            -Set spawnprotection in seconds
bTeamScoreRounds=False            -No effect, N/A
RespawnWaitTime=7                -Respawn time in seconds
bWeaponStay=False                -No effect
bAllowWeaponThrowing=True        -No effect
bAllowBehindView=False            -No effect
MapListType=                      -Assign a map list pool
GoalScore=0                      -Set score limit
TimeLimit=0                      -Set time limit
</pre>
These are default values which are always getting loaded. Most of them are self explaining.
*They can also be added to the commandline!

Latest revision as of 09:49, 14 May 2021

Requirements

  • Windows operating system (For Linux: Run a server on Linux with UCC)
  • Microsoft Visual C++ 2005 Redistributable x86 and x64
  • Game files need to be present on host system
  • Republic Commando UCC

Setup

  • Download Republic Commando UCC and install it into GameData/System folder
  • Create a shortcut for UCC tool and add this parameter on target line:
Engine.ServerCommandlet
  • If necessary, forward ports 7777 TCP/UDP and 11138 TCP/UDP on your gateway. (Router)

Configure System.ini

Open up GameData\System\System.ini file with notepad.

URL

Change the lines

Map=Entry.ctm
LocalMap=Entry.ctm

to

Map=DM_Siege?Game=MPGame.DMGame
LocalMap=DM_Siege?Game=MPGame.DMGame

This will boot the server into Arena A17 with DeathMatch gamemode.

The commandline syntax is: Mapname, Gamemode, Additional parameters

  • Note: Parameters get seperated by "?" symbol

IpDrv.TcpNetDriver

Change NetServerMaxTickRate attribute to 35.

NetServerMaxTickRate=35

IpDrv.MasterServerUplink

Change the AdvertiseServer attribute accordingly if you want to announce server on LAN or internet.

;Set the below to broadcast on Lan
;Set this to 2 to broadcast to gamespy
AdvertiseServer=2

[Engine.GameReplicationInfo]

Change the server name being displayed on internet browser.

ServerName= My cool server
ShortName=RC Server

Maps

Available Maps for DM/TDM:

DM_Canyon           -Gunship
DM_Detention        -Lockdown
DM_Engine           -Engine
DM_Hangar           -Hangar
DM_HangingGarden    -Garden
DM_Pow              -Garrison
DM_PowSmall         -Depot
DM_Siege            -Arena A17
DM_Trando           -Ghostship
DM_UnderPass        -Kachirho
DM_ZeroG            -Arena G9

Available Maps for CTF/AS:

CTF_Detention        -Lockdown
CTF_Engine           -Engine
CTF_Hangar           -Hangar
CTF_HangingGarden    -Garden
CTF_Pow              -Garrison
CTF_Siege            -Arena A17
CTF_Trando           -Ghostship
CTF_UnderPass        -Kachirho
CTF_ZeroG            -Arena G9

Gamemodes

Available gamemodes:

MPGame.DMGame        -Deathmatch
MPGame.TDGame        -TeamDeathmatch
MPGame.CTFGame       -Capture the flag
MPGame.ASGame        -Assault

Additional Parameters

Available parameters:

GoalScore=           -Set the score limit
Timelimit=           -Set the timelimit in minutes
MaxPlayers=          -Set max players for server
MaxSpectators=       -Set max spectators for server
RespawnWaitTime=     -Set respawn time, maximum are 7 seconds
MapListType=         -Tell the server to use this map list pool
NumRounds=           -For Assault gamemode, set the number of rounds until match ends
RoundTime=           -For Assault gamemode, set the round time in seconds
bEmptyTeamStart=     -Set to either True or False, tells the game to start even if only one player joined

Conclusion

Example commandline:

CTF_Siege?Game=MPGame.CTFGame?GoalScore=3?Timelimit=60?MaxPlayers=32?MaxSpectators=8?RespawnWaitTime=4?MapListType=MPGame.MapListCaptureTheFlag

Result:

  • Arena A17
  • Capture The Flag gamemode
  • Set the score to 3 points
  • Set the timelimit to 1 hour (60 minutes)
  • Max players set to 32
  • Max spectators set to 8
  • Respawn time set to 4 seconds
  • Use maps from MapListCaptureTheFlag pool

Add server to ingame browser

Download server browser fix from Useful Stuff for Client and install it accordingly. When set to broadcasting on internet, it should appear on server list.

Map pools

Map list pools are found at the end of System.ini file and are used to cycle through maps/gamemodes.

[MPGame.MapListCaptureTheFlag]
MapNum=0
Maps=DM_Siege?Game=MPGame.DMGame?GoalScore=50?timelimit=60
Maps+=CTF_Detention?Game=MPGame.ASGame?GoalScore=0?RoundTime=240?NumRounds=2?timelimit=0
Maps+=DM_Hangar?Game=MPGame.TDGame?GoalScore=40?timelimit=10?NumRounds=0?RoundTime=0
Maps+=CTF_HangingGarden.ctm?Game=MPGame.ASGame?GoalScore=0?RoundTime=240?NumRounds=2?timelimit=0
Maps+=DM_ZeroG?Game=MPGame.DMGame?GoalScore=25?timelimit=10?NumRounds=0?RoundTime=0
Maps+=CTF_Underpass?Game=MPGame.CTFGame?GoalScore=3?timelimit=10
Maps+=DM_POW?Game=MPGame.TDGame?GoalScore=35?timelimit=10
Maps+=DM_Canyon?Game=MPGame.DMGame?GoalScore=25?
Maps+=CTF_Trando?Game=MPGame.CTFGame?GoalScore=3?timelimit=10
Maps+=DM_Engine?Game=MPGame.TDGame?GoalScore=35?timelimit=10
Maps+=DM_Siege?Game=MPGame.DMGame?GoalScore=25?timelimit=10
Maps+=DM_Detention?Game=MPGame.TDGame?GoalScore=35
Maps+=CTF_Hangar?Game=MPGame.ASGame?GoalScore=0?RoundTime=240?NumRounds=2?timelimit=0
Maps+=DM_HangingGarden.ctm?Game=MPGame.TDGame?GoalScore=35?RoundTime=0?NumRounds=0?timelimit=10
Maps+=CTF_ZeroG?Game=MPGame.CTFGame?GoalScore=5?timelimit=10
Maps+=DM_Underpass?Game=MPGame.DMGame?GoalScore=25?timelimit=10