Перейти к содержанию
Авторизация  
BBMAXI

[manual]убиваем Спамеров На Сервере

Рекомендуемые сообщения

Напишу маленький манул, борьбы со спамерами на сервере.

 

В некоторых сборках можно не увидеть данного конфига.

 

Это поможет защитится от всякой рекламы или продажи шмоток адены и т.п на сервере

 

Данная проблема очень сильно затрагивала Официальный сервера Lineage 2

 

Вариант блокировки спама 1-ый:

 

идем в gameserver\clientpackets\Say2C.java

 

после case TELL:

 

добавляем строки

 

if (activeChar.getLevel() < 40)
{
activeChar.sendMessage(«Tell chat is allowed only for characters level higher 40.»);
return;
}

 

После

 

case SHOUT:

 

добавляем

 

if (activeChar.getLevel() < 25)
{
activeChar.sendMessage(«Shout chat is allowed only for characters level higher 25.»);
return;
}

 

В добавок ставим задержку, если не было:

 

Long lastShoutTime = (Long) activeChar.getProperty(PropertyCollection.ShoutChatLaunched);
if(lastShoutTime != null && lastShoutTime + (activeChar.getLevel() <= 26 ? 60000L : activeChar.getLevel() <= 30 ? 30000L : 1000L) > curTime)
{
activeChar.sendMessage(«Shout chat is allowed once per » + (activeChar.getLevel() <= 20 ? «60 seconds.» : activeChar.getLevel() <= 30 ? «30 seconds.» : «1 second.»));
return;
}
if(lastShoutTime != null && lastShoutTime + 5000L > curTime)
{
activeChar.sendMessage(«Shout chat is allowed once per 5 seconds.»);
return;
}

 

После case TRADE:

 

Добавляем

 

if (activeChar.getLevel() < 25)
{
activeChar.sendMessage(«Trade chat is allowed only for characters level higher 25.»);
return;
}

 

Ставим задержку

 

Long lastTradeTime = (Long) activeChar.getProperty(PropertyCollection.TradeChatLaunched);
if(lastTradeTime != null && lastTradeTime + (activeChar.getLevel() <= 26 ? 60000L : activeChar.getLevel() <= 30 ? 30000L : 1000L) > curTime)
{
activeChar.sendMessage(«Trade chat is allowed once per » + (activeChar.getLevel() <= 26 ? «60 seconds.» : activeChar.getLevel() <= 30 ? «30 seconds.» : «1 second.»));
return;
}
if(lastTradeTime != null && lastTradeTime + 5000L > curTime)
{
activeChar.sendMessage(«Trade chat is allowed once per 5 seconds.»);
return;
}

 

Таким образом адена-трейдерам, малолетним дурачкам придется ставить чаров на автокликер/ручной кач и ждать 25, 40 лвла, чтоб написать какую-нибудь ссаную фразу – поверьте, это достанет быстрее, нервы у них оказывается не очень, да и силы воли нет.

 

Далее..чтоб сесть на офф.трейд миним.лвл ставим – 40.

 

Также юзаем бан подсети + делаем фикс на багу, когда можно законектица с 1 ип, а играть с другого( у фени есть бага, что ип на стадии выбора чара не проверяется с тем, кот-ый коннектился), так вот если они различаются, то делаем return, таким образом адена-трейдерам заебывает менять соксы/прокси+сидеть с них нет удовольствия, ибо до «зарубежья» они часто лагают и предназначены не для игры.

 

Таким образом можно отфильтровать очень много ненужного го*на в игре, Ваши игроки будут довольны)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...