Requirements Specification

Similar documents
Sanctioning A Tournament

Candidate Instructions

7:00PM 12:00AM

Before displaying an image, the game should wait for a random amount of time.

Assignment 1. Due: 2:00pm, Monday 14th November 2016 This assignment counts for 25% of your final grade.

Tekken 7. General Rules

Revision for Grade 6 in Unit #1 Design & Technology Subject Your Name:... Grade 6/

2017 Limited Kit Event Outline

SCENARIO LIST. (In no particular order) SEIZE GROUND. - As per page #91 of the Warhammer 40,000 Rulebook -

Game content: 6 clan-cards. 120 Tokens. 16 dice. 1 First Player token. 1 board. 53 Gnomes (wooden cubes) 48 objective cards

Training a Neural Network for Checkers

EVENT KIT ACTIVITY BOOKLET PUT YOUR BATTLE PANTS ON!

RANDOM MISSION CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN THERE ARE NO DRAWS PICK A MISSION RANDOM MISSIONS

FIFTH AVENUE English Rules v1.2

Rock, Paper, Scissors

SATURDAY APRIL :30AM 5:00PM 7:00PM :00AM

WARHAMMER 40K COMBAT PATROL

Event:

In this project you ll learn how to create a times table quiz, in which you have to get as many answers correct as you can in 30 seconds.

If event A is more likely than event B, then the probability of event A is higher than the probability of event B.

1 Document history Version Date Comments

OZOBLOCKLY BASIC TRAINING LESSON 1 SHAPE TRACER 1

Getting Started with Modern Campaigns: Danube Front 85

Level 2 Create software components using Java (7266/ )

The Kapman Handbook. Thomas Gallinari

Kajot Casino Ltd. Game Description Joker Area

RESERVES RESERVES CONTENTS TAKING OBJECTIVES WHICH MISSION? WHEN DO YOU WIN PICK A MISSION RANDOM MISSION RANDOM MISSIONS

CISC 1600, Lab 2.2: More games in Scratch

Introduction. Contents

game design - shem phillips illustration - mihajlo dimitrievski graphic design & layouts - shem phillips copyright 2017 garphill games

Brain Game. Introduction. Scratch

Ovals and Diamonds and Squiggles, Oh My! (The Game of SET)

Picture 2 - The window shows all the templates created by your operator ID along with all the public ones. Picture 3. Picture 1

Rules & Regulation. COUNTER STRIKE GLOBAL OFFENSIVE (1v1)

The purpose of this document is to outline the structure and tools that come with FPS Control.

"!" - Game Modding and Development Kit (A Work Nearly Done) '08-'10. Asset Browser

1. Overview. 2.Contents. 3. Setup

Level 2 Creating an event driven computer program using Java ( )

PLAYERS AGES MINS.

Balloons Touch. 1-4 players, all ages. Balloons Touch by. Bring your family back together!

WARHAMMER 40K CHAMPIONSHIP

Space Invadersesque 2D shooter

Instruction Manual. 1) Starting Amnesia

CONCEPTS EXPLAINED CONCEPTS (IN ORDER)

playing game next game

After you launch StoryO, you will see 5 sample projects in the Projects screen. To sample a project, click on the name of the project.

Wild. Overlay Wild. Bonus Game. Football: Champions Cup Game Rules

Game Design Document 11/13/2015

EPIC VARIANT REGULATIONS

Technical Description of the Go*Team User Interface

STEEMPUNK-NET. Whitepaper. v1.0

Z-Town Design Document

Introduction. Goal. Contents Steve Finn. 30mn

Coordinate Planes Interactive Math Strategy Game

Supreme Hot Video Slot. Introduction. How to Bet. Gamble Feature

X-Wing Epic Variant Regulations

Obstacle Dodger. Nick Raptakis James Luther ELE 408/409 Final Project Professor Bin Li. Project Description:

1 rulebook 32 dice (8 each of 4 colors) 24 Blueprint cards 9 Award cards 12 Prize cards 4 screens 1 scoreboard 1 cloth bag 4 scoring markers

FRIDAY :: MARCH 24 ZONE MORTALIS #1

Asrael Documentation. Alexander Pagonis ( ) Graz, April 7, 2016

2018 Battle for Salvation Grand Tournament Pack- Draft

Critical Run Tournament Event Outline

Goal of the Game. For 2-4 Players

Absolute Backgammon for the ipad Manual Version 2.0 Table of Contents

Sheepshead, THE Game Set Up

Creating Interactive Games in a Flash! Candace R. Black

MiVoice Office Real-Time Wallboard

Problem Set 2. Counting

Emerging Technology Design ACM2012

Operation Blue Metal Event Outline. Participant Requirements. Patronage Card

Bridgepad Swiss Team Guide 2010 BridgePad Company Version 2a BridgePad Swiss Team Manual2d-3c.doc. BridgePad Swiss Team Instruction Manual

Dragon Canyon. Solo / 2-player Variant with AI Revision

Maniacally Obese Penguins, Inc.

1 - Some basic definitions 2 - What is Duplicate Texas Holdem? 3 - How it works

Pro Xenon Mediathek Ltd. Game Description Lucky Dragon

Unofficial Bolt Action Scenario Book. Leopard, aka Dale Needham

SATURDAY APRIL :30AM 5:00PM

In this project we ll make our own version of the highly popular mobile game Flappy Bird. This project requires Scratch 2.0.

Notes about the Kickstarter Print and Play: Components List (Core Game)

Miniatures 800 Point

In this project, you will create a memory game where you have to memorise and repeat a sequence of random colours!

BOLT ACTION COMBAT PATROL

Battle. Table of Contents. James W. Gray Introduction

Hierarchical Controller for Robotic Soccer

"Lab, this is Command. WHAT S loose?" "It broke out of the Lab! It killed Jones!" "I don't know, but it's headed your way!"

Operation Take the Hill Event Outline. Participant Requirements. Patronage Card

Overview... 3 Starting the Software... 3 Adding Your Profile... 3 Updating your Profile... 4

Kajot Casino Ltd. Game Description Joker Mania II

Medieval Wars Alpha Fix - PSP

Scorer with BridgePads Quick Guide to Teams Scoring

CS188: Artificial Intelligence, Fall 2011 Written 2: Games and MDP s

..\/...\.\../... \/... \ / / C Sc 335 Fall 2010 Final Project

Kajot Casino Ltd. Game Description Turbo 27

TABLE OF CONTENTS WHAT IS SUPER ZOMBIE STRIKERS? QUICK GUIDE HOW TO PLAY TOURNAMENT STRUCTURE ELIGIBILITY & PRIZING

The player with the largest tribe at the end of the game is declared the winner!

Getting Started with Panzer Campaigns: Budapest 45

SSBU ESBTC 2019 Finals Ruleset

Comp 3211 Final Project - Poker AI

Becky Plummer. Mike Lenner. Billy Liu Mariya Nomanbhoy GRIMM. Your-Own Own-Story Language. Choose-Your

D3.5 Serious Game Beta Version

Transcription:

Requirements Specification Software Engineering Group 6 12/3/2012: Requirements Specification, v1.0 March 2012 - Second Deliverable

Contents: Page no: Introduction...3 Customer Requirements...3 Use Cases...4 CRC Cards...11 Class Diagram...13

Introduction This document contains the description of requirements as outlined by the customer. This information is structured as a set of scenarios and use cases to demonstrate how the user will interact with the program and the anticipated behaviour of the system. These are split into primary scenarios, which are inevitable for the gameplay, and the secondary scenarios which are optional actions. CRC cards were used to illustrate the collaborations and responsibilities of the proposed classes and class diagram was created for better understanding of how these will link together. The players will have an option of playing the game in single mode, where a single user will be able to play against other player, or the tournament mode where multiple number of players will engage in a tournament, where a number of matches will be played until one brain is victorious. The players will have an opportunity to design their own worlds and ant brains, but the option of randomly generating worlds or using already made brains will be available. The program will have to check if the brains and the world supplied by the player are syntactically correct before the game can be started. Also the worlds generated by the system must be well structured and obey the rules of the game. The game will provide the examples of a well-structured components, to give the player understanding how they should look like. Also, the game will use graphical interface to visualise the world and the behaviour of the ants which will give the game dynamic and attractive look. This documentation will serve the design team as a guide to build the high-level design specification of the project. Customer Requirements 1. Program must check if the brain supplied by the player is syntactically well formed. 2. Program must check if the world supplied by the player is syntactically well formed. 3. Program must visualise and display given world. 4. Program must be able to generate random and well-formed ant world. Program must be able to randomly generate a world that will follow the rules specified in requirement 2. 5. Program must allow two players to play the game. Program allows two players to upload brains that they have created. Players must be able to upload previously created world or choose randomly generated world. Program must display information which species of ants is controlled by which player. Program will assess the final scores and determine the winner of the match. 6. Program must allow arbitrary number of players to compete in a tournament. 7. The software engineering team will supply their version of the brain following the rules specified in point 1. 8. The program will output appropriate sound effects to improve user experience.

Use Cases 1. interaction 1.1 Use case hierarchy Note: each line represents a use case. Lines beginning with the bar symbol ( ) which appear at the same indentation level are alternative paths. Numbered lines must be completed in the order specified, while lines beginning with a lower-case alpha character which appear at the same indentation level can be completed in any order. Decide which game mode to run Run Single Match 1 Setup Game Components a Choose Brain { 2 } Select ready-made brain. Upload/create custom brain b Choose World Generate random world Upload/create custom world 2 Begin Match Display current score 3 Choose what to do next Run Tournament 1 Choose Brain { n n >= 2 } Select ready-made brain. Upload/create custom brain 2 Begin Tournament 3 Choose what to do next 1.2 Use Case Diagram

1.3 Interaction Use Case Descriptions Decide which game mode to run Application Launched Upon launching the game, the user is presented with the main menu which has two options: Single Match and Tournament Mode. One of these options must be chosen to continue. Post Condition: The user is at a setup screen for one of the modes Run Single Match Single Match option chosen from main menu The Single Match setup screen requires that the user choose two brains and a world to be used (see the Setup Game Components use case). There are two optional actions the user can take: deciding to run the game without visualisation, and specifying the number of rounds for which the game should run (the default is 300,000). Once the user has chosen their desired game components, they can choose to begin the simulation (see the Begin Match use case). Upon successful completion of a match, the user is presented with the result of the match and statistics gathered during its execution. They can then choose to take some further action (see the Choose what to do next use case). Select Tournament Tournament option chosen from menu

In the tournament mode, it is possible for multiple users to upload the brains that they have created and put them in a match against each other until one is victorious. Just like in a single match mode, the users will be able to run the simulation without visualisation, but they won t be able to specify the number of rounds for each match (all matches will run for 300 000 rounds). The game will randomly generate a group of worlds that will be used for the tournament. For example if the group will be set to 5, the game will generate 5 random worlds and for each match different worlds will be used. The users won t have an option of adding their own created worlds into the group. After each match, a leader board screen will be displayed, specifying how many points each player has so far. The player that has won the match will be awarded 2 points and the player that has lost won t acquire any points. If the match was a draw, both players will be awarded 1 point each. At the end of the tournament, the winner will be the one with the most amount of points. If two top players at the end of the game have the same amount of points, a deciding match will be played between those two and the player who wins the deciding match will win the whole tournament. After the tournament is completed the users can take further action (see the Choose what to do next use case). Use case: Run without visualisation has selected one of two possible game modes After selecting a game mode, the user will be able to choose an option of running the simulation without visualisation. If that option is selected, no graphical visualisation of the game will be displayed, drastically decreasing the time of the process. The users will only see the final score of the match. Setup Game Components Single Match or Tournament option chosen from main menu

The user must choose two ant brains and one world to use for the match (see the Choose Brain and Choose World use cases). Choices are not final and can be modified at any point before the match begins. In the tournament mode, the users will have to choose a minimum of 2 ant brains, however the maximum depends on the number of players that take part in the tournament. Post Condition: Two valid (i.e. syntax-checked) brains, and one valid world are available to be used in the match. Choose Brains The user is at one of the setup screens There are two main methods by which the user can select an ant brain to use. The game will have a collection of built-in brains which the user can pick from, or the user can upload/create their own brain (see the Select ready-made brain and Upload/create custom brain use cases). In addition, there is the ability to combine these two methods by first selecting a ready-made brain and then customising it by modifying its source code. Post Condition: A valid ant brain is available to be used in the match/tournament. Select ready-made brain The user is at one of the setup screens By clicking a button or some other method, the user is presented with a list of at least five ready-made brains. The brains will be named according to their intelligence and/or primary design feature (e.g. killing the other team). The user selects one of these brains by clicking on its name or some other intuitive method.

Post Condition: A named brain appears as selected on the match/tournament setup screen. Upload/Create custom brain The user is at one of the setup screens If user chooses to create/upload custom brain, he/she will be asked to provide a source code for the brain that will be used. The user can write values in the text file and then copy those values into the game. Then the source code will be checked for any syntax errors and if is correct, it will be uploaded into the game. Once all the brains have been uploaded the user can move on to uploading worlds (see the Choose World use case). Choose Worlds The user uploaded brains in the setup menu The user has the option to create his own world or randomly generate one. Just like in the case of choosing brains, these two methods can be combined by creating random brains and then changing the source code. In case of the tournament mode, the users will not be able to upload their own world, instead a group of random worlds will be created which later will be used in the game. Upload/Create custom world The user is at one of the setup screens Just like in there case of the uploading custom brain, the user will be asked to provide the source code for the world. The user will be able to specify how many different components the world will contain (food, rocks etc.) and also the location of those elements. Select randomly generated world The user is at one of the setup screens If the world is randomly generated, the user will be able to specify the number of components that the world will contain but not their location. In tournament mode, the whole world will be randomly generated (users will have no control over the number or the location of any components).

Begin Match The used has selected all necessary components and clicked begin match Once all the components were selected, the user is presented with graphical visualisation of the world, and from there he can observe the process of the game play. Also the user will be able to view the current scores. After the match is completed, the user will be presented with the final score screen. If the run without visualisation option was selected at the beginning of the game, the user will only see the final score screen. Begin Tournament The user has selected all necessary components and clicked begin match At the beginning of the tournament, two first teams will be selected to face each other. The graphical visualisation of the world will be presented and the users will be able to observe the process of the game. The users will be also able to view the current score. At the end of the match the users will be presented with the final outcome of the match and points will be awarded to the winner. After that, the next two players will be selected and the process will continue until all players have played against each other. At the end the leader board will be displayed specifying which player has obtained the most points. From there the users will be able to take further action. Choose what to do next The user has seen the final outcome of the match/tournament

CRC Cards After the match/tournament is completed, the user will have an option to return to the main menu, restart the game using different brains but the same world will be used, using same brains on a different world or choose all new different components. AntWorld Contains ant objects Contains food Contains ant colonies Keeps track of number of rounds Ant AntHill WorldCell RandomGenerator Ant Contain chemical marker Contain brain Collect food Die Avoid obstacles Attack other species Brian Parser Ant Brain AntBrain Holds instructions for ant behaviour Ant Brain parser WorldCells Contain food Contain rock Ant world Game Game start Game statics Allow multiple player to play Ant world Tournament Tournaments Allows arbitrary player to upload ant brain Ant brain

AntHill Sets number of ants of given species Keeps count of food particles in the hills Ant world BrainParser Check if supplied brain is correct/ has correct value Ant GUI Visualise given ant world Ant world RandomWorldGenerator Generate random ant world Ant world WorldParser Checking syntax of the world Checking that worlds conform to contest rules Ant World

Analysis Class Diagram: