FootboFun. Jupiter's Kek. October 13, 2013

Similar documents
THE ORIGINALS. FootboFun Software Design Document v1.1 DECEMBER 29, Ahmet Abak, Can Gülaydın, Çağrı Utku Akpak, Doğancan Arabacı, İbrahim Arslan

Syllabus INFO-GB Design and Development of Web and Mobile Applications (Especially for Start Ups)

Nguyen Duc Hanh. Seta International (Recently renamed to Colwell) 08/2014 Present

Michigan State University Team MSUFCU Banking with Amazon s Alexa and Apple s Siri Project Plan Spring 2017

Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise

Syslog Technologies Innovative Thoughts

ITP 140 Mobile Technologies. Mobile Topics

How to Route Internet Traffic between A Mobile Application and IoT Device?

Project Presentation

The office for the anywhere worker!!! Your LCB SOFTPHONE: A powerful new take on the all-in-one for a more immersive experience.

Convert Manuals To Html5 With Adobe Flex

The paper shows how to realize write-once-run-anywhere for such apps, and what are important lessons learned from our experience.

Adobe ColdFusion 11 Enterprise Edition

EMPLOYEE LOCATION TRACKING SERVICE

Software Engineer Development of the Agent Support Tool (AST) for Instant Ink, applying TDD in Ruby on Rails.

If you have any questions or concerns, please contact us with the information provided in the Contact Information section of this Policy.

Advanced Joomla! Dan Rahmel. Apress*

AWS Mobile Hub. Build, Test, and Monitor Your Mobile Apps. Daniel Geske, Solutions Architect 31 May 2017

1. License. 2. Introduction. a. Read Leaderboard b. Write and Flush Leaderboards Custom widgets, 3D widgets and VR mode...

Advance Mobile& Web Application development using Angular and Native Script

SERVICES. Desktop and Smartphone Apps. Databases. Stock Management Portals. Web Design and Development. Telephony Systems

MySQL for Developers. Duration: 5 Days

ITP 342 Mobile App Development. APIs

What Mobile Development Model is Right for You?

Build Mobile Cloud Apps Effectively Using Oracle Mobile Cloud Services (MCS)

Why attend a Lianja training course? Course overview. Course Details

MySQL for Developers. Duration: 5 Days

Xignite CloudStreaming overview

Tutorial Point Servlets Pdf

Hello everyone. My name is Kundan Singh and today I will describe a project we did at Avaya Labs.

Bevezetés a mobil alkalmazáskészítés világába

Go To Consulting LLC.

A Review of Kids Tutor

Technology Terms for 2017

C++ Developer Survey "Lite": C++ and Cloud

WYNN SOCIAL CASINO PRIVACY POLICY

Exploring Cross-platform Tools For Mobile Development: Lessons Learned. mlearning: Tips and Techniques for Development and Implementation

BOOKMAKER PRESENTATION

The Next Generation of Eclipse: e4. Mike Milinkovich Executive Director Eclipse Foundation

Biometric identity verification for large-scale high-security apps. Face Verification SDK

Mobile Development with Visual Studio 2015

Web & APP Developer Job Assured Course (3 in 1)

John M. Scarpaci. Summary. Professional Experience

Smart Bulk SMS & Voice SMS Marketing Script with 2-Way Messaging. Quick-Start Manual

Faculté Polytechnique

ITP 342 Mobile App Development. APIs

CSC Introduction to Computers and Their Applications

MOBILE PAYMENT INSTRUCTIONS. saskatoon.ca/flexparking ǀ

Mobile development initiation

Software System Architecture Document (SSAD)

Adobe ColdFusion (2016 release)

ArcGIS for Mobile An Introduction. Bonnie Stayer

Why Android? Why Android? Android Overview. Why Mobile App Development? 20-Nov-18

Pulkit Agarwal. AppBrowzer( Nov 2015 April 2016

Mobile Computing Meets Research Data

Programming The Mobile Web Ebooks Free

System and Software Architecture Description (SSAD)

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

Case study on PhoneGap / Apache Cordova

Software Architecture Documentation for the JRC MYGEOSS app for Invasive Species project

IBM JZOS Meets Web 2.0

CA Open Space. Release Notes. Release

Android & iphone. A Comparison. Stefan Tramm JUGS, Jahresevent

Inclusions. Your Package Inclusions & Conditions.

Developer Internship Opportunity at I-CC

Web Enabling Solution for Windows Desktop Applications. White Paper

Oracle Utilities Customer Self Service

" ATTENDEE GUIDE AND FAQS"

Booth Mar 2018 OUHK Career Fair 2018 Job Openings of Participating Employers. A. Company Name Networld Technology Limited. B.

SQL: QuickStart Guide - The Simplified Beginner's Guide To SQL (SQL, SQL Server, Structured Query Language) PDF

Sostenuto Hardware and Software Configuration Guide. Date: October Page 1 of 15

INTRODUCTION. In this summary version, we present some of the key figures and charts.

Live Guide Co-browsing

Software Design Description Report

Launch and Scale your Social Game in the Cloud with AltEgo, Amazon Web Services and RightScale

WELCOME TO PM PAY GETTING STARTED

Timelog System on Android OS

An overview of mobile and embedded platforms

Chapter 2 Setting Up for Development

ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012

Kony MobileFabric. Release Notes. On-Premises. Release 6.5. Document Relevance and Accuracy

Alexa, what did I do last summer?

Welcome to the New Era of Cloud Computing

LEVEL 3 SM WEB MEETING

TABLE OF CONTENTS. Abstract... ii. Table of Contents... iii. List of Figures... vii. List of Tables... xi. 1. Background and Rationale...

Ahmed Ali Big fan of Android

Upper- Intermediate. Senior Front end Developer. First Name Denis V. Birth Date Professional experience (years) 4.5

Validate Pre-Deployment and Live Networks and Applications

Android. Training.

Passwords. Twitter UN: IDANRV Twitter PW: idanrv1. Thank You

Oracle Utilities Customer Self Service

Tutorial Point On Html5 Pdf

Team Management. Coaches and Team Managers Guide

DOC // JAVA TOMCAT WEB SERVICES TUTORIAL EBOOK

Conversing in the Cloud. Ryan Kupfer, Scott Wetter, Bryan Welfel, Shekhar Pradhan

Unleashing Your Marketing Collateral and Tools

CBSE and Mobile Application Development

vsphere Web Client SDK Documentation VMware vsphere Web Client SDK VMware ESXi vcenter Server 6.5.1

Beating the Final Boss: Launch your game!

Beginner s Guide to Cordova and Mobile Application Development

Transcription:

FootboFun Jupiter's Kek October 13, 2013 Team Members: Ahmet Abak 1630490 e1630490@ceng.metu.edu.tr Can Gülaydın 1560226 e1560226@ceng.metu.edu.tr Çağrı Utku Akpak 1745660 e1745660@ceng.metu.edu.tr Doğancan Arabacı 1818921 e1818921@ceng.metu.edu.tr İbrahim Arslan 1745751 e1745751@ceng.metu.edu.tr 1. Problem Definition and Background Information Our project is a social networking game, which will simulate football career, social life and assets of a young football player. There is no visual match simulation but it will be possible to track the football match from commentator's output. We will use an event-based simulation, which is generated by statistical parameters of teams and players. The purpose of the game is to be successful in football career, social life and assets of simulated life. It will be possible to train your character, attend nightlife, acquire a girlfriend, buy houses and cars, football and gym equipment, sign for sponsorship agreements, transfer to other teams, etc. The users of the game interact with each other in order to compete. Users are able to join the game only with their Facebook accounts. The project will be available for everyone. For different time zones, there are different parallel game worlds. The amount of parallel game worlds can increase according to the number of users playing the game. People who like RPG, football simulation games and manager games are our targeted user profile. As an RGP side of the game, there are similar social games such as "Candy Crush" and "Clash of Clans". And there are similar football games like "Top Eleven", "Become A Legend" mode of "PES". The game "I Am Player" is the most similar one to our project. 2. Significance of the Problem and Motivation In gaming community, there are some games that can be considered as similar to our project, our project is more detailed, complicated and real-life like compare to similar projects. One of the most challenging part of this project is scalability issues. Moreover our project is a facebook application that is available on the platforms IOS and ANDROID. The main issue about scalability is that as the amount of people playing the game increases, the parallel game worlds is going to increase. These increase will create great amounts of simulations of parallel matches, teams, transfers and will involve user playing at same time. Efficiency of these parallelism, scalability of our product is very important.

The reason why we choose this project is that there are so many football fans all around the world and among the football games, there is a few games which are similar to this kind. Hence; we would like to develop our project to gain more financial benefits than the other football games do. There are similar products as we have mentioned in the first paragraph. Although these products are fairly successful, our product differentiates from them in the sense of giving equal importance to the social life and assets of the character. Furthermore, those who develop these kinds of product put their products only to one platform market, IOS or ANDROID stores. Our project, on the other hand, is going to support cross-platforms, i.e. IOS, ANDROID, and WEB using the same server. As an example, a user using our product on an android tablet can interact with a user using our product on a computer. Those who like football can role-play a football star which they look up to. Other advantage of our project people with the same interest (which is football) can interact with each other. For us, the project will be distributed to the market once we are done with it. Our application is going to be available on the platforms ios, android and web. 3. Draft Project Plan The project is going to be a client server architecture cross-platform social game with a data mining module. There is going to be two databases of this game. The first database is a NoSQL database namely Couchbase which will be used for storage of the user data and persistent game data. The second database is a MySql database which will store the all actions of the user for data mining purposes. The server of the game is going to be implemented with Java with Apache Mina Framework, Couchbase client library for couchbase database and Google Json Library. The web client of the game is going to be implemented using Flash Flex Development Environment with MXML and Actionscript 3 programming language. The IOS client of the game is going to be implemented using native objective-c. The android client of the game is going to be implement using native Java. Lastly, the data mining module is going to be implement using php. All clients is going to be integrated with facebook through facebook graph api. The end product will look like a complete social game with similar but slightly different user interfaces on three different platforms. The game requires facebook login on android and ios clients and it requires necessary permissions to access users private information and phone or tablet data at the first start on all clients. The web client of the game can only be accessible through facebook. The product will be used to play a social rpg game for the users. The administrators will use the game for modifying game parameters and creating or modifying promotions and events for specific periods and lastly, data analysts will use the game for generating reports of user statistics from the actions collected by the data mining module.

The focuses of team members on major tasks can be seen in the following table 1 ; Team Member For Prototype For End Product Ahmet Abak Web Client IOS Client Can Gülaydın Java Server and Web Client Java Server and Web Client Çağrı Utku Akpak Java Server and Web Client Java Server and Web Client Doğancan Arabacı Java Server Java Server and Data Mining Module İbrahim Arslan Java Server Android Client There are three actors in our product. Users are people who are playing the game on one or more of the platforms. Users purpose is to be successful in all three parts of the game namely, football career, social life and assets. The actions that a user can do directly affect their performance and success in the game. The administrators are the ones who are managing the game. They control game parameters for better quality and respond to users various requests. They can create or modify promotions and events, and also alerts the developers for bugs and errors. The data analysts are the ones who interpret the information generated by user actions in the game. According to 1 This table is only for the focus of the team members, for efficient and parallel development the task distribution may change according to the work load and progress.

their parameters, they can ask the data mining module for reports on different information for financial and research purposes. The User Actions: Home Activities - Home Training: This action requires character to have gym equipment in his home. It increases only character s physical fitness and it uses characters energy. - Relaxation: This action increase characters energy. - Recreational Activities: This actions specifics are connected to the items that the character have in his home. It does not increase characters energy as much as relaxation, however it also increases characters morale. The items in characters home effects the increase in morale. - Throwing A Party: This action can only be done once a day and it cannot be done twelve hours before the game. The expenditure depends on the type of the party. Although it uses characters energy greatly, the character gain social status and morale. Party can cause damage to the property, become a sensational news and infuriate neighbors. This action may lead to acquiring a girlfriend. Outdoor Activities - Gym Training: This action increase not only characters fitness but also its technical capabilities. It uses characters energy more than home training. This action may lead to acquiring a girlfriend. - Team Training: This actions is an automated actions. It is scheduled automatically by the team of the character. However, being online and selecting type of training the character is going to have increases efficiency and performance of the training and social status inside the team. It uses characters energy. - Buying Assets: Buying assets action work in three different styles. The first one is buying virtual items for character or friends using virtual currency. The second style is buying special virtual currency using real currency to gain slight advantage in the game. There is also an option for changing this special virtual currency to regular virtual currency. Lastly, there is going to be a public auction where character can sell their virtual items to the other player using auction mechanism. - Dinner: This action increases characters social status with whom the character has dinner with and replenish small amount of character s energy. This action may lead to acquiring a girlfriend. - Attend Nightlife: This action increases characters social status with whom the character has been with, increases morale and uses character s energy. This action may lead to acquiring a girlfriend. - Charity Work: This action increases the amount of fan that the character has and morale. This action may lead to acquiring a girlfriend. - PR Work: This action uses characters virtual money to increase the amount of fan that the character has. The Administrator Actions: - Modify Game Parameters: The administrators of the game can modify the game parameters to optimize the game enjoyment and realism. The modification of parameters should only be done while the server is down, because it may affect the ongoing matches and other activities that are based on important parameters of the game.

- Create/Modify Special Activities and Promotions: This action gives the administrators the ability to create custom event and promotions. For instance, the administrator can create a limited size tournament or lower the price of an object for a limited period while the game is active. The increases the administrator control over the game and also increases the interaction inside the game. The Data Analyst Actions: - Generate Data Mining Report: This action gives data analyst ability to generate dynamic reports based on their specifications. These reports in going to be generated using all the automatically stored actions of all the users playing the game. The accuracy and information content of reports based on the number of players using the game. As we have mentioned before, there are three user interface modules of our product. The Web Client module is going to be implemented by Can Gülaydın and Çağrı Utku Akpak using flash flex development environment with mxml and actionscript 3 programming language. The Ide is going to be flash builder for this part of the product and finished flash object is going to be embedded inside an html page. Small amount of javascript and php is also going to be used for cookie management, facebook integration and security of the client. Facebook graph api library is going to be integrated into the flash object for all facebook related actions used inside the game. In game purchases is going to done using facebook payment api and validation is going to done at the main server before making any changes in the user s information. IOS client module is going

to be implemented by Ahmet Abak using native Objective-C. The Ide is going to be XCode for this part of the product. The resulting product is going to compatible with both ios smartphone and tablets, it is going to use facebook ios sdk for facebook related actions used inside the game. The client is going to connect to the apple game center for in-game payments and validation is of the transaction is going to be done on the main server. Android client of the product is going to be implemented by İbrahim Arslan using native Java. The Ide is going to be eclipse with an ADT (Android Developer Tools) plugin to easy access native java libraries. This client is going to use facebook android sdk for facebook related actions used inside the game. In-app purchases is going to be done by connecting to the google play and validation is going to be done in the main server. All three clients of the game is going to connect to the main server with TCP/IP socket connection and generate http post requests to the action collection unit of the data mining module for every action that user takes. The main server of the product is going to be implemented by Can Gülaydın, Çağrı Utku Akpak and Doğancan Arabacı using java. The Ide that is going to be used for development is Netbeans. The server is going to use Apache Mina Framework for I/O handling and session management component. Apache mina framework eases the development as it provides basis for multithreading and efficient architecture and all necessary features for a web server. The Game Logic component part of the server is going to include all the necessary logic for characters, teams, leagues, social and financial parts of the game. It has the parameters for all the actions related to the game and these parameters can be altered by the administrative management component. Both I/O handling and session management component and game logic component is going to be integrated with NoSQL database component which connects to the Couchbase Database using the couchbase client sdk for altering the user information and storing persistent data of the game. The format of communication between server and clients and the data stored in the database is going to UTF-8 encoded json strings, for which Gson ( Google Json ) library is going to be used for object to json and vice versa conversion. The administrative component also connects to a simple administrative panel for creating and modifying promotions and events during the course of the game while the server is still running. Also as we have mentioned before it can modify the game parameters inside the game logic to create a better and more realistic simulated life. The Data Mining module of the product is going to be implement by Doğancan Arabacı using php. The action collection unit component is responsible for responding to the http post requests received from the clients, validating their correctness and storing them to the MySql database using the MySql database component. MySql Database component is responsible for storing and querying information from the MySql database which uses the standard php library for mysql communication. Since the actions of the users is going to be accumulated, report generation component of the data mining module is going to generate reports based on the information it received from the SQL Database component.

Cloud Server: The Cloud Server consists of separate modules having quad-core processor and 16GB of ram memory running a linux operating system. These modules runs on AWS (Amazon Web Services). The java server, Couchbase and MySql databases, data mining module and apache server for hosting the web client; are running on different modules on this cloud server for scalability and maintainability. IOS Device: IOS devices is going to run the IOS client of our product. All the required software are included in the IOS and active internet connection is necessary for playing the game. The game can be installed from the online Apple store. Android Device: Android devices is going to run the android client of our product. All required software are included in the android operating system and active internet connection is necessary for playing the game. The game can be installed from the Google Play store. PC: PC devices is going to run our web client hosting from our apache server in the cloud. All operating systems with a flash player plugin installed browser can play the game. The game is only going to be accessible through facebook application domain 2. 4. Support Name of the Person/Name and Members of the Team/Name of the Organization: Özgür Alan, SNG Bilişim, www.sngict.com Contact Info: Özgür Alan, SNG Bilişim, ozgur.alan@sngict.com, +90 (533) 2697174 Resources to be provided: 1 imac, 4 PC, Android Mobile Phone, iphone 4 and iphone 5, development and working environment. Flash Builder, XCode, Netbeans, ADT, and an apple developer account is going to 2 http://apps.facebook.com

be provided. A graphic designer will work with the project members during the project. All project members are part-time employees of the company. Intellectual Property Rights: All the intellectual property rights of the finished product belongs to the SNG Bilişim.