Jump to content
  • 0

PvP/PK Count on title


DEVILMSTAR1

Question

14 answers to this question

Recommended Posts

  • 0
1 hour ago, Bru7aLMike said:

A hint: look for the title element in CharInfo.java and UserInfo.java.

can you give me more directions about where a can find those? char and user?

Link to comment
Share on other sites

  • 0
57 minutes ago, DEVILMSTAR said:

can you give me more directions about where a can find those? char and user?

The fact that you are asking for more directions leads me to believe that you might not be able to do it by yourself, regardless of how many directions you are given.

Anyway, here you go:

1. Locate the UserInfo packet in the core of your server. This packet is responsible for what is sent from the server to your active game client/character, or in other words what you see on your character.
2. Locate the CharInfo packet (responsible for what is sent/shown to everybody else)
3. In both packets, locate the "writeS(_title)" or "writeString(_title)" if you are using Mobius
4. These two packet elements send a string of characters to the client. Manipulate them at will.

Edited by Bru7aLMike
Link to comment
Share on other sites

  • 0
44 minutes ago, Bru7aLMike said:

The fact that you are asking for more directions leads me to believe that you might not be able to do it by yourself, regardless of how many directions you are given.

Anyway, here you go:

1. Locate the UserInfo packet in the core of your server. This packet is responsible for what is sent from the server to your active game client/character, or in other words what you see on your character.
2. Locate the CharInfo packet (responsible for what is sent/shown to everybody else)
3. In both packets, locate the "writeS(_title)" or "writeString(_title)" if you are using Mobius
4. These two packet elements send a string of characters to the client. Manipulate them at will.

thank you for reply me also ... i found this code and i try to adapt it for my acis pack 

please tell me your oppinion on that code.

 

Index: config/mods/customs.properties
===================================================================
--- config/mods/customs.properties (revision 43)
+++ config/mods/customs.properties (revision 44)
@@ -77,4 +77,9 @@
WarriorTitleSystemEnabled = False
MageTitleSystemEnabled = False
+
+#-------------------------------------------------------------
+# Section: Custom Fight Stats Title System
+#-------------------------------------------------------------
+AllowFightStatsSystem = False

#-------------------------------------------------------------
Index: /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java (revision 32)
+++ /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java (revision 44)
@@ -5453,4 +5453,7 @@
		broadcastUserInfo();

+		FightStatsSystem(getPvpKills(), getPkKills());
+		broadcastUserInfo();
+		
		// Update the character's name color if they reached any of the 5 PvP
		// levels.
@@ -5463,4 +5466,12 @@
	}

+	public void FightStatsSystem(int pvpKillA-beep-t, int pkKillA-beep-t)
+	{
+		if (L2Config.ALLOW_FIGHT_STATS_SYSTEM)
+		{
+			activeChar.setTitle("PvPs:"+getPvpKills()+ "| PKs:"+getPkKills()+"");
+		}
+	}
+	
	public void PvpReward() {
		if (L2Config.PVP_REWARD_ENABLED) {
Index: //java/com/l2jarchid/L2Config.java
===================================================================
--- /java/com/l2jarchid/L2Config.java (revision 41)
+++ /java/com/l2jarchid/L2Config.java (revision 44)
@@ -1346,4 +1346,5 @@
    public static int           SIDE_BLOW_SUCCESS;
    public static boolean       ENABLE_MODIFY_SKILL_DURATION;
+    public static boolean		ALLOW_FIGHT_STATS_SYSTEM;
	//=====================================================================================
	public static FastList<Integer>	ALLOWED_SKILLS_LIST		= new FastList<Integer>();
@@ -1597,5 +1598,5 @@
	        ARCHID_BACK_TIMER = Integer.parseInt(CustomMod.getProperty("BackTimer", "30"));
	        ARCHID_AWAY_PEACE_ZONE = Boolean.parseBoolean(CustomMod.getProperty("AwayOnlyInPeaceZone", "False"));
-
+	        ALLOW_FIGHT_STATS_SYSTEM = Boolean.parseBoolean(CustomMod.getProperty("AllowFightStatsSystem", "False"));
	        CHAR_TITLE = Boolean.parseBoolean(CustomMod.getProperty("CharTitle", "false"));
	    	ADD_CHAR_TITLE = CustomMod.getProperty("CharAddTitle", "Welcome");
Link to comment
Share on other sites

  • 0
53 minutes ago, DEVILMSTAR said:

thank you for reply me also ... i found this code and i try to adapt it for my acis pack 

please tell me your oppinion on that code.

 

Index: config/mods/customs.properties
===================================================================
--- config/mods/customs.properties (revision 43)
+++ config/mods/customs.properties (revision 44)
@@ -77,4 +77,9 @@
WarriorTitleSystemEnabled = False
MageTitleSystemEnabled = False
+
+#-------------------------------------------------------------
+# Section: Custom Fight Stats Title System
+#-------------------------------------------------------------
+AllowFightStatsSystem = False

#-------------------------------------------------------------
Index: /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java
===================================================================
--- /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java (revision 32)
+++ /java/com/l2jarchid/gameserver/model/actor/instance/L2PcInstance.java (revision 44)
@@ -5453,4 +5453,7 @@
		broadcastUserInfo();

+		FightStatsSystem(getPvpKills(), getPkKills());
+		broadcastUserInfo();
+		
		// Update the character's name color if they reached any of the 5 PvP
		// levels.
@@ -5463,4 +5466,12 @@
	}

+	public void FightStatsSystem(int pvpKillA-beep-t, int pkKillA-beep-t)
+	{
+		if (L2Config.ALLOW_FIGHT_STATS_SYSTEM)
+		{
+			activeChar.setTitle("PvPs:"+getPvpKills()+ "| PKs:"+getPkKills()+"");
+		}
+	}
+	
	public void PvpReward() {
		if (L2Config.PVP_REWARD_ENABLED) {
Index: //java/com/l2jarchid/L2Config.java
===================================================================
--- /java/com/l2jarchid/L2Config.java (revision 41)
+++ /java/com/l2jarchid/L2Config.java (revision 44)
@@ -1346,4 +1346,5 @@
    public static int           SIDE_BLOW_SUCCESS;
    public static boolean       ENABLE_MODIFY_SKILL_DURATION;
+    public static boolean		ALLOW_FIGHT_STATS_SYSTEM;
	//=====================================================================================
	public static FastList<Integer>	ALLOWED_SKILLS_LIST		= new FastList<Integer>();
@@ -1597,5 +1598,5 @@
	        ARCHID_BACK_TIMER = Integer.parseInt(CustomMod.getProperty("BackTimer", "30"));
	        ARCHID_AWAY_PEACE_ZONE = Boolean.parseBoolean(CustomMod.getProperty("AwayOnlyInPeaceZone", "False"));
-
+	        ALLOW_FIGHT_STATS_SYSTEM = Boolean.parseBoolean(CustomMod.getProperty("AllowFightStatsSystem", "False"));
	        CHAR_TITLE = Boolean.parseBoolean(CustomMod.getProperty("CharTitle", "false"));
	    	ADD_CHAR_TITLE = CustomMod.getProperty("CharAddTitle", "Welcome");

It is a very very basic system, but it would do the trick. The main issue with it is that players would be able to change their titles. This will simply execute the manual Title change and when it is time to broadcast the change, it will set it back to PVP/PK. A better approach would be instead of setting the title like this, you should apply the logic within the CharInfo and UserInfo packets. For example, a simple if statement would do the trick just fine. IF Config.ALLOW_FIGHT_STATS_SYSTEM, _title = "PVP \ PK", else _title = activeChar.getTitle(). But you also need additional checks for when players try to alter/remove their titles. This second check should be done at the RequestChangeTitle packet and it could be as simple as:
if (Config.ALLOW_FIGHT_STATS_SYSTEM)
{
     player.sendPacket(ActionFailed)
     return;
}

 

Edited by Bru7aLMike
Link to comment
Share on other sites

  • 0
32 minutes ago, Bru7aLMike said:

It is a very very basic system, but it would do the trick. The main issue with it is that players would be able to change their titles. This will simply execute the manual Title change and when it is time to broadcast the change, it will set it back to PVP/PK. A better approach would be instead of setting the title like this, you should apply the logic within the CharInfo and UserInfo packets. For example, a simple if statement would do the trick just fine. IF Config.ALLOW_FIGHT_STATS_SYSTEM, _title = "PVP \ PK", else _title = activeChar.getTitle(). But you also need additional checks for when players try to alter/remove their titles. This second check should be done at the RequestChangeTitle packet and it could be as simple as:
if (Config.ALLOW_FIGHT_STATS_SYSTEM)
{
     player.sendPacket(ActionFailed)
     return;
}

 

thats to much for me 😕

Link to comment
Share on other sites

  • 0
On 6/18/2023 at 6:46 AM, DEVILMSTAR said:

image.png.f23b048e4f58d5fa18e1edd89a7a201d.png

Hello all does anyone know where i can find this mod or show me an example how to create my own ? 


PVP PK RANK UPDATE  <--
Code: @Kishin

Here you go ready to use . coded on latest sources of acis  on diff format ,
or you can apply it or navigate and paste it manually .

it does updates when new pvp / pk or changing title 

max title letters changed to 9 ( more than that it hides the pvp/count letters )PVPPKRANK.jpg.9a47ecec21c62839982f1c006cbde327.jpg

 

Edited by Kishin
Link Update
Link to comment
Share on other sites

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
Answer this question...

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



×
×
  • Create New...