RSS

The Journey Beyond Hell’s Gate

25 Nov

The Journey Beyond Hell’s Gate

Software Requirements Specification

proj_reqs_The_Journey_Beyond_Hell’s_Gate.docx

Draft 1

16 September, 2016

Revisions

Version Primary Author(s) Description of Version Date Completed
Version 1.0 The first version of the requirements for The Journey Beyond Hell’s Gate. 10/8/16

Contents

1 Introduction       

1.1 Purpose

1.2 Scope

1.3 Definitions, Acronyms, and Abbreviations

1.4 References

1.5 Overview

2 Overall Description    

2.1 Product Perspective

2.1.1 System Interfaces     

2.1.2 User Interfaces        

2.1.3 Hardware Interfaces

2.1.4 Software Interfaces  

2.1.5 Communications Interfaces 

2.1.6 Memory Constraints

2.1.7 Operations   

2.1.8 Site Adaptation Requirements          

2.2 Product Functions

2.3 User Characteristics

2.4 Constraints

2.5 Assumptions and Dependencies

2.6 Apportioning of Requirements

3 Specific Requirements 

3.1 External Interface Requirements

3.1.1 User Interfaces        

3.1.2 Hardware Interfaces

3.1.3 Software Interfaces  

3.1.4 Communications Interfaces 

3.2 Software Product Features

3.2.1 Feature 1     

Purpose 

Stimulus/Response Sequence          

Associated Functional Requirements             

3.3 Performance Requirements

3.4 Design Constraints

3.5 Software System Attributes

3.5.1 Reliability    

3.5.2 Availability  

3.5.3 Security       

3.5.4 Maintainability        

3.6 Logical Database Requirements

3.7 Other Requirements   

 

Introductio

  1. Purpose

This text based game was created to further our knowledge of java, sql and the software development cycle as well as to satisfy the requirements for GGC ITEC 3860 Software Development I.  This game was created for our professor, Rick Price, and the students in GGC ITEC 3860-03 Software Development I fall semester 2016.

  1. Scope

This text based game will be a console game called the Journey beyond Hell’s gate.  The game functions will be controlled through a graphical user interface which will consist of a command line for entering text based commands and an area for viewing your commands and information printed to the interface from the game.  It will have a save and load feature as well as score keeping abilities.  The user will have to navigate through a 50 room map fighting monsters and solving puzzles along the way.

Program will be developed using Java IDE Eclipse. Eclipse with be the main point of programming and will be where the program will be developed. All Java code will reside in Eclipse packages. Eclipse offers various built in Java classes that will be used in the creation of the program.

 

  1. Product Perspective

Program will be similar to other adventure game, but will lack a graphical avatar that the user controls. Instead, the user will command the hero and interact with the game world by type text commands into the gui command line such as “help” or “move left”.  The gui will show descriptive text of environment, monsters and puzzles printed from the game as well as the user generated commands.

Program will not be self-contained. Program will be somewhat dependent on a database for room descriptions and puzzle and monster creations. Program will need the assistance of Eclipse and a database management system in order to function correctly.

  1. User Interfaces

The user will interact with a gui that consists primarily of a text area which displays the user’s text commands and text describing the game world and game encounters.  This gui will also have a text field for the user to enter their commands, a help menu, an inventory menu, a save and load option, and it will also display the user’s current score and high score.

The program will be easy to interact with and will ensure that the user is able to understand what is needed from them. The program will use simple language and display all available options and help commands. The program will not require anything more than the basic computer components (monitor, tower, mouse, keyboard).

  1. Hardware Interfaces

The program will require the use of a monitor, computer base, keyboard, and mouse. These are the only controls needed. The program will be hosted on a team member’s computers as well as the database.

  1. Software Interfaces

Program will be ran on an Operating System and created using the combination of a Java IDE and database management system. Eclipse with store all program files while the database fields will be stored within a DBMS. The user interface will be apart of the Java package stored in Eclipse.

Software Information:

  • Eclipse IDE for Java Developers
    • Version: Mars Release (4.5.0)
    • Source: Oracle
  • SQL Serve
    • Version: 2016
    • Source: Microsoft
  1. Communications Interfaces

Only communication needed for program is DBMS connection.

  1. Memory Constraints

The software should be built with some sort of constraints to use a limited amount of memory.

  1. Operations

Program will only take in consideration saving and recovery. User will be able to save current progress in game and return to it later. Current progress will be saved in designated slot.

  1. Product Functions

Major functions of the program will include database communications, room, monster and puzzle generation, saving capabilities, menu display, and inventory limitation.

  1. User Characteristics

Intended user will be young adult that is interested and has knowledge of text-based adventure games. User should be exposed of adventure type games and understand the objective of such a game. User should be literate and able to comprehend simple move commands and story plots. User should have puzzle solving skills in order to achieve levels.

  1. Constraints

Program must operate on a functional OS. Mac, Linux, and Windows OS all work for processing program. A Java JVM must be present on the computer that the program is being used in order for all Java files to run appropriately.

  1. Assumptions and Dependencies

The requirements in this document are dependent on the requirements given to us by Professor Rick Price in GGC ITEC 3860-03 Software Development I in the fall semester of 2016.  The assumption is the requirements given by Rick Price will not change.

  1. Apportioning of Requirements

GUI will be delayed until future versions due to limitation of time. GUI is not a necessary requirement but does allow program to be more convenient to user.

  1. External Interface Requirements
    1. User Interfaces

At the beginning of the game, the program will output the objective and story plot of the game. It will then place the user in a room and output a description of the room the user is starting off in. The description will include the number of exits in the room and the directions the user can go. The user will then input either the direction they wish to go or command the program to allow them to go through an exit to another room. The first room with have no puzzles nor monsters. For the next rooms, the user will encounter puzzles and may encounter monster, which will be randomly placed inside rooms. The program will also tell the users that they can save their games once they reach the second room of their journey. Users will be able to add inventory immediately when the game begins, so within the first room.

  1. Hardware Interfaces

The program will only take text input for a computer. Mobile devices and speak recognition is not functional for this game. The user must input the commands the program supplies to them in order to move on. If user inputs other unknown commands, program will throw an error and allow the user to input something again.

  1. Software Interfaces

Program must be used on a computer that includes the Java JVM. Program will not function without such a software. Program must also be used using Eclipse or any other Java IDE. A Java IDE will be able to complete many of the required processes for the program and provide an interactive environment for the user. User computer must also include a DBMS for storing program database needs or have a communication signal to the DBMS.

  1. Communications Interfaces

Only communication is from Java files to database. Connect must be sustained for key information use, such as room descriptions, available inventory, and puzzle details.

  1. Software Product Features
    1. Performance Requirements

The interaction between the user and the computer will be limited to specific keys. Each key should have a specific functionality.

 

 

System Functions

 

Description: The system structure will be called “SAVING THE PRINCESS”. The actor will go through a series of obstacles trying to save the princess. The captured princess will be kept in a creepy castle away from her land. In order for the actor to rescue the princess, he will go through a series puzzles, and should stay alive throughout the journey. Each puzzle will present an obstacle to the actor. The obstacles in each puzzle are monsters with different powers, and the actor must successfully neutralize them to go to the next puzzle and eventually get to the princess and rescue her.  The actor should initially have some weapons on him, but should be able to pick some more powerful weapons along the way.

 

Combat:

There will be 6 attack moves that the user can use when facing a monsters. User will start off with the first two moves but must unlock the last 4 by successfully solving puzzles or finding the item in select rooms throughout the game world.

The combat system is turn based starting with the user.  Each action will take one turn.  Actions can be: using an attack move, using an item, or reloading.  There are chances for missing, blocking and critical hits which are move, item and character dependent. The attack moves are listed below along with damage power:

  1. Punch
  1. Default starter move with a damage power of 5 points. Works well with weaker monsters and can be used for all battles. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 15 damage points. 75% chance of landing a normal hit and dealing 5 damage points.  Does 0 damage to Reapers.
  1. Kick
  • . Default starter move with a damage power of 7 points. 15% chance of missing. 15% of being blocked. 5% chance of a critical hit, which will do 21 damage points. 65% chance of landing a normal hit and dealing 7 damage points. Does 0 damage to Reapers.
  1. Stab
  • . After completing a puzzle in room 10 the sword will be available for the user to pick up and equip. Once the sword is equipped, the user can perform stab which has a damage power of 15 points. 10% chance of missing. 10% chance of being blocked. 10% chance of a critical hit, which will do 45 damage points.  70% chance of landing and dealing 15 damage points. Does 0 damage to Reapers.

 

  1. Shoot
    1. After completing a puzzle in room 25 the gun will be available to the user to pick up and equip.  Once the gun is equipped, the user can perform shoot which has a damage power of 25 points. 15% chance of missing.  0% chance of being blocked(cannot be blocked).  15% chance of a critical hit which will do 75 damage points.  70% chance of landing a normal hit and doing 25 damage points.  The gun uses bullets as ammo.  The bullets must be found.  The gun has a 10 round magazine.  It takes one turn to reload the gun. Does 0 damage to Reapers.
  2. Laser blast
    • . The laser gun is placed in a chest that will appear within a random room between 26 and 35 for the user to find and equip. Once the laser gun is equipped, user can perform laser blast which has a damage power of 35. 10% chance of missing.  0% chance of being blocked(cannot be blocked). 20% chance of a critical hit which will do 105 damage points. Does 0 damage to Reapers.
  3. Energy pull
    • . After completing the puzzle in room 45 the energy gun will be available for the user to pick up and equip. Once the energy gun is equipped, user can perform energy pull which has a damage power of 50. 10% chance of missing.  0% chance of being blocked(cannot be blocked). 25% chance of a critical hit which will do 150 damage points. Energy pull is the only attack move that can damage reapers.

Monsters

There will be a total of 10 monsters, ranging from least to most difficulty level. Some combat moves will not work on all monsters. Monsters and their descriptions are listed below from least (1) to most (10) difficult level:

  1.       Creeper
  2.      Box-shaped monsters with green faces. 75% chance of landing a normal hit and dealing 2 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 6 damage points. Has 15 health points.

 

 

  1.       Zombies
  2.      Walking dead that look to eat your brains. Will scratch and claw.  75% chance of landing a normal hit and dealing 5 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 15 damage points. Has 25 health points.
  3.       Dog Zombies
  4.      Dead Australian shepherds that run toward the user. One of two kinds of Dog Zombies and will bite the user. 75% chance of landing a normal hit and dealing 7 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 21 damage points. Has 40 health points.
  5.       Mud-Locs
  6.      Mud covered monsters that glob all over the place. Will fling mud-balls at user. 75% chance of landing a normal hit and dealing 10 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 30 damage points.  They have 50 health points.
  7.       Goblin
  8.      Ugly monster that punches and kicks the user. 75% chance of landing a normal hit and dealing 15 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 45 damage points. Has 65 health points.
  9.       Fire Dog Zombies
  10.      Dead hellish fire Doberman that run toward the user and bites and scratches them. 75% chance of landing a normal hit and dealing 20 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 60 damage points. Has 75 health points.
  11.       Darkly Witch
  12.      Evil witch monster that shoot spells.  75% chance of landing a normal hit and dealing 25 damage points. 15% chance of missing. 0% chance of being blocked(cannot be blocked). 5% chance of a critical hit, which will do 75 damage points. Has 85 health points.
  13.       Abominations
  14.      Big, ugly, stinky, ogre-like monsters that are very strong. 75% chance of landing a normal hit and dealing 30 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 90 damage points. Has 100 health points.
  15.       Mayhem
  16.      Mayhem monsters look to cause absolute chaos and will rain down waves of fire upon the user.  75% chance of landing a normal hit and dealing 35 damage points. 10% chance of missing. 10% chance of being blocked. 5% chance of a critical hit, which will do 105 damage points. Has 125 health points. If user tries to kick or punch a Mayhem, they will cause 5 points of damage to themselves.
  17.   Reaper
  18.      The Reaper appearance in Room 45-49 and can only be damaged using the energy pull attack move.  75% chance of landing a normal hit and dealing 50 damage points. 10% chance of missing. 0% chance of being blocked. 5% chance of a critical hit, which will do 150 damage points. Has 200 health points. If user tries to kick or punch a Mayhem, they will cause 5 points of damage to themselves.

Puzzles:

There will be a number of puzzles in the system. User should be allowed to input his course of action and also input the command to fight off the monsters in each puzzle. The actor should initially have some weapons on him, but should be able to pick some more powerful weapons along the way

 

Puzzle 1:

Ø  Creeper Puzzle. The gate opens up when the actor gets within inches to the gate.

  •         Message from the monster: You should not have come here my friend:
  •         Response from the actor: I am not your friend. I am here to take the Princess back to her rightful home.

Puzzle 2:

Ø  Zombies’ puzzle:  The puzzle opens when the actor approaches the second gate.

  •         Message: “You have been warned. Now you are going to face the consequences for intruding our castle”.
  •         Response from the actor: “Bring it on. I’m not scared of you monsters. I’m here for the princess you have taken hostage, and I’m not leaving without her”.

Puzzle 3:

Ø  Dog zombie puzzle: After the user fights off the monsters in puzzle 3, puzzle 4 opens up.

  •         Message: “You have tested our patience. This time around you are getting your throat slit”.
  •         Response from the actor: I’d like to see you try.

Puzzle 4:

Ø  Mud-Locks puzzle: This puzzle is dark and illuminates when a foreign being enters.

  •         Message: “You have guts showing up here. You are going to be torn into pieces and you will be fed to the dogs”.
  •         Response from the actor: “Be my guest”.

Puzzle 5:

Ø  Goblin Puzzle: The puzzle has some ugly monsters.

  •         Message: “Only monsters of our kind survive up in this place. You have met your demise”.
  •         Response from the actor: “Well, meet your new puzzle-mate”.

Puzzle 6:

Ø  Fire Dog Zombies Puzzle:  The puzzle filled with some ugly monsters hungry for blood.

  •         Message: No intruders allowed. You must’ve lost your way.
  •         Response from the actor: I am not lost. I’m here for the princess, and no one can stop me from the mission.

Puzzle 7:

Ø  Darkly witch Zombies puzzle: The evil witch zombies’ puzzle is hard to overcome.

  •         Message: If you think you are getting out of here alive, then you must be crazier than we thought.
  •         Response from the actor: I think we are about to see who is crazier between you guys and I.

Puzzle 8:

Ø  Abominations’ puzzle: Ogre monsters in this puzzle will destroy anything that comes their way.   The actor has to be extra careful fighting the monsters.

  •         Message: You must be out of your mind coming here. This is the end of you.
  •         Response: from the actor: You damn right, I’m out of my mind. But you are wrong also, because this is the end of you instead.

Puzzle 9:

Ø  Mayhem monsters’ puzzle: This puzzle poses another danger yet, because it rains down rains of fire. The actor survives this puzzle, by wearing a special gear that is won by successfully completing puzzle 8, but also has to fight to win the battle.

  •         Message: You must have went through a whole lot of trouble to get here. Say goodbye to your little life as you know it, because this is it for you!
  •         Response from the actor: I will say goodbye to you. I didn’t come all the way here to be stopped by no monsters. I won’t leave until I rescue the princess.

Puzzle 10:

Ø  The Reapers’ puzzle:  This is the last puzzle before the actor gets to the princess and rescues her.

  •         Message: Not you! How’s it possible that you made it all the way here. I’ll reap your heart out.

Response from the actor: Good luck with that.

Combat Structure

All puzzles should have the same attacking option for the user:

Ø  User inputs:

v  Input options 1: “Charge”

v  Input option 2: “Attack”

  •          User inputs: “Charge”, the actor charges towards the monsters and stops when he gets closer to them.
  •  Then the system should display a message asking the user: “What’s your next move”
  •  User inputs: “Attack”, the actor fights and kills the monsters in the specific puzzle he is in.
  •  The system displays: “You have successfully completed the task. See you in the next puzzle.”
  •  When the user successfully completes puzzle 10, the system displays message: “Congratulations! You have saved the PRINCESS.”
  •  If the actor inputs the same command twice, the system should display a message: “Not a valid option. Try again”
  •  If the user waits more than 60 seconds to input an option, the system displays a message: “You lost the battle”, and takes the user to the previous puzzle. If the user is still in puzzle 1, then the game restarts.

For every puzzle that the user completes, the actor automatically, takes the arsenal available in that particular puzzle and can be used in subsequent puzzles

 

Rooms:

Room 1: “The Default”

        Description: “Welcome to the Default. The first room of your painful journey. There is only one exit, no puzzles, no monsters. Please type “forward” to go to the next room.”

        Reactions: If user types “forward”, regardless of case, user will go to next room. If user does not, they will receive “Command not recognized…” and be allowed to type another command.

 

Room 2: “The Silence”

        Description: “Welcome to the Silence. Nothing is heard here, I mean n.o.t.h.i.n.g. There are two exits, one to your left and another forward. Pick your faith.

        Reactions: If user picks left, they will receive a random puzzle to solve before moving on to the next room. If user picks

 

 

 

 

  1. Design Constraints

Program must operate on a functional OS. Mac, Linux, and Windows OS all work for processing program. A Java JVM must be present on the computer that the program is being used in order for all Java files to run appropriately.

 

  1. Software System Attributes
    1. Reliability

The game should be built in a way that the all components of the software will work according to the specified requirements.

  1. Availability

The software should be made available for everyone desiring to play regardless the age, and should not require the user to create an account.

  1. Maintainability

Major maintenance will be attached to the database due to its high amount of data storage. Database must be continuously maintain in order for program to function. Database stores major components of program, thus must be ready when being called on.

  1. Logical Database Requirements

The data of every completed stage by the user should be stored so the user does not have to restart from the beginning when an interruption occurs.

Database will store room descriptions, monster locations, inventory storage and puzzle details. Each will be used a designate database with respected names such as Room Database, Monster Database, Inventory Database and Puzzle Database. Each database will be linked to Java files by connection from objects stored within the Java files. Communication to database will only occur once these objects are created and connected. There will be a dependence on the Room from the Monster and Puzzle. Monster and Puzzle will only occur if the Room is initialized. All databases must retain present and live data due to the high frequency of use that each will have.

 

 
Leave a comment

Posted by on November 25, 2016 in academic writing

 

Tags:

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

 
%d bloggers like this: