Spec

Project Description

What kind of game are you planning to build?

We are planning to build a 3D multiplayer action battle game. The game play style will be similar to Soul like games. The setting of the game will be around the middle age, so the players will fight using melee weapons.

What are the goals of the game, how do players win, how do they lose?

The goal of the game will be defeating all other players. The last one standing will be the winner, and the other players will be ranked by the order they being defeated, or the damage they dealt.

What are the interesting or unique aspects to your game?

Like other Soul like games, our game will be a hard core action game, which requires players to practice their skills. We will also add interesting weapons or spells to enrich the game experience.

What are the list of features of your game? Prioritize them into at least three categories: “Must Have”, “Would Be Really Nice”, and “Cool But Only If Ahead Of Schedule”.

  • Must Have
    • One battle field map
    • One kind of weapon (sword)
    • One way to win (the last one standing wins)
    • Basic movements (walk in any direction, run, attack, roll)
  • Would Be Really Nice
    • More maps
    • More weapons (spear, hammer, two-handed swords…)
    • Rank the defeated players (by damage dealt, order of defeated…)
    • More movements (jump, block…)
  • Cool But Only If Ahead Of Schedule
    • Random generated map
    • Magic and ranged weapons (magic wand, bow, magic…)
    • Teleport portal (created by mage or generated on map)
    • Special skills

Group Management

We want every group member to contribute ideas and creativity to this project. Together, we decide which functionality we need to implement next, and when disagreements arise, we will resolve them through voting. We will discuss who should take a task depending on each member’s schedule to make the work flexible for everyone. And finally, we will write on a google doc first to keep track of our progress during the week and then generate a weekly report from that document on the weekend.

Project Development

For our group, there is no specific role assignment because we want everyone to be able to contribute. So, for example, after we decide on a new goal, everyone can volunteer to take the task depending on one’s understanding of the work and one’s schedule. And after finishing a task, one should update the project document as soon as possible following the format we discussed.

Meanwhile, Kelin and Felix will focus on the graphics part of the game, and Kelin will take care of most of the artwork and music. Kelvin will focus on rendering (illumination), as well as network protocol design and implementation.

Development Tools

• Xcode and Visual Studio: We will first finish the project using Xcode, and then migrate it to Visual Studio.

• Unity: We will mainly use Unity as a map creation tool. Also, we will take advantage of the Unity Asset Store to obtain 3D models.

• Maya, Photoshop, Animate, and Logic: These programs are for artwork and music.

• We will use unit tests to assure small functions are correct and perform end to end tests to play the game to diagnose game bugs.

• Google Docs for internal documentation

Project Schedule

High Level

  • Week 3 Milestones
    • Basic function server-client protocol.
    • Model loader for engine.
    • Basic engine.
    • Basic game map.
    • Game input functions.
  • Week 6 Milestones
    • Playable game.
    • Complete server-client model.
  • Week 9 Milestones
    • Fancy features implemented.
    • Stable version ready for demo.
    • Implemented UI.
  • Final Week Milestones
    • Finalize documentations.

Weekly Goals

WeeksGoalNotes
Week 1Choose a game type3D Action Battle Game
Choose a genreFantasy
Set up websiteThis website
Command line client-server modelMostly finished except some trivial bugs
Look for assetsFound some character models and map textures
Test game engine and assetsSuccessfully loaded map and models
Week 2Continue work on the engine
Find more character and weapon models
Find animations to bind to character models
Week 3 Be able to control the characters to walk around the map