-
Posts
350 -
Joined
-
Last visited
-
Days Won
1 -
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by iAlreadyExist
-
Help Hero Item Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
yep there is auto learn skill # AutoLearnSkills. True to enable, False to disable AutoLearnSkills = True -
Help Hero Item Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
basicly its makes hero but when u relog u are still hero but without skills ;s -
Help Hero Item Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
nope its for 7 days.. -
Hey guys im having problems using this hero item basicly its working fine but when u drink it with other class and then update to next one when u relogin its removing heroe skils can someone help me make it only to work classes id i choose?? http://www.maxcheaters.com/topic/204330-hero-custom-day-l2jfrozen-for-l2jacis/?do=findComment&comment=2571813
-
Help Remote Class Master Little Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
okay lock it. -
Help Remote Class Master Little Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
i made it like u say me and it doest not allows me to press any link to change class the server thinks im hacker. i just remove it now and its working fine how bad can be without this floodprotect? -
Request Tvt/ctf/dm For Acis
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
yes but there is no ctf event :( -
Help Remote Class Master Little Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
yes you are right i really trying but i will learn soon i still need help with this all day waiting for u guys to tell me what to do to fix this one :S -
Help Npc Not Attackable
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
lock thx -
Help Npc Not Attackable
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
im using l2j acis and its not have it -
Help Remote Class Master Little Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
yep but my brain not working now can u tell me the full code so i can make it and u do ur job and dont losing ur time with me i make it like this and error if (FloodProtectors.performAction(activeChar.getClient(), Action.("changeclass")) -
Help Remote Class Master Little Problem
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
u are annoying with spaming everywhere without reason just dont enter my topic and u are done with your problem yes im noob java i copy free codes i try to make to work not everybody perfect to know java as main lang. now please tell me how to make this one to work if (!player.getFloodProtectors().getServerBypass().tryPerformAction("changeclass")) -
Help Remote Class Master Little Problem
iAlreadyExist posted a question in Request Server Development Help [L2J]
hello guys im trying to install one remote class master on acis and i had one problem maybe u guys can help me http://prnt.sc/bnij8r all the code ### Eclipse Workspace Patch 1.0 #P L2jFanatic Index: dist/data/html/classmaster/tutorialtemplate.htm =================================================================== --- dist/data/html/classmaster/tutorialtemplate.htm (revision 0) +++ dist/data/html/classmaster/tutorialtemplate.htm (working copy) @@ -0,0 +1,13 @@ +<html> + <body> + <center>%name% Class Master:</center><br> + %menu% + <br><br> + Item(s) required for class change: + <table width=270> + %req_items% + </table> + <br><br> + <a action="link COXX">Ask me next time.</a> + </body> +</html> Index: java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java =================================================================== --- java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java (revision 5) +++ java/net/sf/l2j/gameserver/model/actor/instance/L2ClassMasterInstance.java (working copy) @@ -17,6 +17,7 @@ import java.util.List; import net.sf.l2j.Config; +import net.sf.l2j.gameserver.cache.HtmCache; import net.sf.l2j.gameserver.datatables.CharTemplateTable; import net.sf.l2j.gameserver.datatables.ItemTable; import net.sf.l2j.gameserver.model.actor.template.NpcTemplate; @@ -25,6 +26,9 @@ import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.ActionFailed; import net.sf.l2j.gameserver.network.serverpackets.NpcHtmlMessage; +import net.sf.l2j.gameserver.network.serverpackets.TutorialCloseHtml; +import net.sf.l2j.gameserver.network.serverpackets.TutorialShowHtml; +import net.sf.l2j.gameserver.network.serverpackets.TutorialShowQuestionMark; import net.sf.l2j.gameserver.network.serverpackets.UserInfo; import net.sf.l2j.util.StringUtil; @@ -114,6 +118,53 @@ super.onBypassFeedback(player, command); } + public static final void onTutorialLink(L2PcInstance player, String request) + { + if (!Config.ALTERNATE_CLASS_MASTER || request == null || !request.startsWith("CO")) + return; + + if (!player.getFloodProtectors().getServerBypass().tryPerformAction("changeclass")) + return; + + try + { + int val = Integer.parseInt(request.substring(2)); + checkAndChangeClass(player, val); + } + catch (NumberFormatException e) + { + } + player.sendPacket(TutorialCloseHtml.STATIC_PACKET); + } + + public static final void onTutorialQuestionMark(L2PcInstance player, int number) + { + if (!Config.ALTERNATE_CLASS_MASTER || number != 1001) + return; + + showTutorialHtml(player); + } + + public static final void showQuestionMark(L2PcInstance player) + { + if (!Config.ALLOW_CLASS_MASTERS) + return; + + if (!Config.ALTERNATE_CLASS_MASTER) + return; + + final ClassId classId = player.getClassId(); + if (getMinLevel(classId.level()) > player.getLevel()) + return; + + if (!Config.CLASS_MASTER_SETTINGS.isAllowed(classId.level() + 1)) + { + return; + } + + player.sendPacket(new TutorialShowQuestionMark(1001)); + } + private static final void showHtmlMenu(L2PcInstance player, int objectId, int level) { NpcHtmlMessage html = new NpcHtmlMessage(objectId); @@ -203,6 +254,29 @@ player.sendPacket(html); } + private static final void showTutorialHtml(L2PcInstance player) + { + final ClassId currentClassId = player.getClassId(); + if (getMinLevel(currentClassId.level()) > player.getLevel() && !Config.ALLOW_ENTIRE_TREE) + return; + + String msg = HtmCache.getInstance().getHtm("data/html/classmaster/tutorialtemplate.htm"); + msg = msg.replaceAll("%name%", CharTemplateTable.getInstance().getClassNameById(currentClassId.getId())); + + final StringBuilder menu = new StringBuilder(100); + for (ClassId cid : ClassId.values()) + { + if (validateClassId(currentClassId, cid)) + { + StringUtil.append(menu, "<a action=\"link CO", String.valueOf(cid.getId()), "\">", CharTemplateTable.getInstance().getClassNameById(cid.getId()), "</a><br>"); + } + } + + msg = msg.replaceAll("%menu%", menu.toString()); + msg = msg.replace("%req_items%", getRequiredItems(currentClassId.level() + 1)); + player.sendPacket(new TutorialShowHtml(msg)); + } + private static final boolean checkAndChangeClass(L2PcInstance player, int val) { final ClassId currentClassId = player.getClassId(); @@ -255,6 +329,11 @@ player.setBaseClass(player.getActiveClass()); player.broadcastUserInfo(); + + if (Config.CLASS_MASTER_SETTINGS.isAllowed(player.getClassId().level() + 1) && Config.ALTERNATE_CLASS_MASTER && (((player.getClassId().level() == 1) && (player.getLevel() >= 40)) || ((player.getClassId().level() == 2) && (player.getLevel() >= 76)))) + { + showQuestionMark(player); + } return true; } Index: dist/config/npcs.properties =================================================================== --- dist/config/npcs.properties (revision 5) +++ dist/config/npcs.properties (working copy) @@ -78,6 +78,13 @@ # Default = False AllowEntireTree = False +# Then character reach levels 20,40,76 he will receive tutorial page +# with list of the all possible variants, and can select and immediately +# change to the new occupation, or decide to choose later (on next login). +# Can be used with or without classic Class Masters. +# Default = False +AlternateClassMaster = False + # Allow free teleportation around the world. AltFreeTeleporting = False Index: java/net/sf/l2j/Config.java =================================================================== --- java/net/sf/l2j/Config.java (revision 6) +++ java/net/sf/l2j/Config.java (working copy) @@ -306,6 +306,7 @@ public static boolean ALLOW_CLASS_MASTERS; public static ClassMasterSettings CLASS_MASTER_SETTINGS; public static boolean ALLOW_ENTIRE_TREE; + public static boolean ALTERNATE_CLASS_MASTER; public static boolean ANNOUNCE_MAMMON_SPAWN; public static boolean ALT_MOB_AGRO_IN_PEACEZONE; public static boolean ALT_GAME_FREE_TELEPORT; @@ -931,6 +932,7 @@ ALLOW_ENTIRE_TREE = npcs.getProperty("AllowEntireTree", false); if (ALLOW_CLASS_MASTERS) CLASS_MASTER_SETTINGS = new ClassMasterSettings(npcs.getProperty("ConfigClassMaster")); + ALTERNATE_CLASS_MASTER = npcs.getProperty("AlternateClassMaster", false); ALT_GAME_FREE_TELEPORT = npcs.getProperty("AltFreeTeleporting", false); ANNOUNCE_MAMMON_SPAWN = npcs.getProperty("AnnounceMammonSpawn", true); Index: java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java =================================================================== --- java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (revision 5) +++ java/net/sf/l2j/gameserver/network/clientpackets/EnterWorld.java (working copy) @@ -32,6 +32,7 @@ import net.sf.l2j.gameserver.model.L2Clan; import net.sf.l2j.gameserver.model.L2Clan.SubPledge; import net.sf.l2j.gameserver.model.L2World; +import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.entity.ClanHall; import net.sf.l2j.gameserver.model.entity.Couple; @@ -256,6 +257,8 @@ // Attacker or spectator logging into a siege zone will be ported at town. if (!activeChar.isGM() && (!activeChar.isInSiege() || activeChar.getSiegeState() < 2) && activeChar.isInsideZone(ZoneId.SIEGE)) activeChar.teleToLocation(MapRegionTable.TeleportWhereType.Town); + + L2ClassMasterInstance.showQuestionMark(activeChar); } private static void engage(L2PcInstance cha) Index: java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialQuestionMark.java =================================================================== --- java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialQuestionMark.java (revision 5) +++ java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialQuestionMark.java (working copy) @@ -14,6 +14,7 @@ */ package net.sf.l2j.gameserver.network.clientpackets; +import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.quest.QuestState; @@ -34,6 +35,8 @@ if (player == null) return; + L2ClassMasterInstance.onTutorialQuestionMark(player, _number); + QuestState qs = player.getQuestState("Tutorial"); if (qs != null) qs.getQuest().notifyEvent("QM" + _number + "", null, player); Index: java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialLinkHtml.java =================================================================== --- java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialLinkHtml.java (revision 5) +++ java/net/sf/l2j/gameserver/network/clientpackets/RequestTutorialLinkHtml.java (working copy) @@ -14,6 +14,7 @@ */ package net.sf.l2j.gameserver.network.clientpackets; +import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.quest.QuestState; @@ -34,6 +35,8 @@ if (player == null) return; + L2ClassMasterInstance.onTutorialLink(player, _bypass); + QuestState qs = player.getQuestState("Tutorial"); if (qs != null) qs.getQuest().notifyEvent(_bypass, null, player); Index: java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java =================================================================== --- java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java (revision 5) +++ java/net/sf/l2j/gameserver/model/actor/stat/PcStat.java (working copy) @@ -18,6 +18,7 @@ import net.sf.l2j.gameserver.datatables.NpcTable; import net.sf.l2j.gameserver.datatables.PetDataTable; import net.sf.l2j.gameserver.model.actor.L2Character; +import net.sf.l2j.gameserver.model.actor.instance.L2ClassMasterInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.model.actor.instance.L2PetInstance; import net.sf.l2j.gameserver.model.base.Experience; @@ -164,6 +165,8 @@ getActiveChar().setCurrentCp(getMaxCp()); getActiveChar().broadcastPacket(new SocialAction(getActiveChar(), 15)); getActiveChar().sendPacket(SystemMessageId.YOU_INCREASED_YOUR_LEVEL); + + L2ClassMasterInstance.showQuestionMark(getActiveChar()); } getActiveChar().rewardSkills(); // Give Expertise skill of this level -
Help Dont Remove Buffs After Death [ Acis ]
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
lock thx -
Help Dont Remove Buffs After Death [ Acis ]
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
i cant find it i found only this @Override public boolean doDie(L2Character killer) { // Kill the L2PcInstance if (!super.doDie(killer)) return false; if (isMounted()) stopFeed(); synchronized (this) { if (isFakeDeath()) stopFakeDeath(true); } -
Help Dont Remove Buffs After Death [ Acis ]
iAlreadyExist posted a question in Request Server Development Help [L2J]
Hey guys can u tell me how to make when u die to not remove buffs i try to remove stopAllEffectsExceptThoseThatLastThroughDeath(); from l2character.java but its give me errors on other files and if i remove them its removing other thinks like on sublcass and other ;s -
Hey guys can someone good man tell me how to make all npc on acis not attackable by players?
-
Request Tvt/ctf/dm For Acis
iAlreadyExist posted a question in Request Server Development Help [L2J]
hello guys can u give me working ctf/tvt and deatmach for acis lattest free pack since i cant find any working code or its from 2010 year xd -
Request Vote Reward Hopzone And Topzone For Acis
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
i dont have it installed i uninstall it since of errors -
Code Voting Reward(Hopzone,topzone)
iAlreadyExist replied to StealthyS4m's topic in Server Shares & Files [L2J]
can someone make it to npc? -
LF Spawnlist Coords For 5 Npc
iAlreadyExist replied to raF's question in Request Server Development Help [L2J]
INSERT INTO `spawnlist`(`id`, `location`, `count`, `npc_templateid`, `locx`, `locy`, `locz`, `randomx`, `randomy`, `heading`, `respawn_delay`, `loc_id`, `periodOfDay`) VALUES ('30990', '-80785', '149735', '-3040', '23000', '60', '0', '0'), ('30990', '-84143', '244637', '-3728', '41000', '60', '0', '0'), ('30990', '-12676', '122821', '-3112', '48000', '60', '0', '0'), ('30990', '83001', '53224', '-1488', '31000', '60', '0', '0'), ('30990', '15693', '142886', '-2696', '16000', '60', '0', '0'), ('30990', '13015', '181610', '-3560', '16000', '60', '0', '0'), ('30990', '13637', '182626', '-3560', '48000', '60', '0', '0'), ('30990', '111417', '219422', '-3544', '48000', '60', '0', '0'), ('30990', '83331', '147905', '-3400', '16700', '60', '0', '0'), ('30990', '146738', '25756', '-2008', '0', '60', '0', '0'), ('30990', '117148', '76865', '-2688', '34000', '60', '0', '0'), ('30990', '147908', '-55221', '-2728', '48000', '60', '0', '0'), ('30990', '43664', '-47664', '-800', '50000', '60', '0', '0'), ('30994', '46960', '51506', '-2976', '47000', '60', '0', '0'), ('30994', '9656', '15578', '-4574', '6000', '60', '0', '0'), ('30994', '115075', '-178133', '-880', '1000', '60', '0', '0'), ('30994', '-45266', '-112468', '-240', '500', '60', '0', '0'), ('30994', '87091', '-143443', '-1293', '13029', '60', '0', '0'); -
Help Problem With My Server It Crashes Without Reason
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
close this topic please only spam here 0 help -
Help Allow Skill Enter Game
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
thank u lock. -
Help Problem With My Server It Crashes Without Reason
iAlreadyExist replied to iAlreadyExist's question in Request Server Development Help [L2J]
and where to put this i dont understand guys what to remove and what do add :-[ please if you can make it with + and -
