Одна команда, чтобы не потерять корабль: регистрация и очистка на Steel Sky
Вы собрали корабль, облетели на нём полмира, оставили у друзей, вернулись через неделю, а его нет. Или наоборот: сервер подвисает, и кто-то в чате пишет «опять лагает», хотя игроков не так уж много. На Steel Sky у этих двух историй один общий корень, и сегодня мы расскажем, как мы его убираем и что для этого нужно от вас.
Корабли, о которых все забыли
Корабли на физике Sable и Simulated — одна из главных особенностей Steel Sky. Они живут по честным законам физики: у каждого есть вес, скорость и столкновения, и сервер просчитывает каждый такой корабль на каждом тике. Это одна из самых тяжёлых частей нагрузки на сервер.
Проблема в том, что корабли появляются не только тогда, когда вы сознательно что-то строите. Недособранная заготовка, обломки после неудачного полёта, забытая конструкция, случайно «собранный» кусок постройки: всё это тоже полноценные корабли. В Сезоне 0 мы подсчитали: каждые сутки появлялось около 200 таких «мусорных» кораблей, и у них у всех было одно и то же имя — ship. Каждый хранился на диске и в памяти и отнимал время у физики. Они копились сутками, и в итоге платили за это все: и вы, и мы.
Просто удалить «всё лишнее» нельзя: по виду корабля невозможно понять, нужен он владельцу или брошен. Поэтому мы решили спросить у игроков.
Что мы придумали: метка «этот корабль нужен»
В Сезоне 1 появилась регистрация кораблей. Идея простая: корабль, который вы зарегистрировали, мы не трогаем. Всё остальное сервер сможет безопасно убирать.
Регистрация делается одной командой. Посмотрите на свой корабль или встаньте на него и введите:
| Команда | Что делает |
|---|---|
/shipreg register | регистрирует корабль, на который вы смотрите или на котором стоите |
/shipreg list | показывает список ваших кораблей |
/shipreg info | подсказывает, считается ли корабль зарегистрированным и почему |
/shipreg unregister [id] | снимает регистрацию и освобождает слот |
Несколько правил, чтобы не было сюрпризов:
- Лимит: 5 кораблей на игрока. Дополнительный лимит бесплатно мы не выдаём. Этот вопрос решим позже, скорее всего, увеличение лимита будет доступно платно.
- Корабли с приватом AeroClaims регистрировать не нужно. Корабль под приватом уже считается защищённым.
- Регистрировать можно свой корабль или корабль без известного создателя. Чужой корабль зарегистрировать не получится: это защита от того, чтобы кто-то занял «слот» чужой работы.
- Если корабль больше не нужен, снимите регистрацию. Слот освободится, а корабль окажется в общем порядке очистки.
- Если вы разобрали и собрали корабль заново, проверьте через
/shipreg list, что регистрация на месте, и при необходимости зарегистрируйте его снова.
Когда рядом с вами появляется новый корабль, сервер может напомнить о регистрации прямо в чате: команду достаточно нажать мышкой.
А что с очисткой?
Очистка касается только кораблей без метки. Корабли, которые зарегистрированы или находятся под приватом AeroClaims, она не трогает.
Мы не будем делать вид, что это тонкая операция без риска, поэтому:
- удаление необратимо, поэтому мы запускаем его только осознанно и вручную, а не «само собой» по расписанию;
- перед удалением каждого корабля сервер проверяет его заново: нет ли регистрации, привата и связей с другими объектами;
- сроки очистки и оповещение перед ней мы объявим отдельно заранее, чтобы у каждого было время зарегистрировать нужное.
Если вы играете на Steel Sky всерьёз, самое время проверить свои корабли: /shipreg list занимает пять секунд.
Что это даёт вам
- Ваши корабли под защитой. Метка гарантирует, что очистка не заденет то, что вам нужно.
- Меньше нагрузки. Чем меньше лишних кораблей, тем меньше работы у физики и тем меньше места занимает мир на диске и в памяти. Особенно это важно на пике онлайна.
- Порядок в мире. Меньше обломков и забытых заготовок, больше места для настоящих построек.
Частые вопросы
Я зарегистрировал корабль, но команда пишет, что он не мой. Сервер определяет владельца по нескольким признакам, и в редких случаях может ошибиться. Создайте тикет с координатами корабля: администратор зарегистрирует его вручную.
Нужно ли регистрировать обычные постройки и механизмы? Нет, речь только о кораблях на физике Sable. Обычные постройки и механизмы очистка не затрагивает.
Корабль с приватом тоже удалят? Нет: корабль под приватом AeroClaims считается защищённым.
Что будет, если лимит исчерпан? Снимите регистрацию с ненужного корабля. Дополнительный лимит бесплатно мы не даём: как его можно будет получить, объявим позже, скорее всего, за плату.
Вместе чище
Мы хотим, чтобы Steel Sky оставался местом, где можно строить огромное и сложное без ощущения, что сервер вот-вот сдастся под тяжестью забытых заготовок. Регистрация кораблей — первый шаг: несколько секунд вашего времени в обмен на спокойствие за свою постройку и более ровную работу сервера для всех.
Нашли странное поведение команды или корабль, который почему-то не регистрируется? Напишите нам через раздел поддержки: каждое такое сообщение помогает сделать систему точнее.
Попробуйте на нашем сервере
Всё описанное выше уже работает на Steel Sky. Скачайте лаунчер Runes & Rails, зайдите на сервер, соберите корабль и зарегистрируйте его командой /shipreg register. Если вы новичок, начните со страницы «Как зайти на сервер».