Jump to content
  • 0

Who Know Java Code Killing Spree


Question

Posted (edited)

Hallo Guys I want make killing spree

 

this code

 

ndex: java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java	(revision 4638)
+++ java/com/l2jserver/gameserver/model/actor/instance/L2PcInstance.java	(working copy)


@@ -243,6 +243,7 @@
import com.l2jserver.gameserver.network.serverpackets.UserInfo;
import com.l2jserver.gameserver.skills.AbnormalEffect;
import com.l2jserver.gameserver.skills.Env;
+import com.l2jserver.gameserver.network.serverpackets.ExShowScreenMessage;
import com.l2jserver.gameserver.skills.Formulas;
import com.l2jserver.gameserver.skills.Stats;
import com.l2jserver.gameserver.skills.l2skills.L2SkillSiegeFlag;

@@ -5664,14 +5737,63 @@
	 * Increase the pvp kills count and send the info to the player
	 *
	 */
+		private int impro = 0;
	public void increasePvpKills(L2Character target)
	{
		if (target instanceof L2PcInstance
				&& AntiFeedManager.getInstance().check(this, target))
		{
+					impro++;
+					        
+					       switch(impro){
+					       
+					                case 3:
+			   				ExShowScreenMessage case3 = new ExShowScreenMessage("You reached 3 killing spree!", 10000);
+			   				sendPacket(case3);
+							Announcements.getInstance().announceToAll("Player: " + getName() + " :Just got a Triple Kill!");
+			   				break;
+			   				
+							case 5:
+			   				ExShowScreenMessage case5 = new ExShowScreenMessage("You reached 5 killing spree!", 10000);
+			   				sendPacket(case5);
+							Announcements.getInstance().announceToAll("Player: " + getName() + " :Just got an Ultra Kill!");
+			   				break;
+			   				
+							case 10:
+			   				ExShowScreenMessage case10 = new ExShowScreenMessage("You reached 10 killing spree!", 10000);
+			   				sendPacket(case10);
+			   				Announcements.getInstance().announceToAll("Player: " + getName() + " :reached 10 kill in a row!");
+			   				break;
+			   				
+							case 15:
+			  				ExShowScreenMessage case15 = new ExShowScreenMessage("You reached 15 killing spree!", 10000);
+			   				sendPacket(case15);
+			   				Announcements.getInstance().announceToAll("Player: " + getName() + " :reached 15 kill in a row!");
+			  				break;
+			   				
+							case 20:
+			   				ExShowScreenMessage case20 = new ExShowScreenMessage("You reached 20 killing spree!", 10000);
+			   				sendPacket(case20);
+			   				Announcements.getInstance().announceToAll("Player: " + getName() + " :reached 20 kill in a row!");
+			   				break;
+			  				
+							case 25:
+			   				ExShowScreenMessage case25 = new ExShowScreenMessage("You reached 25 killing spree!", 10000);
+			   				sendPacket(case25);
+			  				Announcements.getInstance().announceToAll("Player: " + getName() + " :reached 25 kill in a row!");
+			   				break;
+					          default:
+					           ;
+					        }
+				
+			


@@ -13495,6 +13639,8 @@
					setCurrentFeed(0);
					stopFeed();
					dismount();
+							
+							impro = 0;
					sendPacket(SystemMessage.getSystemMessage(SystemMessageId.OUT_OF_FEED_MOUNT_CANCELED));
				}

But not when he dies but with time  1 min 

 

impro = 0;  <<<< 1 min

 

Edited by MegaCheat

8 answers to this question

Recommended Posts

  • 1
Posted

 

Btw, you don't need to announce/screenmessage the pvp count in every line. 

  • 0
Posted
1- You store a Future _spreeTask on the Player level (your impro variable should be named _impro, btw).
2 - You cancel it and relaunch it on every kill :

if (_spreeTask != null)
_spreeTask.cancel(false);

_spreeTask = ThreadPool.schedule(() -> _impro = 0, 60000L);

Basically, if you kill someone, it will cancel current task and reschedule it with a fresh timer. If you want to avoid to make one task per Player, you can also handled it using a Manager (similar to multiple other timed stuff : pvp, random animation timer, or even movement in default L2J...), where you register all Players on a 1sec task manager and test each of those every second.
  • 0
Posted
9 hours ago, Tryskell said:

1- You store a Future _spreeTask on the Player level (your impro variable should be named _impro, btw).
2 - You cancel it and relaunch it on every kill :

if (_spreeTask != null)
_spreeTask.cancel(false);

_spreeTask = ThreadPool.schedule(() -> _impro = 0, 60000L);

Basically, if you kill someone, it will cancel current task and reschedule it with a fresh timer. If you want to avoid to make one task per Player, you can also handled it using a Manager (similar to multiple other timed stuff : pvp, random animation timer, or even movement in default L2J...), where you register all Players on a 1sec task manager and test each of those every second.

you talk to him like he is a casual Senior Java developer even tho you are right i dont think he will understand 😕

 

49 minutes ago, &#x27;Baggos&#x27; said:

 

Btw, you don't need to announce/screenmessage the pvp count in every line. 

nice job buddy

 

  • 0
Posted (edited)
3 hours ago, MegaCheat said:

thanks guys very mutch

the problem is chronical Hi5

Just changes the imports. Only in KillingSpreeTaskManager you get errors.

Remove imports, rename Player to L2PcInstance and press Ctrl + Shift + O

 

Instead of var change it to int

Remove:

World.announceToOnlinePlayers("Player " + getName() + ": reached " + value + " kills in a row!", true);

 

And put

Announcements.getInstance().announceToAll("Player " + getName() + ": reached " + value + " kills in a row!", true);

Edited by 'Baggos'
  • 0
Posted (edited)

private int _killCount;
private long _killTime;
 

public void increasePvpKills(L2Character target)
{
    if (target instanceof L2PcInstance && AntiFeedManager.getInstance().check(this, target))
    {

        if (_killTime < System.currentTimeMillis())
            _killCount = 0;
 

        _killCount++;
        _killTime = System.currentTimeMillis() + 60000L;

 
There is no need for any task @MegaCheat

Edited by StinkyMadness
Guest
This topic is now closed to further replies.


  • Posts

    • Very nice attempt and good luck with your sales.   Don't let the voices in this topic discourage you. Most of those people are just flexing. So if Celestine decides to write a bootkit or hook system calls or whatever and false-feed your anti-cheat fake info just because it sits in user mode just to go play in a private server with 100 people, I'll tell you one thing:   Who the fuck cares ... 😛   The average player won't / can't make these things, the big players like adrenaline won't bother (yet) (they don't have signed drivers do they ? They also run in user mode I believe). And even if they somehow manage to do so, there's a minority of players who would trust putting this thing on their pc. I wouldn't let anyone tamper with my kernel mode even if he had a signed certificate from Microsoft.    Also, in a scene where collusion has been brought out between bot makers and cheat guards, having many options is a blessing regardless of their strength. It makes colusion, conflict of interest and cartel more difficult, it drains from cheating software creators more resources to focus on more cheat guards, and it gives server owners plurality.    This arms race is a numbers game, you stop 90% of the cheaters you add value to all of us.    A couple of senior devs flexing their powers in a forum are not a concern.   If i'd ever make a server, I would definitelly buy from you, not because you have the best anti-cheat, but because you are not well known yet to be the focus of counter measures.     
    • TILL OPENING LEFT LESS THAN - 2 DAYS ! GRAND OPENING FROM - 10/07/2026, FRIDAY, 20:00 +3 GMT !
    • Add me on discord, lets talk   Discord: splicho
    • Add more information about your project, client, rates etc, this can help you find a developer more easily on your needs!
    • Hey guys! I am working on a new l2 private server and lookin for any developers who may be interested in helping me get it up n running. It would require a ton of work at the beginning, but once I am able to handle things on my own, I can do a lot of the work too. I just need someone who is tech savy to help me get things setup, make serious edits, and help me get this project going.   So far I have the project running on Java through eclipse. I have the server up locally, and pushing to GitHub. I just need help with managing edits to quests, skills, and other random functions to get me rolling.   Please reach out if you are interested!   Some current content I am working on: - Class skill edits - NPC skills, stats, and placements - Quest icons for turn in, completion, pick up etc - Quest logic (i.e. kill x mobs, turn in y amount, trigger a mini solo or mini group boss fights) I can handle the quest texts and story - Ability to more quickly upload changes to inventory, crafting, NPC stats/drops, etc... and gear setup. I would like to quickly add new recipes to shops or mob drops so players can start crafting it themselves
  • 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..