Jump to content
  • 0

Add Drop To All Monsters


activeChar.isNewbie

Question

can anyone help me and tell how to add item(for example coin of luck) to drop for all monsters?

 

I thought it must be in L2Attackable.java, but i can't understand where...

 

I use aCis....

Link to comment
Share on other sites

11 answers to this question

Recommended Posts

  • 0

Hello there.

 

If i remember correctly you have to modify the calculateRewards(L2Character) in L2Attackable.java. Just add a line killer.giveItem(...) with the proper arguments including the id of the item you want to give.

Link to comment
Share on other sites

  • 0

Need to add seal stones to all monsters because seven signs have some problems.... I tried and did this to add to monsters between 70-75 levels

 

 

Index: java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
===================================================================
--- a/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
+++ b/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
@@ -302,4 +302,5 @@
                        }
                }
+
               
                // Manage Base, Quests and Sweep drops of the L2Attackable.
@@ -1129,5 +1130,11 @@
                                else
                                        item = calculateCategorizedRewardItem(player, cat, levelModifier);
-                               
+                                if(getLevel() >= 70 && getLevel() <= 75)
+                                {
+                                        int min_seal_red = Rnd.get(700,1400);
+                                        int min_seal_green = Rnd.get(34350,69000);
+                                        player.addItem("BlueSealStone", 6362, min_seal_red, null, true);
+                                        player.addItem("GreenSealStone", 6361, min_seal_green, null, true);
+                                }
                                if (item != null)
                                {

 

But when i kill for example hot springs monsters it gives me 2 times red and 2 times green stones.

Link to comment
Share on other sites

  • 0

dont even go at java, do it via SQL... use some command in droplist

I use aCis so they don't have droplist in SQL they have it on every npc in xml files.

Link to comment
Share on other sites

  • 0

Need to add seal stones to all monsters because seven signs have some problems.... I tried and did this to add to monsters between 70-75 levels

Index: java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
===================================================================
--- a/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
+++ b/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
@@ -302,4 +302,5 @@
                        }
                }
+
               
                // Manage Base, Quests and Sweep drops of the L2Attackable.
@@ -1129,5 +1130,11 @@
                                else
                                        item = calculateCategorizedRewardItem(player, cat, levelModifier);
-                               
+                                if(getLevel() >= 70 && getLevel() <= 75)
+                                {
+                                        int min_seal_red = Rnd.get(700,1400);
+                                        int min_seal_green = Rnd.get(34350,69000);
+                                        player.addItem("BlueSealStone", 6362, min_seal_red, null, true);
+                                        player.addItem("GreenSealStone", 6361, min_seal_green, null, true);
+                                }
                                if (item != null)
                                {

But when i kill for example hot springs monsters it gives me 2 times red and 2 times green stones.

 

I already answered you, we use a spawnlist which doesn't use sealstone.

 

Which means there are mobs which got those stones.

 

Which means, edit the godamn spawns to pick directly mobs with stones. You can help yourself with any L2J IL spawnlist.

Link to comment
Share on other sites

  • 0

Need to add seal stones to all monsters because seven signs have some problems.... I tried and did this to add to monsters between 70-75 levels

Index: java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
===================================================================
--- a/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
+++ b/java/net/sf/l2j/gameserver/model/actor/L2Attackable.java
@@ -302,4 +302,5 @@
                        }
                }
+
               
                // Manage Base, Quests and Sweep drops of the L2Attackable.
@@ -1129,5 +1130,11 @@
                                else
                                        item = calculateCategorizedRewardItem(player, cat, levelModifier);
-                               
+                                if(getLevel() >= 70 && getLevel() <= 75)
+                                {
+                                        int min_seal_red = Rnd.get(700,1400);
+                                        int min_seal_green = Rnd.get(34350,69000);
+                                        player.addItem("BlueSealStone", 6362, min_seal_red, null, true);
+                                        player.addItem("GreenSealStone", 6361, min_seal_green, null, true);
+                                }
                                if (item != null)
                                {

But when i kill for example hot springs monsters it gives me 2 times red and 2 times green stones.

You have added your code inside this loop.  for (DropCategory cat : npcTemplate.getDropData()) {}

 

That's why it is being executed more than once.

Link to comment
Share on other sites

  • 0

I already answered you, we use a spawnlist which doesn't use sealstone.

 

Which means there are mobs which got those stones.

 

Which means, edit the godamn spawns to pick directly mobs with stones. You can help yourself with any L2J IL spawnlist.

i don't understand what you mean... spawnlist don't include drop....

 

I just want to add seal stones to all monsters based on their level.

 

 

You have added your code inside this loop.  for (DropCategory cat : npcTemplate.getDropData()) {}

 

That's why it is being executed more than once.

So where should I add this code?

Link to comment
Share on other sites

  • 0

try this 

net/sf/l2j/gameserver/model/actor/L2Attackable.java
-----------------------------------------------------

    private L2Character _overhitAttacker;
    + private L2PcInstance _PlayerDrop;

	@Override
	public boolean doDie(L2Character killer)
	{
		// Kill the L2Npc (the corpse disappeared after 7 seconds)
		if (!super.doDie(killer))
			return false;
		
	+	if(this instanceof L2MonsterInstance)
	+	{
	+		if (getLevel() >= 70 && getLevel() <= 75)
	+		{
	+			int min_seal_red = Rnd.get(700, 1400);
	+			int min_seal_green = Rnd.get(34350, 69000);
	+			_PlayerDrop.addItem("BlueSealStone", 6362, min_seal_red, null, true);
	+			_PlayerDrop.addItem("GreenSealStone", 6361, min_seal_green, null, true);
	+		}
	+	}
Edited by tazerman2
Link to comment
Share on other sites

  • 0

Better work on NpcTable.java , as you can see it loads all npcs and adds drops with this method template.addDropData(dropDat, category) where dropDat is is a  DropData instance. Simply use this method again with your own DropData instance (with whatever items  and item counts you want).

Edited by LAGLAG
Link to comment
Share on other sites

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
Answer this question...

×   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.



×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock