KickShot for Android

KickShot for Mobile is a project to develop mobile app versions of the board game, KickShot. The goal of this project to further polish the completed Junior version and complete a coherent and playable prototype of the Warm-Up version. The end result should be that KickShot Junior is ready to be released for both Android and iOS, and KickShot WarmUp is functional on both Android and iOS.

Sponsor
Aziz Makhani:


 * local youth/adult soccer referee and creator of KickShot.

Background
KickShot the board game was invented by Aziz Makhani to help educate children of all ages about the rules of soccer. After achieving success in the board game industry, Aziz set his sights on the mobile platform. During the summer, Aziz created a new version of KickShot that lowered the age barrier to play his game. This version was KickShot Junior. Fall 2013, Aziz requested that a team of computer science students develop KickShot Junior on the Android platform. The team was successful in creating a foundation for the game.

Spring 2014, Team RedCardDev was tasked with finishing development on KickShot Junior and creating a foundation for KickShot WarmUp. KickShot Junior required user experience development. This included game sounds, animations, and a homepage. KickShot WarmUp required a design to account for the ability to play cards to perform actions, instead of just relying on dice rolls.

In Fall 2014, Team RedCardDev was asked to polish the finished version of KickShot Junior, such as fixing a few bugs and improving cross-device compatibility. In addition, an iOS version was to be developed to complement the Android version. A playable prototype of KickShot Warm-Up for both platforms was begun, demonstrating an implementation of the design achieved in Spring 2014.

Problem Statement
To create and deliver a executable applications for iOS and Android that successfully epitomizes the gameplay of KickShot Junior and Warm-Up.

KickShot Junior
Turns
 * Ball Starts at the midfield circle after every score or the start of each half.
 * Offense rolls dice to advance the ball. Ball advances equal to the highest die value.
 * If a double are rolled, the offense turns the ball over.
 * Defense rolls dice. If doubles, defense intercepts the ball.
 * If offense advances to the goal line, they enter shooting mode and take a shot immediately.
 * Defense rolls dice. If doubles, defense blocks the shot and receives the ball on the line equal to the total dice roll.

Doubles
 * If doubles are rolled, the ball is turned over.

Scoring Goals
 * When the offense makes it to the goal line, a shot is automatically taken.
 * The defense can block a shot by rolling doubles.

KickShot Warm-Up
TODO

Target Specifications
Android 4.3 (Jelly Bean) and previous updates. This includes tablets and phones

User Interface
The user interface for KickShot for Android was designed to be based on the touch technology of Android. To roll the dice in KickShot Junior, the user has to touch the screen. When an action took place (Interception, Shot, Block, Goal), an animation pops up to inform the user.

The menus were designed by a group of VTD students working on animations and art for Aziz.

Main Menu

Play Game

Correct Form

Junior
KickShot Junior was developed in Fall 2013 by Jordan Leithart and Nicholas Otter. Junior was developed iteratively by creating the basic rule set in the Junior class. In the Spring 2014 semester, Jordan continued to develop the application to get it ready for release. Aziz requested that a menu page and animations be developed. At SnapShot day, team Red Card Dev was happy to showcase a beta build for feedback and testing.

WarmUp
In the Spring of 2014, as the Junior app was being finalized, a design for a more complex version of the game originated, also on the Warm Up rules for the KickShot board game. The goal for progress on Warm Up was to finalize the design and complete a working prototype by the end of the semester.

This has since been accomplished: a detailed rule set document has been created and a playable text-based subset of Warm Up (which implements only the basic game play elements) will be demonstrated at the Engineering Expo.

Team: Red Card Dev


Jordan Leithart (right):


 * Jordan is a Senior majoring in Computer Science, with fields of interest in computer game programming, artificial intelligence, computer graphics, tools engineering.

Robert Kleffner (middle):


 * Robert is a Junior majoring in Computer Science, interested in game design and programming, programming language design and implementation, and the theory of computer science.

Tao Zhang (left):


 * Tao is a Junior majoring in Computer Science, interested with computer game programming.

Documentation
SRS (Software Requirements Specification)

SDD (Software Design Document)