Приложение TMC - The Modding Community

Уже доступно

Приложение TMC App

Просматривайте игровые серверы с пингом, измеренным вашим собственным подключением. Ведите профиль модов для каждой игры. Запускайте всё из одного окна в Windows, Linux или macOS.

Windows Linux macOS GPL-3.0

Сборок для Android и iOS пока нет.

Исходный код на GitHub

Рисунок приложения. Названия и цифры выдуманы.

Внутри приложения

Шесть экранов, одно окно

Выберите вкладку, и окно сменит экран. Это рисунки, но такие экраны в приложении есть.

Начните с игры

Все игры сайта, отсортированные по числу игроков онлайн. Фильтруйте по типу или по играм, в которые можно играть или ставить моды из приложения. Каждая карточка ведёт к серверам или модам игры.

Рисунок приложения, а не снимок экрана.

И остальное

Что ещё внутри

Находит ваши игры

Читает то, что уже записали Steam, Epic, GOG, Xbox, Ubisoft, EA и Battle.net. Предлагает папку. Подтверждаете её вы.

Вход по ссылке

Ссылка tmc://play на сайте открывает приложение на этом сервере, с игрой и вашим пингом. Само оно никогда не подключается.

Друзья и группы

Смотрите, кто в сети и на каком сервере. Принимайте заявки и приглашайте людей в группу. Это те же друзья и группы, что показывают игры.

Обновляется само

Проверяет обновления при запуске и сверяет подпись обновления со встроенным в приложение ключом, прежде чем что-либо заменить. Канал Stable или Beta выбирается в настройках.

Таблицы лидеров

У каждой игры есть страница с самыми загруженными серверами и таблицами лидеров, рядом с которыми показано ваше место.

UDP или TCP

Игры TMC подключаются по UDP. Если ваша сеть блокирует UDP, один переключатель в настройках переведёт их на TCP (WebSocket). Игроки обоих видов делят один сервер.
Менеджер модов

Меняйте профили без копирования файлов

Моды один раз распаковываются в песочницу, а при развёртывании связываются с папкой игры. Смена песочницы меняет ссылки, а не файлы на диске, и папку игры можно вернуть в прежний вид в обоих случаях.

Copy Файлы записаны Полная копия
Hard link Добавлены ссылки Не нужно
Symlink Добавлены ссылки Не нужно
USVFS Не тронута Не нужно

USVFS есть только в Windows и по умолчанию выключен. Игре сообщают, что моды на месте, а в её папку ничего не записывается. Способ новый и на настоящей игре пока не проверялся.

Сначала подготовка, потом развёртывание

Файлы сначала распаковываются в песочницу. Папка игры меняется только после нажатия «Развернуть», так что недокачанный файл в неё не попадёт.

Отмена работает

Ничего в папке игры не перезаписывается: оригинал сначала уходит в резервную копию. Каждый развёрнутый файл записывается, поэтому очистка песочницы возвращает то, что там было.

Конфликты видны заранее

Объединённое дерево файлов показывает, какой мод побеждает по каждому пути, пока порядок загрузки ещё можно изменить, а не после вылета игры.

Синхронизация по желанию

Моды, порядок и параметры запуска песочницы могут следовать за вашей учётной записью на второй компьютер. Это настройка отдельной песочницы. Пути к папкам и журнал развёртывания остаются на машине.

В приложение входят правила для нескольких десятков игр. Не все они проверены на настоящих установках, и в списке в README указано, какие именно.

Плагины и безопасность

Страница мода может показывать текст. Выполнить она ничего не может.

Описания модов это недоверенный текст, показанный в окне, которое может общаться с приложением. Поэтому ваш вход и файловая система остаются на стороне Rust, а интерфейс получает только данные. Плагины подчиняются тому же правилу: это данные, а не код.

Вход выполняется на сайте

Приложение открывает ваш собственный браузер на moddingcommunity.com и ждёт. Пароль оно не видит никогда.

Токены в связке ключей системы

Связка ключей в macOS, диспетчер учётных данных в Windows, Secret Service в Linux. Короткоживущий токен доступа хранится только в памяти.

Плагины это данные

Плагин установки перечисляет шаги с файлами. Плагин запросов описывает пакет и способ чтения ответа. Тема это таблица цветов. Нет ни скриптов, ни шага «запустить эту программу».

Разрешения подтверждаете вы

Плагин называет нужные ему папки. Вы видите полный список и подтверждаете именно этот набор. Если позже он изменится, плагин отключается, пока вы не прочтёте его снова.

Каждый путь под замком

Пути плагинов относительные по построению и проверяются на обход каталогов, симлинки и zip-slip.

Журнал, который можно прочесть

Подтверждения плагинов, развёртывания и подключения по RCON записываются в журнал действий, который открывается в настройках.

Нашли проблему безопасности? Не создавайте публичный issue. Как сообщить о ней, описано в SECURITY.md.

Загрузка

Скачайте приложение

В каждом релизе есть установщик для Windows, портативный .exe и .msi, .deb и AppImage для Linux и .dmg для macOS. После первой установки приложение обновляется само.

Портативная сборка для Windows не регистрирует запись в меню запуска и ссылки tmc://.

Linux одной строкой

Без root и без менеджера пакетов. Скрипт сверяет загрузку с контрольными суммами релиза, устанавливает в ~/.local и регистрирует запись в меню запуска и ссылки tmc://.

curl -fsSL https://raw.githubusercontent.com/modcommunity/tmc-app/main/scripts/install.sh | sh

Приложение с открытым кодом под лицензией GPL-3.0. Об ошибках сообщайте на странице багов, а планы смотрите в дорожной карте.