Implement asteroids that split into smaller asteroids

Assignment Help C/C++ Programming
Reference no: EM132962294

IN2026 Games Technology - City University of London

Coursework

The aim of this coursework is to extend the Asteroids game you worked on in the lab sessions to include new features. The source code for you to begin working with is available on Moodle. You should be familiar with much of this code from the labs.

This coursework has been split into three parts. Each part is worth the same number of marks, although the difficulty of the task increases. For each part, you will be expected to implement one of the features described. There is nothing to stop you implementing both features but you will only get marks for the first one of these (as presented in your documentation). You should begin by spending some time designing the features you want to add. Your coursework submission should include a design document for each feature you choose to implement as well as the code itself. It is important that you document your approach to implementing a new feature. Marks will be awarded for clear explanation of how you would implement a feature even if the feature is incomplete. An implementation on its own, no matter how great, will not be awarded full marks without a clear explanation of how it was implemented.

Part I
Implement either:
a) A start screen, or
b) Asteroids that split into smaller asteroids when hit

Hints
To implement a start screen you will need to look at how the Asteroids class starts a game session and add some additional code to display a message and wait for a key to be pressed. Once a key has been pressed the spaceship can be created.

To implement asteroids that split into smaller asteroids when they are hit you will need to extend the current Asteroid class to add new asteroids when it explodes.

Part II
Implement either:
a) A high score table, or
b) A bonus/power-up system

Hints
The simplest possible implementation would display the high scores for a single session (this would not require the player to input their name). A more sophisticated implementation would save and load high scores from a text file (and would require players to input their name).
To implement bonuses and/or power-ups you will need to implement new subclasses of GameObject that, when they collide with a Spaceship, alter the way the Spaceship behaves in some way. You might want to implement a new type of listener that would allow the game to change its display. Types of bonuses and power-ups might include: extra lives, bullet upgrades, ship upgrades, shields, etc.

Part III
Implement either:
a) A demo mode, or
b) An alien spaceship

Hints
A demo mode should be designed to run while a start screen or high score table is being displayed. The demo mode should display a game being "played" by a computer controller. The simplest possible demo mode would control the spaceship using a random controller. A more complete implementation would use navigation and targeting algorithms to control the spaceship. The computer player doesn't have to be great at playing the game. If you try to make the behaviours of the computer player believable, don't forget to write an explanation of how you've tried to do it.

An alien spaceship is a natural extension to the bonuses/power-ups task in Part II. To implement an alien spaceship, you will need to implement a computer control system for the spaceship. Your alien spaceship should be able to navigate itself across the game world, try to avoid the player's bullets and fire at the player's spaceship. As with the demo mode, you don't have to make the control of the alien spaceship particularly intelligent, but you might want to try to make it believable. To make the implementation a bit easier you can make the alien spaceship invulnerable to collisions with asteroids.

Attachment:- Games Technology.rar

Reference no: EM132962294

Questions Cloud

Behaviour between migrant workers and indigenous workers : For this task you are required to critically examine the safety perceptions, unsafe behaviour between migrant workers and indigenous workers.
Developing a performance evaluation system : Name and describe extensively three (3) best practices for developing a performance evaluation system
Should gig economy workers unionize : Should gig economy workers unionize? How would this work from a practical perspective, including both organizing and bargaining? How would this work from a lega
Underrepresented in staffon workforce : Do you think that women are underrepresented in Staffon's workforce?
Implement asteroids that split into smaller asteroids : Implement asteroids that split into smaller asteroids when they are hit you will need to extend the current Asteroid class to add new asteroids when it explodes
Describe mood in heitor villa-lobos bachianas brasileiras : 1) Describe the mood in Heitor Villa-Lobos Bachianas Brasileiras.
Indco mineral resources division requirement : What do you think of Indco mineral resources division requirement.
Discussion of the finnish parliament article : In the discussion of the Finnish Parliament article, what differences in politics do you see between Finland and the U.S.A?
What is rapid instructional design : -Do you think employers will continue to invest in education and training programs for their employees? Explain your position.

Reviews

Write a Review

C/C++ Programming Questions & Answers

  Create program that uses functions and reference parameters

Create program that uses functions and reference parameters, and asks user for the outside temperature.

  Write a program using vectors and iterators

Write a program using vectors and iterators that allows a user to maintain a personal list of DVD titles

  Write the code required to analyse and display the data

Calculate and store the average for each row and column. Determine and store the values for the Average Map.

  Write a webservices application

Write a webservices application that does a simple four function calculator

  Iimplement a client-server of the game

Iimplement a client-server version of the rock-paper-scissors-lizard-Spock game.

  Model-view-controller

Explain Model-View-Controller paradigm

  Design a nested program

How many levels of nesting are there in this design?

  Convert celsius temperatures to fahrenheit temperatures

Write a C++ program that converts Celsius Temperatures to Fahrenheit Temperatures.

  Evaluate and output the value in the given base

Write C program that will input two values from the user that are a Value and a Base with which you will evaluate and output the Value in the given Base.

  Design a base class shape with virtual functions

Design a base class shape with virtual functions

  Implementation of classes

Implementation of classes Chart and BarChart. Class barChart chould display a simple textual representation of the data

  Technical paper: memory management

Technical Paper: Memory Management, The intent of this paper is to provide you with an in depth knowledge of how memory is used in executing, your programs and its critical support for applications.

Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd