В пятницу, 23 октября, Valve выпустила крупное обновление для Counter-Strike 2 объемом 123,1 МБ. Основной фокус патча направлен на расширение функционала скриптинга для создателей карт. Разработчики получили новые инструменты для управления заложниками, консольными переменными и правилами матчей, а также исправления ошибок в работе скриптов.
Среди ключевых нововведений — добавление объекта Instance.Precache. Этот инструмент возвращает объект CSPrecache, который позволяет разработчикам проверять загрузку ресурсов как на сервере, так и на клиенте. Появились методы CSPrecache.IsServerLoading, CSPrecache.IsServerLoaded, CSPrecache.IsClientLoading, CSPrecache.IsClientLoaded и CSPrecache.IsLoadedForAll. Также доступен метод CSPrecache.Release для управления ресурсами.
Значительно расширены возможности работы с заложниками благодаря новому объекту CSHostage. Скриптеры теперь могут проверять, подбирает ли игрок заложника, несет ли его и был ли он спасен. Добавлены методы для получения информации о спасшем игроке, а также о времени начала и завершения подбора. Метод CSPlayerPawn.GetHostage позволяет напрямую взаимодействовать с объектами заложников. Кроме того, внедрены события скриптов для отслеживания подбора, сбрасывания, спасения и убийства заложников.
Обновлен и объект верхнего уровня Console. Разработчики получили методы для получения значений консольных переменных различных типов: логических, числовых, строковых, векторных, угловых и цветовых. Добавлен метод Console.SetConvar для изменения переменных, который работает без ограничения sv_cheats и выполняется синхронно. Метод Instance.Msg переименован в Console.Log, а методы Instance.ClientCommand, Instance.ServerCommand и Instance.RegisterCheatCommand перенесены в Console.
Новый объект GameRules предназначен для управления правилами матча. Он включает методы для запуска и завершения разминки, получения и изменения счета команд, а также завершения раунда. Методы проверки фаз матча, получения количества сыгранных раундов и оставшегося времени, изменения таймера и начисления денег командам также перенесены в GameRules. При этом старые методы по-прежнему доступны в прежних местах, но помечены как устаревшие.
Помимо изменений в API, обновление затронуло отображение элементов на радаре. Добавлены классы HUD_TEAMMENU_VISIBLE и HUD_CHAT_VISIBLE для настройки отображения меню команд и чата. Эти изменения помогут картмейкерам более гибко настраивать интерфейс и взаимодействие с игроками в своих проектах.
