Project sequence: Start Here → M5 Analyze → M5 Design → M6 Construct/Test Prototype → M7 Construct → M7 Test
The Module Six Milestone is a reduced Construct + Test iteration of the project SDLC. You will build one working portion of the larger text game before integrating the complete system in Module Seven.
The graded milestone deliverable is:
| Included in M6 | Intentionally deferred to M7 |
|---|---|
| Provided three-room dragon dictionary | Your Project One room map |
| Current-room output | Items in rooms |
| Movement commands | Inventory |
exit command |
Villain behavior |
| Gameplay loop | Winning by collecting all items |
| Decision branching | Losing by entering villain room too early |
| Input validation | Get-item command |
| Debugging/readability | Full-game functions and integration |
This boundary is important. A successful milestone is not supposed to look like the complete Project Two game.
Review:
- Module Six Milestone Guidelines and Rubric in D2L Brightspace
- Milestone Simplified Dragon Text Game supporting resources
- Your Project One
../design/move.pseudo - Project One instructor feedback related to movement
- SRS Section 2
Your Project One movement pseudocode can help you think about input, validation, branching, and room updates. The milestone's actual required scenario still comes from the current milestone Guidelines and Rubric.
The starter already includes the exact simplified dictionary supplied by the milestone:
rooms = {
"Great Hall": {"south": "Bedroom"},
"Bedroom": {"north": "Great Hall", "east": "Cellar"},
"Cellar": {"west": "Bedroom"},
}Read it carefully before coding. Do not replace it with your Project One rooms for this checkpoint.
Open move_between_rooms.py.
A useful development sequence is:
- Establish the starting room.
- Create the gameplay loop.
- Display the current room.
- Prompt for one command.
- Handle a valid movement command.
- Handle
exit. - Handle invalid input.
- Repeat until the required exit condition is reached.
- Test each branch and fix one defect at a time.
The optional move_between_rooms_sdw.md gives you
working space for this reduced problem.
Run the prototype from the repository root. Windows users must use Git Bash
for this bash command block.
cd ~/Repos/it140-projects
python3 prototype/move_between_rooms.py| Rubric criterion | Weight | Evidence to review |
|---|---|---|
| Functionality | 30% | Required movement and exit behavior works |
| Gameplay Loop | 10% | Repetition controls continued play |
| Decision Branching | 20% | Valid move, exit, and invalid paths are handled |
| Input Validation | 20% | Invalid commands are rejected appropriately |
| Debugging | 10% | Required cases were run and corrected |
| Industry Standard Best Practices | 10% | Comments, whitespace, and names support readability |
Use the Module Six section of ../tests/README.md.
At minimum, check:
- A valid move from the Great Hall.
- A valid move from the Bedroom.
- An invalid direction.
- An invalid command.
- The
exitcommand. - The loop ends at the required exit condition.
- The program runs without syntax errors.
- Names, comments, and whitespace are readable.
Submit move_between_rooms.py in D2L Brightspace according to the current
Module Six What to Submit instructions.
Keep the file and review instructor feedback after grading.
In Module Seven:
Reuse or adapt:
- Movement/dictionary techniques that worked
- Loop and branching experience
- Input-validation lessons
- Debugging lessons and instructor feedback
Replace or expand:
- Replace the three-room sample data with your Project One world.
- Add item and inventory behavior.
- Add required functions and function calls.
- Replace the milestone
exitending with the Project Two win/loss conditions.
Continue to the Project Two Construct instructions.