PacMath
Introduction
PacMath is an educational game based off the well known 80's arcade game PacMan. Using the original game concept PacMath will add fourth grade level math to the fun and exciting game of PacMan in order to make learning fun. The game will provide the student with different problems and in order to solve the problem correctly the student will have to eat the ghost with the correct answer.
Sketch Up
Objective
The objective of this project is to incorporate the teachings of fourth grade mathematics to students through PacMath, a fun, interactive, mathematical game based on the 1980's PacMan. One of our main objectives is making PacMath flexible where the teacher will be allowed to create its own group of questions and not be forced to use only a set group of questions. This would allow more flexibility in the learning plan for the teacher.
Education
Media: PacMath Lesson Plan.pdf
Current Standards to be addressed with in this project:
(As per standards of the Massachusetts Department of Education)
 4.N.2  Represent, order, and compare large numbers (to at least 100,000) using various forms, including expanded notation, e.g., 853 = 8 x 100 + 5 x 10 + 3.
 4.N.8  Select, use, and explain various meanings and models of multiplication and division of whole numbers. Understand and use the inverse relationship between the two operations.
 4.N.9  Select, use, and explain the commutative, associative, and identity properties of operations on whole numbers in problem situations, e.g., 37 x 46 = 46 x 37, (5 x 7) x 2 = 5 x (7 x 2).
 4.N.11  Know multiplication facts through 12 x 12 and related division facts. Use these facts to solve related multiplication problems and compute related problems, e.g., 3 x 5 is related to 30 x 50, 300 x 5, and 30 x 500.
 4.N.12  Add and subtract (up to fivedigit numbers) and multiply (up to three digits by two digits) accurately and efficiently.
Link to Mass. Department of Education
Game Elements
 Activity Icon
 Sprites
(May change due to copyrights)
How It Works
 One Player
 Board Setup like the Original PacMan (one Maze to start off)
 If the player eats a Power Pellet (4 per level)
 Question Appears (4 per level > 1 per Power Pellet)
 After the four Power Pellets have been eaten and answered correctly, a new 'level' (so to speak) begins
 Player has to eat the Ghost with the correct answer (answers will be displayed on the ghosts throughout the entire 'level'
 If the player eats the wrong answer they lose a token and return to the center of the maze and continue playing
 If the player eats 100 (may change) regular pellets they gain a token
 A token is an attempt, if you run out of tokens the game ends
 Questions
 Some default ones to start off with (come with the activity)
 GUI/Prompt for the teacher to input their own questions, saves as an XML (the activity will load the file)
 The answer will have a digit limit (thinking 3 digits)
Features
 PacMath
 User will control a yellow sprite
 User will attempt to touch numbered sprites based on mathematical questions
 Difficulty settings
 EASY  slower game speed / easy difficulty questions
 NORMAL  average game speed / easy and average difficulty questions
 HARD  fast game speed / easy, average and hard difficulty questions
 PRODUCT MADNESS  fast game speed / only multiplication tables from 112
 Questions
 Instructor will be able to alter the questions the students will have to answer
 Instructor will be able to see the rankings of a particular student
 Ranking
 Top 10 scores will be recorded and displayed while game is paused
Controls
User will be able to interact with the game through two input devices
 Keyboard
 UPARROW will move sprite up
 DOWNARROW will move sprite down
 RIGHTARROW will move sprite right
 LEFTARROW will move sprite left
 P will pause and resume the game while displaying Rankings
 GamePad
 UPANGLE will move sprite up
 DOWNANGLE will move sprite down
 RIGHTANGLE will move sprite right
 LEFTANGLE will move sprite left
 SQUARE will pause and resume the game while displaying Rankings
Code Structure Plan
We will be using a mix and match of two existing PacMan games implemented in Python. The first one is from Berkeley.edu and it is a very simple implementation. The second PacMan comes from PyGames and it is more complicated in its design and implementation. We will be using a bit of both to try to come up with an optimal one that would work at a good speed in the XO.
 Questions (default question list provided)
 Maze (single maze to start)
 Player
 Enemies
 Game (control)
 Activity (main)
 Setup (for loading on the XO)
Development
The code for this project is located at the Git.SugarLabs.org repositories. The project is still on initial planning stages and thus there is no code to work on yet.
The current group of people working on the development are:
 Yasser Hernandez, email: yah3133 [at] rit.edu
 Taylor Plimpton, email: tjp3947 [at] rit.edu
 Abel Rendon Jr, email: axr9780 [at] rit.edu
 Dennis Rodriguez, email: dxr4305 [at] rit.edu
Milestones
 Week 6 ( January 15th 2010  January 22nd 2010 )

Get git working on git.sugarlabs.org 
Finish adding details to the PacMath Wiki 
Make a SketchUp for the game 
Email Math4 Mailing List informing everyone about our project and ask for ideas and volunteers

 Week 7 ( January 22nd 2010  January 29th 2010 )

Get all the code sections defined well 
Split up code sections 
Start initial basic coding 
Test an initial simple blank screen

 Week 8 ( January 29th 2010  February 5th 2010 )
 Test segments of PacMath
Just MazeJust PacMathJust Ghost
 Test segments of PacMath
 Week 9 ( February 5th 2010  February 12th 2010 )
Test the basic activityPut the pieces together User Group Test
Pick a License for the project
 Week 10 ( February 12th 2010  February 19th 2010 )
 Wrap Up
 Week 11 ( February 19th 2010  February 26th 2010 )
 Final presentation
Community
Feedback from the community
Gary (January 21, 2010)
 The PacMath sketches look great, can't wait to give it a play through :)
Regarding questions/game settings, make sure you have a play of Walter's VisualMatch activity and see how the toolbar provides lots of flexibility to the game challenge type. It would seem like a good approach to let the user choose the starting case (perhaps via a teachers verbal guidance in class) and then have the general math difficulty level increase as they complete level to level.
It would be very desirable if you would perform the gettext internationalization (i18n) that is needed to get this set up in Pootle for localization into other languages (i.e. generate POT file, set po directory in git repo, make user:pootle a committer, file Trac bug with component = localization requesting Pootle hosting, etc.). Cjl 07:01, 12 February 2010 (UTC)