Check out our discord at https://discord.gg/3u69jMa 

Files and Useful Stuff (Server) and Create Basic Server (Windows): Difference between pages

From SWRC Wiki
(Difference between pages)
Jump to navigation Jump to search
No edit summary
 
No edit summary
 
Line 1: Line 1:
A list of useful stuff for your server:
Note: This guide is intended for dedicated servers, not servers started from the ingame menu!


== RC UCC ==
== Requirements ==


A commandline tool (UCC) to make it easier to use commandlets and run server via command shell: [https://github.com/SWRC-Modding/CT/releases download]
* Windows operating system (For Linux: [[Run Server on Linux]])
* Microsoft Visual C++ 2005 Redistributable x86 and x64
* Game files need to be present on host system
* [[Republic Commando UCC]]


== Gamespy Fix ==
== Setup ==


A patched GameSpyMgr.dll file to route game server to an alternative master server so it's shown in server browser again. (optional) (Service provided by [http://beta.openspy.net/en/ OpenSpy]) [https://github.com/SWRC-Modding/CT/releases download]
* Download Republic Commando UCC and install it into GameData/System folder
* Create a shortcut for UCC.exe and add this parameter on target line: <code>Engine.ServerCommandlet</code>
* It should like below (absolute paths may be different depending on installation location):
<pre>
"C:\Program Files (x86)\Steam\steamapps\common\Star Wars Republic Commando\GameData\System\UCC.exe" Engine.ServerCommandlet
</pre>
* Forward the server connect port (default 7777) for TCP and UDP in your router/firewall
* Optionally, forward the gamespy master server port 11138 for TCP and UDP if you want to see your server on the list
* If running multiple servers on same machine/network interface, the gamespy port increases by one automatically for each server instance. A second server would use 11139, a third server 11140 and so on


== No CD key validation ==
== Configure System\System.ini ==


A patched IpDrv.dll to disable CD key validation on the server. [[File:IpDrv-NoCDkeyValidation.zip|thumb|alt=download]]
Open up GameData\System\System.ini file with notepad. (Notepad++ recommended)


== Discord Webhook ==


A pure server plugin to send game server data to a discord webhook: [https://github.com/ffsPLASMA/swrc-discordwebhook/releases download]
'''[URL]'''
 
Change the lines
<pre>
Map=Entry.ctm
LocalMap=Entry.ctm
</pre>
to
<pre>
Map=DM_Siege?Game=MPGame.DMGame
LocalMap=DM_Siege?Game=MPGame.DMGame
</pre>
This will boot the server into Arena A17 on DeathMatch gamemode.
 
The commandline syntax is: Mapname, Gamemode, additional parameters.
* Parameters get seperated by "?" symbol
 
 
'''Additional Parameters'''
 
<pre>
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
</pre>
 
 
'''Example'''
 
The following example will boot the server into Arena A17 (CTF version) with the gamemode capture the flag, goal limit set to 3 (captures), 60 minute timelimit per map, 32 player slots, 8 spectator slots, 4 second respawntime and ctf maplist:
 
<code>CTF_Siege?Game=MPGame.CTFGame?GoalScore=3?Timelimit=60?MaxPlayers=32?MaxSpectators=8?RespawnWaitTime=4?MapListType=MPGame.MapListCaptureTheFlag</code>
 
 
'''IpDrv.TcpNetDriver'''
 
Change NetServerMaxTickRate attribute to 35 for smoother network play.
 
<pre>
NetServerMaxTickRate=35
</pre>
 
 
'''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. Parameter "ShortName" is unused!
 
<pre>
ServerName=My cool server
ShortName=RC Server
</pre>
 
== Default Gamemodes ==
 
<pre>
MPGame.DMGame        -Deathmatch
MPGame.TDGame        -TeamDeathmatch
MPGame.CTFGame      -Capture the flag
MPGame.ASGame        -Assault
</pre>
 
== Default Maps ==
 
Available Maps for DM/TDM:
 
<pre>
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
</pre>
 
Available Maps for CTF/AS:
 
<pre>
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
</pre>
 
== Map pools ==
 
Map list pools are found at the end of System.ini file and are used to cycle through maps/gamemodes.
 
This example switches maps and modes on each round end:
 
<pre>
[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
</pre>

Revision as of 12:45, 21 June 2024

Note: This guide is intended for dedicated servers, not servers started from the ingame menu!

Requirements

Setup

  • Download Republic Commando UCC and install it into GameData/System folder
  • Create a shortcut for UCC.exe and add this parameter on target line: Engine.ServerCommandlet
  • It should like below (absolute paths may be different depending on installation location):
"C:\Program Files (x86)\Steam\steamapps\common\Star Wars Republic Commando\GameData\System\UCC.exe" Engine.ServerCommandlet
  • Forward the server connect port (default 7777) for TCP and UDP in your router/firewall
  • Optionally, forward the gamespy master server port 11138 for TCP and UDP if you want to see your server on the list
  • If running multiple servers on same machine/network interface, the gamespy port increases by one automatically for each server instance. A second server would use 11139, a third server 11140 and so on

Configure System\System.ini

Open up GameData\System\System.ini file with notepad. (Notepad++ recommended)


[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 on DeathMatch gamemode.

The commandline syntax is: Mapname, Gamemode, additional parameters.

  • Parameters get seperated by "?" symbol


Additional 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


Example

The following example will boot the server into Arena A17 (CTF version) with the gamemode capture the flag, goal limit set to 3 (captures), 60 minute timelimit per map, 32 player slots, 8 spectator slots, 4 second respawntime and ctf maplist:

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


IpDrv.TcpNetDriver

Change NetServerMaxTickRate attribute to 35 for smoother network play.

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. Parameter "ShortName" is unused!

ServerName=My cool server
ShortName=RC Server

Default Gamemodes

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

Default 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

Map pools

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

This example switches maps and modes on each round end:

[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