| Interface | Description | 
|---|---|
| AbilityContainer | Something that can know or contain abilities for use. | 
| Achievable | Something that can tracked for and attain achievements | 
| Affectable | Something that can be affected, and has environmental stats that
 can be affected as well. | 
| Behavable | Something that can behave -- means almost everything! | 
| BoundedObject | The interface represents a 3d cubed thing. | 
| CloseableLockable | An interface for all mechanisms that has a lockable door or lid, such
 as containers and exits | 
| CMObject | The general base interface which is implemented by every class
 which the CoffeeMud ClassLoader (CMClass) handles. | 
| CMObjectWrapper | A fake/temporary wrapper for an existing cmobject | 
| Combatant | A physical object in the world that is capable of engaging in combat
 with others. | 
| Contingent | One step above a basic CMObject is an object that is contingent on its
 environment. | 
| CostDef | Class for the definition of a cost of some sort | 
| CostManager | Class for the cost of a skill, or similar things perhaps | 
| DBIdentifiable | This interface is implemented by classes who can properly save
 and restore a database ID, to uniquely identify the object at
 a particular row in the database. | 
| Decayable | A Drinkable object containing its own liquid material type, and liquid capacity management. | 
| Dischargeable | Something that can be discharged. | 
| Drink | A Drinkable object containing its own liquid material type, and liquid capacity management. | 
| EachApplicable<T> | A utility interface for applying "each" code to iterable objects | 
| Economics | An interface for objects capable of modifying economic conditions | 
| Environmental | The core of most object types in CoffeeMud. | 
| EventHandlers | Currently unused. | 
| Expireable | An object that can expire, used almost everywhere | 
| FactionMember | Something that can belong to one or more factions, and have rank
 (also called "faction") with it. | 
| Followable<T extends Followable<T>> | The Followable interface defines methods to both the follower, and
 the thing being followed, since it is assumed that following is a
 transitive property. | 
| ItemCollection | An abstract interface for something capable of grouping items together | 
| ItemPossessor | An interface for something capable of possessing Items | 
| LandTitle | Interface for objects which represents real estate purchasable by players. | 
| LiquidHolder | An object containing its own liquid material type, and liquid capacity management. | 
| Modifiable | A Drinkable object containing its own liquid material type, and liquid capacity management. | 
| MsgListener | An object which is permitted to handle game events in CoffeeMud. | 
| MsgMonitor | An object which is permitted to monitor game events in CoffeeMud. | 
| MUDCmdProcessor | Something that is capable of taking user-entered commands, parsing
 them, and then executing them. | 
| MudHost | The interface implemented by the main mud application. | 
| Physical | Something that exists in the physical world and can be affected by the
 world | 
| PhysicalAgent | A Physical object capable of initiating an effect on the world. | 
| Places | A place where people might be, can be either abstract (like an area),
 or concrete (like a Room) | 
| PrivateProperty | Interface for objects which represents property purchasable by players. | 
| Readable | Something that can potentially be read, because it may or may not
 have writing on it. | 
| RecipeDriven | A CMObject whose behavior is driven by 'recipes', or some
 data file formatted in a standard way. | 
| Recipes | Recipes add to the recipes available to construction-type common skills, such
 as tailoring, weaponsmithing, etc. | 
| Rideable | The interface for an item or mob which may be ridden | 
| Rider | The interface for an item or mob which ride a Rideable | 
| ShopKeeper | An interface for objects capable of being a shopkeeper, usually a MOB or an Ability. | 
| SpaceObject | This interface is still in development. | 
| SpaceObject.SpaceGateway | A GateWay is a type of space object that connects to another
 space object as a gateway or wormhole. | 
| StatsAffecting | An interface for classes and objects which may affect mobs, rooms, items, and other Environmental types
 By altering their stats and state objects using the layer system. | 
| Tattooable | Something that can be tattooed with a named marker. | 
| Tickable | This interface is implemented by any object which wishes to get periodic thread time from
 the threads engine. | 
| TickableGroup | This class represents a thread, consisting of a group of Tickable objects  receiving periodic calls
 to their tick(Tickable,int) methods by this thread object | 
| TickClient | Encapsulates, manages, and collects statistics about a single ticking
 object in the game. | 
| Class | Description | 
|---|---|
| BoundedObject.BoundedCube | |
| CostDef.Cost | A final cost is an integer, and the type, and possibly
 a currency. | 
| EachApplicable.ApplyAffectPhyStats<T extends StatsAffecting> | Example class that affect phyStats | 
| EachApplicable.ApplyRecoverPhyStats<T extends Affectable> | Example class that recovers phyStats | 
| ShopKeeper.ShopPrice | This class represents a given price for a given item in the shopkeepers inventory. | 
| Enum | Description | 
|---|---|
| CostDef.CostType | Enumeration of the types of costs of gaining this ability | 
| ItemPossessor.Expire | Constants for the addItem methods to denote how long the item
 lives before expiring. | 
| ItemPossessor.Find | constant for the findItem/findItems method denoting special modifying flags on the search | 
| ItemPossessor.Move | constant for the moveItemTo methods to denote flags are being given -- normal operation | 
| Rideable.Basis | |
| ShopKeeper.ViewType | How much information is given by this shopkeeper when viewing items | 
| SpaceObject.Distance | Some distance constants. | 
| TickableGroup.LocalType | The types of objects to clear during a clearDebri call |