Bug - Fixed odeBuffbotCheck warns about not having Ode when in ronin and you can't use Ode

Malibu Stacey

Active member
Running G Lover (normal, very much still under ronin), odeBuffbotCheck=true gets me warnings about trying to drink without Ode active.
I can't get it from a Buffbot because I'm still in ronin & I can't cast it myself because of path restrictions.
 

Veracity

Developer
Staff member
We only look at odeBuffbotCheck in one place:

Code:
		boolean requestBuffOde = KoLCharacter.canInteract() && Preferences.getBoolean( "odeBuffbotCheck" );
In other words, it only comes into effect when you are out of Ronin.

We only look at that boolean in one place:

Code:
		if ( canOde || requestBuffOde )
...
			while ( KoLCharacter.canInteract() &&
				odeTurns < consumptionTurns &&
				KoLCharacter.getCurrentMP() >= odeCost &&
				KoLmafia.permitsContinue() && canOde )
			{
In other words, it tries to cast it. The logic is faulty; I think the point is to give you the nag if you can go to a buffbut but cannot cast it yourself. But the key thing is that it only got into the if block because it thought you could cast ode yourself; the buffbot was already rejected because you were in Ronin.

Code:
		boolean canOde = KoLConstants.availableSkills.contains( ode ) && UseSkillRequest.hasAccordion();
I assume the skill shows up on your character sheet - i.e., you "have the skill" - but you can't actually cast it, because of your path?
 
Top