When the Bestiary has been filled to at least 50% (270 entries). Once the player fills out all three Fairies in the Bestiary. When the Bestiary has been filled to at least 40% (216 entries). When in a specific biome and is happy enough. When the Bestiary has been filled completely (540 entries). When the Bestiary has been filled to at least 10% (54 entries). When the Bestiary has been filled to at least 45% (243 entries), and Town Bunny has not already been spawned.
When the Bestiary has been filled to at least 25% (135 entries), and the Town Dog has not already been spawned. The Town Cat has not already been spawned.
When the Bestiary has been filled to at least 30% (162 entries). When the Bestiary has been filled to at least 25% (135 entries).
Prices can also be higher or lower based on the NPC's happiness level. Note: All item prices can be decreased by equipping a Discount Card or Greedy Ring.