1. Homepage
  2. Coding
  3. ECE 4122/6122 Advanced Programming Techniques - Lab 1: Retro Centipede Arcade Game

ECE 4122/6122 Advanced Programming Techniques - Lab 1: Retro Centipede Arcade Game

Get in Touch with Our Experts
GaTechECE4122ECE6122Advanced Programming TechniquesRetro Centipede Arcade GameC++

ECE 4122/6122 Lab 1: Retro Centipede Arcade Game Assignment Writing Service

(100 pts)
Category: Class creation and 2D Graphics with SFML Assignment Writing Service

Due: Wednesday September 25th, 2024 by 11:59 PM Assignment Writing Service

Objective:
To understand and apply the principles of 2D graphics and class creation in C++. Description: Assignment Writing Service

Create a simple version of the classic arcade game called Centipede. An online version of the game can be found at (https://www.mysteinbach.ca/game- zone/2153/atari-centipede/). The goal of the assignment is to try to reproduce the game play present on the listed web site. You only need to support the first level and the game ends when either all the centipede body elements are destroyed or the player runs out of lives. The game screen is made up of three section (1) the top information area, (2) the main game area and (3) the bottom mushroom free area, as seen below. The game score is shown in the middle of the top information area and the number of remaining live is show by the number of starship icons. The centipede starts in the lower right part of the top information band. The centipede is made up of 11 body sections and one head section. Reproduce the action of the centipede as shown in the game on the website. You only need to support the spider in your version Assignment Writing Service

Game specifics: Assignment Writing Service

1. Create an ECE_Centipede class derived from the SFML::Sprite.
a. Theclassisresponsibleforcalculatingthelocationofallthesegmentsofthe
Assignment Writing Service

centipede and which segments have broken apart into new centipedes with its own Assignment Writing Service

head.
b. The class is also responsible for detecting collisions with other objects and taking
Assignment Writing Service

the appropriate action. Assignment Writing Service

  1. Use the random number generator (std::uniform_int_distribution) to randomly locate 30 Assignment Writing Service

    mushrooms in the main game play area. Use a std::list to maintain the state and location Assignment Writing Service

    of the mushrooms. Feel free to use either a class or struct to hold the information. Assignment Writing Service

  2. Create an ECE_LaserBlast class derived from the SFML::Sprite that calculates the Assignment Writing Service

    current location of the laser blast and detecting collisions with objects and taking the appropriate action. Make sure to allow for the movement of multiple laser blasts by using a std::list. Assignment Writing Service

  3. Each time a mushroom is hit by the laser blast change the image to the ones provided. As the mushroom is hit the lower part disappears until it is hit twice and is removed from the game. Assignment Writing Service

  4. Use the left/right/up/down arrow keys to move the spaceship and use the space key to fire a laser blast. Assignment Writing Service

  5. Keep track of the score and the number or remaining lives and display it at the top of the screen. Assignment Writing Service

  6. When the game is over just go back to the Start screen. Assignment Writing Service

Turn-In Instructions Assignment Writing Service

Create your assignment in a folder called Lab1 at the same level as the Chapterxx folders in the “Beginning- Cpp-Game-Programming-Second-Edition”. Inside your Lab1 folder create a CMakelists.txt file that will be used to build your assignment for testing. Inside your Lab1 folder create a code folder to hold any *.cpp and *.h files you create to complete your assignment. Also, inside your Lab1 folder create a graphics folder to hold any graphics needed by your game. Assignment Writing Service

When you are finished zip up your Lab1 folder in to a zip file called Lab1.zip and upload this zip file on the assignment section of Canvas. Assignment Writing Service

Grading Rubric: Assignment Writing Service

  1. (10 pts) Main start screen is shown at startup and pressing the enter key starts the game. Assignment Writing Service

  2. (20 pts) The 30 mushrooms are randomly placed in the main game area. Assignment Writing Service

  3. (15 pts) The starship starts at the center of the bottom of the game and the starship is moved around by pressing the left/right/up/down keys. Assignment Writing Service

  4. (10 pts) Pressing the space key fires laser blasts. Multiple laser blasts need to be supported and collisions need to be correctly handled. Assignment Writing Service

  5. (10 pts) The spider moves randomly around the main game area. When a spider collides with a mushroom, the mushroom is destroyed. When the spider collides with the starship, the starship moves back to the starting location and a life is used up. Assignment Writing Service

  6. (20 pts) The centipede moves correctly through the mushrooms and a segment is destroyed when hit by a laser blast and is divided, if hit in the middle creating a new smaller centipede. Assignment Writing Service

  7. (15 pts) The game play is fun with the individual components moving at reasonable speeds and collision correctly detected. Assignment Writing Service

AUTOMATIC GRADING POINT DEDUCTIONS PER PROBLEM: Assignment Writing Service

Element Assignment Writing Service

Does Not Compile Assignment Writing Service

Does Not Match Output Assignment Writing Service

Clear Self-Documenting Coding Styles Assignment Writing Service

LATE POLICY Assignment Writing Service

Late Deduction Function Assignment Writing Service

Percentage Deduction Assignment Writing Service

40%
Up to 90%
Assignment Writing Service

Details Assignment Writing Service

Code does not compile on PACE-ICE!
The code compiles but does not produce correct outputs.
Assignment Writing Service

score – 0.5 * H Assignment Writing Service

H = number of hours (ceiling function) passed deadline Assignment Writing Service

This can include incorrect indentation, using unclear variable names, unclear/missing comments, or compiling with warnings. (See Appendix A) Assignment Writing Service

Percentage Deduction Assignment Writing Service

Appendix A: Coding Standards Assignment Writing Service

When using if/for/while statements, make sure you indent 4 spaces for the content inside those. Also make sure that you use spaces to make the code more readable.
For example:
Assignment Writing Service

for (int i; i < 10; i++)

{ Assignment Writing Service

j = j + i; } Assignment Writing Service

If you have nested statements, you should use multiple indentions. Each { should be on its own line (like the for loop) If you have else or else if statements after your if statement, they should be on their own line. Assignment Writing Service

for (int i; i < 10; i++)

{
if (i < 5)
Assignment Writing Service

{
counter++;
Assignment Writing Service

k -= i; } Assignment Writing Service

else Assignment Writing Service

{ Assignment Writing Service

k +=1; } Assignment Writing Service

j += i; } Assignment Writing Service

Camel Case: Assignment Writing Service

This naming convention has the first letter of the variable be lower case, and the first letter in each new word be capitalized (e.g. firstSecondThird). Assignment Writing Service

This applies for functions and member functions as well!
The main exception to this is class names, where the first letter should also be capitalized.
Assignment Writing Service

Variable and Function Names: Assignment Writing Service

Your variable and function names should be clear about what that variable or function represents. Do not use one letter variables, but use abbreviations when it is appropriate (for example: “imag" instead of “imaginary”). The more descriptive your variable and function names are, the more readable your code will be. This is the idea behind self-documenting code. Assignment Writing Service

Assignment Writing Service

File Headers: Assignment Writing Service

Every file should have the following header at the top Assignment Writing Service

/*
Author: your name
Class: ECE4122 or ECE6122 (section) Last Date Modified: date
Assignment Writing Service

Description:
What is the purpose of this file? */
Code Comments: Assignment Writing Service

  1. Every function must have a comment section describing the purpose of the function, the input and output parameters, the return value (if any). Assignment Writing Service

  2. Every class must have a comment section to describe the purpose of the class. Assignment Writing Service

  3. Comments need to be placed inside of functions/loops to assist in the understanding of the flow of Assignment Writing Service

    the code. Assignment Writing Service

联系辅导老师!
私密保护
WeChat 微信
GaTech代写,ECE4122代写,ECE6122代写,Advanced Programming Techniques代写,Retro Centipede Arcade Game代写,C++代写,GaTech代编,ECE4122代编,ECE6122代编,Advanced Programming Techniques代编,Retro Centipede Arcade Game代编,C++代编,GaTech代考,ECE4122代考,ECE6122代考,Advanced Programming Techniques代考,Retro Centipede Arcade Game代考,C++代考,GaTech代做,ECE4122代做,ECE6122代做,Advanced Programming Techniques代做,Retro Centipede Arcade Game代做,C++代做,GaTechhelp,ECE4122help,ECE6122help,Advanced Programming Techniqueshelp,Retro Centipede Arcade Gamehelp,C++help,GaTech作业代写,ECE4122作业代写,ECE6122作业代写,Advanced Programming Techniques作业代写,Retro Centipede Arcade Game作业代写,C++作业代写,GaTech编程代写,ECE4122编程代写,ECE6122编程代写,Advanced Programming Techniques编程代写,Retro Centipede Arcade Game编程代写,C++编程代写,GaTech作业答案,ECE4122作业答案,ECE6122作业答案,Advanced Programming Techniques作业答案,Retro Centipede Arcade Game作业答案,C++作业答案,