В Counter-Strike 2 расширены возможности скриптинга карт из мастерской

В четверг, 26 февраля, разработчики выпустили патч для Counter-Strike 2, который в первую очередь сосредоточен на расширении возможностей скриптинга карт из мастерской. Помимо новых инструментов, обновление устранило ряд технических неточностей и расширило совместимость гайдов для карты de_ancient.
Патч добавил систему сохранения данных с поддержкой Steam Cloud — теперь карты из мастерской могут сохранять до 1 МБ данных, причём сохранения синхронизируются через Steam Cloud и остаются доступными даже после переустановки игры. Лимит размера файла сохранения можно настроить с помощью команды sv_workshop_map_save_data_max_filesize_mb.
Для работы с сохранениями добавлены новые функции:
- Instance.SetSaveData — позволяет сохранять данные;
- Instance.GetSaveData — обеспечивает доступ к сохранённым данным.
Расширены возможности обработки урона:
- Добавлена функция Instance.OnModifyPlayerDamage, которая вызывается после расчёта всех параметров урона — непосредственно перед изменением брони и здоровья игрока. Она заменяет собой Instance.OnBeforePlayerDamage и включает в данные события параметр hitgroup.
- В данные события OnPlayerDamage также добавлен параметр hitgroup.
- Введён флаг CSDamageFlags.IGNORE_ARMOR, расширяющий возможности настройки урона.
Для работы с вводом игрока добавлены следующие методы:
- CSPlayerPawn.IsInputPressed — проверяет, удерживается ли в данный момент определённая клавиша;
- CSPlayerPawn.WasInputJustPressed — определяет, была ли клавиша нажата в последнем кадре;
- CSPlayerPawn.WasInputJustReleased — фиксирует момент отпускания клавиши.
Также введено перечисление CSInputs, которое упрощает работу с различными типами ввода.
Кроме того, исправлена ошибка, из‑за которой CSDamageTypes экспортировался под именем CSDamageType.
Разработчики расширили совместимость гайдов. Теперь руководства по карте de_ancient можно использовать на de_ancient_night и наоборот. Это упрощает навигацию и обучение для игроков, знакомых с классической версией локации.