Familiar Feeder

heeheehee

Developer
Staff member
Muscle signs get Innabox, so no turns spent crafting meat-stack items! Yaaay!

Also, the JS equivalent of ASH's user_confirm() is simply confirm().
 

zarqon

Well-known member
Oooh, the new arrangement is very nice! But... I was just about to edit this to make your table user-sortable!

For columns I was thinking item name, item value (autosell if mall == mallmin), MP gain, and profit (meatpermp*MP gain - value), with selectors in front. I was also thinking about adding createable items to the table, colored or flagged as creatable.

Haha, oh well. This works quite nicely too.

I did make one small change that you might like to add. Jason's htmlform doesn't support separate labels for checkboxes, which is unfortunate in this case. So, I added a little code to make the item names labels for the checkboxes. What this means is that you can click the item name to select the checkbox. It's a small usability change, but a nice one. Only changed two lines:

Code:
		if ( num%2 == 1 )
			writeln("              <tr>");
		writeln("                <td valign='top'>");
		write  ("                ");
		attr("id='it"+Feedable[i].it.to_int()+"'");
		write_check( false, "it"+Feedable[i].it.to_int(), "");
		writeln("");
		writeln("                </td><td>");
		write  ("                  ");
		writeln("<label for='it"+Feedable[i].it.to_int()+"'><b>"+color+Feedable[i].it+"</font></b></label> (" + Inventory[Feedable[i].it] + ")" );
		writeln("                  <br>");
 

slyz

Developer
Thanks Zarqon, I included this.

I have another question: the 'Feedable Items' section can be toggled by clicking on the title (through simple javascript). Kol uses a cookie to remember if a section is toggled or not... Is there any philosophical objection to a cookie doing the same thing here?

I'm adding a 'Creatable Items' section underneath it, so we can have it 3 ways:
- both sections are showed (when you start the script AND each time you hit a button)
- both sections are hidden (when you start the script AND each time you hit a button)
- a cookie is used to remember the state of each section every time a new instance is called.

Another solution would be to have a form toggled by clicking on the section title. This would allow to store the state of the sections via ash, but I have no idea if that's possible.
 

zarqon

Well-known member
Since it's a relay script, I personally would prefer a cookie over another mafia preference -- especially for something like that. In fact, I love that idea.

I hope at some point you will be factoring in the value of slime stack charges for feeding basic meat stack gear... :) Not to rush things or anything.
 

slyz

Developer
New version posted.
- Creatable items are now supported. I was very conservative with this: items that would take a turn to craft are not considered.
- I use a cookie to remember if a section was toggled or not.

Next up: add support for the Hobo Spirit and the GGG!
 

jcowley

New member
Pretty good, I've had a quick play about with it. Something else I would like to take into consider for HC especially, is the ability to compare the slimeling MP to the PULVERIZE value of the item. So 2 twinkly powders is worth 60 meat, etc. Not sure how much of a pain this is to be added, but that would be nice. So if an item sold for 40 meat but pulverized to 2 twinkly powder, it'd be 60 meat. Likewise, if it sold for 100 meat but pulverized to 3 powders, it'd use the autosell value.
 

heeheehee

Developer
Staff member
aqualectrix's SmashLib would be rather handy for anyone who wants to tackle this. Just tossing that out there.

Edit: Also, Bale's Universal Recovery generates your meatpermp, which would also be useful. Presumably.
 
Last edited:

slyz

Developer
[size=+1]New version: Familiar Feeder 0.3 beta[/size]

Lots of new things! Check out the first post for updates (Hobo/GGG supported added).

EDIT:

@ Zarqon: sorry for the mess I did while discovering Registry.ash. Apparently I can't unregister relay_Feed.ash, could it be removed from your site?
 
Last edited:

jcowley

New member
Awesome slyz, this is great! Thanks! Everything seems to be going well from what I've seen, I'll keep an eye out for anything though.
 

zarqon

Well-known member
Wow, this is getting pretty impressive.

I have yet another suggestion. Interface-wise, I'd prefer createables and current inventory to be sorted together. A listing like in mafia's Item Manager would be excellent:

Hell ramen (14 possible, 4 current)

Then the feed/create forms in your top interface would also merge, perhaps with the following options:

  • Feed all current
  • Feed all current but one
  • Feed all possible
  • Feed quantity ____

The first two options would never create items. The last two would create if possible/necessary.

This would have the added effect of making the script a little easier on the eyes as well, since you could have two forms where you now have three. Also, when looking for the best value, you wouldn't need to scroll between inventory and createables.

Sorry -- I keep making suggestions for this script because I love it and see myself using it whenever I need to feed any of these familiars!

Since it came up earlier in this thread, I'd also like to publicly thank heeheehee for a quick and cheap Slimeling run! He is a gentleman and a scholar. I hope to add Slimeling support to SS this weekend (while I'm fixing the foreach issue with DB combos).
 

slyz

Developer
I thought a little about this suggestion, and I'm going to try and sort things out so everything is displayed as Zarqon suggested, but with the possibility to toggle off the crafting.

I guess I can also add a "ask for confirmation" toggle, and another frame at the top that resumes what will be used and the actual cost in meat and inventory items.

By the way, make sure you re-download the data file too. I added things like spices,noodles, reagents and garnishes, to make sure ACs and good food don't show up. I'll need to get around to adding a way to show and configure the items to keep.
 

jcowley

New member
A few things... Swashbuckling pants and eyepatch aren't blue (the "keep one" colour), and as a non-muscle sign, for creatable items such as the balloon helmet, it does NOT factor in the cost of meat paste, AND the price for the balloon helmet is shown to be 44 meat ( 2 skinny balloons), not 60 meat (autosell of the balloon helmet). So there's some little things, but on the whole I am really loving this script, and I approve of Zarqon's suggestion, that's one of my favourite things about KolMafia.
 

zarqon

Well-known member
Before you go to the effort -- I'm wondering if anyone would remove createable items from the list, given that you can easily avoid feeding them. Mafia users are accustomed to seeing/using items in this fashion (X possible, Y current). Not a big deal, but might be needless effort on your part.

Also, how about changing the "Feed:" text under each item into a quick link that feeds one of that item? Would be a nice usability feature.

I'm trying to keep you from getting bored.
 

slyz

Developer
I went and copied KoL's interface, and forgot I could steal Mafia's own interface!
About the link to 'Feed', I think I could do that (now that I found simple javascript tutorials).

@ jC: thanks, I'll factor all those things in.

Regarding eyepatch and swashbuckling pants, they are considered items to keep only if you don't have pirate fledges, or if you have pirate fledges but can't equip them (myst < 60 ). Since you generally only have one of them, they will only be shown when you can feed them (hence why you never see them colored blue).
 

slyz

Developer
I just ascended and started using this in-run. I ran into a little problem when trying to feed a saucepan:
Code:
> slimeling 1 Saucepan

Verifying ingredients for 17-alarm Saucepan (1)...
Verifying ingredients for 5-Alarm Saucepan (1)...
Verifying ingredients for heavy hot sauce (1)...
You need 1 more big rock to continue.

This might cause problems for people with a big rock in their inventory, so I added a couple of lines to make sure saucepans won't be considered, until a solution is found (the worst case scenario would be to use visit_url() to do the feeding instead of using the CLI command).

EDIT: the fix was simple enough, now the script will append a 0 to all quantities.
 
Last edited:

Muhandes

Member
Just found this, and I must say it's awesome. All the micromanagement was the main reason I wasn't using the slimeling as much as I could, this makes much of the hassle much easier.
Thanks!
 

heeheehee

Developer
Staff member
EDIT: the fix was simple enough, now the script will append a 0 to all quantities.

Presumably this means "insert a 0 before all quantities" (e.g. "slimeling 01 Saucepan"), for those keeping track at home. At least, that's what the discussion in the other thread seems to indicate (and the other option would just be absurd). Just clearing up some potential confusion.
 
Top