Download the PHP package microwin7/texture-provider without Composer
On this page you can find all versions of the php package microwin7/texture-provider. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download microwin7/texture-provider
More information about microwin7/texture-provider
Files in microwin7/texture-provider
Package texture-provider
Short Description Предосталяет реализацию GravitLauncher TextureProvider и TextureLoader JSON
License GPL-3.0-or-later
Informations about the package texture-provider
GravitLauncher-TextureProvider (JSON)
✔ Выдача по USERNAME, UUID, (id пользователя, хеша sha1 и sha256) из БД.
✔ Поддеркжа выдачи из файловой системы, либо по USERNAME с Mojang
✔ Возможность выдавать рандомный скин пользователям, которые ещё не установили его сами
✔ Выдача скина и плаща по умолчанию, если не обнаружен в файловой системе, Mojang и выключено получение скина из рандомной коллекции скинов
✔ Работает с любыми общепринятыми размерами скинов и плащей
✔ Автоматическое обнаружение SLIM типов скинов (тонкие руки)
✔ Встроенный TextureLoader
Поддерживаемые методы
normal
Отдаёт только из файловой системы, рандомной коллекции скинов (если оное включено), скинов и плащей по умолчанию.mojang
Отдаёт текстуры с Mojang- Использование в вызове скрипта:
&method=mojang
- Использование в вызове скрипта:
hybrid
=normal
+mojang
- Использование в вызове скрипта:
&method=hybrid
- Использование в вызове скрипта:
- ОБЩЕЕ
- Отдача скинов из рандомной коллекции, при отсутствии установленных пользователями. Если включено
- Отдача скинов и плащей по умолчанию. Если включено
Требования
- GravitLauncher 5.2.9+
- Консольный доступ SSH к хостингу. Для развёртывания библиотек
- Поддержка Docker (поддерживается всем современным железом, включая примерно архитектуры с 2007-2008 года)
Установка
Установка в Docker контейнер:
- Является более оптимальным вариантом установки, так как все модули и сам php будет установлен в изолированных контейнерах
Предварительная настройка | Установка Docker
-
Выполнение команд от sudo (Перейти в root, если является пользователем не по умолчанию):
- Следующая команда:
- Обновляет зависимости
- Установка утилит
- Скачивает скрипт установки Docker
- Выдача прав запуска скрипта и запуск установки Docker
- Запуск службы
Выбираем где будет располагаться скрипт, лучше всего вне сайта. И устанавливаем texture-provider
Скачивание слоёв, компиляция и запуск контейнеров php-fpm и nginx:
Остановка контейнеров:
Запуск контейнеров / Перезапуск (если изменился файл docker-compose.yml):
Для установки на сайт:
-
Над разделом server {...}
-
А в разделе server {...}
- Изменить APP_URL в
.env
- ссылка на доменДля установки на под-домен:
-
Пример
/etc/nginx/conf.d/textures.conf
: - Изменить ВАШ_ДОМЕН
- Изменить в
.env
домен и протоколAPP_URL=http://127.0.0.1/
- Изменить в
.env
путь от корняAPP_URL
вSCRIPT_PATH
Настройка публичного ключа доступа для загрузки скинов и плащей из лаунчера:
- Перейдите в папку лаунчсервера, далее в папку
.keys
. Она может быть скрыта - Скопируйте себе на ПК файл
ecdsa_id.pub
- Через сайт [ base64.guru ] преобразуйте файл в строку Base64
- Изменить в
.env
LAUNCH_SERVER_ECDSA256_PUBLIC_KEY_BASE64
строкуНастройка использования API загрузки, установите токен в условии обращения к /api
- Изменить в
.env
BEARER_TOKEN
и в конфиге лаунчсервера в разделе текстур провидера -
Пример использования API:
- API загрузки скина: /api/upload/SKIN
-
API загрузки плаща: /api/upload/CAPE
BEARER_TOKEN
- заменить на указанный в.env
- Параметр
hd_allow
не обязательный, по умолчанию true, можно переобределить в.env
установивHD_TEXTURES_ALLOW=false
Смена скина/плаща по умолчанию через API
- Выполнить запрос
Пример заполненного запроса с моего компьютера на хост:
-
Из полученного ответа скопируйте содержимое digest подписи. Установите новые значения в .env
-
Пример значений по умолчанию:
- Перезагрузите контейнера. Выполнить в папке
texture-provider
:
-
- Подпись домена вы можете выполнить через [ CertBot ]
Перезагрузить NGINX
НАСТРОЙКА СКРИПТА
Описание TextureStorageType's
-
STORAGE
- Локальное файловое хранилище скинов и плащей
- Имеет 5 типов для определения имени хранимого файла, они же StorageType's:
- USERNAME - [username.png] DEPRECATED
- Поиск происходит вне зависимости от регистра, если файл не будет найден
- UUID - [uuid.png] DEPRECATED
- DB_USER_ID - [user_id.png] DEPRECATED
- DB_SHA1 - [sha1.png] DEPRECATED
- DB_SHA256 - [sha256.png] ПО УМОЛЧАНИЮ
- Текущий API работает с базой данных и хешами скинов и плащей, но на получение самих скинов и плащей для сайта, можно использовать в запросе ник или uuid
-
Пример:
- При этом правильной ссылкой остаётся обращение всё же по установленной хеш-сумме к файлу и нагрузка на API меньше
- MOJANG
- Поиск текстур в Mojang по USERNAME
- Для использования только этого типа хранения
- В конце запроса добавьте
&method=mojang
- Для использования этого типа хранения, вместе со всеми другими
- В конце запроса добавьте
&method=hybrid
- Cперва будет поиск по локальному файловому хранилищу, потом Mojang
- COLLECTION
- Выдава скина из коллекции рандомных скинов, созданную администратором.
- Последние 12 символов от UUID переводяться в DEC и деляться на количество скинов в коллекции
- после чего остаток и будет являться номером из коллекции.
- Включение хранилища в
.env
: GIVE_FROM_COLLECTION=true
- DEFAULT
- Выдача скинов и плащей по умолчанию, если не найдены ни в локальном хранилище, ни в Mojang, ни в коллекции скинов.
- Включение в
.env
: GIVE_DEFAULT_SKIN=true и GIVE_DEFAULT_CAPE=true. По умолчанию скины отдаются всегда
Ссылка на скрипт
- Протокол и
ДОМЕН
/IP
.env
константа: APP_URL - Путь от корня домена
.env
константа: SCRIPT_PATH. Сделайть пустой SCRIPT_PATH= если используете под-доменХранилище текстур
-
Хранилище от корня сайта в конфиге
.env
: STORAGE_DIR. По умолчанию: storageЕсли у вас своя папка storage
-
Удалите текущую папку storage
- Создайте ссылку на папку storage. ПРИМЕР для Azuriom:
-
- Пути от корня хранилища в конфиге
.env
: TEXTURE_{ТИП_ТЕКСТУРЫ}_PATH. Примеры есть в.env.example
Для включения поддержки версий 5.2.9-5.4.x
- Включите изменение хеша для старых версий в
.env
: LEGACY_DIGEST
Настройка LaunchServer'a
При использовании в сайте:
При использовании на под-домене:
Настройка публичного ключа доступа для загрузки скинов и плащей из лаунчера:
- Перейдите в папку лаунчсервера, далее в папку
.keys
. Она может быть скрыта - Скопируйте себе на ПК файл
ecdsa_id.pub
- Через сайт [ base64.guru ] преобразуйте файл в строку Base64
- В файле
.env
в корне текстур провидера, выставите переменную, по примеру:
Описание глобальных переменных для настройки скрипта
- Все доступные параметры находятся в
.env.example
- файл пример, с значениями по умолчанию в текстур провидере и библиотеке. За исключением:config/php-utils/^1.8.0/MainConfig.php
в котором осталась:- Настройка таблиц с именами столбцов (Не требуется изменять для текстур провидера в Docker)
- Настройка списка серверов (Не требуется изменять для текстур провидера)
- Настройка параметров подключения к бд (Не требуется изменять для текстур провидера)
- P.S. При использовании Docker, после изменений конфигов, помимо
.env
выполнитеup -d --build
снова
ПРОЧЕЕ...
Удаление чересстрочной развёртки. И сжатие
Предупреждения:
- (Эти предупреждения связаны с библиотекой libpng, которая используется для работы с изображениями в формате PNG)
libpng warning: Interlace handling should be turned on when using png_read_image
- Это предупреждение говорит о том, что вам следует включить межстрочное сканирование (interlace) при использовании функцииpng_read_image
. Межстрочное сканирование позволяет пошагово загружать изображение, что может быть полезным для оптимизации процесса отображения.
Способ починить:
- Команды приведены от самой долгой по обратоке к самой быстрой
- Вызывать в папке с скинами или плащами
Починка профиля изображения
Предупреждения:
- (Эти предупреждения связаны с библиотекой libpng, которая используется для работы с изображениями в формате PNG)
libpng warning: iCCP: known incorrect sRGB profile
- Это предупреждение указывает на то, что профиль цвета sRGB в изображении не соответствует ожидаемому или считается некорректным. Возможно, изображение содержит нестандартный профиль цвета, и это может повлиять на отображение цветов.
libpng warning: iCCP: cHRM chunk does not match sRGB
- Это предупреждение также связано с профилем цвета и указывает на то, что информация о цветовом пространстве (cHRM chunk) не соответствует ожидаемому для sRGB. Это может также привести к неправильному отображению цветов.
Способ починить:
- Вызывать в папке с скинами или плащами
...БУДЕТ ДОПОЛНЕНО...
- Предположительно команда для использования на PRODUCTION, будет проверяться
- Оптимизирует импорты и кеширует классы автозагрузчика, если включен OpCache composer install -n -v -o -a --no-dev
All versions of texture-provider with dependencies
ext-gd Version *
ext-mbstring Version *
ext-json Version *
microwin7/php-utils Version 1.8.0.0
symfony/console Version ^7.3.x-dev
sentry/sentry Version ^4.10
firebase/php-jwt Version ^6.11
nesbot/carbon Version ^3.x-dev
guzzlehttp/psr7 Version 2.7.x-dev
nikic/fast-route Version ^2.0@dev
symfony/http-foundation Version 7.3.x-dev