Flash Card Game - Assimilate

Revision as of 10:27, 24 April 2009 by Dbj4366 (talk | contribs)

Description

This project is one of many small projects focused on developing 4th grade math games which will run on the OLPC XO. We are RIT students who are working on this with the help of other developers who become interested in our projects. The focus of this project is to turn an existing game (Assimilate) into a math based flash card game which will hopefully be included on future XO's.

Group Members

Goals

Modify Assimilate in the following ways:

  • Fix the "tabs" so that there are 2 interfaces.
    • Create - Add questions & answers as well as categorize the cards (geometry, algebra, etc)
    • View - Show the question and input an answer. The game already removes points if you take over 10 seconds to guess, so we would like to add a count down timer to the side showing how many seconds remain.
  • Display the correct answer or allow for another guess (worth less points for each guess) after providing an incorrect answer.
    • Note: Currently the game doesn't give you the correct answer. It lets you know what everyone else guessed and you get to vote for which answer you believe to be correct. We would like to change this so that it always lets you know the correct answer. However, we can still keep the entire class results to possibly give to the teacher using another groups project (Teacher Reporting/API).
  • Add multiple types of flash cards beside basic addition/subtraction/multiplication/division.
    • We will need to work with the API group to store our questions, especially the pictures which will bee needed for geometry questions.
  • Allow more than 2 people to connect to a game (we were unable to get a 3rd person to join in the activity).

Week by week milestones

  • 4/24
    • Brendan - Setup development environment (Eclipse, Pydev, Git)
    • Dennis contacted the developer of Assimilate, but hasn't heard back yet.
    • James figured out that it is best not to edit the "Activities" tab. Instead we will use the "Flashcard" and "Help" tabs and change their names to "Play" and "Edit".
    • Everyone - Decide who will work on exactly which parts of the project for the next few weeks.
  • 5/1
    • Dennis - Change the names of the tabs from "Flashcard" and "Help" to "Play" and "Edit".
    • James - Add code from Measure activity to change the interface for each tab.
    • Brendan - Remove the text box below the question so that you cannot change the question in the "Play" tab.
    • Someone - Kill the play button!
  • 5/8
    • When a user answers incorrectly, enter loop to prompt to display answer or guess again.
      • Brendan - If user chooses to display the answer, remove a point from their score, display the correct answer, and exit the loop.
      • If user chooses to guess again, clear the input field and make the question worth half the points. Only loop through this 2x so that the maximum number of guesses is 3.
      • After exiting this loop, display the next flashcard.
    • Dennis - "Limit each flashcard to have only 1 question and 1 answer.
    • James - Work on displaying the score. After seeing how the score changes, we will be able to fix it as necessary.
  • 5/15
    • Have the game give the correct answer after the 3rd incorrect attempt or after guessing correctly. Allow questions/answers to be entered in the Create tab and allow the game to run properly in the View/Activity tab.
    • Fix any problems that have come up during this time which we hadn't planned on before.

Updates on our progress

4/24

  • We found out that by default, the tabs in the top of the game only change the part above the toolbar and not the main part of the game below which we planned to modify a bit. However, we found an application called Measure which does what we want to do. There is some code which we can copy from to make changes to the main part of the screen when you change tabs. Go to the source code for Measure and open the toolbar_top.py. The function we are interested in is called "def _toolbar_changed_cb(self, tbox, num)".

"Must haves"

  • Fix the "tabs"
  • Show the correct answer!

"Should haves"

  • Categorize the cards by type of math problem
  • Alternate types of math besides basic arithmetic

"Would be nice to have"

  • More than 2 people playing
  • Seconds remaining timer
  • Send report to teacher about student responses

Links & Resources

Assimilate

Python/Sugar

Helpful stuff