06:24
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: Alcoholik  
баг забивающий server_log.txt
SanSayДата: Пятница, 21.10.2011, 00:38 | Сообщение # 1
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
короче прабла следующая:
как и 99% сервов, у меня установлена система, чтобы можно было мутить игрока и он не мог писать в чат.
система работает, но недавно стал замечать, что server_log.txt иногда нереально разрастается, т.е. вместо нескольких метров за день, набирает 100 и более... заглянув туда увидел, что подключается перец, делает чтобы его мутили и потом запускает флудер и он наматывает server_log.txt до охеренных размеров. И происходит это потому, что моя глушилка не дает писать в общий чат, а в server_log.txt почему то сообщение фиксируется

у меня такая стоит проверка на заглушенность игрока:
Code
if(mutetime[playerid] > 3)
  {
   SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете говорить, вас заткнули (/timem)");
   return 0;
  }


ну и вопрос, как сделать, чтобы и в server_log.txt не логировалось сообщение?



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
RоAChДата: Пятница, 21.10.2011, 01:10 | Сообщение # 2
Местный
Группа: Следователи
Сообщений: 737
Награды: 14
Город: Санкт-Петербург
Репутация: 3682
Замечания: 20%
Статус:
Делай проверку на флуд и кикай. Пока другой способ сказать не могу. Если нужен код - напишу как ОС поставлю


Не бывает невыносимых людей,бывают узкие двери.
ЛС не принимаю! Все ЛС сюда http://www.samp-rus.com/index/8-10438
_[A]Le[X]and[R]_Дата: Пятница, 21.10.2011, 01:22 | Сообщение # 3
Освоившийся
Группа: I'm V.I.P.
Сообщений: 147
Награды: 3
Город: Владивосток
Репутация: 88
Замечания: 0%
Статус:
в начало new Flood[MAX_PLAYERS];

и вот это
Quote
if(mutetime[playerid] > 3)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете говорить, вас заткнули (/timem)");
return 0;
}

замени на
Quote
if(mutetime[playerid] > 3)
{
SendClientMessage(playerid, TEAM_CYAN_COLOR, " Вы не можете говорить, вас заткнули (/timem)");
return 0;
Flood[playerid] += 1;
}
if(Flood[playerid] >= 10)
{
Kick(playerid);
}


Сам придумал только что. мб и бред но работать должно.



Гл.Администратор проекта Orio[N] -=RPG=-
www.Orio-N.com
Orio[N]-[1] IP: 176.32.37.74:7777
Orio[N]-[2] IP: 176.32.37.75:7777


Сообщение отредактировал Dez[Z]zmond - Пятница, 21.10.2011, 01:25
SanSayДата: Пятница, 21.10.2011, 01:57 | Сообщение # 4
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
хех, действительно бредовое решение праблы, но работает )))
только проверку
if(Flood[playerid] >= 10)

нужно вынести выше проверки на муте, а то по коду до сюда и не доходит же.



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
_[A]Le[X]and[R]_Дата: Пятница, 21.10.2011, 02:59 | Сообщение # 5
Освоившийся
Группа: I'm V.I.P.
Сообщений: 147
Награды: 3
Город: Владивосток
Репутация: 88
Замечания: 0%
Статус:
ах да.. Надо проверку выше поставить)


Гл.Администратор проекта Orio[N] -=RPG=-
www.Orio-N.com
Orio[N]-[1] IP: 176.32.37.74:7777
Orio[N]-[2] IP: 176.32.37.75:7777
RоAChДата: Пятница, 21.10.2011, 09:42 | Сообщение # 6
Местный
Группа: Следователи
Сообщений: 737
Награды: 14
Город: Санкт-Петербург
Репутация: 3682
Замечания: 20%
Статус:
Сам понял что написал?)


Не бывает невыносимых людей,бывают узкие двери.
ЛС не принимаю! Все ЛС сюда http://www.samp-rus.com/index/8-10438
DANGER1979Дата: Пятница, 21.10.2011, 10:19 | Сообщение # 7
Постоялец
Группа: I'm V.I.P.
Сообщений: 365
Награды: 5
Город: Гродно
Репутация: 557
Замечания: 0%
Статус:
Quote (Dez|Z|zmond)
ах да.. Надо проверку выше поставить)

подтверждаю,

проверка должна быть в начале паблика и там же должна быть проверка на НПС, и там же должна быть проверка на флуд, т.е. ограничение по времени.




[UCP] Статистика сервера (MySQL)
GTA:SA VirtualWorld Server - LifeSimulator
[Продажа][GM] VirtualWorld v3.0.219
[FS] VW_SystemOfNeed - Система потребностей
[FS] VW_SystemOfBuying - Система покупки авто
[FS] VW_Speedometer - с системой расхода топлива и учёта пробега
[FS] VW_CargoShip - Грузовое судно
InterpolДата: Пятница, 21.10.2011, 13:21 | Сообщение # 8
Мастер джэдай
Группа: I'm V.I.P.
Сообщений: 5358
Награды: 77
Город: НеБаку
Репутация: 3795
Замечания: 20%
Статус:
DANGER1979, RоACh, может имеется выше ввиду, что выше в начале паблика?)


RоAChДата: Пятница, 21.10.2011, 14:24 | Сообщение # 9
Местный
Группа: Следователи
Сообщений: 737
Награды: 14
Город: Санкт-Петербург
Репутация: 3682
Замечания: 20%
Статус:
Причем тут выше или ниже. Он написал бред.


Не бывает невыносимых людей,бывают узкие двери.
ЛС не принимаю! Все ЛС сюда http://www.samp-rus.com/index/8-10438
Matt_TuckДата: Пятница, 21.10.2011, 15:03 | Сообщение # 10
Местный
Группа: I'm V.I.P.
Сообщений: 710
Награды: 11
Город: Брянск
Репутация: 461
Замечания: 20%
Статус:
а где отнимается число от Flood[playerid]?
тоесть игрок зашёл, дали ему молчанку, он пока проверял есть ли она у него вводя что то в чат раз 10 и его кикнуло, не обязательно флудом, дали например на 40 минут, а он каждые 5 минут писал в чат чтоб проверить если у него молчанка, после 10 раза он улетает в кик



Не в возрасте дело,а в культуре общения и уровне интеллектуального развития

Если вам лижут жопу, не обольщайтесь, возможно это для смазки.

Twitter - Follow Me ;)
Подписываемся на мой Паблик
RоAChДата: Пятница, 21.10.2011, 15:19 | Сообщение # 11
Местный
Группа: Следователи
Сообщений: 737
Награды: 14
Город: Санкт-Петербург
Репутация: 3682
Замечания: 20%
Статус:
Нигде) написал 10 сообщения и нах с серва


Не бывает невыносимых людей,бывают узкие двери.
ЛС не принимаю! Все ЛС сюда http://www.samp-rus.com/index/8-10438
SanSayДата: Суббота, 22.10.2011, 20:55 | Сообщение # 12
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
чет вы тут расфлудились:
Quote (RоACh)
Сам понял что написал?)

что именно тебя не строило? переместить то что я сказал выше и полностью рабочий код!

Quote (DANGER1979)
проверка должна быть в начале паблика и там же должна быть проверка на НПС, и там же должна быть проверка на флуд, т.е. ограничение по времени.

зачем на НПС проверять?

Quote (Matt_Tuck)
а где отнимается число от Flood[playerid]? тоесть игрок зашёл, дали ему молчанку, он пока проверял есть ли она у него вводя что то в чат раз 10 и его кикнуло, не обязательно флудом, дали например на 40 минут, а он каждые 5 минут писал в чат чтоб проверить если у него молчанка, после 10 раза он улетает в кик

это основа кода... а так там еще несколько вещей нужно добавлять... ну как минимум сброс Flood[playerid] при коннекте или дисконнекте, чтобы чужой счетчик не перешел другому игроку на этом же ид. В том числе можно поставить и периодическое скидывание этого параметра для избежания описанной тобой ситуации, а можно и проще поступить... этому параметру установить значение не 10, а 100 и даже больше, т.к. за 1 секунду этот флудер нафлуживает... внимание: 6555 строк!!!
Удивляюсь, как при этом еще серв ухитряется работать )))

Добавлено (22.10.2011, 20:55)
---------------------------------------------
конкретно код, который сделал я себе
new Flood[MAX_PLAYERS];

в коннект
Flood[playerid] = 0;

в минутный таймер засунул сброс счетчика
for(new i; i < MAXPLAYERS; i++)
{
if(IsPlayerConnected(i))
{
Flood[i] = 0;
}
}

в самый верх
public OnPlayerText(playerid, text[])
{
if(Flood[playerid] > 10)
{
Kick(playerid);
}
и тут же ниже в проверке на муте добавил
Flood[playerid]++;

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


simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
AlcoholikДата: Суббота, 22.10.2011, 21:06 | Сообщение # 13
Мастер джэдай
Группа: Администратор
Сообщений: 8299
Награды: 111
Город: Санкт-Петербург
Репутация: 6085
Статус:
Quote (SanSay)
переместить то что я сказал выше и полностью рабочий код!

который после 10 отправленных сообщений кикает? И кикать он будет всех, кто играет. Пиши полный код, а не кусочками.



if(isset($beer)&&isset($girl)) { drink($beer);fuck($girl); }else die();
Мониторинг sa:mp серверов


Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги.
Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
SanSayДата: Суббота, 22.10.2011, 21:43 | Сообщение # 14
Долгожитель
Группа: Продвинутые
Сообщений: 1662
Награды: 25
Город: Наб.Челны
Репутация: 280
Замечания: 0%
Статус:
RoACh, я написал по сути полный код

исходя из твоего последнего поста, думаю ты думашь что Flood[playerid]++; прибавляет после отправки сообщения - это не так, прибавляет только тем, у кого муте, т.е.
if(mutetime[playerid] > 3)
{
MuteChat(playerid);
Flood[playerid]++;
return 0;
}

где MuteChat это:
public MuteChat(playerid) //сообщение если замутен игрок
{
new string[256];
format(string, sizeof(string), " Вы не можете говорить, вас заткнули {FFFF00}(осталось %d мин %d сек)", mutetime[playerid]/60, mutetime[playerid]-mutetime[playerid]/60*60);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
SendClientMessage(playerid, COLOR_LIGHTRED," Если ты не понимаешь как и за что тебя заткнули обращайся на форум, адрес можно");
SendClientMessage(playerid, COLOR_LIGHTRED," увидеть в чате или узнать у администрации /admins или просто у других игроков (/pm)");
}

еще вопросы?

П.С. уже второй день стоит на серве и пока не жаловались, что кикает налево и направо
П.П.С. как я уже писал у меня лог пока стоит, чтобы видеть если на ком то сработает эта штука и пока только одного кикнуло... он рекламил левый серв, мой серв его заткнул, но он продалжал спамить и его кикнуло. Только он спамил обычным способом, тупо вводил повторно сообщение, хз, че он не видел, что сообщения не выводятся... короче это не тот клиент, ради которого эта заплатка разрабатывалась.



simhost.org:8888 Mode:PEN1(LS)+GTO(банды+кач) v4.23_SAMP_0.3с
PEN1(LS)+GTO(банды+кач)v3.92_SAMP_0.3с(ifolder)*** AntiBot*** [FS] Car Export vs SanSay*** [FS] anti_s0beit_FakeKill_Ver2
AlcoholikДата: Суббота, 22.10.2011, 21:50 | Сообщение # 15
Мастер джэдай
Группа: Администратор
Сообщений: 8299
Награды: 111
Город: Санкт-Петербург
Репутация: 6085
Статус:
ок. только тем у кого мут. Однако если я не спамер и под мутом напишу 10 раз в чат, получу кик. Не бред ли?


if(isset($beer)&&isset($girl)) { drink($beer);fuck($girl); }else die();
Мониторинг sa:mp серверов


Приватно никого не консультирую, моды также не пишу, ни так, ни за деньги.
Моя ICQ 675715, пишу только с неё. Все остальные Роачи фейки, ничего я не продаю и продавать не буду, вас разводят.
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua