
niraklas
Members-
Posts
400 -
Credits
0 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Everything posted by niraklas
-
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
i dont want somone to do this for me just to explain me how to it :/ -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
i dont understand how to do it cause its differnt. example : + private static final int[] ENCHANT_SCROLLS = { 729, 730, 947, 948, 951, 952, 955, 956, 959, 960 }; + private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 }; + private static final int[] BLESSED_SCROLLS = { 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 }; + + where i have to add this there isnt anywhere this line : private static final String _C__58_REQUESTENCHANTITEM = "[C] 58 RequestEnchantItem"; -
[GR]Η Χρυσή Αυγή επιτείθεται σε πάγκους λαθρεμπόρων!
niraklas replied to HellRuLeR's topic in Tech/World News
ela pigene me ton tsipra ton mlk , kai min mas prizis ta arxidia egw kserw pos i xrisi avgi isos voithisi tin xora kanena allo koma -
[GR]Η Χρυσή Αυγή επιτείθεται σε πάγκους λαθρεμπόρων!
niraklas replied to HellRuLeR's topic in Tech/World News
mono aftoi exoun arxidia omos kai ta vazoun me tous tokoglifous tis europaikis enosis kai katse klapse -
[GR]Η Χρυσή Αυγή επιτείθεται σε πάγκους λαθρεμπόρων!
niraklas replied to HellRuLeR's topic in Tech/World News
kala kanei dn goustarw poustides stin xora m -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
up! -
[Request]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [Greek]
up! -
[GR]Η Χρυσή Αυγή επιτείθεται σε πάγκους λαθρεμπόρων!
niraklas replied to HellRuLeR's topic in Tech/World News
-
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
my friend i am asking for help if i could do this myself i will . thats the reason i am asking help here -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
/* * This program is free software: you can redistribute it and/or modify it under * the terms of the GNU General Public License as published by the Free Software * Foundation, either version 3 of the License, or (at your option) any later * version. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more * details. * * You should have received a copy of the GNU General Public License along with * this program. If not, see <http://www.gnu.org/licenses/>. */ package net.sf.l2j.gameserver.network.clientpackets; import net.sf.l2j.Config; import net.sf.l2j.gameserver.model.L2ItemInstance; import net.sf.l2j.gameserver.model.L2World; import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance; import net.sf.l2j.gameserver.network.SystemMessageId; import net.sf.l2j.gameserver.network.serverpackets.EnchantResult; import net.sf.l2j.gameserver.network.serverpackets.InventoryUpdate; import net.sf.l2j.gameserver.network.serverpackets.ItemList; import net.sf.l2j.gameserver.network.serverpackets.StatusUpdate; import net.sf.l2j.gameserver.network.serverpackets.SystemMessage; import net.sf.l2j.gameserver.util.Util; import net.sf.l2j.util.Rnd; public final class RequestEnchantItem extends AbstractEnchantPacket { private int _objectId = 0; @Override protected void readImpl() { _objectId = readD(); } @Override protected void runImpl() { final L2PcInstance activeChar = getClient().getActiveChar(); if (activeChar == null || _objectId == 0) return; if (!activeChar.isOnline() || getClient().isDetached()) { activeChar.setActiveEnchantItem(null); return; } if (activeChar.isProcessingTransaction() || activeChar.isInStoreMode()) { activeChar.sendPacket(SystemMessageId.CANNOT_ENCHANT_WHILE_STORE); activeChar.setActiveEnchantItem(null); activeChar.sendPacket(EnchantResult.CANCELLED); return; } L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId); L2ItemInstance scroll = activeChar.getActiveEnchantItem(); if (item == null || scroll == null) { activeChar.setActiveEnchantItem(null); activeChar.sendPacket(SystemMessageId.ENCHANT_SCROLL_CANCELLED); activeChar.sendPacket(EnchantResult.CANCELLED); return; } // template for scroll EnchantScroll scrollTemplate = getEnchantScroll(scroll); if (scrollTemplate == null) return; // first validation check if (!scrollTemplate.isValid(item) || !isEnchantable(item)) { activeChar.sendPacket(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION); activeChar.setActiveEnchantItem(null); activeChar.sendPacket(EnchantResult.CANCELLED); return; } // attempting to destroy scroll scroll = activeChar.getInventory().destroyItem("Enchant", scroll.getObjectId(), 1, activeChar, item); if (scroll == null) { activeChar.sendPacket(SystemMessageId.NOT_ENOUGH_ITEMS); Util.handleIllegalPlayerAction(activeChar, activeChar.getName() + " tried to enchant without scroll.", Config.DEFAULT_PUNISH); activeChar.setActiveEnchantItem(null); activeChar.sendPacket(EnchantResult.CANCELLED); return; } if (activeChar.getActiveTradeList() != null) { activeChar.cancelActiveTrade(); activeChar.sendPacket(SystemMessageId.TRADE_ATTEMPT_FAILED); return; } synchronized (item) { double chance = scrollTemplate.getChance(item); // last validation check if (item.getOwnerId() != activeChar.getObjectId() || !isEnchantable(item) || chance < 0) { activeChar.sendPacket(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION); activeChar.setActiveEnchantItem(null); activeChar.sendPacket(EnchantResult.CANCELLED); return; } // success if (Rnd.get() < chance) { // announce the success SystemMessage sm; if (item.getEnchantLevel() == 0) { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_SUCCESSFULLY_ENCHANTED); sm.addItemName(item.getItemId()); activeChar.sendPacket(sm); } else { sm = SystemMessage.getSystemMessage(SystemMessageId.S1_S2_SUCCESSFULLY_ENCHANTED); sm.addNumber(item.getEnchantLevel()); sm.addItemName(item.getItemId()); activeChar.sendPacket(sm); } item.setEnchantLevel(item.getEnchantLevel() + 1); item.updateDatabase(); activeChar.sendPacket(EnchantResult.SUCCESS); } else { // unequip item on enchant failure to avoid item skills stack if (item.isEquipped()) { if (item.getEnchantLevel() > 0) { SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.EQUIPMENT_S1_S2_REMOVED); sm.addNumber(item.getEnchantLevel()); sm.addItemName(item.getItemId()); activeChar.sendPacket(sm); } else { SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.S1_DISARMED); sm.addItemName(item.getItemId()); activeChar.sendPacket(sm); } L2ItemInstance[] unequiped = activeChar.getInventory().unEquipItemInSlotAndRecord(item.getLocationSlot()); InventoryUpdate iu = new InventoryUpdate(); for (L2ItemInstance itm : unequiped) iu.addModifiedItem(itm); activeChar.sendPacket(iu); activeChar.broadcastUserInfo(); } if (scrollTemplate.isBlessed()) { // blessed enchant - clear enchant value activeChar.sendPacket(SystemMessageId.BLESSED_ENCHANT_FAILED); item.setEnchantLevel(0); item.updateDatabase(); activeChar.sendPacket(EnchantResult.UNSUCCESS); } else { // enchant failed, destroy item int crystalId = item.getItem().getCrystalItemId(); int count = item.getCrystalCount() - (item.getItem().getCrystalCount() + 1) / 2; if (count < 1) count = 1; L2ItemInstance destroyItem = activeChar.getInventory().destroyItem("Enchant", item, activeChar, null); if (destroyItem == null) { // unable to destroy item, cheater ? Util.handleIllegalPlayerAction(activeChar, "Unable to delete item on enchant failure from player " + activeChar.getName() + ", possible cheater !", Config.DEFAULT_PUNISH); activeChar.setActiveEnchantItem(null); activeChar.sendPacket(EnchantResult.CANCELLED); return; } L2ItemInstance crystals = null; if (crystalId != 0) { crystals = activeChar.getInventory().addItem("Enchant", crystalId, count, activeChar, destroyItem); SystemMessage sm = SystemMessage.getSystemMessage(SystemMessageId.EARNED_S2_S1_S); sm.addItemName(crystals.getItemId()); sm.addItemNumber(count); activeChar.sendPacket(sm); } if (!Config.FORCE_INVENTORY_UPDATE) { InventoryUpdate iu = new InventoryUpdate(); if (destroyItem.getCount() == 0) iu.addRemovedItem(destroyItem); else iu.addModifiedItem(destroyItem); if (crystals != null) iu.addItem(crystals); activeChar.sendPacket(iu); } else activeChar.sendPacket(new ItemList(activeChar, true)); L2World world = L2World.getInstance(); world.removeObject(destroyItem); if (crystalId == 0) activeChar.sendPacket(EnchantResult.UNK_RESULT_4); else activeChar.sendPacket(EnchantResult.UNK_RESULT_1); } } StatusUpdate su = new StatusUpdate(activeChar); su.addAttribute(StatusUpdate.CUR_LOAD, activeChar.getCurrentLoad()); activeChar.sendPacket(su); activeChar.sendPacket(new ItemList(activeChar, false)); activeChar.broadcastUserInfo(); activeChar.setActiveEnchantItem(null); } } } here is the original -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
i am newbie and i dont understand so well what u tell me. -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
i cannot add the request enchant item.java because its different :/ and i got complicated -
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
UP! -
apoti katalva thelei na stisi ton server tou se linux kai dn kserei
-
[help]Update source
niraklas replied to niraklas's question in Request Server Development Help [Greek]
lock it -
gl with your server
-
As tittle said. My Costumers Is gonna Get Updates! Price: 5Euro ( Without Updates ) 10 Euro (With Updates) Pm Here For more Infos
-
[Help]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [L2J]
oups sorry mistake :/ -
I get this code : http://www.maxcheaters.com/forum/index.php?topic=125525.0 but i cant add on acis because its different Index: /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java =================================================================== --- /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 2) +++ /Server/GameServer/java/net/sf/l2j/gameserver/clientpackets/RequestEnchantItem.java (revision 10) @@ -41,6 +41,9 @@ protected static final Logger _log = Logger.getLogger(Inventory.class.getName()); private static final String _C__58_REQUESTENCHANTITEM = "[C] 58 RequestEnchantItem"; - private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 }; - + private static final int[] ENCHANT_SCROLLS = { 729, 730, 947, 948, 951, 952, 955, 956, 959, 960 }; + private static final int[] CRYSTAL_SCROLLS = { 731, 732, 949, 950, 953, 954, 957, 958, 961, 962 }; + private static final int[] BLESSED_SCROLLS = { 6569, 6570, 6571, 6572, 6573, 6574, 6575, 6576, 6577, 6578 }; + + private int _objectId; @@ -57,4 +60,12 @@ if (activeChar == null || _objectId == 0) return; + if (activeChar.isProcessingTransaction()) + { + activeChar.sendPacket(new SystemMessage(SystemMessageId.INAPPROPRIATE_ENCHANT_CONDITION)); + activeChar.setActiveEnchantItem(null); + return; + } + + L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId); L2ItemInstance scroll = activeChar.getActiveEnchantItem(); @@ -179,27 +190,93 @@ } - // SystemMessage sm = new SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED); - // activeChar.sendPacket(sm); - - SystemMessage sm; - - int chance = 0; - int maxEnchantLevel = 0; - - if (item.getItem().getType2() == L2Item.TYPE2_WEAPON) - { - chance = Config.ENCHANT_CHANCE_WEAPON; - maxEnchantLevel = Config.ENCHANT_MAX_WEAPON; - } - else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR) - { - chance = Config.ENCHANT_CHANCE_ARMOR; - maxEnchantLevel = Config.ENCHANT_MAX_ARMOR; - } - else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY) - { - chance = Config.ENCHANT_CHANCE_JEWELRY; - maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY; - } + // SystemMessage sm = new + // SystemMessage(SystemMessageId.ENCHANT_SCROLL_CANCELLED); + // activeChar.sendPacket(sm); + SystemMessage sm; + int chance = 0; + int maxEnchantLevel = 0; + if (item.getItem().getType2() == L2Item.TYPE2_WEAPON) + { + maxEnchantLevel = Config.ENCHANT_MAX_WEAPON; + for (int scrollId : ENCHANT_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_WEAPON; + break; + } + } + for (int scrollId : CRYSTAL_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_WEAPON_CRYSTAL; + ; + break; + } + } + for (int scrollId : BLESSED_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_WEAPON_BLESSED; + break; + } + } + } else if (item.getItem().getType2() == L2Item.TYPE2_SHIELD_ARMOR) + { + maxEnchantLevel = Config.ENCHANT_MAX_ARMOR; + for (int scrollId : ENCHANT_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_ARMOR; + break; + } + } + for (int scrollId : CRYSTAL_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_ARMOR_CRYSTAL; + break; + } + } + for (int scrollId : BLESSED_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_ARMOR_BLESSED; + break; + } + } + } else if (item.getItem().getType2() == L2Item.TYPE2_ACCESSORY) + { + maxEnchantLevel = Config.ENCHANT_MAX_JEWELRY; + for (int scrollId : ENCHANT_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_JEWELRY; + break; + } + } + for (int scrollId : CRYSTAL_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_JEWELRY_CRYSTAL; + break; + } + } + for (int scrollId : BLESSED_SCROLLS) + { + if (scroll.getItemId() == scrollId) + { + chance = Config.ENCHANT_CHANCE_JEWELRY_BLESSED; + break; + } + } + } if (item.getEnchantLevel() < Config.ENCHANT_SAFE_MAX
-
[Request]Enchant System Acis
niraklas replied to niraklas's question in Request Server Development Help [Greek]
Up! -
I dont have the updates of v2 for free he ask money is this right? w
-
i have the version 2 before one month but he wants to get money in order to give me updates
-
i Buy the version 1,0 and now i have to pay for updates :/