povis111 Posted January 12, 2013 Author Posted January 12, 2013 Got nothing with revision, the string parsing failed somehow. Either the buffer doesn't check what is going to be parsed, either the user failed to write correct values to be parsed (and I will agree than a core check isn't needed if user got a brain). Probably user wrote 1 value instead of 2 (I would guess, you need 2 for skill id and skill level ?) or your core buffer uses a different template somehow (sometimes only 1 parameter ?) and the nextToken shouldn't occur. Well, i have only made a buffer for acis 214 rev, so thought to test it on newer revs, for errors. Unfortunately, source of acis 270 wont build cause of 1.7 java error and the strange things is, i have the java selected in preferences, java home, but nothing works :(
IKnowWtf Posted January 12, 2013 Posted January 12, 2013 Compiler compliance level setting to 1.7, download latest Eclipse.
povis111 Posted January 12, 2013 Author Posted January 12, 2013 Compiler compliance level setting to 1.7, download latest Eclipse. i did that too :)
povis111 Posted January 13, 2013 Author Posted January 13, 2013 Well, i have found out the problem, you shall see what it was, if someone had same.
Tryskell Posted January 13, 2013 Posted January 13, 2013 You opened "Installed JREs" window numerous times, but you didn't figure than you needed to uncheck JRE 1.6 and check instead JRE 1.7 ? :P You will have same problem for L2J, L2JFrozen, etc (to name only those). Just use the good JRE when you compile.
povis111 Posted January 13, 2013 Author Posted January 13, 2013 Yeah, right. This aint working for me. You see, the thing that i wanted to show, was, the JRE table, when you run build.xml, cause it was messed up.
Tryskell Posted January 13, 2013 Posted January 13, 2013 Well you clearly messed something on installation, delete all and install only latest JDK 7 (not JRE). Or just use your trick, as it looks to work... If you make a clean install someday, just rem about first sentence.
povis111 Posted January 13, 2013 Author Posted January 13, 2013 Any Idea guys? C:\Server 3\gameserver\.\data\scripts\custom\Buffer\Buffer.java null java.util.NoSuchElementException at java.util.StringTokenizer.nextToken(Unknown Source) at custom.Buffer.Buffer.onAdvEvent(Buffer.java:1551) at net.sf.l2j.gameserver.model.quest.Quest.notifyEvent(Quest.java:1140) at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.processQuestE vent(L2PcInstance.java:1305) at net.sf.l2j.gameserver.network.clientpackets.RequestBypassToServer.run Impl(RequestBypassToServer.java:143) at net.sf.l2j.gameserver.network.clientpackets.L2GameClientPacket.run(L2 GameClientPacket.java:64) at net.sf.l2j.gameserver.network.L2GameClient.run(L2GameClient.java:772) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source) Okay, so the thing is, that Mr. Tryskell edited the RequestBypassToServer.java "_command.startsWith("Quest ") " thingy, so it wont accept, i guess, more than 2 Strings. As my buffer uses 3 for a command : bypass -h Quest Buffer create $schemename . So it only reads the word create. aCis 214 rev bypass: else if (_command.startsWith("Quest ")) { if (!activeChar.validateBypass(_command)) return; L2PcInstance player = getClient().getActiveChar(); if (player == null) return; String p = _command.substring(6).trim(); int idx = p.indexOf(' '); if (idx < 0) player.processQuestEvent(p, ""); else player.processQuestEvent(p.substring(0, idx), p.substring(idx).trim()); } aCis 270 rev bypass: else if (_command.startsWith("Quest ")) { if (!activeChar.validateBypass(_command)) return; String[] str = _command.substring(6).trim().split(" "); if (str.length == 1) activeChar.processQuestEvent(str[0], ""); else activeChar.processQuestEvent(str[0], str[1]); } You can see the difference :). I have pasted quest bypass from rev 214 to rev 270, to test. Buffer worked as it did on rev 214. I still dont know if there will be bugs cause of that, Tryskell should now. But here's a l2jserver.jar for rev 270, with the old quest bypass code, it's place is gameserver/libs. http://www72.zippyshare.com/v/59227982/file.html And the buffer's code i used was from here (Thx to IKnowWtf): http://pastebin.com/1PLQ5YGZ
Tryskell Posted January 13, 2013 Posted January 13, 2013 It's not meeee, It's Hasha the Villain ! Edited in rev 267, yup. And you're right good sir, only the second parameter is taken in consideration. In order it works, the str[1] has to be command - str[0]. Edit : try that and say ty to him : else if (_command.startsWith("Quest ")) { if (!activeChar.validateBypass(_command)) return; String[] str = _command.substring(6).trim().split(" ", 1); if (str.length == 1) activeChar.processQuestEvent(str[0], ""); else activeChar.processQuestEvent(str[0], str[1]); }
Kingstonas Posted January 22, 2013 Posted January 22, 2013 Thanks! Really greate work, everything works perfectly. One more thing, that you can add to your buffer is pet buffer.
sp4rtakuSsS Posted March 9, 2013 Posted March 9, 2013 Ok i spawned buffer, but when i click on html link for example dances, nothing happen.. WTF?
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now