Bug is_npc_item() returns false for mystic/star chart despite those both being shop.php


New member
As stated in the title both the mystic shop and the star chart are shop.php but their items dont show up as true for is_npc_item(). This is relevant because pizza cube wont let you use as an ingredient anything that comes from shop.php, which in this case would include white pixels, star hats, etc. I know that I can work around this using the ash command craft_type to determine this, but I find it untidy when the function returns a value that is inconsistent with KoL (KoL considers star/pixel items to be npc items, ash/mafia does not).

The first way I considered resolving this was to add the shop items to npcstores.txt, just without a "cost" as it were. However that has much further reaching impact than I have the brains to figure out right now as NPCStoreDatabase is used in a lot of different contexts and I think the cost/benefit equation is way off.

My other, and arguably more sensible, idea is to just expand is_npc_item to check ConcoctionDatabase.getMixingMethod for PIXEL or STAR in addition to npcstores.txt? I'm not sure if there are downstream ramifications of this that others can think of?

Does anyone have any thoughts on this?