Feature - Implemented Breakfast changes for fresh aftercore

Ryo_Sangnoir

Developer
Staff member
Sometimes just after having freed the king I run breakfast without pulling all my stuff first. Two things don't work as well as they could:

  1. Breakfast tries to use a Chroner Cross before a Chroner Trigger, which fails because there are no Chroners. Doing these two in the opposite order would result in the Trigger giving the Chroner to use in the Cross.
  2. Breakfast only pulls one School of Hard Knocks Diploma instead of all of them, and the result of using the item depends on how many you have in inventory.

This might be lower priority because pulling everything /before/ running breakfast is a clear workaround, but sometimes I forget, so this would be nice to have.
 

lostcalpolydude

Developer
Staff member
17797 changes the order for chroner items.

The second one looks like it would require some code specifically for that one item, rather than anything simple and generic (like putting 11 instead of 1 in the list of toys, but eventually UseItemRequest sees that it's limited to 1 use and it doesn't change anything). It used to be that KoLmafia would pull all of an item if you were in aftercore and any needed pulling. This seems like something Veracity would be interested in handling, unless she handles it by having a script pull all of that item along with some other stuff she wants to use.
 

Veracity

Developer
Staff member
I started working on a script to set me up for aftercore, but I still use a (short) list of Stuff To Do in a file. I guess it would be a kingLiberatedScript. For breakfast toys, I just depend on them being auto-pulled when I run breakfast for the first time after ending the run. FYIW, I only have a single diploma, since there was no notice during the season of what it would actually do, with only the clue that you could buy more than one indicating that you might want more than one. So, after getting one, I carried on with my ascension plans.

I believe I was the one who changed aftercore pulling to pull only what you ask for. I believe I did that once I started PVPing and wanted to just leave everything in storage.

It would be more efficient to pull 11 toys at a time, rather than running through the list and using them, letting them be pulled as needed by UseItemRequest. We could do that by making an initial pass through the toy list and making a list of items which need to be pulled. FamiliarManager.equipAllFamiliars does something like that: it builds two lists of items which are not in inventory - closet and storage - and pulls items (which might put them in the closet) and unclosets items.

The toy list retrieval would special-case the diploma to be "all of them".

Sounds like an amusing little project. I'll take a look at it.
 

Veracity

Developer
Staff member
Revision 177790 does this. It pulls toys from storage or removes them from closet before using them. It will pull up to 11 School of Hard Knocks Diplomas. Turns out I had 2 of them in storage which I had not pulled, since my hippy stone is unbroken. I reset breakfast and did it again and it pulled both of them.
 

Ryo_Sangnoir

Developer
Staff member
Great, thanks Veracity! I've pulled everything now, so I can't check it works, but I look forward to being saved from my own absent-mindedness next run.
 
Top