Design and implement a text-based game

Assignment Help Computer Engineering
Reference no: EM132152009

Text-based Game (Using C++)

Goals

Design a program to satisfy provided requirements

Use good OOP style, including inheritance, polymorphism, and pointers

Requirements

This is your final project and you have freedom to decide what you want to do. At the end of the term, you will surprisingly find how capable you are to develop a real computer game for your friends to play with!

You will design and implement a text-based game where the player movers through a series of rooms or spaces.

They will need to gather items to achieve some purpose. You need to meet the specific requirements in your program, and all the other implementation details are left for you to decide.

Specific requirements

You will create a series of rooms or spaces for the player to move through. (By default this is a one-player game. If you want to add more players, you can extend your game later.) Each space will be a class with at least four pointer variables (or arrays of pointers) that link to other spaces (Right, Left, Top, Bottom, etc.).

Even if your structure is linear, such as a train, you will still have at least four pointer variables in the class. Be creative and try to use them all! Note that any unused pointers will point to NULL. (The requirement for four pointers in each space is to simplify coding. If you need more pointers for your theme, feel free to add more.)

The space will also have appropriate data members. You must have at least 6 spaces of at least 3 different types. You will have a space abstract class that will have special pure virtual functions.

Each type of space will have a special action. It could be the controls in the engine, or to control access to one of the doors (pointers), or it could simply turn on the lights. So you will have at least 3 derived classes for your spaces. To continue with the train theme, you could have a passenger car, or baggage car. Or one space could have controls such as the engine.

You must have a goal for the player in your theme. Maybe it is to solve a crime (like Clue?). Maybe the aliens have invaded your spaceship and normal weapons do not work but broccoli causes them to leave! You may have a random goal (so one time broccoli works, next time it is a pillow). Based on your theme, the player must discover the solution to win the game.

You must have some way to keep track of which space the player is in. The player will have a container (backpack, knitting bag, or notebook) to carry "items". The container must have some limit (weight, size, etc.). One or more of these items will be required as part of the solution, such as a "key" to open the locked door.

For simplicity, your game should not require free-form input. It is frustrating if you did not spell something correctly. You should have a time limit to urge the player on as well. This does not mean a literal clock, just some way to prevent the game from going on indefinitely. (Make sure you give enough time to allow the game to perform through testing.) The player must interact with parts of the space structure, and not just simply collecting things.

This can be throwing something at the monster, operating a light switch (or other control), opening doors, or singing to get the baby back to sleep. That means, when the player is moving around, he would not only get information from the spaces, but also change the status of the spaces.

To make it easy for your TA to grade the project, you must provide a menu option similar as what you did for previous assignments. Before the beginning of the game, reveal the goal for the player. If the grader does not know the goal, they cannot tell if the program is working correctly. This information does not need to be elaborate. Print something like "the broccoli causes the aliens to leave", or "the murder was done by Mr. Duck, club car, fishing pole."

As long as you meet those requirements, all the other details are left for you to decide. You should develop a theme for your game and try to make it interesting.

Reference no: EM132152009

Questions Cloud

Do you think the ftc should have the authority to sue : Do you think the FTC should have the authority to sue companies for poor cybersecurity practices?
Think about the documentation or help system : Think about the documentation or help system for a software application or a device such as a cell phone that you have used recently.
Is the project plan realistic or unrealistic : Answer the following questions and upload your answers in a document to this forum: Is the project plan realistic or unrealistic?
How each type of association is depicted on a class diagram : Determine the relationships between aggregation, generalization, and association. Explain how each type of association is depicted on a class diagram.
Design and implement a text-based game : Design and implement a text-based game where the player movers through a series of rooms or spaces.
Develop a use-case description for each major use case : Create an activity diagram for the business process described in this case through the use of graphical tools in Microsoft Word or Visio, or an open source.
Convert the class so that the link objects have a single : Convert the class so that the Link objects have a single long instance variable -- call it "data" -- and the Link instance variable..
Identify five forms of qualitative media evaluation : BSBADV605 Evaluate campaign effectiveness Assignment - Identify five forms of qualitative media evaluation which may be used
Why is the term important in economics : What is an opportunity cost, and why is the term important in economics? (The answer should be a calculation with 2 or 3 complete sentences).

Reviews

Write a Review

Computer Engineering Questions & Answers

  Mathematics in computing

Binary search tree, and postorder and preorder traversal Determine the shortest path in Graph

  Ict governance

ICT is defined as the term of Information and communication technologies, it is diverse set of technical tools and resources used by the government agencies to communicate and produce, circulate, store, and manage all information.

  Implementation of memory management

Assignment covers the following eight topics and explore the implementation of memory management, processes and threads.

  Realize business and organizational data storage

Realize business and organizational data storage and fast access times are much more important than they have ever been. Compare and contrast magnetic tapes, magnetic disks, optical discs

  What is the protocol overhead

What are the advantages of using a compiled language over an interpreted one? Under what circumstances would you select to use an interpreted language?

  Implementation of memory management

Paper describes about memory management. How memory is used in executing programs and its critical support for applications.

  Define open and closed loop control systems

Define open and closed loop cotrol systems.Explain difference between time varying and time invariant control system wth suitable example.

  Prepare a proposal to deploy windows server

Prepare a proposal to deploy Windows Server onto an existing network based on the provided scenario.

  Security policy document project

Analyze security requirements and develop a security policy

  Write a procedure that produces independent stack objects

Write a procedure (make-stack) that produces independent stack objects, using a message-passing style, e.g.

  Define a suitable functional unit

Define a suitable functional unit for a comparative study between two different types of paint.

  Calculate yield to maturity and bond prices

Calculate yield to maturity (YTM) and bond prices

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