Jump to content

L2Jfrozen Interlude Project


Recommended Posts

:good sir:

[CORE] Thanks user josemoreira for help.

- Fixed skills DRAIN have effect on Npcs. (Like L2OFF)

- Added message WOULD_YOU_LIKE_TO_OPEN_THE_GATE.

- Added message WOULD_YOU_LIKE_TO_CLOSE_THE_GATE.

- Implmented request to open Clan hall doors. (Like L2OFF)

- Fixed CupidBow weapon expertise penality.

- Fixed skills TARGET_ONE can't be used on Npc. (Like L2OFF)

- Fixed only Heling potion are not showed on party list buff. (Like L2OFF)

- Fixed bug with Snipe/UD. (Thanks to josemoreira)

- Fixed Private store sell bug with Offline traders.

- Fixed bug with item with same Id on private store. (Thanks to josemoreira)

 

http://www.l2jfrozen.com/forum/index.php?topic=19125.0

Link to comment
Share on other sites

:not bad:

[CORE][CONFIG][DP] Remember to update config files!

- Implemented //snoop command. (Too see player chat)

- Fixed bug with private store. (Thanks to josemoreira)

- Implemented nextActionAttack on XML skills.

- After BLOW skills the char must not auto attack. (Like L2OFF)

- Added AGGDAMAGE, AGGREMOVE, MANADAM on skills that can’t be used on NPC. (Like L2OFF)

- Fixed bug with stealth effect. (ex. Shadow dance)

- Fixed bug with COMPLETE quest state.

- Implemented sleep effect on offline char. (like l2off)

- Implemented command /offline_shop & .offline_shop to go on offline trade. (like l2off)

- Added new configs to enable/disable command offline.

- Fixed PDAM skills critical calculation.

- Fixed char penality when clan kick a member. (Like L2OFF)

- Fixed it’s not possible unsummon during combat. (Like L2OFF)

- Some cleanup and format.

 

https://www.assembla.com/code/L2jFrozenInterlude/subversion/changesets/983

 

http://www.l2jfrozen.com/forum/index.php?topic=19168.0

Link to comment
Share on other sites

Does snoop works as intented, or you just used a custom to fix it ? So far, even on L2OFF IL, snoop command is bugged. And from your rework, I guess the window is still empty, but you receive all snooped guy chat in chat.

 

Finally 2 things :

  • Snoop.java : the old writing was better, it's better to store a string and an int rather than the whole object (until you use 75%/100% parameters of it).
  • isInCombat() doesn't verify anymore the possibility than AI is null.

Link to comment
Share on other sites

Does snoop works as intented, or you just used a custom to fix it ?

 

Yes, snoop command is completly custom. As you said now the chat of snooped char appears on the chat of the Gm.

Link to comment
Share on other sites

:rage:

[CORE][CONFIG][DP] Thanks to daiman (for skill report) and josemoreira.

- Added new config PlayerTeleportProtection. (L2OFF feature)

- Added new config EffectTeleportProtection. (L2OFF feature)

- Added new config OfflineSleepEffect. (L2OFF feature)

- Added new anti farm config AntiFarmSummon.

- Fixed ABNORMAL_EFFECT_STEALTH double effect. (Thanks josemoreira)

- Fixed all java warnings on source.

- Fixed method calls thread.sleep() with a lock held.

- Added java version log on server startup.

- Implemented CRIT_ANNOUNCE and command //critannounce.

- Fixed bug with TARGET_AURA skill movment.

- Added log on gameserver for kicked players by bot protection.

- Implemented spawn effect on mob that spawn other npc. (like L2OFF)

- Fixed autotarget on new mob spawned. (like L2OFF)

- Fixed trasform mobs also on skills and not only with attack. (Like L2OFF)

- Cleanup and format.

- Fixed HTML nobless on monument. (like L2OFF)

- Fixed Benom NPEs.

- Fixed Double Sonic Slash reuseDelay.

- Fixed Aura of Hate hittime and reusedelay.

- Fixed Double Shot reusedelay.

- Fixed Unlock reusedelay.

- Fixed Backstab reusedelay.

- Fixed Horror reusedelay and time.

- Fixed WarCry reusedelay.

- Fixed Shield Stun time.

- Fixed Sanctuary time.

- Fixed Stun Attack time.

- Fixed Stunning Shot time.

- Fixed Stunning Fist time.

- Fixed Hex reusedelay.

- Fixed Seal of Ruler reusedelay.

- Fixed Focus Attack reusedelay.

- Fixed Blinding Blow reusedelay.

- Fixed Strider Siege Assault reusedelay.

- Fixed Touch of Death hpconsume and reusedelay.

- Fixed Lethal Blow reusedelay.

- Fixed Spoil Crush reusedelay and hittime.

- Fixed Physical Mirror reusedelay.

- Fixed Magical Mirror reusedelay.

- Fixed Shield Bash time.

- Fixed Armor Crush time and hittime.

- Fixed Tribunal reusedelay.

- Fixed Judgment reusedelay.

- Fixed Arrest reusedelay.

- Fixed Shackle reusedelay.

- Fixed Mass Shackling reusedelay.

- Fixed Psycho Symphony reusedelay.

- Fixed Stealth reusedelay and enchant time.

- Fixed Spirit of Sagittarius hittime.

- Fixed Blessing of Sagittarius hittime.

- Fixed Fell Swoop reusedelay.

- Fixed Infernal Form reusedelay.

- Fixed Snipe reusedelay and condition message.

- Fixed Banish Undead reusedelay.

 

https://www.assembla.com/code/L2jFrozenInterlude/subversion/changesets/984

 

http://www.l2jfrozen.com/forum/index.php?topic=19367.0

Link to comment
Share on other sites

:good sir:

[CORE] Starting refactor! L2NpcTemplate (Remember to update loginserver/lib)

- L2NpcTemplate refactor to avoid NPEs and to improve resources access in order to reduce CPU cicles.

- Fixed LoginServer CPU usage 99%.

- Improoved PacketsFloodPortector.

- Improoved Spawn and teleport protections.

- Fixed Invulnerability when you are on spawn/teleport protection.

- Fixed cursed weapon message when dropped. (Like L2OFF)

 

http://www.l2jfrozen.com/forum/index.php?topic=19467.0

Link to comment
Share on other sites

:good sir:

[DP][CORE]

- Fixed Focus Death, bonus only with dagger.

- Fixed Focus Power, bonus only with dagger.

- Fixed Cleanse, remove also DOT skills.

- Fixed Frintezza's Songs double icons.

- Fixed Rebirth skills must be added only on main class.

- Fixed command .withdraw if you haven't space for Adena.

- Fixed summon buff, must be liv 3. (Like L2OFF, Thanks to josemoreira)

- Fixed Rebirth skills update after REBORN.

- Fixed Adena must not be showed on Selllist.

- Added check on olympiad registration for AIO buffer. (Thanks to dermeq)

- Fixed CTF, TVT, DM NPE.

- Updated ExShowScreenMessage packet. (Thanks to sahar)

- Added check for olympiad dualbox.

 

http://www.l2jfrozen.com/forum/index.php?topic=19727.0

Link to comment
Share on other sites

  • 2 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




  • Posts

    • well i didnt used to had that issue u reffering , u can always lower the page value that would show on each page . keep in mind it was taken  from h5 that it can handle more html length than interlude .   package handlers.admincommandhandlers; import org.l2jmobius.gameserver.handler.IAdminCommandHandler; import org.l2jmobius.gameserver.model.WorldObject; import org.l2jmobius.gameserver.model.actor.Player; import org.l2jmobius.gameserver.model.item.instance.Item; import org.l2jmobius.gameserver.network.SystemMessageId; import org.l2jmobius.gameserver.network.serverpackets.NpcHtmlMessage; import org.l2jmobius.gameserver.util.Util; public class AdminInventory implements IAdminCommandHandler { private static final String[] ADMIN_COMMANDS = { "admin_showinv", "admin_delete_item" }; @Override public boolean useAdminCommand(String command, Player activeChar) { WorldObject target = activeChar.getTarget(); if (target == null || !target.isPlayer()) { activeChar.sendPacket(SystemMessageId.INVALID_TARGET); return false; } if (command.startsWith(ADMIN_COMMANDS[0])) { if (command.length() > ADMIN_COMMANDS[0].length()) { String com = command.substring(ADMIN_COMMANDS[0].length() + 1); if (Util.isDigit(com)) { showItemsPage(activeChar, Integer.parseInt(com)); } } else { showItemsPage(activeChar, 0); } } int count = 1; if (command.contains(ADMIN_COMMANDS[1])) { String[] parts = command.split(" "); if (parts.length == 3) { try { count = Integer.parseInt(parts[2]); } catch (NumberFormatException e) { activeChar.sendMessage("Invalid quantity format."); return false; } } if (count == 0) { activeChar.sendMessage("Quantity must be 1 or above, or left blank for default."); showItemsPage(activeChar, 0); return false; } String val = parts[1]; target.getActingPlayer().destroyItem("GM Destroy", Integer.parseInt(val), count, null, true); showItemsPage(activeChar, 0); } return true; } private void showItemsPage(Player activeChar, int page) { final WorldObject target = activeChar.getTarget(); final Player player = target.getActingPlayer(); final Item[] items = player.getInventory().getItems().toArray(new Item[0]); int maxItemsPerPage = 13; int maxPages = items.length / maxItemsPerPage; if (items.length > (maxItemsPerPage * maxPages)) { maxPages++; } if (page > maxPages) { page = maxPages; } int itemsStart = maxItemsPerPage * page; int itemsEnd = items.length; if ((itemsEnd - itemsStart) > maxItemsPerPage) { itemsEnd = itemsStart + maxItemsPerPage; } final NpcHtmlMessage adminReply = new NpcHtmlMessage(0); adminReply.setFile(activeChar, "data/html/admin/inventory.htm"); adminReply.replace("%PLAYER_NAME%", activeChar.getName()); StringBuilder sbPages = new StringBuilder(); for (int x = 0; x < maxPages; x++) { int pagenr = x + 1; sbPages.append("<td><button value=\"" + pagenr + "\" action=\"bypass -h admin_showinv " + x + "\" width=20 height=20 back=\"L2UI_ct1.button_df\" fore=\"L2UI_ct1.button_df\"></td>"); } adminReply.replace("%PAGES%", sbPages.toString()); StringBuilder sbItems = getStringBuilder(itemsStart, itemsEnd, items); adminReply.replace("%ITEMS%", sbItems.toString()); activeChar.sendPacket(adminReply); } private static StringBuilder getStringBuilder(int itemsStart, int itemsEnd, Item[] items) { StringBuilder sbItems = new StringBuilder(); sbItems.append("<table width=270>"); sbItems.append("<tr>"); sbItems.append("<td width=24><b> </b></td>"); sbItems.append("<td width=120><b> </b></td>"); sbItems.append("<td width=90><b>Count</b></td>"); sbItems.append("<td width=65><b>Quantity</b></td>"); sbItems.append("</tr>"); for (int i = itemsStart; i < itemsEnd; i++) { Item item = items[i]; sbItems.append("<tr>"); sbItems.append("<td><img src=").append(item.getTemplate().getIcon()).append(" width=24 height=24></td>"); sbItems.append("<td>").append(item.getName()).append("</td>"); sbItems.append("<td>").append(item.getCount()).append("</td>"); sbItems.append("<td>"); sbItems.append("<edit var=\"itemCount_").append(i).append("\" width=40>"); sbItems.append("</td>"); sbItems.append("<td><button action=\"bypass -h admin_delete_item ").append(item.getObjectId()).append(" $itemCount_").append(i).append("\" width=16 height=16 back=\"L2UI_ct1.Button_DF_Delete\" fore=\"L2UI_ct1.Button_DF_Delete\"></button></td>"); sbItems.append("</tr>"); } sbItems.append("</table>"); return sbItems; } @Override public String[] getAdminCommandList() { return ADMIN_COMMANDS; } } Since i did jumped to mobius here the mobius one with quantity field aswell .  feel free to adapt it back to acis or wherever    <html><body><title>Inventory : %PLAYER_NAME%</title> <center> <table width=270> <tr> %PAGES% </tr> </table> </center> <br> %ITEMS% </body> </html>
    • ~ DISCORD SERVER: 2MVCtXHvbH  DISCORD SERVER: 2MVCtXHvbH
  • Topics

×
×
  • Create New...