Что такое формат файла DEM?
.dem файлы хранят записи геймплея (часто называемые демо), захваченные движком игры во время живого матча или скриптованной последовательности. Формат наиболее тесно связан с шутерами от первого лица, особенно с играми, работающими на движках GoldSrc и Source Valve, хотя расширение впервые появилось в движке id Software Quake в середине 1990-х.
.dem файлы содержат данные повтора геймплея, записанные движком игры: временные метки снимков сети, команды ввода игроков и игровые события, которые позволяют движку воспроизвести матч целиком.
Существует два основных типа .dem записей:
- Повтор, записанный игроком или сервером - живой матч, записанный с помощью консольной команды
recordили HLTV-ретранслятором. Профессиональные игроки используют их для самопроверки, выделения моментов и отправки в античит. - Показательное демо с предзаписью - неинтерактивная последовательность, состоящая из заранее записанных элементов геймплея, демонстрируемых с различных ракурсов камеры. Этот тип обычно используется для демонстрации производительности движка и заставок в игре, поставляемых вместе с игрой.
.dem файлы могут хранить оба типа записей геймплея.
.dem файл - это не видеофайл - он хранит сырые игровые состояния, которые может воспроизвести только соответствующий движок игры и сборка. Чтобы создать просматриваемое видео, нужно воспроизвести демо внутри игры и захватить вывод с помощью рекордера экрана или инструмента вроде HLAE.
Несколько различных .dem форматов используют одно и то же расширение, каждый определяется своим заголовком файла: демо GoldSrc начинаются с HLDEMO\0, демо движка Source - с HL2DEMO\0, а демо Source 2 (CS2, Dota 2) - с PBDEMS2\0. Поскольку в заголовке хранятся версии протокола демо и сети, файлы привязаны к конкретному движку и сборке - демо Source 1 не будет воспроизводиться в Source 2.
.dem записи используются во всей соревновательной сцене для анализа матчей, создания контента и проверки античита. Родственные форматы включают файлы скриптов демо .VDM и файлы повтора .REP.
Безопасность и защита
РИСК: LOWИгровое .dem - это пассивные данные повтора, которые парсит движок игры, поэтому риск низкий - он не может выполнять код самостоятельно. Играйте только в официальную сборку игры. Поврежденное демо или демо другой версии просто не загрузится. Будьте осторожны с сайтами, предлагающими загрузки «конвертера DEM в MP4» - прямого конвертера нет, а такие программы часто содержат рекламное ПО; используйте собственные инструменты записи игры или OBS.
Детали формата
в двух словах- USGS DEM (Digital Elevation Model) - Растровая модель высот, используемая в GIS/картографии - полностью не связана с повторами игр; открывается в QGIS/ArcGIS.
- Демо Quake / Hexen / Descent - Старые записи демо одной игры, использующие .dem; каждый воспроизводится только в своем движке.
- Проект VirtualDub / прочее - Иногда встречается как неигровое .dem; определяется программой, создавшей файл.
Программы, открывающие файлы DEM
Технические подробности
глубокая спецификация| Тип файла | Двоичная запись состояния игры и снимков сети (повтор) |
| Порядок байтов | Little-endian |
| Магия файла (движок Source) | HL2DEMO\0 - 8 байт по смещению 0 |
| Магия файла (движок GoldSrc) | HLDEMO\0 - 7 байт по смещению 0 |
| Магия файла (Source 2) | PBDEMS2\0 - 8 байт по смещению 0; используется в CS2 и Dota 2 |
| Сжатие | Отсутствует (GoldSrc и Source 1); protobuf + Snappy (Source 2) |
| Типичный размер файла | Сотни КБ до нескольких сотен МБ в зависимости от длины матча |
| Внутренние поля версии | Версия протокола демо и сети хранятся в заголовке, привязаны к конкретной сборке игры |
| Требование воспроизведения | Должен быть открыт в соответствующем движке и совместимой сборке игры; не работает между движками или версиями |
| Проверка целостности карты | CRC карты BSP может быть встроен в заголовок для проверки целостности |
| MIME-тип | application/octet-stream |
| Структура | Заголовок (магия, версия протокола, имя карты, игровая директория, время воспроизведения), за которым следует поток пакетов кадров и команд с временными метками |
| Поддерживаемые платформы | Windows, macOS, Linux (зависит от названия игры) |
| Основной разработчик | Valve Software (движки GoldSrc и Source); id Software (исходный формат эпохи Quake) |
| Выпущен | 1996-1998 (Quake/GoldSrc era); Valve Source DEM since 2004 |
| Последняя версия | Source 2 demo (protocol-specific; e.g. CS2 .dem, 2023) |
| Спецификация | developer.valvesoftware.com |
Конвертации DEM
Вопросы и ответы сообщества
спрошено пользователямиВопросов пока нет - станьте первым, кто спросит о файлах DEM.