Текущая версия SA-MP: 0.3.7


IP: 77.220.180.96:7777
  Новые сообщения · Поиск
  • Страница 1 из 1
  • 1
Модератор форума: KaTacTpOqpa  
Бан при неправильном логине в ркон
BJIADOKC Сообщение # 1  | 15:22:09
Скриптеры
Сообщений: 601
Репутация: 161
По сути легкая функция, работает только на версии сервера выше 0.3b
в самый конец пишем:
Code

public OnRconLoginAttempt(ip[], password[], success)
{
new playerid = -1;
new IP2[15];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i)) continue;
GetPlayerIp(i,IP2,15);
if(!strcmp(ip,IP2,true)) {playerid = i; break;}
else continue;
}

if(playerid == -1 && !success)
{
new form[25];
format(form,25,"banip %s",ip);
return SendRconCommand(form);
}

if(!success) return BanEx(playerid,"Invalid RCON");

return 1;
}   


тут больше не сижу... открыл свой проект
Polcar Сообщение # 2  | 08:27:12
Руководитель проекта SM
Администраторы
Сообщений: 788
Репутация: 323
хех, неплохо!



Demetrius Сообщение # 3  | 14:21:09
VIP-пользователи
Сообщений: 1192
Репутация: 158
он же сам банит если 3 раза, помоему, ркон не правильно введешь...

Sweet >>> Armin >>> Demetrius

SA:MP >> MTA:SA >> IRL
Lion_Hils Сообщение # 4  | 10:54:51
Пользователи
Сообщений: 162
Репутация: 11
А есть еще другая система.Попозже выложу

================================
Разрабатываю моды писать в лс
Делаю проект Most People RolePlay
В аську неотвечаю по SAMP вопросам
================================
BJIADOKC Сообщение # 5  | 13:12:37
Скриптеры
Сообщений: 601
Репутация: 161
Quote (Armin)
он же сам банит если 3 раза, помоему, ркон не правильно введешь...

нет, если ты не заметил, то там хоть 1500 раз неправельно введи, всеравно будет только предупреждать что забанит))


тут больше не сижу... открыл свой проект
Demetrius Сообщение # 6  | 21:37:38
VIP-пользователи
Сообщений: 1192
Репутация: 158
Quote (BJIADOKC)
нет, если ты не заметил, то там хоть 1500 раз неправельно введи, всеравно будет только предупреждать что забанит))

ну эт они зря так сделали


Sweet >>> Armin >>> Demetrius

SA:MP >> MTA:SA >> IRL
BJIADOKC Сообщение # 7  | 13:42:05
Скриптеры
Сообщений: 601
Репутация: 161
+1

тут больше не сижу... открыл свой проект
UDAV Сообщение # 8  | 01:16:32
Пользователи
Сообщений: 4
Репутация: 2
а я сде(лОл) что бы банело всех xDD
BJIADOKC Сообщение # 9  | 18:04:38
Скриптеры
Сообщений: 601
Репутация: 161
Quote (BJIADOKC)
По сути легкая функция, работает только на версии сервера 0.3б
в самый конец пишем:
public OnRconLoginAttempt(ip[], password[], attempt)
{
new attempts[ip], string[200];
if(attempt == false)
{
attempts[ip]++;
format(string,200,"Wrong RCON login: ip - %s, password - %s, %d attempt",ip,password,attempts[ip]);
print(string);
}
if(attempt == false && attempts[ip] >= 3)
{
format(string,200,"Bad RCON (%d attempts) - IP %s Banned",attempts[ip],ip);
print(string);
new string2[200];
format(string2,200,"banip %s",ip);
SendRconCommand(string2);
}
return 1;
}

функция в 0.3с немного изменилась...
заместо attempt стоит succes (удача/неудача)
странно, но это не boolean (true/false) а Int (0,1)
тоесть будет вот так:
Code

public OnRconLoginAttempt(ip[], password[], success)
{
new attempts[ip], string[200];
if(success == 0)
{
attempts[ip]++;
format(string,200,"Wrong RCON login: ip - %s, password - %s, %d attempt",ip,password,attempts[ip]);
print(string);
}
if(success == 0 && attempts[ip] >= 3)
{
format(string,200,"Bad RCON (%d attempts) - IP %s Banned",attempts[ip],ip);
print(string);
new string2[200];
format(string2,200,"banip %s",ip);
SendRconCommand(string2);
}
return 1;
}


тут больше не сижу... открыл свой проект


Редактировано BJIADOKC - Среда, 02 Мар 2011, 18:05:07
Jin Сообщение # 10  | 12:35:40
Забаненые
Сообщений: 84
Репутация: -23
Code
C:\Documents and Settings\User\Рабочий стол\Новый pwn мода\Копия мода\Новая папка\lvdm.pwn(8773) : error 008: must be a constant expression; assumed zero
C:\Documents and Settings\User\Рабочий стол\Новый pwn мода\Копия мода\Новая папка\lvdm.pwn(8773) : error 029: invalid expression, assumed zero
C:\Documents and Settings\User\Рабочий стол\Новый pwn мода\Копия мода\Новая папка\lvdm.pwn(8773) : error 017: undefined symbol "string"
C:\Documents and Settings\User\Рабочий стол\Новый pwn мода\Копия мода\Новая папка\lvdm.pwn(8773) : fatal error 107: too many error messages on one line

Compilation aborted.Pawn compiler 3.2.3664     Copyright (c) 1997-2006, ITB CompuPhase

4 Errors.


Cтрочка: new attempts[ip], string[200];
BJIADOKC Сообщение # 11  | 17:03:44
Скриптеры
Сообщений: 601
Репутация: 161
Code

public OnRconLoginAttempt(ip[], password[], success)
{
new playerid = -1;
new IP2[15];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(!IsPlayerConnected(i)) continue;
GetPlayerIp(i,IP2,15);
if(!strcmp(ip,IP2,true)) {playerid = i; break;}
else continue;
}

if(playerid == -1 && !success)
{
new form[25];
format(form,25,"banip %s",ip);
return SendRconCommand(form);
}

if(!success) return BanEx(playerid,"Invalid RCON");

return 1;
}  

этот вариант имеет защиту от ркон флуда + не нагружает процессор лишним хламом


тут больше не сижу... открыл свой проект
Demetrius Сообщение # 12  | 21:21:49
VIP-пользователи
Сообщений: 1192
Репутация: 158
Quote (BJIADOKC)
этот вариант имеет защиту от ркон флуда + не нагружает процессор лишним хламом



Sweet >>> Armin >>> Demetrius

SA:MP >> MTA:SA >> IRL
Jin Сообщение # 13  | 12:52:48
Забаненые
Сообщений: 84
Репутация: -23
ооооо спс с мя 1 награда! smile
P.S я себе в мод пихнул!
  • Страница 1 из 1
  • 1
Поиск: