From 55c993b1fea0ae7bf0307dac292f06359dbd3b19 Mon Sep 17 00:00:00 2001 From: mwiegand Date: Mon, 11 Oct 2021 01:00:55 +0200 Subject: [PATCH] wip --- bundles/left4dead2/README.md | 57 ++++++++++++++++++++++++++++++++++ bundles/left4dead2/items.py | 14 ++++++--- bundles/left4dead2/metadata.py | 6 ++-- nodes/htz.games-2.py | 7 ++--- 4 files changed, 72 insertions(+), 12 deletions(-) diff --git a/bundles/left4dead2/README.md b/bundles/left4dead2/README.md index 21f02fe..4295b4b 100644 --- a/bundles/left4dead2/README.md +++ b/bundles/left4dead2/README.md @@ -1 +1,58 @@ https://developer.valvesoftware.com/wiki/List_of_L4D2_Cvars + +Dead Center c1m1_hotel +Dead Center c1m2_streets +Dead Center c1m3_mall +Dead Center c1m4_atrium +Dark Carnival c2m1_highway +Dark Carnival c2m2_fairgrounds +Dark Carnival c2m3_coaster +Dark Carnival c2m4_barns +Dark Carnival c2m5_concert +Swamp Fever c3m1_plankcountry +Swamp Fever c3m2_swamp +Swamp Fever c3m3_shantytown +Swamp Fever c3m4_plantation +Hard Rain c4m1_milltown_a +Hard Rain c4m2_sugarmill_a +Hard Rain c4m3_sugarmill_b +Hard Rain c4m4_milltown_b +Hard Rain c4m5_milltown_escape +The Parish c5m1_waterfront_sndscape +The Parish c5m1_waterfront +The Parish c5m2_park +The Parish c5m3_cemetery +The Parish c5m4_quarter +The Parish c5m5_bridge +The Passing c6m1_riverbank +The Passing c6m2_bedlam +The Passing c6m3_port +The Sacrifice c7m1_docks +The Sacrifice c7m2_barge +The Sacrifice c7m3_port +No Mercy c8m1_apartment +No Mercy c8m2_subway +No Mercy c8m3_sewers +No Mercy c8m4_interior +No Mercy c8m5_rooftop +Crash Course c9m1_alleys +Crash Course c9m2_lots +Death Toll c10m1_caves +Death Toll c10m2_drainage +Death Toll c10m3_ranchhouse +Death Toll c10m4_mainstreet +Death Toll c10m5_houseboat +Dead Air c11m1_greenhouse +Dead Air c11m2_offices +Dead Air c11m3_garage +Dead Air c11m4_terminal +Dead Air c11m5_runway +Blood Harvest c12m1_hilltop +Blood Harvest c12m2_traintunnel +Blood Harvest c12m3_bridge +Blood Harvest c12m4_barn +Blood Harvest c12m5_cornfield +Cold Stream c13m1_alpinecreek +Cold Stream c13m2_southpinestream +Cold Stream c13m3_memorialbridge +Cold Stream c13m4_cutthroatcreek diff --git a/bundles/left4dead2/items.py b/bundles/left4dead2/items.py index 64e2b14..3bc94b7 100644 --- a/bundles/left4dead2/items.py +++ b/bundles/left4dead2/items.py @@ -8,7 +8,7 @@ directories = { '/opt/left4dead2/left4dead2/cfg': { 'owner': 'steam', }, - '/opt/left4dead2/addons': { + '/opt/left4dead2/left4dead2/addons': { 'owner': 'steam', 'purge': True, }, @@ -31,7 +31,7 @@ svc_systemd = { } for id in node.metadata.get('left4dead2/workshop'): - directories[f'/opt/left4dead2/addons/{id}'] = { + directories[f'/opt/left4dead2/left4dead2/addons/{id}'] = { 'owner': 'steam', 'triggers': [ 'svc_systemd:left4dead2-workshop:restart', @@ -41,11 +41,14 @@ for id in node.metadata.get('left4dead2/workshop'): server_units = set() for name, config in node.metadata.get('left4dead2/servers').items(): config.pop('port') - config.update({ + config = { 'hostname': name, 'sv_steamgroup': ','.join( str(gid) for gid in node.metadata.get('left4dead2/steamgroups') ), + 'z_difficulty': 'Impossible', + 'sv_gametypes': 'realism', + 'sv_region': 3, # europe 'log': 'on', 'sv_logecho': 1, 'sv_logfile': 1, @@ -53,8 +56,9 @@ for name, config in node.metadata.get('left4dead2/servers').items(): 'sv_logbans': 1, 'sv_logflush': 0, 'sv_logsdir': 'logs', # /opt/left4dead2/left4dead2/logs - }) - + **config, + } + files[f'/opt/left4dead2/left4dead2/cfg/server-{name}.cfg'] = { 'content': '\n'.join( f'{key} "{value}"' for key, value in sorted(config.items()) diff --git a/bundles/left4dead2/metadata.py b/bundles/left4dead2/metadata.py index 2b5de70..13dcb4e 100644 --- a/bundles/left4dead2/metadata.py +++ b/bundles/left4dead2/metadata.py @@ -24,9 +24,9 @@ def workshop(metadata): 'set -x; ' 'for ID in ' + ' '.join(metadata.get('left4dead2/workshop')) + '; ' 'do ' - 'if ! ls /opt/left4dead2/addons/$ID/*.vpk; ' + 'if ! ls /opt/left4dead2/left4dead2/addons/$ID/*.vpk; ' 'then ' - 'cd /opt/left4dead2/addons/$ID; ' + 'cd /opt/left4dead2/left4dead2/addons/$ID; ' '/opt/steam-workshop-downloader https://steamcommunity.com/sharedfiles/filedetails\?id\=$ID; ' 'unzip $ID.zip; ' 'fi; ' @@ -74,7 +74,7 @@ def server_units(metadata): 'User': 'steam', 'Group': 'steam', 'WorkingDirectory': '/opt/left4dead2', - 'ExecStart': f'/opt/left4dead2/srcds_run -port {config["port"]} -secure +exec server-{name}.cfg', + 'ExecStart': f'/opt/left4dead2/srcds_run -port {config["port"]} -insecure +map {config["map"]} +exec server-{name}.cfg', 'Restart': 'on-failure', }, 'Install': { diff --git a/nodes/htz.games-2.py b/nodes/htz.games-2.py index d07fa22..dcbc827 100644 --- a/nodes/htz.games-2.py +++ b/nodes/htz.games-2.py @@ -22,11 +22,10 @@ 'STEAM_1:0:12376499', # CroneKorkN }, 'servers': { - 'realism-expert2': { + 'realism-expert': { 'port': 27001, - }, - 'realism-expert3': { - 'port': 27002, + 'sv_steamgroup_exclusive': 1, + 'map': 'c2m1_highway', }, } },