Версия | Дата выхода | Скачиваний | Оценка |
---|---|---|---|
1.4.0.8 | 13 | 0.00 звёзд 0 оценок | |
1.4.0.7 | 14 | 0.00 звёзд 0 оценок | |
1.4.0 | 49 | 0.00 звёзд 0 оценок |
Исправлено:
Внимание! После обновления плагина требуется перезапуск сервера, и лучше не рестарт, а цикл "стоп-старт".
- Утечка памяти, поскольку динамические массивы и хэши после использования требуют ручного удаления данных -
ArrayDestroy
иTrieDestroy
. Упустил этот момент, что приводило на нагруженном сервере к утечке памяти ~25КБ/мин.
Исправлено:
Положил в архив, в отдельную папку,
- Исправлена ошибка с залипанием "вечной" разминки, такое происходило крайне редко. Сценарий ошибки удалось обнаружить лишь спустя полгода - игрок в 1 слоте выходил до окончания разминки.
- Обновлен модуль
RefsAPI
до1.0.3.6
(скомпилирован без SQL-менеджера и с пониженной версиейGLIBC
- для Арены).- Доработан функционал команды
register_concmd("round_end", "cmd_round_end", ADMIN_RCON, "<delay> <id string> [#NUM]")
, чтобы можно было перезапустить WCS с нужного раунда, например, в ночном режиме:round_end 0.5 3 #2
- перезапуск игры со второго раунда, без разминки.- Значительно оптимизирован код работы с кварами. Теперь все по феншую, как и с SQL
ReGame 5.27.0.730-dev
.
Спасибо, WILL_BE, за помощь!
Исправлено:
- Понижена требуемая версия
ReAPI
до5.21
, возможно, еще ниже...- Обновлен модуль
RefsAPI
до1.0.3
(скомпилирован без SQL-менеджера и с пониженной версиейGLIBC
- для Арены)- Переработан код учета всех объектов
- Исправлена ошибка в использовании реапишной
is_nullent()
, в результате чего много функций вызывалось по 2 раза- Восстановлена полная совместимость с
AES
и прочими плагинами, выдающими произвольное оружие игрокам в начале раунда- Обновлен файл конфига (рекомендую удалить старый, новый создается автоматически)
- Обновлен словарь
- Положил в архив, в отдельную папку,
ReGame 5.27.0.730-dev
собранную с последним фиксом s1lent-a, устраняющим причину крашей вUpdateClientData(edict_s const*, int, clientdata_s*)
, а также полностью восстанавливающий логикуReGame
для гранат (появляется детач от игрока). Это не релиз, а промежуточный билд, который пока имеет косметический баг с бомбой - при ее установке вызывается 2 разаRemovePlayerItem()
. В остальном все работает идеально, краши пропали. За что ему большое спасибо
Исправлено:
s1lent большое спасибо за терпение и помощь в работе с кварами
- Ошибка с
id = 0
вacs_check_filter_row
, на функционал не влияла.- Баг
AMXX
со словарем вprecache
, при первом старте сервера.- Добавлены фиксы WILL_BE, в словаре и коде, у меня этих сценариев нет, а ему спасибо Если установить флаг
0x2
(добавить +2 к текущему значению) в значение квараacs_wcs_vipmenu_mode
- VIP меню не будет открываться вне зоны спавна и после времениmp_buytime
с выводом соответствующей ошибки.- Отключил
accuracy_fix
и перенес корректировку отдачи в модульrefsapi
. Отдача теперь настраивается вacs_wcs.cfg
.- Переключил работу с кварами на менеджер
refsapi
. Конфигурационный файл теперь создается корректно всегда, поддерживаетUTF-8
, сортирует квары, понимает изменения состава кваров в плагине и перегенерирует конфиг при необходимости с их текущими значениями, неиспользуемые или отключенные квары комментирует.
В состав предыдущего архива1.3.8.4
по ошибке положил тестовый модуль (скопировал не из той папки). Исправил, извините
Кто скачал предыдущий архив - просто заменитеrefsapi_amxx_i386.so
на файл из этого архива. Все остальное осталось без изменения, включая версию.
Исправлено:
Добавлено:
- Округление величины воруемого здоровья до целого в
item_vampire
, чтобы не ползали трупы игроков с 1HP. Возникало из-за разночтений кого считать трупом в ReGame и ReHLDS.- "Сумашедшее" поведение ReGame при блокировке выдачи бомбы игрокам...
- Загрузка словаря перенесена в секцию для инициализации нативов, чтобы при старте сервера правильно отображался текст таймера.
- Все "тяжелые" операции вынесены в отдельный модуль AMXX -
REFSAPI
, который выполняет необходимые плагину операции без "циклов по циклу в цикле", в среднем, в 90 раз быстрее, чем ReAPI . Подключается путем добавления строки"refsapi"
после"reapi"
в файле./amxmodx/configs/modules.ini
Исходник модуля тут: https://github.com/jobmail/refsapi/Код:sockets mysql csx cstrike reapi refsapi
Доступных нативов, пока, не много:Код:native rf_get_players_num(nums[] = 0, nums_size = 0, bool:only_teams = false); native rf_get_user_weapons(const id, ent[], ent_size); native rf_get_weaponname(const ent, name[], name_len); native rf_get_ent_by_class(const classname[], const id = 0, ent[], ent_size); native Float:rf_roundfloat(const Float:value, const precision = 0); native bool:rf_get_user_buyzone(const id);
Добавлен новый раздел:
- Изменен режим работы таймеров - поле
delay
всех фильтров. Если указать значение со знаком+N
сработает за N секунд до конца раунда.
Добавлен новый элемент:
[SOUNDS]
с префиксом;*
для прекеша различных звуков:
Файлы с расширениемКод:; [SOUNDS] ; <name> <file_name> ;* "planted" "bombpl" ;* "defused" "bombdef"
.wav
необходимо положить в./sound/wcs/
Добавлены новые события:
item_mission
- выполняет проверку какая команда не выполняет свою миссию и запускает соответствующее событиеACS_ET_MAP_MISSION_TT
(type = 8192) илиACS_ET_MAP_MISSION_СT
(type = 16384). Можно, например, воспроизвести звук, включить таймер или как-нибудь наказать...item_snd_*
- воспроизводит звук с названием из раздела[SOUNDS]
, например,item_snd_bombpl
. Через":"
можно уточнить команду получателя:0
- все,1
- TT,2
- CT,3
- команда отправителя (на ком сработало событие).
Цифры - это значение полеКод:enum _:ACS_WCS_EVENT_TYPES { ACS_ET_ALL = -1, ACS_ET_NONE = 0, ACS_ET_KILL = 1, ACS_ET_KILL_HS = 2, ACS_ET_KILL_HE = 4, ACS_ET_KILL_KNIFE = 8, ACS_ET_KILL_BOMB = 16, ACS_ET_ROUND_START = 32, ACS_ET_ROUND_END = 64, ACS_ET_BOMB_PLANTING = 128, ACS_ET_BOMB_PLANTED = 256, ACS_ET_BOMB_DEFUSING = 512, ACS_ET_BOMB_DEFUSED = 1024, ACS_ET_WIN_TT = 2048, ACS_ET_WIN_CT = 4096, ACS_ET_MAP_MISSION_TT = 8192, ACS_ET_MAP_MISSION_CT = 16384, ACS_ET_KILL_SELF = 32768, }
type
раздела[ADVANCED EVENTS]
. Например, можно заменить стандартные звуки, так:
Код:;% "Бомба установлена" "256" "" "" "3" "" "" "" "" "" "item_snd_planted" "" "" "" ;% "Разминировал бомбу" "1024" "" "" "3" "" "" "" "" "" "item_snd_defused" "" "" ""
Добавлены новые элементы:
Исправлено:
item_evasion:X
- уклонение от атаки противника с вероятностьюX
в %item_vampire:X
- вампиризм. ЕслиX
со знаком+
- указывает процент от нанесенного урона преобразуемый в здоровье для атакующего, если со знаком-
- тоже самое, только здоровье отнимется у атакующего (что-то вроде проклятья ), если знак не указан - абсалютное значение здоровья, которое добавится после убийства противника.item_jump
- супер-мега плавный мультиджамп, настроенный под колесики игровой мышки A4tech X7 и ноутбучной Logitech AnyWhere.bind mwheelup +jump
,bind mwheeldown +jump
- и пробуем скакать на ящики крутя колесико мышки. Чтобы запрыгнуть куда-нибудь под потолок, нужно крутить колесико "туда-сюда". Кто понимает что делает - можно задать параметры мультиджампа черезitem_jump:X
, гдеX
- число в следующем формате:BITS(0->32): 10(VELOCITY_Z) + 9(VELOCITY_Y) + 9(VELOCITY_X) + 4(MAX_COUNT)
. Если укажите это число со знаком+
, указанные значения будут в%
, если без указания знака - абсолютные величины скоростей.item_bhop
- авто BunnyHop или супер BunnyHop, если указатьitem_bhop:1
.bind space +jump
, зажимаете пробел и прыгаете... Спасибо, разработчикам ReGAME!
- В поле
RECOIL
для ножей (weapon_knife
) возможно указать значение отличное от1.0
для изменения расстояния атаки, в большую или меньшую сторону. Случайно увидел тему на форуме, fl0wer подсказал(-а) "как". Спасибо :-)- В поле
EXP
всех фильтров можно через:
указать диаппазон скилла CSX. Например,200-2000:130-150
, если условие по опыту не требуется, а необходимо указать только скилл:130-150
.
- Ошибка в фильтрах, при указании диапазонов с числами более 32768.
- Наличие плагинов AES, CSX и GameCMS теперь определяется автоматически.
ВНИМАНИЕ! Изменился файл словаря и состав кваров, настройки подключения к GameCMS больше не нужно указывать. Переименуйте файл конфига и сгенерируйте новый.
Исправлено:
Спасибо, HAFAH9 за тестирование и найденные баги
- Баг с меню
/killfader
и/damager
- Модели p_, v_ и w_ можно теперь указывать поштучно, раньше для отображения необходимо было указывать одновременно p_ и v_ модели.
- Совместимость с [ACS] Vote.
Исправлено:
- Заголовок меню дамагера
VIP-меню
закрывается при смерти игрока- Возможность открытия меню настроек
say /damager
иsay /killfaider
для мертвых и спектраторов
Добавлено:
- Поддержка указания
имени игрока
(через макрос_nick:
) или егоSTEAM_ID/VALVE_ID
в полеmaps
всех фильтров, например, можно выдавать оружие или накладывать любые ограничения на определенного игрока- Добавлена поддержка выдачи
1 элемента
из группы, для этого нужно указать в разделе[ADVANCED TASKS]
в поле"delay"
любое отрицательное значение - это и будет номер группы. У нас используется для выдачи ножей для игроков с разными флагами, которые могут пересекаться.Код:;$ "Нож Girl" "0" "p" "" "1" "-1" "" "" "" "" "girlknife" "" "" "" ;$ "Нож Меценат" "0" "s" "" "1" "-1" "" "" "" "" "goldknife" "" "" "" ;$ "Нож ADMIN" "0" "u" "" "1" "-1" "" "" "" "" "adminknife" "" "" "" ; Комментарий: у Девушек есть флаги s и u, у Меценатов есть также флаг u. Задачи для группы выполняются до 1 совпадения, поэтому порядок элементов должен быть от более уникального к менее. ; Если бы не было групп то девушке бы выдавался 3 раза нож (у нее есть флаги из 3 строк), меценату 2 раза, а админу 1. Не знаю на сколько это понятно.
Добавлены элементы:
item_reload
- мгновенная перезарядка всех оружийitem_fade
- затемнение экрана, цвет, прозрачность, скорость нарастания и угасания эффекта регулируются указанием дополнительных параметров после":"
через пробел:Код:;% "HS+KNIFE+разминка" "10" "" "" "1-2" "" "" "" "" "item_hp:+70,item_fade:255 0 0 160 0.1 1.0" "" "" ""
item_killfader
- затемняет экран при убийстве
Добавлены меню настроек:
Настройки менюшек находятся в файле словаря, который ОБНОВЛЕН. Также немного оптимизировал код и убрал 4 таймера для обработки элементов раздела
say /damager
илиwcs_damager
- отображает меню настройки дамагера для игрока. При любых настройках работает ТОЛЬКО ЕСЛИ игроку выдан элементitem_damager
.say /killfader
илиwcs_killfader
- отображает меню настройки эффекта затемнения экран при убийстве для игрока. При любых настройках работает ТОЛЬКО ЕСЛИ игроку выдан элементitem_killfader
. Украл функционал у плагина Алексеич -а.[ADVANCED EVENTS]
. Возможно что-то еще, уже не помню.
В процессе реализация элементов "вампирка", "double jump", "уменьшение урона (с вероятностью)", "анти-флеш". Все остальное вынесу в API, кому надо пусть добавляют сами.