Some Game Design Ideas (technically constraints) -- from the Inform 7 Bootcamp. These suggestions/challenges can be adapted to Twine or other platforms.
1. "The Power of a Good Map". Design a game in which the story unfolds ONLY through the player's movement across a map. You will have to early on communicate to the player that their only available action is to move in some direction, so they don't get frustrated trying to do other things. The story must advance only through movement. No cheating by sneaking advanced code into the game. Only rooms and room descriptions allowed.
2. "Going Deep Instead of Wide". Design a game that takes place all in one location. Every attempt by the player to navigate away should be blocked. The story should unfold through the player's examination of objects, which reveal other objects. Make every object in the room scenery – nothing can be takeable! You use your room description to start, and after that the description of objects that are in the room to refer to other scenery objects, which in turn contain descriptions of other objects. You should somehow indicate to the player that the only appropriate action is examining. You can't stop them from trying other actions and getting default responses for them (we don't start altering actions until tomorrow), so you need a narrative solution to get them to leave stuff alone, and only examine it. No cheating by sneaking advanced code into the game. Only object descriptions are allowed.
3. "A Good Old Fashioned Cooking Game". Design a game that takes place in a kitchen. Players should be able to take items, put them in and out of containers, open and close doors, turn devices on and off, and of course, eat things. Write a win condition and a lose condition. You may want additional player actions (like mixing or baking), but try to constrain yourself to these limited actions. The challenge here is dynamic object descriptions, changing them based on a condition. No cheating by sneaking advanced code into the game. Use only basic tutorial elements of the tool/platform of choice.
4. "And Now for Something Completely Different". Spin this Wheel twice. Design a game that matches the themes/genres you were randomly assigned. Make a new set of players actions not typically seen in your average work of IF. You will have to find a smooth narrative way to introduce these actions to your player. The rest of the game can be anything that you like, just so long as the narrative centers around your new actions – they should be essential to the plot, rather than decoration.
5. “May I Help You?” Design a game that features a deliberately frustrating conversation in which the speaker is slippery and doesn't want to answer the questions. Clues to what the player can ask should be hidden in the conversation itself. Never leave the player without something to ask. This is different from the frustration that arises from failing to write enough code to create responses for everything the player might reasonably ask. Come up with a compelling narrative that explains your character's reluctance to disclose information to the player.
6. “You’ve got an hour.” Design a game that lasts exactly one hour – 60 player turns (not counting out of world comments or errors). Do your best to make that hour exciting. [Editor's Note: Inform 7 simulates in-game time as one minute per turn/command entered. This does not mean it takes an hour to play.]
7. “Add to your Collection”. Design a collecting game that requires the player to collect some unusual kind of thing, some of greater and lesser quality and desirability. Add NPs who randomly have some of the things that you want. If you want it to be a treasure hunting as well as trading game that's okay too. Make sure you create a game world where this obsession makes sense.
8. “Not your Mother’ Alexa”. Design a game that simulates a chatbot which has a narrow knowledge framework. Making a frustrating chatbot is not the challenge – coming up with an engaging storyline in which the mechanic of the conversation makes sense is the real task.