Что такое формат файла W3X?
Файл .w3x - это пользовательская карта для Warcraft III: The Frozen Throne, дополнения 2003 года от Blizzard Entertainment. Формат представляет собой составной бинарный контейнер: 512-байтовый заголовок карты, начинающийся с сигнатуры HM3W (hex 48 4D 33 57), который предшествует стандартному архиву MPQ - тому же формату упаковки, который используется во всем каталоге игр Blizzard.
Внутри встроенного MPQ карта хранит все свои составные подфайлы:
war3map.w3i- метаданные карты (название, автор, описание, слоты игроков)war3map.j- скрипт игровой логики на JASSwar3map.wts- таблица перевода строк- Ландшафт, размещение юнитов, данные триггеров и необязательное изображение предварительного просмотра
Байт заголовка со смещением 4 позволяет отличить классические версии формата (0x12) от версий Frozen Throne / Reforged (0x1A). .w3x отличается от более старого формата .w3m (Reign of Chaos) только тем, что он активирует специфические для Frozen Throne флаги, такие как дополнительные наборы текстур ландшафта и два дополнительных типа поселений. Оба формата имеют идентичную внутреннюю структуру MPQ.
Отдельные файлы внутри MPQ могут быть сжаты с помощью DEFLATE, zlib, BZip2 или PKWARE Implode, а также опционально зашифрованы поблочно. Официальные карты Blizzard добавляют 260-байтовую строгую цифровую подпись после окончания MPQ. Размеры карт варьируются от 8×8 до 480×480 игровых плиток.
С выходом Warcraft III: Reforged в 2020 году Blizzard обновила расширенные форматы данных объектов и триггеров. Несмотря на изменения в том, как карты размещаются в Battle.net, файлы .w3x продолжают распространяться и использоваться сообществом напрямую.
Безопасность и защита
РИСК: MEDIUMКарты W3X могут содержать скрипты JASS, которые исполняют произвольный код Lua/JASS внутри игровой «песочницы» Warcraft III. Вредоносные карты теоретически могут использовать уязвимости внутриигровых сценариев. Загружайте карты только с авторитетных сайтов сообщества (Hive Workshop, epicwar.com). Карта не может исполнять код за пределами процесса Warcraft III.
Детали формата
в двух словахПрограммы, открывающие файлы W3X
Технические подробности
глубокая спецификация| Структура контейнера | Пользовательский 512-байтовый заголовок W3X + встроенный архив MPQ (MoPaQ) |
| Магические байты заголовка | HM3W (hex 48 4D 33 57) со смещением 0; магические байты MPQ 4D 50 51 1A со смещением 512 |
| Порядок байтов | Little-endian |
| Сжатие | DEFLATE, zlib, BZip2, PKWARE Implode (поблочно в MPQ, по секторам) |
| Шифрование | Опциональное поблочное шифрование MPQ для отдельных подфайлов |
| Байт версии формата карты | Смещение 4: 0x12 = классический Reign of Chaos; 0x1A = Frozen Throne / Reforged |
| Диапазон игровых размеров карты | от 8×8 до 480×480 игровых плиток |
| Подфайл скрипта JASS | war3map.j - игровая логика, написанная на языке сценариев JASS |
| Подфайл информации о карте | war3map.w3i - хранит название, автора, слоты игроков и описание |
| Типичный размер файла | 1 МБ - 100 МБ; официальные карты кампаний могут превышать 100 МБ |
| Цифровая подпись | Опциональная 260-байтовая строгая цифровая подпись, добавляемая после окончания архива MPQ |
| Емкость хэш-таблицы MPQ | До 65 535 (2^16 − 1) записей файлов на встроенный архив |
| Отличие от .w3m | Активирует специфические флаги Frozen Throne; .w3m предназначен только для Reign of Chaos |
| Связанные ОС | Windows; macOS (Warcraft III: Reforged) |
| Выпущен | 2003 (Warcraft III: The Frozen Throne expansion) |
| Последняя версия | Reforged map format (2020, with extended trigger/object data) |
| Спецификация | 867380699.github.io |
Конвертации W3X
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах W3X.