Kяaσh Posted December 26, 2009 Posted December 26, 2009 if someone kill the some character more than 1 time dont take pvp point Index: src/main/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java =================================================================== --- src/main/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 7252) +++ src/main/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (working copy) @@ -731,7 +731,9 @@ private boolean _IsWearingFormalWear = false; // Current force buff this caster is casting to a target - protected ForceBuff _forceBuff; + protected ForceBuff _forceBuff; + + private int _lastKillerId = 0; /** Skill casting information (used to queue when several skills are cast in a short time) **/ public class SkillDat @@ -4498,7 +4500,8 @@ ) ) { - increasePvpKills(); + if (targetPlayer.getLastKillerId() != getObjectId()) + increasePvpKills(); // give faction pvp points if (Config.FACTION_ENABLED && targetPlayer.getSide() != getSide() @@ -4533,7 +4536,8 @@ if (clanWarKill) { // 'Both way war' -> 'PvP Kill' - increasePvpKills(); + if (targetPlayer.getLastKillerId() != getObjectId()) + increasePvpKills(); return; } @@ -4550,6 +4554,7 @@ increasePkKillsAndKarma(targetPlayer.getLevel()); } } + targetPlayer.setLastKillerId(getObjectId()); } /** @@ -11194,4 +11199,14 @@ public void updateFOSTitleFlag(){ FortressSiege.setTitleSiegeFlags(this); } + + public final int getLastKillerId() + { + return _lastKillerId; + } + + public final void setLastKillerId(int id) + { + _lastKillerId = id; + } } credits Savormix // Check if it's pvp String attacker = getClient().getConnection().getInetAddress().getHostAddress(); String attacked = targetPlayer.getClient().getConnection().getInetAddress().getHostAddress(); if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } if ( ( checkIfPvP(target) && // Can pvp and targetPlayer.getPvpFlag() != 0 // Target player has pvp flag set ) || // or ( isInsideZone(ZONE_PVP) && // Player is inside pvp zone and targetPlayer.isInsideZone(ZONE_PVP) // Target player is inside pvp zone ) ) { increasePvpKills(); } else // Target player doesn't have pvp flag set { // check about wars if (targetPlayer.getClan() != null && getClan() != null) { if (getClan().isAtWarWith(targetPlayer.getClanId())) { if (targetPlayer.getClan().isAtWarWith(getClanId())) { // 'Both way war' -> 'PvP Kill' increasePvpKills(); return; } } } // 'No war' or 'One way war' -> 'Normal PK' if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } else if (targetPlayer.getKarma() > 0) // Target player has karma { if ( Config.KARMA_AWARD_PK_KILL ) { increasePvpKills(); } } else if (targetPlayer.getPvpFlag() == 0) // Target player doesn't have karma { if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } Osiris Code Quote
dodoman1 Posted December 26, 2009 Posted December 26, 2009 and if mass pvp?better make it with same ip / nice share although Quote
Grim. Posted December 26, 2009 Posted December 26, 2009 well it is kinda useless anyway thanks for the share Quote
BS® Posted December 26, 2009 Posted December 26, 2009 On 12/26/2009 at 3:58 PM, MaCε said: well it is kinda useless anyway thanks for the share yes i must agree with MaCε,its a bit useless ... Quote
Mr.Reese Posted December 26, 2009 Posted December 26, 2009 Thanks for post this share..Is realy good and is good for Farm Spots Good Luck And Merry Christmass Quote
xepimetheus Posted December 26, 2009 Posted December 26, 2009 Thnx For Share Krash =) Good Job and Merry Christmas dude :D Quote
Kяaσh Posted December 27, 2009 Author Posted December 27, 2009 i know is useless for normal servers,but for faction server isn't useless Quote
Grim. Posted December 27, 2009 Posted December 27, 2009 well now i'll have to agry with krash^^ Quote
Stewie® Posted December 27, 2009 Posted December 27, 2009 if someone kill the some character more than 1 time dont take pvp point (lol) well for faction server's it may be good (propablY) but for the boting pvp protection you can make something else like : if someone try to increase his pvp point's from the SAME IP ADDRESS // Check if it's pvp String attacker = getClient().getConnection().getInetAddress().getHostAddress(); String attacked = targetPlayer.getClient().getConnection().getInetAddress().getHostAddress(); if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } if ( ( checkIfPvP(target) && // Can pvp and targetPlayer.getPvpFlag() != 0 // Target player has pvp flag set ) || // or ( isInsideZone(ZONE_PVP) && // Player is inside pvp zone and targetPlayer.isInsideZone(ZONE_PVP) // Target player is inside pvp zone ) ) { increasePvpKills(); } else // Target player doesn't have pvp flag set { // check about wars if (targetPlayer.getClan() != null && getClan() != null) { if (getClan().isAtWarWith(targetPlayer.getClanId())) { if (targetPlayer.getClan().isAtWarWith(getClanId())) { // 'Both way war' -> 'PvP Kill' increasePvpKills(); return; } } } // 'No war' or 'One way war' -> 'Normal PK' if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } else if (targetPlayer.getKarma() > 0) // Target player has karma { if ( Config.KARMA_AWARD_PK_KILL ) { increasePvpKills(); } } else if (targetPlayer.getPvpFlag() == 0) // Target player doesn't have karma { if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } this is the protection for same IP w/e and your's it's correct Quote
Kяaσh Posted December 27, 2009 Author Posted December 27, 2009 On 12/27/2009 at 6:39 AM, Stewie® said: if someone kill the some character more than 1 time dont take pvp point (lol) well for faction server's it may be good (propablY) but for the boting pvp protection you can make something else like : if someone try to increase his pvp point's from the SAME IP ADDRESS // Check if it's pvp String attacker = getClient().getConnection().getInetAddress().getHostAddress(); String attacked = targetPlayer.getClient().getConnection().getInetAddress().getHostAddress(); if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } if ( ( checkIfPvP(target) && // Can pvp and targetPlayer.getPvpFlag() != 0 // Target player has pvp flag set ) || // or ( isInsideZone(ZONE_PVP) && // Player is inside pvp zone and targetPlayer.isInsideZone(ZONE_PVP) // Target player is inside pvp zone ) ) { increasePvpKills(); } else // Target player doesn't have pvp flag set { // check about wars if (targetPlayer.getClan() != null && getClan() != null) { if (getClan().isAtWarWith(targetPlayer.getClanId())) { if (targetPlayer.getClan().isAtWarWith(getClanId())) { // 'Both way war' -> 'PvP Kill' increasePvpKills(); return; } } } // 'No war' or 'One way war' -> 'Normal PK' if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } else if (targetPlayer.getKarma() > 0) // Target player has karma { if ( Config.KARMA_AWARD_PK_KILL ) { increasePvpKills(); } } else if (targetPlayer.getPvpFlag() == 0) // Target player doesn't have karma { if (attacker.equals(attacked)) { sendMessage("What you though? You cannot use dumb exploit's NOOB!"); return; } this is the protection for same IP w/e and your's it's correct lolz0r is so hard to understand the code? the code means you cant take pvp if you kill more than 1 time the some character not from the some ip.... Quote
Intrepid Posted December 27, 2009 Posted December 27, 2009 same ip protection in big servers highly increase the network traffic...conclusion not a good idea to have it Quote
Versus Posted December 27, 2009 Posted December 27, 2009 On 12/27/2009 at 1:25 PM, Intrepid said: same ip protection in big servers highly increase the network traffic...conclusion not a good idea to have it I had it on dw and there was no problem. Quote
Intrepid Posted December 27, 2009 Posted December 27, 2009 On 12/27/2009 at 2:02 PM, fakoykas said: I had it on dw and there was no problem. depends on inet connection of the server and player number so... Quote
Stewie® Posted December 27, 2009 Posted December 27, 2009 On 12/27/2009 at 11:12 AM, KяaSh™ said: lolz0r is so hard to understand the code? the code means you cant take pvp if you kill more than 1 time the some character not from the some ip.... but for the boting pvp protection you can make something else like : if someone try to increase his pvp point's from the SAME IP ADDRESS First of all learn to read Second start to learn English understood Mr. Krashito? Quote
Street-Gamer Posted December 27, 2009 Posted December 27, 2009 w00ww great ... thanks very usefull Quote
Recommended Posts
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.