Before starting the checkoff, the student should have Intellij open with their project code
- The Instructor will first check that the code open in Intellij is opened from their local repo.
- Then the Instructor will check the local Git history to see if it matches the Github history, and to make sure the selected commit is before the due date.
- The due date is the same as the due date for Phase 2 on Gradescope
- If the date for the selected commit is late, the student receives a 50% point deduction on the lab demo checkoff grade.
- Each requirement can either be evaluated as full points, half points, or zero points
Basic World Functionality (78 points total)
- The Instructor will ask the student to run their project and will check for the following features
- World has a main menu screen with a New World, Load, and Quit option (2 point)
- The Instructor should hit “n” or “N” and check that the world prompts for a seed (2 point)
- The Instructor should type in a few random numbers and hit “s” or “S” which should immediately start the world (4 points)
- At this point the program should be running and there should be a visible world
- World has visually distinct walls and floors (4 points)
- World has hallways which are 1 or 2 tiles wide with at least 1 containing a turn in it (6 points)
- World has some number of rooms that are connected via hallways (12 points)
- The Instructor will now try the basic commands that should be available during gameplay
- Instructor should hit WASD randomly and check the player movement is consistent with the key pressed (4 points)
- Instructor should hover 3 different tiles and make sure their names show up somewhere on screen and the names make sense (10 points)
- Instructor should move into a wall and make sure the player stops at the wall instead of moving into it (4 points)
- Instructor should type “:q” or “:Q” which should quit the world and close the program. Instructor should remember world layout at this point (4 points)
- The program is now closed and we will test the load feature
- Student should run the world again after it has been closed and the main menu should appear
- Instructor should hit “l” or “L” and the world should immediately start (4 points)
- Instructor should check that the world layout is exactly as it was before closing the world (12 points)
- Instructor will run through the basic commands again (listed above) to make sure the world still works (10 points)
Randomness (42 points total)
- The Instructor should close the world again and will begin testing to see if worlds are randomly generated.
- The student should explain to the Instructor where they are making use of randomness and make mention of any pieces of their world which is consistent across all seeds
- Instructor should check that the use of randomness does not lead to a severe limitation on the variety of worlds (ie. randomly choosing a world layout from a finite set of worlds)
- The Instructor should open the world 3-5 times, making sure to use a different seed each time
- The Instructor will be looking for your world’s ability to generate variety in both world structure and player experience while exploring that world. What this means is when two different seeds are used to generate new worlds, these worlds should not feel identical (or close to identical).
- The grading breakdown is as follows:
- 42 points: The worlds are mainly randomly, as described by the above section.
- 21 points: The world exhibits a few random elements, but generally looks the same
- 0 points: The world contains no random elements.
Ambition Points (40 points max)
- The student should state and demonstrate the features that are in the Ambition category
- In the space below, the Instructor should write in the features the student successfully demonstrated and their point values based on the spec
- The list of possible ambition points can be found here
Conclusion
- The Instructor will then ask the student to run
git checkout master
in the student’s local repository.