forked from pelican-eggs/eggs
-
Notifications
You must be signed in to change notification settings - Fork 0
/
egg-squad.json
133 lines (133 loc) · 6.51 KB
/
egg-squad.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
{
"_comment": "DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO",
"meta": {
"version": "PTDL_v1",
"update_url": null
},
"exported_at": "2022-01-20T12:59:49-05:00",
"name": "Squad",
"author": "brycea@terrahost.cloud",
"description": "Squad is a 50 vs 50 multiplayer first-person shooter that aims to capture combat realism through communication and teamplay. Major features include vehicle-based combined arms gameplay, large scale environments, base building, and integrated positional VoIP for proximity talking & radio.",
"features": [
"steam_disk_space"
],
"images": [
"quay.io\/pterodactyl\/core:source"
],
"file_denylist": [],
"startup": "\/home\/container\/SquadGame\/Binaries\/Linux\/SquadGameServer SquadGame Port={{SERVER_PORT}} QueryPort={{QUERY_PORT}}",
"config": {
"files": "{\r\n \"SquadGame\/ServerConfig\/Server.cfg\": {\r\n \"parser\": \"file\",\r\n \"find\": {\r\n \"ServerName\": \"ServerName=\\\"{{server.build.env.servername}}\\\"\",\r\n \"MaxPlayers\": \"MaxPlayers={{server.build.env.maxplayers}}\",\r\n \"AllowTeamChanges\": \"AllowTeamChanges={{server.build.env.allowteamchange}}\",\r\n \"ShouldAdvertise\": \"ShouldAdvertise={{server.build.env.advertise}}\",\r\n \"NumReservedSlots\": \"NumReservedSlots={{server.build.env.reservedslots}}\",\r\n \"PreventTeamChangeIfUnbalanced\": \"PreventTeamChangeIfUnbalanced={{server.build.env.ptciu}}\",\r\n \"EnforceTeamBalance\": \"EnforceTeamBalance={{server.build.env.teambal}}\",\r\n \"RecordDemos\": \"RecordDemos={{server.build.env.recorddemos}}\"\r\n }\r\n }\r\n}",
"startup": "{\r\n \"done\": \"Engine Initialization\"\r\n}",
"logs": "{}",
"stop": "^C"
},
"scripts": {
"installation": {
"script": "#!\/bin\/bash\r\n## install required packages to install squad\r\napt update\r\napt -y --no-install-recommends install curl unzip libstdc++6 lib32gcc1 ca-certificates\r\n\r\n## install steamcmd\r\ncd \/tmp\r\ncurl -sSL -o steamcmd.tar.gz http:\/\/media.steampowered.com\/installer\/steamcmd_linux.tar.gz\r\nmkdir -p \/mnt\/server\/steam\r\ntar -xzvf steamcmd.tar.gz -C \/mnt\/server\/steam\r\ncd \/mnt\/server\/steam\r\n\r\n## needs to be used for steamcmd to operate correctly\r\nchown -R root:root \/mnt\r\nexport HOME=\/mnt\/server\r\n\r\n## install squad\r\n.\/steamcmd.sh +login anonymous +force_install_dir \/mnt\/server +app_update ${SRCDS_APPID} +quit\r\nmkdir -p \/mnt\/server\/.steam\/sdk32\r\n\r\ncp -v \/mnt\/server\/steam\/linux32\/steamclient.so \/mnt\/server\/.steam\/sdk32\/steamclient.so\r\n\r\nchmod +x \/mnt\/server\/SquadGame\/Binaries\/Linux\/SquadGameServer",
"container": "ubuntu:18.04",
"entrypoint": "bash"
}
},
"variables": [
{
"name": "Query Port",
"description": "Query port for your Squad server.",
"env_variable": "QUERY_PORT",
"default_value": "27165",
"user_viewable": true,
"user_editable": true,
"rules": "required|numeric"
},
{
"name": "ld lib path",
"description": "this is needed for some reason",
"env_variable": "LD_LIBRARY_PATH",
"default_value": "\/home\/container\/linux64\/",
"user_viewable": false,
"user_editable": false,
"rules": "required|string"
},
{
"name": "Game ID",
"description": "The ID corresponding to the game to download and run using SRCDS.",
"env_variable": "SRCDS_APPID",
"default_value": "403240",
"user_viewable": false,
"user_editable": false,
"rules": "required|string|max:20"
},
{
"name": "Server Name",
"description": "The name for the server in the server list",
"env_variable": "servername",
"default_value": "Squad Server",
"user_viewable": true,
"user_editable": true,
"rules": "required|string|max:30"
},
{
"name": "Max Players",
"description": "Sets the maximum number of players.",
"env_variable": "maxplayers",
"default_value": "80",
"user_viewable": true,
"user_editable": true,
"rules": "required"
},
{
"name": "Allow Team Change",
"description": "Allow players to change teams ( true \/ false )",
"env_variable": "allowteamchange",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Advertise Server",
"description": "Have the server report to the public server list ( true \/ false )",
"env_variable": "advertise",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Reserved Slows",
"description": "The number of reserved slots for admins \/ mods",
"env_variable": "reservedslots",
"default_value": "0",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Prevent Team Change If Unbalanced",
"description": "This will prevent players from changing teams if they're already unbalanced ( true \/ false )",
"env_variable": "ptciu",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Enforce Team Balance",
"description": "This will FORCE team balance if the teams are too uneven ( true \/ false )",
"env_variable": "teambal",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
},
{
"name": "Record Demos",
"description": "This will record demos of the players ( true \/ false )",
"env_variable": "recorddemos",
"default_value": "true",
"user_viewable": true,
"user_editable": true,
"rules": "required|string"
}
]
}