Документация Pulse Phone

Требования

Для Pulse Phone 1.4.23 мин чтенияОбновлено

2. Требования

Что Обязательно? Что будет без этого
Включённый OneSync Обязательно Проверка при запуске падает с OneSync ... off. Добавьте set onesync on.
Игровой билд 2699 или новее Обязательно Модель телефона не стримится. Задайте sv_enforceGameBuild.
oxmysql (или ghmattimysql, mysql-async) на MariaDB 10.6+ или MySQL 8 Рекомендуется Если SQL-ресурс не запущен, данные хранятся в key/value-хранилище сервера. Они сохраняются, но делать к ним запросы нельзя, и если игроков больше примерно 30, стоит использовать базу данных.
Голосовой скрипт: pma-voice, mumble-voip, SaltyChat, TokoVOIP или YACA Рекомендуется Звонки соединяются, но без звука.
screenshot-basic Рекомендуется (стандартный ресурс или облегчённая копия из вашей загрузки: см. быстрый старт, шаг 6) Камера наводится на кадр, но не может сохранять фото.
Framework Необязательно Телефон работает в режиме standalone: телефоны привязаны к лицензии игрока, а у телефона собственный банк.

Полный блок для server.cfg:

server.cfg
set onesync on
set sv_enforceGameBuild 2699        # or newer

ensure oxmysql
# ... your framework, then your inventory, banking, garage and housing scripts ...
ensure pma-voice
ensure screenshot-basic
ensure phone
# ... scripts that use the phone ...

База данных. Какое хранилище использует телефон, решается при каждом запуске:

Ваш сервер Где телефон хранит данные
Запущен oxmysql, mysql-async или ghmattimysql, и база данных отвечает База данных. Таблицы создаются при первом запуске, а новые добавляются сами после каждого обновления.
Ни один SQL-ресурс не запущен Key/value-хранилище сервера, автоматически. Оно сохраняется после рестартов, но запросы к нему делать нельзя. Если игроков больше примерно 30 или консоль предупреждает, что сохранение хранилища идёт медленно, используйте базу данных.
SQL-ресурс запущен, но база данных не отвечает в течение 30 секунд Ничего не сохраняется, пока она не ответит. Консоль сообщает причину, а телефон повторяет попытку каждые 15–60 секунд и сам завершает запуск, как только база данных ответит.

В последнем случае можно заставить телефон использовать key/value-хранилище вместо базы, задав set phone_db_fallback "kvp" в server.cfg; эти данные остаются в key/value-хранилище и потом никогда не копируются в базу данных, поэтому используйте это на тестовом сервере, а не как обход сломанного соединения. У каждого запроса также есть лимит в 10 секунд: запрос, на который база данных так и не ответила, возвращается как неудачный приложению, которое его отправило, а консоль один раз называет этот запрос.

Поддерживаемые базы данных: MariaDB 10.6 или новее либо MySQL 8.0 или новее. phone.sql каждого релиза проверяется на чистой базе MariaDB в SQL mode MySQL 8 до сборки пакета. Более старые версии (MariaDB 10.4 или 10.5, MySQL 5.7) не тестируются и не поддерживаются, даже если могут работать.

phone.sql нужен только для хостингов, которые не позволяют ресурсу создавать таблицы. Collation в нём не указан: применяется utf8mb4 по умолчанию вашего сервера, как и когда телефон создаёт таблицы сам. Его безопасно выполнять на существующей базе данных, а повторный запуск новой версии после обновления добавляет только то, чего не хватает.

sv_stateBagStrictMode можно оставить включённым. Всё, что другие игроки видят у телефона (анимацию удержания, телефон в руке, его экран, фонарик), задаёт сервер после проверки значения, а не игра игрока.

Смена телефона

Таблицы другого телефона. Если телефон, которым вы пользовались раньше, оставил таблицы с такими же именами (например, phone_messages), при первом запуске они переименовываются в old_<name>, чтобы Pulse Phone мог создать свои. Ничего не удаляется. Если пользователю вашей базы данных нельзя переименовывать таблицы, проверка при запуске показывает [FAIL] Database с именами таблиц: выдайте пользователю права ALTER или переименуйте каждую в old_<name> в своём инструменте для базы данных (HeidiSQL, phpMyAdmin) и перезапустите сервер.

Переведено с английского. Если что-то здесь расходится с английской страницей, верна английская страница. English