Project

  • Purpose a Card matching game to test user’s pattern recognition skills under a time constraint
  • Leaderboard will be my main focus for the Collegeboard presentation and will be my slice of the main project
  • What will be present will be the leaderboard which displays the top 10 ranked scores across all users
  • Search functionality to be able to search for all scores by a certain user across all scores even those that are not displayed
  • Data will be stored in a database and will be updated every time a user plays the game

CPT Video

  • Generation of a leaderboard result and the page updating in real time as result
  • Searching the database to be able to get user score data.

Collegeboard Criteria

  • Program Purpose and Function
    • Purpose: To sort and filter through user score data
    • Function: Ranks users by the highest score and then adds them to a database which the top 10 scores are displayed on the leaderboard and the others can be searched for.
  • Data Abstraction
    • Lists will be used to filter data generated via the game in json format into another list ranking the users by highest score. Which will then be added to a database for permanent storage. Which can later then be accessed by the leaderboard and search functionality.
  • Managing Complexity
    • Without lists sorting would be extremely difficult if not possible to sort while iterating through all the possible user scores. Along with a database not being present would make search next to impossible as the data would be impermanent and thus would be unable to be accessed to be displayed or searched through.
  • Procedural Abstraction
    • Functions to be able to continually update the leaderboard along with algorithms to sort the user data that is generated then added to the database. Along with other functions that are needed to be able to sort the database to display the results that are in the database.
  • Testing
    • Indicating live updating of the leaderboard and showcasing the changes made by playing the game and setting a score that is on the board. Using the search bar and searching for a users scores and data that is in the database while also displaying their respective positions.

Work In Progress

  • Frontend code for when the user searches to display the scores associated with the searched user.
  • Api needed for leaderboard data to be sent and and received to the frontend for all features just not only leaderboard.
  • Database for user storage that will store user score data, along with other databases needed for high-scores, and user credentials.
  • Algorithms needed to sort user data through the use of lists and adding the filtered data to the database. Adding some tools to prevent users from overwhelming the system with requests if that happens to become an issue.

  • Current Leaderboard Implementation.
    • Current Leaderboard Implementation. What is shown is a leaderboard with user scores ranked from highest to lowest with their corresponding usernames and scores. Only 10 items are shown along with a search bar and button.