AMX MOD X
Воскресенье, 25.01.2026, 20:44:46



Приветствую Вас Гость | RSS
[ Главная ] [ fadetoblack для определенных айпи или под сетей - AMX Mod X Форум ] [ Регистрация ] [ Вход ]
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]

Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/

  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: slogic, AlMod  
fadetoblack для определенных айпи или под сетей
max_ripДата: Воскресенье, 16.03.2008, 22:19:07 | Сообщение # 1
Подполковник
Группа: Пользователи
Сообщений: 147
Репутация: 0
Статус: Не в сети
Собственно вроде бы все работает.
но хочется услышать мнение по поводу самого скрипта, правильно ли я использую сообщение смерти, или есть другие более подходящие варианты.

0,2
Практически полностью переписан код плагина, нашел довольно таки интересный метод защиты от флешек и смены лица в спектаторах.

Прикрепления: fadetoblack.zip (2.2 Kb)


Сообщение отредактировал max_rip - Воскресенье, 06.04.2008, 19:55:50
 
ArgusДата: Воскресенье, 16.03.2008, 23:53:41 | Сообщение # 2
AMXModX Fan
Группа: Cупер-модеры
Сообщений: 379
Репутация: 8
Статус: Не в сети
кстати, очень интересная вещь!
у меня на сервере как раз недавно подымался вопрос о том, как решить проблему с игроками играющих с компьютерных клубов. так что это то, что надо!


Правила форума
Поиск плагинов
Последние сообщения форума
 
BruteДата: Понедельник, 17.03.2008, 02:25:32 | Сообщение # 3
Генерал-полковник
Группа: Скриптеры
Сообщений: 1123
Репутация: 9
Статус: Не в сети
Quote (max_rip)
Прикрепления: fadetoblack.zip(6Kb)

Что с архивом? Почему там одинаковых файла?
 
RomaaaДата: Понедельник, 17.03.2008, 09:50:13 | Сообщение # 4
Лейтенант
Группа: Скриптеры
Сообщений: 58
Репутация: 1
Статус: Не в сети
подобный плагин уже есть... стоит и работает нормально... подсети\айпи можно уазывать в файле конфига + можно здавать цвет и прозрачность самого затемнения
вот на дедикейте даже тема есть по нему
Quote
AMX plugin: auto-ftb v1.6 Пост: 1 из 175

Назначение:
AMX плагин auto-ftb предназанчен для предотвращения мониторинга! плагин сам определяет игроков которые играют с одного IP. это значит, что если с одного IP будут играть более 2х человек, то после смерти у них появляется чёрный экран.этот чёрный экран исчезает только тогда когда все игроки с данного IP мертвы или в начале раунда.

Установка:
нужно установить auto-ftb.amx плагин под AMXMOD

Настройка:
обязательно нужно установить mp_fadetoblack 0! плагин может работать в двух режимах ftb_mode 1 и ftb_mode 2. Первый режим просто гасит экран у некоторых игроков, когда они могут мониторить. Второй режим это примерно тоже что и mp_forcecamera 2, но гораздо более продуманнее (одно плохо - переключение между игроками происходит за ~ 1/5 сек. этого иногда хватает чтобы понять где находится игрок)

специальной настройки он не требует, так как работает автоматически, но в иных случаях всё же потребуется ввести список IP.

например:
ftb_addip "club" "192.168.100."
// плагин будет знать, что с IP 192.168.100.1-192.168.100.254 возможен мониторинг

ftb_addip "lan users" "192.168.1.4:"
ftb_addip "lan users" "192.168.1.50:"
ftb_addip "lan users" "192.168.1.51:"
ftb_addip "lan users" "192.168.1.98:"
// плагин будет знать, что эти четыре пользователя могут мониторить, так как их компьютеры расположены рядом

ftb_addip "ultra club" "192.168.5."
ftb_addip "ultra club" "192.168.6."
ftb_addip "ultra club" "192.168.7."
// в данном примере ultra club занимает сразу 3 подсетки

ftb_addip "big club, room 1" "192.168.20.10:"
ftb_addip "big club, room 1" "192.168.20.11:"
ftb_addip "big club, room 1" "192.168.20.15:"
ftb_addip "big club, room 2" "192.168.20.14:"
ftb_addip "big club, room 2" "192.168.20.16:"
ftb_addip "big club, room 2" "192.168.20.18:"
ftb_addip "big club, room 3" "192.168.20.12:"
ftb_addip "big club, room 3" "192.168.20.17:"
ftb_addip "big club, room 3" "192.168.20.19:"
// если известно расположение компьютеров в клубе, то можно настроить подобным образом

+ set camera spectator for same IP LAN players, by `beast`port

Сообщение отредактировал Romaaa - Понедельник, 17.03.2008, 09:56:55
 
max_ripДата: Понедельник, 17.03.2008, 13:09:59 | Сообщение # 5
Подполковник
Группа: Пользователи
Сообщений: 147
Репутация: 0
Статус: Не в сети
Brute, хм, открыл проорал )). Оказывается виндовый зип очень умный зип, он каждый раз добавлял файло в архив. Собственно исходник, надо брать в котором #define VERSION "0.2"
Romaaa, да ДС я писал, что не очень сильно пользовался поиском, увы это мой не зачет. Но благодаря тому, что все таки решил его написать, наконец разобрался с iptools.inc ).
И так изучил все линки, так и не понял собственно момент, как обходится "просветление" при клацание мышкой в спектаторах.
В том плагине реализовано много чего для меня лишнего, меня вполне устроит только затемнее.
Также были встречены посты VENа, который хотел выложить свою реализацию, но так же он отписал, что в ближайшее время не будет этого делать, но это было в 2005 году, и на тот момент он был сделан на 80%, по словам автора.
Ну собственно наткнулся на так называемое просветление )
 
VENДата: Понедельник, 17.03.2008, 20:05:52 | Сообщение # 6
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Репутация: 45
Статус: Не в сети
Quote
правильно ли я использую сообщение смерти
Не рекомендую использовать эту csx forward функцию - с ней имеются некоторые проблемы. Например, она "не видит" смерь игрока от worldspawn и pfnClientKill.

Обычно используют следующий метод

Code
register_event("DeathMsg", "event_death", "a")
Т.е. регистрируют событие/сообщение DeathMsg, "привязав" его к event_death() функции, которая будет вызываться, если она найдена в коде (должна быть public-функцией).

Насчет твоего технического метода, он недостаточно эффективен. Например, черный экран легко снять "ослеплением" флэш-гранатой (при наблюдении за ослепленным игроком).

Насчет "просветления", оно имело место в плагине by beast, т.к. он использовал недостаточно эффективный технический метод - заставлял клиента отослать определенную команду, что требовало некоторого времени реагирования, в то время как можно было просто эмулировать аналогичную команду клиента непосредственно на стороне сервера, что в свою очередь исключило бу вышеупомянутую задержку, а, следовательно, и т.н. "просветление".

Рекомендую организовать прикрепелнный архив должным образом, дабы исключить возможные недоразумения.

Тема перемещена из подраздела "Скрипты".

 
slogicДата: Понедельник, 17.03.2008, 20:40:53 | Сообщение # 7
Генералиссимус
Группа: Админы
Сообщений: 1941
Репутация: 47
Статус: Не в сети
в строке вызова read_file вместо 50 надо ставить 49, а вообще используй sizeof(readdata) - 1. то же самое для дальнейших вызовов replace и copy.
 
VENДата: Понедельник, 17.03.2008, 20:58:54 | Сообщение # 8
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Репутация: 45
Статус: Не в сети
Quote
а вообще используй sizeof(readdata) - 1
Или sizeof readdata - 1 (если следовать официальному синтаксису, освещенному в "Pawn the Language" документации).
 
max_ripДата: Понедельник, 17.03.2008, 21:52:54 | Сообщение # 9
Подполковник
Группа: Пользователи
Сообщений: 147
Репутация: 0
Статус: Не в сети
мм спасибо за комментарии и поправки, они для меня важны.
По поводу переезда, наверно все таки вы поспешили в готовые плугины - он же сырой до безобразия с такими просветлениями.
Quote (VEN)
в то время как можно было просто эмулировать аналогичную команду клиента непосредственно на стороне сервера, что в свою очередь исключило бу вышеупомянутую задержку

можно подробнее ), а то как-то не въехал в тему).
ЗЫ кстате при включенном mp_fadetoblack 1 тоже бывали случаи просветления от флешки )
ЗЫЫ архивчик поправил.


Сообщение отредактировал max_rip - Понедельник, 17.03.2008, 21:56:52
 
DaTaДата: Понедельник, 17.03.2008, 22:28:10 | Сообщение # 10
Генерал-полковник
Группа: Cупер-модеры
Сообщений: 1025
Репутация: 16
Статус: Не в сети
Quote (VEN)
Или sizeof readdata - 1 (если следовать официальному синтаксису, освещенному в "Pawn the Language" документации).

все видишь blink
 
VENДата: Вторник, 18.03.2008, 21:46:56 | Сообщение # 11
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Репутация: 45
Статус: Не в сети
Quote
все видишь
А ты все флудишь...

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

Quote
можно подробнее
Ну... что делает автор? Он делает следующее:
Code
client_cmd(id, "spec_mode 4;spec_menu 1;follownext 1")
Последнюю команду можно эмулировать (с помощью функции engclient_cmd) на стороне сервера. В имени первой можно убрать "_", что также позволит эмулировать ее на стороне сервера. Ну а использование второй команды мне вообще не ясно. Зачем вызывать меню наблюдателя, если его наоборот нужно скрыть...

Перемещено из "Готовые плагины".

 
max_ripДата: Воскресенье, 30.03.2008, 04:11:12 | Сообщение # 12
Подполковник
Группа: Пользователи
Сообщений: 147
Репутация: 0
Статус: Не в сети
Сидел смотрел чужой код, рабочего плагина, но так и не понял каким образом отлавливается событие смены "глаз" в смпектаторах.
Ну и в добавок как отловить событие флешки в спектатора, прокатит ли отлов события register_event("ScreenFade", "event_flash", "be", "1>0", "2>0", "3=0", "4=255", "5=255", "6=255", "7>199")

ЗЫ вот, думал тут, а может надо просто ловить event_screen_reset, и проверять если хелсов меньше или равно 0, то отсылать черный экран ?

 
VENДата: Вторник, 01.04.2008, 19:04:39 | Сообщение # 13
AMXX-Скриптинг-Эксперт
Группа: Админы
Сообщений: 1892
Репутация: 45
Статус: Не в сети
Скопировал из плагина "Eye Lids" by VEN:
Code
    register_event("ScreenFade", "event_screen_reset", "b", "1=4", "2=0", "3=0", "4=0", "5=0", "6=0", "7=0")
  register_event("ScreenFade", "event_flash", "be", "1>0", "2>0", "3=0", "4=255", "5=255", "6=255", "7>199")
  register_event("ScreenFade", "event_ftb", "bd", "1=12288", "2=12288", "3=5", "4=0", "5=0", "6=0", "7=255")
 
slogicДата: Вторник, 01.04.2008, 19:26:29 | Сообщение # 14
Генералиссимус
Группа: Админы
Сообщений: 1941
Репутация: 47
Статус: Не в сети
Quote (VEN)
sizeof readdata - 1

мне по-барабну как у них, потому что скобки показывают точно приоритеты выполнения операции, и выражение трактуется однозначно. тем более раз они слили синтаксис с Си, зачем было убирать требование скобок с sizeof?!
 
max_ripДата: Воскресенье, 06.04.2008, 20:02:55 | Сообщение # 15
Подполковник
Группа: Пользователи
Сообщений: 147
Репутация: 0
Статус: Не в сети
VEN, ну собственно я то его и читал )), кстати попробывал на этих выходных действительно при переключение в спектаторах происходит событие
register_event("ScreenFade", "event_screen_reset", "b", "1=4", "2=0", "3=0", "4=0", "5=0", "6=0", "7=0")
На тот момент я не мог сделать проверку на "живость" игрока, по этому застопорился, но вы уже указали мне путь. Буду пробовать когда появится время.

Добавлено (2008-04-06, 8:02 Pm)
---------------------------------------------
В общем Уважаемые скриптеры, вроде получился RC. Гляньте пожайлуста.

 
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

AMX Mod X Russian Community © 2006-2026