Welcome Page

Table of Contents

  1. Project Management
  2. Business Plan
  3. Software Documentation

Executive Summary

Group L – Rachel Horvath, Elizabeth Drake, Colin Gagne, Cole Appleton                                               Software Design Project 

 

 

Instructor – Kadri Parris, GTA – Renee Pelan                                                                                                                 18 April, 2021

 

Background & Purpose: 

Group L’s goal was to design and program two matlab games with  a combined complexity of 6 points. The first game was designed to earn the largest share of these points by including, graphics, sounds and sophisticated code. Lab sabotage; a ENGR 1181 themed choose your own adventure game was created to fulfill these requirements. As the complexity of this game grew a much simpler game; Tic-Tac-Toe was chosen as the second game.

 

Results & Analysis:

Lab Sabotage is a five mission long adventure game designed around the ENGR 1181 Beam Bending lab in which you play a disgruntled TA seeking revenge on future students. During your mission to sabotage the lab you must successfully complete five mini games to successfully sabotage the lab. Lab Sabotage was programmed through Matlab’s GUIDE. Each mission was coded as a separate script file so that each mission could be developed independently. The “open page” script initializes the appropriate game script file at the needed time using a Singleton pattern.

In the  first mission; door game, the player’s goal is to enter a code into the keypad in order to enter the lab. To create replayability there are four different codes that a player could use to get into the lab. The GUI will prompt the player with a clue for each code, the code is also incorporated within the game graphics. If the  player unsuccessfully enters the lab code four times an alert is sounded and the player is sent to the end game. The program utilizes a series of if else statements and functions to determine if a code has been successfully entered. 

After entering the lab the player hears footsteps approaching and is prompt with two hiding options; the storage closet and behind the lab table. This is the hiding game mission. There are three possible outcomes. If the player chooses the storage closet they must wait as the footsteps pass but they are able to successfully hide. If the player hides behind the lab table they hear the footsteps grow louder and are caught thus resulting in the end game script being called. Lastly if the player waits more than four seconds to hide they are caught and the game is ended. To create this mission a series of if else statements, functions and the tic toc commands were used. 

The player must complete two tasks in the metal game mission, first they must answer a riddle to choose which metal beam to replace the unknown beam with. The GUI prompts the player with one of three riddles whose answers are either, iron ,copper or brass. If the player enters an incorrect answer, they are simply prompted to try again. Both upper and lower case are valid. A correct answer results in the unknown beam being replaced by the chosen metal.

After a metal is chosen then the player has to roll a pair of dice to determine how much to off put the dial caliper by. The results of the die roll and subsequent dial capplier error are used in the end game to determine if the game is won.

Tic Tac Toe

Tic Tac tOSU is an OSU themed Tic Tac Toe game created by Matlab app designer. Matlab app designer generated a drag and drop GUI that was outfitted to create a 3×3 button tic tac toe matrix, new game and play again button and a score counter. Each matrix button was assigned a name based on its indexing address to make it easier to reference each button during the game’s development. Each button was assigned a call back function; so when it was pushed the code associated with it would run, the correct marker would populate and then the button was turned off. A “calc” function was created and ran after each new user input to determine if there was a winner or a tie had occurred.

Conclusion & Recommendation:  

Using both Matlab’s app designer and GUIDE Group L was able to develop two fully functional games. Group L encountered minor challenges while developing  Lab Sabotage and Tic Tac tOSU. While some minor errors, such as an unneeded function in Lab Sabotage, did end up in the final games each game is fully funcatiable and ready for the user to enjoy. Due to the complexity of Lab Sabotage a large aspect of it was developed on one computer but with input form all members. This caused the exporting/uploading process to be quite challenging. Exporting each game file,graphics,sound files and the game code in a way that was easy for others to quickly download the game took lots of trial and error and mild formatting of the game.

In addition to developing two games, Group L also marketed Lab Sabotage to, potential users, investors, and software developers. To appeal to each target audience, each pitch was shaped to fulfill the needs of each stakeholder. 

For future projects Group L’s main goals would be to find a smoother code sharing system and a better way to store and upload complex game files. Lasty more project time would be allocated to debugging and testing.