Updating to 3.0 beta
This guide covers the 3.0.0-beta package. It is a beta, so test it with your server's integrations before normal play.
Replace both resources
- Back up the database, the phone and props resources, custom integrations, config, translations and case artwork. Store the backups outside
resources. Keepserver/custom/*.runtime.json, which holds saved voice-command settings. - Stop the phone and its props resource.
- Replace both folders with fresh copies from the same package, keeping the resource names. Do not copy new files over the old folders, or retired props and scripts stay behind. Make sure
ui/build,admin,streamandsqlare included. - Merge your config into the new files instead of restoring old config files. Restore credentials and runtime overrides, and compare custom translations with
locales/en.json. Check these new or changed files:config/config.phoneCases.luaconfig/config.storage.luaconfig/config.voice.luaconfig/config.voiceCommands.luaadmin/config/server.lua
- Add inventory items and icons for the new phones and any case mode you plan to use. Existing Y24 items and saved phones keep working and show as Y26. Check custom case artwork against the new phone shapes.
- Start props, then the phone. Dependencies and props must start before the phone. Test existing phones, messages, payments, calls, inventory and staff access before reopening the server.
You can edit these paths, and should carry your changes over:
- config files and
admin/config/server.lua client/custom/**andserver/custom/**- framework adapters in
client/apps/framework/**andserver/apps/framework/** ui/build/voice/**
Do not edit protected database or admin server modules to get around setup checks.
Database and driver
Use the supported MariaDB setup and start oxmysql before the phone.
Setup runs automatically for fresh installs and for upgrades from 2.3.1, 2.3.2, 2.3.3 and earlier 3.0 betas. It only adds to the schema, keeps existing data and resumes if interrupted. You do not need a manual admin SQL installer or a convar.
The database account needs these privileges in its existing schema:
- CREATE, ALTER, INDEX and CREATE VIEW
- SELECT, INSERT, UPDATE and DELETE
Startup verifies the schema before opening phone and admin services. Look for this line in the console:
If setup fails, fix the package, driver, database or permission problem it reports, then restart. Existing staff grants and sanctions are kept.
Keep a matching database and resource backup for rollback. Schema additions cannot be rolled back automatically.
Voice recognition (optional)
Voice models are separate downloads. Follow Voice Commands to install the .tar.gz file unchanged in ui/build/voice/.
- The feature is enabled by default. Without a model, players see setup instructions.
- Set
Config.VoiceCommands.Enabled = falseto hide and disable it. - Put models back after replacing or rebuilding the UI. Never put them in
ui/public/voice/.
Nearby audio
Nearby voice capture needs working TURN. Review Nearby audio and test with players on different networks. An existing relay config does not prove every player's network and microphone work.