So I just downloaded this script so I could start automating the steel organ quest in aftercore on my multis, and modified it a bit to work better for me, and to correspond a bit better to the game state in 2020. I thought I'd share the changes with anyone interested. They're not enough for me to bother with making an SVN to host it or push request to the original script, (wrldwzrd89 hasn't logged into KoL since August 2016, and his profile says he's retired from game) unless someone shows demand for that. (My changes don't address taltamir's infinite autorecovery bug report above.)
What specifically changed is:
- Line 99: exclude broken champagne bottle from maximization (this isn't where you want to spend your daily bottle charges, and the item part of the maximizer string almost guarantees the bottle will be equipped if it's available); alter maximizer string to weight combat modifiers more heavily than +items (otherwise, it puts +item in pretty much every slot when hunting for a NC), and cap -combat modifier (Since depending on toys, nowadays it's possible to soft-cap -combat in aftercore pretty readily);
- Line 131: add a line to maximize for +combat when hunting observational glasses, does same things as the -combat line above;
- Line 156: maximize for +item (ignoring +/-combat) when hunting bus passes and imp airs;
- Line 158-160 & 166-168: mallbuy imp air and bus passes if we need them, have mall access, and they're cheap enough (<1500 meat each).
- Line 175: don't get stuck in what looks like an infinite loop of trying to complete the tutu quest if you have more than 10 imp air or 10 bus passes when you go to finish that quest. Not positive this is really an infinite loop, since I haven't tested it, but it looks to me like it would, since it keeps visiting the square if you still have imp air and bus passes, and once you've completed the quest, imp air and bus passes don't go down, and the added conditional (have 0 tutus) won't hurt anything.
Overall, it looks like the script was originally written with in-run use in mind; I modified it to make it more aftercore-centric, although several of the changes should improve things in run as well.
It could still use work--e.g., max price for the imp air and bus passes is hard coded (and not even in a friendly variable at the top of the script), and it always buys 5 imp air and bus pass if you need some, even if you already have a few--but it's good enough for me for now. If there's demand, I guess I can polish it a bit more and make an SVN, but I don't know how much use this script sees.
EDIT: I've been thinking a bit more about taltamir's issue above, and I think the correct thing would be to replace the while() { adventure(1) } loops with setting conditions, and then adventure(min(my_adventures(), 40)), or something like that. It wouldn't solve the autorecovery problem entirely, but it would make it not-an-infinite-loop, as after trying to adventure in both zones, it would just hit the end of the script. It would also bail out if either zone is taking way too many adventures for some reason, which would be safer. Also, recovering automatically when your mafia autorecovery settings fail is certainly beyond the scope of the script. That said, it's not particularly high-priority for me. If I finish the personal aftercore script I'm working on (which is turning out to be quite the undertaking), I might look into it. For now, the script as-is is good enough for me.