Jump to content

Recommended Posts

Posted

Well i saw that there is no stuff like this on the forum.

I know that's one of the easiest things to do with Announcements, but as it is required on the forum i'm posting it to stand here for those who need it.

 

That's a patch to autoannounce when a player kills another. Probably this is much more useful on a PvP or High-rated Servers.

 

Options allowed on pvp.properties:

AnnounceAllKills [true|false] : Every time that a player kills another player an announcement will appear. Doesn't matter if it is a Pk kill or a PvP kill.

(Announcement: Player A killed Player B)

 

AnnouncePvPKills [true|false]: Every time that a player win in a PvP fight an announcement will appear.

(Announcement: Player A hunted Player B)

 

AnnouncePkKills [true|false]: Every time that a player kill another and becomes a Pk (or increases its pk points) an announcement will appear.

(Announcement: Player A has assassinated Player B )

 

* Note that you can enable AnnouncePvPKills and AnnouncePkKills at the same time, but if AnnounceAllKills is enabled, AnnouncePvPKills and AnnouncePkKills will get disabled automatically.

 

* Note that AwardPKKillPVPPoint affects to the announcement (PvP). If the AwardPKKillPVPPoint option is disabled, when a good character kills a chaotic character the announcement won't appear.

 

* Feel free to change the messages as you want.

 

 

Index: C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/config/pvp.properties

===================================================================

--- C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/config/pvp.properties (revision 1156)

+++ C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/config/pvp.properties (working copy)

@@ -29,3 +29,11 @@

PvPVsNormalTime = 40000

# Length one stays in PvP mode after hitting a purple player (in ms)

PvPVsPvPTime = 20000

+

+# Announces when a Player PK another Player. Default - false

+AnnouncePkKill = false

+# Announces when a Player Pvp another Player. Default - false

+AnnouncePvPKill = false

+# Announces when a Player kill another Player. Default - false

+# NOTE: If AnnounceKill is enabled, AnnouncePk and AnnouncePvP will be disabled.  

+AnnounceAllKill = false

Index: C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/Config.java

===================================================================

--- C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/Config.java (revision 1156)

+++ C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/Config.java (working copy)

@@ -777,7 +777,13 @@

    /** Duration (in ms) while a player stay in PVP mode after hitting an innocent */

    public static int PVP_NORMAL_TIME;    

    /** Duration (in ms) while a player stay in PVP mode after hitting a purple player */

-    public static int PVP_PVP_TIME;    

+    public static int PVP_PVP_TIME;

+    /** Announce PvP */

+    public static boolean ANNOUNCE_PVP_KILL;

+    /** Announce PK */

+    public static boolean ANNOUNCE_PK_KILL;

+    /** Announce Kill */

+    public static boolean ANNOUNCE_ALL_KILL;

 

    // Karma Punishment

    /** Allow player with karma to be killed in peace zone ? */

@@ -1926,6 +1932,18 @@

 

                PVP_NORMAL_TIME = Integer.parseInt(pvpSettings.getProperty("PvPVsNormalTime", "15000"));

                PVP_PVP_TIME = Integer.parseInt(pvpSettings.getProperty("PvPVsPvPTime", "30000"));

+                ANNOUNCE_ALL_KILL = Boolean.parseBoolean(pvpSettings.getProperty("AnnounceAllKill", "False")); // Get the AnnounceAllKill, AnnouncePvpKill and AnnouncePkKill values

+                if ( !ANNOUNCE_ALL_KILL )

+                {

+                 ANNOUNCE_PVP_KILL = Boolean.parseBoolean(pvpSettings.getProperty("AnnouncePvPKill", "False"));

+                 ANNOUNCE_PK_KILL = Boolean.parseBoolean(pvpSettings.getProperty("AnnouncePkKill", "False"));

+                }

+                else

+                {

+                 ANNOUNCE_PVP_KILL = false;

+                 ANNOUNCE_PK_KILL = false;

+                }

+                

            }

            catch (Exception e)

            {

@@ -2323,6 +2341,9 @@

 

        else if (pName.equalsIgnoreCase("PvPVsNormalTime")) PVP_NORMAL_TIME = Integer.parseInt(pValue);

        else if (pName.equalsIgnoreCase("PvPVsPvPTime")) PVP_PVP_TIME = Integer.parseInt(pValue);

+        else if (pName.equalsIgnoreCase("AnnouncePvPKill") && !ANNOUNCE_ALL_KILL ) ANNOUNCE_PVP_KILL = Boolean.valueOf(pValue); // Set announce Pvp value

+        else if (pName.equalsIgnoreCase("AnnouncePkKill") && !ANNOUNCE_ALL_KILL ) ANNOUNCE_PK_KILL = Boolean.valueOf(pValue); // Set announce Pk value

+        else if (pName.equalsIgnoreCase("AnnounceAllKill") && !ANNOUNCE_PVP_KILL && !ANNOUNCE_PK_KILL ) ANNOUNCE_ALL_KILL = Boolean.valueOf(pValue); // Set announce kill value

        else if (pName.equalsIgnoreCase("GlobalChat")) DEFAULT_GLOBAL_CHAT = pValue;

        else if (pName.equalsIgnoreCase("TradeChat"))  DEFAULT_TRADE_CHAT = pValue;

        else if (pName.equalsIgnoreCase("MenuStyle"))  GM_ADMIN_MENU_STYLE = pValue;

Index: C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java

===================================================================

--- C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (revision 1156)

+++ C:/Documents and Settings/YO/workspace/L2_GameServer_It/java/net/sf/l2j/gameserver/model/actor/instance/L2PcInstance.java (working copy)

@@ -35,6 +35,7 @@

import javolution.util.FastMap;

import net.sf.l2j.Config;

import net.sf.l2j.L2DatabaseFactory;

+import net.sf.l2j.gameserver.Announcements;

import net.sf.l2j.gameserver.GameTimeController;

import net.sf.l2j.gameserver.GeoData;

import net.sf.l2j.gameserver.GmListTable;

@@ -4446,6 +4447,9 @@

)

{

            increasePvpKills();

+            if ( target instanceof L2PcInstance && Config.ANNOUNCE_PVP_KILL ) // Announces a PvP kill

+             Announcements.getInstance().announceToAll("Player "+this.getName()+" hunted Player "+target.getName());

+            return;

}

else                                                                        // Target player doesn't have pvp flag set

{

@@ -4458,6 +4462,10 @@

                    {

                        // 'Both way war' -> 'PvP Kill'

                        increasePvpKills();

+                        if ( target instanceof L2PcInstance && Config.ANNOUNCE_PVP_KILL ) // Announces a PvP kill

+                         Announcements.getInstance().announceToAll("Player "+this.getName()+" hunted Player "+target.getName());

+                        else if ( target instanceof L2PcInstance && Config.ANNOUNCE_ALL_KILL ) // Announces a kill

+                         Announcements.getInstance().announceToAll("Player "+this.getName()+" killed Player "+target.getName());

                        return;

                    }

                }

@@ -4469,13 +4477,19 @@

if ( Config.KARMA_AWARD_PK_KILL )

{

                    increasePvpKills();

+                    if ( target instanceof L2PcInstance && Config.ANNOUNCE_PVP_KILL ) // Announces a PvP kill

+                     Announcements.getInstance().announceToAll("Player "+this.getName()+" hunted Player "+target.getName());

}

}

else if (targetPlayer.getPvpFlag() == 0)                                                                    // Target player doesn't have karma

{

                increasePkKillsAndKarma(targetPlayer.getLevel());

+                if ( target instanceof L2PcInstance && Config.ANNOUNCE_PK_KILL ) // Announces a Pk kill

+                 Announcements.getInstance().announceToAll("Player "+this.getName()+" has assassinated Player "+target.getName());

}

}

+ if ( target instanceof L2PcInstance && Config.ANNOUNCE_ALL_KILL ) // Announces a kill

+ Announcements.getInstance().announceToAll("Player "+this.getName()+" killed Player "+target.getName());

}

 

    /**

credits:l2jforum i dont remember name

this works on l2j

enjoy ;)

 

 

Posted

Very Nice Share.. But I have saw it in Any Pack anymore... So .... Anyway Gratz for your Work!

 

i dont know what are u talking about but this isnt at packs,this is to announce names when someone kill somebody

Posted

i dont know what are u talking about but this isnt at packs,this is to announce names when someone kill somebody

 

you are the creator of this code?

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
Reply to this topic...

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




  • Posts

    • "Just make your own game!" sounds simple until you’ve tried it. I did, with Epic Dragon World and learned the hard way that "open source" often means "free labor for resellers." The MIT license became a buffet for people to grab code, rebrand it and ghost the project. Even basic collaboration collapsed because everyone wanted their vision, not *a* vision. NCSoft’s lawyers aren’t theoretical. They’re a sword of Damocles. Even if you rebuild a client from scratch, if it feels like Lineage 2, they’ll come knocking. Ask the Chrono Trigger fangame corpses how that goes. MMOs are hospice care. The genre’s on life support, kept alive by whales and nostalgia. Look at Throne and Liberty, NCSoft’s own "successor" to L2, flopping harder than a 2004 PKer in ToI. Classic reboots (WoW, L2) are bandaids, not resurrections. This is the hobby. Optimizing old systems, reverse-engineering spaghetti code and preserving janky mechanics is the fun part. Monetizing it turns it into customer service hell. No thanks. Community? What community? The L2 scene is 90% resellers, 10% players who’ll quit the second they don’t get +16 on day one. Both asking how to install Java and why running the uncompiled server does not work.
    • Dear players, Open beta test for C3 begins today at 19:00 server time (GMT +2). 💰 All participants who find bugs during OBT will be rewarded with Coin of Luck (CoL): - 1 CoL for each staticmesh issue found — e.g., walking through textures, etc., - 2 CoL or more for server-side issues, depending on their severity., We strongly recommend reviewing the quest list - when switching to Chronicle 3, the total number of quests should match the number shown in the upper right corner of the window and correspond to the quest count from Chronicle 2. To log into the game, use the same data you use to access the Airin server. 📌 Download client: Google Drive
    • 🔥 Sale Alert! 🔥 Twitter Accounts with 50 Followers — now on SALE! Looking to launch a project or warm up your account base fast? We’ve got starter Twitter accounts with ~50 followers at a sweet price. 💰 Limited-time offer – while stock lasts! ✅ Organic-Looking ✅ Clean & Safe ✅ Perfect for boosting credibility 📦 Instant delivery
    • Dear friends, right now we are holding a grand competition with a prize fund of more than $ 1000 in our stores https://socnet.store , telegram store: https://socnet.shop and SMM panel: https://socnet.pro There are more than 50 prize places in our competition, each lucky person can take one of the places. Important condition: you must make a purchase at any time before June 1, 2025. The more purchases you make - the more chances you have to win the main prize in the community of $ 300! ➡ Our Online Shop: socnet.store  ➡ Our SMM-Boosting Panel: socnet.pro  ➡ Telegram Shop Bot: socnet.shop  ➡ Telegram Support: https://t.me/solomon_bog  ➡ Telegram Channel: https://t.me/accsforyou_shop  ➡ Discord Support: @AllSocialNetworksShop  ➡ Discord Server: https://discord.gg/y9AStFFsrh  ➡ WhatsApp Support: 79051904467 ➡ WhatsApp Channel: https://whatsapp.com/channel/0029Vau0CMX002TGkD4uHa2n  ➡ Email Support: solomonbog@socnet.store 
  • 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