Skip to content

Releases: chaoseandbladesGOW/ArcadeDeck

0.2.00

0.2.00 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 01 Jun 13:40
e34629d

🚀 ArcadeDeck 0.2.00 — Большое обновление! Больше игр, больше удобства, больше возможностей! 🎮

Это огромное обновление, которое объединяет все мои наработки и улучшения за последние месяцы и приносит массу новых функций, игр, улучшений интерфейса и глубокий рефакторинг кода. Программа стала стабильнее, быстрее и удобнее — мы уже близки к полноценному релизу!

🎮 Новые игры в каталоге

Добавлены новые игры из разных платформ:

  • God of War 1 (PS2)
  • God of War 2 (PS2)
  • God of War 3 (PS3)
  • Syberia 2 (PS2) (в тестировании)
  • Rocky Balboa (PSP)
  • Looney Tunes Racing (PS1) (серия 3 в 1)
  • Grand Theft Auto: Chinatown Wars (Nintendo DS)
  • The Legend of Zelda: Phantom Hourglass (Nintendo DS)
  • Pokémon Black Version 2 (Nintendo DS)
  • Castlevania: Portrait of Ruin (Nintendo DS)

🔄 Технические улучшения и рефакторинг

Переработана архитектура программы:

  • Программа перестроена по принципу "Один файл — одна задача". Главный файл теперь только запускает компоненты, а вся логика распределена по отдельным модулям. Это сильно упрощает отладку, поиск ошибок и добавление новых функций.
  • Централизована работа с обложками — теперь всё в одном модуле, без дублирования.
  • Унифицирована система установки игр (единая функция для каталога и пользовательских игр) — автоматическая установка эмуляторов, конфигов, скриптов запуска.
  • Кэширование конфигов — модули больше не запрашивают данные самостоятельно, а берут их из "сердца" системы установки. Меньше дублирования кода, проще отладка.
  • Архивы автоматически удаляются после успешной распаковки.
  • "Ленивая загрузка" плиток в каталоге (по 4 за раз) — устранены подвисания при открытии вкладки "Все".
  • Проверка обновлений теперь раз в 6 часов — убраны зависания при запуске и снижена нагрузка на GitHub.
  • Очистка логов при каждом запуске программы — всегда актуальная информация для отладки.
  • Теперь подсказки по работе с программой сделаны с иконками и хорошо видимыми.

Что это даёт вам, пользователям?

  • Обновления и патчи будут выходить гораздо быстрее.
  • Больше времени разработчика уходит на добавление игр и новых фич, а не на борьбу с устаревшей архитектурой.
  • Программа стала надёжнее и производительнее.

🎨 Интерфейс и каталог игр

Улучшения каталога и библиотеки:

  • Все игры теперь с красивыми обложками — библиотека выглядит приятно и радует глаз.
  • Плитки игр – убраны острые углы у фото, которые перекрывали обводку.
  • Переработаны плитки информации об игре: важные данные крупным шрифтом, текст в два ряда, улучшенный стиль.
  • Выровнены верхние кнопки (Категория, Поиск, Добавить игру).
  • Индивидуальный стиль фокуса на плитках — теперь всегда видно, какая игра выбрана.
  • Фильтрация по платформам прямо в поиске — легко находить игры для нужной консоли.
  • Исправлены проблемы в светлой теме.

Новые функции

Ключевые возможности:

  • Полуавтоматическое добавление своих игр: выбираете файл → вводите название и платформу → игра добавляется в библиотеку.
  • Поддержка эмулятора melonDS (Nintendo DS) — обновлены конфиги, теперь работает управление в играх.
  • Начальная поддержка реестров для эмуляторов Nintendo Switch.
  • Кнопка "Добавить в Steam" на странице игры — запускайте игры отдельно от ArcadeDeck.
    Внимание: пока ярлыки без обложек.
  • Полноэкранный режим – программа теперь работает во весь экран как на рабочем столе, так и в игровом режиме.
  • Полная навигация геймпадом во всех разделах: библиотека, настройки, "Об игре", приветственное окно, окно логов (открывается через Настройки → Инструменты отладки) и даже в системе установки пользовательских игр.
  • Кнопка выхода из поиска изменена на Y — больше не конфликтует с клавиатурой.

🐛 Исправления багов и ошибок

Многочисленные фиксы:

  • Исправлена критическая ошибка навигации в режиме рабочего стола: управление больше не "раздваивается", каждое нажатие выполняет только одно действие.
  • Исправлен «бесячий баг» – теперь при ошибке или сбое навигация не отваливается.
  • Исправлена проблема фоновой навигации – когда игра запущена, навигация в программе больше не работает (раньше она мешала игре).
  • Навигация в системе установки пользовательских игр – больше не ломается при добавлении.
  • Обложка игры на странице «Об игре» – теперь загружается с первого раза (раньше только со второго).
  • Исправлено мигание текста при обновлении логов и, как следствие, ошибка очистки логов.
  • Исправлена ошибка копирования – если игра уже лежит по правильному пути, программа не пытается копировать папку в себя (раньше пыталась «запихнуть папку в саму себя»).
  • Исправлен выход из поиска в игровом режиме.
  • Убрана чрезмерная чувствительность стиков.
  • Исправлено автовыделение текста в поиске.
  • Решены проблемы с установкой нескольких игр на одну платформу.
  • Нормальная отмена установки (кнопки больше не "залипают").
  • Исправлены опечатки в реестре и названиях игр (например, Uncharted: Golden Abyss, правильный размер God of War 2).
  • Поиск теперь открывается с полным списком игр.
  • Множество мелких багов интерфейса, чистка кода и оптимизации.

Хочу от всего сердца поблагодарить всех, кто тестировал, находил баги, предлагал идеи и просто поддерживал проект! ❤️ Ваше участие — это огромный заряд энергии для меня. Благодаря вам ArcadeDeck становится настоящей альтернативой EmuDeck и RetroDeck. Мы вместе делаем удобную и мощную оболочку для эмуляции на Steam Deck!

Пробуйте, играйте и делитесь впечатлениями! 🚀

0.1.98

0.1.98 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 20 Oct 21:03
e34629d

🚀 Добавление игр в Steam, исправление ошибки с SD-картами и Tekken 5!

В ArcadeDeck добавлена новая игра

  • Tekken 5 (PS2)

🔄 Технические улучшения

Исправление ошибки конфигов:

  • Была улучшена функция определения SD-карты. Теперь распознается один каталог для SD-карт, а не несколько, как это было раньше (по ошибке)

🎨 Работа над интерфейсом и навигацией

Улучшения интерфейса:

  • Мелкие улучшения в результатах поиска

⚡ Новые функции

Дополнительные возможности:

  • Добавлена кнопка "Добавить в Steam" на странице информации об игре! Теперь вы можете добавлять игру в Steam и запускать игру отдельно от программы!
    Важно: пока ярлык игры создается без обложки и картинок. Как временное решение советую устанавливать обложки к играм самостоятельно через плагин SteamGridDB в Decky Loader.

🐛 Исправление багов и ошибок

Исправление ошибок

  • Исправлена ошибка, которая приводила к неправильному размещению конфигураций для эмуляторов, при которой эмуляторы не запускались в случае, когда игра была перемещена или установлена на SD-карту.
  • Исправлена ошибка, при которой в установщике не учитывался текущий путь, из за чего конфиги эмуляторов имели неправильные пути в конфигах

0.1.97

0.1.97 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 16 Oct 11:45
b4939c7

🚀 Небольшой хотфикс

🐛 Исправление багов и ошибок

Игры PSP

  • Исправлена ошибка создания скрипта запуска игр PSP, в следствии чего игры не запускались в игровом режиме

0.1.96

0.1.96 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 15 Oct 12:46
fa1579e

🚀 Поддержка новых платформ, улучшение интерфейса и новые функции!

🎮 Добавление и поддержка новых платформ и игр

ArcadeDeck теперь поддерживает больше платформ!

  • Добавлена поддержка игр для PS1, PS2 и PS3
  • Реализована почти полная поддержка эмуляторов:
    • DuckStation для PS1
    • PCSX2 для PS2
    • RPCS3 для PS3
  • Реализована начальная поддержка эмуляторов
    • Xemu для Xbox Original
    • Xenia для Xbox 360
    • Yuzu, Ruyjinx, Citron, Eden для Nintendo Switch
    • MelonDS для Nintendo DS

Что это значит для пользователя:

  • В случае пости полной поддержи: программа умеет запускать эмулятор, игру, но это ещё нуждается в доработке
  • Программа умеет запускать эти эмуляторы
  • Автоматическая установка каждого эмулятора
  • Созданы каталоги и реестры для работы с эмуляторами и играми
  • Прописаны поддерживаемые форматы файлов для каждого эмулятора
    Конечно же, это будет улучшаться в будущем!

В ArcadeDeck добавлены новые игры

  • игр было добавлено немного в силу многих изменений, что произошли в программе. Дальше – больше!:
    • Alien Resurrection (PS1)
    • Gran Turismo 3: A-Spec (PS2)
    • Dead Nation (PS3)
    • MotorStorm: Apocalypse (PS3)

🔄 Технические улучшения

Переход на AppImage:

  • Начиная с этой версии теперь используются Appimage-версии эмуляторов. Это упрощает обращение к эмуляторам и в будущем будет реализована функция переноса эмуляторов на SD-карту!

Новые поддерживаемые форматы конфигов:

  • Теперь модуль работы с конфигами умеет обрабатывать конфиги с форматами .ini, .cfg, .conf

🎨 Работа над интерфейсом и навигацией

Улучшения интерфейса:

  • Все настройки программы приведены в единый вид
  • Улучшена работа с навигацией Steam Deck (стабильнее, но еще в работе)
  • В поиск добавлено отображение платформы игры в виде маленькой плашки
  • Полностью переработан экран настроек (визуально)
  • Переписан экран "Об игре" (визуально)

Исправления интерфейса:

  • Исправлена ошибка двойного появления диалогового окна в настройках
  • Исправлен баг с подсказками в нижней части экрана

📚 Экран библиотеки игр

Улучшение UX:

  • При отсутствии игр вместо кнопки добавления появляется область для перетаскивания файлов
  • В будущем: автоопределение игры и платформы по структуре и расширениям файлов

⚡ Новые функции

Дополнительные возможности:

  • Добавлена кнопка "В проекте участвовали"
  • Реализована функция создания архива логов для быстрой отправки при проблемах
  • В приветственном окне добавлен выбор места сохранения игровых данных (можно изменить в настройках)
  • Добавлена возможность включить/выключить автопрокрутку в окне логов
  • Реализована функция очистки окна логов
  • Добавлена функция переноса игра SD-карту или свое место по выбору! Теперь сожно устанавливать игры на SD-карте, не занимая место на основном диске. При переносе игровых данных все переносится на нужное вам ласположение: обложки, игры, скрипты запуска. Скрипты запуска и остальная программа адаптируются под изменение путей при перезапуске программы.

🎯 Дополнение экрана информации об игре

Новая информация:

  • Добавлена плашка с данными о годе выпуска игры, размере, языке текста/озвучки
  • Добавлена информация о разработчике и рейтинг игры

🐛 Исправление багов и ошибок

Работа навигации вне окна программы

  • Исправлена ошибка, когда программа находилась вне фокуса, но навигации в программе продолжала работать и работу с кнопками полностью перехватывала программа. Теперь, когда запустится игра в эмуляторе или когда вы откроете браузер, то навигация в программе будет блокироваться, а когда пользователь вернется в программу — все будет работать как прежде. Это было также сделано благодаря полному переносу всего кода, связанного с навигацией, в единый модуль
  • Исправлена ошибка, при которой при закрытии программы появлялось 2 диалоговых окна вместо одного, когда была нажата плитка выхода из программы

Обновление приносит значительные улучшения в поддержке платформ и пользовательском опыте!

0.1.95

0.1.95 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 17 Sep 22:14
30cf1aa

🚀 Игры, свои обложки, починка модуля обновлений и многое другое!

⚡ Поддержка новых игр!

ArcadeDeck поддерживает новые игры!

  • Metal Gear Solid: Peace Walker
  • Daxter
  • Ratchet & Clank: Size Matters
  • Kingdom Hearts Birth by Sleep
  • Motorstorm Arctic Edge
  • Final Fantasy VII: Crisis Core
  • Gran Turismo
  • Ridge Racer 2
  • Silent Hill Shattered Memories
  • GTA Liberty City Stories
  • GTA Vice City Stories
  • Lego Star Wars II

📊 Небольшая доработка интерфейса

  • Убраны лишние элементы дизайна у поисковика. Теперь результаты поиска выглядят более современно.
  • В информационном окне дополнительные кнопки по типу удаления игры или загрузки обложек вынесены в контекстное меню.

🔧 Технические улучшения и новые возможности

Архитектурные изменения:

  • Немного переработана работа с реестром поддерживаемых игр. Теперь каждая поддерживаемая платформа будет иметь список игр только для этой платформы. Это сильно упрощает добавление игр например не только для PSP, но и например для PS2 или Xbox Original
  • Реализована функция удаления игр. Эта функция удаляет игру, а так же связанные с ней скрипты запуска и очищает запись в реестре установленных игр. После удаления игры экран "Об игре" очищается, а кнопки снова меняются на "Установить"
  • Реализована функция загрузки своих обложек. Добавлена папка "images" в пользовательскую папку users. Теперь пользователь сможет загрузить свою обложку и она тут же обновится на экране "Об игре" соответствующей игры.

🐛 Исправленные багов и ошибок

Исправление мелких ошибок

  • Правка ошибок в модуле приветственного окна настройки
  • Исправлена ошибка при проверке обновлений, когда модуль обновлений все время считал, что обновлений нет
  • Был переработан механизм работы с игровыми реестрами, теперь все игры и реестры (и конфиги) будут соответствовать целевой платформе. Это скорее техническое изменение и пользователь ничего не увидит внешне, но это позволяет мне легко масштабироваться на новые платформы и гибко добавлять например, 3 игры для NES, 8 игр для PS Vita, 32 игры для Xbox Original.
  • Так же был с нуля переработан модуль поиска. Это исправляет ошибку, когда интерфейс библиотеки игр смещался вниз при появлении результатов поиска. Поиск работает так же как и раньше, но теперь без багов.

0.1.94

0.1.94 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 09 Sep 17:11
80e58be

🚀 Полная переработка системы загрузки игр, улучшенная стабильность - все для подготовки к первому публичному бета-релизу!

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

⚡ Полная замена модуля загрузки

Переход с aria2c на современный libtorrent с максимальной оптимизацией:

  • Теперь не нужно ждать пока начнется скачивание — оно начнется почти мгновенно (еще тестируется!)
  • Теперь модуль скачивания будет работать на большинстве lunix-дистрибутивов (но это важно в самую первую очередь для Steam Deck!)
  • Автоматическая адаптация под скорость интернета.
  • Умное управление буферами и соединениями
  • Стабильная скорость без просадок

💡 Новый модуль работы с игровыми данными!

Модуль, который централизует ранее разбросанные игровые данные в единый модуль!

  • Это решает достаточно сложный на первый взгляд баг, когда окно "Об игре" при открытии окна с поисковика отображало правильную информацию, а по нажатию на плитку с игрой информация об игре не была синхронизирована и показывались пустые данные игр и кнопки не соответствовали статусу установки игры.

📊 Умный мониторинг и статистика

Детальная информация о загрузке в реальном времени:

  • Текущая скорость (MB/s) и максимальная достигнутая
  • Количество пиров и сидов

🎯 Улучшения пользовательского опыта

  • Опциональный детальный лог для продвинутых пользователей

🧩 Страница "Об игре'

  • Начата перестройка страницы об игре, теперь на ней информация более структурирована, добавлена заглушка под будущие обложки для игр.
  • Реализовано удаление игр.

🔧 Реестр платформ (эмуляторов)

  • Теперь программа поддерживает все форматы игр PSP: .iso, .cso, .chd, .elf, .pbp, .prx!

🔧 Технические улучшения

Архитектурные изменения:

  • Современное API libtorrent вместо устаревших методов
  • Улучшенная обработка ошибок и отмены загрузки
  • Автоматическое восстановление при сбоях

🐛 Исправленные багов и ошибок

Архитектурные изменения:

  • Теперь информация об играх централизована - она будет показываться правильно и через поисковик, и через нажатие по плитке игры.
  • Исправлено создание плитки после установленной игры: раньше данные об установленной игре не передавались правильно.
  • Исправлен баг, который запускал игру после закрытия окна установщика, хотя это не было ожидаемым поведением!
  • Исправлен баг, когда по нажатию кнопки "Играть" запускалось аж два эмулятора с игрой. Слава богу, это теперь исправлено!
  • Теперь модуль поиска не дублирует информацию об одной и той же игре, так же устранение этой ошибки исправило другую проблему - теперь всегда открывается правильная страница информации об игре.
  • Был проведен рефакторинг небольшой части кода - он стал чище и проще.

⚙️ Новый реестр алиасов для платформ

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

0.1.93

0.1.93 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 31 Aug 13:45
70e8087

🔧 Снова исправление багов и ошибок!

🐛 Исправление багов и ошибок

  • Исправлен баг, из за которого не было видно переключения между слоем с играми и слоем настроек
  • Исправлен баг, из за которого была неправильная обработка запуск игр и они, соответственно, не запускались
  • Исправлена ошибка, приводившая к неправильному расположению созданных скриптов запуска
  • Исправлены остальные ошибки и баги

0.1.92

0.1.92 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 30 Aug 22:01
7b2f40e

🔧 Патч стабильности: критические исправления архитектуры и доработка системы установки!

Это обновление нацелено на исправления различных ошибок после тестирования системы установки с пользователями! Так же это обновление нацелено на доработку базовых механизмов программы для подготовки программы к распространению и началу открытого бета-тестирования!

📦 Модуль распаковки архивов

Добавлен новый этап в системе установки — умная система распаковки игр:

  • Автоматически определяет тип файла
  • Распаковывает архивы (ZIP, RAR, 7Z, TAR и многие другие форматы!)
  • Если это не архив, то файлы оставляются как есть.
  • Показывает прогресс в реальном времени

Добавлен модуль запуска игр!

  • Автоматически определяет формат игры и эмулятор
  • Автоматическое создание .sh скрипта запуска игр
  • В каталог программы добавлен новый реестр, он дает модулю запуска нужную информацию для создания команд запуска. А значит эта система легко расширяема для поддержки новых эмуляторов!
  • Теперь после установки игры создается .sh, по нажатию на который игра запустится сразу, вы не увидите работу эмулятора визуально - будет показана сразу игра.

🐛 Исправление багов и ошибок

  • Исправлен баг, когда кнопка "Отмена" не работала должным образом
  • Исправлена ошибка в логике кода, из за которой результаты поиска появлялись в двух местах. Визуально это выглядело так, будто сейчас работают два поисковика одновременно.
  • Исправлен баг, когда при успешном завершении установки показывалось уведомление об отмене установки
  • Исправлен баг, когда нельзя корректно закрыть диалоговое окно после успешной установки
  • Исправлена ошибка, при которой не создавался лог-файл основной программы
  • Исправлен баг, приводивший к сбою при попытке установить эмулятор PPSSPP, если он не был установлен на Steam Deck
  • Исправлен баг, при котом перед этапом скачивания установщик не анимировался в неопределенном состоянии
  • Модули системы установки были оптимизированы для более стабильной работы и отказоустойчивости при высокой нагрузке
  • Оптимизировано потребление ОЗУ при работе системы установки.

0.1.91

0.1.91 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 26 Aug 21:01
71c642a

🚀 Улучшенный поиск и система установки

🔎 Улучшенный поиск и выдача

  • Динамическая подсказка при вводе: поиск показывает названия игр из registry_games.json и (при наличии) из отсканированной локальной библиотеки
  • Чистый интерфейс: результаты отображаются в виде простого списка названий — без создания плиток, для ускорения навигации
  • Быстрый доступ: клик по названию в выдаче открывает страницу с полной информацией об игре

🪟 Надёжное информационное окно

  • Безопасное создание: GameInfoPage теперь создаётся безопасно при первом запросе — устранена причина AttributeError
  • Универсальный формат: метод show_game_info поддерживает оба формата входных данных:
    • dict с полной информацией
    • str (title/id) — выполняется поиск в реестре и локальной библиотеке
  • Корректное отображение: информационная страница получает флаг установки через защищённую проверку is_game_installed

🛠️ Создана система установки

  • Полная автоматизация: добавлена полноценная система установки игр
  • Надёжное скачивание: установщик написан с упором на стабильное скачивание и подготовки файлов
  • Поддержка RAR: реализована корректная обработка игр в RAR-формате

🛡️ Надёжность и совместимость

  • Устойчивые проверки: game_scanner.is_game_installed и scan_games корректно обрабатывают None, строки и словари
  • Гибкая поддержка: SearchBar поддерживает оба формата registry_games.json — список или словарь с ключом "games"
  • Защитные механизмы: добавлено логирование и проверки в ключевых местах
  • Безопасное окружение: папка виртуального окружения перенесена в app/ для исключения рисков

🐛 Исправленные баги

  • Исправлена ошибка AttributeError: 'SearchBar' object has no attribute 'searchUpdated'
  • Устранён краш при клике на результат поиска (падение из-за None в is_game_installed)
  • Исправлено поведение при отсутствии registry_games.json — приложение переключается в минималистичный режим

0.1.90

0.1.90 Pre-release
Pre-release

Choose a tag to compare

@chaoseandbladesGOW chaoseandbladesGOW released this 08 Aug 22:57
f1c5422

📦 Что нового? (В разработке)

📚 Большое обновление ArcadeDeck!

Это обновление, на самом деле — отправная точку к тому, чего хотят все, кто связан так или иначе с эмуляцией — простоту работы с ними и простое желание поиграть или вспомнить детство. Я считаю, что вспомнить детство в контексте запуска ретро-игр не должно быть времязатратным или хлопотным. В этом обновлении я закладываю основу работы программы, расчерчиваю ядро программы и строю его так, чтобы оно работало стабильно и было гибким к новым изменениям в программе.

Это будет новый опыт для тех, кто знает про эмуляцию.
А пока — список изменений ниже:

🧩 Полностью переработан главный экран

  • Новый экран библиотеки создаётся автоматически, если в папке users/games обнаружена одна или более игр.
  • Если игр нет — появляется минималистичный экран:
    Поисковик в центре. На данный момент поддерживает лишь небольшое количество игр, встроен поиск по гайдам со сборника. В дальнейшем будет активно развиваться.
    Одна кнопка-плитка для добавления игры — через нажатие или drag-n-drop!
  • Поддержка перетаскивания: можно переместить .iso, .cso или .pbp файл прямо в окно программы.
  • Поддержка открытия системного проводника (через ту же кнопку) — для выбора файла вручную.
  • После добавления — программа автоматически переместит игру в каталог и отобразит игру в виде плитки.
  • В программе реализована динамическая отрисовка плиток игр. Добавили 10 игр в программу — столько и появится :)
  • Начало работы над механикой: если у игры нет конфига — программа предложит его создать или запустить как есть.
  • Реализовано, нужны небольшие доработки: если добавлен неподдерживаемый формат — программа проигнорирует такие файл и добавить только игры поддерживаемых форматов. В программе невозможно добавить неподдерживаемый формат — его нет в списке в проводнике, а при перемещении с помощью drag-n-drop будет активен крестил — формат не поддерживается.
📂 Файлы, задействованные в системе
  • game_library.py — отвечает за главный экран (поисковик, плитки, drag-n-drop)
  • game_importer.py — логика обработки вручную добавленных файлов
  • game_scanner.py — сканирует папку users/games и проверяет форматы
  • platform.json — описывает поддерживаемые форматы (расширяемо)
  • search_bar.py — Модуль поиска, в будущем расширится

🧩 Экран информации об игре

  • Начальная реализация экрана информации об игре. На этом экране пользователи в будущем смогут запускать свои игры, устанавливать новые, а так же изучить описание, скришноты и тд.

🎮 Система навигации в программе

  • Отказ от устаревшего pygame для работы с управлением геймпадом, его событиями и тд.
  • Вместо этого будет использоваться SDL2 последней версии.

🧠 Расширяемая система форматов

  • Введён platform.json — содержит информацию о поддерживаемых форматах эмуляторов.
  • Пока реализована поддержка PPSSPP (PSP), с форматами .iso, .cso, .pbp.

⚙️ Оптимизации. чистка проекта. правка багов

  • Удалены старые дублирующиеся UI-элементы, кнопки, верхние панели
  • Обновлена централизованная система навигации между слоями
  • Поддержка действий с геймпада (навигация, выход, установка игр)
  • Очистка кода от плагинов, старых методов и дублирования
  • Упрощена структура проекта, основные функции разделены по модулям
  • Исправлен сломанный запуск с ярлыка на рабочем столе 😀
  • Исправлена ошибка при отсутствии обновлений не показывалось уведомление об отсутствии обновлений.

💽 Установщик

  • Один кроссплатформенный установщик, который скачивает только нужную версию
  • Удалена лишняя документация и тесты из пакета — размер архива стал меньше
  • Финальная чистка кода установщика, улучшена скорость установки

📈 Результаты работы

  • Полный вес программы со всеми компонентами уменьшился с 292МБ до 260МБ
  • Удалено более 400 строк кода
  • Программа работает стабильнее и плавнее
  • Занимает меньше места примерно на
  • Заложена мощная основа для относительно простой масштабируемости в плане поддержки эмуляторов, новых игр, конфигураций и тд.