New Content - Implemented KoL categorizes familiars

Veracity

Developer
Staff member
I just noticed this. In the terrarium, every familiar is listed in "class=frow" table row. That also includes a variety of other fields:

data-stats="1"
data-meat="1"
data-items="1"
data-defense="1"
data-hp_restore="1"
data-mp_restore="1"
data-other="1"
data-attack="1"
data-itemdrops="1"

"items" means it drops special items.
"itemdrops" means Item Drop

I'm not sure if this is something we could use, but it would be a nice check on the categories we use in familiars.txt:

Code:
stat0 - vollyball-like
stat1 - sombrero-like
item0 - Item Drop
meat0 - Meat Drop
combat0 - Physical Attack
combat1 - Elemental Attack
block - potato-like
delevel - barrrnacle-like
hp0 - restore hp during combat
mp0 - restore mp during combat
other0 - does other things during combat
hp1 - restore hp after combat
mp1 - restore mp after combat
other1 - does other things during combat
passive - passive effect
underwater - breaths underwater
variable - varies according to equipment or other factors.

Emacs regexp manipulation of the HTML of my terrrarium gives the following:

Code:
1 (Mosquito): data-attack="1" data-hp_restore="1"
2 (Leprechaun): data-meat="1"
3 (Levitating Potato): data-defense="1"
4 (Angry Goat): data-attack="1"
5 (Sabre-Toothed Lime): data-attack="1"
6 (Fuzzy Dice): data-meat="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
7 (Spooky Pirate Skeleton): data-attack="1" data-defense="1"
8 (Barrrnacle): data-defense="1" data-underwater="1"
9 (Howling Balloon Monkey): data-attack="1" data-mp_restore="1"
10 (Stab Bat): data-attack="1"
11 (Grue): data-attack="1"
12 (Blood-Faced Volleyball): data-stats="1"
14 (Ghuol Whelp): data-hp_restore="1" data-mp_restore="1"
15 (Baby Gravy Fairy): data-itemdrops="1"
16 (Cocoabo): data-meat="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
17 (Star Starfish): data-attack="1" data-mp_restore="1"
18 (Hovering Sombrero): data-stats="1"
19 (Ghost Pickle on a Stick): data-attack="1" data-defense="1"
20 (Killer Bee): data-stats="1" data-attack="1"
21 (Whirling Maple Leaf): data-attack="1" data-mp_restore="1"
22 (Coffee Pixie): data-meat="1" data-itemdrops="1"
23 (Cheshire Bat): data-stats="1" data-meat="1"
24 (Jill-O-Lantern): data-stats="1" data-attack="1"
27 (Hanukkimbo Dreidl): data-meat="1" data-attack="1" data-defense="1" data-mp_restore="1"
29 (Feather Boa Constrictor): data-attack="1" data-defense="1" data-other="1"
31 (Personal Raincloud): data-stats="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
32 (Clockwork Grapefruit): data-attack="1"
33 (MagiMechTech MicroMechaMech): data-attack="1"
34 (Flaming Gravy Fairy): data-itemdrops="1" data-attack="1"
35 (Frozen Gravy Fairy): data-itemdrops="1" data-attack="1"
36 (Stinky Gravy Fairy): data-itemdrops="1" data-attack="1"
37 (Spooky Gravy Fairy): data-itemdrops="1" data-attack="1"
38 (Inflatable Dodecapede): data-attack="1"
39 (Pygmy Bugbear Shaman): data-stats="1" data-itemdrops="1"
40 (Doppelshifter): data-other="1"
43 (Temporal Riftlet): data-defense="1" data-other="1"
44 (Sweet Nutcracker): data-attack="1" data-other="1"
45 (Pet Rock): data-other="1"
46 (Snowy Owl): data-attack="1"
47 (Teddy Bear): data-defense="1"
48 (Ninja Pirate Zombie Robot): data-meat="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
49 (Sleazy Gravy Fairy): data-itemdrops="1" data-attack="1"
50 (Wild Hare): data-stats="1" data-meat="1" data-itemdrops="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
51 (Wind-up Chattering Teeth): data-attack="1"
52 (Spirit Hobo): data-stats="1" data-attack="1" data-mp_restore="1" data-other="1"
53 (Astral Badger): data-attack="1" data-items="1"
54 (Comma Chameleon): data-other="1"
55 (Misshapen Animal Skeleton): data-attack="1" data-defense="1"
56 (Scary Death Orb): data-attack="1"
59 (Reassembled Blackbird): data-other="1"
60 (Origami Towel Crane): data-defense="1"
61 (Ninja Snowflake): data-attack="1"
62 (Evil Teddy Bear): data-defense="1"
63 (Toothsome Rock): data-other="1"
65 (Ancient Yuletide Troll): data-stats="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
66 (Dandy Lion): data-itemdrops="1" data-hp_restore="1" data-mp_restore="1"
67 (O.A.F.): data-other="1"
68 (Penguin Goodfella): data-stats="1" data-attack="1" data-defense="1" data-items="1"
69 (Jumpsuited Hound Dog): data-itemdrops="1"
70 (Green Pixie): data-itemdrops="1" data-attack="1" data-items="1"
71 (Ragamuffin Imp): data-attack="1"
72 (Exotic Parrot): data-other="1"
73 (Wizard Action Figure): data-stats="1" data-itemdrops="1" data-attack="1" data-defense="1" data-hp_restore="1"
74 (Gluttonous Green Ghost): data-stats="1" data-attack="1" data-mp_restore="1" data-other="1"
77 (Crimbo P. R. E. S. S. I. E.): data-stats="1" data-attack="1" data-defense="1" data-mp_restore="1" data-other="1"
78 (Bulky Buddy Box): data-other="1"
79 (Teddy Borg): data-defense="1"
80 (RoboGoose): data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
81 (El Vibrato Megadrone): data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
82 (Mad Hatrack): data-stats="1" data-meat="1" data-itemdrops="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
83 (Adorable Seal Larva): data-attack="1" data-hp_restore="1" data-other="1"
84 (Untamed Turtle): data-defense="1" data-other="1"
85 (Animated Macaroni Duck): data-attack="1" data-mp_restore="1" data-other="1"
86 (Pet Cheezling): data-hp_restore="1" data-mp_restore="1" data-other="1"
87 (Autonomous Disco Ball): data-attack="1" data-defense="1" data-other="1"
88 (Mariachi Chihuahua): data-attack="1" data-other="1"
89 (Hobo Monkey): data-meat="1"
90 (Llama Lama): data-stats="1" data-defense="1" data-items="1"
91 (Cotton Candy Carnie): data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
92 (Disembodied Hand): data-attack="1" data-other="1"
93 (Black Cat): data-other="1"
96 (Baby Mutant Rattlesnake): data-stats="1" data-attack="1"
97 (Mutant Fire Ant): data-itemdrops="1" data-attack="1"
98 (Mutant Cactus Bud): data-meat="1" data-attack="1"
99 (Mutant Gila Monster): data-attack="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
100 (Cuddlefish): data-defense="1" data-hp_restore="1" data-mp_restore="1" data-underwater="1"
101 (Sugar Fruit Fairy): data-stats="1" data-itemdrops="1" data-items="1" data-other="1"
102 (Imitation Crab): data-attack="1" data-underwater="1"
103 (Pair of Ragged Claws): data-attack="1" data-defense="1"
104 (Magic Dragonfish): data-underwater="1" data-other="1"
105 (Frumious Bandersnatch): data-stats="1" data-other="1"
106 (Midget Clownfish): data-attack="1" data-mp_restore="1" data-underwater="1"
107 (Syncopated Turtle): data-itemdrops="1"
108 (Grinning Turtle): data-stats="1"
109 (Purse Rat): data-stats="1" data-other="1"
110 (Wereturtle): data-attack="1" data-other="1"
111 (Baby Sandworm): data-stats="1" data-items="1"
112 (Slimeling): data-itemdrops="1" data-attack="1" data-mp_restore="1" data-items="1" data-other="1"
113 (He-Boulder): data-meat="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
114 (Rock Lobster): data-attack="1" data-mp_restore="1" data-items="1" data-underwater="1"
115 (Urchin Urchin): data-meat="1" data-underwater="1"
116 (Grouper Groupie): data-itemdrops="1" data-underwater="1"
117 (Squamous Gibberer): data-attack="1" data-hp_restore="1" data-mp_restore="1" data-underwater="1" data-other="1"
120 (Stocking Mimic): data-meat="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1" data-other="1"
121 (Snow Angel): data-attack="1" data-mp_restore="1"
122 (Jack-in-the-Box): data-stats="1" data-itemdrops="1" data-other="1"
123 (BRICKO chick): data-attack="1" data-items="1"
124 (Baby Bugged Bugbear): data-stats="1" data-meat="1" data-itemdrops="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1" data-other="1"
134 (Underworld Bonsai): data-attack="1" data-mp_restore="1"
135 (Rogue Program): data-attack="1" data-mp_restore="1" data-items="1"
136 (Mini-Hipster): data-stats="1" data-itemdrops="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-other="1"
137 (Pottery Barn Owl): data-attack="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
138 (Hippo Ballerina): data-meat="1" data-itemdrops="1" data-attack="1" data-defense="1"
139 (Knob Goblin Organ Grinder): data-meat="1" data-attack="1" data-items="1" data-other="1"
140 (Piano Cat): data-meat="1" data-itemdrops="1"
141 (Dramatic Hedgehog): data-stats="1" data-meat="1"
142 (Smiling Rat): data-stats="1"
143 (Robot Reindeer): data-stats="1" data-meat="1" data-itemdrops="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
144 (Holiday Log): data-other="1"
146 (Obtuse Angel): data-itemdrops="1" data-items="1" data-other="1"
147 (Reconstituted Crow): data-other="1"
148 (Li'l Xenomorph): data-stats="1" data-itemdrops="1" data-items="1"
149 (Dataspider): data-attack="1" data-mp_restore="1"
150 (Pair of Stomping Boots): data-itemdrops="1" data-items="1"
151 (Feral Kobold): data-attack="1"
152 (Fancypants Scarecrow): data-stats="1" data-meat="1" data-itemdrops="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
154 (Bloovian Groose): data-stats="1" data-meat="1" data-items="1"
155 (Blavious Kloop): data-meat="1" data-itemdrops="1" data-items="1"
156 (Peppermint Rhino): data-itemdrops="1"
157 (Tickle-Me Emilio): data-stats="1" data-meat="1" data-attack="1" data-defense="1" data-hp_restore="1" data-mp_restore="1"
158 (Steam-Powered Cheerleader): data-itemdrops="1" data-defense="1"
159 (Happy Medium): data-stats="1" data-items="1" data-other="1"
160 (Artistic Goth Kid): data-stats="1" data-other="1"
161 (Flaming Face): data-attack="1"
162 (Reagnimated Gnome): data-itemdrops="1" data-attack="1" data-defense="1" data-underwater="1" data-other="1"
163 (Hovering Skull): data-stats="1"
164 (Mini-Skulldozer): data-attack="1" data-defense="1"
165 (Angry Jung Man): data-meat="1" data-itemdrops="1" data-items="1"
166 (Unconscious Collective): data-stats="1" data-meat="1" data-items="1"
167 (Nanorhino): data-attack="1" data-defense="1" data-other="1"
168 (Oily Woim): data-other="1"
169 (Homemade Robot): data-other="1"
170 (MiniMechaElf): data-attack="1"
171 (Gelatinous Cubeling): data-itemdrops="1" data-defense="1" data-items="1"
172 (Adorable Space Buddy): data-attack="1" data-hp_restore="1" data-mp_restore="1" data-underwater="1"
173 (Nosy Nose): data-defense="1" data-other="1"
174 (Mini-Adventurer): data-stats="1" data-meat="1" data-attack="1" data-defense="1" data-other="1"
175 (Mechanical Songbird): data-itemdrops="1"
176 (Reanimated Reanimator): data-stats="1" data-meat="1" data-itemdrops="1" data-attack="1" data-defense="1"
177 (Warbear Drone): data-attack="1"
178 (Grimstone Golem): data-meat="1" data-itemdrops="1" data-items="1"
179 (Grim Brother): data-stats="1" data-meat="1" data-items="1"
180 (Miniature Sword & Martini Guy): 
181 (Putty Buddy): data-attack="1" data-hp_restore="1"
182 (Twitching Space Critter): data-attack="1" data-mp_restore="1"
183 (Galloping Grill): data-stats="1" data-mp_restore="1" data-items="1"
185 (Helix Fossil): data-attack="1" data-defense="1" data-other="1"
186 (Xiblaxian Holo-Companion): data-defense="1" data-other="1"
187 (Baby Z-Rex): data-stats="1" data-attack="1"
188 (Fist Turkey): data-stats="1" data-meat="1" data-itemdrops="1" data-attack="1" data-items="1"
189 (Crimbo Shrub): data-stats="1" data-attack="1" data-hp_restore="1" data-other="1"
190 (Mini-Crimbot): data-other="1"
191 (Topiary Skunk): data-attack="1" data-hp_restore="1"
192 (Golden Monkey): data-stats="1" data-meat="1" data-items="1"
193 (Adventurous Spelunker): data-meat="1" data-itemdrops="1" data-items="1"
194 (Sludgepuppy): data-attack="1" data-defense="1"
195 (Baby Mayonnaise Wasp): data-attack="1"
196 (Puck Man): data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1" data-other="1"
197 (Ms. Puck Man): data-defense="1" data-hp_restore="1" data-mp_restore="1" data-items="1" data-other="1"
198 (Lil' Barrel Mimic): data-stats="1" data-hp_restore="1" data-mp_restore="1" data-items="1"
199 (Machine Elf): data-stats="1" data-other="1"
200 (Choctopus): data-itemdrops="1" data-hp_restore="1" data-mp_restore="1"
201 (Rockin' Robin): data-stats="1" data-itemdrops="1"
202 (Restless Cow Skull): data-attack="1" data-defense="1"
203 (Intergnat): data-attack="1" data-mp_restore="1" data-other="1"
204 (Software Bug): 
205 (Bark Scorpion): data-attack="1"
 

Veracity

Developer
Staff member
Revision 17448 does this:

Adds a "drop" category which is the equivalent of KoL's "items" category
Soups up checkfamiliars to look in your terrarium and compare what KoL says with what we think, and vice versa.

The output from running this was surprising.

Code:
[color=green]> checkfamiliars[/color]

Checking familiar powers from terrarium.
Retrieving familiar data...
Familiar data retrieved.
*** familiar #6 (Fuzzy Dice): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #6 (Fuzzy Dice): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #6 (Fuzzy Dice): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #6 (Fuzzy Dice): KoL says 'meat' but we do not have 'meat0'
*** familiar #6 (Fuzzy Dice): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #6 (Fuzzy Dice): KoLmafia has 'other0' but KoL does not say 'other'
*** familiar #16 (Cocoabo): KoL says 'meat' but we do not have 'meat0'
*** familiar #20 (Killer Bee): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #27 (Hanukkimbo Dreidl): KoL says 'meat' but we do not have 'meat0'
*** familiar #29 (Feather Boa Constrictor): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #31 (Personal Raincloud): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #31 (Personal Raincloud): KoLmafia has 'other1' but KoL does not say 'other'
*** familiar #40 (Doppelshifter): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #47 (Teddy Bear): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #47 (Teddy Bear): KoLmafia has 'other0' but KoL does not say 'other'
*** familiar #48 (Ninja Pirate Zombie Robot): KoL says 'meat' but we do not have 'meat0'
*** familiar #48 (Ninja Pirate Zombie Robot): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #50 (Wild Hare): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #50 (Wild Hare): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #50 (Wild Hare): KoL says 'meat' but we do not have 'meat0'
*** familiar #50 (Wild Hare): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #50 (Wild Hare): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #52 (Spirit Hobo): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #54 (Comma Chameleon): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #60 (Origami Towel Crane): KoLmafia has 'other0' but KoL does not say 'other'
*** familiar #62 (Evil Teddy Bear): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #65 (Ancient Yuletide Troll): KoL says 'item' but we do not have 'drop'
*** familiar #68 (Penguin Goodfella): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #68 (Penguin Goodfella): KoL says 'item' but we do not have 'drop'
*** familiar #74 (Gluttonous Green Ghost): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #77 (Crimbo P. R. E. S. S. I. E.): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #77 (Crimbo P. R. E. S. S. I. E.): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #79 (Teddy Borg): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #79 (Teddy Borg): KoLmafia has 'other0' but KoL does not say 'other'
*** familiar #80 (RoboGoose): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #80 (RoboGoose): KoL says 'item' but we do not have 'drop'
*** familiar #81 (El Vibrato Megadrone): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #81 (El Vibrato Megadrone): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #81 (El Vibrato Megadrone): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #81 (El Vibrato Megadrone): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #81 (El Vibrato Megadrone): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #82 (Mad Hatrack): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #82 (Mad Hatrack): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #82 (Mad Hatrack): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #82 (Mad Hatrack): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #82 (Mad Hatrack): KoL says 'meat' but we do not have 'meat0'
*** familiar #82 (Mad Hatrack): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #82 (Mad Hatrack): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #82 (Mad Hatrack): KoLmafia has 'variable' but KoL does not say 'other'
*** familiar #83 (Adorable Seal Larva): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #84 (Untamed Turtle): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #85 (Animated Macaroni Duck): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #86 (Pet Cheezling): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #87 (Autonomous Disco Ball): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #88 (Mariachi Chihuahua): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #90 (Llama Lama): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #92 (Disembodied Hand): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #99 (Mutant Gila Monster): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #101 (Sugar Fruit Fairy): KoL says 'item' but we do not have 'drop'
*** familiar #101 (Sugar Fruit Fairy): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #109 (Purse Rat): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #110 (Wereturtle): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #112 (Slimeling): KoL says 'item' but we do not have 'drop'
*** familiar #112 (Slimeling): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #114 (Rock Lobster): KoL says 'item' but we do not have 'drop'
*** familiar #117 (Squamous Gibberer): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #117 (Squamous Gibberer): KoLmafia has 'block' but KoL does not say 'defense'
*** familiar #120 (Stocking Mimic): KoL says 'item' but we do not have 'drop'
*** familiar #120 (Stocking Mimic): KoL says 'meat' but we do not have 'meat0'
*** familiar #120 (Stocking Mimic): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #122 (Jack-in-the-Box): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #123 (BRICKO chick): KoL says 'item' but we do not have 'drop'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'item' but we do not have 'drop'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'meat' but we do not have 'meat0'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #136 (Mini-Hipster): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #136 (Mini-Hipster): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #136 (Mini-Hipster): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #136 (Mini-Hipster): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #136 (Mini-Hipster): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #136 (Mini-Hipster): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #137 (Pottery Barn Owl): KoL says 'item' but we do not have 'drop'
*** familiar #139 (Knob Goblin Organ Grinder): KoL says 'item' but we do not have 'drop'
*** familiar #139 (Knob Goblin Organ Grinder): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #143 (Robot Reindeer): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #143 (Robot Reindeer): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #143 (Robot Reindeer): KoL says 'item' but we do not have 'drop'
*** familiar #143 (Robot Reindeer): KoL says 'meat' but we do not have 'meat0'
*** familiar #143 (Robot Reindeer): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #143 (Robot Reindeer): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #146 (Obtuse Angel): KoL says 'item' but we do not have 'drop'
*** familiar #148 (Li'l Xenomorph): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #150 (Pair of Stomping Boots): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #152 (Fancypants Scarecrow): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #152 (Fancypants Scarecrow): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #152 (Fancypants Scarecrow): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #152 (Fancypants Scarecrow): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #152 (Fancypants Scarecrow): KoL says 'meat' but we do not have 'meat0'
*** familiar #152 (Fancypants Scarecrow): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #152 (Fancypants Scarecrow): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #152 (Fancypants Scarecrow): KoLmafia has 'variable' but KoL does not say 'other'
*** familiar #157 (Tickle-Me Emilio): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #157 (Tickle-Me Emilio): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #157 (Tickle-Me Emilio): KoL says 'meat' but we do not have 'meat0'
*** familiar #157 (Tickle-Me Emilio): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #159 (Happy Medium): KoL says 'item' but we do not have 'drop'
*** familiar #162 (Reagnimated Gnome): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #162 (Reagnimated Gnome): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #162 (Reagnimated Gnome): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #162 (Reagnimated Gnome): KoL says 'underwater' but we do not have 'underwater'
*** familiar #163 (Hovering Skull): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #167 (Nanorhino): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #171 (Gelatinous Cubeling): KoL says 'item' but we do not have 'drop'
*** familiar #173 (Nosy Nose): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #174 (Mini-Adventurer): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #174 (Mini-Adventurer): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #174 (Mini-Adventurer): KoL says 'meat' but we do not have 'meat0'
*** familiar #174 (Mini-Adventurer): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #174 (Mini-Adventurer): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #176 (Reanimated Reanimator): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #176 (Reanimated Reanimator): KoL says 'defense' but we have neither 'block' nor 'delevel'
*** familiar #176 (Reanimated Reanimator): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #176 (Reanimated Reanimator): KoL says 'meat' but we do not have 'meat0'
*** familiar #176 (Reanimated Reanimator): KoLmafia has 'other0' but KoL does not say 'other'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'stat0' but KoL does not say 'stats'
*** familiar #183 (Galloping Grill): KoL says 'item' but we do not have 'drop'
*** familiar #183 (Galloping Grill): KoLmafia has 'combat1' but KoL does not say 'attack'
*** familiar #185 (Helix Fossil): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #188 (Fist Turkey): KoL says 'meat' but we do not have 'meat0'
*** familiar #188 (Fist Turkey): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #189 (Crimbo Shrub): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #189 (Crimbo Shrub): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #190 (Mini-Crimbot): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #196 (Puck Man): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #197 (Ms. Puck Man): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #198 (Lil' Barrel Mimic): KoL says 'hp_restore' but we have neither 'hp0' nor 'hp1'
*** familiar #198 (Lil' Barrel Mimic): KoL says 'item' but we do not have 'drop'
*** familiar #198 (Lil' Barrel Mimic): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #199 (Machine Elf): KoL says 'stats' but we have neither 'stat0' nor 'stat1'
*** familiar #199 (Machine Elf): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #203 (Intergnat): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #203 (Intergnat): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #203 (Intergnat): KoLmafia has 'item0' but KoL does not say 'itemdrops'
*** familiar #204 (Software Bug): KoLmafia has 'none' but KoL does not say 'other'
*** familiar #205 (Bark Scorpion): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #205 (Bark Scorpion): KoLmafia has 'none' but KoL does not say 'other'
Checking familiar images.
*** familiar #206 has image totinstume2.gif but KoL says it is tottot.gif
Familiars checked.
KoL's "data-meat" apparently includes "meat dropped in combat" as well as "Meat Drop"
We list all sorts of in-combat things for the Cocoabo, for example, but not the Fuzzy Dice.
Some of them are KoL errors. For example, the Miniature Sword and Martini Guy does stuff but KoL lists no powers at all.

In any case, there is a lot to consider here - both in how we categorize particular familiars and in how this command interprets what KoL says.
 

Veracity

Developer
Staff member
Revision 17449 adds three familiar powers:

meat1 - drops Meat during combat
stat2 - extra stats at beginning of or during combat
stat3 - extra stats at end of combat.

checkfamiliars now gives the following:

Code:
[color=green]> checkfamiliars[/color]

Checking familiar powers from terrarium.
Retrieving familiar data...
Familiar data retrieved.
*** familiar #29 (Feather Boa Constrictor): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #29 (Feather Boa Constrictor): KoLmafia has 'meat1' but KoL does not say 'meat'
*** familiar #52 (Spirit Hobo): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #62 (Evil Teddy Bear): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #68 (Penguin Goodfella): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #80 (RoboGoose): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #101 (Sugar Fruit Fairy): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #110 (Wereturtle): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #117 (Squamous Gibberer): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #117 (Squamous Gibberer): KoLmafia has 'block' but KoL does not say 'defense'
*** familiar #122 (Jack-in-the-Box): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #136 (Mini-Hipster): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #136 (Mini-Hipster): KoLmafia has 'meat1' but KoL does not say 'meat'
*** familiar #150 (Pair of Stomping Boots): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #163 (Hovering Skull): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'stat0' but KoL does not say 'stats'
*** familiar #183 (Galloping Grill): KoLmafia has 'combat1' but KoL does not say 'attack'
*** familiar #185 (Helix Fossil): KoL says 'other' but we have none of 'none', 'other0', 'other1', 'passive', or 'variable'
*** familiar #185 (Helix Fossil): KoLmafia has 'hp1' but KoL does not say 'hp_restore'
*** familiar #185 (Helix Fossil): KoLmafia has 'mp1' but KoL does not say 'mp_restore'
*** familiar #199 (Machine Elf): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoLmafia has 'item0' but KoL does not say 'itemdrops'
*** familiar #204 (Software Bug): KoLmafia has 'none' but KoL does not say 'other'
Checking familiar images.
*** familiar #206 has image totinstume2.gif but KoL says it is tottot.gif
Familiars checked.
I believe that a most of those are KoL errors. I'll evaluate them again later and either fix KoLmafia or list exactly what KoL has wrong, and will then mark this Implemented.
 

Veracity

Developer
Staff member
I souped it up further to optionally let you see which powers KoL claims for a familiar but which we tag as 'variable', since they depend on equipment.

*** familiar #29 (Feather Boa Constrictor): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #29 (Feather Boa Constrictor): KoLmafia has 'meat1' but KoL does not say 'meat'

The Feather Boa Constrictor attacks for Sleaze damage, blocks, and grants Meat during combat. For every other familiar that does that, KoL says "meat", not "other"

*** familiar #40 (Doppelshifter): KoL says 'other' but we say 'variable'

Correct

*** familiar #52 (Spirit Hobo): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'

Spirit Hobo attacks, gives stats, and acts like a Starfish when fed booze. Does "when fed booze" make it "other"?

*** familiar #54 (Comma Chameleon): KoL says 'other' but we say 'variable'

Correct.

*** familiar #62 (Evil Teddy Bear): KoLmafia has 'combat0' but KoL does not say 'attack'

The Evil Teddy Bear does attack.

*** familiar #68 (Penguin Goodfella): KoL says 'attack' but we have neither 'combat0' nor 'combat1'

According to the Wiki, the Penguin Goodfella does not attack for damage.

*** familiar #80 (RoboGoose): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'

According to the Wiki, the RoboGoose sometimes restores HP during combat but does nothing with MP.

*** familiar #81 (El Vibrato Megadrone): KoL says 'attack' but we say 'variable'
*** familiar #81 (El Vibrato Megadrone): KoL says 'defense' but we say 'variable'
*** familiar #81 (El Vibrato Megadrone): KoL says 'hp_restore' but we say 'variable'
*** familiar #81 (El Vibrato Megadrone): KoL says 'mp_restore' but we say 'variable'
*** familiar #81 (El Vibrato Megadrone): KoL says 'other' but we say 'variable'

Correct - it depends on programming.

*** familiar #82 (Mad Hatrack): KoL says 'attack' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'defense' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'hp_restore' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'itemdrops' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'meat' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'mp_restore' but we say 'variable'
*** familiar #82 (Mad Hatrack): KoL says 'stats' but we say 'variable'

Correct - it depends on equipment

*** familiar #83 (Adorable Seal Larva): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #84 (Untamed Turtle): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #85 (Animated Macaroni Duck): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #86 (Pet Cheezling): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #87 (Autonomous Disco Ball): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #88 (Mariachi Chihuahua): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #92 (Disembodied Hand): KoL says 'other' but we say 'variable'

Correct - it depends on equipment

*** familiar #101 (Sugar Fruit Fairy): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'

The Sugar Fruit Fairy increases stat gains but drains MP to do so. I guess that is "other1".

*** familiar #110 (Wereturtle): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'

According to the Wiki, all it does is attack.

*** familiar #117 (Squamous Gibberer): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #117 (Squamous Gibberer): KoLmafia has 'block' but KoL does not say 'defense'

According to the Wiki, it blocks but does no damage. KoL should say "defense", not "attack".

*** familiar #122 (Jack-in-the-Box): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'

It cranks up. I guess that is "other1".

*** familiar #124 (Baby Bugged Bugbear): KoL says 'hp_restore' but we say 'variable'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'itemdrops' but we say 'variable'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'meat' but we say 'variable'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'mp_restore' but we say 'variable'
*** familiar #124 (Baby Bugged Bugbear): KoL says 'stats' but we say 'variable'

Correct. It depends on equipment.

*** familiar #136 (Mini-Hipster): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #136 (Mini-Hipster): KoLmafia has 'meat1' but KoL does not say 'meat'

According to the Wiki, it does not increase item drops and it sometimes drops Meat during combat

*** familiar #143 (Robot Reindeer): KoL says 'defense' but we say 'variable'
*** familiar #143 (Robot Reindeer): KoL says 'itemdrops' but we say 'variable'
*** familiar #143 (Robot Reindeer): KoL says 'meat' but we say 'variable'
*** familiar #143 (Robot Reindeer): KoL says 'mp_restore' but we say 'variable'
*** familiar #143 (Robot Reindeer): KoL says 'stats' but we say 'variable'

Correct. It depends on equipment.

*** familiar #148 (Li'l Xenomorph): KoL says 'itemdrops' but we say 'variable'

Correct. It depends on equipment.

*** familiar #150 (Pair of Stomping Boots): KoLmafia has 'combat0' but KoL does not say 'attack'

According to the Wiki, it attacks for physical damage in combat.

*** familiar #152 (Fancypants Scarecrow): KoL says 'attack' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'defense' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'hp_restore' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'itemdrops' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'meat' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'mp_restore' but we say 'variable'
*** familiar #152 (Fancypants Scarecrow): KoL says 'stats' but we say 'variable'

Correct. It depends on equipment.

*** familiar #162 (Reagnimated Gnome): KoL says 'attack' but we say 'variable'
*** familiar #162 (Reagnimated Gnome): KoL says 'defense' but we say 'variable'
*** familiar #162 (Reagnimated Gnome): KoL says 'other' but we say 'variable'
*** familiar #162 (Reagnimated Gnome): KoL says 'underwater' but we say 'variable'

Correct. It depends on equipment.

*** familiar #163 (Hovering Skull): KoLmafia has 'combat0' but KoL does not say 'attack'

According to the Wiki, it attacks for physical damage

*** familiar #174 (Mini-Adventurer): KoL says 'attack' but we say 'variable'
*** familiar #174 (Mini-Adventurer): KoL says 'defense' but we say 'variable'
*** familiar #174 (Mini-Adventurer): KoL says 'meat' but we say 'variable'
*** familiar #174 (Mini-Adventurer): KoL says 'other' but we say 'variable'
*** familiar #174 (Mini-Adventurer): KoL says 'stats' but we say 'variable'

Correct. It depends on your class.

*** familiar #176 (Reanimated Reanimator): KoL says 'attack' but we say 'variable'
*** familiar #176 (Reanimated Reanimator): KoL says 'itemdrops' but we say 'variable'
*** familiar #176 (Reanimated Reanimator): KoL says 'meat' but we say 'variable'

Correct. It depends on body parts.

*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'stat0' but KoL does not say 'stats'

KoL lists no powers.

*** familiar #183 (Galloping Grill): KoLmafia has 'combat1' but KoL does not say 'attack'

According to the Wiki, it attacks for elemental damage

*** familiar #185 (Helix Fossil): KoL says 'other' but we have none of 'none', 'other0', 'other1', or 'passive'
*** familiar #185 (Helix Fossil): KoLmafia has 'hp1' but KoL does not say 'hp_restore'
*** familiar #185 (Helix Fossil): KoLmafia has 'mp1' but KoL does not say 'mp_restore'

According to the Wiki it fights, delevels, and restores HP & MP after combat.

*** familiar #189 (Crimbo Shrub): KoL says 'hp_restore' but we say 'variable'

Correct. It depends on decorations.

*** familiar #190 (Mini-Crimbot): KoL says 'other' but we say 'variable'

Correct. It depends on equipment.

*** familiar #199 (Machine Elf): KoLmafia has 'drop' but KoL does not say 'items'

It drops the Snowglobe, at least.

*** familiar #203 (Intergnat): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoLmafia has 'item0' but KoL does not say 'itemdrops'

It drops BACON sometimes.
The Wiki says it is always a Fairy

*** familiar #204 (Software Bug): KoLmafia has 'none' but KoL does not say 'other'

KoL lists no powers.
 

Veracity

Developer
Staff member
Revision 17450 adds 'other1' to the Sugar Fruit Fairy and the Jack-in-the-Box.

I think that everything else is a KoL bug, as described above.

I think this is as Implemented as it is going to get.

*** familiar #29 (Feather Boa Constrictor): KoL says 'other' but we have none of 'none', 'other0', 'other1',or 'passive'
*** familiar #29 (Feather Boa Constrictor): KoLmafia has 'meat1' but KoL does not say 'meat'
*** familiar #52 (Spirit Hobo): KoL says 'other' but we have none of 'none', 'other0', 'other1',or 'passive'
*** familiar #62 (Evil Teddy Bear): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #68 (Penguin Goodfella): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #80 (RoboGoose): KoL says 'mp_restore' but we have neither 'mp0' nor 'mp1'
*** familiar #110 (Wereturtle): KoL says 'other' but we have none of 'none', 'other0', 'other1',or 'passive'
*** familiar #117 (Squamous Gibberer): KoL says 'attack' but we have neither 'combat0' nor 'combat1'
*** familiar #117 (Squamous Gibberer): KoLmafia has 'block' but KoL does not say 'defense'
*** familiar #136 (Mini-Hipster): KoL says 'itemdrops' but we do not have 'item0'
*** familiar #136 (Mini-Hipster): KoLmafia has 'meat1' but KoL does not say 'meat'
*** familiar #150 (Pair of Stomping Boots): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #163 (Hovering Skull): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'combat0' but KoL does not say 'attack'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #180 (Miniature Sword & Martini Guy): KoLmafia has 'stat0' but KoL does not say 'stats'
*** familiar #183 (Galloping Grill): KoLmafia has 'combat1' but KoL does not say 'attack'
*** familiar #185 (Helix Fossil): KoL says 'other' but we have none of 'none', 'other0', 'other1',or 'passive'
*** familiar #185 (Helix Fossil): KoLmafia has 'hp1' but KoL does not say 'hp_restore'
*** familiar #185 (Helix Fossil): KoLmafia has 'mp1' but KoL does not say 'mp_restore'
*** familiar #199 (Machine Elf): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoLmafia has 'drop' but KoL does not say 'items'
*** familiar #203 (Intergnat): KoLmafia has 'item0' but KoL does not say 'itemdrops'
*** familiar #204 (Software Bug): KoLmafia has 'none' but KoL does not say 'other'
 

lostcalpolydude

Developer
Staff member
According to the Wiki, the Penguin Goodfella does not attack for damage.
You can use a goodfella contract (dropped by the familiar) with the goodfella active to do damage based on the goodfella's weight. I remember that feeling strong when I picked it up as my second IotM.
 

Veracity

Developer
Staff member
So, it effectively grants you a new skill - "Use Goodfella Contract" - when it is active. Sort of like He-Boulder and Nosy Nose and any of a number of others do.

The He-Boulder's colored rays deal damage, just as the Goodfella contract does. Yet, the He-Boulder is listed as:

meat hp_restore mp_restore other

No "attack".

Which is to say, it's inconsistent.

I read "attack" as "the familiar takes it upon itself to attack the enemy in combat for either physical or elemental damage" - which is consistent with our combat0 and combat1 categories.

The Penguin Goodfella is the ONLY familiar KoL labels as "attack" which does not do that.
 

Veracity

Developer
Staff member
Yes. Your point?

Ah. Probably that, because they are not limited-per-day, the familiar picker doesn't show this familiar.

I will fix this.
 
*** familiar #110 (Wereturtle): KoL says 'other' but we have none of 'none', 'other0', 'other1',or 'passive'
*** familiar #136 (Mini-Hipster): KoL says 'itemdrops' but we do not have 'item0'

The Wereturtle might refer to it's interaction with the moons, which doesn't excuse anything, because the grue isn't tagged as other. I agree that the others seem to be Kol bugs and/or inconsistencies. I dunno, leave it as is or mark both the wereturtle and the grue as variable?
However, the Hipster is correct, and should probably be marked as variable by KoLMafia standards: the chiptune-guitar (one of his specific equips) grants 25% item drop.

And good work, I like the sorted menu, so having it expanded, rechecked and improved is great.
 

Veracity

Developer
Staff member
Oh yes - the Hipster has custom accessories.

I agree - it should be "variable" - which is to say, "configurable via equipment".
 
Top