Вышла новая версия qSpider — 1.1.0.
Новые фичи:
— standalone сборка игры (плеер без полки игр и загрузкой игры из конфига)
— в online версию добавлена возможность использовать ссылку на игру из каталога
— улучшено отображение горячих клавиш в меню паузы (вместо meta теперь отображается название клавиши в зависимости от платформы (Ctrl на Window и ⌘ на Mac)
Список исправлений:
— исправлена работа savegame/opengame команд и их работа при nosave=1
— исправлен запуск aero игр в десктоп версии
— исправлена работа тега center в названии действий, предметов и пунктов меню
— исправлена поддержка загрузки лейаута из qspgui.cfg
— исправлено закрытие view панели
— исправлена поддержка кирилицы в названии файлов внутри zip архивов созданных в Windows
— исправлено падение плеера если горячая клавиша была нажата при открытом msg/input
— исправлено сохранение по имени (savegame '1') в десктоп версии
— исправлена поддержка gt без пробелов вокруг (>'loc') внутри ссылок
###### Ссылки на игры из каталога в online версии
Теперь к ссылке на онлайн версию можно добавить параметр catalogId.
Например
https://qspfoundation.github.io/qspider/?catalogId=125 — игра сказочка на ночь
Если игры еще нет на полке — она будет автоматически добавлена.
Когда игра на полке — она будет запущена.
Соотвествующий id можно взять из ссылки на qsp каталог — qsp.org/index.php?option=com_sobi2&sobi2Task=sobi2Details& sobi2Id=126 &Itemid=55
необходимо взять значение параметра sobi2Id (126 в примере)
#### Standalone версия плеера
Для тех кто хочет опубликовать свою игру онлайн без полки игр или же собрать desktop версию своей игры была добавлена standalone версия плеера (без полки игр и загрузкой игры из файла конфига).
Особенности standalone сборки:
* если в файле конфига описано несколько игр — будет запущена первая из списка
* не поддерживаются архивы игр — их надо распаковать
В релиз теперь включается архив с standalone версией — qspider-player-standalone.zip
Игру вместе с файлом конфига game.cfg необходимо поместить в папку game.
После этого игру вместе с плеером можно публиковать online.
Для создания desktop версии игры подготовлен шаблон репозитория с необходимыми скриптами для сборки. Будет необходим аккаунт на github.com и минимальные навыки работы с git.
##### Создание репозитория
* заходим в репозиторий
https://github.com/QSPFoundation/qspider-standalone-game-template
* в правом верхнем углу нажимаем Use this template и Create a new repository
* обязательно отмечаем Include all branches
* вводим название репозитория, выбираем public (необходимо для использования Github Pages для онлайн версии и файла автоапдейтов)
* создаем репозиторий
##### Добавление файлов игры и минимальные настройки для online публикации
* клонируем репозиторий
* копируем файлы игры в папку репозитория (в дальнейшем лучше разработку вести в ней)
* если у игры не было game.cfg файла — заполняем пустой файл из репозитория, указывая id, название и путь к qsp(или qsps) файлу игры
* коммитим файлы и пушим
##### Публикация только онлайн версии
* заходим на вкладку Actions в репозитории
* в левой панели выбираем Update github pages (game only)
* в правом верхнем углу таблицы нажимаем Run workflow и нажимаем кнопку Run workflow в появившейся панели
* выбираем All workflows в левой панели
* Ждем пока Update github pages (game only) и pages build and deployment (появится после завершения (Update github pages (game only))) завершатся
Ссылку на игру можно найти в вкладке Settings -> Pages.
##### Настройка desktop сборки
###### Генерация ключей для подписи автоапдейтов игры
Для этого шага необходимо установить NodeJS
* открываем консоль (в windows это можно сделать нажав win + R и набрав cmd)
* запускаем команду
npx @tauri-apps/cli signer generate
* вводим пароль для нашего ключа
* копируем публичный ключ из вывода в консоли (строка случайных символов после слов Your public key was generated successfully: )
* открываем файл game.build.conf.json в папке репозитория и вставляем ключ в поле pubkey
* копируем приватный ключ из вывода в консоли (строка случайных символов после слов Your secret key was generated successfully — Keep it secret! )
* открываем вкладку Settings репозитория
* в левой панели выбираем Secrets and Variables — Actions
* в секции Repository secrets добавляем 2 записи:
1. TAURI_PRIVATE_KEY, в значение вставляем скопированный приватный ключ
2. TAURI_KEY_PASSWORD, в значение вводим пароль использованный при генерации ключей
###### Заполнение данных для десктоп сборки
* открываем файл game.build.conf.json в папке репозитория
* вводим название игры в поле package.productName
* изменяем версию в package.version если необходимо
* изменяем идентификатор сборки в поле tauri.bundle.identifier — только английские буквы разделенные точкой
* заполняем поля tauri.bundle.publisher, tauri.bundle.copyright, tauri.bundle.shortDescription и tauri.bundle.longDescription
* в поле tauri.updater.endpoints добавляем ссылку на github pages репозитория с /updater.json в конце
* настраиваем окно игры в секции tauri.window
* коммитим и пушим изменения
###### Создание релиза игры
* открываем вкладку Actions в репозитории
* в левой панели выбираем Game release
* в правом верхнем углу таблицы нажимаем Run workflow и нажимаем кнопку Run workflow в появившейся панели
* выбираем All workflows в левой панели
* ждем пока Game release успешно завершиться (может занять минут 10)
* в левой панели выбираем Update github pages (game and updater)
* в правом верхнем углу таблицы нажимаем Run workflow и нажимаем кнопку Run workflow в появившейся панели
* Ждем пока Update github pages (game and updater) и pages build and deployment (появится после завершения (Update github pages (game and updater))) завершатся
Ссылка на последний релиз будет доступна в правом сайдбаре на вкладке Code.
Для созданий новых релизов вместе с изменением файлов игры необходимо изменить версию в файле game.build.conf.json.
Ссылка:
https://ifhub.club/2024/02/11/qspider-110.html