l2redkiller Posted June 5, 2011 Posted June 5, 2011 dude search in data/scripts/handlers/voicedcommandhandler/Antibot.java search if the file is there if no add manual :D
disorder25 Posted June 6, 2011 Posted June 6, 2011 still didn't answer my post about dreadnought. http://maxcheaters.com/forum/index.php?topic=207620.msg1779866#msg1779866 Dreadnought classes are complaining because the captcha pop up too much, I have it set to every 50 mobs.
pipiou21 Posted June 6, 2011 Author Posted June 6, 2011 still didn't answer my post about dreadnought. http://maxcheaters.com/forum/index.php?topic=207620.msg1779866#msg1779866 Dreadnought classes are complaining because the captcha pop up too much, I have it set to every 50 mobs. SIMPLE, add "==" instead of ">=" to make it popup 1 time on exacly 50 kills.
disorder25 Posted June 10, 2011 Posted June 10, 2011 Pipiou21 I have an error on gameserver pop up all the times and I think is being caused by the Antibot system. The error is on L2attackable.java and it is about summon, I guess when player use summon to kill mobs is causing some type of error. I have to wait to post the error in here becaujse I close the gameserver by mistake. Failed executing HitTask. java.lang.ClassCastException: com.l2jserver.gameserver.model.actor.instance.L2Su mmonInstance cannot be cast to com.l2jserver.gameserver.model.actor.instance.L2P cInstance at com.l2jserver.gameserver.model.actor.L2Attackable.doDie(L2Attackable. java:643) at com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance.doDie (L2MonsterInstance.java:146) at com.l2jserver.gameserver.model.actor.status.CharStatus.reduceHp(CharS tatus.java:185) at com.l2jserver.gameserver.model.actor.status.NpcStatus.reduceHp(NpcSta tus.java:51) at com.l2jserver.gameserver.model.actor.status.AttackableStatus.reduceHp (AttackableStatus.java:49) at com.l2jserver.gameserver.model.actor.L2Character.reduceCurrentHp(L2Ch aracter.java:6851) at com.l2jserver.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2A ttackable.java:519) at com.l2jserver.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2A ttackable.java:461) at com.l2jserver.gameserver.model.actor.L2Character.onHitTimer(L2Charact er.java:5175) at com.l2jserver.gameserver.model.actor.L2Character$HitTask.run(L2Charac ter.java:2604) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(Thread PoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. access$301(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source ) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Here is the whole error. It happen when a class like Spectral Master or any other that uses a summon to kill mobs, If the summon kill the mob it will not get the captcha window and the error above will pop up on the gameserver window. This is the part of the code giving the error public boolean doDie(L2Character killer) { // Kill the L2NpcInstance (the corpse disappeared after 7 seconds) if (!super.doDie(killer)) return false; ((L2PcInstance) killer).setKills(((L2PcInstance) killer).getKills() + 1); if(((L2PcInstance) killer).getKills() == 50 || ((L2PcInstance) killer).getKills() == 0) { //ANTIBOT //Random image file name int imgId = IdFactory.getInstance().getNextId(); //Convertion from .png to .dds, and crest packed send try { File captcha = new File("data/captcha/captcha.png"); ImageIO.write(generateCaptcha(), "png", captcha); PledgeCrest packet = new PledgeCrest(imgId, DDSConverter.convertToDDS(captcha).array()); //Convertion to DDS where is antybot killer.sendPacket(packet); } catch (Exception e) { _log.warning(e.getMessage()); } //Paralyze, abnormal effect, invul, html with captcha output and start of the 1 min counter killer.startAbnormalEffect(AbnormalEffect.REAL_TARGET); killer.setIsParalyzed(true); killer.setIsInvul(true); adminReply.setHtml("<html><title>Captcha Antibot System</title><body><center>Enter the 5-digits code below and click Confirm.<br1>You will be invulnerable until you enter<br1>the code so no one will kill you!<br><img src=\"Crest.crest_" + Config.SERVER_ID + "_" + imgId + "\" width=256 height=64><br><font color=\"888888\">(There are only english uppercase letters.)</font><br><edit var=\"antibot\" width=110><br><button value=\"Confirm\" action=\"bypass -h voice .antibot $antibot\" width=80 height=26 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_ct1.button_df\"><br>You have 60 seconds to answer or you<br1>will get jailed for 6 Hours.<br1>You will also get jailed for 6 Hours.<br1>if you type it wrong.</center></body></html>"); killer.sendPacket(adminReply); ((L2PcInstance) killer).setCode(finalString); ThreadPoolManager.getInstance().scheduleGeneral(new CaptchaTimer((L2PcInstance)killer), 60000);//60sec ((L2PcInstance) killer).setCodeRight(false); finalString.replace(0, 5, ""); //ANTIBOT } // Notify the Quest Engine of the L2Attackable death if necessary try { L2PcInstance player = killer.getActingPlayer(); if (player != null) { if (getTemplate().getEventQuests(Quest.QuestEventType.ON_KILL) != null) for (Quest quest: getTemplate().getEventQuests(Quest.QuestEventType.ON_KILL)) ThreadPoolManager.getInstance().scheduleEffect(new OnKillNotifyTask(this, quest, player, killer instanceof L2Summon), _onKillDelay); } } catch (Exception e) { _log.log(Level.SEVERE, "", e); } return true; } and in my case line 643 is this one ((L2PcInstance) killer).setKills(((L2PcInstance) killer).getKills() + 1); Edited on 06/13/11 I also find another bug on fortress siege that I think is caused by the changes in L2Attackacle.java, here is the error: Error unspawning siege guards for fort Hive:com.l2jserver.gameserver.model.actor .instance.L2DefenderInstance cannot be cast to com.l2jserver.gameserver.model.ac tor.instance.L2PcInstance java.lang.ClassCastException: com.l2jserver.gameserver.model.actor.instance.L2De fenderInstance cannot be cast to com.l2jserver.gameserver.model.actor.instance.L 2PcInstance at com.l2jserver.gameserver.model.actor.L2Attackable.doDie(L2Attackable. java:643) at com.l2jserver.gameserver.instancemanager.FortSiegeGuardManager.unspaw nSiegeGuard(FortSiegeGuardManager.java:88) at com.l2jserver.gameserver.model.entity.FortSiege.endSiege(FortSiege.ja va:252) at com.l2jserver.gameserver.model.entity.Fort.setOwner(Fort.java:464) at com.l2jserver.gameserver.model.entity.Fort.engrave(Fort.java:316) at com.l2jserver.gameserver.model.entity.Fort$endFortressSiege.run(Fort. java:1099) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(Thread PoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. access$301(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source ) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Siege of Hive fort finished. It is messing the unspawning of siege guards after the siege and they spawn new ones on top of the old ones.
pipiou21 Posted June 14, 2011 Author Posted June 14, 2011 Pipiou21 I have an error on gameserver pop up all the times and I think is being caused by the Antibot system. The error is on L2attackable.java and it is about summon, I guess when player use summon to kill mobs is causing some type of error. I have to wait to post the error in here becaujse I close the gameserver by mistake. Failed executing HitTask. java.lang.ClassCastException: com.l2jserver.gameserver.model.actor.instance.L2Su mmonInstance cannot be cast to com.l2jserver.gameserver.model.actor.instance.L2P cInstance at com.l2jserver.gameserver.model.actor.L2Attackable.doDie(L2Attackable. java:643) at com.l2jserver.gameserver.model.actor.instance.L2MonsterInstance.doDie (L2MonsterInstance.java:146) at com.l2jserver.gameserver.model.actor.status.CharStatus.reduceHp(CharS tatus.java:185) at com.l2jserver.gameserver.model.actor.status.NpcStatus.reduceHp(NpcSta tus.java:51) at com.l2jserver.gameserver.model.actor.status.AttackableStatus.reduceHp (AttackableStatus.java:49) at com.l2jserver.gameserver.model.actor.L2Character.reduceCurrentHp(L2Ch aracter.java:6851) at com.l2jserver.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2A ttackable.java:519) at com.l2jserver.gameserver.model.actor.L2Attackable.reduceCurrentHp(L2A ttackable.java:461) at com.l2jserver.gameserver.model.actor.L2Character.onHitTimer(L2Charact er.java:5175) at com.l2jserver.gameserver.model.actor.L2Character$HitTask.run(L2Charac ter.java:2604) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(Thread PoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. access$301(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source ) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Here is the whole error. It happen when a class like Spectral Master or any other that uses a summon to kill mobs, If the summon kill the mob it will not get the captcha window and the error above will pop up on the gameserver window. This is the part of the code giving the error public boolean doDie(L2Character killer) { // Kill the L2NpcInstance (the corpse disappeared after 7 seconds) if (!super.doDie(killer)) return false; ((L2PcInstance) killer).setKills(((L2PcInstance) killer).getKills() + 1); if(((L2PcInstance) killer).getKills() == 50 || ((L2PcInstance) killer).getKills() == 0) { //ANTIBOT //Random image file name int imgId = IdFactory.getInstance().getNextId(); //Convertion from .png to .dds, and crest packed send try { File captcha = new File("data/captcha/captcha.png"); ImageIO.write(generateCaptcha(), "png", captcha); PledgeCrest packet = new PledgeCrest(imgId, DDSConverter.convertToDDS(captcha).array()); //Convertion to DDS where is antybot killer.sendPacket(packet); } catch (Exception e) { _log.warning(e.getMessage()); } //Paralyze, abnormal effect, invul, html with captcha output and start of the 1 min counter killer.startAbnormalEffect(AbnormalEffect.REAL_TARGET); killer.setIsParalyzed(true); killer.setIsInvul(true); adminReply.setHtml("<html><title>Captcha Antibot System</title><body><center>Enter the 5-digits code below and click Confirm.<br1>You will be invulnerable until you enter<br1>the code so no one will kill you!<br><img src=\"Crest.crest_" + Config.SERVER_ID + "_" + imgId + "\" width=256 height=64><br><font color=\"888888\">(There are only english uppercase letters.)</font><br><edit var=\"antibot\" width=110><br><button value=\"Confirm\" action=\"bypass -h voice .antibot $antibot\" width=80 height=26 back=\"L2UI_CT1.Button_DF_Down\" fore=\"L2UI_ct1.button_df\"><br>You have 60 seconds to answer or you<br1>will get jailed for 6 Hours.<br1>You will also get jailed for 6 Hours.<br1>if you type it wrong.</center></body></html>"); killer.sendPacket(adminReply); ((L2PcInstance) killer).setCode(finalString); ThreadPoolManager.getInstance().scheduleGeneral(new CaptchaTimer((L2PcInstance)killer), 60000);//60sec ((L2PcInstance) killer).setCodeRight(false); finalString.replace(0, 5, ""); //ANTIBOT } // Notify the Quest Engine of the L2Attackable death if necessary try { L2PcInstance player = killer.getActingPlayer(); if (player != null) { if (getTemplate().getEventQuests(Quest.QuestEventType.ON_KILL) != null) for (Quest quest: getTemplate().getEventQuests(Quest.QuestEventType.ON_KILL)) ThreadPoolManager.getInstance().scheduleEffect(new OnKillNotifyTask(this, quest, player, killer instanceof L2Summon), _onKillDelay); } } catch (Exception e) { _log.log(Level.SEVERE, "", e); } return true; } and in my case line 643 is this one ((L2PcInstance) killer).setKills(((L2PcInstance) killer).getKills() + 1); Edited on 06/13/11 I also find another bug on fortress siege that I think is caused by the changes in L2Attackacle.java, here is the error: Error unspawning siege guards for fort Hive:com.l2jserver.gameserver.model.actor .instance.L2DefenderInstance cannot be cast to com.l2jserver.gameserver.model.ac tor.instance.L2PcInstance java.lang.ClassCastException: com.l2jserver.gameserver.model.actor.instance.L2De fenderInstance cannot be cast to com.l2jserver.gameserver.model.actor.instance.L 2PcInstance at com.l2jserver.gameserver.model.actor.L2Attackable.doDie(L2Attackable. java:643) at com.l2jserver.gameserver.instancemanager.FortSiegeGuardManager.unspaw nSiegeGuard(FortSiegeGuardManager.java:88) at com.l2jserver.gameserver.model.entity.FortSiege.endSiege(FortSiege.ja va:252) at com.l2jserver.gameserver.model.entity.Fort.setOwner(Fort.java:464) at com.l2jserver.gameserver.model.entity.Fort.engrave(Fort.java:316) at com.l2jserver.gameserver.model.entity.Fort$endFortressSiege.run(Fort. java:1099) at com.l2jserver.gameserver.ThreadPoolManager$RunnableWrapper.run(Thread PoolManager.java:86) at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source) at java.util.concurrent.FutureTask.run(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. access$301(Unknown Source) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask. run(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source ) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Siege of Hive fort finished. It is messing the unspawning of siege guards after the siege and they spawn new ones on top of the old ones. I like the way to have explained it... by the way.... This is going to help if im right Before the "event" of antibot, i mean bellow "//ANTIBOT" lane add --> if (killer instanceof L2PcInstance) { and close it with --> } under the second "//ANTIBOT" lane... PS: This is going to enable antibot only on Players, and not on guards and shits, if you want to enable it also on summons, you will have to add "else if (killer instanceof L2SummonInstance)" and make it sending all this //ANTIBOT to the owner of the pet using a method like it uses the beast spiritshot when it sends the message that the spiritshot is enabled to the owner of the pet and not to the pet X)! Good luck, if you dont find the way, i'll do it, by the way, im going to do it someday coz its smthing like bug that they are going to make the bot farming with the pet as last hit instead of hitting with the character :)
disorder25 Posted June 15, 2011 Posted June 15, 2011 thank you so much. It will be nice if you do the code to enable the antibot to the summons also. I will try the fix you post and will test it. Will let you know if it worked. Thanks again. EDIT: Didn't work still have the same problem.
l2redkiller Posted June 15, 2011 Posted June 15, 2011 please update the first post if its working perfect now :D
pipiou21 Posted June 15, 2011 Author Posted June 15, 2011 thank you so much. It will be nice if you do the code to enable the antibot to the summons also. I will try the fix you post and will test it. Will let you know if it worked. Thanks again. EDIT: Didn't work still have the same problem. Let me try check to find a possible fix. Added the "Version 2" that i was using, please use it instead of that old, and tell me if there are still problems.... (I can't say that are not going to still exists, anyway, good luck.)
l2redkiller Posted June 15, 2011 Posted June 15, 2011 look on first page all files where is v2 ^^ Antibot.java change the old package to this package handlers.voicedcommandhandlers; and hope it works
pipiou21 Posted June 15, 2011 Author Posted June 15, 2011 look on first page all files where is v2 ^^ Antibot.java change the old package to this package handlers.voicedcommandhandlers; and hope it works Ok, thanks :), well, you can read what is updated and whats not Legend.
l2redkiller Posted June 15, 2011 Posted June 15, 2011 ok also for me it dont pop up i changed the 50 to Config.CaptchaCheck and did it in config to 5 so donno what happend this error i get everytime if i install in l2attackable or l2npc.java
Recommended Posts