- Prof. Dancy's Site - Course Site -

Stranded: The Rover Game

Objectives

  1. Use object-oriented design and 2D arrays (Phase 1 & 2)
  2. Implement and use a List ADT as linked nodes (Phase 3)
  3. Implement and use a Stack ADT as linked nodes (Phase 4)
  4. Implement and use a Queue ADT as a circular array (Phase 5)
  5. Do a Big-O analysis on an ADT (the Queue) implementation (Phase 5)

The Story

The year is 2022. Personal space transport is common and you have taken your space ship out exploring. You find an ancient abandoned planet and decided to land and investigate. There was a huge storm as you landed and your ship now lies in pieces on a landing pad. There is no oxygen in air but you are able to move around in your rover. You have a repair manual, which tells you how to fix your ship, but you don't have the needed spare parts.

You see strange items scattered around on the ground. Maybe they will be useful. You also see strange glowing orbs big enough to swallow your rover. When you touch one, you get sucked in and appear in another place with items and orbs. The orb was a portal! When you re-enter the same portal, it takes you back where you came from.

Your goal is to move about the portal system and collect enough spare parts to fix your ship.

Rover ScreenShot

Other Phases

Phase 1 | Phase 3 | Phase 4 | Phase 5 |


Phase 2: An Infinite Universe

The universe is infinite. This means that you could constantly walk through portals into new rooms. The objective of phase 2 is to make the portal system functional.

Portals

Portals are inter-dimensional doorways to other rooms. If the rover steps on a portal, it must go through the portal. It will arrive on a portal in another room (and not get sucked back through until it steps off and on again).

Implementation Hints

Example Video

Want to see an example video? Check out below

Grading breakdown

Graded item Number of points
General Running
The rover and ship components and the parts all still have working images 5 pts
The quit button still works 5 pts
The rover can still move 5 pts
The rover can still stand on things 5 pts
Portals
Portals must be connected in a permanent 1 to 1 relationship. (If portal A connects to portal B, no other portal connects to A or B and the portals are never disconnected). 20 pts
If the rover steps on a portal, it is transported to another room. The map is infinite! 12 pts
Use randomness for the number/kind of the parts in each room 5 pts
Use randomness for the location of the parts in each room 5 pts
There will be at least 2 portals in each room 5 pts
Use randomness for the number of portals in each room 5 pts
No two items (ship components, parts, portals) may be in the same location 5 pts
Good design principles used 6 pts
Design of portals in code 10 pts
Total 100 pts

Find Phase 1 here

Find Phase 3 here

Find Phase 4 here

Find Phase 5 here