THE REAL GOLDEN PAN: золотая сковородка для Left 4 Dead 2
THE REAL GOLDEN PAN: золотая сковородка для Left 4 Dead 2
Наделена древней австралийской магией.
P.A.N.: Petrifies Any Nuisance.
Идея настоящей золотой сковородки для Left 4 Dead 2 появилась у меня довольно давно. Хотелось, чтобы это была не просто перекрашенная модель оружия: смертельный удар должен был действительно превращать заражённого в цельную золотую статую.
В теории всё звучало просто. На практике старый Source Engine быстро превратил эту идею в отдельное техническое приключение :D. Нужно было сохранить конкретную позу смерти, убрать обычный труп, подготовить золотые копии моделей для разных кампаний, разобраться со звуковым кешем L4D2 и заставить сковородку появляться не только на одной карте.
ЧТО ДЕЛАЕТ МОД
Смертельный удар сковородкой превращает в золотую статую:
1. Обычных заражённых.
2. Всех особых заражённых.
3. Танков, включая варианты из первой части.
4. Обычную Ведьму и Ведьму-невесту.
Статуя сохраняет позу заражённого в момент смерти. Обычный ragdoll удаляется, поэтому рядом не остаётся второй, незолотой труп. Удары сковородки сопровождаются металлическими звуками Saxxy, а само превращение сопровождается отдельным звуком золочения.
Статуи не прибиты к карте. Их можно толкать и пинать ногами, после чего они едут и вращаются по земле. Именно поэтому после драки улица иногда превращается в очень странный золотой боулинг.
КАК УСТРОЕНА ФИЗИКА
Видимая золотая фигура и физический объект разделены. Сама модель хранит смертельную позу и не имеет твёрдой коллизии. Под ней находится невидимый физический носитель на базе prop_physics_multiplayer с коллизией стандартного деревянного ящика. Золотая фигура привязана к носителю и повторяет его движение и вращение.
Носитель использует группу PUSHAWAY, поэтому игрок не должен приклеиваться к статуе или застревать внутри неё. Дополнительная логика учитывает направление и скорость движения выжившего и добавляет статуе импульс и вращение при столкновении. Визуально по улице летит золотой зомби, а физически движок рассчитывает устойчивый невидимый проп.
КАК РАБОТАЮТ ЗВУКИ СКОВОРОДКИ
Со звуком Source Engine устроил отдельный сюрприз. Новые WAV-файлы можно положить в мод и вызвать через SourceMod, но без записи в sound.cache клиент L4D2 часто просто их игнорирует. Поэтому мод использует уже известные движку звуковые слоты самой сковородки.
Четыре штатных слота weapons/pan/melee_frying_pan_01.wav - melee_frying_pan_04.wav подменяются тремя металлическими Saxxy impact, а слот weapons/pan/pan_break.wav используется для TurnGold. Обычный удар даёт один металлический impact. При смертельном ударе SourceMod дополнительно запускает TurnGold в точке появления статуи.
Перед сборкой рабочие копии TF2-звуков приводятся к формату, числу каналов и длительности штатных слотов L4D2. Благодаря этому движок не обрезает звук, не искажает его и не требует регистрировать новые пути в звуковом кеше.
КЛЮЧЕВЫЕ МЕСТА В SOURCEPAWN
Перехват смерти. Обработчики SDKHook_OnTakeDamageAlive проверяют оружие, владельца и летальность удара. Только после успешного создания статуи исходная смерть помечается как обработанная. Для особых заражённых отдельный pre-hook подавляет CTerrorPlayer::CreateRagdollEntity, а резервная очистка удаляет труп, если движок всё же успел его создать.
Копирование позы. До удаления заражённого код считывает m_nSequence, m_flCycle, skin, body и массив m_flPoseParameter. Эти значения применяются к золотой визуальной модели, поэтому она фиксирует именно тот кадр анимации, на котором пришёлся смертельный удар.
Физический пинок. Видимая статуя привязана к скрытому prop_physics_multiplayer. Повторяющийся таймер сравнивает положение и скорость выжившего с носителем, вычисляет направление толчка, добавляет линейную и угловую скорость и будит физический объект. Поэтому статую можно катать ногами, но её сложная модель не зажимает игрока.
ПОЧЕМУ УСТАНОВКА СОСТОИТ ИЗ ДВУХ ЧАСТЕЙ
Steam Workshop может доставить модели, материалы и звуки, но не может установить и запустить SourceMod-плагин. Поэтому мод разделён на две части:
1. Workshop Assets: золотая сковородка, модели статуй, материалы и звуки.
2. SourceMod Backend: серверная логика превращения, физика, очистка трупов и регистрация сковородки на картах.
ВАЖНО: одной подписки в Steam Workshop недостаточно. Без серверной части сковородка будет золотой, но превращение заражённых работать не будет.
ТРЕБОВАНИЯ
1. Left 4 Dead 2.
2. Metamod:Source.
3. SourceMod 1.12 или новее.
4. Локальный либо выделенный сервер.
5. Workshop-компонент у хоста и подключающихся игроков.
КРАТКАЯ УСТАНОВКА
1. Подписаться на Workshop-пакет.
2. Установить Metamod:Source и SourceMod.
3. Скачать SERVER-компонент с GitHub.
4. Распаковать содержимое архива в папку left4dead2 с заменой файлов.
5. Запустить локальный или выделенный сервер и проверить командой sm_gps_status.
Для локального сервера Windows игру необходимо запускать с параметром -insecure. Перед подключением к официальным VAC-серверам игру нужно полностью перезапустить уже без этого параметра.
ССЫЛКИ
Steam Workshop:
https://steamcommunity.com/sharedfiles/filedetails/?id=3770265374
SERVER-компонент:
https://github.com/Anvilstation/THE-REAL-GOLDEN-PAN/releases/tag/v1.0.0-rc2
Исходный код и документация:
https://github.com/Anvilstation/THE-REAL-GOLDEN-PAN
Исходники открыты. Если кому-то захочется сделать на основе проекта собственное безумие, я буду только рад.
Мод прошёл через множество ручных сборок, нерабочих вариантов и очень странных особенностей Source Engine. В разработке помогали ИИ и другие вспомогательные инструменты, но итоговая механика собиралась, проверялась и доводилась вручную.
Главная цель проекта простая: дать людям возможность искренне покайфовать, размахивая золотой сковородкой и отправляя статуи заражённых кататься по улице.
Автор: saanee2000
0
👍
👎
❤️
🔥
😮
😢
😀
😡
3
25.07.2026 15:33:52
Комментарии
Кузница
Портал проектов группы разработчиков "anvilstation.com"