2015-02-07 01:39:41 +05:30
|
|
|
|
Система скинов
|
|
|
|
|
--------------
|
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
На этой странице вы найдёте информацию о доступных запросах к сервису системы скинов Ely.by. Вы можете использовать
|
|
|
|
|
любой из них как дополнительный или основной источник скинов для своего проекта.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 22:57:00 +05:30
|
|
|
|
Сервис системы скинов Ely.by обеспечивает `проксирование текстур владельцев лицензии Minecraft <#textures-proxy>`_,
|
2019-05-02 19:09:54 +05:30
|
|
|
|
что означает, что при использовании этого сервиса игроки будут видеть как скины премиум пользователей Minecraft,
|
|
|
|
|
так и скины пользователей сервиса Ely.by.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Мы стремимся соответствовать официальной системе скинов и не поддерживаем ушки и HD-скины. Система поддерживает плащи,
|
|
|
|
|
но не позволяет игрокам самостоятельно их надевать.
|
|
|
|
|
|
|
|
|
|
Если у вас есть предложения по развитию существующего функционала, пожалуйста,
|
|
|
|
|
`создайте новый Issue <https://github.com/elyby/chrly/issues/new>`_ в
|
|
|
|
|
`репозитории проекта Chrly <https://github.com/elyby/chrly>`_.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. note:: Вы можете найти более подробную информацию о реализации сервера системы скинов в
|
|
|
|
|
`репозитории проекта Chrly <https://github.com/elyby/chrly>`_.
|
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
URL-адреса запросов
|
|
|
|
|
===================
|
|
|
|
|
|
|
|
|
|
Система скинов размещена на домене :samp:`http://skinsystem.ely.by`.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
Во всех запросах параметр :samp:`nickname` должен быть заменён на ник игрока. Значение не чувствительно к регистру.
|
2019-05-02 19:09:54 +05:30
|
|
|
|
|
|
|
|
|
.. _skin-request:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
.. function:: /skins/{nickname}.png
|
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
URL для загрузки текстуры скина. Расширение :samp:`.png` опционально. Если текстура не будет найдена,
|
|
|
|
|
сервер вернёт ответ с :samp:`404` статусом.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. _cape-request:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
.. function:: /cloaks/{nickname}.png
|
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
URL для загрузки текстуры плаща. Расширение :samp:`.png` опционально. Если текстура не будет найдена,
|
|
|
|
|
сервер вернёт ответ с :samp:`404` статусом.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
|
|
|
|
.. function:: /textures/{nickname}
|
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
По этому URL вы можете получить текстуры в формате, указанному в поле :samp:`textures` одноимённого property
|
|
|
|
|
в `ответе на запрос подписанных текстур <https://wiki.vg/Mojang_API#UUID_-.3E_Profile_.2B_Skin.2FCape>`_:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
|
|
|
|
.. code-block:: javascript
|
|
|
|
|
|
|
|
|
|
{
|
2019-05-02 19:09:54 +05:30
|
|
|
|
"SKIN": {
|
|
|
|
|
"url": "http://example.com/skin.png",
|
|
|
|
|
"metadata": {
|
|
|
|
|
"model": "slim"
|
2015-02-07 01:39:41 +05:30
|
|
|
|
}
|
2019-05-02 19:09:54 +05:30
|
|
|
|
},
|
|
|
|
|
"CAPE": {
|
|
|
|
|
"url": "http://example.com/cape.png"
|
|
|
|
|
}
|
2015-02-07 01:39:41 +05:30
|
|
|
|
}
|
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
В зависимости от доступных игроку текстур могут отсутствовать поля :samp:`SKIN` или :samp:`CAPE`.
|
|
|
|
|
Если модель скина не является :samp:`slim`, то поле :samp:`metadata` также будет отсутствовать.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Если текстуры не будут найдены, сервер вернёт пустой ответ с :samp:`204` статусом.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. function:: /textures/signed/{nickname}
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-04 19:04:00 +05:30
|
|
|
|
Этот запрос используется в нашем `плагине серверной системы скинов <http://ely.by/server-skins-system>`_ для
|
|
|
|
|
загрузки текстур с оригинальной подписью Mojang. Полученные в ответе текстуры могут быть без изменений переданы в
|
2019-05-02 22:57:00 +05:30
|
|
|
|
немодифицированный игровой клиент. В ответе также будет присутствовать дополнительное property с :samp:`name`
|
2019-05-02 19:09:54 +05:30
|
|
|
|
равным **ely**.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. code-block:: javascript
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
{
|
|
|
|
|
"id": "ffc8fdc95824509e8a57c99b940fb996",
|
|
|
|
|
"name": "ErickSkrauch",
|
|
|
|
|
"properties": [
|
|
|
|
|
{
|
|
|
|
|
"name": "textures",
|
|
|
|
|
"signature": "QH+1rlQJYk8tW+8WlSJnzxZZUL5RIkeOO33dq84cgNoxwCkzL95Zy5pbPMFhoiMXXablqXeqyNRZDQa+OewgDBSZxm0BmkNmwdTLzCPHgnlNYhwbO4sirg3hKjCZ82ORZ2q7VP2NQIwNvc3befiCakhDlMWUuhjxe7p/HKNtmKA7a/JjzmzwW7BWMv8b88ZaQaMaAc7puFQcu2E54G2Zk2kyv3T1Bm7bV4m7ymbL8McOmQc6Ph7C95/EyqIK1a5gRBUHPEFIEj0I06YKTHsCRFU1U/hJpk98xXHzHuULJobpajqYXuVJ8QEVgF8k8dn9VkS8BMbXcjzfbb6JJ36v7YIV6Rlt75wwTk2wr3C3P0ij55y0iXth1HjwcEKsg54n83d9w8yQbkUCiTpMbOqxTEOOS7G2O0ZDBJDXAKQ4n5qCiCXKZ4febv4+dWVQtgfZHnpGJUD3KdduDKslMePnECOXMjGSAOQou//yze2EkL2rBpJtAAiOtvBlm/aWnDZpij5cQk+pWmeHWZIf0LSSlsYRUWRDk/VKBvUTEAO9fqOxWqmSgQRUY2Ea56u0ZsBb4vEa1UY6mlJj3+PNZaWu5aP2E9Unh0DIawV96eW8eFQgenlNXHMmXd4aOra4sz2eeOnY53JnJP+eVE4cB1hlq8RA2mnwTtcy3lahzZonOWc=",
|
|
|
|
|
"value": "eyJ0aW1lc3RhbXAiOjE0ODYzMzcyNTQ4NzIsInByb2ZpbGVJZCI6ImM0ZjFlNTZmNjFkMTQwYTc4YzMyOGQ5MTY2ZWVmOWU3IiwicHJvZmlsZU5hbWUiOiJXaHlZb3VSZWFkVGhpcyIsInRleHR1cmVzIjp7IlNLSU4iOnsidXJsIjoiaHR0cDovL3RleHR1cmVzLm1pbmVjcmFmdC5uZXQvdGV4dHVyZS83Mzk1NmE4ZTY0ZWU2ZDhlYzY1NmFkYmI0NDA0ZjhlYmZmMzQxMWIwY2I5MGIzMWNiNDc2ZWNiOTk2ZDNiOCJ9fX0="
|
|
|
|
|
},
|
|
|
|
|
{
|
|
|
|
|
"name": "ely",
|
|
|
|
|
"value": "but why are you asking?"
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
}
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
По умолчанию для этого запроса не применяется проксирование текстур. Чтобы его включить, добавьте дополнительный
|
|
|
|
|
GET параметр :samp:`?proxy=true`.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Если текстуры не будут найдены, сервер вернёт пустой ответ с :samp:`204` статусом.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
------------------------------------------------------------------------------------------------------------------------
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
При совершении любого из вышеописанных запросов вы также можете передать ряд дополнительных GET параметров. Они будут
|
|
|
|
|
использованы для анализа использования сервиса разными версиями игры.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
:version: Версия протокола, по которому идёт запрос на скины. На данный момент это версия :samp:`2` ,
|
|
|
|
|
т.е. вам необходимо указать :samp:`version=2`.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
:minecraft_version: Версия Minecraft, с которой идёт запрос.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
:authlib_version: Версия используемой Authlib. Этот параметр актуален для версий Minecraft 1.7.6+, где
|
|
|
|
|
для загрузки скинов стала использоваться отдельная библиотека, а не внутриигровой код.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Пример запроса текстур с передачей вышеописанных параметров:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-02-21 06:22:03 +05:30
|
|
|
|
.. code-block:: text
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
http://skinsystem.ely.by/textures/erickskrauch?version=2&minecraft_version=1.14.0&authlib_version=1.5.25
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Вспомогательные URL
|
2019-05-02 22:57:00 +05:30
|
|
|
|
+++++++++++++++++++
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Также запрос скина и плаща можно выполнить, передавая ник через GET параметр. Эта возможность используется для
|
|
|
|
|
передачи аналитических параметров в версиях игры до 1.5.2, когда ник просто добавлялся в конец строки. Для этого вся
|
|
|
|
|
строка выстраивается таким образом, чтобы последним параметром шёл :samp:`name`, после добавления ника к которому
|
|
|
|
|
получался полный запрос на текстуру.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. function:: /skins?name={nickname}.png
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Смотрите `запрос на получение скина <#skin-request>`_.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
.. function:: /cloaks?name={nickname}.png
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Смотрите `запрос на получение плаща <#cape-request>`_.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Пример запросов на текстуры с передачей параметров выше:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-02-21 06:22:03 +05:30
|
|
|
|
.. code-block:: text
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
http://skinsystem.ely.by/skins?version=2&minecraft_version=1.5.2&name=erickskrauch.png
|
|
|
|
|
http://skinsystem.ely.by/cloaks?version=2&minecraft_version=1.4.7&name=notch
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 22:57:00 +05:30
|
|
|
|
.. _textures-proxy:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 22:57:00 +05:30
|
|
|
|
Проксирование текстур
|
|
|
|
|
=====================
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Сервис системы скинов Ely.by получает текстуры из официальной системы скинов в случае, если в базе данных не было
|
|
|
|
|
найдено информации о текстурах для запрошенного имени пользователя. Также запрос будет проксирован, если запись о скине
|
|
|
|
|
будет найдена, но он будет стандартным.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Для улучшения пропускной способности проксирующего алгоритма, информация о текстурах кешируется в 2 стадии:
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
* Соответствие ника и UUID хранится в
|
|
|
|
|
`течение 30 дней <https://help.mojang.com/customer/portal/articles/928638#targetText=How%20often%20can%20I%20change%20my%20username%3F>`_.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
* Информация о текстурах обновляется не чаще
|
|
|
|
|
`раза в минуту <https://wiki.vg/Mojang_API#UUID_-.3E_Profile_.2B_Skin.2FCape>`_.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Если вы владеете лицензионным аккаунтом Minecraft, но ваш ник занят, пожалуйста, обратитесь в
|
|
|
|
|
`службу поддержки <http://ely.by/site/contact>`_ и после небольшой проверки мы передадим ник в ваше пользование.
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Готовые реализации
|
|
|
|
|
==================
|
2015-02-07 01:39:41 +05:30
|
|
|
|
|
2019-05-02 19:09:54 +05:30
|
|
|
|
Готовые реализации патчей и инструкции по их установке могут быть найдены в
|
|
|
|
|
`разделе загрузок на главном сайте Ely.by <http://ely.by/load>`_.
|