Table of Contents
Programming Assignment: Interactive Story
Due: Monday, May 23rd at 23:59
Group size: Max 3 people
What to turn in: Single ZIP file with Python files, asset files and an item data file (special upload place TBD)
Note: Use comments in your code to explain what you are doing.
Note: If you use code or assets from others, remember to credit them in your comments.
The goal is to use everything you have learned so far about pulling a user/player into an interactive virtual environment, to create a compelling interactive story. The story should have a purpose, such as to be entertaining (e.g. through comedy or suspense), instructive (e.g. explain a historic event) or thought provoking in some way (e.g. social commentary). You may come up with your own story or use stories from other media (e.g. books or movies, but not stories that are already in interactive format). The story should be complete (beginning and an end), but be kept relatively short (few minutes of interaction time).
The focus in this assignment is on:
- Portraying a compelling and believable story environment
- Creating a memorable and engaging characters with clear roles
- Use constraints effectively to guide the user through the narrative
- The story should include:
- A clear beginning, which could be in the form of a scene that gets played out (i.e. cut-scene) or a text introduction. This beginning should set the context for the user's actions during the story (an important constraint!).
- An interaction with at least two characters (actors) that serve key roles in the story (pick archetypes!). The type of interaction is up to you (e.g. conversation, battle, business transaction).
- The use of at least 2 objects that the user picks up and uses in some way during the story.
- Two clear endings, one good and one bad, that result from the user's actions and interaction with characters.
- The assignment will be judged on these factors:
- Does the program run properly from beginning to end?
- Is the goal of the user clear from the beginning?
- Are the user's available actions always clear?
- Does the program provide implicit and/or contextual constraints on actions - not just explicit ones?
- Is the user's flow with the story maintained or does it get broken?
- Keep the following questions in mind:
- Can you use sounds and lighting to make the story more engaging? Can you use them to provide implicit constraints?
- Can you make use of various other media such as images and video to enrich the storyworld? (How big is the world? Is there a world outside your story?)
- What can you accomplish through dialog and text? Sometimes text can be more effective than only images. Again, think of the implicit constraints you can achieve through story text (it can help defining and maintaining context and roles).
- What kind of camera perspective would help the story. You may want to experiment.
- You can populate your room with items from The Panda 3D Model Archive if you like