Что на самом деле происходит
Каждый персонаж мигрирует индивидуально, при первом входе после переключения:- Игрок выбирает персонажа.
- Appearance проверяет: есть ли сохранённый вид в
rco_appearance? - Да → используем. Готово.
- Нет → читаем старые stock-данные фреймворка, конвертируем, одна строка в
rco_appearance. - С этого момента RCO — источник истины для этого персонажа. Старые таблицы для геймплея больше не читаются.
- RSG Core
- VORP Core
Читает строку персонажа в
playerskins (skin и clothes). Stock rsg-appearance не должен работать.После миграции Appearance не пишет обратно в playerskins. Поэтому rsg-barbers нужно остановить — стрижки там сохранялись бы в таблицу, которую никто не читает.Чем миграция не является
- Не разовая job, конвертирующая все строки на пустом сервере.
- Не автоматическая для сторонних appearance, хранивших вид где-то ещё.
- Не двусторонняя синхронизация. Правки старых таблиц после миграции не обновляют RCO.
Битые или пустые старые данные пропускаются, а не сохраняются как глючная mesh. Игроку может понадобиться пересобрать вид в creator или в магазине.
Простой чеклист
- Бэкап базы (всегда перед большими изменениями).
- Остановить stock appearance (Установка).
- Запустить Appearance (+ Creator, если используете).
- Пусть игроки зайдут.
Config.Debug ненадолго в первый день — строки миграции в консоли, включая персонажей, которых не удалось конвертировать.

