Michigan State University Team MSUFCU Money Smash Chronicle Project Plan Spring 2016

Similar documents
AN ACTION ARCADE WEB BASED GAME-SLIME ATTACK PLUS (Slime Invader) By ONG HUI HUANG A REPORT SUBMITTED TO

CISC 1600, Lab 2.2: More games in Scratch

Information Guide. This Guide provides basic information about the Dead Trigger a new FPS action game from MADFINGER Games.

Self Learning Game Software Requirements Specification Joint Document Version 1

A Cross-platform Game for Learning Physics

Ball Color Switch. Game document and tutorial

D3.5 Serious Game Beta Version

LESSON ACTIVITY TOOLKIT 2.0

ParentZone. Your guide to accessing your child s account and their learning journey.

CMS.608 / CMS.864 Game Design Spring 2008

Mine Seeker. Software Requirements Document CMPT 276 Assignment 3 May Team I-M-Assignment by Dr. B. Fraser, Bill Nobody, Patty Noone.

Custom Mobile App Support

Programming with Scratch

Editing the standing Lazarus object to detect for being freed

Kings! Card Swiping Decision Game Asset

Introduction to Mobile Gaming. Jon Schlegel Founder and CEO

Propietary Engine VS Commercial engine. by Zalo

Team 11. Flingshot. An infinite mobile climber game which uses the touch screen to control the character.

Concept Connect. ECE1778: Final Report. Apper: Hyunmin Cheong. Programmers: GuanLong Li Sina Rasouli. Due Date: April 12 th 2013

Sensible Chuckle SuperTuxKart Concrete Architecture Report

CONTENTS JamUp User Manual

Games made with Phaser

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Ingredients of Great Games

Computer Science Education: A Game to Teach Children about Programming. Xiaoxiao Wang

Shoot It Game Template - 1. Tornado Bandits Studio Shoot It Game Template - Documentation.

THE LEVEL PLAYING FIELD ROULETTE SYSTEM

University of California, Santa Barbara. CS189 Fall 17 Capstone. VR Telemedicine. Product Requirement Documentation

Fpglappy Bird: A side-scrolling game. 1 Overview. Wei Low, Nicholas McCoy, Julian Mendoza Project Proposal Draft, Fall 2015

TAKE CONTROL GAME DESIGN DOCUMENT

Individual Test Item Specifications

Firmware version 1.05 supports all CMOS sensor based digital backs IQ150, IQ250 and A- series IQ250.

Formal Game Proposal

Taffy Tangle. cpsc 231 assignment #5. Due Dates

Official Documentation

Introduction. Video Game Programming Spring Video Game Programming - A. Sharf 1. Nintendo

Multiplayer Game Design: Performance Enhancement with Employment of Novel Technology

NEIBORS. Most mobile devices work will work with NEIBORS. There is an App that you can download to your device that makes it easy.

Cognitive Tools. Task manager. Allows you to write your "things to do" on the day it should be completed. Check off as you go.

Trial code included!

Computer Games Assoc. Prof. Mathias LUX Klagenfurt University

HOW TO SHARE THE LOOK AND FEEL OF THE GAME DIAMOND DASH ios

Table of Contents. Creating Your First Project 4. Enhancing Your Slides 8. Adding Interactivity 12. Recording a Software Simulation 19

Scalable geospatial 3D client applications in X3D - Interactive, online and in real-time

Apple ARKit Overview. 1. Purpose. 2. Apple ARKit. 2.1 Overview. 2.2 Functions

Cato s Hike Quick Start

CSCI370 Final Report CSM Gianquitto

The Beginner's Guide To Android Game Development Free Download PDF

Department of Computer Science and Engineering The Chinese University of Hong Kong. Year Final Year Project

Using Bloxels in the Classroom

Tech Tips from Mr G Borrowing ebooks and Audiobooks Using OverDrive 3.2 on Apple ios Devices 2015

Chapter 1:Object Interaction with Blueprints. Creating a project and the first level

100 Million Friends You Can Never Know

Blue-Bot TEACHER GUIDE

Cici Collier Kellyn Larson Mike McClary. Griffin Metz Vanessa Ramos Nick Zustak

Beginning Mobile Phone Game Programming By Michael Morrison READ ONLINE

A Cross-platform Application for Learning Physics Using Gamification. Name: Lam Matthew Ho Yan UID: Supervisor: Dr. T.W.

Welcome to the Word Puzzles Help File.

CAPSTONE PROJECT 1.A: OVERVIEW. Purpose

User Guide / Rules (v1.6)

Competition Manual. 11 th Annual Oregon Game Project Challenge

CIDM 2315 Final Project: Hunt the Wumpus

How to Blog to the Vanguard Website

Share your Live Photos with friends and family by printing, ordering prints from Snapfish (US only), and via Facebook or .

Comparison ibeacon VS Smart Antenna

About MustPlay Games

Read & Download (PDF Kindle) JMonkeyEngine 3.0 Beginner's Guide

Super HUD- User Guide

Push-to-talk ios User Guide (v8.0)

Orbital Delivery Service

TOYOTA FINANCE ONLINE USER GUIDE

Fanmade. 2D Puzzle Platformer

Journey through Game Design

Procedural Level Generation for a 2D Platformer

GAME DESIGN DOCUMENT HYPER GRIND. A Cyberpunk Runner. Prepared By: Nick Penner. Last Updated: 10/7/16

Paper Prototyping Kit

Todd Dunn Project. Reflex Speed: Improving Human Performance. Game Design Document By Zeph Fagergren & Rody Rodriguez

The #1 Partner to Gaming Operators Worldwide

AN ACTION ARCADE WEB BASED GAME SLIME ATTACK PLUS (BACKEND INTEGRATION) By Cheah Kean Huang

Annex IV - Stencyl Tutorial

Game Design Document 11/13/2015

A USEABLE, ONLINE NASA-TLX TOOL. David Sharek Psychology Department, North Carolina State University, Raleigh, NC USA

Software user guide. Contents. Introduction. The software. Counter 1. Play Train 4. Minimax 6

Overview. The Game Idea

Share My Design Space Project to Facebook or Pinterest?

Parent Guide. Money 101. What is money?

Final Year Project Report

the gamedesigninitiative at cornell university Lecture 4 Game Components

Workplace Skills Assessment Program. Virtual Event V03 - Software Engineering Team Project Requirements Document.

Sudoku Touch. 1-4 players, adult recommended. Sudoku Touch by. Bring your family back together!

Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4

Return to Player: 96.09%

Getting Started with Osmo Coding. Updated

Pre-commercial version of webservices platform

Instruction manual Chess Tutor

NOVA. Game Pitch SUMMARY GAMEPLAY LOOK & FEEL. Story Abstract. Appearance. Alex Tripp CIS 587 Fall 2014

Getting Started with Osmo Words

Bridgemate App. Information for bridge clubs and tournament directors. Version 2. Bridge Systems BV

Welcome to the Break Time Help File.

Before using the Device. Using your Drifta. Connecting to a PC

Transcription:

Michigan State University Team MSUFCU Money Smash Chronicle Project Plan Spring 2016 MSUFCU Staff: Whitney Anderson-Harrell Austin Drouare Emily Fesler Ben Maxim Ian Oberg Michigan State University Capstone Members: Wyatt Hillman Amy Leung Cory Madaj Brandon Max Bobby Zhang

2 Table of Contents 1. Executive Summary... 3 2. Functional Specification... 4 3. Design Specification... 5 3.1 Overview... 5 3.2 Game Interface... 5 3.2.1 Landing Page... 5 3.2.2 Level Selection... 6 3.2.3 Game Play... 7 3.2.4 Financial Quiz... 9 3.2.5 Game Over... 10 3.3 Administrative Interface... 11 3.3.1 Adding Questions... 12 4. Technical Specification... 13 4.1 System Architecture... 13 4.1.1 Server Side Architecture... 13 4.1.2 Android Architecture... 13 4.1.3 ios Architecture... 13 4.1.4 Front-Side Architecture... 14 5. Risks... 15 6. Timeline... 16

3 1. Executive Summary Michigan State University Federal Credit Union, known as MSUFCU, is the largest university-based credit union in the world in both membership and asset size. MSUFCU provides a variety of financial products and services including deposit accounts, personal and business loans, investments and insurance. MSUFCU is headquartered in East Lansing, Michigan. The credit union is owned and operated by its members located at Michigan State University, Oakland University, and their surrounding communities. As of October 2015, MSUFCU has fifteen branches, a membership of more than 205,000, and over $2.9 billion in assets. As a university-based credit union, MSUFCU is committed to educating its customers about finances. To improve financial literacy among people of all ages, MSUFCU has commissioned an educational video game called Money Smash Chronicle. Money Smash Chronicle teaches players about finances while providing a simple yet fun and engaging gameplay experience. The Money Smash Chronicle application is a match-three style puzzle game application similar to other popular puzzle games such as Candy Crush Saga. As the player progresses through the game, they answer financial quizzes and encounter gameplay obstacles based on real-world financial situations. This gives users of all ages and skill levels an experience that is both fun and educational. The application is available as both a browser-based web game and a mobile game compatible with both Android and ios.

4 2. Functional Specification The primary focus of the project is to create a game for customers to increase their financial literacy. Although MSUFCU currently has multiple mobile applications in addition to their website, the goal of their existing products is primarily to provide financial services typical of a credit union. MSUFCU is now adding a game called Money Smash Chronicle to their library of applications. The game is designed to both raise awareness of MSUFCU and increase the financial knowledge of its players. The game is modeled after the existing puzzle game Candy Crush Saga. The main gameplay involves a grid where each tile has one of six game pieces. The user swaps two adjacent pieces in order to make chains of at least three identical pieces. In Money Smash Chronicle, these pieces are represented by different finance-related items. Each type of piece gives the player a different amount of money when the player makes a match with pieces of that type. Each level of the game has a different goal, such as reaching a given score in a certain number of moves or a certain amount of time. The game is free-to-play and does not incorporate any in-app purchases. Financial quizzes are used in lieu of the microtransactions seen in other puzzle games. Players start with a number of lives, which are lost when levels are failed. When all lives have been lost, the player can wait for their lives to replenish, or they can answer quizzes. These quizzes increase financial knowledge by testing on various financial topics. The quizzes cover topics such as terminology and vocabulary, personal responsibility, the process of obtaining a loan, the rules for paying off loans and credit card debt, and more. In addition to replacing microtransactions with finance quizzes, the game will also incorporate gameplay elements unique to Money Smash Chronicle that are designed to improve financial literacy. To teach the value of saving and financial responsibility, life events randomly occur. These events represent real-life expenses, such as car repairs or emergency medical expenses. When these occur, the money that was accumulated from matching pieces is used to pay the expenses. If the user has not saved enough money to pay these bills, they fail the level and lose a life. Additional gameplay obstacles include bills with impending due dates which must be cleared in addition to the level s main score goal. The game has a web version accessible from the browser of any modern computer and a mobile version compatible with Android phones and tablets and ios devices including iphone, ipad and ipod Touch.

5 3. Design Specification 3.1 Overview The application will be available on any Android device running Android version 4.0.4 or higher, and any ios device running ios 8 or higher. The mobile versions can be launched by tapping the relevant icon on the device. After launching, the application goes straight to the main menu. The web version can be accessed by visiting a website on a browser on any modern computer. As soon as the user enters the website, the main menu is launched. 3.2 Game Interface To support users of all ages, all user interface elements are designed to be as simple and intuitive as possible. Menus have large, clearly-labeled buttons. The art direction is colorful and all gameplay features are clearly presented. 3.2.1 Landing Page Figure 1.2 displays the home page of the mobile application, which is accessed as soon as the application is started. From here, a user can begin the game, which will take them to the level select page and eventually to the gameplay. Selecting settings will allow the player to change game volume and to check the how-to-play section. Figure 1.1 - Initial main screen for mobile devices Figure 1.2 - Final main screen for mobile devices

6 3.2.2 Level Selection A level selection interface allows the player to choose which level they want to play. The player can see which levels they can select, which levels have already been cleared, and which levels are currently inaccessible. More levels are unlocked as the player progresses through the game. When the user taps an icon for a level, a popup is displayed showing their best scores for the level, as well as the required goals to complete the level. The player will also be able to see how many lives they have remaining and the timer displaying the time until they receive an extra life. Arrow buttons will be provided to return to the main menu or scroll through their options for levels. Figure 2 - Initial level selection screen

7 3.2.3 Game Play On this interface, shown below in Figure 3, the user will play the Money Smash Chronicle game. The main feature is an 8x8 grid containing generated pieces. The different piece types include the safe, the piggy bank, the gem, the coin, the credit card and the dollar bill. Each piece is clearly visually distinguishable by having a different shape and color. Additional obstacles and special pieces will be determined by the level that the player selects. The player must swap two adjacent game tiles to line up three or more identical pieces. The matched pieces will disappear, rewarding the player with points and an amount of money determined by the type of piece that was matched. Certain special pieces may also occur, providing unique power-ups, additional time or moves, or cash bonuses. Each level will have a different goal, such as making a certain amount of money before running out of time or moves, or clearing a special piece. Additionally, life events modeled after real-life expenses such as medical bills may randomly occur. These events require the player to have a certain amount of money, or else they will fail the level. If they have enough money, the money is subtracted from their amount of money, but not their score. Above the grid display, the player can view the number of remaining moves, score, amount of money and remaining game time. Below the screen, the player can select power-ups and view the life events that have taken place. Figure 3.1 - Initial game screen Figure 3.2 - Final game screen

Figure 3.3 - Final game screen for web application 8

9 3.2.4 Financial Quiz If the customer loses all lives, they can wait a certain period of time to get a life and continue, or they can answer a financial quiz to receive up to five lives. The quizzes, shown below in Figure 4, will be the primary educational aspect of the game. Once the customer chooses to take the quiz, they will have five financial multiple choice questions pop up. The questions involve topics such as finance vocabulary, financial responsibility and best practices, and the workings of services offered by a bank or credit union. The number of lives that they will get depends on how many questions they get correct in the quiz. For example, a player who answers three out of five questions will get three lives. A player who gets all questions wrong will not get any lives for that attempt. Figure 4.1 - Initial quiz screen Figure 4.2 - Final quiz screen

10 3.2.5 Game Over If the customer loses all their lives, the game ends, and they are directed to a Game Over page. This page contains a Continue button and a Quit button, shown in Figure 5.1. By hitting the Continue button, it will take you to the page shown below in Figure 5.2, which contains more detailed statistics about the player s performance in that game, as well as a Continue button which takes them back to the level select screen if they have more lives, or to a quiz if they have run out of lives. By hitting the Quit button, it will take you out of the game and return you to the main menu. Figure 5.1 - Initial game over popup Figure 5.2 - Initial game over screen

11 3.3 Administrative Interface The backend contains administrative features, shown below in Figure 6.1. An administrator can log in to add more quiz questions and add additional users. Figure 6.1 - Administrative backend website

12 3.3.1 Adding Questions Shown below in Figure 6.2 is the interface for adding quizzes to the game. Since the game connects to the backend to retrieve quizzes, the added quizzes will be available to all users instantly with no need for a mobile user to update the application. The page contains Create Quiz and Create User. The Create Quiz button takes the user to a page that allows them to define a quiz question and the four possible choices. The Create User page allows the user to create more accounts usable by MSUFCU personnel to give them quiz adding privileges. Figure 6.2 - Administrative website to add quiz questions into Money Smash Chronicle

13 4. Technical Specification 4.1 System Architecture Figure 7 provides a high level overview of the application s structure. 4.1.1 Server Side Architecture The server side architecture is an LEMP stack; Linux, Nginx, MySQL, PHP. The API uses Laravel 5 to provide a restful API that allows data retrieval using the GET and POST HTTP methods. The API controls leaderboard scores, quiz questions, and quiz answers which will be stored in the MySQL Database. When accessing the API via GET, the server sends data in JSON format. For security and reliability purposes, the backend uses PDO and prepared statements to access the MySQL Database. 4.1.2 Android Architecture The Android application is programmed in Android Studio using Java. The application requires a minimum Android version level of 4.0.4. To assist in development, the libgdx game framework is used. libgdx is an open-source game framework which simplifies the processes of screen-switching, game state management, sprite drawing and animation. A libgdx Game class contains the initialization functions as well as handling screen transitions. The menu screens, gameplay screen, level select screen and quiz screens all have a corresponding class derived from the libgdx Screen class. Each screen contains a Stage object. A Stage is part of Scene2d, which is the libgdx scene graph. The Stage is populated by Actors. The buttons, HUD elements, and game pieces are all Actors. The Actor class contains many functions that allow for easy animation. The Stage handles the rendering of all actors during each loop of the main game loop. The application connects to the server to retrieve quizzes. Level specifications, assets, and the user s progress are stored on the device. The level specifications are stored in JSON. 4.1.3 ios Architecture The ios version is programmed in Swift using the Xcode development environment. This program requires ios 8 or higher. The uses a Model-View-Controller structure. Animations and the game loop are handled by SpriteKit, which is Apple s game framework built into ios. The application connects to the server to retrieve quizzes. Level specifications, assets, personal information needed for Apple s Game Center, and the user s progress are stored on the device. The level specifications are stored in JSON.

14 4.1.4 Front-Side Architecture The front-side web architecture is written in Javascript and includes a game framework called Phaser IO, which allows easy creation of HTML5 Canvas apps. Phaser IO allows the ability to switch between Canvas and WebGL depending on the capabilities of the browser browser. If the browser does not support HTML5 Canvas, WebGL is used instead with the same Javascript code. The web app will use sessions for storing game progress and achievements. Assets will be stored on the server side. Figure 7 - Money Smash Chronicle System Architecture

15 5. Risks Gameplay Issues o Many gameplay aspects requested by client are incompatible with Candy Crush, or are otherwise difficult to implement o Mitigation: Need to make a lot of creative game design decisions under guidance of client o Status: Much more actual playtesting is needed to adjust point values and goal conditions. We have made many changes to the initial gameplay standards, but most work has been theoretical so far. No ios or WebGL experience; minimal game framework experience o None of the team members have developed for ios or with WebGL before, game engine experience is limited o Mitigation: Use tutorials, references and peers for help o Status: Mitigated. Team has reached high comfort levels in these technologies, and is now able to develop with efficiency and quality. Resource Issues o Resource-intensive project and no resources yet; no experienced designers o Mitigation: Work with client on design ideas o Status: Mitigated. Client has provided us with graphics for all game pieces and game screens. Team is using the provided graphics and Adobe Illustrator to create clean and visually appealing graphics. Cross-platform and cross-version issues o Potential difficulty in making the game look and feel similar across the three platforms and the different versions of each platform o Mitigation: Need to work together closely and test thoroughly and frequently o Status: Mostly mitigated. Android and ios versions are very similar in appearance, besides some differences in pop-up window appearances and animation. Game feels similar on all platforms in terms of features like animation speed, though some fine-tuning is still needed. Android version looks the same for devices of all screen sizes and resolutions.

16 6. Timeline Week 1 (1/11 1/15) Met with team, established weekly meeting times with course, clients and within team Downloaded basic OS and some software Initial client conference call Week 2 (1/18 1/22) Downloaded GitHub, Android Studio, Xcode Began project plan First drafts of layouts for application and website Made test application and basic website Week 3 (1/25 1/29) 1/25 Status Report Presentation Continue working on Project Plan Proposal/Presentation Begin game skeleton code Week 4 (2/1 2/5) Skeleton code completed for all platforms Begin implementing the core game features: matching/creation/etc... Get client confirmation on mockups and their designs Week 5 (2/8 2/12) 2/10 - Project Plan Presentation Continue with implementation of the core game features Menu screen and game screen w/ matching are completed Look into getting application to scale for different resolutions Week 6 (2/15 2/19) Core game features completed for all platforms Begin work on financial aspects of games: power-ups/quiz on death/scoring Week 7 (2/22 2/26) Continue work on quizzes Begin life events Week 8 (2/29 3/4) Alpha Presentation Finish financial aspects of games Begin work on back-end systems: user storage/highscore API/game centers for ios & Android/question storages

17 Week (3/7 3/11) Spring Break Week 9 (3/14 3/18) Finish work on back-end systems Begin work on levels systems/design & look finalization Port Android version to LibGDX framework Week 10 (3/21 3/25) Start project video Finish porting Android version Week 11 (3/28 4/1) Finish work on levels system/design & look finalization Finish obstacles and life events Week 12 (4/4 4/8)?? Beta Presentation Improve aesthetics Playtesting and value adjustment Week 13 (4/11-4/15)?? Beta Presentation In person client meeting with MSUFCU Improve aesthetics Playtesting and value adjustment Week 14 (4/18-4/22) Continued debugging, additional final modifications and wrap up Week 15 (4/25-4/29) 4/25 Project Videos 4/27 All Deliverables Due 4/28 Design Day Setup 4/29 Design Day