|
Вниманию участников! Данный форум теперь является архивом и вскором времени здесь нельзя будет создавать новых тем! Просьба всем для общения и создания новых тем перейти на наш новый форум: http://amxmodx.su/
Ищу плагинчик
|
|
Black-Elk | Дата: Воскресенье, 22.11.2009, 00:52:25 | Сообщение # 1 |
Сержант
Группа: Пользователи
Сообщений: 23
Статус: Не в сети
| идея такова. на сервере стоит DPROTO который пускает со всех клиентов. хотелось что что бы клиентам без стима выкидывало mod окно с моими пожеланиями и кикало через указанное время за исключением диапазнов ip указанных мной в отдельном файлике + имеющих в Access flags буковку t (например) отличить игроков можно по steam id у реальных STEAM_0:0:1596308291 выдаваемые по ip VALVE_0:4:353393780 есть ли такие ?
Сообщение отредактировал Black-Elk - Воскресенье, 22.11.2009, 00:56:50 |
|
| |
tavot | Дата: Воскресенье, 22.11.2009, 22:45:04 | Сообщение # 2 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| Black-Elk, а чем смысл то? Игроки без стима и так знают что они с пираткой - если их кикнетза протокол они и так поймут....
|
|
| |
Black-Elk | Дата: Воскресенье, 22.11.2009, 23:56:25 | Сообщение # 3 |
Сержант
Группа: Пользователи
Сообщений: 23
Статус: Не в сети
| смысл в том - что с моей сети будут играть с любого клиента
|
|
| |
tavot | Дата: Понедельник, 23.11.2009, 09:20:07 | Сообщение # 4 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| Black-Elk, Идея не плохая. Надо обдумать, думаю из несколлких плагинов можно будет собрать такой )
|
|
| |
Black-Elk | Дата: Понедельник, 23.11.2009, 16:24:54 | Сообщение # 5 |
Сержант
Группа: Пользователи
Сообщений: 23
Статус: Не в сети
| ждемс ps. список ip выглядит примерно вот так http://www.beirel.ru/peer_list.txt
Сообщение отредактировал Black-Elk - Понедельник, 23.11.2009, 16:34:55 |
|
| |
ZETA | Дата: Понедельник, 23.11.2009, 22:02:08 | Сообщение # 6 |
Генерал-майор
Группа: Скриптеры
Сообщений: 369
Статус: Не в сети
| Как-то так...IP в RangeIP.txt
Сообщение отредактировал ZETA - Понедельник, 23.11.2009, 22:04:14 |
|
| |
Black-Elk | Дата: Вторник, 24.11.2009, 00:36:50 | Сообщение # 7 |
Сержант
Группа: Пользователи
Сообщений: 23
Статус: Не в сети
| поставил. никаких признаков плагина status hostname: Counter-Strike 1.6 Server version : 48/1.1.2.6/Stdio 4617 secure (10) tcp/ip : 89.222.165.3:27020 map : de_inferno at: 0 x, 0 y, 0 z players : 1 active (14 max) # name userid uniqueid frag time ping loss adr # 1 "XoM9iK" 2 VALVE_0:4:1182604912 0 01:36 17 0 89.222.166.37 бегаю по серваку RangeIP.txt пуст
|
|
| |
tavot | Дата: Вторник, 24.11.2009, 01:46:55 | Сообщение # 8 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| Black-Elk, там в коде стрчока есть: Code if(!containi(authid,"STEAM_0:")) { Замени на: Code if(!containi(authid,"VALVE_0:")) { В RangeIP.txt указываешь ip запрещенных сетей. Добавлено (24.11.2009, 01:20:35) --------------------------------------------- Ошибочка вышла - не сетей ,а конкретных ip шников, как сделать что бы считал диапазон, т.е. приравнивала значения в ip адресе 0 к диапазону 0-255 , я к сожелению не знаю. Надо копаться. Добавлено (24.11.2009, 01:28:41) --------------------------------------------- сходил покурить и Оо, вспомнил где это можно подглядеть.... удалился смотреть. Добавлено (24.11.2009, 01:46:55) --------------------------------------------- Есть плагин BanIP SubNet И еще есть Show_ip - вот из него код: Code // IP to NUM ip_to_num(const ip[]) { new n1[4], n2[4], n3[4], n4[4] new tmpStr[16] copy(tmpStr, sizeof(tmpStr)-1, ip) replace_all(tmpStr, sizeof(tmpStr)-1, ".", " ") if (parse(tmpStr, n1, sizeof(n1)-1, n2, sizeof(n2)-1, n3, sizeof(n3)-1, n4, sizeof(n4)-1) != 4) return -1 // wrong ip address return (str_to_num(n1) << SHIFT_24) + (str_to_num(n2) << SHIFT_16) + (str_to_num(n3) << SHIFT_8) + str_to_num(n4) }
// this rounds ip to its subnet by given mask apply_mask(const numIP, const maskBit) { if (maskBit < 0 || maskBit > 32) return -1 // wrong mask
new shift = 32 - maskBit return (numIP >> shift) << shift } Забыл про маску: Code loadSubnets(szFilename[]) { g_SubnetCount = 0 new File=fopen(szFilename,"r");
if (File) { new Text[256] new subnet[24], subnetIP[16], subnetMask[8] while(g_SubnetCount < MAX_SUBNETS && !feof(File)) { fgets(File,Text,sizeof(Text)-1);
trim(Text) // comment or blank line if (Text[0]==';' || Text[0] == 0) { continue; }
strbreak(Text, subnet, sizeof(subnet)-1, g_SubnetDescription[g_SubnetCount], MAX_DESCRIPTION_LEN)
replace(subnet, sizeof(subnet)-1, "/", " ") if (parse(subnet, subnetIP, sizeof(subnetIP)-1, subnetMask, sizeof(subnetMask)-1) != 2) continue // wrong subnet g_SubnetIP[g_SubnetCount] = ip_to_num(subnetIP) g_SubnetMask[g_SubnetCount] = str_to_num(subnetMask) ++g_SubnetCount } }
return 1 } Дальше я бду очень долго разбираться ).... Да ip диапазоны там записанны по максе ( так вроде? ) 78.37.0.0/16 adsl
Сообщение отредактировал tavot - Вторник, 24.11.2009, 02:12:50 |
|
| |
Black-Elk | Дата: Вторник, 24.11.2009, 01:48:15 | Сообщение # 9 |
Сержант
Группа: Пользователи
Сообщений: 23
Статус: Не в сети
| если заменить - кикает и на RangeIP.txt не обращает внимания tavot, мне в RangeIP.txt нужен список разрешенных сетей.
|
|
| |
tavot | Дата: Вторник, 24.11.2009, 01:50:18 | Сообщение # 10 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| Black-Elk, странно, у меня если я вписываю свой же ip - кикает, если в любой другой - не кикает ) Изменить что бы было наоборот - не проблема, сейчас проблема ( для меня) как высчитывать диапазоны...
|
|
| |
ZETA | Дата: Вторник, 24.11.2009, 08:31:54 | Сообщение # 11 |
Генерал-майор
Группа: Скриптеры
Сообщений: 369
Статус: Не в сети
| Quote (Black-Elk) никаких признаков плагина motd не показывается? Quote (tavot) там в коде стрчока есть: if(!containi(authid,"STEAM_0:")) { Замени на: if(!containi(authid,"VALVE_0:")) { Не правильно, будет кикать всех клиентов с non-steam... Ты сам должен добавить IP в файл...
Говори что думаешь и думай что говоришь...
Сообщение отредактировал ZETA - Вторник, 24.11.2009, 08:34:54 |
|
| |
tavot | Дата: Вторник, 24.11.2009, 10:41:31 | Сообщение # 12 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| ZETA, я так понял что он этого и хочет. Т.е. с локалки - все клиенты, с интернета - только стим. Что то у меня не особо получается с ip ( не понимаю я эти "parser" доконца)... на работе сегодня зато будет чем заняться )
|
|
| |
ZETA | Дата: Вторник, 24.11.2009, 10:59:21 | Сообщение # 13 |
Генерал-майор
Группа: Скриптеры
Сообщений: 369
Статус: Не в сети
| Quote (tavot) Т.е. с локалки - все клиенты, с интернета - только стим. Правильно, но если сделать твою замену, то диапазон проверять не будет, будет кикать сразу всех клиентов с non-steam, как с глобала, так и с локалки...
Говори что думаешь и думай что говоришь...
|
|
| |
tavot | Дата: Вторник, 24.11.2009, 11:57:49 | Сообщение # 14 |
Генерал-майор
Группа: Пользователи
Сообщений: 256
Статус: Не в сети
| ZETA, Точно, пересмотрел внмательнее, каюсь Оасталось дело за малым, проверка по диапазонам. хм, что то меня совсем все в тупик завело..... что то тут не так.... Добавлено (24.11.2009, 11:56:29) --------------------------------------------- хм алгоритм: 1 Клиент входит 2 Првоеряем его клент STEMA или VALVE 3 a) Если стим то Steam y чего не делаем b) Если VALVE - то првоеряем его в файле 4 а) Если в файле с исклчюениями есть - оставляем на сервре b) То выводим мод окно и кикаем В твем же коде мы проверяем если STEAM. Поправь меня, где я ошибаюсь. Добавлено (24.11.2009, 11:57:49) --------------------------------------------- Может просто set_task - в другое место поставить.
Сообщение отредактировал tavot - Вторник, 24.11.2009, 11:52:06 |
|
| |
ZETA | Дата: Вторник, 24.11.2009, 12:02:48 | Сообщение # 15 |
Генерал-майор
Группа: Скриптеры
Сообщений: 369
Статус: Не в сети
| Quote (tavot) В твем же коде мы проверяем если STEAM. Поправь меня, где я ошибаюсь. Code if(!containi(authid,"STEAM_0:")) Не увидил ! - Если не STEAM то... Quote (tavot) Может просто set_task - в другое место поставить. Может А может и нет, у меня диапазон вычисляется не точно, скорей всего из-за этого не работает...
Говори что думаешь и думай что говоришь...
|
|
| |
| AMX Mod X Russian Community © 2006-2025 | |
|
| |