Skip to content

Kexi8BiT/SovaLaucher

Repository files navigation

Проект разморожен

Это простой интерфейс лаунчера, можно добавлять свои игры и приложения

Установка

Убедитесь что у вас Python 3.12

Клонируйте этот репозиторий

git clone https://github.com/Kexi8BiT/SovaLaucher
cd SovaLaucher

Настройте venv и установите модули

python -m venv venv
venv\Scripts\activate
pip install -r requirements.txt

Запустите лаунчер

flet run

или

python main.py

(если что в Настройки -> Изменить cdn пишите https://sova.remeow.ru)

Все баги и предложения мне в лс или в Issue (бля как там)

Структура

Структура максимально простая

- asstes *тут хранятся файлы с которыми работает лаунчер
|- audio * тут аудио файлы
    |- boop.mp3 (звук нажатия)
    |- message.mp3 (неиспользуемый звук оповещения)
    |- start.mp3 (проигрывается при старте лаунчера)
|- games *тут игры и их описание
    |- sovadash
        |- bg.jpg
        |- config.json
        |- description.txt
        |- icon.png
    |- ...

впринципе все что нужно знать. Настроить дополнительные вкладки можно в games_page.py

все интернет запросы и данные прописаны в internets.py llamareq.py - лол я сам хз что это

также для настройки интерфейса используется ui.py в нем прописаны ввсе стили кнопок и слайдеров в лаунчере

client_storage:

on_sound: bool # Настройка - обозначает проигрывается ли звуки в лаунчере
dnd: bool # Не беспокоить
catalog_games: str # Каталог (Диск) на котором хранятся игры
cdn_url: str # Базовый апи с которым работает лаунчер

Конфигурация

Так, теперь поговорим про config.json. А именно про start-config. Из себя он представляет примерно такую структуру:

{"start-config": {
    "command_args": "",
    "exe_file": "SovaDash.exe",
    "other_params": {
      "enebled": true,
      "script": "sovadash.py",
      "params": [
        {"type":  "input", "name":  "gb", "value":  "5", "label":  "Выделенная память, (Озу)"}
      ]
    }
  }
}

Давайте разбераться что к чему...

Так как лаунчер запускает разные игры и приложения, он не может предугадать что именно ему запускать, а так как страница со скачиванием знает только id приложения - нам надо сообщить какой файл надо запускать. Для этого в exe_file нужно вписать имя exe файла который нужно запускать (или путь до него).

"command_args" - это аргументы, которые будут переданы при запуске приложения. В примере не используется.

Теперь самое сложное. other_params - Это все те аргументы и параметры которые будут переданы в определенный скрипт при запуске.

Что за скрипт? (script) - Чтож вам придется самим написать скрипт, так как лаунчер использует систему аргументов (которую мы сейчас разберем) то конечный файл в который будет передаваться аргументы запуска может быть написан на любом языке! будь то py файл, или exe написанное на java.

теперь подробнее рзберем params:

{"params": [
    {"type":  "input", "in":  "int", "name":  "gb", "value":  "5", "label":  "Выделенная память, (Озу)"},
    {"type":  "check", "name":  "debug", "value":  true, "label":  "Debug"},
    {"type":  "switch", "name":  "join", "value":  true, "label":  "Сразу зайти на сервер"}
      ]}

Да, сейчас есть только несколько параметров, давайте их разберем:

type тип ввода от пользователя, может иметь несколько значений:

  • input - Поле ввода
  • check - Чекбокс
  • switch - Свитч (переключатель)

in (ТОлько если type = input):

  • int - Можно ввести только число
  • srt - Можно вводить все что душе угодно

name: это имя параметра которое будет передаваться

value: это значение параметра которое будет передаваться

label: Это то что будет отображаться пользователю

в итоге при этих параметрах мы получим

sovadash.py --gb 5 --debug true --join true

дальше ебитесь сами, мой лс всегда открыт а также есть issues или как там их

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages