CPT Game-Plan

Category Expectation Explanation/Response
Program Purpose and Function Describes the purpose of the program, describes the program’s functionality, and can take an input and return an output. The purpose of this program is to provide the user with an entertaining and competitive experience through the gameplay of several virtual arcade games along with the exchange of digital currency, while being ranked based upon how much currency the user has.
Data Abstraction Shows how data has been stored in a collection and shows data from that collection as it contributes to the overall purpose of the program. Identifies the name of a variable representing the collection being used and describes what the data contained in the collection represents in the program. Our program abstracts data through the creation of records that are accessed in a backend database. The purpose of this database is to store crucial information about a user such as the number of tokens they have. This value can be used in our program to construct a leaderboard of players with the highest number of tokens in order to create a more competitive experience. We will also store a UserID, Name, and Password to identify users on the leaderboard and authenticate their account.
Managing Complexity Shows a collection of data that manages complexity. Explains an alternative method that would have been more complex and explains why that method could not be used or how it would have to be written differently. There will be many alternative ways to track currency or program each game, so we will show how we chose the simplest way to achieve the desired functionality and explain how it could have been done another way.
Procedural Abstraction Shows a student-developed procedure with at least one parameter that has an effect on the functionality of the procedure, and shows where that procedure is called. Describes how the procedure contributes to the functionality of the program. This will be found in each game that we develop, as all of our games are complex enough to require a function with a parameter.
Algorithm Implementation Includes a student-developed algorithm that includes sequencing, selection, and iteration. Explains how the algorithm works in detail enough to where someone could recreate it. The games that we develop for the virtual arcade will have sufficient algorithms to fit this criteria.
Testing Describe two calls to the selected procedure in response 3c. Each call must pass a argument that causes different outputs. Describes conditions being tested by each call. Identifies the result of each call. We will test two different features in each game, which test certain conditions and output different results.

Create Performance Task

Each person in our group is programming a game for the arcade, so each person’s CPT will be focused on their respective game. This all will be incorporated into a larger N@TM project, which is the entire arcade itself with an account, currency, and leader board system.

We also might add more games and features with those games so that the user does not get bored.

Code Plan

Pong will be coded with HTML/CSS/JS.

  1. The user pays 15 tokens to start the game
  2. They are prompted with a basic overview of the game, as follows:
    • Each round lasts 5 minutes
    • You must score as much as possible
    • Every time a user scores, they will earn 10 tokens. If the user wins, they win 50 tokens.
  3. The user’s score will be recorded on the leader board.

Video Plan

I plan to make Pong 5 minutes long. You must pay 20 tokens to play pong, and every time you score, you win 10 points. If you win the match, you win 50 tokens.