Sign inSign up

eugensystems/wargame3

By eugensystems

•Updated over 5 years ago

Dedicated server for Wargame: Red Dragon

Image
5

2.8K

eugensystems/wargame3 repository overview

⁠What is Wargame: Red Dragon

Wargame: Red Dragon is thrilling in single-player mode with its new dynamic campaign system, and also offers an extensive multiplayer mode where up to 20 players can compete against each other simultaneously.

⁠How to use this image

⁠Prerequesites

You must have installed docker engine on the host server.

If the host server run on Windows, you will need to start the commands using a shell compatible with Linux commands (git bash for example).

⁠Downloading the image

The latest image is available on Docker Hub. Downloading it is somewhat automatic when used for the first time, but you'll need to manually pull it to get any updates later on.

docker pull eugensystems/wargame3

⁠Obtaining access key

Any person willing to run a dedicated server, please contact us at this [email protected]⁠. Send us an email requestion access to the dedicated servers request for access. Please include your EugNet login in the email. Only send un your login. We don't need your password or your Steam login.

⁠Creating the server configuration data

With that information, we'll be able to start a simple server as example.

We'll create an empty settings folder and add login.ini and variables.ini inside like that:

mkdir settings
cat <<EOF > settings/login.ini
login="mylogin"
dedicated_key="apikey"
EOF
cat <<EOF > settings/variables.ini
Name = My Custom Server
EOF

Replace mylogin with your EugNet login, and apikey with the key the support will send you.

You can then bind this folder in the container with a command line option like --mount type=bind,src=$(pwd)/settings,target=/server/settings.

⁠Starting docker container

It is recommended to start the docker in the host network but you can freely use some other private network as long as the correct public visible IP and Port are set. Just make sure you forward both UDP and the TCP to the exposed port because the server needs both to work.

export EXPOSEDIP=XX.XX.XX.XX
export EXPOSEDPORT=XXXX
docker run -d --net host --name war3-server -e EXPOSEDIP -e EXPOSEDPORT --mount type=bind,src=$(pwd)/settings,target=/server/settings eugensystems/wargame3

EXPOSEDIP should be set to the visible server IP. If your server is behind a router, just make sure the packets will be forwarded from the public IP. EXPOSEDPORT will be the server port used and the one where the game clients will try to connect to.

If you'd rather not or cannot use the host network (for example, if you start the Docker in a Windows host), you can instead publish the port to the host. Remember to publish both TCP and UDP.

docker run -d --name war3-server -e EXPOSEDIP -e EXPOSEDPORT --mount type=bind,src=$(pwd)/settings,target=/server/settings -p $EXPOSEDPORT:$EXPOSEDPORT/udp -p $EXPOSEDPORT:$EXPOSEDPORT eugensystems/wargame3

⁠RCon administration

You can use rcon protocol to kick/ban people or change some server properties at runtime.

⁠Setup

First you need to enable rcon by setting a password and port. You do that with the command line options +rcon_password and +rcon_port. You should then be able to connect using a rcon client.

docker run -d --net host --name war3-server -e EXPOSEDIP -e EXPOSEDPORT --mount type=bind,src=$(pwd)/settings,target=/server/settings eugensystems/wargame3 +rcon_password admin +rcon_port 12000
⁠Usage

Once you connected to the server with a rcon client, you can use those commands:

display_all_clients                         -> Display the list of connected clients with their Id
kick CLIENT_ID                              -> Kick the client with Id CLIENT_ID
kick CLIENT_PSEUDO                          -> Kick the client with pseudo CLIENT_PSEUDO (CLIENT_PSEUDO can be a part of his real pseudo)
ban CLIENT_ID DELAY_IN_HOUR                 -> Ban the player with Id CLIENT_ID for DELAY_IN_HOUR hours
ban CLIENT_PSEUDO DELAY_IN_HOUR             -> Ban the player with pseudo CLIENT_PSEUDO for DELAY_IN_HOUR hours (CLIENT_PSEUDO can be a part of his real pseudo)
unban CLIENT_ID                             -> Unban the player with Id CLIENT_ID
setsvar VARIABLE_NAME VARIABLE_VALUE        -> Allow you to change one of the settings of the server (have a look at variables.ini)

⁠Configuration file variables.ini

Unless otherwise mentionned, all the durations are in seconds.

⁠Basic settings

ServerName Server name as it will be shown on the server browser in the game.

NbMaxPlayer How many players can join the server. Maximum of 20.

GameType Faction settings.

  • 0 NATO vs PACT (default)
  • 1 NATO vs NATO
  • 2 PACT vs PACT

InitMoney Amount of money which will be shared between players at game start. Defaults to 4000

TimeLimit Game maximum duration. 0 means unlimited. Defaults to 1200.

ScoreLimit Score to reach to win. Defaults to 4000.

Map Specify the Id of the map. See the map list section for the list of valid values.

VictoryCond Victory condition for the game to end.

  • 1 Destruction (default)
  • 2 Siege
  • 3 Economy
  • 4 Conquest
  • 5 Breakthrough Conquest

You will need to select a map that supports the desired victory condition.

NbMinPlayer Number of players needed to start a game. It shouldn't be set to a value higher than NbMaxPlayer. The server will start a countdown to launch the game when that number is reached.

WarmupCountdown Time before the game automatically starts once the minimum number of players is reached. Value must be set to 10 at least.

LoadingTimeMax Time the server will wait for all the clients to finish loading before starting the Deployment phase. Any user that doesn't finish the loading in time will be at risk of getting kicked. Value must be set to 60 at least.

DeploiementTimeMax Deployment phase duration before it forces the game to start even if all players aren't ready yet. Value must be set to 10 at least.

DebriefingTimeMax Debriefing maximum duration. During that time players will decide if they want to stay in the server for the next game or not.

DeltaMaxTeamSize Specify the maximum difference in player count between the two teams. Players will not be allowed to join the bigger team if it breaks this rule. Defaults to 10

MaxTeamSize Maximum number of players in each team.

IncomeRate Income is the amount of money over time the players gain. 0. None

  1. Very low
  2. Low
  3. Normal (default)
  4. High
  5. Very high

NationConstraint Specify the deck nation constraint

  • -1 None (default)
  • 0 Any
  • 1 Nation
  • 2 Coalition

ThematicConstraint Specify the deck thematic constraint

  • -2 Any
  • -1 None (default)
  • 0 Motorized
  • 1 Armored
  • 2 Support
  • 3 Marine
  • 4 Mechanized
  • 5 Airborne
  • 6 Naval

DateConstraint Specify the deck date constraint

  • -1 None (default)
  • 0 1981 to 1985
  • 1 1980 and less

⁠Map list

IdName
Destruction_2x2_port_Wonsan_Terrestre1vs1 Wonsan harbour (Destruction, Economy)
Destruction_2x2_port_Wonsan1vs1 Wonsan harbour (Land/Sea) (Destruction, Economy)
Destruction_2x3_Hwaseong1vs1 Nuclear winter is coming (Destruction, Economy)
Destruction_2x3_Esashi1vs1 Tropic Thunder (Destruction, Economy)
Destruction_2x3_Boseong1vs1 Apocalypse Imminent (Destruction, Economy)
Destruction_2x3_Tohoku2vs2 Paddy Field (Destruction, Economy)
Destruction_2x3_Anbyon2vs2 Hop and Glory (Destruction, Economy)
Destruction_2x3_Gangjin1v1 Mud Fight ! (Destruction, Economy)
Destruction_2x3_Montagne_23vs3 Cliff Hanger (Destruction, Economy)
Destruction_3x2_Boryeong_Terrestre2vs2 Gunboat diplomacy (Destruction, Economy)
Destruction_3x2_Haenam3vs3 Back to Inchon (Destruction, Economy)
Destruction_3x3_Marine_24vs4 Smoke in the water (Land/Sea) (Destruction, Economy)
Destruction_3x3_Marine_33vs3 Another D-Day in paradise (Land/Sea) (Destruction, Economy)
Destruction_3x2_Boryeong3vs3 Gunboat diplomacy (Land/Sea) (Destruction, Economy)
Destruction_3x2_Taean3vs3 Bloody Ridge (Destruction, Economy)
Destruction_3x2_Taebuko2vs2 Jungle LAW (Destruction, Economy)
Destruction_3x2_Sangju2vs2 Tough Jungle (Destruction, Economy)
Destruction_3x2_Montagne_32vs2 Chosin Reservoir (Destruction, Economy)
Destruction_3x3_Muju1vs1 Plunjing Valley (Destruction, Economy)
Destruction_3x3_Pyeongtaek3vs3 38th Parallel (Destruction, Economy)
Destruction_3x3_Marine_3_Terrestre2vs2 Another D-Day in paradise (Destruction, Economy)
Destruction_3x3_Montagne_14vs4 Cold War Z (Destruction, Economy)
Destruction_3x3_Montagne_43vs3 A Maze in Japan (Destruction, Economy)
Destruction_3x3_Chongju4vs4 Korea Rocks (Destruction, Economy)
Destruction_3x3_Gangjin4vs4 Floods (Destruction, Economy)
Destruction_4x4_Marine_61vs1 Out of the blue (Destruction, Economy)
Destruction_4x4_Marine_71vs1 Standoff in Barents (Destruction, Economy)
Destruction_4x4_Marine_92vs2 Bulldogs and Vampires (Destruction, Economy)
Destruction_4x4_Marine_102vs2 Alea Jacta West (Destruction, Economy)
Destruction_4x4_Marine_43vs3 Atoll Inbound (Destruction, Economy)
Destruction_4x4_Marine_53vs3 Waterworld (Destruction, Economy)
Destruction_5x3_Marine_1_small_Terrestre1vs1 Strait to the point (small) (Destruction, Economy)
Destruction_5x3_Marine_1_small2vs2 Strait to the point (small) (Land/Sea) (Destruction, Economy)
Destruction_5x3_Marine_1_Terrestre3vs3 Strait to the point (Destruction, Economy)
Destruction_5x3_Marine_14vs4 Strait to the point (Land/Sea) (Destruction, Economy)
Destruction_5x3_Asgard_10v1010vs10 Asgard (Destruction, Economy)
Destruction_5x3_Gjoll_10v1010vs10 Gjoll (Destruction, Economy)
Destruction_4x4_Russian_Roulette10vs10 Russian Roulette (Destruction, Economy)
Conquete_2x2_port_Wonsan_Terrestre1vs1 Wonsan harbour (Conquest)
Conquete_2x2_port_Wonsan1vs1 Wonsan harbour (Land/Sea) (Conquest)
Conquete_2x3_Hwaseong1vs1 Nuclear winter is coming (Conquest)
Conquete_2x3_Boseong1vs1 Apocalypse Imminent (Conquest)
Conquete_2x3_Esashi1vs1 Tropic Thunder (Conquest)
Conquete_2x3_Tohoku2vs2 Paddy Field (Conquest)
Conquete_2x3_Anbyon2vs2 Hop and Glory (Conquest)
Conquete_2x3_Gangjin1vs1 Mud Fight ! (Conquest)
Conquete_2x3_Montagne_23vs3 Cliff Hanger (Conquest)
Conquete_3x2_Boryeong_Terrestre2vs2 Gunboat diplomacy (Conquest)
Conquete_3x2_Montagne_32vs2 Chosin Reservoir (Conquest)
Conquete_3x2_Sangju2vs2 Tough Jungle (Conquest)
Conquete_3x2_Taebuko2vs2 Jungle LAW (Conquest)
Conquete_3x2_Boryeong3vs3 Gunboat diplomacy (Land/Sea) (Conquest)
Conquete_3x2_Taean3vs3 Bloody Ridge (Conquest)
Conquete_3x2_Haenam3vs3 Back to Inchon (Conquest)
Conquete_3x3_Marine_24vs4 Smoke in the water (Land/Sea) (Conquest)
Conquete_3x3_Marine_33vs3 Another D-Day in paradise (Land/Sea) (Conquest)
Conquete_3x3_Muju1vs1 Plunjing Valley (Conquest)
Conquete_3x3_Pyeongtaek3vs3 38th Parallel (Conquest)
Conquete_3x3_Marine_3_Terrestre2vs2 Another D-Day in paradise (Conquest)
Conquete_3x3_Montagne_14vs4 Cold War Z (Conquest)
Conquete_3x3_Montagne_43vs3 A Maze in Japan (Conquest)
Conquete_3x3_Chongju4vs4 Korea Rocks (Conquest)
Conquete_3x3_Gangjin4vs4 Floods (Conquest)
Conquete_4x4_Marine_61vs1 Out of the blue (Conquest)
Conquete_4x4_Marine_71vs1 Standoff in Barents (Conquest)
Conquete_4x4_Marine_92vs2 Bulldogs and Vampires (Conquest)
Conquete_4x4_Marine_102vs2 Alea Jacta West (Conquest)
Conquete_4x4_Marine_43vs3 Atoll Inbound (Conquest)
Conquete_4x4_Marine_53vs3 Waterworld (Conquest)
Conquete_5x3_Marine_1_small_Terrestre1vs1 Strait to the point (small) (Conquest)
Conquete_5x3_Marine_1_small2vs2 Strait to the point (small) (Land/Sea) (Conquest)
Conquete_5x3_Marine_1_Terrestre3vs3 Strait to the point (Conquest)
Conquete_5x3_Marine_14vs4 Strait to the point (Land/Sea) (Conquest)
Conquete_5x3_Asgard_10v1010vs10 Asgard (Conquest)
Conquete_5x3_Gjoll_10v1010vs10 Gjoll (Conquest)
Conquete_4x4_Russian_Roulette10vs10 Russian Roulette (Conquest)

Tag summary

Content type

Image

Digest

Size

77 MB

Last updated

over 5 years ago

docker pull eugensystems/wargame3