New Content - Implemented Bounty Hunter Change

Darzil

Developer
Added bounty command.
bounty - lists bounty progress and untaken bounties
bounty easy|hard|special - accepts a bounty
 

Darzil

Developer
r13624 - Recognise and report unknown bounties. This doesn't let adventure goals or bounty hunter menu know about them. They are recognised once the bounty is accepted and then a bounty item is acquired in combat.

The logic used is that it can find out image, number of items to get and bounty plural name from the hunter, and monster, location, image and bounty single name from the combat. It assumes that if the image is the same on both unknown monster and combat then the two match. We can't use monster name, as the one used at the hunter isn't always as simple plural, and we can't use location, as it is sometimes a zone name rather than adventure location.
 
Hey Darzil, thanks for all the work on the bounty hunter! :) However, for some reason it doesn't seem to be auto-turning bounties in anymore.
Code:
 We should visit and pick up stuff
no easy bounty accepted
no hard bounty accepted
Sending kmail to buffy ...
Message sent to buffy
Maximizing...
304 combinations checked, best score 872.81
Wielding bounty-hunting rifle...
Equipment changed.
Putting on BGE 'cuddly critter' shirt...
Equipment changed.
Putting on lucky rabbit's foot...
Equipment changed.
Conditions list cleared.
Condition added: filthy lucre
Countdown: 5 seconds...
Countdown: 4 seconds...
Countdown: 3 seconds...
Countdown: 2 seconds...
Countdown: 1 second...
Waiting completed.

Request 1 of 60 (Plains: The Degrassi Knoll Gym) in progress...

[47750] The Degrassi Knoll Gym
Encounter: Gnollish Bodybuilder
Strategy: C:\Users\Judson\Desktop\KoLmafia\ccs\Hobo.ccs [default]
Round 0: eliteofdelete wins initiative!
Round 1: eliteofdelete executes a macro!
Round 1: eliteofdelete tries to steal an item!
Round 2: eliteofdelete casts POP AND LOCK IT!
Round 3: gnollish bodybuilder takes 10 damage.
Round 3: eliteofdelete wins the fight!
You gain 57 Meat
After Battle: Item Finder does a little fairy dance.
You acquire an item: enchanted barbell
You gain 2 Enchantedness
You gain 1 Smarm

Request 2 of 60 (Plains: The Degrassi Knoll Gym) in progress...

[47751] The Degrassi Knoll Gym
Encounter: one-eyed Gnoll
Strategy: C:\Users\Judson\Desktop\KoLmafia\ccs\Hobo.ccs [default]
Round 0: eliteofdelete wins initiative!
Round 1: eliteofdelete executes a macro!
Round 1: eliteofdelete tries to steal an item!
Round 2: eliteofdelete casts POP AND LOCK IT!
Round 3: one-eyed gnoll takes 7 damage.
Round 3: eliteofdelete wins the fight!
You gain 57 Meat
After Battle: Item Finder does a little fairy dance.
You gain 1 Muscleboundness
You gain 2 Wizardliness
You acquire a bounty item: half-empty bottle of eyedrops

It didn't seem to know that it was suppose to auto-turn these in so it kept going after it got the required amount. Unless auto-turning in isn't supported anymore and I should change the goal to something else. Strange thing is I am pretty sure it worked fine yesterday when I was using 13623. Although, using it now doesn't seem to work either so I am confused what is going on. Here is the actual code I have for it.
Code:
if (contains_text(x, "half-empty bottles of eyedrops")) {
			if (have_effect($effect[Ode to booze]) > 0)
				cli_execute("shrug ode");
			cli_execute("kmail to buffy || 50 plenty");
			cli_execute("maximize 2 item, meat -tie");
			cli_execute("goal clear");
			cli_execute("goal add +1 filthy lucre");
			wait(5);
			adventure(60, $location[The Degrassi Knoll Gym]); 
			cli_execute("shrug plenty");
		}
 
Last edited:

Darzil

Developer
Some stuff was broken by the recognition stuff, but should work now in r13631. Was a bit annoyed not to verify it all earlier, but my two alts had both done Airship bounty before I realised it had the case on monster name wrong, so had to get Darzil to level 10 before I could test my fixes!
 

Veracity

Developer
Staff member
Suggestion: you add the bounties to the session tally when you find them. When you turn them in to the BHH and get a lucre, perhaps you could remove them from the tally.
 

Darzil

Developer
Suggestion: you add the bounties to the session tally when you find them. When you turn them in to the BHH and get a lucre, perhaps you could remove them from the tally.

I had considered this, but it raises a few questions. How do we know which bounty was turned in, as there is no text, just a gain in lucre, and they might have gained bounties when not in mafia / whilst that bounty wasn't being tracked? Given that the bounties aren't physical items, do we go negative if more were handed in that we gained that session, if we can reliably work out which was handed in ?

As I hadn't been able to work out a reliable way of doing it I considered either removing them from the session tally entirely or the status quo, and decided the status quo was superior for the average user.
 

lostcalpolydude

Developer
Staff member
I think subtracting pseudo-items for bounties that mafia thinks are complete and letting them go negative (if the user's settings allow that, but that's probably automatically checked somewhere anyway) is the way to go.
 

Darzil

Developer
I think subtracting pseudo-items for bounties that mafia thinks are complete and letting them go negative (if the user's settings allow that, but that's probably automatically checked somewhere anyway) is the way to go.

The thing is that currently we can only tell which bounties we have accepted and are in progress are, and which bounties we haven't accepted are, we can't see which we've completed.

Maybe we can check the session tally and remove any bounty items which aren't from in progress bounties when we visit the bounty hunter?
 

lostcalpolydude

Developer
Staff member
We already use BountyDatabase.checkBounty() from KoLmafia to see if we think any bounties are finished, it seems like the same could be done when visiting the BHH.
 

lostcalpolydude

Developer
Staff member
13634 removes bounty items from the session tally when you turn in a bounty.

I didn't use this, but the bounty hunter hunter also gave me this:
Code:
You turn in your 12 burned-out arcanodiodes to the Bounty Hunter Hunter and collect your reward.  A Bounty Hunter is You!
 

Darzil

Developer
13634 removes bounty items from the session tally when you turn in a bounty.

I didn't use this, but the bounty hunter hunter also gave me this:
Code:
You turn in your 12 burned-out arcanodiodes to the Bounty Hunter Hunter and collect your reward.  A Bounty Hunter is You!

Ah well, if that has been added, it makes more sense to use that than trust our internal variables.
 

Darzil

Developer
r13636. Removes bounty items from tally based on message when visiting the bounty hunter. Will do it regardless of which command you are using to visit the bounty hunter, which day's bounty it is, and whether mafia knew you were on the bounty.

Edit - I'm sure that message wasn't there a short while ago.
 
Top