Future Space Frogs | My Assignment Tutor

Future Space Frogs CO1301 Games Concepts Portfolio AssessmentCO1301 Games Concepts – Portfolio AssessmentGame 2: Future Space FrogsYou must follow the specification to implement a simple 3D game about saving the world from “radiationemitting future space” frogs by hitting them with a car controlled by the keyboard. You are expected tocomplete this in your own time outside of scheduled labs. But you should ask your lab tutor for advice ifyou are stuck.Do not diverge from this specification. If you do, then you will lose marks. Ask for clarification if you areunsure!Your submission should include the .cpp file of your project, the media folder containing all your models,and a word document containing you state transition diagram if you are aiming for marks higher than 60%.In addition to the above, your formative feedback point submission should include a video (not more than 3minutes) showing you game in execution.The associated set of model files for this game can be found on Blackboard inside “Game2_Models.zip”.The models include a frog (frog.x), an island (island.x), a cube portal (portal.x), a car (rover.x), a sky box(skybox.x) and water surface (surface.x).Game SpecificationYou should aim to implement the features described below in order. To be eligible for a mark within anyclassification, you must have attempted all the features for all the previous classifications. Treat the gradeboundaries as milestones in a real game development project.Basic Scene LayoutTo achieve any classification, you must first implement the basic scene layout and then meet therequirements of the classification. The basic scene layout is specified below:• Set up a skybox using the skybox.x model provided at position (0, -960, 0).• Using the surface.x model provided, create a “floor” of water at position (0, -5, 0).• Using the island.x model, create an island as position (0, -6, 0).• Create a manual camera at position(0, 120, -100) and rotate it about the X axis by 50 degrees, suchthat it is suspended in the air and looking downwards towards the island.• Using the rover.x mesh, create a car model in position ( 0, 0, -50 ), this represents the player.• Using the frog.x mesh, create two stationary enemies frog1 and frog2:o frog1 should be rotated 90 units along its Y axis and positioned at (5, 0, 0)o frog2 should be rotated -90 units along its Y axis and positioned at (-5, 0, 0)• The scene should appear exactly like the picture below:Future Space Frogs CO1301 Games Concepts Portfolio AssessmentFigure 1 Screenshot of the basic scene layoutFuture Space Frogs CO1301 Games Concepts Portfolio AssessmentPass Mark/Third Classification (40% +) Milestone 1• The code you submit must compile without errors.• Set up the scene exactly as described above.• The game should have a state, which is one of playing, paused or over.• The game should start in the playing state. In the playing state the player can control the car asfollows:o ‘W’ moves the car forwardo ‘S’ moves the car backwardso ‘D’ rotates the car clockwiseo ‘A’ rotates the car anti-clockwise• The speed at which the car moves must be defined in your code by a constant float namedkGameSpeed.• The P key causes the game to enter the paused state. In the Paused state:o Nothing should moveo The P key causes the game to transition to the playing state• In the Over state:o Nothing should move – the game is over.• In all states, the player should be able to press the Escape key to quit the game.• You should display the current score in the corner of the screen.• When the game starts the score is 0.• Implement sphere-box collision detection between the car and the frogs.o An efficient program will only use the X and Z dimensions, to effectively implement circleto-rectangle collision detection.o If the car collides with a frog, the frog and should flip over (lie on its back) and the player’sscore should increase by 10.o Subsequent collisions should not result in any action.o If the car hits all two frogs, the player wins and an appropriate message should bedisplayed.• If a player drives off the island, the player has lost and the game is over.Future Space Frogs CO1301 Games Concepts Portfolio AssessmentLower second classification (50% +) Milestone 2• Using the portal.x model provided, create a cube portal at position (0, 0, 0).• You may want to scale it up a bit to properly house all frogs using portal->Scale(1.2);• Add two frog models, frog3 and frog 4 so that they are initially positioned as followso frog1: rotated 90 units along its Y axis and positioned at (5, 0, 0)o frog2: rotated -90 units along its Y axis and positioned at (-5, 0, 0)o frog3: rotated 180 units along its Y axis and positioned at ( 0, 0, -5)o frog4: positioned at ( 0, 0, 5)• Each frog should now be in one of four states: waiting, moving, dead or escaped.• When a frog is waiting, it should be fixed and not moving.• When a frog is moving, it should be moving along either the world X or Z axis (depending on thedirection it is facing) at half the speed of the car. Therefore, it should move forward in a straightline towards the water.• When the game starts frog1 should be in moving state while the other three frogs should be inwaiting state• If the car collides with a frog, the frog transitions to its dead state, and should flip over, and theplayer’s score should increase by 10.• If frog1 enters its dead state, frog2 should enter moving state, if frog two enters its dead state,frog3 enters moving state, if frog3 enters dead state frog4 enters moving state and if all frogs aredead the player has won.• If a frog gets into the water, it enters its escape state.• Once a frog escapes, the player has lost and the game is over.• Appropriate win or loss messages should be shown on the screen.• Implement collision detection between the car and the cube to prevent the player from drivingthrough it.• Nothing should be able to move if the game is in any state other than ’playing’Future Space Frogs CO1301 Games Concepts Portfolio AssessmentUpper second classification (60% +) Milestone 3 – break-even point achieved• Implement a chase camera view in which the camera is positioned above and behind the car.• Use the “2” key to switch to this camera angle.• Implement a first-person camera view. Use the “3” key to switch to this camera angle.• Use the “1” key to switch to the default fixed camera.• You must implement the collision detection for the enemies using arrays and functions.• The water should have a state variable to store whether it is safe or poisoned.• If a frog escapes into the water, it becomes poisoned and its skin should change to “poisoned.png”.• Create state transition diagrams to show the behaviour of your game.Future Space Frogs CO1301 Games Concepts Portfolio AssessmentFirst Classification (70% +) Milestone 4 – bonus payments received• A frog in moving state should slide 10 units in the appropriate direction (at the same speed asbefore), wait for 1 second and slide another 10 units.• Add 6 plants at different positions around the island.• Detect collisions (sphere-sphere) between the plants and the car, resolving them such that the carcannot pass through the branches of the plants, but most drive round them.Future Space Frogs CO1301 Games Concepts Portfolio AssessmentHigh First Classification Milestone 5 – extra bonus payments received• Add a timer that counts down from 60 seconds.• Rather than ending the game when all four frogs are dead, each dead frog should be moved back tothe cube into waiting after being dead for one second.• Therefore, dead frogs will be changed to waiting to be moving until the 60-second timer is expired.After that, dead frogs stay dead, but the player has to hit any remaining moving frogs before thegame is won.• When the game is over, pressing the space-bar should re-set everything and re-start the game.• Use scaling in the Y axis to squash the frogs flat when they have been run over.• You may have to lift them slightly off the ground, otherwise they might disappear into the roadsurface.• When a frog moves forward one “space”, make it jump slightly.• Update the state transition diagrams showing the behaviour of your game.


Leave a Reply

Your email address will not be published. Required fields are marked *