Jump to content

[Share]Class Based PvP Reward System & Party Reward System


Recommended Posts

Posted

Hello, i wanna share my Class based PvP System and Party Reward System.

Its a Simple System IT dosent Require much l2j Coding Knowledge

Its set to 3 Category's Mages,Dwarfs,Fighters

Its only for 3rd class players atm.

You can Reward players whit the Items they need for thier Class

Party reward system Rewards Support Classes(healer/Buffers) whit a item when they Engage in pvp while beign in a party(only if someone from the party kills another player)

I added Config for nearly everything it was supposed to be givin to non java knowledge people.

So dont cry about useless configs

Screen

Mage: http://img705.imageshack.us/img705/1358/shot00001vr.jpg

Dwarf: http://img295.imageshack.us/img295/6017/shot00003a.jpg

Fighter: http://img822.imageshack.us/img822/2734/shot00002ad.jpg

 

Here Full code inc Configs :  http://pastebin.com/ryhNPpUd

 

Here only code from pcinstance

 

Index: C:/Dokumente und Einstellungen/michael/workspace2/L2J/L2_GameServer_It/java/net/sf/l2jgameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- C:/Dokumente und Einstellungen/michael/workspace2/L2J/L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(revision 206)
+++ C:/Dokumente und Einstellungen/michael/workspace2/L2J/L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java	(working copy)

@@ -5297,12 +5339,136 @@
               // Add karma to attacker and increase its PK counter
		setPvpKills(getPvpKills() + 1);
+		
+        
+        // Dwarfs Advanced PvP Reward System   
+        if ( Config.DWARFREWARD && (Rnd.get(100) < Config.DWARFREWARDCHANCE))
+		{
+		if (getClassId().getId() == 118 ||getClassId().getId() == 117)
+		{
+		    int[][] items = { {Config.DWARF_REWARD1, Config.DWARF_REWARD_AMMOUNT1}, {Config.DWARF_REWARD2, Config.DWARF_REWARD_AMMOUNT2}, {Config.DWARF_REWARD3, Config.DWARF_REWARD_AMMOUNT3}, {Config.DWARF_REWARD4, Config.DWARF_REWARD_AMMOUNT4}, {Config.DWARF_REWARD5, Config.DWARF_REWARD_AMMOUNT5}, {Config.DWARF_REWARD6, Config.DWARF_REWARD_AMMOUNT6}, {Config.DWARF_REWARD7, Config.DWARF_REWARD_AMMOUNT7}, {Config.DWARF_REWARD8, Config.DWARF_REWARD_AMMOUNT8}, {Config.DWARF_REWARD9, Config.DWARF_REWARD_AMMOUNT9}, {Config.DWARF_REWARD10, Config.DWARF_REWARD_AMMOUNT10} };
+
+		    int[] ar = items[Rnd.get(10)]; // gets a random array(containing itemid and count) items array
+
+			addItem("StartUp",  ar[0], ar[1], this, true);
+			sendMessage("You Earned a Dwarf Item as Reward");
+		}
+		}
+		
+		// Mages Advanced PvP Reward System	
+        // For all Mage Users Healers,Buffers,Mages
+		if ( Config.MAGEREWARD && (Rnd.get(100) < Config.MAGEREWARDCHANCE))
+		{
+		if (getClassId().getId() == 116 ||getClassId().getId() == 115 ||getClassId().getId() == 112 ||getClassId().getId() == 111 ||getClassId().getId() == 110 ||getClassId().getId() == 105 ||getClassId().getId() == 104 || getClassId().getId() == 103 ||getClassId().getId() == 98 ||getClassId().getId() == 97 ||getClassId().getId() == 96 ||getClassId().getId() == 95 ||getClassId().getId() == 94)
+		{
+		    int[][] items = { {Config.MAGE_REWARD1, Config.MAGE_REWARD_AMMOUNT1}, {Config.MAGE_REWARD2, Config.MAGE_REWARD_AMMOUNT2}, {Config.MAGE_REWARD3, Config.MAGE_REWARD_AMMOUNT3}, {Config.MAGE_REWARD4, Config.MAGE_REWARD_AMMOUNT4}, {Config.MAGE_REWARD5, Config.MAGE_REWARD_AMMOUNT5}, {Config.MAGE_REWARD6, Config.MAGE_REWARD_AMMOUNT6}, {Config.MAGE_REWARD7, Config.MAGE_REWARD_AMMOUNT7}, {Config.MAGE_REWARD8, Config.MAGE_REWARD_AMMOUNT8}, {Config.MAGE_REWARD9, Config.MAGE_REWARD_AMMOUNT9}, {Config.MAGE_REWARD10, Config.MAGE_REWARD_AMMOUNT10} };
+
+		    int[] ar = items[Rnd.get(10)]; // gets a random array(containing itemid and count) items array
+
+			addItem("StartUp",  ar[0], ar[1], this, true);
+			sendMessage("You Earned a Mage Item as Reward");
+		}
+		}
+		
+		// Fighers Advanced PvP Reward System
+		// This is for All Fighter Classes(Tanks,Archers,Daggers etc.)
+		if ( Config.FIGHTERREWARD && (Rnd.get(100) < Config.FIGHTERREWARDCHANCE))
+		{
+		if (getClassId().getId() == 114 ||getClassId().getId() == 113 ||getClassId().getId() == 109 ||getClassId().getId() == 108 ||getClassId().getId() == 107 ||getClassId().getId() == 106 ||getClassId().getId() == 102 ||getClassId().getId() == 101 ||getClassId().getId() == 100 ||getClassId().getId() == 99 ||getClassId().getId() == 93 ||getClassId().getId() == 92 ||getClassId().getId() == 91 ||getClassId().getId() == 90 ||getClassId().getId() == 89 ||getClassId().getId() == 88 )
+		{
+		    int[][] items = { {Config.FIGHTER_REWARD1, Config.FIGHTER_REWARD_AMMOUNT1}, {Config.FIGHTER_REWARD2, Config.FIGHTER_REWARD_AMMOUNT2}, {Config.FIGHTER_REWARD3, Config.FIGHTER_REWARD_AMMOUNT3}, {Config.FIGHTER_REWARD4, Config.FIGHTER_REWARD_AMMOUNT4}, {Config.FIGHTER_REWARD5, Config.FIGHTER_REWARD_AMMOUNT5}, {Config.FIGHTER_REWARD6, Config.FIGHTER_REWARD_AMMOUNT6}, {Config.FIGHTER_REWARD7, Config.FIGHTER_REWARD_AMMOUNT7}, {Config.FIGHTER_REWARD8, Config.FIGHTER_REWARD_AMMOUNT8}, {Config.FIGHTER_REWARD9, Config.FIGHTER_REWARD_AMMOUNT9}, {Config.FIGHTER_REWARD10, Config.FIGHTER_REWARD_AMMOUNT10} };
+
+		    int[] ar = items[Rnd.get(10)]; // gets a random array(containing itemid and count) items array
+
+			addItem("StartUp",  ar[0], ar[1], this, true);
+			sendMessage("You Earned a Fighter Item as Reward");
+		}
+		}
+		// Advanced Party pvp Reward System
+		// this is for both healers and buffers
+	    if ( Config.HEALERBUFFERPARTYPVPREWARD && (Rnd.get(100) < Config.HEALERBUFFERPARTYPVPREWARDCHANCE))
+		 {
+			if (getParty() != null)
+	        {
+
+			  for (L2PcInstance member : getParty().getPartyMembers())
+	           {
+
+			    if (member.getClassId().getId() == 116 || member.getClassId().getId() == 115 ||member.getClassId().getId() == 112 ||member.getClassId().getId() == 105 ||member.getClassId().getId() == 98 ||member.getClassId().getId() == 97) 
+			    {
+			    	int[][] items = { {Config.PARTY_REWARD1, Config.PARTY_REWARD_AMMOUNT1}, {Config.PARTY_REWARD2, Config.PARTY_REWARD_AMMOUNT2}, {Config.PARTY_REWARD3, Config.PARTY_REWARD_AMMOUNT3}, {Config.PARTY_REWARD4, Config.PARTY_REWARD_AMMOUNT4}, {Config.PARTY_REWARD5, Config.PARTY_REWARD_AMMOUNT5}, {Config.PARTY_REWARD6, Config.PARTY_REWARD_AMMOUNT6}, {Config.PARTY_REWARD7, Config.PARTY_REWARD_AMMOUNT7}, {Config.PARTY_REWARD8, Config.PARTY_REWARD_AMMOUNT8}, {Config.PARTY_REWARD9, Config.PARTY_REWARD_AMMOUNT9}, {Config.PARTY_REWARD10, Config.PARTY_REWARD_AMMOUNT10} };
+
+			    int[] ar = items[Rnd.get(10)]; // gets a random array(containing itemid and count) items array
+
+				member.addItem("Loot",  ar[0], ar[1], this, true);
+				member.sendMessage("You Earned a Party Item as Reward");
+			    }
+	             }
+	        }
+	   }
+	    
+	    
	// PvP Reward System Random items

 

Credits : ME

Posted

Final you share it,btw as i told ya in msn nice work.

Ps: Hide it for 500 posts or for 3 karma.

All noobs srvs now will have this system.

 

 

Posted

Final you share it,btw as i told ya in msn nice work.

Ps: Hide it for 500 posts or for 3 karma.

All noobs srvs now will have this system.

 

EDIT: you dont have put the configs -_-

 

told ya i made configs for everything, just remove the Config. i see no Point in hiding it. Everyone can use it who want it

Posted

typo on

int[][] items = { {Config.DWARF_REWARD1, Config.DWARF_REWARD_AMMOUNT1}, {Config.DWARF_REWARD2, Config.DWARF_REWARD_AMMOUNT2}, {Config.DWARF_REWARD3, Config.DWARF_REWARD_AMMOUNT3}, {Config.DWARF_REWARD4, Config.DWARF_REWARD_AMMOUNT4}, {Config.DWARF_REWARD5, Config.DWARF_REWARD_AMMOUNT5}, {Config.DWARF_REWARD6, Config.DWARF_REWARD_AMMOUNT6}, {Config.DWARF_REWARD7, Config.DWARF_REWARD_AMMOUNT7}, {Config.DWARF_REWARD8, Config.DWARF_REWARD_AMMOUNT8}, {Config.DWARF_REWARD9, Config.DWARF_REWARD_AMMOUNT9}, {Config.DWARF_REWARD1, Config.DWARF_REWARD_AMMOUNT10} };

Posted

typo on

int[][] items = { {Config.DWARF_REWARD1, Config.DWARF_REWARD_AMMOUNT1}, {Config.DWARF_REWARD2, Config.DWARF_REWARD_AMMOUNT2}, {Config.DWARF_REWARD3, Config.DWARF_REWARD_AMMOUNT3}, {Config.DWARF_REWARD4, Config.DWARF_REWARD_AMMOUNT4}, {Config.DWARF_REWARD5, Config.DWARF_REWARD_AMMOUNT5}, {Config.DWARF_REWARD6, Config.DWARF_REWARD_AMMOUNT6}, {Config.DWARF_REWARD7, Config.DWARF_REWARD_AMMOUNT7}, {Config.DWARF_REWARD8, Config.DWARF_REWARD_AMMOUNT8}, {Config.DWARF_REWARD9, Config.DWARF_REWARD_AMMOUNT9}, {Config.DWARF_REWARD1, Config.DWARF_REWARD_AMMOUNT10} };

 

ups ^^ sorry fixed

  • 2 weeks later...
Posted

i like it ty for the share mate.

 

np.

 

btw ifs set to 3rd class only, just check out the char temp and add all classes if you want.

 

 

getClassId().getId() == CLASSID ||getClassId().getId() == CLASSID and and and...

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

    • Hello everyone, we now have Adena for these projects: l2rebon signature x1 - 1kk = $0.8 l2reborn x10 - 500kk = $3.5 E-Global x Lu4 - 1kk = $1.8 ElmoreLab x5 - 1kk = $1.7 DISCORD - GODDARDSHOP
    • 2 euros/h I will need you to mostly follow my main with 3 chars logged from same computer and respond to my messages. Payments daily via paypal. Estimated number of hours needed: 30 I basically need someone to help me boost my supports first 3 days of server's grand opening. Server is opening this Friday at 6pm Paris time and I need you until midnight on Friday and ~12h on Saturday and ~12h on Sunday. Add me on telegram if interested @nikola91ns
    • 📢 L2Elixir Open Beta Announcement Get ready! The Open Beta starts on Saturday, November 15th at 21:00 (UTC +2). Don’t miss it — follow the countdown on our official website! Now then, we present to you our OPEN BETA exclusive event:   Here’s how it works briefly: 1) An NPC named ‘The Judge’ will spawn in Giran for the first 30 minutes of the OPEN BETA. This NPC will spawn at exactly 21:00 UTC+2 on Saturday 15th November 2025. 2) Interact with this NPC and your master account will be given special privileges to obtain Legendary starter pack for all game accounts created. 3) Having spoken to the NPC will allow for all new characters to start with a legendary starter pack on the official launch day on 28th November 2025, 21:00 UTC+2. 4) ‘The Judge’ will reward the first 2 players and 2 more Random participants with a PREMIUM Account which will be activated on 28th November 2025!!! 4) Send message to @Ray on Forum or Discord with your Forum name to get Legendary Role on Discord! Good luck! Legendary starter pack:
    • Hello everyone!   The gates of Aden are opening, prepare for the ultimate adventure and claim your place among legends. Our server launch is getting closer.. Adventurers of Aden, the wait is over! On November 28th, 2025, a new era begins. Get ready to step into the epic world of Lineage 2, where legends are forged, battles are relentless, and glory awaits the brave. https://www.l2ertheia.eu/news:server-launch/
    • - New Features in Anosim https://anosim.net -   You can now share your numbers with others via a unique link - no need to give them access to your account! How to Share Number https://prnt.sc/K83lxOjS-Fyb   How to Revoke Accsess: https://prnt.sc/jkVIQS2lhxvA   --- --- --- --- --- --- --- New OTP / SMS Activation Locations: - USA  - Australia - Honduras - Kenia
  • Topics

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