Page 21 of 24 FirstFirst ... 11 19 20 21 22 23 ... LastLast
Results 201 to 210 of 240

Thread: My personal Meat farming script

  1. #201
    Developer Veracity's Avatar
    Join Date
    Mar 2006
    Location
    The Unseelie Court
    Posts
    11,095

    Default

    It'd be easy if KoLmafia kept a tally of Meat (and items) obtained during adventuring.
    Well, actually, it does - that is what is in the "session results" display of the main GUI.
    There is not currently a way for a script to access that info.
    I'll think about it.
    Ph'nglui mglw'nafh Cthulhu
    R'lyeh wgah-nagl fhtagn.

  2. #202
    Developer Veracity's Avatar
    Join Date
    Mar 2006
    Location
    The Unseelie Court
    Posts
    11,095

    Default

    I had to make a KoLmafia change to make this possible without a huge amount of redundant work. Revision 18000.

    Revision 75 of this script does this:

    - Open Skeleton Store, Madness Bakery, and Overgrown Lot for busting ghosts only when you need to bust a ghost there.
    - When acquiring milk of magnesium, if will (or can) create it, cast Inigo's if needed and possible.
    - Use my_session_meat(), rather than my_meat(), to track meat gains during this script.

    Note that you can undo the skewed total via the gCLI:

    > get VMF.TotalMeat
    TOTAL
    > set VMF.TotalMeat=(TOTAL - ERROR)

    ... where TOTAL is a number and (TOTAL - ERROR) is a number that you manually calculated; the "set" command will not do the arithmetic for you.
    Ph'nglui mglw'nafh Cthulhu
    R'lyeh wgah-nagl fhtagn.

  3. #203

    Default

    Veracity, you are the greatest! If only all devs were as responsive as you. Thanks!

  4. #204
    Minion Bale's Avatar
    Join Date
    Jun 2008
    Posts
    13,268

    Default

    It'd be easy if KoLmafia kept a tally of Meat (and items) obtained during adventuring.
    Well, actually, it does - that is what is in the "session results" display of the main GUI.
    There is not currently a way for a script to access that info.
    I'll think about it.
    Originally Posted by Veracity View Post
    Since you're granting access to meat gained in session results, what about a function that returns a list of items gained?

    int [item] my_session_results()
    If people like my scripts, please send me stuffed Hodgmen.
    Universal Recovery, OCD Inventory Control, CounterChecker, newLife, ChIT.


  5. #205
    Developer Veracity's Avatar
    Join Date
    Mar 2006
    Location
    The Unseelie Court
    Posts
    11,095

    Default

    I could do that. I could iterate over the tally and add anything that is an "item".
    The design question is this:

    The "tally" is added to (and subtracted from) over the course of your entire session. However, you can clear it via the Menu.

    What I did for Meat was to keep a running tally which was NOT cleared when you did that; you can fetch the value and then, later, fetch the value again and get the amount of Meat gained (or lost) whether or not the user cleared it in the GUI.

    I could do the same thing for items - keep an un-clearable session item list - or, as I mentioned, could simply return whatever is currently in your tally.

    How do you anticipate using this?
    Ph'nglui mglw'nafh Cthulhu
    R'lyeh wgah-nagl fhtagn.

  6. #206
    Senior Member
    Join Date
    Jan 2012
    Location
    Texas
    Posts
    369

    Default

    WHen it does the Milk of Magnesium it either uses it from inventory or buys one. I have reagents, but no milk is this why it is doing this?

  7. #207
    Developer Veracity's Avatar
    Join Date
    Mar 2006
    Location
    The Unseelie Court
    Posts
    11,095

    Default

    Do you have the skill to create milk of magnesium? Are you a Sauceror?
    It does the usual calculation: would it be cheaper to buy milk or buy the ingredients and mix it?
    Note that, just like "acquire" has always done, it does not necessarily consider items in inventory to be worth less than items in the mall. You can tweak how much it values them on the "Fine Tuning" panel of the Item Manager. That has a slider which goes from "Free" to "Mall price".

    In any case, a glass of goat's milk in the mall costs 2,000 Meat and a milk of magnesium (ignoring the 1/day limited one) costs 1,112 Meat, so it seems perfectly reasonable to me to NOT buy the glass of goat's milk to craft the potion yourself.

    If you are a Sauceror and get triple yield, it MIGHT be more cost effective - depending on that value of inventory slider...
    Ph'nglui mglw'nafh Cthulhu
    R'lyeh wgah-nagl fhtagn.

  8. #208
    Minion Bale's Avatar
    Join Date
    Jun 2008
    Posts
    13,268

    Default

    How do you anticipate using this?
    Originally Posted by Veracity View Post
    I don't anticipate using this. It's just that the question pops up in scripting discussion now and then when people ask how they can access the session tally to know what their script farmed. The topic was live so I thought I'd bring it up in case you thought the idea had merit. Posts like this one. If you do that, then I'll finally have a simple answer to the question.
    If people like my scripts, please send me stuffed Hodgmen.
    Universal Recovery, OCD Inventory Control, CounterChecker, newLife, ChIT.


  9. #209
    Senior Member VladYvhuce's Avatar
    Join Date
    Feb 2016
    Location
    Kansas
    Posts
    215

    Default

    Quick question regarding the Tunnel of L.O.V.E.: Is it possible to set the script to not fight the monsters and get the password, instead?

  10. #210
    Developer Veracity's Avatar
    Join Date
    Mar 2006
    Location
    The Unseelie Court
    Posts
    11,095

    Default

    Yes. Look at what the script tells you:

    Code:
    // Which monsters to fight.
    //
    // We will fight them using your CCS directly (no combat filter).
    // Your CCS must be set up to do the right thing, if you want the rewards.
    //
    // LOV Enforcer		defeat using normal attacks to (maybe) get LOV Elixir #3
    // LOV Engineer		defeat using spells to (maybe) get LOV Elixir #6
    // LOV Equivocator	pickpocket to (maybe) get LOV Elixir #9
    //
    // LOV Elixir #3	(40 The Power of LOV) Muscle +40, Weapon Damage +50%, Critical Hit +15%
    // LOV Elixir #6	(40 The Magic of LOV) Mysticality +25, Spell Damage +100%, Spell Critical Hit +15%
    // LOV Elixir #9	(40 The Moxie of LOV) Moxie +25, Ranged Damage +50%, Initiative +50%
    
    boolean [monster] lov_enemies = define_property( "VMF.LOVEnemies", "monster", "LOV Enforcer|LOV Engineer|LOV Equivocator", "set" ).to_set_of_monster();
    You can override that setting like this:

    Code:
     set VMF.LOVEnemies=
    to tell it not to fight any of the enemies.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •