Unit 3: Game Projects
WHAT IS GUI?
A Graphical User Interface, or GUI, is a visual interface that allows users to interact with computers and software through graphical elements such as icons, buttons, windows, and menus. Unlike text-based interfaces, GUIs enhance user experience by providing a visually intuitive way to navigate complex tasks. Users interact with GUIs using input devices like a mouse, making computing more accessible without the need for memorizing intricate command-line instructions.
Key features of GUIs include the use of visual elements like icons and buttons for intuitive navigation, a WYSIWYG approach that shows users a preview of the final output as they work, and interactive capabilities that enable tasks such as clicking, dragging, and resizing. GUIs also support multitasking, allowing users to work with multiple windows and applications simultaneously, and they contribute to accessibility by minimizing the learning curve, making computing more inclusive for a diverse user base.
In modern computing, GUIs are integral components of operating systems like Windows, macOS, and Linux, as well as various software applications such as web browsers, office suites, and design tools. The evolution of GUIs has played a crucial role in making technology more approachable, even for users with limited technical knowledge, fostering a user-friendly computing environment.
~ Approximately 2 weeks
Your mission begins with the creation of the "Roll It 13" game, where you'll learn to program in Python while embracing the thrill of chance and strategy. The game involves rolling dice, tallying points, and employing strategic decisions to achieve a winning score. To keep you on track, Mrs. Greeff has set up checkpoints at crucial stages of the project. From understanding the game rules in the initial checkpoints to mastering advanced features in later stages, each checkpoint propels you forward in your game development journey.
Checkpoints:
Roll It 13 Instructions (End of Video 5): Understand the game rules and instructions, laying the groundwork for your coding journey.
Roll It 13 Working Rounds (End of Video 13): Implement functional rounds in the game, ensuring the basic mechanics are in place.
Complete Roll It 13 (End of Video 19): Bring the game to completion, incorporating all elements and refining the user experience.
RPS Looping (End of Video 25): Integrate Rock-Paper-Scissors (RPS) looping, adding a strategic layer to the game dynamics.
Complete RPS (End of Video 28): Finalize the RPS integration, refining and testing the game's overall functionality.
HL Game (End of Video 34): Explore and implement the Higher-Lower (HL) game feature, adding complexity and excitement to your project.
Remember, each checkpoint is a milestone in your game development adventure, providing opportunities to apply what you've learned and ensuring a well-rounded understanding of GUI game programming.
Deal Breakers
Student assessment work MUST include…
Evidence of debugging.
Evidence of testing.
For a higher grade (M / E) we are also looking for…
A program that is efficient, flexible and robust.
Evidence of testing boundary and unexpected values.
Comments that explain sections of code (we don't want a description of each line of code)
Nice to haves / good habits
Using planning!
Committing code to GitHub with non-default descriptions (ie: get students into the habit of writing meaningful descriptions for their commits)
Thinking about which piece of code / which function to use for a given problem / component.
Task 1 | Develop the Roll It 13 Dice Game
~ Approximately 1 week
Roll It 13 Instructions (Video 1 - 5): Understand the game rules and instructions, laying the groundwork for your coding journey.
Roll It 13 Working Rounds (Video 6 - 13): Implement functional rounds in the game, ensuring the basic mechanics are in place.
Complete Roll It 13 (Video 14 -19): Bring the game to completion, incorporating all elements and refining the user experience.
YouTube Video 🔗Playlist
Task 2 | Develop the Rock Paper Scissors Game
~ Approximately 1 week
RPS Looping (Video 20 - 25): Integrate Rock-Paper-Scissors (RPS) looping, adding a strategic layer to the game dynamics.
Complete RPS (Video 26 - 28): Finalize the RPS integration, refining and testing the game's overall functionality.
YouTube Video 🔗Playlist
Task 3 | Develop the Higher / Lower Game
~ optional
HL Game (Video 29 - 34): Explore and implement the Higher-Lower (HL) game feature, adding complexity and excitement to your project.