View this PageEdit this PageAttachments to this PageHistory of this PageHomeRecent ChangesSearch the SwikiHelp Guide
Hotspots: Admin Pages | Turn-in Site |
Current Links: Cases Final Project Summer 2007

Anti-Absentminded, Bloody Sleepwalkers

Edit Anti-Absentminded, Bloody Sleepwalkers here.

Here is our Design Roundtable presentation in zip format.

Here is the code for our Squeak MOO. This means that we support multi-player through a telnet interface. Not only that, but we have also designed a Squeak AGTelnetClient as a subclass of TelnetMachine that has a window into Wonderland.

We maintain a command queue in AGWorld that prevents actions from occuring simultaneously. It also maintains the currentActor which can be players connected through the telnet server, characters or objects in the world, and even rooms or the world itself. The currentActor is used to determine what entities are in context with a given command in the queue. All these objects are then given the oportunity to respond to the action.

This is where a user table (2D array of processes that monitor sockets) is stored. It also knows which connections are through the AGTelnetClient and sends special messages to those clients that tells them what to do in wonderland. The Telnet Server knows about the world and sends commands between it and the users.

All the 3D Models are referenced on the AGTelnetClient's machine. It has a WordMatcher that parses the special input from the Telnet Server and takes the appropriate action. As a subclass of TelnetMachine, you can connect to a MOO server anywhere on the internet. In fact, we recommend running the AGTelnetClient on a different maching than the server. Even better, connect with multiple clients and have fun with your friends.

Jonathan D'Andries
Daniel Hanley
Lee Feagin
Hing Yee Lau

Links to this Page