Jump to content

Question

Posted (edited)

In l2j-mobius i find a skill which give drop rate up. I give skill, but no effect.

Someone give me this code.

Index: dist/game/data/scripts/handlers/bypasshandlers/NpcViewMod.java
===================================================================
--- dist/game/data/scripts/handlers/bypasshandlers/NpcViewMod.java	(revision 7034)
+++ dist/game/data/scripts/handlers/bypasshandlers/NpcViewMod.java	(working copy)
@@ -265,6 +265,7 @@
 		final DecimalFormat chanceFormat = new DecimalFormat("0.00##");
 		int leftHeight = 0;
 		int rightHeight = 0;
+		final double dropRateEffectBonus = player.getStat().getBonusDropRateMultiplier();
 		final StringBuilder leftSb = new StringBuilder();
 		final StringBuilder rightSb = new StringBuilder();
 		String limitReachedMsg = "";
@@ -363,6 +364,8 @@
 						rateAmount *= Config.PREMIUM_RATE_DROP_AMOUNT;
 					}
 				}
+				// bonus drop rate effect
+				rateChance *= dropRateEffectBonus;
 			}
 			
 			sb.append("<table width=332 cellpadding=2 cellspacing=0 background=\"L2UI_CT1.Windows.Windows_DF_TooltipBG\">");
Index: dist/game/data/scripts/handlers/communityboard/DropSearchBoard.java
===================================================================
--- dist/game/data/scripts/handlers/communityboard/DropSearchBoard.java	(revision 7034)
+++ dist/game/data/scripts/handlers/communityboard/DropSearchBoard.java	(working copy)
@@ -167,6 +167,7 @@
 				final int start = (page - 1) * 14;
 				final int end = Math.min(list.size() - 1, start + 14);
 				final StringBuilder builder = new StringBuilder();
+				final double dropRateEffectBonus = player.getStat().getBonusDropRateMultiplier();
 				for (int index = start; index <= end; index++)
 				{
 					final CBDropHolder cbDropHolder = list.get(index);
@@ -260,6 +261,8 @@
 								rateAmount *= Config.PREMIUM_RATE_DROP_AMOUNT;
 							}
 						}
+						// bonus drop rate effect
+						rateChance *= dropRateEffectBonus;
 					}
 					
 					builder.append("<tr>");
Index: dist/game/data/stats/skills/08400-08499.xml
===================================================================
--- dist/game/data/stats/skills/08400-08499.xml	(revision 7034)
+++ dist/game/data/stats/skills/08400-08499.xml	(working copy)
@@ -427,10 +427,16 @@
 	</skill>
 	<skill id="8415" levels="5" name="Ring Ability - Drop Rate Up">
 		<!-- Increases item drop rate. -->
+		<table name="#bonusDropRate">10 20 30 40 50</table>
 		<set name="icon" val="icon.skill3080" />
 		<set name="magicLvl" val="85" />
 		<set name="operateType" val="P" />
-		<set name="targetType" val="NONE" />
+		<set name="targetType" val="SELF" />
+		<for>
+			<effect name="Buff">
+				<add stat="bonusDropRate" val="#bonusDropRate" />
+			</effect>
+		</for>
 	</skill>
 	<skill id="8416" levels="5" name="Earring Ability - Drop Rate Up">
 		<!-- Increases item drop rate. -->
Index: dist/game/data/xsd/skills.xsd
===================================================================
--- dist/game/data/xsd/skills.xsd	(revision 7034)
+++ dist/game/data/xsd/skills.xsd	(working copy)
@@ -414,9 +414,10 @@
 			<xs:enumeration value="waterPower" />
 			<xs:enumeration value="windPower" />
 			<xs:enumeration value="firePower" />
-			<xs:enumeration value="bonusSp" />
 			<xs:enumeration value="defCritRateAdd" />
 			<xs:enumeration value="bonusExp" />
+			<xs:enumeration value="bonusSp" />
+			<xs:enumeration value="bonusDropRate" />
 			<xs:enumeration value="pvePhysDmg" />
 			<xs:enumeration value="pvePhysSkillsDmg" />
 			<xs:enumeration value="pveBowDmg" />
Index: java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java
===================================================================
--- java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java	(revision 7034)
+++ java/org/l2jmobius/gameserver/model/actor/stat/PlayerStat.java	(working copy)
@@ -937,4 +937,9 @@
 		
 		return bonus;
 	}
+	
+	public double getBonusDropRateMultiplier()
+	{
+		return 1 + (calcStat(Stat.BONUS_DROP_RATE, 0, null, null) / 100);
+	}
 }
Index: java/org/l2jmobius/gameserver/model/actor/templates/NpcTemplate.java
===================================================================
--- java/org/l2jmobius/gameserver/model/actor/templates/NpcTemplate.java	(revision 7034)
+++ java/org/l2jmobius/gameserver/model/actor/templates/NpcTemplate.java	(working copy)
@@ -776,6 +776,12 @@
 					}
 				}
 				
+				// bonus drop rate effect
+				if (killer.getActingPlayer() != null)
+				{
+					rateChance *= killer.getActingPlayer().getStat().getBonusDropRateMultiplier();
+				}
+				
 				// calculate if item will drop
 				if ((Rnd.nextDouble() * 100) < (dropItem.getChance() * rateChance))
 				{
Index: java/org/l2jmobius/gameserver/model/stats/Stat.java
===================================================================
--- java/org/l2jmobius/gameserver/model/stats/Stat.java	(revision 7034)
+++ java/org/l2jmobius/gameserver/model/stats/Stat.java	(working copy)
@@ -88,6 +88,7 @@
 	EXPSP_RATE("rExp"),
 	BONUS_EXP("bonusExp"),
 	BONUS_SP("bonusSp"),
+	BONUS_DROP_RATE("bonusDropRate"),
 	ATTACK_CANCEL("cancel"),
 	
 	// ACCURACY & RANGE

set like here, still no effect from skill. What it is wrong?

Edited by 0flee

1 answer to this question

Recommended Posts

  • 0
Posted

Code looks legit. You should debug it. Run game server on your own pc, attach debugger, make breakpoints in parts of the code that you have added and figure out which part is incorrect.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


  • Posts

    • You dont get it... do you now. - read again.
    • What happened to them? Why they are disabled.. Just noticed that they are gone    @Maxtor @Celestine
    • If you want to make your thread stand out a bit more, adding quick proof pics or a small stock update usually helps buyers feel safer. I’ve had smoother chats with traders after doing that. On a side note, when I’m taking a break from trading, I mess around with the security puzzles in ModsCraft, which has been a fun way to clear my head between deals.
    • ━━━━━━━━━━━━━━━━━━━━━━ L2-SCRIPTS UPDATE ━━━━━━━━━━━━━━━━━━━━━━ Dear MaxCheaters users, We have updated the prices in the first post. Specially for the MaxCheaters community, we significantly reduced prices on many of our old developments, archived projects and source packs. Most of our older Lineage 2 sources are now much more affordable than before, including many Classic and Essence projects. This is a great opportunity for smaller teams, startup servers and developers who always wanted to work with our projects but previously could not afford them. ━━━━━━━━━━━━━━━━━━━━━━ For the past years we were mostly absent from the public scene because our team was working privately on large projects and contract-based development. During this time we accumulated a huge amount of private materials, systems, source codes, client modifications, website solutions and infrastructure developments that were never publicly released. Now, according to completed agreements and partnerships, we finally have the ability to publish and offer part of these materials as our private services and developments. In the upcoming weeks we will also publish a list of our works and services from the last 5 years of private development. ━━━━━━━━━━━━━━━━━━━━━━ Upcoming publications will include: • Private server development • Custom gameplay systems • Client modifications • Websites & ACP systems • Protection solutions • Infrastructure solutions • MMO / Web projects ━━━━━━━━━━━━━━━━━━━━━━ Thank you to everyone who stayed with us all these years.   Telegram:  @L2scripts Websites:  L2-scripts.com    L2-scripts.ru    Mmore.dev Sguard site:  Sguard   Best Regards! ━━━━━━━━━━━━━━━━━━━━━━
  • 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..