[Counter-Strike 1.6] LSB (Launcher & Server Browser)

  • Автор темы Автор темы root
  • Дата начала Дата начала
Статус
В этой теме нельзя размещать новые ответы.
Counter-Strike 1.6 Server Browser​





О проекте
​
Забудьте о долгой загрузке списка серверов внутри игры и неудобном стандартном интерфейсе. LSB (Launcher & Server Browser) - это современное, быстрое и стильное приложение для поиска и подключения к серверам CS 1.6.​
​
Оно работает независимо от игры, автоматически обновляет пинг и количество игроков, а также позволяет удобно управлять списком избранного. Интерфейс выполнен в темных тонах в стиле Steam, чтобы ваши глаза не уставали во время поиска серверов.​
​

Возможности
  • Мгновенный поиск: Автоматический опрос мастер-серверов.
  • Умные фильтры: Ищите сервера по названию, карте, наличию свободных мест или отсутствию пароля.
  • Избранное: Сохраняйте любимые сервера. Программа будет сама обновлять их статус при активном окне, либо кнопкой.
  • Информация об игроках: Смотрите ники, счет и время в игре участников прямо из браузера.
  • Кроссплатформенность: Работает как на Windows, так и на Linux.
  • Без лишнего мусора: Не требует установки Python или библиотек. Просто скачал и запустил.


Настройка и использование
  1. Первый запуск: Откройте программу. При первом старте создастся папка serverbrowser с настройками (если её нет).
  2. Путь к игре: Нажмите кнопку "Настройки" внизу справа. Укажите путь к вашему hl.exe (Windows) или hl.sh/hl_linux (Linux). Либо любой другой путь к игре (xash3d.exe, xash3d). Если у вас есть купленная игра в Steam, тогда измените в настройках запуск игры на Steam.
  3. Подключение: Дважды кликните по любому серверу в списке, чтобы игра запустилась и сразу подключилась к нему.
  4. Избранное: Кликните правой кнопкой мыши по серверу -> "Добавить в избранное". Теперь он всегда будет на вкладке "Избранное" с актуальным пингом, информацией.

В: Сервера показывают "?" вместо данных.
О: Нажмите "Обновить" (F5). Сервер мог временно не ответить из-за нагрузки или проблем с сетью.

В: Как добавить свой сервер вручную?
О: На вкладке "Избранное" нажмите "Добавить" и введите адрес в формате IP:порт или домен:порт. Можно просто скопировать адрес и нажать Ctrl+V в окне программы.

В: Как установить для Steam?
О: В настройках выберите "Запуск игры: Steam". Путь к игре и параметры указывать не нужно, игра запустится через Steam.
Если нужен свой hl.exe или особые параметры, выберите "Пользовательский" и укажите путь:
Путь: ...\Steam\steam.exe
Параметры: -applaunch 10 -game cstrike
ИЛИ
Путь: ...\Half-Life\hl.exe
Параметры: -game cstrike

В: В режиме Steam игра запускается, но не подключается к серверу.
О: В настройках смените "Метод подключения". По умолчанию стоит connect, попробуйте rungameid, run или runspec.

В: Как зайти на сервер с паролем?
О: Нажмите "Подключиться", появится окно "Пароль для <сервер>". Введите пароль, и он передастся в игру автоматически.

В: Почему кнопка "Подключиться" серая?
О: Сервер заполнен. Откройте окно игроков и отметьте "Подключиться при освобождении слота": программа сама подключит вас, как только место освободится.

В: Как быстро зайти на сервер, которого нет в списках?
О: Введите адрес в поле "Адрес сервера" вверху справа и нажмите Enter. Откроется окно игроков, оттуда можно подключиться или добавить сервер в избранное.

В: Сортировка и ширина столбцов сбрасываются после перезапуска.
О: Так задумано. Чтобы программа их запоминала, отметьте нужные вкладки в настройках в строках "Запоминать сортировку" и "Запоминать ширину столбцов". Сбросить сортировку или ширину можно правой кнопкой мыши по заголовку столбца.

В: Почему списки не загружаются и не обновляются сами?
О: По умолчанию автозагрузка и автообновление выключены. Включите их в настройках для нужных вкладок или запустите программу с параметром -enableAuto.

В: Почему в рейтинге только 100 серверов?
О: По умолчанию показывается ТОП-100. Измените это в настройках, в пункте "Серверов в рейтинге": ТОП-10…ТОП-100, своё значение или "Без ограничений".

В: Один и тот же сервер был в списке и по IP, и по домену.
О: Теперь дубли убираются автоматически, остаётся адрес с доменом. В избранном программа предложит заменить IP на домен.


Приятной игры! Если возникнут баги или идеи по улучшению - пишите в эту тему.​
 
Обновление 0.0.3b
  • Проект переведен на Golang (Fyne)
  • Увеличена скорость загрузки серверов
  • Работа со всеми возможными клиентами: Non-steam (8684 и выше, тестировалось), Steam, Gold Client, Next Client
 
Обновление 0.0.4b
  • Добавлена возможность фильтрации серверов по задержке;
  • Исправлено зависание клиента при добавлении сервера в избранное через «+»;
  • Добавлено определение фейковых слотов серверов (все значения выше 32);
  • Добавлена дополнительная проверка appID 10 для гарантированной загрузки серверов Counter-Strike 1.6.

Обновление 0.0.5b
  • Исправлены гонки данных в go-рутинах во всех функциях приложения;
  • Исправлено падение клиента, связанное со statusLabel;
  • Добавлено кэширование серверов на определённое время (для оптимизации загрузки);
  • Увеличена скорость загрузки серверов;
  • Выполнены общие исправления и рефакторинг кода;
  • Удалён неиспользуемый код из ранних версий;
  • Добавлены новые мастер-серверы; теперь в поиске доступно более 13 000 серверов.
 
Обновление 0.0.6b
  • Что нового в версии:
    • Добавлена возможность подключения к выбранному серверу по клавише Enter.
    • Реализовано удаление сервера из избранного с помощью клавиши Delete.
    • Добавлено копирование адреса сервера в буфер обмена сочетанием клавиш Ctrl+C.
    • Добавлена возможность добавления сервера в избранное комбинацией Ctrl+V.
    • Добавлена кнопка «Запуск игры», которая запускает клиент из game_exe без подключения к серверу.
  • Исправления ошибок:
    • Исправлена работа кэша серверов: при прерывании обновления кнопкой Стоп серверы из мастер-серверов больше не теряются (ранее они не сохранялись, если не дождаться полной выгрузки всех серверов).
    • Исправлена настройка «Кэшировать серверы» - теперь для кэширования достаточно выполнить обновление серверов из мастер-серверов. При изменении срока хранения кэша потребуется повторно обновить список серверов.
    • Исправлена обработка клавиш Enter и Delete - ранее они не работали в соответствующих сценариях.

Обновление 0.0.7b
  • Что нового в версии:
    • Исправлено открытие дублирующих окон - теперь приложение гарантированно работает в одном экземпляре, исключая появление лишних окон при повторных вызовах.
  • Исправления ошибок:
    • Исправлена логика обработки клавиш Enter и Delete - ранее клавиши могли срабатывать некорректно или не во всех контекстах. Теперь их поведение приведено к ожидаемому сценарию использования.

Обновление 0.0.8b
  • Исправления ошибок:
    • Исправлено: на Windows теперь при повторном открытии запущенного клиента окно разворачивается из режима OS-minimize корректно.

Обновление 0.0.9b
  • Улучшения:
    • Оптимизация работы приложения.
 
Обновление 0.0.10b
  • Улучшения:
    • Оптимизация работы приложения.
    • Исправлен statusLabel для вкладки Интернет (если добавить сервер в Избранное, срабатывал как Избранное, а не вкладка Интернет)
Обновление 0.0.11b - 0.0.13b
  • Улучшения:
    • Оптимизация работы приложения.
    • Улучшен поиск и загрузка серверов. Теперь в поиске > 4000 серверов.
  • Исправления:
    • Падение клиента при сортировне колонок.
 
Обновление 0.0.14b - 0.0.19b
  • Обновления:
    • Fyne до версии 2.8.0.
    • FyneDo-рутины.
  • Исправления:
    • Переработан блок фильтров.
    • Перезагрузка приложения при смене языка на Windows.
    • Дублирование диалоговых окон при множественном нажатии Ctrl+V в "Избранном".
  • Добавлено:
    • Кнопка «Подключиться» при выборе сервера.
    • Отлов клавиш Esc / Enter в диалоговых окнах: можно скрыть диалоговое окно по Esc / подтвердить действие по Enter. Если нет кнопки «Удалить» / «ОК» / «Добавить», то клавиша работает как «Закрыть окно».
    • Обновление списка серверов клавишей F5.
    • Закрытие старой копии игры при повторном выборе сервера.
  • Улучшения:
    • Переработана логика отлова сочетаний клавиш Ctrl+C / Ctrl+V.
    • Переработана логика отлова клавиш Esc / Enter / Delete.
    • Скорость загрузки серверов выросла за счет оптимизации кода.
    • Удалены из поиска «мертвые» сервера, которые долгое время были офлайн.
  • Что делают клавиши / сочетания клавиш:
    • Esc - снимает выделение с выбранного сервера / закрывает диалоговое окно.
    • Enter - подключает клиента к выбранному серверу, подтверждает действие в диалоговом окне / закрывает его, если нет подтверждающих кнопок.
    • Delete - удаляет выбранный сервер с подтверждением в диалоговом окне.
    • F5 - обновляет список серверов во вкладках «Интернет» и «Избранное».
    • Ctrl+C - копирует адрес выбранного сервера в буфер обмена.
    • Ctrl+V - добавляет сервер в «Избранное» из буфера обмена.
 
Обновление 0.0.20b
  • Исправления:
    • Снятие выделения текущего сервера при обновлении списка серверов.
  • Добавлено:
    • Отслеживание клавиш PageUp / PageDown - переключение между вкладками «Интернет» (PageUp) и «Избранное» (PageDown).
    • Отслеживание клавиш Left (<, ←) / Right (>, →) - переключение между вкладками «Интернет» (Left) и «Избранное» (Right).
    • Отслеживание клавиши Space (Пробел) - бесконечный роллинг (цикличное переключение) вкладок «Интернет» / «Избранное».
    • Отслеживание клавиш Up (↑) / Down (↓) - бесконечный скроллинг по списку серверов. Если ни один сервер не выделен, то Up выделяет первый, а Down - последний сервер в списке. При достижении конца списка скроллинг начинается с начала; при достижении начала - с конца списка.
 
Обновление 0.0.21b​
  • Добавлено:
    • Реализована вкладка «История», обеспечивающая хранение списка ранее посещённых серверов (лимит - до 500 записей).​
    • На вкладке «История» столбец «Игра» заменён столбцом «Последний вход», отображающим временную метку последнего подключения к серверу в формате ДД.ММ.ГГГГ ЧЧ:ММ:СС.​
    • Добавлена функция очистки содержимого вкладки «История».​
    • Реализована привязка параметра языка игры к текущему языку интерфейса LSB (ключ -language russian).​
  • Исправлено:
    • Скорректирован фильтр серверов Counter-Strike 1.6 - из результатов поиска исключены серверы CSS v34.​
  • Улучшения:
    • Оптимизирован механизм обработки игровых серверов (усовершенствован парсинг информации).​
 
Обновление 0.0.22b
  • Исправлено:
    • Выделение сервера: устранена ошибка при подключении двойным ЛКМ.
    • Вкладка «История»: некорректное перемещение сервера в списке при подключении к нему.
    • Вкладка «История»: корректное отображение статуса запуска игры.
    • Вкладка «История»: сортировка по умолчанию (установлен порядок от «Я» до «А» по дате последнего подключения).
 
Обновление 0.0.23b
  • Обновления:
    • Fyne до версии 2.8.1.
  • Исправления:
    • Теперь в диалоговых ("Добавить", "Настройки") окнах ПКМ (Копировать, Вставить, Вырезать, Выделить все) работает корректно.
  • Улучшения:
    • Увеличена общая производительность приложения за счет перехода на более новую версию Fyne.
    • Улучшена работа FyneDo-рутин.
 
Версия 0.1.0r
  • Убран debug-режим.
  • Стабильная версия.
Версия 0.1.1r
  • Исправление параметра запуска игры (-language english).
 
Версия 0.1.2r
  • Улучшения:
    • Новый алгоритм запуска игры.
    • Увеличена скорость загрузки серверов.
    • Рефакторинг кода, оптимизация работы.
  • Изменения:
    • Статус: Опрос серверов x/y (онлайн: z) -> Показано: x | Онлайн: z | Всего: y.
    • Offline сервера больше не держат основной поток. Online сервера загружаются и отображаются сразу.
    • Коррекция подсчета Online серверов при загрузке.
    • Коррекция фильтра Отвечающих серверов.
    • История: исправление отображения фильтра "Последний вход".
  • Добавлено:
    • Настройки: Отключение автоматического обновления вкладок Избранное и История.
    • Настройки: Изменение интервала обновления вкладок Избранное и История (в секундах).
    • Настройки: Изменение количества сохраняемых серверов во вкладке История.
    • Новый статус: не удалось получить ни одного сервера из мастер-серверов.
    • Фокус фильтров: при применении фильтров, фокус изменяется на главное окно.
 
Версия 0.1.3r
  • Улучшения:
    • Новый алгоритм опроса мастер-серверов.
    • Добавлены новые зеркала для жителей РФ.
    • Go до v1.27.1.
 
​
Версия 0.1.4r
  • Обновлено:
    • Версия Go до 1.27.2.
  • Улучшения:
    • Минимальная версия glibc >= 2.27.
    • Минимальная версия wayland >= 1.21.
    • Переработана система Fyne.Do-рутин.
    • Увеличена скорость загрузки серверов.
    • Автоматическое определение языка системы.
  • Изменения:
    • Переработана система языков i18n.
    • Срок кэширования серверов изменён на 1 день [по умолчанию].
    • Выключена автозагрузка вкладок «Интернет», «Избранное», «История» и «Рейтинг» [по умолчанию].
    • Язык LSB при первом запуске определяется в зависимости от локали системы [English по умолчанию].
  • Добавлено:
    • Реализована вкладка «Рейтинг», отображающая список серверов, популярных среди пользователей LSB за прошедший день и отсортированных по убыванию рейтинговых очков.
    • Настройки: добавлена возможность отключить автозагрузку вкладок «Интернет», «Избранное», «История» и «Рейтинг».
    • Настройки: добавлена возможность отключить автообновление вкладок «Избранное» и «История».
    • Настройки: добавлена возможность изменить стартовую вкладку [«Интернет», по умолчанию].
    • Настройки: добавлена возможность изменить лимит одновременного опроса серверов, влияющий на скорость их загрузки (скорость загрузки серверов).
    • Настройки: реализована страница «Создатели».
    • Параметр запуска -enableAuto, который включает автоматическое обновление и загрузку всех вкладок.
    • Новые языки: немецкий, французский, испанский, польский, чешский, румынский, белорусский, украинский.
 
01_dark_1_servers.webp01_dark_2_players.webp01_dark_3_settings.webp02_light_1_servers.webp02_light_2_players.webp02_light_3_settings.webp03_graphite_1_servers.webp03_graphite_2_players.webp03_graphite_3_settings.webp04_sepia_1_servers.webp04_sepia_2_players.webp04_sepia_3_settings.webp05_olive_1_servers.webp05_olive_2_players.webp05_olive_3_settings.webp06_desert_1_servers.webp06_desert_2_players.webp06_desert_3_settings.webp07_fortress_1_servers.webp07_fortress_2_players.webp07_fortress_3_settings.webp08_reactor_1_servers.webp08_reactor_2_players.webp08_reactor_3_settings.webp09_amber_1_servers.webp09_amber_2_players.webp09_amber_3_settings.webp10_extra_search.webp11_extra_filters.webp12_extra_latency.webp13_extra_context_menu.webp14_extra_confirm_add.webp15_extra_password.webp16_extra_favorites.webp17_extra_confirm_remove.webp18_extra_history.webp19_extra_rating.webp20_extra_add_favorite.webp21_font_tiny.webp22_font_huge.webp


Версия 0.1.5r
  • Добавлено:
    • Режимы запуска: "Steam" и "Пользовательский". В режиме Steam путь к hl.exe и параметры не нужны, лишние поля скрываются.​
    • Метод подключения Steam: connect (по умолчанию), rungameid, runspec и run.​
    • Серверы с паролем: при подключении появляется окно "Пароль для <сервер>", пароль передаётся в игру автоматически (+password для пользовательского режима).​
    • Автоподключение: галочка "Подключиться при освобождении слота" в окне "Игроки". Сервер опрашивается с интервалом автообновления, работает и при свёрнутом окне.​
    • Быстрое подключение: поле "Адрес сервера" на главном экране. Открывает окно игроков, адрес очищается после подключения (отключается в настройках). Поле общее для всех вкладок.​
    • Темы: "Светлая", "Графит", "Сепия", "Оливковая", "Пустыня", "Крепость", "Реактор" и "Янтарь".​
    • Размер шрифта: от "Очень маленький" до "Огромный" (7 вариантов). Применяется сразу, без перезапуска; высота строк и размеры окон подстраиваются.​
    • Изменение ширины столбцов перетаскиванием во всех вкладках и в окне "Игроки". Сброс по ПКМ на заголовке.​
    • Запоминание сортировки и ширины столбцов отдельно для каждой вкладки и окна "Игроки". Без галочки всё сбрасывается при перезапуске.​
    • Запоминание размера окна.​
    • Рейтинг: ограничение ТОП-10…ТОП-100 или своё значение, по умолчанию ТОП-100. Берутся серверы с наибольшим рейтингом.​
    • Автообновление вкладки "Рейтинг" (доступно при выбранном ТОП).​
    • Автозагрузка и автообновление для окна "Игроки".​
    • Подтверждение добавления в избранное из меню по ПКМ и по Ctrl+V: "Добавить <сервер> (<адрес>) в избранное?".​
    • Проверка настроек: при Enter с неверным значением показывается ошибка, после закрытия курсор переходит в это поле.​
    • Параметр -h со справкой по параметрам запуска.​
  • Улучшения:
    • Окно "Игроки":
      • Переработано: сверху адрес, карта, игра, число игроков, пинг и пароль. Любое поле копируется кликом.​
      • Кнопки "Обновить", "В избранное", "Подключиться" и "Отмена".​
      • Сортировка по имени, счёту и времени в игре, сброс по ПКМ. По умолчанию без сортировки.​
      • Выделение игрока без потери фокуса. F5 и Esc снимают выделение.​
      • Горячие клавиши: Enter - подключиться, Esc - снять выделение, повторно - закрыть, F5 - обновить, Ctrl+C - скопировать адрес, Ctrl+V - в избранное.​
    • Кнопка "Подключиться" неактивна для заполненных серверов: в главном окне, в меню по ПКМ и в окне "Игроки".​
    • Во всех вкладках убраны дубли серверов. Домен имеет приоритет над IP.​
    • В избранном сервер не добавляется повторно под другим адресом. Предлагается заменить IP на домен.​
    • Автообновление приостанавливается, пока открыт любой диалог.​
    • Временные статусы ("Остановлено!", "Сервер добавлен в избранное", "Скопировано") держатся 2 секунды, затем снова показывается число серверов.​
    • Проверка и исправление значений в Settings.json при загрузке.​
    • Исправлен фокус после закрытия выпадающих списков: стрелки сразу работают в таблице.​
    • Недоступные поля больше не забирают фокус по клику.​
    • Клавиатура: Esc снимает фокус с любого поля и элемента, в том числе выбранного через Tab; Enter - с поля ввода. В окнах первый Esc снимает фокус, второй закрывает окно.​
    • Фильтры: открытый список закрывается при нажатии любой клавиши, а само действие (стрелки, F5, Enter) выполняется.​
    • Выпадающие списки: стрелки <- и -> меняют значение, не сбрасывая фокус.​
    • Сообщения: сервер везде указывается как "Название (адрес)", длинные названия сокращаются.​
    • Окна вопросов: значок "?", заголовок "Подтверждение" и понятные кнопки. Окна сообщений стали компактнее.​
    • Таблицы: текст выровнен по центру строки при любом размере шрифта, заголовки и подписи масштабируются вместе с текстом.​
    • Сортировка: стрелка показывает реальный порядок (▼ - большее и свежее сверху) одинаково во всех таблицах. ПКМ в "Рейтинге" возвращает сортировку по очкам. Первый клик по "Игроки" ставит заполненные серверы сверху.​
    • "Очистить" в пустой истории больше не задаёт лишний вопрос.​
    • Исправлено зависание при запуске программы во время закрытия предыдущей копии.​
    • Заголовки столбцов выровнены по содержимому.​
    • Повышена стабильность: защита от сбоев во всех фоновых задачах.​
    • Переведены все сообщения, включая служебные и сообщения об ошибках. Исправлены регистр в русском и переводы для белорусского и украинского.​
  • Изменения:
    • Настройки: галочки собраны в таблицу: сверху вкладки и "Игроки", слева - автозагрузка, автообновление, запоминание сортировки и ширины столбцов. Окно настроек прокручивается.​
    • Фильтры: вынесены в выпадающий список "Фильтры: N". Фильтр задержки - "Задержка: до 15 мс".​
    • Параметр -enableAuto включает только автозагрузку и автообновление, сортировку и ширину не трогает.​
    • Минимальный размер окна - 1000×600.​
    • Settings.json: в режиме Steam не сохраняются game_exe и add_params. Сортировки хранятся в поле sort_order, старые переносятся автоматически.​
    • Проект полностью переработан: код разбит на модули, ускорены загрузка и опрос серверов.​
 
Версия 0.1.6r
  • Обновлено:
    • Fyne до версии 2.8.2.
    • Версия Go до 1.27.3.
  • Добавлено:
    • Защита таблиц от "ломающего" текста: названия серверов, карт, игр и ники игроков больше никогда не вылезают за границы своей ячейки и не сдвигают таблицу:
      • Арабский, иврит и другие письменности справа налево
      • Zalgo-текст ("башни" из диакритики)
      • Очень длинные названия и строки без пробелов
      • Сложные эмодзи, декоративные и сверхширокие символы
    • Символы, для которых в системе нет шрифта, показываются как "?" вместо пустых квадратов.
  • Улучшения:
    • Очистка названий и ников от служебных символов:
      • Удаляются символы, переворачивающие текст задом наперёд.
      • Переносы строк внутри названий заменяются пробелом: вторая половина названия больше не пропадает.
      • Удаляются невидимые символы, из которых делают "пустые" ники.
      • Длинные серии пробелов сокращаются до двух.
      • Нагромождение диакритики над буквой ограничено.
    • Таблица игроков: ники теперь проходят такую же очистку, как названия серверов.
    • Очистка и замена на "?" работают также в заголовках окон, строке статуса и полях "Карта" и "Игра".
    • Сокращённые названия серверов больше не обрываются посередине эмодзи или буквы с огласовкой.

|

 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху