Skip to content

Commit e1fb1f2

Browse files
authored
Various: add public IP selector setting (#822)
1 parent 2af59b5 commit e1fb1f2

10 files changed

+145
-77
lines changed

arma-reforger.kvp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ Meta.EndpointURIFormat=steam://connect/{ip}:{GenericModule.App.Ports.$QueryPort}
99
Meta.ConfigManifest=arma-reforgerconfig.json
1010
Meta.MetaConfigManifest=arma-reforgermetaconfig.json
1111
Meta.ConfigRoot=arma-reforger.kvp
12-
Meta.MinAMPVersion=2.4.2.0
12+
Meta.MinAMPVersion=2.6.2.6
1313
Meta.SpecificDockerImage=cubecoders/ampbase
1414
Meta.DockerRequired=False
1515
Meta.ContainerPolicy=Supported
@@ -19,7 +19,7 @@ Meta.Prerequisites=[]
1919
Meta.ExtraContainerPackages=[]
2020
Meta.ConfigReleaseState=NotSpecified
2121
Meta.NoCommercialUsage=False
22-
Meta.ConfigVersion=9
22+
Meta.ConfigVersion=10
2323
Meta.AppConfigId=23e04f07-dab1-4741-a6e9-e9d0d292c8f1
2424
Meta.AppIsMultiIPAware=True
2525
App.DisplayName=Arma Reforger

arma-reforgerconfig.json

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -83,20 +83,6 @@
8383
"IncludeInCommandLine": false,
8484
"EnumValues": {}
8585
},
86-
{
87-
"DisplayName": "Public IP Binding",
88-
"Category": "Arma Reforger:stadia_controller",
89-
"Subcategory": "Server:dns:1",
90-
"Description": "",
91-
"Keywords": "",
92-
"FieldName": "$ExternalIP",
93-
"InputType": "text",
94-
"IsFlagArgument": false,
95-
"Hidden": true,
96-
"ParamFieldName": "publicAddress",
97-
"IncludeInCommandLine": false,
98-
"EnumValues": {}
99-
},
10086
{
10187
"DisplayName": "RCON Permission",
10288
"Category": "Arma Reforger:stadia_controller",
@@ -206,6 +192,33 @@
206192
"True": "true"
207193
}
208194
},
195+
{
196+
"DisplayName": "Public IP Selection Mode",
197+
"Category": "Arma Reforger:stadia_controller",
198+
"Subcategory": "Server:dns:1",
199+
"Description": "Sets whether AMP should automatically select the public IP advertised for the server, or whether it should use the IP set under Server Public IP",
200+
"Keywords": "public,ip,address,publicAddress",
201+
"FieldName": "publicAddress",
202+
"InputType": "enum",
203+
"ParamFieldName": "publicAddress",
204+
"DefaultValue": "{{$ExternalIP}}",
205+
"EnumValues": {
206+
"{{$ExternalIP}}": "Automatic (default)",
207+
"{{ManualPublicIP}}": "Manual"
208+
}
209+
},
210+
{
211+
"DisplayName": "Server Public IP",
212+
"Category": "Arma Reforger:stadia_controller",
213+
"Subcategory": "Server:dns:1",
214+
"Description": "Sets the public IP advertised for the server, if \"Manual\" is selected as the Public IP Selection Mode. Useful if the host network has multiple public IPs, or the server is behind a public proxy",
215+
"Keywords": "manual,public,ip,publicAddress",
216+
"FieldName": "ManualPublicIP",
217+
"InputType": "text",
218+
"ParamFieldName": "ManualPublicIP",
219+
"DefaultValue": "",
220+
"EnumValues": {}
221+
},
209222
{
210223
"DisplayName": "Enable Crossplay",
211224
"Category": "Arma Reforger:stadia_controller",

astroneer.kvp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Meta.EndpointURIFormat=steam://connect/{0}
1010
Meta.ConfigManifest=astroneerconfig.json
1111
Meta.MetaConfigManifest=astroneermetaconfig.json
1212
Meta.ConfigRoot=astroneer.kvp
13-
Meta.MinAMPVersion=2.5.0.4
13+
Meta.MinAMPVersion=2.6.2.6
1414
Meta.SpecificDockerImage=
1515
Meta.DockerRequired=False
1616
Meta.DockerBaseReadOnly=False
@@ -21,7 +21,7 @@ Meta.Prerequisites=[]
2121
Meta.ExtraContainerPackages=[]
2222
Meta.ConfigReleaseState=NotSpecified
2323
Meta.NoCommercialUsage=False
24-
Meta.ConfigVersion=4
24+
Meta.ConfigVersion=5
2525
Meta.ReleaseNotes=
2626
Meta.BreakingReleaseNotes=
2727
Meta.AppConfigId=2a9f3285-5adc-4574-8a5b-d6ef39e8b7a0

astroneerconfig.json

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -14,21 +14,6 @@
1414
"IncludeInCommandLine": false,
1515
"EnumValues": {}
1616
},
17-
{
18-
"DisplayName": "Public IP",
19-
"Category": "Astroneer:stadia_controller",
20-
"Subcategory": "Server:dns:1",
21-
"Description": "",
22-
"Keywords": "",
23-
"FieldName": "$ExternalIP",
24-
"InputType": "text",
25-
"Hidden": true,
26-
"IsFlagArgument": false,
27-
"ParamFieldName": "/Script/Astro.AstroServerSettings.PublicIP",
28-
"ExcludeFromImport": true,
29-
"IncludeInCommandLine": false,
30-
"EnumValues": {}
31-
},
3217
{
3318
"DisplayName": "Server Port",
3419
"Category": "Astroneer:stadia_controller",
@@ -227,6 +212,33 @@
227212
"Suffix": "fps",
228213
"EnumValues": {}
229214
},
215+
{
216+
"DisplayName": "Public IP Selection Mode",
217+
"Category": "Astroneer:stadia_controller",
218+
"Subcategory": "Server:dns:1",
219+
"Description": "Sets whether AMP should automatically select the public IP advertised for the server, or whether it should use the IP set under Server Public IP",
220+
"Keywords": "public,ip,publicip",
221+
"FieldName": "PublicIP",
222+
"InputType": "enum",
223+
"ParamFieldName": "/Script/Astro.AstroServerSettings.PublicIP",
224+
"DefaultValue": "{{$ExternalIP}}",
225+
"EnumValues": {
226+
"{{$ExternalIP}}": "Automatic (default)",
227+
"{{ManualPublicIP}}": "Manual"
228+
}
229+
},
230+
{
231+
"DisplayName": "Server Public IP",
232+
"Category": "Astroneer:stadia_controller",
233+
"Subcategory": "Server:dns:1",
234+
"Description": "Sets the public IP advertised for the server, if \"Manual\" is selected as the Public IP Selection Mode. Useful if the host network has multiple public IPs, or the server is behind a public proxy",
235+
"Keywords": "manual,public,ip,publicip",
236+
"FieldName": "ManualPublicIP",
237+
"InputType": "text",
238+
"ParamFieldName": "ManualPublicIP",
239+
"DefaultValue": "",
240+
"EnumValues": {}
241+
},
230242
{
231243
"DisplayName": "Proton GE Release Version (Linux)",
232244
"Category": "Updates",

impostor.kvp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Meta.EndpointURIFormat=
1010
Meta.ConfigManifest=impostorconfig.json
1111
Meta.MetaConfigManifest=impostormetaconfig.json
1212
Meta.ConfigRoot=impostor.kvp
13-
Meta.MinAMPVersion=2.4.0.10
13+
Meta.MinAMPVersion=2.6.2.6
1414
Meta.SpecificDockerImage=
1515
Meta.DockerRequired=False
1616
Meta.ContainerPolicy=Supported
@@ -19,7 +19,7 @@ Meta.Prerequisites=[]
1919
Meta.ExtraContainerPackages=[]
2020
Meta.ConfigReleaseState=NotSpecified
2121
Meta.NoCommercialUsage=False
22-
Meta.ConfigVersion=5
22+
Meta.ConfigVersion=6
2323
Meta.ReleaseNotes=
2424
Meta.BreakingReleaseNotes=
2525
Meta.ImportableExtensions=[]

impostorconfig.json

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,4 @@
11
[
2-
{
3-
"DisplayName": "Public IP",
4-
"Category": "Impostor:stadia_controller",
5-
"Subcategory": "Server:dns:1",
6-
"Description": "",
7-
"Keywords": "",
8-
"FieldName": "$ExternalIP",
9-
"InputType": "text",
10-
"IsFlagArgument": false,
11-
"Hidden": true,
12-
"ParamFieldName": "$.Server.PublicIp",
13-
"IncludeInCommandLine": false,
14-
"EnumValues": {}
15-
},
162
{
173
"DisplayName": "Public Port",
184
"Category": "Impostor:stadia_controller",
@@ -258,5 +244,32 @@
258244
"False": "false",
259245
"True": "true"
260246
}
247+
},
248+
{
249+
"DisplayName": "Public IP Selection Mode",
250+
"Category": "Impostor:stadia_controller",
251+
"Subcategory": "Server:dns:1",
252+
"Description": "Sets whether AMP should automatically select the public IP advertised for the server, or whether it should use the IP set under Server Public IP",
253+
"Keywords": "public,ip,publicip",
254+
"FieldName": "PublicIp",
255+
"InputType": "enum",
256+
"ParamFieldName": "$.Server.PublicIp",
257+
"DefaultValue": "{{$ExternalIP}}",
258+
"EnumValues": {
259+
"{{$ExternalIP}}": "Automatic (default)",
260+
"{{ManualPublicIP}}": "Manual"
261+
}
262+
},
263+
{
264+
"DisplayName": "Server Public IP",
265+
"Category": "Impostor:stadia_controller",
266+
"Subcategory": "Server:dns:1",
267+
"Description": "Sets the public IP advertised for the server, if \"Manual\" is selected as the Public IP Selection Mode. Useful if the host network has multiple public IPs, or the server is behind a public proxy",
268+
"Keywords": "manual,public,ip,publicip",
269+
"FieldName": "ManualPublicIP",
270+
"InputType": "text",
271+
"ParamFieldName": "ManualPublicIP",
272+
"DefaultValue": "",
273+
"EnumValues": {}
261274
}
262275
]

openrct2.kvp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Meta.EndpointURIFormat=
1010
Meta.ConfigManifest=openrct2config.json
1111
Meta.MetaConfigManifest=openrct2metaconfig.json
1212
Meta.ConfigRoot=openrct2.kvp
13-
Meta.MinAMPVersion=2.4.6.2
13+
Meta.MinAMPVersion=2.6.2.6
1414
Meta.SpecificDockerImage=
1515
Meta.DockerRequired=False
1616
Meta.DockerBaseReadOnly=False
@@ -21,7 +21,7 @@ Meta.Prerequisites=[]
2121
Meta.ExtraContainerPackages=[]
2222
Meta.ConfigReleaseState=NotSpecified
2323
Meta.NoCommercialUsage=False
24-
Meta.ConfigVersion=4
24+
Meta.ConfigVersion=5
2525
Meta.ReleaseNotes=
2626
Meta.BreakingReleaseNotes=
2727
Meta.AppConfigId=9ac30173-aff1-438a-ba5c-29bd09e0c7dd

openrct2config.json

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -37,18 +37,6 @@
3737
"DefaultValue": "Server",
3838
"EnumValues": {}
3939
},
40-
{
41-
"DisplayName": "Advertise Address",
42-
"Category": "OpenRCT2:stadia_controller",
43-
"Subcategory": "Server:dns:1",
44-
"Description": "",
45-
"Keywords": "",
46-
"FieldName": "$ExternalIP",
47-
"InputType": "text",
48-
"Hidden": true,
49-
"ParamFieldName": "network.advertise_address",
50-
"EnumValues": {}
51-
},
5240
{
5341
"DisplayName": "Host Mode",
5442
"Category": "OpenRCT2:stadia_controller",
@@ -313,6 +301,33 @@
313301
"True": "true"
314302
}
315303
},
304+
{
305+
"DisplayName": "Advertise Address Selection Mode",
306+
"Category": "OpenRCT2:stadia_controller",
307+
"Subcategory": "Server:dns:1",
308+
"Description": "Sets whether AMP should automatically select the public IP advertised for the server, or whether it should use the IP set under Server Public IP",
309+
"Keywords": "public,ip,advertise,advertise_address",
310+
"FieldName": "advertise_address",
311+
"InputType": "enum",
312+
"ParamFieldName": "network.advertise_address",
313+
"DefaultValue": "{{$ExternalIP}}",
314+
"EnumValues": {
315+
"{{$ExternalIP}}": "Automatic (default)",
316+
"{{ManualPublicIP}}": "Manual"
317+
}
318+
},
319+
{
320+
"DisplayName": "Server Public IP",
321+
"Category": "OpenRCT2:stadia_controller",
322+
"Subcategory": "Server:dns:1",
323+
"Description": "Sets the public IP advertised for the server, if \"Manual\" is selected as the Advertise Address Selection Mode. Useful if the host network has multiple public IPs, or the server is behind a public proxy",
324+
"Keywords": "manual,public,ip,advertise,advertise_address",
325+
"FieldName": "ManualPublicIP",
326+
"InputType": "text",
327+
"ParamFieldName": "ManualPublicIP",
328+
"DefaultValue": "",
329+
"EnumValues": {}
330+
},
316331
{
317332
"DisplayName": "Master Server URL",
318333
"Category": "OpenRCT2:stadia_controller",

scp-secret-laboratory.kvp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ Meta.EndpointURIFormat=
1010
Meta.ConfigManifest=scp-secret-laboratoryconfig.json
1111
Meta.MetaConfigManifest=scp-secret-laboratorymetaconfig.json
1212
Meta.ConfigRoot=scp-secret-laboratory.kvp
13-
Meta.MinAMPVersion=2.4.6.2
13+
Meta.MinAMPVersion=2.6.2.6
1414
Meta.SpecificDockerImage=cubecoders/ampbase:mono
1515
Meta.DockerRequired=False
1616
Meta.DockerBaseReadOnly=False
@@ -21,7 +21,7 @@ Meta.Prerequisites=[]
2121
Meta.ExtraContainerPackages=[]
2222
Meta.ConfigReleaseState=NotSpecified
2323
Meta.NoCommercialUsage=False
24-
Meta.ConfigVersion=7
24+
Meta.ConfigVersion=8
2525
Meta.ReleaseNotes=
2626
Meta.BreakingReleaseNotes=
2727
Meta.AppConfigId=d26e2770-d31f-4cb6-8ca5-c5031c091fe4

scp-secret-laboratoryconfig.json

Lines changed: 27 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,4 @@
11
[
2-
{
3-
"DisplayName": "Server Public IP",
4-
"Category": "SCP SL:stadia_controller",
5-
"Subcategory": "Server:dns:1",
6-
"Description": "",
7-
"Keywords": "",
8-
"FieldName": "$ExternalIP",
9-
"InputType": "text",
10-
"Hidden": true,
11-
"ParamFieldName": "server_ip",
12-
"EnumValues": {}
13-
},
142
{
153
"DisplayName": "Query Port Shift",
164
"Category": "SCP SL:stadia_controller",
@@ -331,6 +319,33 @@
331319
"Placeholder": "::",
332320
"EnumValues": {}
333321
},
322+
{
323+
"DisplayName": "Public IP Selection Mode",
324+
"Category": "SCP SL:stadia_controller",
325+
"Subcategory": "Server:dns:1",
326+
"Description": "Sets whether AMP should automatically select the public IP advertised for the server, or whether it should use the IP set under Server Public IP",
327+
"Keywords": "public,server,ip,server_ip",
328+
"FieldName": "server_ip",
329+
"InputType": "enum",
330+
"ParamFieldName": "server_ip",
331+
"DefaultValue": "{{$ExternalIP}}",
332+
"EnumValues": {
333+
"{{$ExternalIP}}": "Automatic (default)",
334+
"{{ManualPublicIP}}": "Manual"
335+
}
336+
},
337+
{
338+
"DisplayName": "Server Public IP",
339+
"Category": "SCP SL:stadia_controller",
340+
"Subcategory": "Server:dns:1",
341+
"Description": "Sets the public IP advertised for the server, if \"Manual\" is selected as the Public IP Selection Mode. Useful if the host network has multiple public IPs, or the server is behind a public proxy",
342+
"Keywords": "manual,public,server,ip,server_ip",
343+
"FieldName": "ManualPublicIP",
344+
"InputType": "text",
345+
"ParamFieldName": "ManualPublicIP",
346+
"DefaultValue": "",
347+
"EnumValues": {}
348+
},
334349
{
335350
"DisplayName": "Server Plugins",
336351
"Category": "SCP SL:stadia_controller",

0 commit comments

Comments
 (0)