eggs/game_eggs/eugen/wargame-red-dragon/egg-wargame-red-dragon.json
2021-08-17 19:15:00 +02:00

95 lines
20 KiB
JSON

{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1",
"update_url": null
},
"exported_at": "2021-08-17T08:18:54-05:00",
"name": "Wargame: Red Dragon",
"author": "f.falk@pm.me",
"description": "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.",
"features": null,
"images": [
"quay.io\/parkervcp\/pterodactyl-images:base_debian"
],
"file_denylist": [],
"startup": ".\/wargame3-server +ip {{SERVER_IP}} +port {{SERVER_PORT}} +ip_mms {{SRV_MMS_IP}} +port_mms {{SRV_MMS_PORT}} +rcon_password {{SRV_RCON}} +rcon_port {{SRV_RCON_PORT}} +chat_log_file chat.txt",
"config": {
"files": "{\r\n \"login.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"login\": \"login=\\\"{{server.build.env.SRV_LOGIN}}\\\"\",\r\n \"dedicated_key\": \"dedicated_key=\\\"{{server.build.env.SRV_APIKEY}}\\\"\"\r\n }\r\n },\r\n \"variables.ini\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"ServerName\": \"ServerName=\\\"{{server.build.env.SRV_NAME}}\\\"\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Connection to match making server validated\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n# TS3 Installation Script\r\n#\r\n# Server Files: \/mnt\/server\r\n\r\napk add wget bash jq curl openssl\r\n\r\n# Download server files, only available in docker unfortunately\r\n# Docker-in-docker requires special setup to work, so this is a bit of a workaround\r\n# https:\/\/stackoverflow.com\/questions\/37905763\/how-do-i-download-docker-images-without-using-the-pull-command\r\nwget https:\/\/raw.githubusercontent.com\/moby\/moby\/master\/contrib\/download-frozen-image-v2.sh\r\nchmod +x download-frozen-image-v2.sh\r\nmkdir 'img'\r\n.\/download-frozen-image-v2.sh 'img' eugensystems\/wargame3:latest\r\nmkdir 'img-files'\r\nfind -type f -name layer.tar -exec tar -zxf {} --directory 'img-files' \\;\r\ncp 'img-files\/server\/wargame3-server' \/mnt\/server\r\n\r\n# Generate pkey\/cert\r\nopenssl genrsa -out \/mnt\/server\/pkey 2048\r\nopenssl req -new -batch -key \/mnt\/server\/pkey -out \/mnt\/server\/cert.req\r\nopenssl x509 -req -days 365 -in \/mnt\/server\/cert.req -signkey \/mnt\/server\/pkey -out \/mnt\/server\/cert\r\n\r\n# Generate config files\r\n# Comments copied from https:\/\/eugensystems.com\/downloads\/wargame3_server.tar.bz2\r\ncat <<EOF > \/mnt\/server\/install.txt\r\nWargame2 Dedicated Server is provided \"AS IS\" WITHOUT WARRANTY OF ANY KIND,\r\nEITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES\r\nOF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.\r\n\r\nTo install dedicated server, please follow these steps :\r\n- Edit login.ini file and insert your login and the dedicated key that eugen must have provided\r\n- Edit variables.ini and configure the games options\r\n- Launch wargame3-server with command line : .\/wargame3-server +port XXXX +ip_mms 178.32.126.73 +port_mms 10002 +ip YY.YY.YY.YY\r\nwhere your must replace XXXX by a valid port > 10000 and YY.YY.YY.YY by the IP of your server.\r\n\r\nEnjoy !\r\n\r\n\r\nOptional steps :\r\n- You can use rcon protocol to kick\/ban people, change server properties at runtime.\r\nYou can active rcon by specify the option +rcon_password and +rcon_port when you start your server.\r\nYou should then be able to connect using rcon client. Available commands are :\r\ndisplay_all_clients -> Display the list of connected clients with their Id\r\nkick CLIENT_ID -> Kick the client with Id CLIENT_ID\r\nkick CLIENT_PSEUDO -> Kick the client with pseudo CLIENT_PSEUDO (CLIENT_PSEUDO can be a part of his real pseudo)\r\nban CLIENT_ID DELAY_IN_HOUR -> Ban the player with Id CLIENT_ID for DELAY_IN_HOUR hours\r\nban 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)\r\nunban CLIENT_ID -> Unban the player with Id CLIENT_ID\r\nsetsvar VARIABLE_NAME VARIABLE_VALUE -> Allow you to change one of the settings of the server (have a look at variables.ini)\r\n\r\n- You can have a look at the admins.ini file to add some admins to your server\r\nEOF\r\n\r\ncat <<EOF > \/mnt\/server\/banned_clients.ini\r\n; This file contains the list of the banned user\r\n; Its lines should be like :\r\n; 120487=1373993738\r\n; where 120487 is the client Id of the banned player and 1373993738 is the end date of the ban stored using Unix time (http:\/\/en.wikipedia.org\/wiki\/Unix_time)\r\n; If the end date is 0, it means that the player is banned forever\r\nEOF\r\n\r\ncat <<EOF > \/mnt\/server\/admins.ini\r\n; This file contains the list of the admins\r\n;\r\n; Its lines should be like :\r\n; 120487=\"abcdefghijklmnopqrstuvwxyz\"\r\n; where 120487 is the client Id of the admin player and abcdefghijklmnopqrstuvwxyz is the rights granted to this players\r\n;\r\n; Granted rights can be :\r\n; s -> Can change serveur variable \r\n; p -> Can change player variable\r\n; k -> Can kick clients\r\n; b -> Can ban clients \r\n; u -> Can unban clients\r\n;\r\n; Admins can execute these commands ingame if they are connected on the server.\r\n;\r\n; Available commands are :\r\n; kick CLIENT_ID -> Kick the client with Id CLIENT_ID\r\n; kick CLIENT_PSEUDO -> Kick the client with pseudo CLIENT_PSEUDO (CLIENT_PSEUDO can be a part of his real pseudo)\r\n; ban CLIENT_ID DELAY_IN_HOUR -> Ban the player with Id CLIENT_ID for DELAY_IN_HOUR hours\r\n; 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)\r\n; unban CLIENT_ID -> Unban the player with Id CLIENT_ID\r\n; setsvar VARIABLE_NAME VARIABLE_VALUE -> Allow you to change one of the settings of the server (have a look at variables.ini)\r\n;\r\n; To execute a command, admin must enter in the lobby chat : \"\/COMMAND\"\r\n; For example, to kick player with pseudo toto, he must enter \/kick toto\r\n;\r\nEOF\r\n\r\ncat <<EOF > \/mnt\/server\/login.ini\r\n; This file contains the parameters needed to register your server in the servers list\r\n; You need to have a valid eugnet account and a dedicated key. \r\n; If you have no dedicated key, ask a key at : eugsupport@eugen.fr (please provide your login in the mail).\r\n;\r\n\r\nlogin=\"INSERT_YOUR_LOGIN\"\r\ndedicated_key=\"INSERT_YOUR_KEY_HERE\"\r\nEOF\r\n\r\ncat <<EOF > \/mnt\/server\/variables.ini\r\n; This file contains the parameters of the room\r\n; Allowed key \/ values are :\r\n;\r\n; NbMaxPlayer : Specify how many players can play during a game\r\n; Allowed values : NbMaxPlayer <= 20, default value is 20\r\n;\r\n; ServerName : Specify the name of the server\r\n; Allowed values : Text, default value is \"Default Server Name\"\r\n;\r\n; GameType : Specify the mode opposition mode.\r\n; Allowed values : 0 (NATO vs PACT), 1 (NATO vs NATO), 2 (PACT vs PACT), default value is 0\r\n;\r\n; InitMoney : Specify the amount of money which will be shared between players\r\n; Allowed values : All, default value is 4000\r\n;\r\n; TimeLimit : Specify the time of the fight in seconds\r\n; Allowed values : All, 0 means unlimited, default value is 1200\r\n;\r\n; ScoreLimit : Specify the score to reach to win\r\n; Allowed values : All, default value is 4000\r\n;\r\n; VictoryCond : Specify the victory condition\r\n; Allowed values : 1 (Destruction), 2 (Siege), 3 (Economy), 4 (Conquest), default value is 1\r\n;\r\n; NbMinPlayer: Specify the number of players needed to start the countdown\r\n; Allowed values : NbMinPlayer < 20 and NbMinPlayer < NbMaxPlayer, default value is 10\r\n;\r\n; WarmupCountdown : Specify the time in seconds before launch the game when NbMinPlayers is reached\r\n; Allowed values : WarmupCountdown > 10, default value is 120\r\n;\r\n; LoadingTimeMax : Specify the time max in seconds between the end of the countdown and the beginning of the deployment\r\n; Allowed values : LoadingTimeMax > 60, default value is 120\r\n;\r\n; DeploiementTimeMax : Specify the time in seconds before deployment end\r\n; Allowed values : DeploiementTimeMax > 10, default value is 120\r\n;\r\n; DebriefingTimeMax : Specify the time max in seconds of the debriefing, players have DebriefingTimeMax seconds to click on the \"Next Game\" button if they want to stay on the server\r\n; Allowed values : All values, default value is 30\r\n;\r\n; DeltaMaxTeamSize : Specify the delta max of players between the 2 teams\r\n; Allowed values : All values, default value is 10\r\n;\r\n; MaxTeamSize : Specify the size max of the teams\r\n; Allowed values : All values, default value is 10\r\n;\r\n; IncomeRate : Specify the income rate\r\n; Allowed values : 0 (None), 1 (Very low), 2 (Low), 3 (Normal), 4 (High), 5 (VeryHigh), default value is 3\r\n;\r\n; NationConstraint : Specify the deck nation constraint\r\n; Allowed values : -1 (None), 0 (Any), 1 (Nation), 2 (Coalition), default value is -1\r\n;\r\n; ThematicConstraint : Specify the deck thematic constraint\r\n; Allowed values : -1 (None), -2 (Any), 0 (Motorized), 1 (Armored), 2 (Support), 3 (Marine), 4 (Mechanized), 5 (Airborne), 6 (Naval), default value is -1\r\n;\r\n; DateConstraint : Specify the deck date constraint\r\n; Allowed values : -1 (None), 0 (1981 to 1985), 1 (1980 and less), default value is -1\r\n;\r\n; Map : Specify the Id of the map\r\n; Allowed values (Format \"Id : Name visible in lobby\") :\r\n; Destruction_2x2_port_Wonsan_Terrestre : 1vs1 Wonsan harbour (Destruction, Economy)\r\n; Destruction_2x2_port_Wonsan : 1vs1 Wonsan harbour (Land\/Sea) (Destruction, Economy)\r\n; Destruction_2x3_Hwaseong : 1vs1 Nuclear winter is coming (Destruction, Economy)\r\n; Destruction_2x3_Esashi : 1vs1 Tropic Thunder (Destruction, Economy)\r\n; Destruction_2x3_Boseong : 1vs1 Apocalypse Imminent (Destruction, Economy)\r\n; Destruction_2x3_Tohoku : 2vs2 Paddy Field (Destruction, Economy)\r\n; Destruction_2x3_Anbyon : 2vs2 Hop and Glory (Destruction, Economy)\r\n; Destruction_2x3_Montagne_2 : 3vs3 Cliff Hanger (Destruction, Economy)\r\n; Destruction_3x2_Boryeong_Terrestre : 2vs2 Gunboat diplomacy (Destruction, Economy)\r\n; Destruction_3x2_Haenam : 3vs3 Back to Inchon (Destruction, Economy)\r\n; Destruction_3x3_Marine_2 : 4vs4 Smoke in the water (Land\/Sea) (Destruction, Economy)\r\n; Destruction_3x3_Marine_3 : 3vs3 Another D-Day in paradise (Land\/Sea) (Destruction, Economy)\r\n; Destruction_3x2_Boryeong : 3vs3 Gunboat diplomacy (Land\/Sea) (Destruction, Economy)\r\n; Destruction_3x2_Taean : 3vs3 Bloody Ridge (Destruction, Economy)\r\n; Destruction_3x2_Taebuko : 2vs2 Jungle LAW (Destruction, Economy)\r\n; Destruction_3x2_Sangju : 2vs2 Tough Jungle (Destruction, Economy)\r\n; Destruction_3x2_Montagne_3 : 2vs2 Chosin Reservoir (Destruction, Economy)\r\n; Destruction_3x3_Muju : 1vs1 Plunjing Valley (Destruction, Economy)\r\n; Destruction_3x3_Pyeongtaek : 3vs3 38th Parallel (Destruction, Economy)\r\n; Destruction_3x3_Marine_3_Terrestre : 2vs2 Another D-Day in paradise (Destruction, Economy)\r\n; Destruction_3x3_Montagne_1 : 4vs4 Cold War Z (Destruction, Economy)\r\n; Destruction_3x3_Montagne_4 : 3vs3 A Maze in Japan (Destruction, Economy)\r\n; Destruction_3x3_Chongju : 4vs4 Korea Rocks (Destruction, Economy)\r\n; Destruction_3x3_Gangjin : 4vs4 Floods (Destruction, Economy)\r\n; Destruction_4x4_Marine_6 : 1vs1 Out of the blue (Destruction, Economy)\r\n; Destruction_4x4_Marine_7 : 1vs1 Standoff in Barents (Destruction, Economy)\r\n; Destruction_4x4_Marine_9 : 2vs2 Bulldogs and Vampires (Destruction, Economy)\r\n; Destruction_4x4_Marine_10 : 2vs2 Alea Jacta West (Destruction, Economy)\r\n; Destruction_4x4_Marine_4 : 3vs3 Atoll Inbound (Destruction, Economy)\r\n; Destruction_4x4_Marine_5 : 3vs3 Waterworld (Destruction, Economy)\r\n; Destruction_5x3_Marine_1_small_Terrestre : 1vs1 Strait to the point (small) (Destruction, Economy)\r\n; Destruction_5x3_Marine_1_small : 2vs2 Strait to the point (small) (Land\/Sea) (Destruction, Economy)\r\n; Destruction_5x3_Marine_1_Terrestre : 3vs3 Strait to the point (Destruction, Economy)\r\n; Destruction_5x3_Marine_1 : 4vs4 Strait to the point (Land\/Sea) (Destruction, Economy)\r\n; Destruction_5x3_Asgard_10v10 : 10vs10 Asgard (Destruction, Economy)\r\n; Destruction_5x3_Gjoll_10v10 : 10vs10 Gjoll (Destruction, Economy)\r\n; Destruction_4x4_Russian_Roulette : 10vs10 Russian Roulette (Destruction, Economy)\r\n; Conquete_2x2_port_Wonsan_Terrestre : 1vs1 Wonsan harbour (Conquest)\r\n; Conquete_2x2_port_Wonsan : 1vs1 Wonsan harbour (Land\/Sea) (Conquest)\r\n; Conquete_2x3_Hwaseong : 1vs1 Nuclear winter is coming (Conquest)\r\n; Conquete_2x3_Boseong : 1vs1 Apocalypse Imminent (Conquest)\r\n; Conquete_2x3_Esashi : 1vs1 Tropic Thunder (Conquest)\r\n; Conquete_2x3_Tohoku : 2vs2 Paddy Field (Conquest)\r\n; Conquete_2x3_Anbyon : 2vs2 Hop and Glory (Conquest)\r\n; Conquete_2x3_Montagne_2 : 3vs3 Cliff Hanger (Conquest)\r\n; Conquete_3x2_Boryeong_Terrestre : 2vs2 Gunboat diplomacy (Conquest)\r\n; Conquete_3x2_Montagne_3 : 2vs2 Chosin Reservoir (Conquest)\r\n; Conquete_3x2_Sangju : 2vs2 Tough Jungle (Conquest)\r\n; Conquete_3x2_Taebuko : 2vs2 Jungle LAW (Conquest)\r\n; Conquete_3x2_Boryeong : 3vs3 Gunboat diplomacy (Land\/Sea) (Conquest)\r\n; Conquete_3x2_Taean : 3vs3 Bloody Ridge (Conquest)\r\n; Conquete_3x2_Haenam : 3vs3 Back to Inchon (Conquest)\r\n; Conquete_3x3_Marine_2 : 4vs4 Smoke in the water (Land\/Sea) (Conquest)\r\n; Conquete_3x3_Marine_3 : 3vs3 Another D-Day in paradise (Land\/Sea) (Conquest)\r\n; Conquete_3x3_Muju : 1vs1 Plunjing Valley (Conquest)\r\n; Conquete_3x3_Pyeongtaek : 3vs3 38th Parallel (Conquest)\r\n; Conquete_3x3_Marine_3_Terrestre : 2vs2 Another D-Day in paradise (Conquest)\r\n; Conquete_3x3_Montagne_1 : 4vs4 Cold War Z (Conquest)\r\n; Conquete_3x3_Montagne_4 : 3vs3 A Maze in Japan (Conquest)\r\n; Conquete_3x3_Chongju : 4vs4 Korea Rocks (Conquest)\r\n; Conquete_3x3_Gangjin : 4vs4 Floods (Conquest)\r\n; Conquete_4x4_Marine_6 : 1vs1 Out of the blue (Conquest)\r\n; Conquete_4x4_Marine_7 : 1vs1 Standoff in Barents (Conquest)\r\n; Conquete_4x4_Marine_9 : 2vs2 Bulldogs and Vampires (Conquest)\r\n; Conquete_4x4_Marine_10 : 2vs2 Alea Jacta West (Conquest)\r\n; Conquete_4x4_Marine_4 : 3vs3 Atoll Inbound (Conquest)\r\n; Conquete_4x4_Marine_5 : 3vs3 Waterworld (Conquest)\r\n; Conquete_5x3_Marine_1_small_Terrestre : 1vs1 Strait to the point (small) (Conquest)\r\n; Conquete_5x3_Marine_1_small : 2vs2 Strait to the point (small) (Land\/Sea) (Conquest)\r\n; Conquete_5x3_Marine_1_Terrestre : 3vs3 Strait to the point (Conquest)\r\n; Conquete_5x3_Marine_1 : 4vs4 Strait to the point (Land\/Sea) (Conquest)\r\n; Conquete_5x3_Asgard_10v10 : 10vs10 Asgard (Conquest)\r\n; Conquete_5x3_Gjoll_10v10 : 10vs10 Gjoll (Conquest)\r\n; Conquete_4x4_Russian_Roulette : 10vs10 Russian Roulette (Conquest)\r\n;\r\n\r\nServerName = \"Default Server Name\"\r\nNbMaxPlayer = 20\r\nGameType = 0\r\nMap = Destruction_5x3_Asgard_10v10\r\nInitMoney = 10000\r\nScoreLimit = 20000\r\nVictoryCond = 1\r\nNbMinPlayer = 18\r\nDebriefingTimeMax = 180\r\nDeploiementTimeMax = 120\r\nWarmupCountdown = 15\r\nTimeLimit = 3600\r\nDeltaMaxTeamSize = 10\r\nMaxTeamSize = 10\r\nEOF",
"container": "alpine",
"entrypoint": "ash"
}
},
"variables": [
{
"name": "Server Name",
"description": "The server name shown in matchmaking",
"env_variable": "SRV_NAME",
"default_value": "Wargame Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Login",
"description": "Username provided to Eugen when requesting an API key",
"env_variable": "SRV_LOGIN",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "API Key",
"description": "API Key provided by Eugen. Send an email to \"eugsupport@eugen.fr\" containing your EugNet login, E-Mail used to register, and Wargame CD key to receive one.",
"env_variable": "SRV_APIKEY",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "RCon Password",
"description": "Password used to connect to server RCon",
"env_variable": "SRV_RCON",
"default_value": "",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "RCon port",
"description": "Port used to connect to server RCon",
"env_variable": "SRV_RCON_PORT",
"default_value": "",
"user_viewable": true,
"user_editable": false,
"rules": "required|integer|min:1"
},
{
"name": "Matchmaking server IP address",
"description": "IP Address to Eugen Matchmaking server",
"env_variable": "SRV_MMS_IP",
"default_value": "178.32.126.73",
"user_viewable": true,
"user_editable": false,
"rules": "required|ip"
},
{
"name": "Matchmaking server port",
"description": "Port used to connect to Eugen Matchmaking server",
"env_variable": "SRV_MMS_PORT",
"default_value": "10002",
"user_viewable": true,
"user_editable": false,
"rules": "required|integer|min:1"
}
]
}