ilpersi / BHBot

A bot that automates a game called Bit Heroes
GNU General Public License v3.0
28 stars 32 forks source link

Modifications to familiar logic to allow for easier farming and schematic acquisition. #123

Open mental159 opened 5 years ago

mental159 commented 5 years ago

Is your feature request related to a problem? Please describe. It is difficult to farm specific familiars, or first copies of low rank familiars for schematics.

While you can specify zones to farm, and auto bribe and persuasion level for familiars, this isn't granular enough. For example, when farming staeus for velk, You waste gold on dozens of Zorgs which are useless, versus just attempting to bribe staeus, as both are blue level. Furthermore, setting the threshold for persuasion higher prevents getting initial copies of familiars for fusion/schematic purposes.

Describe the solution you'd like I would like to be able to do something as follows:

  1. Specify a dungeon to farm (currently possible)
  2. Set threshold for persuasion to epic (currently possible)
  3. Set a setting to always persuade familiars I do not have regardless of level (not currently possible)
  4. Specify a farming target that will always be persuaded (not bribed) if encountered. (not currently possible)

Describe alternatives you've considered None. Right now I have to disable the bot and manually run dungeons to farm specific familiars if I do not want to bribe them automatically.

ilpersi commented 5 years ago

Hi and thank you for the request!

If I get correctly you are asking the possibility to specify familiars to persuade by name as you can do for bribing, am I correct?

If yes, this is something that I wish also and it would require some work to the familiar system and I always left this behind as gold has never been an issue. I am currently farming Velk myself and I have millions sitting there and a ton of Zorgs. 😄

Regarding your points:

  1. I am not sure why you say it is possible. What you can do is specify dungeons and threshold, but you can not say "bribe all familiars of R1" for example. This is something I would also like to have and it requires the bot to be "zone aware" (see #59).
  2. Correct, currently possible
  3. Not possible as there is no easy way to understand what familiars you have and what you have not
  4. As I said, it can be done and it is not on top of the priority list.
vatuma commented 4 years ago
  1. Why not? Isn't that red zero always the same color? Looks like it's enough to find a red point in the line. familiar-RARE-PERSUASION-attempt_20201002
ilpersi commented 4 years ago

@vatuma I guess that you are referring to point 3. Am I correct?

  1. Set a setting to always persuade familiars I do not have regardless of level (not currently possible)

I did not think of checking the red zero. This is a great idea to also check the number of current familiar that you have. Overall, the encounter management feature needs some overhaul: I am leaving it behind as with the Unity port coming I would like to avoid having to code the same thing twice. 😄

II will consider this in the future. Thank you.

vatuma commented 4 years ago

Yes, I was referring to 3. Thank you for your work