web viewarts media & enterprise; cross college assignment brief –part 1 of assignment 2....

38
Arts Media & Enterprise CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2 COURSE Creative Media Production (Games Development) AWB QUALICATION TITLE BTEC 90 Credits UNIT – NO & NAME Unit 22: Developing Computer Games LEVEL 3 ASSIGNMENT TITLE Designing a Game, Create and Test and Document LECTURER/ASSESSOR Oluyemisi Oduyeye ISSUE DATE 25 of May 2015 INTERIM SUBMISSION FINAL SUBMISSION DATE 26 th of June 2015 Student declaration: I declare that this assignment is all my own work and the sources of information and material I have used (including the internet) have been fully identified and properly acknowledged as required. I understand that plagiarism of any kind will not be tolerated, and may result in grades being revoked and that I may be subject to disciplinary action STUDENT NAME SIGNATURE ASSESSMENT DETAILS & GRADING CRITERIA VOCATIONAL CONTEXT/SCENARIO FOR ASSIGNMENT (See specification guidance) The Game-Space Attack In this game you are shooting down aliens flying in space. You encounter an increasing number of aliens that are invading the planet earth. You should prevent their aircraft from landing by shooting the aircraft. The goal is to avoid any of the alien aircraft from landing. Game is over when the alien aircraft lands. Game objects Aircraft -The aliens fly in space. Bullets - You can fire bullets that destroy the aliens before they land their aircraft. Gun/cannon/shooter – To target aliens in space Sounds ( four different sounds) When the game loads. Whenever a bullet is fired. When an aircraft is hit and when an alien lands their aircraft to signify end of game. Controls

Upload: dangtuong

Post on 02-Feb-2018

224 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Arts Media & EnterpriseCROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2

COURSE Creative Media Production (Games Development)

AWB QUALICATION BTEC 90 Credits

UNIT – NO & NAME Unit 22: Developing Computer Games LEVEL 3

ASSIGNMENT TITLE Designing a Game, Create and Test and Document

LECTURER/ASSESSOR Oluyemisi Oduyeye

ISSUE DATE 25 of May 2015

INTERIM SUBMISSION FINAL SUBMISSION 26th of June 2015

Student declaration:

I declare that this assignment is all my own work and the sources of information and material I have used (including the internet) have been fully identified and properly acknowledged as required.I understand that plagiarism of any kind will not be tolerated, and may result in grades being revoked and that I may be subject to disciplinary action

STUDENT NAME SIGNATURE

ASSESSMENT DETAILS & GRADING CRITERIA

VOCATIONAL CONTEXT/SCENARIO FOR ASSIGNMENT (See specification guidance)

The Game-Space Attack

In this game you are shooting down aliens flying in space. You encounter an increasing number of aliens that are invading the planet earth. You should prevent their aircraft from landing by shooting the aircraft. The goal is to avoid any of the alien aircraft from landing. Game is over when the alien aircraft lands.

Game objects

Aircraft -The aliens fly in space.

Bullets - You can fire bullets that destroy the aliens before they land their aircraft.

Gun/cannon/shooter – To target aliens in space

Sounds ( four different sounds)

When the game loads. Whenever a bullet is fired. When an aircraft is hit and when an alien lands their aircraft to signify end of game.

Controls

Left and Right arrow keys to move the gun to the left or to the right. A bullet is fired with the space key.

Game flow

The player immediately jumps into the game. Pressing a button (help) will give a brief explanation. Pressing the close

Page 2: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

button will end the game. There is also an option to pause the game.

Aim and purpose

The aim of this unit is to ensure learners know about different types of computer game, understand the impact gaming has on society and are able to design, develop, test and document computer games.

Learning outcomes

On completion of this unit you should:

1. Be able to design and develop computer games2. Be able to test and document computer games.

Task 1 P4 ,P6, M2

Produce the computer game. Operation of the game will be evaluated by witness statement.

The game specification:

Minimum of four screens (start-up screen, narrative, the user guide and the game)

Have keyboard or mouse controls

Have levels of difficulty- ( increasing the speed)

Have a method of scoring

Provide a simple narrative to engage and retain the player

Be easy to maintain and extend

Have an opening menu that explains the controls

Have a suitable background (terrain)

The player should have an opportunity to pause or end the game

GRADING CRITERIA: P4 -Develop a computer game for a given specification

P6-Produce user documentation for a computer game

M2- Use appropriate selection and iteration methods for a computer game

EVIDENCE- Submit: P4-Code listing of your Game and Witness Statement

P6-On screen user guide

M2-Explanation and evidence of the use of sequence, selection, the levels of difficulties and iteration in your program

Task 2 P5, M3

Using the test plan template provided in Moodle, produce a test plan and a test log for your game. You need to consider the list below.

Test for form load with the menu

Is the shooter visible when the form loads?

Page 3: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Test object- aliens, bullets, player (shooter)

Can shooter move to the right when the right arrow key is pressed

Can shooter move to the left when the left arrow key is pressed

Does the shooter stop moving when key have been released?

Hit detection- is the bullet in line with the gun?

When a target has been hit- does the scoring show?

Can the game be paused?

Can you end the game?

Test for key press sound, background sound and when a target has been hit.

Run the test above and document any problems in a log.

Submit: Test Plan and Test Log

GRADING CRITERIA: P5- follow a test strategy to test and debug a computer gameM3- Use a variety of testing tools

EVIDENCE- Submit: Table with list and description of various game genres.

Task 3 P7,M1

Produce a technical documentation for the game (Use the templates provided in Moodle). This must include:

Data dictionary (the purpose, type and use of each variable)

Control methods (selection, iteration)

Action table

GRADING CRITERIA: P7-Produce technical documentation for a computer game.M1: Determine appropriate data types for a computer game and show how they are declared

EVIDENCE-Submit:

For P7

Data dictionary (complete the first three columns of the template)

Control methods

Action table.

For M1

Complete all columns of the template

Page 4: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Task 4 M4

You must get one person to test your game and collect feedback in order to suggest improvements. Evidence should include the user feedback (the template can be found in Moodle).

A short report that explains what improvements you could make to your game (you don't have to make the improvements) in response to the feedback you have got from your "game testers" (you must include their feedback in your report). Explain why each suggested improvement would actually improve the game.

GRADING CRITERIA: M4-suggest improvements to a computer game following user feedback.

EVIDENCE- Submit: a short report suggesting some improvements to the game

Task 5 D2

Using examples from your game design, Explain the benefits or advantages /limitations or disadvantages of:

Design : Storyboards (for the scenes and screen layout)

Program design : Data Dictionary

Develop : Use of comments (within the codes)

Coding : Syntax rules for the language, write small blocks of code(functions), code indentation

Data representation: declaration/ assigning variables/ using appropriate variable names

GRADING CRITERIA: D2- Explain how the structure and design of a game can assist in maintenance and capacity for extension.

EVIDENCE-Submit: Notes on how the structure and design of a game can assist in maintenance and expansion of your game.

FOR OFFICE USE ONLY

Date assignment brief IV’d/IQA’d prior to distribution

Name of IV / IQA

Name of Lead IV / IQA

Arts Media & EnterpriseFORMATIVE ASSIGNMENT FEEDBACK SHEET (FOR INTERIM SUBMISSIONSONLY) – PART 2 OF ASSIGNMENT BRIEF

ASSIGNMENT TITLE

Designing a Game, Create and Test and Document

UNIT NO 22

AWB QUAL TITLE

BTEC National UNIT NAME Developing Computer Games

ISSUE DATE INTERIM DUE DATE

SUMMATIVE DUE DATE

Page 5: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

ASSESSOR Oluyemisi Oduyeye

STUDENT NAME

TARGETTED GRADING CRITERIA

FOR PORTFOLIO USE ONLY

INTERIM / FORMATIVE FEEDBACK TO LEARNERPAGE/SECTION WHERE

EVIDENCE SEEN IN PORTFOLIO

Strengths:

Areas for development:

LEARNER FEEDBACK

Signed (Assessor) DateSigned (Learner) Date

Please note this form should only be given for interim / formative feedback not for the final /summative feedback particularly for new generation BTECs

Page 6: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Arts Media & EnterpriseSUMMATIVE ASSIGNMENT FEEDBACK SHEET – PART 2 OF ASSIGNMENT 2

ASSIGNMENT TITLE

Designing a Game, Create and Test and Document

UNIT NO 22

AWB QUAL TITLE

BTEC National UNIT NAME Developing Computer Games

ISSUE DATE 25/05/15 DUE DATE

26/06/15 SUBMITTED ON

26/06/15

ASSESSOR NAME

Oluyemisi Oduyeye

STUDENT NAME

GRADE

TARGETTED GRADING CRITERIA

CRITERIA MET

FOR PORTFOLIO USE

FINAL / SUMMATIVE FEEDBACK TO LEARNERY N

PAGE/SECTION WHERE

EVIDENCE SEEN IN PORTFOLIO

GC

GC

GC

LEARNER FEEDBACK

KEY: Y = Yes, N = No

Signed (Assessor) DateSigned (Learner) Date

Please note ALL grades given are provisional until internal verification processes by College staff are completed, and where awarding body sampling has been completed. Should there be a change to your grade you Assessor will inform you.

Date for Resubmission (approved by Lead IV/IQA) 1 resubmission ONLYResubmission Received DateNew Grade Awarded

Page 7: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

NB: Where work is resubmitted please complete a new feedback form and attached it to the original the feedback form for resubmission should indicate the learners final grade. Feedback sheets must be kept with all learners submitted work, and should be reviewed via internal quality assurance / internal verification

Witness statement

Learner name Freddie Sidaway

Qualification Creative Media Production (Games Development)

Unit number and title Unit 22 Developing Computer Games

Assignment Design and develop a computer game

Description of activity undertaken (please be as specific as possible)

Produce the computer game.

Assessment and grading criteria

Evidence Description Witnessed Date

Start screen The start screen has a nice background, the name of the game is clearly labelled and the button is clearly visible

Abdullah Muhammad

26/6/2015

Explanation of controls Controls are easy to learn, instructions are clearly stated and explained in the ‘UserGuide’ and ‘Instructions’

Abdullah Muhammad

26/6/2015

Mouse and keyboard control There is no mouse control in the actual game the keyboard controls are easy to learn and are smooth.

Abdullah Muhammad

26/6/2015

Accurate game play The gameplay is interesting the game slows down slightly when the spaceship fires, other than that it is smooth. Pressing ‘P’ or ‘p’ will pause the game but ‘E’ or ‘e’ will not exit the game although it is stated on the game form.

Abdullah Muhammad

26/6/2015

How the activity meets the requirements of the assessment and grading criteria, including how and where the activity took place

Witness name Abdullah Muhammad Job role Student

Witness signature A.M Date 26/6/2015

Page 8: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Assessor name

Assessor signature Date

Review Comments

1 Did you enjoy this game? Yes, the game was quite enjoyable.

2 If you had to use one word to describe the game, what would it be?

Diverse

3 Would you ever want to play this game again?

Yes, I would like to play again.

4 Did you have fun? Yes I had fun.

5 What part of the game was the most exciting or fun?

The story and the gameplay.

6 What would you change about the game?

The speed of the spaceship, also the aliens could be layout a bit further away from each other.

7 Any other comments? The game lagged a bit when the shot came out from the spaceship. The quit buttons on some of the menus were misleading as I thought they would quit the game completely rather than go to the menu.Exit ‘E’ doesn’t work in game

8 What can you say about the Sound effects?

The sound effects were accurate and worked well with the game.

9 Graphics – does the game have good graphics? why

Yes the game has good graphics. The pictures look good and the backgrounds of the menus look nice.

10 Levels of difficulty – is there an opportunity for different levels

Yes there are two levels of difficulty. The second level is quite a bit harder than the first.

11 What is your first impression of the game?

It looks serious and it was visually pleasing.

Suggestions for improvementChanging the text in the quit buttons from ‘Quit’ to ‘Menu’Move the spaceships so that they are not overlapping each otherFix the ‘E’ button to exit in the gameHow will I improve my game based on the suggestions aboveChanging the Text in the quit buttons from ‘Quit’ to ‘Menu’: Will do but will keep all that’ll make you quit the game ‘Quit’

Before:

Page 9: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

After:

Move the spaceships so that they are not overlapping each other: ether change the size of that alien, reduce the amount, expand the screen size or change the alien design all together to avoid this

Before:

After:

Fix the ‘E’ button to exit in the game: Changed the order of the end if statements in order to make it function correctlyBefore: End If If e.KeyChar = "e" Or e.KeyChar = "E" Then frmMenu.Show() Me.Close() 'This will allow you to exit the game while playing' End IfEnd If

After : End If End If If e.KeyChar = "e" Or e.KeyChar = "E" Then frmMenu.Show() Me.Close() 'This will allow you to exit the game while playing' End If

Page 10: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

This just sends you straight into the game.

This goes to the narrative which explains the story behind the game.

This link sends you to the instruction screen that’ll show you how to play the game (and the menu won’t disappear so you can swap back and forth between the two screens.

Another link to the user guide which doesn’t have any special features yet.

This will let you exit the game.

This is the main menu where all the links to the different screens (apart from the start screen) are stored.

These are your targets which you’ll have to shoot down to clear the level (They will get faster on each level).

This is where the actual game will take place.

The main bullet “Plasma” is fired using space and when touching an alien destroys it.

This is what you’re going to control and moves via the left and right arrow key.

These are just little reminders saying you can pause and end the game while playing.

This will display what level you’re on during the game.

This will display your score during the game being played.

Page 11: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

This is the first screen you see when you start up the game.

This link will take you to the home menu.

This is the instruction page.

These lines of text explain how to play the game.

This is the button that has caused the most trouble in my code because of its lack of wanting to work and go back to the home menu. So this has no real use

This can allow you to close the game from here.

Page 12: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Declarations Public Class frmQuanitne_level 'This is a very key part of the game, this is where all of the command names are defended' Dim ShootRight As Boolean Dim ShootLeft As Boolean Dim ShooterSpeed As Integer Dim TargetVelocity As Integer = 3 Dim PlasmaShotSpeed As Integer Dim AttackerSpeed As Integer Dim AttackerDrop As Integer Dim ARight(numofAliens) As Boolean Dim ALeft(numofAliens) As Boolean Dim AlienDown As Integer Dim Attacker(numofAliens) As PictureBox Const numofAliens As Integer = 10 Dim X As Integer Dim Paused As Boolean Dim Level As Integer Dim Score As Integer

Levels Private Sub Levels() If Level = 1 Then Level = 2 'This means that when the user clears the first level it then allows the second level to load'

lblLevel.Text = "Level:" & Level lblScore.Text = "Score: " & Score PlasmaShotSpeed += 3 AttackerSpeed = AttackerSpeed + 3 'This means that the speed of the aliens and the shot will increase on the next level' AttackerDrop = AttackerDrop + 3

'If Level = 2 Then Level = 3

'lblLevel.Text = "Level:" & Level 'Attacker = Attacker 'x 2

'This is a line of code for the 3rd level which hopefully will increase the number of aliens on screen'

This lets you go back into the main menu.

This is not operational however if it was it will allow the user to input new keys to better suit the particular user.

This is the setting/User guide page.

Page 13: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

End Sub

Continuous commands Private Sub TimerQuantineLevel_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerQuantineLevel.Tick ChangeDirection() 'These are sub commands for things that don't need a variable dimmed on them' BurstPlasma() MoveAttacker() CheckFinished() CheckHit() End Sub

Load level Private Sub Quantine_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load LoadSettings() 'These are loading titles that are used to LoadAttacker() frmMenu.Show()

lblScore.Text = "Score:" & AlienDown 'My.Computer.Audio.Play(My.Resources.) End Sub

Cannon Fire Private Sub BurstPlasma() If PlasmaShot.Visible = True Then PlasmaShot.Top -= PlasmaShotSpeed My.Computer.Audio.Play(My.Resources.gun_gunshot_01, AudioPlayMode.Background) End If

If PlasmaShot.Top + PlasmaShot.Height < Me.ClientRectangle.Top Then PlasmaShot.Visible = False ‘This means if the bullet reaches the top it’ll disappear from the screen’ End If End Sub

Key Presses Private Sub frmQuanitne_level_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown

If e.KeyValue = Keys.Right Then ShootRight = True ShootLeft = False End If ‘These 2 codes are used for controlling which way the cannon moves when a certain button is pressed’ If e.KeyValue = Keys.Left Then ShootLeft = True ShootRight = False End If If e.KeyValue = Keys.Space And PlasmaShot.Visible = False then PlasmaShot.Top = Shooter.Top PlasmaShot.Left = Shooter.Left + (Shooter.Width / 2) - (PlasmaShot.Width / 2) PlasmaShot.Visible = True PlasmaShot.Top -= PlasmaShotSpeed

End If

If PlasmaShot.Top + PlasmaShot.Height < Me.ClientRectangle.Top Then PlasmaShot.Visible = False End If End Sub Private Sub frmQuanitne_level_KeyUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp If e.KeyValue = Keys.Right Then

Page 14: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

ShootRight = False End If If e.KeyValue = Keys.Left Then ShootLeft = False End If End Sub Private Sub frmQuanitne_Level_Keypress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress If e.KeyChar = "P" Or e.KeyChar = "p" Then If Paused = True Then TimerQuantineLevel.Enabled = True Paused = False 'This lot of code controls the pause feature of the game while you’re playing the level' Else TimerQuantineLevel.Enabled = False Paused = True End If If e.KeyChar = "E" Or e.KeyChar = "e" Then If Paused = True Then Me.Hide() 'This will allow you to exit the game while playing' End If End If End If End Sub

Play Again Private Sub PlayAgain() 'This line of code is used to display a text box which can allow the user to restart the game if the aliens reach a certain point' Dim Result = MsgBox("play Again", MsgBoxStyle.YesNo) If Result = MsgBoxResult.Yes Then LoadSettings() Levels() ‘This means that the features loaded at the start of the game when you first played it will replay again when you say yes in the message box’ LoadAttacker() Else Me.Close() End If End Sub

Cannon Movements Private Sub ChangeDirection() If ShootRight = True And Shooter.Left + Shooter.Width < Me.ClientRectangle.Width Then Shooter.Left += TargetVelocity ‘This is to make sure that if the alien’s touch the end of the wall they go the opposite way to avoid them flying off screen’ End If If ShootLeft = True And Shooter.Left > Me.ClientRectangle.Left Then Shooter.Left -= TargetVelocity End If End Sub

Load Aliens Private Sub LoadAttacker() 'These load up the aliens for the level' Attacker(1) = Alien Attacker(2) = Alien1 Attacker(3) = Alien2 ‘each listed number alien is a different picture box on screen’ Attacker(4) = Alien3 Attacker(5) = Alien4 Attacker(6) = Alien5 Attacker(7) = Alien6 Attacker(8) = Alien7 Attacker(9) = Alien8

Page 15: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Attacker(10) = Alien9 For Me.X = 1 To numofAliens ARight(X) = True 'This tells where the aliens start and where they should start from' Attacker(X).Left = (-50 * X) - (X * 5) Attacker(X).Top = 0 Attacker(X).Visible = True Next End Sub

Main game level load Private Sub frmQuanitne_level_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load frmMenu.Show() LoadSettings() LoadAttacker()

AlienDown += 0 lblScore.Text = "Score of:" & AlienDown 'Works in a similar way to the level only this time increases when an alien is down'

End Sub

Loading game Private Sub LoadSettings() Paused = False PlasmaShotSpeed = 20 'The speed of both the cannon and the shot' ShooterSpeed = 6 lblScore.Text = "Score:" & AlienDown PlasmaShot.Visible = False AttackerSpeed = 4 'Speed of the alien and how far down the box it should drop' AttackerDrop = 50 ShootRight = False ShootLeft = False AlienDown = 0 TimerQuantineLevel.Enabled = True Level = 1 If Level = 1 Then lblLevel.Text = "Level: " & Level 'This is so that the level is displayed and changes when level 2 is reached'

PlasmaShotSpeed = 20 AttackerSpeed = 4 ‘The base speeds of the bullet and alien when the game starts’ AlienDown = 0

End Sub

Cheek hit and level cleared Private Sub CheckHit() 'This I had major troubles with due to the structure of the code however with help I was sort it out' For Me.X = 1 To numofAliens If (PlasmaShot.Top + PlasmaShot.Height >= Attacker(X).Top) And (PlasmaShot.Top <= Attacker(X).Top + Attacker(X).Height) And (PlasmaShot.Left + PlasmaShot.Width >= Attacker(X).Left) And (PlasmaShot.Left <= Attacker(X).Left + Attacker(X).Width) And PlasmaShot.Visible = True And Attacker(X).Visible = True Then Attacker(X).Visible = False PlasmaShot.Visible = False

Page 16: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

AlienDown += 1 lblScore.Text = "Score:" & AlienDown My.Computer.Audio.Play(My.Resources.explosion_02, AudioPlayMode.Background) End If Next If AlienDown = numofAliens Then TimerQuantineLevel.Enabled = False

MsgBox("you've saved us....for now") 'This is for when all the aliens are killed' PlasmaShot.Visible = False PlayAgain() My.Computer.Audio.Play(My.Resources.applause_8, AudioPlayMode.Background) 'This is an example of how music is able to be played End If End Sub

Alien Movements Private Sub MoveAttacker() 'This is a more technical version of the alien's movement patterns' For Me.X = 1 To numofAliens If ARight(X) = True Then Attacker(X).Left += AttackerSpeed Else Attacker(X).Left -= AttackerSpeed End If If Attacker(X).Left + Attacker(X).Width > Me.ClientRectangle.Width And ARight(X) = True Then ARight(X) = False ‘This means when the alien reaches the end of the rectangle it’ll stop going right and drop down by the amount of drop distance stated’ Attacker(X).Top += AttackerDrop End If If Attacker(X).Left < Me.ClientRectangle.Left And ARight(X) = False Then ARight(X) = True ‘Me.ClientRectangle is the screen in which the game is played’ Attacker(X).Top += AttackerDrop End If Next End Sub

Game Over Private Sub CheckFinished() For Me.X = 1 To numofAliens

If Alien.Top + Alien.Height >= Shooter.Top And Alien.Visible = True Then 'This is for when the aliens reach the bottom, a game over message will apper' TimerQuantineLevel.Enabled = False

Me.X = numofAliens My.Computer.Audio.Play(My.Resources.fail_trombone_02, AudioPlayMode.Background)

MsgBox("Emergency Emergency Emer..................") PlayAgain() End If Next If AlienDown = numofAliens Then TimerQuantineLevel.Enabled = False MsgBox("There gone") ‘This I had to include in to make the game over code work’ End If End SubEnd Class

Page 17: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

User Guide

To start the game first you need to open Microsoft Visual Basic 2010 Express and the game will either be available under Recent Projects .

Or you can open it from a folder within a memory card.

To start the game once it’s loaded you ether press F5 or click on “Start Debugging”.

Page 18: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

When you have started the game you’ll be taken straight into the opening screen of the game, press the “protect us” button to load up straight into the main menu of the game.

Once you have done you come to the main menu which has links to all but the opening page, to access one you have to just click on one of the links and it’ll take you straight into the selected page, or you can just press quit to exit the game.

If you clicked play then you go straight into the first level of your level which is where the fun is. You move you cannon by pressing the left and right arrow key and fire by pressing space.

Page 19: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

If you don’t know how to play the game then there is a instructions page you can access via the menu which you can enter via the “instruction” button (the menu button doesn’t work yet so don’t press it), however I fixed it by making so when you go here it doesn’t close the menu page.

When you have shot down all ten aliens you get a message box with an applause sound congratulating you on clearing the level.

When you have pressed ok to the message box you then get another one telling you would you like to play again, if you press yes it’ll go to level two, if you press no you exit the game.

Page 20: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Level 2 will be harder and faster but the controls will remain the same.

And when you’ve cleared level 2 you get the same two messages this time if you press yes to “play again” it’ll replay level 2 (as there is no level 3 yet).

However If even one alien lands on the planet you get a different message box and sound signalling you have failed, but you will get a play again message box after this to retry the game.

Page 21: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Levelling and scoring

lblLevel.Text = "Level:" & Level

There are 2 levels in this game (did have an idea for a 3rd however I didn’t come out very well so I decided that it was best to scarp the idea as I felt it wouldn’t improve the game that much). The levels will increase the speed of the aliens and the cannon making the action faster and harder to control. This is done by a section of code that adds a new number to the set speed present in the last level (AttackerSpeed += 3) which will rise up the alien speed by 3.

The scoring system here can go up to 10 per level which is how many aliens there are on screen, currently the score resets when you reach the 2nd level which I’ve been unable to fix, however it still serves a useful process of giving the user a guide as to where there are within the game and how close they are to completing the level.

Both the score and level use a text box but the number system is not included in the text as if they were it will not change, so I had to link for example Score with AlienDown meaning that when AlienDown goes up by 1 then the number next to score goes up by one.

Private Sub Levels() If Level = 1 Then Level = 2lblScore.Text = "Score: " & Score PlasmaShotSpeed += 3 AttackerSpeed = AttackerSpeed + 3 AttackerDrop = AttackerDrop + 3

This is the line of code that enables the game to increase its difficulty by making the aliens move faster mostly. It also shows how the score system works in game.

Page 22: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Updated action list

List Duration Developer Date done

Skills Required

Resources

Create storyboard (scenes)

1 Day Freddie Sidaway

28/02/15 Drawing and design

Microsoft word/paper

Create Original action list

30 minutes Freddie Sidaway

29/02/15 Writing Microsoft word/paper

Create screen layout

3 days Freddie Sidaway

02/03/15 Drawing and Design

Microsoft word/paper

Create Pseudo-code

1 day Freddie Sidaway

02/03/15 Writing Microsoft word/paper

Create game objects

12 days Freddie Sidaway

14/03/15 Drawing Paper/paint/Photoshop

Create game 3 Months FreddieSidaway

18/06/15 Programming Microsoft windows visual Basic 2010

Test game 1 hour Freddie Sidaway

18/06/15 Writing Microsoft windows visual Basic 2010

Gain User feedback

3 days Freddie Sidaway

25/06/15 Writing Microsoft word

Make improvements

3 days Freddie Sidaway

25/06/15 Writing Microsoft windows visual Basic 2010

Data Dictionary

Variable name Data Type Declaration Used for

ShootRight Boolean Dim ShootRight As Boolean

Moves the shooter Right

ShootLeft Boolean Dim ShootLeft As Boolean

Moves the shooter Left

ShooterSpeed Integer Dim ShooterSpeed As Integer

To alter and tell how fast the cannon can travel across the screen

TargetVelocity Integer Dim TargetVelocity As Integer = 3

How fast the aliens can move

PlasmaShotSpeed Integer Dim PlasmaShotSpeed How fast the bullet will

Page 23: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

As Integer go, during the game

AttackerSpeed Integer Dim AttackerSpeed As Integer

How fast the aliens go on screen

AttackerDrop Integer Dim AttackerDrop As Integer

How far the alien will drop once they reach the sides of the level

ARight(numofAliens) Boolean Dim ARight(numofAliens) As Boolean

Making all the aliens move right on screen

ALeft(numofAliens) Boolean Dim ALeft(numofAliens) As Boolean

Making all the aliens move left on screen

AlienDown Integer Dim AlienDown As Integer

For scoring when an alien is destroyed

numofAliens Integer Const numofAliens As Integer = 10

To link certain lines of code to affect all the aliens

X Integer Dim X As Integer A variable for specific aliens

Paused Boolean Dim Paused As Boolean

To enable the game to freeze (not close) and unfreeze at will

Level Integer Dim Level As Integer Text box to display how far in the game the player is

Score Integer Dim Score As Integer Text box to display the amount of points scored by the player

Attacker(numofAliens) PictureBox Dim Attacker(numofAliens) As PictureBox

Declaration for all the aliens on screen to help link them all together

(No idea what happened here)

Page 24: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Test Plan

System Name Game Tested By: Freddie Sidaway

Quarantine form Quarantine Date: 26/06/2015

Test No.

Test Description

Input Expected Result

Actual Result

Error Message

Corrective Action Taken

1 Shooter movement

Press the right/left arrow Key

Shooter moves left or right

Passed none n/a

2 Alien movement

None, let the aliens fly around

The aliens should be able to move on their own

Passed none n/a

3 Music Activate a certain function (i.e fire the gun)

Music should be able to play when a certain requirement is met

Passed none n/a

4 Pausing Press p The game should be paused

Passed none n/a

5 Fire cannon Press space A purple bullet like object should come out from the cannon

Passed none n/a

6 Score read Kill an alien When an Passed none n/a

Page 25: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

alien is hit the score should go up by one

7 Level increase

Clear level 1 It should come up with a message box saying you’ve cleared the level

Passed none n/a

8 Alien speed up

Start level 2 The aliens have to be faster in level 2 then level 1

Passed none n/a

9 Button links test

Click on All the menu buttons must be able

All but one passed

none I’ve had to take out the me.Hide() part of the faulty code to make it work better (this means that the instruction page will not close the menu and will instead open up as a new window

10 Msg box timing

Meet a command to make a message box appear

Message boxes have to appear at the correct time

Passed none n/a

11 Music timing Meet a certain condition

The audio tracks must activate when during the correct timing

Opening; passedCannon; failExplosion: passedLevel Clear: PassedGame Over: Passed

none The cannon seems to only go off ether after an alien is destroyed (so it gets mixed in with the explosion sound) or when it misses and goes off when it disappears and I’ve tried to change the order in which the sound code is placed however it did so to little availMy.Computer.Audio.Play(My.Resources.gun_gunshot_01, AudioPlayMode.Background)

12 QA testing Try to make the game

Cheek to make sure

Passed none n/a

Page 26: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

glitch out the whole game runs smoothly

13 Start-up menu test

Open up the game

The game should start at the main menu

Fail noneI had to change the ‘startup from’ in my game’s application form from frmGame to frmOpen so that the game starts from the open menu

14 Will the game be able to end

Press e The game should be able to end when the e key is pressed during a game

Fail none

The End if’s in my keypress section was mixed up so there should have been two end ifs at pause and one at the bottom

15 Increase the number of aliens

Reach level 3

The number of aliens should go up by a minimum of 5

Fail none I had to remove it cause I found it unnecessary in terms of actually improving the game also it glitches out the game making the level rise up to level 3 after level 1

'If Level = 2 Then Level = 3

'lblLevel.Text = "Level:" & Level 'Attacker = Attacker 'x 2

16 Game over sequence

Let an alien land

The game over music and message box should appear on screen

Fail none Added a small section to the end of the game over private sub to make it work as before even if all the aliens got to the end the game wouldn’t end:

Next

If AlienDown =

Page 27: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

numofAliens Then TimerQuantineLevel.Enabled = False MsgBox("There gone")

17 Audio Volume

Play the audio tracks in the game

Make sure that the sounds are not too loud or too quiet

Opening: passed (but just)Cannon: passedExplosion: passedClapping: passedGame Over: passed

none n/a

18 Score counting

Kill the aliens in level 2

Insure that when the game goes to level 2 that the score is ether carried over

Fail none I’ve found a fault in the code that meant when the game went to level 2 it didn’t carry over and instead displayed the score as 100, so all I had to do to fix was remove the 10 at the end of the socre

Before: lblScore.Text = "Score: 10" & Score

After: lblScore.Text = "Score: " & Score

19 Smoothness test

Play out the game

Make sure that all the controls and systems within the game work perfectly

Passed, but with a bit of a slowdown in speed occasionally

none I had to remove the background image of the main game level and the quality of the gameplay improved massively

20 Sight ability Play the game under different resolutions and screen sizes

Insure that the game is still able to function regardless of the size and/or resolution of the screen

passed none n/a

Page 28: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

(Or here)

Page 29: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

Control Methods

Selection- evidence Used for

Iteration - evidence Used for

Private Sub frmQuanitne_Level_Keypress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles MyBase.KeyPress If e.KeyChar = "P" Or e.KeyChar = "p" Then If Paused = True Then TimerQuantineLevel.Enabled = True Paused = False 'This lot of code controls the pause feature of the game while your playing the level' Else TimerQuantineLevel.Enabled = False Paused = True End If If e.KeyChar = "E" Or e.KeyChar = "e" Then If Paused = True Then Me.Hide() 'This will allow you to exit the game while playing' End If End If End If End Sub

This line of code is mostly to ensure that when a key feature is done (like the pause feature) that the game knows what features to continue or end when executed.

Private Sub LoadAttacker() 'These load up the aliens for the level' Attacker(1) = Alien Attacker(2) = Alien1 Attacker(3) = Alien2 Attacker(4) = Alien3 Attacker(5) = Alien4 Attacker(6) = Alien5 Attacker(7) = Alien6 Attacker(8) = Alien7 Attacker(9) = Alien8 Attacker(10) = Alien9 For Me.X = 1 To numofAliens ARight(X) = True 'This tells where the aliens start and where they should go' Attacker(X).Left = (-50 * X) - (X * 5) Attacker(X).Top = 0 Attacker(X).Visible = True Next End Sub

These load up the aliens at the very start of the game once the level is loaded and it tells the system where to spawn the aliens and where they should move first.

Private Sub PlayAgain() 'This line of code is used to display a text box which can allow the user to restart the game if the aliens reach a

This will allow the user to play the

Private Sub CheckHit() 'This i had major troubles with due to the way the code was laid out making it hard to read' For Me.X = 1 To

This is to ensure that when my bullet or

Page 30: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

certain point' Dim Result = MsgBox("play Again", MsgBoxStyle.YesNo) If Result = MsgBoxResult.Yes Then LoadSettings() Levels() LoadAttacker() Else Me.Close() End If End Sub

game again if they ether fail the game or they clear the first level and want to move on to the second level.

numofAliens If (PlasmaShot.Top + PlasmaShot.Height >= Attacker(X).Top) And (PlasmaShot.Top <= Attacker(X).Top + Attacker(X).Height) And (PlasmaShot.Left + PlasmaShot.Width >= Attacker(X).Left) And (PlasmaShot.Left <= Attacker(X).Left + Attacker(X).Width) And PlasmaShot.Visible = True And Attacker(X).Visible = True Then Attacker(X).Visible = False PlasmaShot.Visible = False AlienDown += 1 lblScore.Text = "Score:" & AlienDown My.Computer.Audio.Play(My.Resources.explosion_02, AudioPlayMode.Background) End If Next If AlienDown = numofAliens Then TimerQuantineLevel.Enabled = False

MsgBox("you've saved us....for now") 'This is for when all the aliens are killed' PlasmaShot.Visible = False PlayAgain() My.Computer.Audio.Play(My.Resources.applause_8, AudioPlayMode.Background) 'This is an example of how music is able to be played End If End Sub

Plasma hits an alien it then disappears and the score goes up by one. It even has a message box and audio feature that’ll play when all the aliens are defeated on screen.

Private Sub ChangeDirection() If ShootRight = True And Shooter.Left + Shooter.Width < Me.ClientRectangle.Width Then Shooter.Left += TargetVelocity End If If ShootLeft = True And Shooter.Left > Me.ClientRectangle.Left Then Shooter.Left -= TargetVelocity End If

This private sub is used to change the direction of the cannon and like with the

Private Sub MoveAttacker() 'This is a more technical version of the alien's movement patterns' For Me.X = 1 To numofAliens If ARight(X) = True Then Attacker(X).Left += AttackerSpeed Else Attacker(X).Left -= AttackerSpeed End If

This code is making sure that the aliens don’t fly off the screen while the game is playing. This makes sure that when they hit the

Page 31: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

End Sub move alien code stops it going off screen.

If Attacker(X).Left + Attacker(X).Width > Me.ClientRectangle.Width And ARight(X) = True Then ARight(X) = False Attacker(X).Top += AttackerDrop End If If Attacker(X).Left < Me.ClientRectangle.Left And ARight(X) = False Then ARight(X) = True Attacker(X).Top += AttackerDrop End If Next End Sub

end of the ‘ClientRectangle’ which is where the game is played in that they change direction to go the other way.

Private Sub frmQuanitne_level_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown

If e.KeyValue = Keys.Right Then ShootRight = True ShootLeft = False End If If e.KeyValue = Keys.Left Then ShootLeft = True ShootRight = False End If If e.KeyValue = Keys.Space And PlasmaShot.Visible = False then PlasmaShot.Top = Shooter.Top PlasmaShot.Left = Shooter.Left + (Shooter.Width / 2) - (PlasmaShot.Width / 2) PlasmaShot.Visible = True PlasmaShot.Top -= PlasmaShotSpeed

End If

If PlasmaShot.Top + PlasmaShot.Height < Me.ClientRectangle.Top Then PlasmaShot.Visible = False End If End Sub

This basically tells the shooter where to go when a key button is pressed and for the main bullet how big it’ll be when it’ll disappear and where to fire it again from when it does disappear again.

Private Sub CheckFinished() For Me.X = 1 To numofAliens

If Alien.Top + Alien.Height >= Shooter.Top And Alien.Visible = True Then 'This is for when the aliens reach the bottom, a game over message will apper' TimerQuantineLevel.Enabled = False

Me.X = numofAliens My.Computer.Audio.Play(My.Resources.fail_trombone_02, AudioPlayMode.Background)

MsgBox("Emergancy Emergancy Emer..................") PlayAgain() End If Next If AlienDown = numofAliens Then TimerQuantineLevel.Enabled = False MsgBox("There gone") End If End SubEnd Class

This is a game over sequence for when the aliens reach a certain point of the screen (just before the bottom of the game screen).

Private Sub BurstPlasma() If PlasmaShot.Visible = True Then PlasmaShot.Top -= PlasmaShotSpeed My.Computer.Audio.Play(My.Resources.gun_gunshot_01, AudioPlayMode.Background)

This is to tell the plasma bullet where to go, what noise will it make

Private Sub frmQuanitne_level_KeyUp(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyUp If e.KeyValue = Keys.Right Then ShootRight = False

This is to ensure that the shooter doesn’t fly off in a single direction after the

Page 32: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games

End If

If PlasmaShot.Top + PlasmaShot.Height < Me.ClientRectangle.Top Then PlasmaShot.Visible = False End If End Sub

when fired and when to disappear off screen.

End If If e.KeyValue = Keys.Left Then ShootLeft = False End If End Sub

button is pressed.

Private Sub Quantine_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load LoadSettings() 'These are loading titles that are used to Start up the level’ LoadAttacker() frmMenu.Show()

lblScore.Text = "Score:" & AlienDown End Sub

These features will be loaded instantly once the game level starts.

Private Sub TimerQuantineLevel_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TimerQuantineLevel.Tick ChangeDirection() 'These are sub commands for things that don't need a veriable dimmed on them' BurstPlasma() MoveAttacker() CheckFinished() CheckHit() End Sub

These are the features that will continuity be in effect when the game level is being played.

Private Sub Levels() If Level = 1 Then Level = 2 'This means that when the user clears the first level it then allows the second level to load'

lblLevel.Text = "Level:" & Level lblScore.Text = "Score: " & Score PlasmaShotSpeed += 3 AttackerSpeed = AttackerSpeed + 3 'This means that the speed of the aliens and the shot will increase on the next level' AttackerDrop = AttackerDrop + 3

'If Level = 2 Then Level = 3

'lblLevel.Text = "Level:" & Level 'lblScore.Text = "Score: " & Score 'AttackerSpeed = AttackerSpeed + 3 'AttackerDrop = AttackerDrop + 3 End Sub

This is to create new levels by increasing the speed of the aliens and the cannons speed once all the aliens on the screen have been destroyed and the user has said yes to play again.

Page 33: Web viewArts Media & Enterprise; CROSS COLLEGE ASSIGNMENT BRIEF –PART 1 OF ASSIGNMENT 2. Course . Creative Media Production (Games