Skip to content

[Help]Balance

Featured Replies

dokimase afto! :

 

Index: other.properties
================================================
# These controls the chance to get a glow effect in the augmentation process
# Note:
#       No/Mid Grade Life Stone can not have glow effect
#       if you do not get a skill or Base Stat Modifier
#       On Retail you can not get glow effect with NoGrade LS
# Retail: 0, 40, 70, 100
AugmentationNGGlowChance = 0
AugmentationMidGlowChance = 40
AugmentationHighGlowChance = 70
AugmentationTopGlowChance = 100
+
+# Classes balance
+# Note: 
+#	Weapons type: DAGGER; BOW; BLUNT; DUALFIST; DUAL; SWORD; POLE
+#	Class: Too long...
+#	Damage: Current damage emperor to 2
+# ClassID 90 = Phoenix Knight
+ClassID = 90
+WeaponType = DAGGER
+Damage = 1.5

Index: net.sf.l2j.Config.java
================================================
    public static int AUGMENTATION_TOP_SKILL_CHANCE;
    public static int AUGMENTATION_TOP_GLOW_CHANCE;
    public static int AUGMENTATION_BASESTAT_CHANCE;

+	public static int ALT_CLASSID;
+	public static float ALT_DAMAGE;
+
+	public static boolean ALT_DAGGER;
+	public static boolean ALT_BOW;
+	public static boolean ALT_BLUNT;
+	public static boolean ALT_DUALFIST;
+	public static boolean ALT_DUAL;
+	public static boolean ALT_SWORD;
+	public static boolean ALT_POLE;
@@
			AUGMENTATION_TOP_SKILL_CHANCE = Integer.parseInt(otherSettings.getProperty("AugmentationTopSkillChance", "60"));
			AUGMENTATION_TOP_GLOW_CHANCE = Integer.parseInt(otherSettings.getProperty("AugmentationTopGlowChance", "100"));
			AUGMENTATION_BASESTAT_CHANCE = Integer.parseInt(otherSettings.getProperty("AugmentationBaseStatChance", "1"));
+
+				ALT_CLASSID = Integer.parseInt(otherSettings.getProperty("ClassID", "90"));
+				ALT_DAMAGE = Float.parseFloat(otherSettings.getProperty("Damage", "1.5"));
+				ALT_DAGGER = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("DAGGER");
+				ALT_BOW = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("BOW");
+				ALT_BLUNT = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("BLUNT");
+				ALT_DUALFIST = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("DUALFIST");
+				ALT_DUAL = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("DUAL");
+				ALT_SWORD = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("SWORD");
+				ALT_POLE = otherSettings.getProperty("WeaponType", "DAGGER").equalsIgnoreCase("POLE");
@@
	else if (pName.equalsIgnoreCase("GlobalChat")) DEFAULT_GLOBAL_CHAT = pValue;
	else if (pName.equalsIgnoreCase("TradeChat")) DEFAULT_TRADE_CHAT = pValue;
	else if (pName.equalsIgnoreCase("AutoannouncementsDelay")) AUTOANNOUNCEMENT_DELAY = Integer.parseInt(pValue);
	else if (pName.equalsIgnoreCase("MenuStyle"))  GM_ADMIN_MENU_STYLE = pValue;
+		else if (pName.equalsIgnoreCase("WeaponType"))
+		{
+			ALT_DAGGER		= pValue.equalsIgnoreCase("DAGGER");
+			ALT_BOW			= pValue.equalsIgnoreCase("BOW");
+			ALT_BLUNT		= pValue.equalsIgnoreCase("BLUNT");
+			ALT_DUALFIST		= pValue.equalsIgnoreCase("DUALFIST");
+			ALT_DUAL		= pValue.equalsIgnoreCase("DUAL");
+			ALT_SWORD		= pValue.equalsIgnoreCase("SWORD");
+			ALT_POLE		= pValue.equalsIgnoreCase("POLE");
+		}

Index: net.sf.l2j.gameserver.skills.Formulas.java
================================================
	// Dmg bonusses in PvP fight
	if((attacker instanceof L2PcInstance || attacker instanceof L2Summon)
			&& (target instanceof L2PcInstance || target instanceof L2Summon))
	{
		if(skill == null)
			damage *= attacker.calcStat(Stats.PVP_PHYSICAL_DMG, 1, null, null);
		else
			damage *= attacker.calcStat(Stats.PVP_PHYS_SKILL_DMG, 1, null, null);	
	}
+		if (attacker instanceof L2PcInstance)
+		{
+			L2PcInstance pcInst = (L2PcInstance)attacker;
+			if (pcInst.getClassId().getId() == Config.ALT_CLASSID)
+			{
+				if (Config.ALT_DAGGER)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.DAGGER)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_BOW)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.BOW)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_BLUNT)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.BLUNT)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_DUALFIST)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.DUALFIST)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_DUAL)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.DUAL)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_SWORD)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.SWORD)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}else if (Config.ALT_POLE)
+				{
+					L2Weapon wpn = pcInst.getActiveWeaponItem();
+					if (wpn != null && wpn.getItemType() == L2WeaponType.POLE)
+						damage /= (int) (damage / Config.ALT_DAMAGE);
+				}
+			}
+       }

Index: Classes
================================================
-- HUMANS
-- 0=Human Fighter			| 1=Human Warrior		| 2=Gladiator			| 3=Warlord			| 4=Human Knight
-- 5=Paladin				| 6=Dark Avenger			| 7=Rogue				| 8=Treasure Hunter	| 9=Hawkeye
-- 10=Human Mage			| 11=Human Wizard		| 12=Sorcerer/ss			| 13=Necromancer	| 14=Warlock
-- 15=Cleric				| 16=Bishop				| 17=Prophet

-- ELVES
-- 18=Elven Fighter			| 19=Elven Knight		| 20=Temple Knight		| 21=Swordsinger	| 22=Elven Scout
-- 23=Plainswalker			| 24=Silver Ranger		| 25=Elven Mage			| 26=Elven Wizard	| 27=Spellsinger
-- 28=Elemental Summoner	| 29=Elven Oracle		| 30=Elven Elder

-- DARK ELVES
-- 31=Dark Elven Fighter	| 32=Palus Knight		| 33=Shillien Knight	| 34=Bladedancer	| 35=Assassin
-- 36=Abyss Walker			| 37=Phantom Ranger		| 38=Dark Elven Mage	| 39=Dark Wizard	| 40=Spellhowler
-- 41=Phantom Summoner		| 42=Shillien Oracle	| 43=Shillien Elder

-- ORCS
-- 44=Orc Fighter			| 45=Orc Raider			| 46=Destroyer			| 47=Monk			| 48=Tyrant
-- 49=Orc Mage				| 50=Orc Shaman			| 51=Overlord			| 52=Warcryer

-- DWARVES
-- 53=Dwarven Fighter		| 54=Scavenger			| 55=Bounty Hunter		| 56=Artisan		| 57=Warsmith

-- HUMANS 3rd Professions
-- 88=Duelist				| 89=Dreadnought		| 90=Phoenix Knight		| 91=Hell Knight	| 92=Sagittarius
-- 93=Adventurer			| 94=Archmage			| 95=Soultaker			| 96=Arcana Lord	| 97=Cardinal
-- 98=Hierophant

-- ELVES 3rd Professions
-- 99=Evas Templar			| 100=Sword Muse		| 101=Wind Rider		| 102=Moonlight Sentinel
-- 103=Mystic Muse			| 104=Elemental Master							| 105=Evas Saint

-- DARK ELVES 3rd Professions
-- 106=Shillien Templar		| 107=Spectral Dancer	| 108=Ghost Hunter		| 109=Ghost Sentinel
-- 110=Storm Screamer		| 111=Spectral Master	| 112=Shillien Saint

-- ORCS 3rd Professions
-- 113=Titan				| 114=Grand Khavatari
-- 115=Dominator			| 116=Doomcryer

-- DWARVES 3rd Professions
-- 117=Fortune Seeker		| 118=Maestro

Create an account or sign in to comment

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.