Jump to content

Recommended Posts

Posted

Lineage 2 Client Bruteforce

Current Version: 1.3

 

Program that includes Autoclicker and Account bruting!

How does it Work: Program alone press in client on login screen at username and password!

auto insert of the account information.The basic type of bruting!

The program works stand-alone from the client and generally

from 3rd party programs that may detect brute. For more succesfull bruting it's crucial to not let the GG get started!

   

 

   Pros:

   - Works With all the versions of clients from c1 up to Gracia part 2!

   - Work the login and password from manual word and number choices!

   - Creates human habits during the password and username typing!

   Cons:

   - Slow if many words and numbers

   - when the program works suggested not moving the mouse at all!

   

 

New Version 1.3 (updated 5 June 2009 year).

 

 

Use the Google translator for read me!

 

=============================================
Список изменений в версии 1.2 -> 1.3:

- Добавлено сохранение прогресса во время работы программы.
- Добавлено отображение скорости перебора и оставшееся время.
- Добавлен просмотр списка логинов и паролей, статистика по данным.
- Исправлена ошибка с определением кириллических символов в логинах.
- В комплект с программой добавлен файл, убивающий ГГ - "dsetup.dll".
Как работает: запускаете LineageII.exe, даёте апдейтеру закончить проверку.
Не закрывая апдейтер, скопируйте файл dsetup.dll в папку /system, подтвердите
перезапись существующего файла. В апдейтере теперь можно нажать "Старт".
- Исправлено несколько мелких ошибок в программе.
- Поправлена шкурка.

=============================================
Список изменений в версии 1.1 -> 1.2:

- Исправлено закрытие программы. Хоть это и был поток, но закрываться она решительно
не желала. Тяга к жизни у неё была, видите ли.
- Добавлено ручное указание координат кликов мышкой (если вдруг по каким-то
причинам мышка у вас не попадает по кнопкам или полям ввода). А то мало ли,
какие у вас рамки у окон выставлены, всякое может быть.
- Добавлена возможность указывать режим завершения работы программы: выключить
программу, выключить клиент и выключить компьютер. Всё настраивается.
- Добавлена роверка работы клиента. Если клиент не запущен, то и программа не
начнёт работу.
- Добавлен полезный режим перебора "логин - логин".
- Добавлен скин к программе. Красота-а-а...
- Добавлена проверка кириллических символов в логине и пароле. Если они есть,
то вариант пропускается.
- Добавлена "горячая клавиша" для закрытия программы (ESC). Программа сначала
закончит перебирать текущий вариант и только после этого закроется.

=============================================
Список изменений в версии 1.0 -> 1.1:

- Теперь программа работает в потоке (нет фризов, можно завершить в любой момент)
- Изменён сам принцип работы. Если раньше программа сканировала изображение в окне
клиента и искала признаки успешного ввода (тёмные области на экране, соответствующие
окошку лицензионного соглашения), то теперь независимо от успеха каждое изображение
в формате JPEG будет сохранено в специальную папку, чтобы потом можно было самому
проанализировать каждый из вариантов. В частности, это оказалось очень полезным в
том случае, когда атакуемый аккаунт был запущен в момент перебора - окно соглашения
не вызывалось и программа считала, что вариант неуспешен. Плюс иногда она не могла
определить правильность перебора, даже если появлялось окно соглашения. Эту ошибку я
так и не поборол, пришлось менять весь принцип работы. =)
- Добавлено указание задержек - время, дающееся на авторизацию, время между нажатием и
отпусканием мышки и время между имитацией нажатия клавиш на клавиатуре.
- Теперь программа сама устанавливает окно клиента в нужное место, устанавливает
необходимые для работы размеры окна, чтобы поля ввода оказались точно в том месте,
где им необходимо быть.
- На тот случай, если вы забыли изменить раскладку клавиатуры на английскую, программа
сама умеет это делать.
- Существенные изменения в коде, оптимизация. Работать стала гораздо быстрее.
- Поменял иконку. не мог не упомянуть об этом.
- Убрал сохранение результатов в файл. Мне это показалось ненужным и лишним.
- Убрал отображение прогресса отдельно по логинам и паролям.

 

 

 

 

 

 

This is the hidden content, please

Posted

Awesome share, I've been waiting for la2brute for newer versions like for ever!

 

+1 karma and I suggest sticky.

Posted

Really nice. Thanks for sharing, but l2j has protection against l2brute. Many wrong logins will cause on ban (for some minutes..). So you can't actually use it on l2j.

Posted

Really nice. Thanks for sharing, but l2j has protection against l2brute. Many wrong logins will cause on ban (for some minutes..). So you can't actually use it on l2j.

It works with l2j....try it and then report back with results ;)

 

I would appreciate a detalied guide!

You will get more detailed guide tomorrow probably when i have some time to translate it! ;)
  • 3 weeks later...
Posted

 

 

Please, change your hide quantum according to the first post. (You're actually giving people 100 posts advantage in seeing it and downloading it.)

 

Thanks for understanding.

Guest
This topic is now closed to further replies.



  • Posts

    • im using l2jmobius
    • what pack you use  send me on discord for it
    • package custom.events.RandomZoneEvent; import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.Random; import java.util.concurrent.ScheduledFuture; import org.w3c.dom.Document; import org.w3c.dom.Node; import org.l2jmobius.commons.threads.ThreadPool; import org.l2jmobius.commons.time.SchedulingPattern; import org.l2jmobius.commons.time.TimeUtil; import org.l2jmobius.commons.util.IXmlReader; import org.l2jmobius.gameserver.managers.ZoneManager; import org.l2jmobius.gameserver.model.StatSet; import org.l2jmobius.gameserver.model.actor.Creature; import org.l2jmobius.gameserver.model.actor.Npc; import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.quest.Event; import org.l2jmobius.gameserver.model.zone.ZoneId; import org.l2jmobius.gameserver.model.zone.ZoneType; import org.l2jmobius.gameserver.model.zone.type.RandomZone; import org.l2jmobius.gameserver.util.Broadcast; /** * Random Zone Event - Activates one random PvP zone temporarily. No modifica la clase de la zona: usa flags PvP en runtime. * @author Juan */ public class RandomZoneEvent extends Event { private static final String CONFIG_FILE = "data/scripts/custom/events/RandomZoneEvent/config.xml"; private static int EVENT_DURATION_MINUTES = 15; private static boolean _isActive = false; private ScheduledFuture<?> _eventTask = null; private final List<ZoneType> _availableZones = new ArrayList<>(); private ZoneType _activeZone = null; public RandomZoneEvent() { loadConfig(); loadZones(); registerZoneListeners(); } /** * Registra listeners a TODAS LAS ZONAS random */ private void registerZoneListeners() { for (ZoneType zone : _availableZones) { addEnterZoneId(zone.getId()); addExitZoneId(zone.getId()); LOGGER.info("[RandomZoneEvent] Registered listener for zone: " + zone.getName()); } } private void loadConfig() { new IXmlReader() { @Override public void load() { parseDatapackFile(CONFIG_FILE); } @Override public void parseDocument(Document doc, File file) { forEach(doc, "event", eventNode -> { final StatSet att = new StatSet(parseAttributes(eventNode)); final String name = att.getString("name"); for (Node node = eventNode.getFirstChild(); node != null; node = node.getNextSibling()) { if ("schedule".equals(node.getNodeName())) { final StatSet attributes = new StatSet(parseAttributes(node)); final String pattern = attributes.getString("pattern"); final SchedulingPattern schedulingPattern = new SchedulingPattern(pattern); final StatSet params = new StatSet(); params.set("Name", name); params.set("SchedulingPattern", pattern); final long delay = schedulingPattern.getDelayToNextFromNow(); getTimers().addTimer("Schedule_" + name, params, delay + 5000, null, null); LOGGER.info("[RandomZoneEvent] Event " + name + " scheduled at " + TimeUtil.getDateTimeString(System.currentTimeMillis() + delay)); } } }); } }.load(); } private void loadZones() { for (ZoneType zone : ZoneManager.getInstance().getAllZones(RandomZone.class)) { if ((zone.getName() != null) && zone.getName().toLowerCase().startsWith("random_zone")) { _availableZones.add(zone); LOGGER.info("[RandomZoneEvent] Loaded zone: " + zone.getName() + " (id=" + zone.getId() + ")"); } } LOGGER.info("[RandomZoneEvent] Total random zones loaded: " + _availableZones.size()); } @Override public void onTimerEvent(String event, StatSet params, Npc npc, Player player) { if (event.startsWith("Schedule_")) { eventStart(null); final SchedulingPattern schedulingPattern = new SchedulingPattern(params.getString("SchedulingPattern")); final long delay = schedulingPattern.getDelayToNextFromNow(); getTimers().addTimer(event, params, delay + 5000, null, null); LOGGER.info("[RandomZoneEvent] Rescheduled for " + TimeUtil.getDateTimeString(System.currentTimeMillis() + delay)); } } @Override public boolean eventStart(Player eventMaker) { if (_isActive) { if (eventMaker != null) { eventMaker.sendMessage("RandomZoneEvent already active."); } return false; } if (_availableZones.isEmpty()) { Broadcast.toAllOnlinePlayers("[RandomZoneEvent] No zones configured."); return false; } _isActive = true; Broadcast.toAllOnlinePlayers("⚔️ Random Zone Event has started!"); _eventTask = ThreadPool.schedule(this::activateRandomZone, 5_000); return true; } private void activateRandomZone() { _activeZone = _availableZones.get(new Random().nextInt(_availableZones.size())); _activeZone.setEnabled(true); Broadcast.toAllOnlinePlayers("🔥 Random Zone Event: " + _activeZone.getName() + " is now PvP for " + EVENT_DURATION_MINUTES + " minutes!"); _eventTask = ThreadPool.schedule(this::eventStop, EVENT_DURATION_MINUTES * 60 * 1000L); } @Override public boolean eventStop() { if (!_isActive) { return false; } _isActive = false; if (_eventTask != null) { _eventTask.cancel(true); _eventTask = null; } if (_activeZone != null) { _activeZone.setEnabled(false); Broadcast.toAllOnlinePlayers("🏁 Random Zone Event ended. " + _activeZone.getName() + " is back to normal."); _activeZone = null; } else { Broadcast.toAllOnlinePlayers("🏁 Random Zone Event ended."); } return true; } @Override public void onEnterZone(Creature creature, ZoneType zone) { if (!_isActive || (_activeZone == null)) { return; } if ((zone == _activeZone) && creature.isPlayable()) { creature.setInsideZone(ZoneId.PVP, true); if (creature.isPlayer()) { creature.sendMessage("Esta zona está en modo PvP temporalmente."); } } } @Override public void onExitZone(Creature creature, ZoneType zone) { if (!_isActive || (_activeZone == null)) { return; } if ((zone == _activeZone) && creature.isPlayable()) { creature.setInsideZone(ZoneId.PVP, false); if (creature.isPlayer()) { creature.sendMessage("Abandonaste la zona PvP temporal."); } } } @Override public boolean eventBypass(Player player, String bypass) { return true; } @Override public String onEvent(String event, Npc npc, Player player) { return super.onEvent(event, npc, player); } @Override public String onFirstTalk(Npc npc, Player player) { return null; } public static void main(String[] args) { new RandomZoneEvent(); } } i have this but its not working
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock