Как правильно указать путь к игре SAMP для лаунчера игры на Python

import tkinter as tk
import subprocess
import os
from tkinter import messagebox, filedialog

class GTALauncher:
    def __init__(self, master):
        self.master = master
        master.title("GTA San Andreas Launcher")
        master.geometry("400x200")

        self.label = tk.Label(master, text="Запустите GTA San Andreas", font=("Arial", 14))
        self.label.pack(pady=10)

        self.path_label = tk.Label(master, text="Путь к игре:")
        self.path_label.pack(pady=5)
        self.path_entry = tk.Entry(master, width=40)
        self.path_entry.pack(pady=5)

        self.browse_button = tk.Button(master, text="Обзор", command=self.browse_file)
        self.browse_button.pack(pady=5)

        self.nickname_label = tk.Label(master, text="Никнейм:")
        self.nickname_label.pack(pady=5)
        self.nickname_entry = tk.Entry(master)
        self.nickname_entry.pack(pady=5)

        self.launch_button = tk.Button(master, text="Запустить игру", command=self.launch_game)
        self.launch_button.pack(pady=10)

        self.quit_button = tk.Button(master, text="Выход", command=master.quit)
        self.quit_button.pack(pady=5)

    def browse_file(self):
        file_path = filedialog.askopenfilename(title="Выберите исполняемый файл игры", filetypes=[("Executable files", "*.exe")])
        if file_path:
            self.path_entry.delete(0, tk.END)
            self.path_entry.insert(0, file_path)

    def launch_game(self):
        ip_address = "194.93.2.226"
        port = "2054"
        game_path = self.path_entry.get()
        nickname = self.nickname_entry.get()

        if os.path.exists(game_path):
            if nickname:
                command = f'"{game_path}" -c -n "{nickname}" -h {ip_address} -p {port} -loadsamp'
                try:
                    subprocess.Popen(command, shell=True)
                except Exception as e:
                    messagebox.showerror("Ошибка", f"Не удалось запустить игру: {e}")
            else:
                messagebox.showerror("Ошибка", "Пожалуйста, введите никнейм!")
        else:
            messagebox.showerror("Ошибка", "Не удалось найти файл игры!")

if __name__ == "__main__":
    root = tk.Tk()
    launcher = GTALauncher(root)
    root.mainloop()

Имеется код на Python, надо чтобы программа запускала SAMP сервер при нажатии кнопки запустить игру, я указываю путь к samp.exe, он у меня открывается и сразу краш, что можно сделать в данной проблеме чтобы решить ее?


Ответы (0 шт):