prototype留学生讲解、辅导Python,Java/c++程序语言、讲解playing field

- 首页 >> 其他
Credit:
- checkpoint0.[pdf|txt] (checkpoint 0)
- checkpoint1.[pdf|txt], prototype.pdf (including user testing results!),
finalproject.zip (including all code so far) (checkpoint 1)
- finalproject.zip (final deadline)
Instructions:
You may work with a partner for this assignment. You must store your code in a private
repository if you are working with a partner. Everyone must complete interview grading after
your final submission has been turned in. Project presentations will be held in class on May 2nd.
Attendance is required.
Your job is to design and implement a board game that has a graphical user interface. This
game can be a game of your own design, it can be a near-replica of a game that already exists,
or it can be loosely based on a game that already exists.
Gameplay requirements (minimum):
1. Give a brief description of how your game is played and what (if any) game it is based off
of.
2. Your game must have some sort of "playing field"—a board, where cards are displayed,
etc, showing the current state of the game. Briefly describe what yours will look like.
3. Your game must have a consistent theme. What will it be?
4. You must have at least 3 different types of resource. What are they?
5. Players must be able to acquire resources. How?
6. You must have at least 2 different buildings/structures/upgrades that are related to one
another. What are they?
7. You must have at least 1 other mechanic (cards, a robber, trading, etc). What is it?
8. Your game must be multiplayer. How many players will you allow?
9. The computer must be able to control any number of the players (including all players).
What will the basic computer strategy be?
10. Your game must have well-defined begin and end states. What are they?
11. (Do you have any other features that you are hoping to incorporate?)
Simulation requirements (minimum):
1. Your GUI must include a mechanism by which to automatically simulate any number of
games being played between computer players.
12. After each game has been simulated, your GUI should display a graph showing how
many games which player has won so far.
a. If accumulation of resources from game to game is more important than who won
an individual game for your project, your graph should display the accumulation
of resources over time.
Technical requirements:
1. You must build your game in c++, using Qt.
2. Your interface must be legible.
a. This must be a graphical UI.
b. You must produce a low-fidelity prototype and conduct user testing. The game
should be easily playable.
3. You should plan on separating your objects into separate files as makes semantic
sense.
4. You must use and implement 1 of the following design patterns: flyweight, iterator,
factory, and prototype.
5. You must have an appropriate inheritance relationship between at least 2 objects. They
should have at least one method that is virtual and is appropriately used.
Checkpoint 0 :
checkpoint0.pdf
1. Your name & your partner’s name (if you have a partner).
2. If you have a partner, invite Felix to collaborate on your private repository.
3. Address the gameplay requirements. For each requirement, answer the question at the
end of the item.
4. What is your design proposal for the underlying object models for your project? (include
design pattern and inheritance relationship proposals here)
5. What do you planned to have completed for Checkpoint 1? This should be a detailed list.
Make sure to address what a user should be able to see/do by the this checkpoint.
Checkpoint 1 :
prototype.pdf (can be turned in on paper before the end of day on the 30th)
1. Low-fidelity prototypes & feedback from at least 2 people not in your group.
checkpoint1.pdf
2. What you planned on doing for this homework deadline. (Copy + pasted from
Checkpoint 0)
3. What you actually accomplished for this deadline.
a. Note any differences and explain why they occurred. Prefer honesty over
excuses.
4. What you have left to complete before the final deadline.
5. Screenshots of where your program is currently at. They don’t have to be exhaustive but
they should adequately depict the current state of your project running.
finalproject.zip
2- Your commented code up until this point.
Final Deadline :
finalproject.zip
- Your commented code, fully implemented.
Interview Grading and Project Presentations
- Interview grading will occur during the final week of classes and finals week.
- All projects will be presented on the final day of class (attendance is mandatory!),
during which we will award prizes to the projects for different categories. The categories
will be:
- Best project to show to a friend
- Best project to show during an interview
- Most fun
- Most beautiful
- Prizes will consist of eternal fame and glory.
3