Index: /GameServer_C5/config/altsettings.properties =================================================================== --- /GameServer_C5/config/altsettings.properties (revision 23) +++ /GameServer_C5/config/altsettings.properties (revision 27) @@ -88,6 +88,9 @@ # Limit attack speed (0 = disable) -MaxPAtkSpeed=1200 -MaxMAtkSpeed=1400 +MaxPAtkSpeed = 1200 +MaxMAtkSpeed = 1400 + +# Limit critical rate +MaxCritical = 600 # Damage Multipliers for Characters. Index: /GameServer_C5/src/main/java/net/sf/l2j/gameserver/model/L2Character.java =================================================================== --- /GameServer_C5/src/main/java/net/sf/l2j/gameserver/model/L2Character.java (revision 23) +++ /GameServer_C5/src/main/java/net/sf/l2j/gameserver/model/L2Character.java (revision 27) @@ -5421,5 +5421,12 @@ public int getDEX() { return getStat().getDEX(); } public final double getCriticalDmg(L2Character target, double init) { return getStat().getCriticalDmg(target, init); } - public int getCriticalHit(L2Character target, L2Skill skill) { return getStat().getCriticalHit(target, skill); } + public int getCriticalHit(L2Character target, L2Skill skill) { + int _rcrit = getStat().getCriticalHit(target, skill); + if(_rcrit > Config.MAX_RCRIT) { + return Config.MAX_RCRIT; + } else { + return _rcrit; + } + } public int getEvasionRate(L2Character target) { return getStat().getEvasionRate(target); } public int getINT() { return getStat().getINT(); } Index: /GameServer_C5/src/main/java/net/sf/l2j/Config.java =================================================================== --- /GameServer_C5/src/main/java/net/sf/l2j/Config.java (revision 23) +++ /GameServer_C5/src/main/java/net/sf/l2j/Config.java (revision 27) @@ -366,4 +366,7 @@ public static int MAX_PATK_SPEED; public static int MAX_MATK_SPEED; + /** Config for max critical + * ~AresXP */ + public static int MAX_RCRIT; /** Config for damage multiplies */ public static float ALT_PHYSICAL_DAMAGE_MULTI; @@ -1673,4 +1676,5 @@ MAX_PATK_SPEED = Integer.parseInt(altSettings.getProperty("MaxPAtkSpeed", "0")); MAX_MATK_SPEED = Integer.parseInt(altSettings.getProperty("MaxMAtkSpeed", "0")); + MAX_RCRIT = Integer.parseInt(altSettings.getProperty("MaxCritical", "0")); ALT_PHYSICAL_DAMAGE_MULTI = Float.parseFloat(altSettings.getProperty("AltPDamage", "1.0")); ALT_PHYSICAL_DAMAGE_MULTI_NPC = Float.parseFloat(altSettings.getProperty("AltPDamageNpc", "1.0"));