Jump to content
  • 0

[Help]Problem with Java code


Question

Posted

Hey guys....

I try to put this java code in my server : http://www.maxcheaters.com/forum/index.php?topic=148257.0 and i put it :)

But when i wear S grade armor/weapon and i take out after i cant wear again any armor/weapon/jewel and in gameserver window say:

 

Client: [Character: Lougkraaaaaa[268479809] - Account: manos2864 - IP: 127.0.0.1

] - Failed running: [C] 14 UseItem - L2J Server Version: ${l2j.revision} - DP Re

vision: ${l2jdp.revision} ; null

java.lang.NullPointerException

       at com.l2jserver.gameserver.network.clientpackets.UseItem.runImpl(UseIte

m.java:103)

       at com.l2jserver.gameserver.network.clientpackets.L2GameClientPacket.run

(L2GameClientPacket.java:93)

       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)

 

 

Some guys in greek section told me maybe i make something wrong.... and they try to help me with teamviewer but nothing happen!! Code had problem... Can someone fix this code pls!!! Or give me another code (i want olympiad only with A grade armor/weapons/jewels)

I use l2jserver Epilogue (Compile)

 

Recommended Posts

  • 0
Posted

It's already defined

 

 

protected void runImpl()

{

 

L2PcInstance activeChar = getClient().getActiveChar();

 

if (activeChar == null)

           return;

 

if (activeChar.getPrivateStoreType() != 0)

{

activeChar.sendPacket(new SystemMessage(SystemMessageId.CANNOT_TRADE_DISCARD_DROP_ITEM_WHILE_IN_SHOPMODE));

activeChar.sendPacket(new ActionFailed());

return;

}

 

L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);

 

When i put this code .....  in line 106 say duplicate local variable item -->

L2ItemInstance item=activeChar.getInventory().getItemByObjectId(_objectId);

 

Edit

Here my useitem.java (Original) --> http://pastebin.com/5WY4ZVKs

     

  • 0
Posted

When i put this code .....  in line 106 say duplicate local variable item -->

L2ItemInstance item=activeChar.getInventory().getItemByObjectId(_objectId);

 

Edit

Here my useitem.java (Original) --> http://pastebin.com/5WY4ZVKs

     

Maaan,this variable is few lines below,it alrdy exists,dont add it again!

Just add the code below that line. >_>

         if (activeChar.getActiveTradeList() != null)
		activeChar.cancelActiveTrade();

	// NOTE: disabled due to deadlocks
	// synchronized (activeChar.getInventory())
	// 	{
		L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);

		if (item == null)
                               return;

+                      int lolz0r = item.getItem().getCrystalType();
+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S)
+                      {
+        	               activeChar.sendMessage("You cannot use S grade equipment at the Grand Olympiad games.");
+                              return;
+                      }

		if (item.isWear())
		{
			// No unequipping wear-items
			return;
		}

  • 0
Posted

Maaan,this variable is few lines below,it alrdy exists,dont add it again!

Just add the code below that line. >_>

         if (activeChar.getActiveTradeList() != null)
		activeChar.cancelActiveTrade();

	// NOTE: disabled due to deadlocks
	// synchronized (activeChar.getInventory())
	// 	{
		L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);

		if (item == null)
                               return;

+                      int lolz0r = item.getItem().getCrystalType();
+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S)
+                      {
+        	               activeChar.sendMessage("You cannot use S grade equipment at the Grand Olympiad games.");
+                              return;
+                      }

		if (item.isWear())
		{
			// No unequipping wear-items
			return;
		}

and for s80 and s84 what i must add?

i must add these lines?

+                      int lolz0r = item.getItem().getCrystalType();

+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S)

+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S80)

+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S84)

+                      {

+                       activeChar.sendMessage("You cannot use S/S80/S84 grade equipment at the Grand Olympiad games.");

+                              return;

+                      }

 

 

**EDIT**

Ok first... code dont work... i participate in olympiad with s grade equipment and nothing stop me

second i add ---> in useitem.java this code :

+                      int lolz0r = item.getItem().getCrystalType();

+                      if (activeChar.isInOlympiadMode() && lolz0r == L2Item.CRYSTAL_S)

+                      {

+                       activeChar.sendMessage("You cannot use S grade equipment at the Grand Olympiad games.");

+                              return;

+                      }

 

and in Olympiad.java this code --->

+import com.l2jserver.gameserver.templates.item.L2Item;

import com.l2jserver.util.L2FastList;

 

import javolution.util.FastMap;

@@ -482,6 +483,14 @@

* return false; }

*/

 

+ int weaponGrade = noble.getActiveWeaponItem().getCrystalType();

+ int armorGrade = noble.getActiveChestArmorItem().getCrystalType();

+ if (weaponGrade == L2Item.CRYSTAL_S || armorGrade == L2Item.CRYSTAL_S)

+ {

+ noble.sendMessage("You cannot join the grand olympiad games using S grade equipment.");

+ return false;

+ }

+

 

Everything is ok  right?? but in olympiad allow s grade equipment !!! someone solve my problem ? please

  • 0
Posted

Try this,

UseItem.java

import net.sf.l2j.Config;
+import net.sf.l2j.gameserver.Olympiad;
import net.sf.l2j.gameserver.handler.IItemHandler;

L2ItemInstance item = activeChar.getInventory().getItemByObjectId(_objectId);

		if (item == null)
                               return;

+                      int lolz0r = item.getItem().getCrystalType();
+                      if (activeChar.isInOlympiadMode() || Olympiad.getInstance().isRegisteredInComp(activeChar) || +activeChar.getOlympiadGameId() > 0)
+                      {
+                            if (lolz0r == L2Item.CRYSTAL_S || lolz0r == L2Item.CRYSTAL_S80 || lolz0r == L2Item.CRYSTAL_S84)
+                            {
+        	                  activeChar.sendMessage("You may only use items up to Grade A in the Grand Olympiad Games.");
+                                  return;
+                            }
+                      }

Olympiad.java

public class Olympiad
{
/**
 *
 * @author  ascharot
 * 
 */
+      private int _objectId;
private class OlympiadGameTask implements Runnable
{
	public L2OlympiadGame _game = null;

if (!_inCompPeriod)
       {
           sm = new SystemMessage(SystemMessageId.THE_OLYMPIAD_GAME_IS_NOT_CURRENTLY_IN_PROGRESS);
           noble.sendPacket(sm);
           return false;
       }

+      L2ItemInstance item = noble.getInventory().getItemByObjectId(_objectId);
+      int lolz0r = item.getItem().getCrystalType();
+      if (lolz0r == L2Item.CRYSTAL_S || lolz0r == L2Item.CRYSTAL_S80 || lolz0r == L2Item.CRYSTAL_S84)
+      {
+          noble.sendMessage("You cannot use S grade equipment at the Grand Olympiad games.");
+          return false;
+      }

  • 0
Posted

Try this,

UseItem.java

+import net.sf.l2j.gameserver.Olympiad;

ama to balo etsi? import com.l2jserver.gameserver.model.olympiad.Olympiad; epeidi ego exo l2jserver... k etsi na to kano

dld import com.l2jserver.gameserver.olympiad; mou bgazei cannot resolve.... eno etsi opos to exo pano mou bgazei ena kitrinaki

  • 0
Posted

### Eclipse Workspace Patch 1.0
#P L2J-GameServer
Index: java/com/l2jserver/gameserver/model/L2ItemInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/L2ItemInstance.java	(revision 241)
+++ java/com/l2jserver/gameserver/model/L2ItemInstance.java	(working copy)
@@ -713,6 +713,8 @@

     public boolean isOlyRestrictedItem()
     {
+    	if (getItem().getItemGrade() > 4)
+    		return true;
         return (Config.LIST_OLY_RESTRICTED_ITEMS.contains(_itemId));
     }

 

its pathetic how ppl cant use what they have...

  • 0
Posted

### Eclipse Workspace Patch 1.0
#P L2J-GameServer
Index: java/com/l2jserver/gameserver/model/L2ItemInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/L2ItemInstance.java	(revision 241)
+++ java/com/l2jserver/gameserver/model/L2ItemInstance.java	(working copy)
@@ -713,6 +713,8 @@

     public boolean isOlyRestrictedItem()
     {
+    	if (getItem().getItemGrade() > 4)
+    		return true;
         return (Config.LIST_OLY_RESTRICTED_ITEMS.contains(_itemId));
     }

 

its pathetic how ppl cant use what they have...

 

i will add only this code??

  • 0
Posted

i will add only this code??

 

since you asked this i assume you dont know how your pack works so little explanation

 

long ago l2j implemented a system when they unhardcoded item checks(condition value in xml files)

and here what they did is they added a general item check for items with Y condition

 

hence the isOlyRestrictedItem() method is a part of this...it indicates to a list of items that you CANT use on olympiad and its alredy working fine...and if you check how its called you can see if its return true the item is olympiad restricted if its return false than its allowed to use...imho a grade check with return truw value in this method block items stated in the if statement

  • 0
Posted

since you asked this i assume you dont know how your pack works so little explanation

 

long ago l2j implemented a system when they unhardcoded item checks(condition value in xml files)

and here what they did is they added a general item check for items with Y condition

 

hence the isOlyRestrictedItem() method is a part of this...it indicates to a list of items that you CANT use on olympiad and its alredy working fine...and if you check how its called you can see if its return true the item is olympiad restricted if its return false than its allowed to use...imho a grade check with return truw value in this method block items stated in the if statement

man i just ask you only if i must add only your code or and others codes from parizakis... :/

  • 0
Posted

man i just ask you only if i must add only your code or and others codes from parizakis... :/

 

guess why i gave you only this code-.-"

  • 0
Posted

guess why i gave you only this code-.-"

i add only your code but nothing happen.... when i participate in olympiad it allow me enter with s grade armor / weapon

Guest
This topic is now closed to further replies.



  • Posts

    • --- Interlude GvE PvP new season start at 2026-06-27 21:00 GMT+3 ---   Gameplay: Chronicle: Interlude Type: Faction/GvE (Angels vs Nature vs Demons) GM Shop: B-S grade Buff slots: 20+4 Starting level: 74 + rebirth system   New Features: Client: Modern interface based on Essence Balance: New class skills for better balance Achievement Rewards: Daily, Weekly, One-time TOP rankings: PvP, Event PvP, Map PvP, Clan PvP, Event MvP, Map MvP Zones: 70 different PvP zones,  18 different events (8 map events | 10 main events) 12 Grand/raid bosses. Castle siege Olympiad Clan Hall challenge Custom Enchant System: Dynamic success chance (greater enchant level or item grade less enchanting success chance) Enchant rate: Blessed scrolls dynamic from 100% to 25%. Crystal Scrolls: 100%; Max enchant weapon +12 Max enchant armor +8 Safe point enchant system Extra Features: PvP items with level upgrade Weapon/Armor upgrade (from B grade to S) system Attributes system   Website: https://l2cygnus.com Community: Discord Facebook: https://www.facebook.com/l2cygnus Youtube: 
    • 🚀 L2JOne Website System — Features & Security Overview 📌 Overview The L2JOne Website System is a complete platform designed for Lineage 2 servers, providing account management, donation processing, game integration, automation tools, and advanced security protections.   Built with a focus on: Security Performance Automation Scalability Easy Administration 🎮 Player Features ✔ Account Registration Direct account creation from the website Game database integration Data validation Optional email verification Google reCAPTCHA protection ✔ Secure Login System Protected user sessions Automatic Session ID regeneration Session Fixation protection Secure logout ✔ Player Control Panel Ticket balance management Purchase history Transfer history Character selection Automatic item delivery ✔ Account Recovery Email-based recovery Temporary recovery tokens Automatic token expiration 💰 Donation System Supported Payment Gateways Mercado Pago PIX Credit Card Debit Card Stripe International credit cards PayPal Worldwide payments Binance Pay Cryptocurrency payments ⚡ Automated Credit Delivery Once a payment is confirmed: Gateway validates the transaction. Webhook signature is verified. Order is marked as completed. Credits are added to the player's balance. Player transfers credits to a character. Items are automatically delivered in-game. No manual intervention required. 🎁 Coupon System Percentage discounts Fixed value discounts Usage limits Expiration dates Minimum purchase requirements 🎟 Ticket System Internal virtual currency Item conversion system Administrative adjustments Full transaction history Balance management 📊 Administrative Dashboard Real-Time Statistics Total revenue Daily revenue New registrations Total purchases Pending payments Approved payments Reports Sales reports Financial reports Player activity reports Transfer history Interactive Charts Revenue growth Daily earnings Monthly earnings Visitors by country Payment distribution 🌍 Analytics System Visitor countries Browser statistics Operating systems Device tracking Access history 📰 News Management System Unlimited news posts Featured images HTML editor support Homepage highlights 🎥 Video & Streaming System Supports: YouTube Twitch Kick Custom stream embeds ⏳ Countdown System Launch countdown timer Configurable date and time Timezone support Homepage integration 📥 Download Center Fully configurable: Game Client Official Patch Mirror Downloads Torrent Downloads External Download Links 📱 Social Media Integration Discord Facebook Instagram Telegram YouTube 🔒 Security Layer CSRF Protection All forms include: Unique security tokens Mandatory validation Automatic expiration Protects against: Cross-Site Request Forgery (CSRF) Google reCAPTCHA Protection Integrated Google reCAPTCHA v3 Protects against: Bots Automated registrations Brute-force attacks Session Security Session ID regeneration HttpOnly cookies SameSite cookie protection Secure cookie support Protects against: Session hijacking Session fixation attacks Upload Protection Sensitive file types are blocked: .sql .sqlite .log .pem .key Directory Protection Direct access denied to: config/ private/ storage/ cli/ database/ Unauthorized access is blocked. Anti-Replay Protection Financial callbacks include: Signed timestamps Expiration windows One-time validation Protects against: Payment replay attacks Duplicate transaction processing Webhook Security HMAC signature validation Shared secret verification Mandatory request authentication Protects against: Fake payment notifications Fraudulent credit generation Duplicate Payment Prevention Built-in: Idempotency control Transaction reference validation Payment status verification Prevents: Double credits Repeated processing SQL Injection Protection Secure database layer using: PDO Prepared Statements Parameter Binding No unsafe SQL concatenation. XSS Protection Output sanitization through: HTML escaping Input filtering Protects against: Cross-Site Scripting (XSS) Session theft Licensing Protection Centralized licensing system with: Unique license key Unique secret key Remote validation Domain verification Heartbeat monitoring Anti-Cloning Protection Licenses are linked to: Authorized domain Unique credentials Central validation server Unauthorized domain usage can be automatically blocked. ⚙ Administrative Tools User Management Create accounts Edit accounts Suspend users Adjust balances Financial Management Approve transactions Cancel orders Financial reports Content Management News management Download management Video management Social media management Global Settings Rates configuration Countdown management Payment gateway settings License management 🚀 Technology Stack PHP 8+ MySQL 9+ / MariaDB 11+ Bootstrap 5.3.8 AdminLTE 4..0.2 Mercado Pago SDK Stripe SDK PayPal API Binance Pay API Google reCAPTCHA v3 PDO Secure Database Layer 🛡 Final Result The L2JOne Website System delivers a professional-grade solution for Lineage 2 servers, combining: ✅ Modern Administrative Dashboard ✅ Advanced Donation System ✅ Automatic In-Game Delivery ✅ Real-Time Statistics ✅ Centralized Licensing Platform ✅ Financial Fraud Protection ✅ SQL Injection Protection ✅ XSS Protection ✅ CSRF Protection ✅ Anti-Replay Security ✅ Anti-Cloning Protection A complete, secure, and scalable platform built for professional Lineage 2 server operations DEMO SITE: "My Site" - Lineage II I am currently studying programming in Trybe | Cursos de Inteligência Artificial e Tecnologia Price: 150 USDT Payment methods: Crypto using the Tron network or PayPal (you pay an administrative fee). You can choose to pay a monthly fee to get new features or stick with your current version with security updates! The maintenance fee is only 30 USDT per month. Customers currently using my website: http://www.l2shadowwars.com/                                                                                                        Panel Admin:            Database WebSIte     PANEL PLAYER     StartPack    
    • Fixed a lot of null crashes, damn vanganth 🤣 Added engine that you can create your custom quests Extender dungeon systen so u can create as many dungeons as you like       Possibility to create a server from scratch its possible just is the work + the license/month , many ask for the creation.. i can do everything u like, i can even implement UFOs to fly over gym so.. whatever your dream is i can be as close as possible!
    • Hello, it is someone here to help me to make multiskill on helios pack? ( Not stacksub ) i want. On Hi5 i have this config .   # When enabled, the following will be true: # All classes can learn all skills. # Skills of another class costs x2 SP to learn. # Skills of another race costs x2 SP to learn. # Skills of fighters/mages costs x3 SP to learn. # Default: False AltGameSkillLearn = True
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..