[#] qSpider 1.1.0
RSS-bot(tavern,2) — All
2024-02-11 13:50:10


Вышла новая версия 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