++ for the fun theme. mechanics are impressive! what mechanic are you using for an interaction that moves the player after a certain condition has been met (e.g. pass the guard after you've collected the soup)?
Here's the Bitsy code! It's basically a combination of a branching dialog and using the exit feature cleverly.
{
- {item "2"} == 1 ?
Oh hey Soupman. So you got your soup huh? Here, I'll let you back.{exit "SoupTown" 3 13}
- else ?
What a wonderfully peaceful day.
}