Иконка ресурса

amxx reapi [ACS] Weapon Control System 1.4.0

Нет прав для скачивания
Версия Дата выхода Скачиваний Оценка
1.4.0 37 0.00 звёзд 0 оценок
1.3.9.4 28 0.00 звёзд 0 оценок
1.3.8.4 30 0.00 звёзд 0 оценок
Добавлено:
  • Поддержка любого "внешнего" оружия, с возможностью установки любых ограничений. Название оружия должно начинаться с "ext_"
  • Макрос random_x(...) для возможности генерации случайных элементов в конфигурационном файле, в поле items раздела [ADVANCED TASKS]. Таким образом реализована разминка со случайно выбранным оружием, полный эквивалент всех возможных Random Weapon Warmup. Отображаемое имя пустого элемента оружия задается в словаре параметром WP_NAME_RANDOM_0_EMPTY = Ножах. Чтобы увеличить вероятность выпадения какого-либо оружия в списке, нужно его добавить большее число раз. Пустой элемент ",," не выдает никакого оружия. Думаю макрос можно добавить во все поля, чтобы выдавать случайные бонусы игрокам при событиях убийства на разных картах...
  • Динамический режим закрытия VIP меню.
  • Возможность биндить любое созданное меню оружия на любую клиентскую команду, например, Магазин ANEW на команду /anew или say /anew, тем самым прозрачно перехватывая функционал плагина AES Bonus. Для этого плагин в списке plugins.ini нужно поднять выше AES Bonus.
  • Наконец-то реализована единая "точка входа" для всего используемого на сервере оружия, с единой системой учета его количества и управления на основе заданных сценариев ограничений, с двухуровневым VIP Menu.
Исправлено:
  • Несколько ошибок, редко приводящих к режиму CSDM до смены карты.
  • Исправлен сценарий разминки, квары mp_round_infinite 1 и mp_forcerespawn 1 нужно устанавливать сразу в начале, иначе прилетит событие GAME_COMMENCE и в некоторых случаях нумерация раундов увеличивалась на +1, ломая заданный сценарий.
  • Функция экранирования спецсимволов при запросах к БД GameCMS
  • Режим работы квара acs_wcs_vipmenu_timeout. При положительном (+) значении задает таймаут автозакрытия VIP меню, после начала движения, при отрицательном (-) - таймаут с момента открытия меню игроку. 0 - автозакрытие выключено. Значение по-умолчанию уменьшено до "3". При обновлении плагина не забудьте его исправить.
ВНИМАНИЕ! Обновлен словарь! В прилагаемом примере "разминки на случайном оружие" (Random Weapon Warmup), в конфигурационном файле acs_wcs.ini изменена нумерация таймеров и добавлены новые элементы.
  • Добавлена поддержка типов задач в разделе [ADVANCED LIMITS] конфига acs_wcs.ini в виде флагов: 1 - игрок находится в зоне закупки, 2 - время закупки, определяемое кваром mp_buytime, не истекло. Это нужно чтобы выдавать, например, броню и гранаты 1 раз за раунд, в самом начале, чтобы при воскрешении игрока (у кого стоит этот плагин) не выдавался полный боекомплект. Флаги можно суммировать (0 - всегда, 1 - только в зоне закупки, 2 - только в течение периода времени mp_buytime в начале раунда, 3 - только в зоне закупки и в течение периода времени mp_buytime в начале раунда). В раздел Настройки добавлю
    Код:
    ;$ "Гранаты"        "3"    "m"    ""    "3"    "0"    "" "" "" ""    "+weapon_hegrenade,+weapon_flashbang:2,+weapon_smokegrenade"        ""    ""                                                    ""
  • Добавлено экранирование спецсимволов при формировании SQL-запроса.
  • Забыл подключить квар acs_wcs_log, исправил.
  • Небольшая оптимизация кода для повышения стабильности и предсказуемости работы.
  • Добавил недостающий сценарий лимита, позволяющий равномерно и справедливо распределять ограниченное по количеству оружие между игроками команды, например, AWP. Поле лимита на игрока можно задать в формате "X:Y:Z", где X - ограничение на количество закупок оружия игроком за раунд, Y - количество непрерывных (повторяющихся) закупок, Z - через сколько раундов можно повторить закупку при достижения лимита Y. Указывать доп. параметры Y и Z имеет смысл при X = 0 либо при X < Y, если вы совмещаете условия фильтрации. Если Z не задано, Z = 0 (т.е. ограничение Y действует только в текущем раунде). В разделе Настройка добавлю
    Код:
    ;# "Лимит AWP"    "1"    ""    ""    "4"    ""    ""    ""    ""    "0:1:2"  "3"  "0"    "weapon_awp"    ""    ""    ""
    Означает, что лимит на покупку действует с 4-го раунда, лимит любых AWP на команду - 3 ед., каждый игрок может купить AWP 1 раз, повторно - только через 2 раунда.
  • Добавил поддержку в фильтре по картам, возможность их указывать через запятую, в том числе их префиксы, например "awp_,de_,$".
  • Обновлен файл словаря в связи с расширением функционала.
  • Мелкие косметические изменения кода.
  • Обновлен файл .so модуля. Исправлена ошибка в условии if (0 < EntityIndex <= gpGlobals->maxClients). Да, такое тоже бывает...:pardon:Спасибо, the_hunter:good2:
  • Отвязал от инклудов GameCMS, реализовал получение необходимых плагину данных напрямую из БД. Теперь плагин должен компилироваться без проблем. Добавлены новые квары acs_wcs_gamecms_enable, acs_wcs_gamecms_db_host, acs_wcs_gamecms_db_name, acs_wcs_gamecms_db_user, acs_wcs_gamecms_db_pass. По-умолчанию, интергация с GameCMS отключена.
  • Обновлен словарь, в связи с появлением новых кваров.
  • Произведена небольшая оптимизация кода, с учетом не совсем корректной, на мой взгляд, работы rg_round_end(), что приводило в некоторых случаях к крашам ReGame (ну и сервера в целом) с ошибками вида: CHalfLifeMultiplay::PlayerThink(CBasePlayer*) или UpdateClientData(edict_s const*, int, clientdata_s*). Корректно, в терминах заложенных в ReGame алгоритмов, этот ReAPI-шный натив раунд не завершает. Поэтому легко можно словить событие Respawn всех игроков и краш сервера, если в предыдущем раунде, например, на разминке создавались сотни объектов в ходе ожесточенного противостояния команд.
  • Добавил недостающие инклуды от GameCMS, которые используются для отображения оставшегося срока действия услуги в меню оружия. Теперь должно компилироваться без ошибок.
  • Добавил квар acs_wcs_gamecms_enable, по-умолчанию "0". Если у вас стоит плагин gamecms_api.amxx можете установить его в "1".
Сверху Снизу