Fund. CS II (CS152 2004F)

Project parts due week 9: Begin Implementations

Due: Tuesday, 2 November 2004

Please do your work with your group.

World Model Group

a. Build interfaces for World, Place, Thing, and any other key element of our program.

b. Implement stub classes for all of your interfaces. A stub class is not fully implemented, but returns something for each method.

c. Determine how someone might enter information on the world into our system. For example, can we represent rooms and their contents as text files? If so, what do those files look like?

d. Create four basic kinds of things (e.g., Book, FoamSword, ...).

Network Group

Create a pair of programs (client and server) that lets someone type something one one machine and see it on another. (If you cannot complete this part of the project by the due date, I will certainly understand.)

UI Group

a. Describe, as precisely as you can, what valid user input should look like. (For example, many systems use a verb/object metaphor, such as "grab book" or "say 'Run away!'" or "Smash Sam".)

b. Write something that reads the user's input and parses it (figures out what they mean). You should accept reasonable synonyms and print error messages if you can't figure out what the mean.

Person/AI Group

a. Decide on the key characteristics of people.

b. Build a Person interface.

c. Implement a simple StubPerson that responds to all messages. (Stubs respond with predefined values.)

d. Implement a simple CrazyPerson that randomly decides what to do (among the legal options of what to do).

Disclaimer: I usually create these pages on the fly, which means that I rarely proofread them and they may contain bad grammar and incorrect details. It also means that I tend to update them regularly (see the history for more details). Feel free to contact me with any suggestions for changes.

This document was generated by Siteweaver on Wed Dec 8 10:37:00 2004.
The source to the document was last modified on Tue Oct 26 10:31:32 2004.
This document may be found at

You may wish to validate this document's HTML ; Valid CSS! ; Check with Bobby

Samuel A. Rebelsky,