Resolved Roguery Exp

Users who are viewing this thread

Version number
1.5.5
Branch
Beta
Modded/unmodded
No, I didn't use any mods.

Flesson19

Not a Cookie
Knight
Raiding caravans gives no exp, also it says leading bandit troops gives exp, and I have bandit troops in my party and gain no experience from it. I did test and raiding villages does give exp, however very little maybe 1/4 a point for a village, would be nice to get Roguery working right before the disciplinarian skills get moved to that tree
 
I've tested it too.
Having bandits in your party and fighting with them gives nothing.
The most reliable way of getting roguery seems to be ransoming. Interesting that it is 6xp * multiplier, and it doesn't depend on troop type. I wonder is this is supposed to be so?
Both ransoming an elite cataphract or a looter gives 13-14xp on 2.21x , which means ~1000/multiplier (~300-500) troops to be ransomed to get +1 on level 100 or 2000/multiplier (~600-1000) troops on level 150.

For a person like me who never raids caravans or villages these numbers are a little frightning...
 
Here your Methods which actually gives Roguery XP
public static void OnBribeGiven(int amount)
{
if (amount > 0)
{
float skillXp = (float)amount * 0.1f;
SkillLevelingManager.OnPartySkillExercised(MobileParty.MainParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}
}


public static void OnMainHeroReleasedFromCaptivity(float captivityTime)
{
float skillXp = captivityTime * 0.5f;
SkillLevelingManager.OnPersonalSkillExercised(Hero.MainHero, DefaultSkills.Roguery, skillXp, true);
}


public static void OnMainHeroTortured() =(never happend to me though, but has the highest basic XP number)
{
float skillXp = MBRandom.RandomFloatRanged(50f, 100f);
SkillLevelingManager.OnPersonalSkillExercised(Hero.MainHero, DefaultSkills.Roguery, skillXp, true);
}


public static void OnMainHeroDisguised(bool isNotCaught)
{
float skillXp = isNotCaught ? MBRandom.RandomFloatRanged(10f, 25f) : MBRandom.RandomFloatRanged(1f, 10f);
SkillLevelingManager.OnPartySkillExercised(MobileParty.MainParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}


public static void OnRaiding(MobileParty party)
{
SkillLevelingManager.OnPartySkillExercised(party, DefaultSkills.Roguery, 4f, SkillEffect.PerkRole.None); =lol(WTF 4!!)
}


public static void OnAssaultingVillagersAndCaravans(MobileParty attackerParty, float xpAmount)=????????
{
SkillLevelingManager.OnPartySkillExercised(attackerParty, DefaultSkills.Roguery(float)MBMath.Ceiling(xpAmount),SkillEffect.PerkRole.None);
}

public static void OnForcePeasants(MobileParty mobileParty, int count)=(This Method isn´t used yet)
{
float skillXp = 10f * (float)count;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}


public static void OnPrisonerSell(MobileParty mobileParty, float count)
{
float skillXp = 6f * count;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
 
Last edited:
Here your Methods which actually gives Roguery XP
public static void OnBribeGiven(int amount)
{
if (amount > 0)
{
float skillXp = (float)amount * 0.1f;
SkillLevelingManager.OnPartySkillExercised(MobileParty.MainParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}
}


public static void OnMainHeroReleasedFromCaptivity(float captivityTime)
{
float skillXp = captivityTime * 0.5f;
SkillLevelingManager.OnPersonalSkillExercised(Hero.MainHero, DefaultSkills.Roguery, skillXp, true);
}


public static void OnMainHeroTortured() =(never happend to me though, but has the highest basic XP number)
{
float skillXp = MBRandom.RandomFloatRanged(50f, 100f);
SkillLevelingManager.OnPersonalSkillExercised(Hero.MainHero, DefaultSkills.Roguery, skillXp, true);
}


public static void OnMainHeroDisguised(bool isNotCaught)
{
float skillXp = isNotCaught ? MBRandom.RandomFloatRanged(10f, 25f) : MBRandom.RandomFloatRanged(1f, 10f);
SkillLevelingManager.OnPartySkillExercised(MobileParty.MainParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}


public static void OnRaiding(MobileParty party)
{
SkillLevelingManager.OnPartySkillExercised(party, DefaultSkills.Roguery, 4f, SkillEffect.PerkRole.None); =lol(WTF 4!!)
}


public static void OnAssaultingVillagersAndCaravans(MobileParty attackerParty, float xpAmount)=????????
{
SkillLevelingManager.OnPartySkillExercised(attackerParty, DefaultSkills.Roguery(float)MBMath.Ceiling(xpAmount),SkillEffect.PerkRole.None);
}

public static void OnForcePeasants(MobileParty mobileParty, int count)=(This Method isn´t used yet)
{
float skillXp = 10f * (float)count;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
}


public static void OnPrisonerSell(MobileParty mobileParty, float count)
{
float skillXp = 6f * count;
SkillLevelingManager.OnPartySkillExercised(mobileParty, DefaultSkills.Roguery, skillXp, SkillEffect.PerkRole.None);
sry I am code ignorant
 
Raiding caravans gives no exp, also it says leading bandit troops gives exp, and I have bandit troops in my party and gain no experience from it. I did test and raiding villages does give exp, however very little maybe 1/4 a point for a village, would be nice to get Roguery working right before the disciplinarian skills get moved to that tree
I'm having this same issue. I tested out what does and does not give Roguery XP as well, and got these results:

-Raiding/attacking caravans does not give XP
-Recruiting bandits does not give XP
-Leading bandits does not give XP

-Ransoming captives gives XP
-Raiding villages gives XP
-Escaping captivity gives XP
-Infiltrating towns gives XP
 
I have been informed that this issue is fixed on our development branch and the fix will be implemented with the upcoming patches. Thanks for reporting!
 
Back
Top Bottom