Личный кабинет игрока
Сводка
Личный кабинет — отдельный экран-профиль игрока. Ванильная статистика показывает «скрафчено X кирок», но карьеру в моде — сколько EU/FE произвела сеть, сколько руды переработали машины — она не видит. Кабинет собирает эту модовую активность и превращает её в карьерную прогрессию: система очков мастерства на 40 уровней, сгруппированных в 8 тематических званий (от Ученика до Легенды). Экран открывается хоткеем K (переназначается в настройках; P в ванили занята «Социальными взаимодействиями» в мультиплеере) или кнопкой в правом верхнем углу инвентаря. Он показывает текущее звание с под-уровнем (например, Инженер III), полосу мастерства до следующего уровня, карьерные счётчики EU/FE (произведено / полезно потреблено), время «модовой» активности и разбивку производства по типам генераторов.
Не путать с ванильными достижениями (разовые чекпойнты) и с ванильной статистикой (сухая таблица). Кабинет — это накопительные измерители карьеры плюс прогрессия со званиями.
Прогрессия
Главный источник — работа машин. Мастерство начисляется владельцу машины в момент, когда она завершает операцию (переплавка, дробление, экстракция, компрессия, выкачка ведра насосом), в размере полной стоимости операции. Прерванная редстон-контуром операция жжёт EU/FE, но мастерства не приносит — это защита от AFK-фарма. Второй источник — производство генераторов, но в 20 раз слабее. Генератор работает без участия игрока, поэтому его вклад намеренно символический: он не даёт «уснуть в Легенду», но и не оставляет большую электроферму совсем без награды. Учитывается только EU/FE, фактически зачисленная в буфер: генератор, крутящийся в полный буфер, не даёт ничего. Зарядка накопителей и прыжки телепорта мастерства не дают вообще.
| Параметр | Значение |
|---|---|
| Курс EU/FE→мастерство (машины) | 1 000 EU/FE работы = 1 очко мастерства |
| Курс EU/FE→мастерство (генераторы) | 20 000 EU/FE произведённой = 1 очко |
| Кривая уровней | экспонента ×1.18 за уровень |
| Уровней | 40 (8 званий × 5 под-уровней) |
| Под-уровень | римскими цифрами (I…V) |
| Уведомление о новом уровне | только звук |
Мастерство — производная величина: оно вычисляется из двух карьерных счётчиков EU/FE, а не хранится отдельно, поэтому подстройка курсов в конфиге не может «съесть» накопленное мастерство. Достигнутое звание не понижается при смене баланса — сохраняется максимальный достигнутый уровень.
Линейка званий
| Под-уровни | Звание |
|---|---|
| 1–5 | Ученик |
| 6–10 | Подмастерье |
| 11–15 | Техник |
| 16–20 | Оператор |
| 21–25 | Инженер |
| 26–30 | Архитектор |
| 31–35 | Магнат |
| 36–40 | Легенда |
Атрибуция и приватность
Статистика ведётся на владельца машины — того, кто её поставил (переприсваивается при повторном размещении). Если друг кладёт руду в твою машину, мастерство идёт тебе. Профиль per-player и приватный: на сервере ты видишь только свою карьеру. Начисление идёт только пока владелец онлайн и не в креативе (в креативе EU/FE бесплатна и в карьеру не конвертируется); машина без владельца (структура, демо-стенд) не качает никого. Машины от автоматизации других модов. Правило «владелец онлайн» покрывает и случай, когда машину ставит не игрок, а «фейковый игрок» другого мода (автостроители, роботы). Отдельного механизма для них нет и не требуется: такой игрок никогда не числится среди подключённых, поэтому его UUID не разрешается ни в кого и мастерство не идёт никому. Если же автоматизация действует от имени реального игрока (распространённый приём, чтобы права и приваты видели владельца), работа засчитывается ему — и только пока он онлайн, как и для машины, поставленной руками. Это осознанное поведение, а не пробел.
Хранилище
Профиль хранится как per-player data attachment, переживает релог и смерть, синхронизируется только своему владельцу. Server-side накопление батчится в памяти и сбрасывается в хранилище раз в несколько секунд (и на выход/остановку сервера), без записи каждый тик.
Свойства блока
Личный кабинет — чистый экран (GUI), не блок и не предмет: в мире ничего не размещается, никакой формы и коллизий нет. «Точка входа» — не физический предмет, а хоткей и виджет-кнопка в ванильном инвентаре (см. «Точки входа»). Данные живут в per-player attachment на сервере, экран — client-side.
| Поле | Значение |
|---|---|
| Тип | экран (GUI), не блок и не предмет |
| Размещение в мире | нет |
| Форма / коллизия | нет |
| Открытие | хоткей K или кнопка в правом верхнем углу инвентаря (client-side) |
| Хранилище данных | per-player data attachment (server) |
Точки входа
Хоткей K (Profile) — по умолчанию, переназначается в «Управление». Кнопка в правом верхнем углу инвентаря (в креативном инвентаре её нет — хоткей работает везде). /ala profile show|set <xp> — служебная команда оператора (для отладки и проверки прогрессии).
Вне первой версии
Квестовая система, баффы за вехи (когда появятся — только на машины/сеть, не на игрока), карточка-шера профиля на сервере и расширенные категории статистики (крафт, добыча по рудам, телепортация) — отдельные будущие задачи.