11
Bolt Project Proposal Team Members: Andre Wiggins Garrett Reuscher Description: Bolt is a basic 3D tank game made in Unity using C# as the programming language. The game was originally created in August 2014 but was revamped last semester. The game supports up to 2 human players (local multiplayer) and up to 8 players total (6-7 which are AI). There is stat tracking, procedurally generated levels, and power ups as well as power downs. New Features: In order to improve the game we would like to store the stats in a separate database. The database would be made using NoSQL with an undetermined environment. The in game stats would be sent to and received from the database in game. Which means some additional coding in the game is necessary. Some stats that would be stored include (kills, deaths, power ups picked up, etc…). In addition we plan to allow users to submit levels that they have played on. The user would be able to submit their level using a name of their choice and a seed. These levels would be stored in the database and then users would be able to download these maps in game. The users would also be able to rate the levels. For the web service we plan to make a feature that determines a featured level daily. The user would be able to fetch this level using a button in game. The basic PHP script

Bolt Project Proposal

  • Upload
    asu

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Bolt Project ProposalTeam Members:

Andre Wiggins Garrett Reuscher

Description:Bolt is a basic 3D tank game made in Unity using C# as the

programming language. The game was originally created in August 2014 but was revamped last semester. The game supports up to 2 human players (local multiplayer) and up to 8 players total (6-7 which are AI). There is stat tracking, procedurally generated levels, and power ups as well as power downs.

New Features:In order to improve the game we would like to store the

stats in a separate database. The database would be made using NoSQL with an undetermined environment. The in game stats would be sent to and received from the database in game. Which means some additional coding in the game is necessary. Some stats that would be stored include (kills, deaths, power ups picked up, etc…).

In addition we plan to allow users to submit levels that they have played on. The user would be able to submit their levelusing a name of their choice and a seed. These levels would be stored in the database and then users would be able to download these maps in game. The users would also be able to rate the levels.

For the web service we plan to make a feature that determines a featured level daily. The user would be able to fetch this level using a button in game. The basic PHP script

would pick from the user submitted levels in the database favoring those with higher ratings.

Benefits & Audience:The benefits are the improvements that will be made to the

game by implementing the previously-described features. The audience includes anyone who enjoys tank games or competitive local multiplayer games.

Requirements:In order to run the game the user only needs an executable

and a data folder (Windows), an .app file (Mac), or a .x86 file (Linux). Hardware-wise the user only needs a basic machine with graphics and internet capability. In order for the developers to edit the game they would need the Unity game Engine (Version 4.6)and any text editor that can compile C#. As for the database and web service they would need a whatever database repository we decide on and some type of internet connection to access the database and web scripts.

Database Choices:The Unity game engine does not have any native support for

databases, therefore database integration requires C# support so that we can use raw C# in conjunction with the game’s code. Thereare quite a few NoSQL platforms that support C#. Some include MongoDB, Redis, CouchDB, and RavenDB. All of these platforms havedifferent methods of integration, but MongoDB seems to be the easiest as it only involves downloading a driver to setup the database and using a small code repository in the project itself to connect using pre-built C# functions.

Milestones:Week 3:

Decide on a database platform to use

Decide on a language for the web service scripts

Decide on a server hosting method

Week 6: Setup test database

Setup server (if necessary)

Have game communicate with test database

Wee`k 9: Setup statistic storage in the database

Have game send and retrieve user statistics from the database

Add a post-game screen to the game

Week 12: Add user-submitted levels to the database

Add a screen for submitting, downloading, and rating levels

Week 15: Setup the featured level web service

Bug fixes

Screenshots:Title Screen:

Credits Screen:

Options Screen:

Statistics Screen:

Game Setup Screen:

Pre-Game Screen:

In-game: