.
This commit is contained in:
22
hlna.py
22
hlna.py
@ -14,7 +14,7 @@ from rcon.source import Client
|
||||
|
||||
home_dir = Path.home()
|
||||
dir_server = f"{home_dir}/ARK_Servers/"
|
||||
dir_config = f"{home_dir}/.config/hlna/"
|
||||
dir_config = f"{home_dir}/.config/hlna/maps/"
|
||||
mods_id = ""
|
||||
listen_server = True
|
||||
|
||||
@ -51,7 +51,8 @@ def create_dir(directory):
|
||||
"""Проверка и создание директории"""
|
||||
if not os.path.exists(directory):
|
||||
os.mkdir(directory)
|
||||
os.chdir("..")
|
||||
if not os.path.exists(f"{home_dir}/.config/hlna/maps"):
|
||||
os.chdir(f"{home_dir}/.config/hlna/")
|
||||
os.mkdir("maps")
|
||||
|
||||
|
||||
@ -214,7 +215,7 @@ def config(list_config=list_config):
|
||||
if query_port == 0:
|
||||
query_port = 27015
|
||||
|
||||
print("Порт Сервера=",port_server)
|
||||
print("Порт Сервера=", port_server)
|
||||
print("Query Port=", query_port)
|
||||
|
||||
rcon_enabled = True
|
||||
@ -373,18 +374,21 @@ def start(m, name_server=list_config):
|
||||
print("Запускаем все активные карты")
|
||||
|
||||
names_serverstart = choose_map(names_serverstart)
|
||||
server_dir = dir_server + "/ShooterGame/Binaries/Linux/"
|
||||
server_dir = dir_server + "ShooterGame/Binaries/Linux/"
|
||||
print_line("Валидация файлов сервера")
|
||||
x = os.system(f"steamcmd +force_install_dir {server_dir} +login anonymous +app_update 376030 +quit")
|
||||
x = os.system(f"steamcmd +force_install_dir {dir_server} +login anonymous +app_update 376030 +quit")
|
||||
os.chdir(server_dir)
|
||||
for i in names_serverstart:
|
||||
data = read_yaml(i)
|
||||
starting_map = dict_mapname[i]
|
||||
print_line(data['Cluster'])
|
||||
if not data['Cluster']:
|
||||
ntff = ""
|
||||
else:
|
||||
ntff = "-NoTransferFromFiltering"
|
||||
|
||||
def starting(i):
|
||||
os.system(
|
||||
f"./ShooterGameServer {i}?SessionName={data['SessionName']}?Port={data['Port']}?QueryPort={data['QueryPort']}?RCONEnabled={data['RCONEnabled']}?RCONPort={data['RCONPort']}?ServerAdminPassword={data['ServerAdminPassword']}?multihome=127.0.0.1?MaxPlayers={data['MaxPlayers']}?GameModIds={data['ModsId']}?listen={data['Listen']} -clusterid={data['clusterid']} -ClusterDirOverride={data['clusterdir']} -NoTransferFromFiltering")
|
||||
|
||||
os.system(f"{server_dir}ShooterGameServer {i}?SessionName={data['SessionName']}?Port={data['Port']}?QueryPort={data['QueryPort']}?RCONEnabled={data['RCONEnabled']}?RCONPort={data['RCONPort']}?ServerAdminPassword={data['ServerAdminPassword']}?MaxPlayers={data['MaxPlayers']}?GameModIds={data['ModsId']}?listen={data['Listen']} -clusterid={data['clusterid']} -ClusterDirOverride={data['clusterdir']} {ntff}")
|
||||
if x == 0:
|
||||
print_line("Запускаем карту" + i)
|
||||
threads = threading.Thread(target=starting, args=(starting_map,))
|
||||
@ -413,7 +417,7 @@ def delete(m, list_config=list_config):
|
||||
def read_yaml(name_server, flag=True):
|
||||
# Читаем конфиги активных или неактивных карт в зависимости от флага
|
||||
if flag == True:
|
||||
dirs = f"{home_dir}/.config/hlna/{name_server}"
|
||||
dirs = f"{home_dir}/.config/hlna/maps/{name_server}"
|
||||
else:
|
||||
dirs = f"{home_dir}/.config/hlna/deactivated/{name_server}"
|
||||
with open(dirs, "r") as yamlfile:
|
||||
|
Reference in New Issue
Block a user