Skip to content

Design Seminar for Software Engineers - Senior Capstone Project • An idle roleplaying game framework for Unity driven by customer requirements and designed for Android and iOS. • .NET 3.5, Unity 5.6.3

logicseed/CIS4961-Summer2017-SeniorCapstone

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

⚠️ The content of this repository is explicitly NOT LICENSED for use, modification, or sharing. Per GitHub's terms of service it may only be viewed. See No License for more information. ⚠️

Design Seminar for Software Engineers I & II - CIS4961 Winter 2017 & CIS4962 Summer 2017

For our senior capstone project, we were tasked with performing the entire software development lifecycle with a real client: from requirements gathering through multiple deployments. Our client wanted a modular framework written for Unity that would be fully extensible and provide an easy method for creating an idle-progress roleplaying game for Android and iOS devices.

Details

Students: Marc King, Bageshri Bhavsar, Ali Dashti, Jeff Wright, Mark Malkowski

Professor: Dr. Bruce Maxim / Dr. Kiumi Akingbehin

School: University of Michigan - Dearborn

My Contributions: Design, architecture, implementation, documentation

Timeline: 8 months for requirements gathering, design, implementation, testing, and deployment

Technologies

  • .NET Framework 3.5
  • Unity 5.6.3

Sample Game

The following animations comprise a sample game that was created to showcase the framework to the client. All art is placeholder art, and the interface is more simplistic than the hooks provided by the framework can allow.

Upon loading the game the player is presented with the world map. They can pan around the world map, see which zones they have unlocked, and enter any unlocked zone. Entering a zone allows the player to pan around the zone map, see which stages they have unlocked, and enter any unlocked stage. While on either the world map or a zone map the player is able to select allies, equipment, and abilities or upgrade their hero and allies.

StageSelection

The hero needs allies, equipment, and abilities to survive; enter the first stage will result in a quick death if none have been selected.

YouNeedAllies

The player is able to unlock many different allies by completing stages, but can only take three of them to battle on stages.

AllySelection

Players can collect equipment that can then be assigned to their hero. A hero can have armor and a weapon, or a weapon and shield, or a two-handed weapon assigned.

EquipmentSelection

Abilities allow the hero to perform special actions during combat. A hero always has the defend ability and can assign up to three more abilities. New abilities are learned from allies when they are acquired.

AbilitySelection

The player can spend currency to upgrade their hero. The hero's attribute scores increase with each level.

UpgradeHero

Currency can also be spent to upgrade the attribute scores of allies. Only certain attribute scores are increased; which ones depend on the type of ally being upgraded.

UpgradeAllies

Battles can be much easier with allies and abilities. Toward the end of a stage a boss may spawn.

Skirmish

Stages can contain obstacles that characters and enemies must walk around.

Obstacles

Inspector Screenshots

Nearly every aspect of the game is exposed to the Unity inspector to ease customization. The developers should be careful when changing some values as they can be game-breaking changes. Extensive documentation was provided to the client to detail the effect of changing these values.

InspectorGameManager

All the entities are implemented using Unity's ScriptableObject methodology, making it simple and straight-forward to create and maintain.

InspectorAlly

InspectorEquipment

InspectorAbility

InspectorEnemy

InspectorRandomLoot

InspectorStaticLoot

InspectorQueue

Development

The following animations shows some of the features being tested in isolation.

CasterTest

EnemySpawnTest

MeleeTest

RangedTest

SkirmishTest

About

Design Seminar for Software Engineers - Senior Capstone Project • An idle roleplaying game framework for Unity driven by customer requirements and designed for Android and iOS. • .NET 3.5, Unity 5.6.3

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages