first 5 levels in all skills are now much easier to level

This commit is contained in:
nossr50 2019-04-23 04:21:25 -07:00
parent cee0025147
commit b36c4b56c3
3 changed files with 18 additions and 13 deletions

View File

@ -8,8 +8,9 @@ Version 2.1.48
Dodge now gives 800 XP
Roll now gives 600 XP
Fall now gives 600 XP
The first 10/100 levels of Combat skills now gives a small amount of bonus XP (this amount is not multiplied by any modifiers other than XP rate)
Note: First 10 in Standard, first 100 in Retro
The first 5/50 levels of skills now give large amounts of XP so players get key early skills much faster
Note: First 50 in Standard, first 50 in Retro
Dev Notes:
I will be making a write up soon explaining near future plans for mcMMO and what is going on with the config update, abstraction update, etc...

View File

@ -102,8 +102,8 @@ public class SelfListener implements Listener {
return;
}
final float rawXp = event.getRawXpGained();
if (rawXp < 0) {
if (event.getRawXpGained() <= 0) {
// Don't calculate for XP subtraction
return;
}
@ -112,6 +112,19 @@ public class SelfListener implements Listener {
return;
}
int earlyLevelBonusXPCap = mcMMO.isRetroModeEnabled() ? 50 : 5;
int earlyGameBonusXP = 0;
//Give some bonus XP for low levels
if(mcMMOPlayer.getSkillLevel(primarySkillType) < earlyLevelBonusXPCap)
{
earlyGameBonusXP += (mcMMOPlayer.getXpToLevel(primarySkillType) * 0.05);
event.setRawXpGained(event.getRawXpGained() + earlyGameBonusXP);
}
final float rawXp = event.getRawXpGained();
float guaranteedMinimum = ExperienceConfig.getInstance().getDiminishedReturnsCap() * rawXp;
float modifiedThreshold = (float) (threshold / primarySkillType.getXpModifier() * ExperienceConfig.getInstance().getExperienceGainsGlobalMultiplier());

View File

@ -609,15 +609,6 @@ public final class CombatUtils {
baseXP *= multiplier;
int earlyLevelBonusXPCap = mcMMO.isRetroModeEnabled() ? 100 : 10;
//Give some bonus XP for low levels
if(baseXP != 0 && mcMMOPlayer.getSkillLevel(primarySkillType) < earlyLevelBonusXPCap)
{
baseXP += 50;
}
if (baseXP != 0) {
new AwardCombatXpTask(mcMMOPlayer, primarySkillType, baseXP, target, xpGainReason).runTaskLater(mcMMO.p, 0);
}