=========================================================================== Серверные демо-записи (SVDEMO) Руководство пользователя =========================================================================== ОПИСАНИЕ -------- Система серверных демо-записей позволяет записывать полное состояние игрового сервера (все сущности, все игроки) и воспроизводить запись с возможностью свободного перемещения камеры или просмотра от первого лица любого игрока. В отличие от обычных клиентских демо (запись только того, что видит один игрок), серверная запись содержит полную картину матча. КОНСОЛЬНЫЕ КОМАНДЫ ------------------ svdemo_record <имя> Начать запись серверного демо. Файл сохраняется в svdemos/<имя>.svdm внутри игровой директории. svdemo_play <имя> Воспроизвести серверное демо. Загружает карту из записи, подключает зрителя автоматически. svdemo_stop Остановить текущую запись или воспроизведение. При остановке воспроизведения происходит отключение от сервера. НАСТРОЙКИ (CVARS) ----------------- svdemo_autorecord <0|1> (по умолчанию: 0) Автоматическая запись демо при каждой загрузке карты. Файлы именуются автоматически: <карта>_ГГГГММДД_ЧЧММСС.svdm Пример: q3dm6_20260323_141530.svdm Для включения: set svdemo_autorecord 1 Значение сохраняется в конфигурации (CVAR_ARCHIVE). ЗАПИСЬ ------ 1. Запустите сервер и начните игру как обычно: devmap q3dm6 2. Начните запись: svdemo_record mymatch 3. Играйте. Все действия всех игроков записываются. 4. Остановите запись: svdemo_stop Запись также автоматически останавливается при: - Смене карты (map, devmap, nextmap по таймлимиту/фраглимиту) - Выключении сервера Перезапуск карты (map_restart) НЕ прерывает запись. ВОСПРОИЗВЕДЕНИЕ --------------- 1. Запустите воспроизведение: svdemo_play mymatch 2. Карта загрузится автоматически. Вы подключитесь как зритель со свободной камерой (полёт по карте). 3. Управление зрителем: - Свободная камера: перемещайтесь как обычный спектатор - Следование за игроком: нажмите MOUSE2 (USE) для входа в режим следования - Переключение между игроками: MOUSE1 (ATTACK) - Выход из следования: MOUSE2 снова 4. В режиме следования вы видите игру от первого лица выбранного игрока с полным HUD: здоровье, броня, боеприпасы, оружие. 5. Табло (TAB) показывает счёт записанных игроков. 6. Остановка: svdemo_stop Также воспроизведение останавливается автоматически при достижении конца записи. ФОРМАТ ФАЙЛА ------------- Расширение: .svdm Директория: svdemos/ Файл содержит: - Заголовок: название карты, настройки сервера, конфигстроки (имена игроков, модели, настройки игры) - Покадровые данные: дельта-сжатые состояния сущностей и игроков, изменения конфигстрок Дельта-сжатие значительно уменьшает размер файла: типичная 10-секундная запись занимает ~50 КБ. Одна запись = одна карта. При смене карты запись останавливается. ОГРАНИЧЕНИЯ ----------- - Нельзя перематывать запись вперёд или назад. - Если в записанной игре было 64 игрока (MAX_CLIENTS), один из них не будет виден при воспроизведении (его слот занят зрителем). - Воспроизведение требует наличия тех же pk3-файлов (карты, модели), что использовались при записи. - Демо несовместимы между разными версиями движка, если изменился формат сетевых структур. ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ --------------------- Автоматическая запись всех матчей: set svdemo_autorecord 1 devmap q3dm17 (все матчи на этом сервере будут записываться автоматически) Запись конкретного матча: devmap q3tourney2 svdemo_record duel_finals (играть...) svdemo_stop Просмотр записи: svdemo_play duel_finals ===========================================================================