DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #1
[NM] illusionWH

Версия:0.0.9 beta


Совместим с:
Sourcemod 1.7.0(CS:GO) -
ниже не проверял.
Sourcemod 1.6.3(CS:S/v34) - ниже не проверял.


Предыстория:
Судя по известности - увеличение использование центрального процессора сервера, при включении модуля или cvar''a Anti-Wallhack.
И увелечение искусства использования WH на стороне клиента.


Описание:
Ручной детектор WH, путем включения - режима "призрака/Illusion". А именно: использования Функций и прочтения FAQ.


Функции:

(Режим: hide_admin):
- Игрок(Админ) и амуниция становиться полностью невидимые для других игроков.

(Режим: print_chat):
- Выводиться сообщение что Игрок(Админ) отключился\подключился к серверу.

(Режим: IN_SCORE):
- В таблице счета (зажатие "TAB") - Игрок(Админ) не виден для других игроков.

(Режим: spec_mode):
- За Игроком(Админом) невозможно следить когда был килльнут, или в спекторах.

(Режим: print_console):
- Вывод status/ping блокируется другим игрокам.

(Режим: God):
- Игрок(Админ) становиться бессмертным.

(Режим: block_weapons):
- Игроком(Админом) Поднятие/Дроп(выброс)/Стрельба запрещена.

(Режим: RadarCSS/RadarCSGO):
- Игрока(Админа) не видно на радаре.

(Режим: End_Round):
- В режиме "призрака" раунд заканчивается автоматически - пропуская Игрока(Админа).


Настройки(CVARs):
nm_illusionwh_enabled - (Режим: hide_admin) Включить плагин (по умолчанию 0 - выкл).
nm_illusionwh_god - Включить (Режим: God) для Игрока(Админа) (по умолчанию 1 - вкл).
nm_illusionwh_printconsole - (Режим: print_console) (по умолчанию - 1):
0
- Блокировать команды (status/ping/sm_who) игрокам без доступа к режиму 'призрака',
1 - Блокировать команды не админам.
nm_illusionspec_printconnect - (Режим: print_chat) - Выводить сообщение об подключении
(по умолчанию - 1).
nm_illusionspec_resume - (Режим: hide_admin) - Перемещать в спектора при Деактив. режима
(по умолчанию - 0).
nm_illusionwh_givewp - (Режим: hide_admin) - Выдача оружия сначала раунда, эффект 'закупки'
(по умолчанию - 1).
nm_illusionwh_countallow - (Режим: hide_admin) - Кол-во разрешенных использований
(по умолчанию - 1).
nm_illusionwh_admins_flag - (Режим: hide_admin) Флаг(и) для разрешения использования "Illusion" (по умолчанию - bz).

#define FLAG_ADMINA ADMFLAG_ROOT - Флаг доступа к списку игроков со статусом Illusion "призрака" (по умолчанию - ROOT).
#define FOOTSTEP - Выкл. шаги (по умолчанию - закомментирован).
#define LOWFOOTSTEP - Способ выкл. шагов (по умолчанию - не закомментирован).


Использование:
nm_illusionwh - Команда, Включение\Выключение ручного детектора WH.
nm_illusioname - Команда, при наведении на игрока - вывод его Ника в чате.
nm_illusionline - Команда, список игроков в чате со статусом "Illusion".


Установка:
- Извлечь из архивв illusion*WH в папку addons\sourcemod\
(illusionSWH - CS:S/v34)
(illusionGoWH - CS:GO)

Include:
PHP:
bool:IsValidIllusion(client)
- Возвращает статус "Illusion" у игрока (например для исключения его из списка, либо в использовании команд).


Настройка:
- Файл nm_illusionwh*.cfg в cfg\nm\
1. Использование Ручного детектора WH:
Оффтоп

2. С выходом новой версии меняеться цифра в зависимости от версии.
Например: Оффтоп

3. Возможное временное пользовательское админ Меню - добавить в addons/sourcemod/configs/adminmenu_custom.txt.
Содержимое: Оффтоп


ChangeLog:
C-подобный:
Версия 0.0.1b - 31.03.2015: Релиз beta плагина.
Версия 0.0.2b - 01.04.2015: [Add+] Команда nm_illusionname.
Версия 0.0.3b - 02.04.2015: [Fix*] Исправление мелких ошибок.
Версия 0.0.4b - 04.04.2015: [Fix*] Пленд бомбы, улучшен (Режим: End_Round) и (Режим: hide_admin).
Версия 0.0.5b - 05.04.2015: [Fix*] Улучшен (Режим: hide_admin) для CS:GO.
Версия 0.0.6b - 24.04.2015: [Add+] cvar''s: sm_illusionwh_god, sm_illusionwh_printconsole.
Версия 0.0.7b - 28.07.2015: [Add+] Разделение CS:GO и CS:S(v34).
Версия 0.0.8b - 06.01.2016: [Add+] Множество изменений (post #136).
Версия 0.0.9b - 28.01.2016: [Fix*] Экономики и кол-во очков команд и раундов (post #143).
                                                [OFF]                                               В созерцательном:
Версия 0.1.0b -
illusion*WH - запрет подбора заложников,
illusion*WH - улучшить (Режим: spec_mode),
illusion*WH - улучшить (Режим: RadarCSS/RadarCSGO),
[Fixed*] illusionGoWH - Экономики и кол-во очков команд и раундов.
[/OFF]

P.S.: Плагин находиться в состоянии beta - Выход новых версий зависит от качества своих высказываний и предложенных Fix*ов.

illusionSPEC - скрытно наблюдать за игроками в спекторах (встроен в illusionSWH и illusionGoWH).

Ресурсы: [NM] illusionWH.
 

Вложения

  • illusionSWH.zip
    26.3 КБ · Просмотры: 230
  • illusionGoWH.zip
    26.6 КБ · Просмотры: 294
  • include.zip
    2 КБ · Просмотры: 193
Последнее редактирование:

AZA

/reset
Сообщения
883
Реакции
162
Отличная Работа,круто придумал =)
 

BatyaMedic

Участник
Сообщения
766
Реакции
127
Атлична.
Скоро запилю серв на ксго,там и потестю.
 

R1KO

fuck society
Сообщения
9,457
Реакции
7,786
  • Команда форума
  • #4
PHP:
EventHookMode_Post);
Не нужно писать, оно дефолтное.

И лучше в
PHP:
public Cvar_b_illusion_enabled(Handle:cvar, const String:oldvalue[], const String:newvalue[])
Делать хук/анхук эвентов:
PHP:
	HookEvent("round_end", Event_OnRoundEnd, EventHookMode_PostNoCopy);
	HookEvent("player_death", Event_PlayerDeath, EventHookMode_Post);
	HookEvent("round_start", Event_OnRoundStart, EventHookMode_PostNoCopy);

PHP:
liveT()
{
	new i_t = 0;
	for (new x = 1; x <= MaxClients; x++)
	{
		if(IsClientInGame(x) && IsPlayerAlive(x) && !b_illusion[x])
		{
			if (GetClientTeam(x) == 2)
			{
				i_t++;
			}
		}
	}
	return i_t;
}
liveCT()
{
	new i_ct = 0;
	for (new d = 1; d <= MaxClients; d++)
	{
		if(IsClientInGame(d) && IsPlayerAlive(d) && !b_illusion[d])
		{
			if (GetClientTeam(d) == 3)
			{
				i_ct++;
			}
		}
	}
	return i_ct;
}

Можно объединить в одну функцию и передавать в нее 1 аргумент - индекс команды.

PHP:
public Action:table(client)
Зачем Action и public ?? Они много где не нужны.

PHP:
SDKhook(client, SDKHook_PreThink, Atacckk);
А нужно ли это, если у игрока нет никакого оружия?
 

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #5
PHP:
SDKhook(client, SDKHook_PreThink, Atacckk);
А нужно ли это, если у игрока нет никакого оружия?

(Режим: block_weapons):
- Игроком(Админом) Поднятие/Дроп(выброс)/Стрельба запрещена.

Запрещает Выброс имеющего оружия или Поднятие лежащих, да-бы исключить:
Выброшенное оружие будет невидимое для всех, кто поднимет его, и Поднятие нового оружия (в пустой слот) - эта амуниция будет видна на Игроке(Админа).

PHP:
SDKhook(client, SDKHook_PreThink, Atacckk);

Блокирование команды стрельбы Игрока(Админа) - путем передачи команды стрельбы Игрока(Админа) и блокирование на стороне сервера.
 

T1MOXA

Участник
Сообщения
567
Реакции
83
Спасибо, классная идея!

Добавлено через 52 минуты
Игроки меня всё ровно видят!
 
Последнее редактирование:

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #7
_Timoxa_,

1. Содержимое "sm" - в консоли клиента.
2. Содержимое "version" - в консоли сервера
3. Выводы ошибок логирования - Программный поиск в папке /addons/sourcemod/logs/ содержимое: "illusionWH.smx"

При использовании команд - выводиться в чат, об успешной выполнении.
 
Последнее редактирование:

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
DarklSide
Если в руках была бомба то остается бежишь с ней и не можешь выкинуть .И когда выключил наблюдение , а потом включил то оно не включается а пишет используй наблюдение только один раз.
И во втором раунде если ты в наблюдении человека становится видно.его можно убить.и вот про звуки шагов хотел еще узнать слышат ли их все.
 
Последнее редактирование:

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #9
lecktercss, верно - давно не был на картах со сцинарием закладки бомбы. Звук был слышан - в следующем fix*e исправлю.
В целях уменьшения вероятности у Игроков(Админов), выбивать хеды при внезапном появлении и исчезновении - ограничил использование один раз за раунд.
В начале каждого раунда, если Игрок(Админ) использовал команду в предыдущем раунде, Игрок(Админ) автоматически Выключает\Включает ручной детектор WH,
-
об этом иожно удостовериться - уведомлением в чате.
 

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
DarklSide
Просто тогда нужно сделать так, что если наблюдение выключено, то автоматом попадаешь в таблицу счета и есть ник ,а то так получается тебя видят игроки, ты есть на радаре а в таблице счета нет .И что то с бомбой нужно сделать, ее видно перемещение по карте когда наблюдаешь а скинуть ведь не можешь,да и не видать наблюдающего игрока.А бомба движется.:)
 

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #11
Просто тогда нужно сделать так, что если наблюдение выключено, то автоматом попадаешь в таблицу счета и есть ник ,а то так получается тебя видят игроки, ты есть на радаре а в таблице счета нет

При Выключении, так и должно быть. По крайней мере на sm 1.6.3+ так и происходит. С бомбой проблема уже была выявлена.
 

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
Вот не работает повторное включение посмотрите пожалуйста ,даже если начался другой раунд все равно пишет можете использовать только один раз
 

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #13
Выход версии 0.0.3b -
- Fix*
Дроп бомбы.
- Fix* Повторное использование.
- Add+ Некоторое заглушение звука ходьбы Игрока(Админа).
 

Leckter Hannibal

Участник
Сообщения
538
Реакции
182
DarklSide
Буду тестить если что то не так отпишу,походу я один пробую тестировать .Что то не кто не пишет как оно и вообще стоит ли ставить .
 

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #15
lecktercss, об этом задумываться не стоит, т.к. тема создана меньше 5-ти дней назад.
Основоваясь на логику и причину невозможность проверить плагин: проблема с бомбой, возможно была не решена.
Можно еще конечно добавить, при смены карты и находись в этом режиме, Игрок(Админ) в таблице счета не будет виден, т.к. в действительности его видно - до выбора присоединения к коменде.

На своих серверах, админы успешно используют плагин.
Например: в
Игрока(Админа) - не будут открывать огонь обычные игроки.
Если другие игроки используют WH подобия - ESP в виде точки или квадрата:
Нужно подходить особенным методом - останавливаться перед выходом из угла, быстро выйти и обратно зайти, если услышали звук AWP или другого оружия, то большая вероятность что у него ESP.
Можно просканировать его
nm_illusionname и выявить у него ESP, пока он оконательно "не ошибёться".

P.S.: Вот что можно назвать - использование Ручного детектора WH.
 
Последнее редактирование:
Сообщения
213
Реакции
35
Можно сделать:

Прослушка голосового чата противоположной команды
Немного увеличить скорость передвижения
При наведении прицела на врага,высвечивается его ник
Выделение особо важного игрока через меню,что бы этот игрок подсвечивался для призрака

У меня все работает на CSS)
 

DarklSide

Участник
Сообщения
931
Реакции
468
  • Автор ресурса
  • #17
carbon0081,
Прослушка голосового чата противоположной команды
http://hlmod.ru/forum/showthread.php?t=10789
Немного увеличить скорость передвижения
Принцип давать Игроку(Админу) скорость? - У кого есть WH, заметит что скорость Игрока(Админа) не обычна и не станет "ошибаться", стреляя в Игрока(Админа).
При наведении прицела на врага,высвечивается его ник
nm_illusionname - Команда, при наведении на игрока - вывод его Ника в чате.
Иначе можно использовать: mp_playerid "0", mp_playerid_delay "0", mp_playerid_hold "3".
Но при этих значениях, игроки увидят ваш "Ник", либо "unconnected" - на пустом месте.
Выделение особо важного игрока через меню,что бы этот игрок подсвечивался для призрака
Что-то подобии CS:GO, только для Игрока(Админа)?! Хорошая идея, возможно добавлю её в nm_illusionname.
 
Сообщения
164
Реакции
33
Если на сервер стоит VIP у игрока и у него есть автозакуп то после того как он активирует ilusion WH то у него оружие остается, и когда новый раунд начинается то оружие так и не забирается. В конце раунде игрок может зарезать противника
 
Сверху Снизу