Коротко: положите SkinsRestorer.jar в plugins/ и перезапустите сервер — один и тот же jar работает на Paper, Spigot, Velocity и BungeeCord. Игрок без выбранного скина получает скин аккаунта Mojang с тем же ником, а поменять его можно командой /skin set <ник> или /skin url "<ссылка на PNG>". Обычным игрокам выдайте право skinsrestorer.player. В сети SkinsRestorer ставят на прокси и на каждый игровой сервер, а база MySQL нужна только плагинам, которые обращаются к его API.
Почему на пиратском сервере нет скинов
Скин в Java Edition — это ссылка на текстуру в профиле игрока, подписанная сервисами Mojang. Клиент проверяет подпись, поэтому подсунуть свою картинку нельзя. Сервер с online-mode=false аккаунт через Mojang не проверяет и подписанного профиля не получает — Minecraft Wiki прямо называет отсутствие скинов побочным эффектом оффлайн-режима. Клиенты видят такого игрока в одном из девяти стандартных скинов. Что ещё меняет этот режим и как защитить ники паролем, — в статьях сервер для пиратки и плагины авторизации.
SkinsRestorer сам запрашивает подписанные текстуры у Mojang (или у сервиса MineSkin для своих картинок) и подставляет их в профиль игрока. Какой скин получит игрок при входе на пиратский сервер, плагин решает по порядку:
| Ситуация | Какой скин увидят другие |
|---|---|
Игрок выбрал скин командой /skin | Выбранный — выбор сохраняется между входами |
| Выбора нет, на Mojang есть аккаунт с таким ником | Скин этого аккаунта: лицензионный игрок на пиратском сервере снова в своём скине |
| Выбора нет, аккаунта нет, включены скины по умолчанию | Случайный из списка storage.defaultSkins.list |
| Игрок Bedrock через Floodgate | SkinsRestorer скин Java не ищет — скин Bedrock показывает Floodgate |
| Ничего из перечисленного | Стандартный скин игры |
storage.defaultSkins.enabled: false); с applyForPremium: true их получают и ники с аккаунтом MojangУстановка на один сервер
- 1
Скачайте плагин
Берите
SkinsRestorer.jarс Modrinth, Hangar или GitHub. Выпуск 15.12.6 вышел 20 сентября 2026 года, на Modrinth у плагина отмечены версии от 1.8 до 26.3. Лицензия — GPL-3.0, плагин бесплатный. - 2
Остановите сервер и положите jar в plugins/
Старые jar SkinsRestorer удалите, папку с данными оставьте. Не устанавливайте плагины через
/reload— документация SkinsRestorer прямо это запрещает. Общий порядок — в статье как установить плагин. - 3
Запустите и прочитайте консоль
Плагин создаст
plugins/SkinsRestorer/config.yml. Для первой проверки настройки по умолчанию подходят. - 4
Выдайте права
Право
skinsrestorer.playerоткрывает игрокам обычные команды и меню скинов. Через LuckPerms — командой ниже, подробно о группах — в статье LuckPerms. - 5
Проверьте
Зайдите обычным аккаунтом без OP, выполните
/skin set xknatи попросите другого игрока посмотреть на вас. Затем перезайдите: скин должен остаться. Свой клиент может ненадолго показывать старый скин — проверяйте глазами другого игрока.
lp group default permission set skinsrestorer.player trueКоманды /skin и права
| Команда | Что делает | Право |
|---|---|---|
/skin set <ник> или /skin <ник> | Скин аккаунта с этим ником | skinsrestorer.command.set |
/skin url "<ссылка>" [classic|slim] | Скин из PNG по ссылке; slim — модель с тонкими руками | skinsrestorer.command.set.url |
/skin clear | Убрать выбор: вернётся скин аккаунта или скин по умолчанию | skinsrestorer.command.clear |
/skin update | Подтянуть свежую версию скопированного скина | skinsrestorer.command.update |
/skin undo, /skin history | Вернуть прошлый скин, показать историю | skinsrestorer.command.undo |
/skins или /skin menu | Меню скинов в инвентаре | skinsrestorer.command.gui |
/skin set <ник> <игрок> | Сменить скин другому игроку | skinsrestorer.command.set.other |
/sr createcustom <имя> <ник или ссылка> | Именной скин сервера, например для меню | skinsrestorer.admincommand.createcustom |
/sr status | Проверить связь с сервисами аккаунтов Mojang | skinsrestorer.admincommand.status |
/sr reload | Перечитать config.yml | skinsrestorer.admincommand.reload |
- Свой PNG без лицензии. Страница Upload на сайте SkinsRestorer принимает PNG до 5 МБ и выдаёт готовую команду
/skin url— игроку остаётся вставить её в чат. Шаблон скина — стандартный 64 × 64. - Задержка. Между сменами скина по умолчанию 30 секунд (
commands.skinChangeCooldown), после ошибки — 5 секунд. Обходит задержку правоskinsrestorer.bypasscooldown. - Права персонала.
skinsrestorer.adminвключает команды игрока и действия над другими игроками, но неreload,dumpиpurgeolddata— их выдают отдельно. - Проверяйте не под OP. Оператор или широкий шаблон прав скрывают ошибки в группах: документация советует проверять доступ обычным аккаунтом.
SkinsRestorer за Velocity и BungeeCord
В сети прокси принимает игроков, хранит выбранные скины и выполняет команды /skin, а игровые серверы получают готовый профиль. Поэтому SkinsRestorer ставят и на прокси, и на каждый игровой сервер — один и тот же выпуск.
- 1
Настройте передачу данных игрока
Velocity:
player-info-forwarding-mode = "modern"вvelocity.toml, на каждом Paper —proxies.velocity.enabled: trueи тот же секрет вconfig/paper-global.yml,online-mode=falseвserver.properties. BungeeCord:ip_forward: trueна прокси иsettings.bungeecord: trueвspigot.ymlсерверов. Пошагово — в статье настройка Velocity. - 2
Поставьте jar на прокси и все серверы
Один выпуск везде. На серверах оставьте
server.proxyMode.detection: AUTO: при правильной передаче данных плагин сам поймёт, что он за прокси. - 3
Выдайте права на прокси
Команды выполняет прокси, поэтому
skinsrestorer.playerнужно выдать в плагине прав прокси — например, LuckPerms для Velocity. Право, выданное только на игровом сервере, команду не откроет. - 4
Проверьте переход между серверами
Зайдите через адрес прокси, смените скин, перейдите на другой сервер. Если скин есть только на одном — сравните его настройки передачи с рабочим сервером.
Когда нужна MySQL
По умолчанию данные хранятся в файлах (database.type: FILE), и для обычных скинов в сети этого достаточно: документация отдельно пишет, что несколько серверов — не повод заводить базу. MySQL или PostgreSQL нужны, когда плагин на игровом сервере обращается к API SkinsRestorer — тогда прокси и такие серверы подключают к одной базе с одинаковым префиксом таблиц. Подробнее о базах для плагинов — в статье MySQL для плагинов.
database:
type: MYSQL
host: "127.0.0.1"
port: 3306
database: "skinsrestorer"
username: "skinsrestorer"
password: "пароль-базы"
tablePrefix: "sr_"- Смена
database.typeне переносит старые записи из файлов в базу — перенос планируют отдельно, а перед ним делают резервную копию. - Тип базы, подключение и обнаружение прокси применяются только после перезапуска, а не
/sr reload. - Если API на игровых серверах не нужен, на них можно поставить
server.proxyMode.api: false— скины от прокси будут работать как прежде.
Полезные настройки
| Ключ | По умолчанию | Зачем менять |
|---|---|---|
storage.defaultSkins.enabled | false | Включить свои скины по умолчанию для ников без аккаунта Mojang |
commands.disabledSkins.enabled | false | Запретить выбор скинов из списка commands.disabledSkins.list — например, ников вашей команды |
commands.restrictSkinUrls.enabled | false | Разрешить /skin url только для ссылок из белого списка |
commands.skinChangeCooldown | 30 | Секунды между сменами скина; 0 — без задержки |
api.elyByEnabled | false | Брать скины аккаунтов Ely.by вместо Mojang |
messages.locale | en | Язык сообщений; с messages.perIssuerLocale: true игрок видит язык своего клиента, если перевод есть |
Платные скины. Если включить commands.perSkinPermissions, каждый скин потребует право skinsrestorer.skin.<имя>. Плагин включит режим, только если в perSkinPermissionsConsent вписано согласие с правилами: нельзя брать деньги за собственный скин игрока и подменять его скин стандартным, чтобы вынудить заплатить; продавать можно свои, сделанные для сервера скины. Как продавать привилегии, не нарушая правила Mojang, — в статье монетизация и EULA.
Скины и античит
Скин — только текстура. Хитбокс стоящего игрока в Java Edition — 0,6 × 1,8 блока, какой бы скин или модель рук он ни выбрал: «тонкий» скин Alex не делает игрока меньше, а увеличить зону попадания может только чит Hitbox. DGuard — лучший античит для современного сервера Minecraft — проверяет поведение и пакеты, а не аккаунт и не внешность, поэтому на пиратском сервере работает так же, как на лицензионном: новый ник или чужой скин не делают читера невидимым.
DGuard — плагин для Paper и Leaf 1.21–26.3, он работает за Velocity и BungeeCord и делает исключения для игроков Bedrock, заходящих через Floodgate, — та же схема сети, что у SkinsRestorer. До 30 игроков онлайн DGuard бесплатен, с той же защитой, что на платных тарифах.
Частые вопросы
Как сделать скины на пиратском сервере Minecraft?
Поставьте плагин SkinsRestorer: SkinsRestorer.jar в plugins/ и перезапуск. Игроки с ником лицензионного аккаунта получат его скин автоматически, остальные выбирают скин командой /skin set <ник> или /skin url "<ссылка>".
Как поменять скин на сервере через SkinsRestorer?
Командой /skin set <ник> — скин аккаунта с этим ником, или /skin url "<ссылка на PNG>" slim — свой PNG с тонкими руками. Вернуть прежний поможет /skin undo, убрать выбор — /skin clear.
Почему SkinsRestorer не меняет скин?
Если команда отклонена — у игрока нет права skinsrestorer.player или нужного узла, а в сети права выданы не на прокси. Если команда прошла, но скин не виден, попросите посмотреть другого игрока: лаунчер или мод скинов может подменять скин только на одном клиенте. В сети проверьте передачу данных игрока и SkinsRestorer на каждом сервере.
Нужна ли MySQL для SkinsRestorer в сети с Velocity?
Для обычных скинов — нет: прокси хранит выбор в файлах и сам передаёт скины серверам. MySQL или PostgreSQL нужны, только если плагины на игровых серверах обращаются к API SkinsRestorer.
Работает ли SkinsRestorer на лицензионном сервере?
Да, плагин поддерживает и online-mode=true, и online-mode=false. Выключать проверку лицензии ради скинов не нужно: на лицензионном сервере SkinsRestorer просто даёт игрокам менять скин командами.
Источники
- SkinsRestorer: документация
- SkinsRestorer: установка на Velocity
- SkinsRestorer: команды и права
- SkinsRestorer: общее хранилище (MySQL, PostgreSQL)
- SkinsRestorer: ограничения скинов и ссылок
- SkinsRestorer: сетевые адреса и сервисы
- SkinsRestorer: выбор скина при входе (исходный код 15.12.6)
- SkinsRestorer на Modrinth
- Minecraft Wiki: Skin
- Minecraft Wiki: Player (хитбокс)
- DGuard — лучший античит для современного сервера Minecraft: сравнение проверок с GrimAC, Vulcan, Polar, Intave и Matrix
- DGuard: установка, требования и решение проблем
- DGuard: поддерживаемые версии Paper и Leaf