Что такое формат файла OSK?
Файл .osk - это osu! Skin Package, ZIP-архив, содержащий все визуальные и аудиоресурсы, которые изменяют внешний вид и звуки ритм-игры osu!. Переименование файла .osk в .zip позволяет любой утилите для работы с архивами просмотреть или извлечь его содержимое.
Внутри архива вы найдете:
skin.ini- текстовый файл конфигурации, содержащий метаданные, сопоставления элементов и полеVersion(например,Version: 2.5), которое сообщает игре, какие возможности скина активны;- графические ресурсы PNG или JPG для кругов (hit circles), слайдеров, курсоров, счетчиков комбо и панелей интерфейса;
- аудиосэмплы WAV или OGG для звуков попаданий, кликов меню и эффектов комбо.
Скины высокого разрешения включают варианты каждого изображения с суффиксом @2x для дисплеев с высоким DPI. Размер файлов варьируется от пары мегабайт для минималистичных скинов до примерно 100 MB для HD-паков с полностью кастомной графикой и звуком.
Контейнер ZIP использует сжатие DEFLATE для большинства записей; некоторые элементы могут храниться без сжатия. Сам контейнер .osk не имеет версионности - вся информация о версии находится внутри skin.ini.
osu!(lazer), кроссплатформенное переиздание osu!, сохраняет полную совместимость с .osk в Windows, macOS, Linux, Android и iOS. Связанные форматы osu! включают .osz для пакетов карт (beatmaps) и .osr для записей реплеев - все три являются архивами на базе ZIP, различающимися своим внутренним содержимым.
Безопасность и защита
РИСК: LOWФайлы OSK - это ZIP-архивы, содержащие изображения и аудио, в них нет исполняемого кода. Они не могут запускать вредоносное ПО. Соблюдайте обычную осторожность со скинами из неизвестных источников; скины сообщества с официальных форумов osu! обычно безопасны. Избегайте загрузки «паков скинов» со сторонних сайтов, которые поставляют исполняемые файлы вместе со скинами.
Детали формата
в двух словахПрограммы, открывающие файлы OSK
Технические подробности
глубокая спецификация| Контейнер | ZIP-архив (формат PKZIP) |
| Сжатие | DEFLATE для каждой записи (ресурсы PNG и OGG); некоторые записи хранятся без сжатия |
| Порядок байтов | Little-endian (формат ZIP) |
| Магические байты | 50 4B 03 04 («PK\x03\x04») со смещением 0 - стандартный заголовок локального файла ZIP |
| Типичный размер | 1 MB - 100 MB (базовые скины - несколько МБ; HD-скины с графикой высокого разрешения - до ~100 MB) |
| Конфигурационный файл скина | skin.ini - текстовый конфиг, объявляющий метаданные скина и ссылки на элементы; поле Version (например, Version: 2.5) определяет возможности скина |
| Графические ресурсы | PNG (32-битный RGBA для прозрачности) и JPG; HD-скины включают варианты с суффиксом @2x для дисплеев с высоким DPI |
| Аудиоресурсы | Звуки попаданий WAV и OGG; типичная частота дискретизации 44 100 Гц |
| Целостность | Контрольная сумма CRC32 для каждой записи (стандарт ZIP); отдельная контрольная сумма на уровне пакета отсутствует |
| Идентификация ресурсов | Отличается от обычного ZIP наличием skin.ini и специфических для osu! имен файлов ресурсов (например, hitcircle.png, cursor.png) |
| Поддержка платформ | Windows, macOS, Linux; Android и iOS через osu!(lazer) |
| Связанные форматы osu! | .osz (пакет карты), .osr (файл реплея), .odb (база данных) - все являются архивами на базе ZIP |
| Выпущен | 2007 (osu! first released September 2007) |
| Последняя версия | osu! skin format is not versioned separately; skin.ini specifies skin metadata; lastest osu!(lazer) skins follow same format |
| Спецификация | osu.ppy.sh |
Конвертации OSK
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах OSK.