Notes on terminology: The term 'mnemonic' refers to shortened words for common use, example, 'A two-handed sword' would have a mnemonic 'sword' for the game to identify the long treasure name. The term 'index' refers to a variable which points to an element of an array. For example, Temp7 could be an index to UserRecord.Inv array, if Temp7=10, then Temp7 is the index of UserRecord.Inv(Temp7). The term 'structure' refers to a collection of fixed length strings, integers, and precision variable described in a common variable. For example, the UserType described in the include file would be used as a structure by assigning the type to the record, for example, Dim UserRecord As UserType. Then variables in the structure are accessed with the dot symbol, for example, UserRecord.Gold. The term 'record' refers to a single structure which can be read or written to a random file using the get and put statements. For example, the user record could be placed into the user file with the statement Put UserFile,10,UserRecord, or Put 3,10,UserRecord. The term 'parse' or 'parse temp' refers to the numeric specific to an item following the pound sign. For example, the parse temp for 'an axe#2' is equal to 2. Since searching for an item during the game checks the room first then the user inventory, the parse temp must be decremented after the inventory is checked. For example, 'an axe#2' would count one axe on the floor, decrement by one, then find the first axe in the user inventory, or the second axe to find. The term 'player', 'user', 'character', are used interchangeably. For example, 'player character' may refer to the statistics or points of the user and his/her record structure. Or, for example, 'user' may refer to the player and his or her codename, etc. Usage of the variable 'Graphics.Off' usually with the comment 'reset color is used in this manner: When the player has ote ansi installed, and the game sends ansi codes, color graphics are sent to the player by recycling highintensity ansi codes for the 6 base colors. The variable Color.Graphics is set to true to send ansi codes. Thus, setting Graphics.Off to True sets ote ansi to highintensity white, and setting Graphics.Off to False resets the recycling highintensity ansi. Usage of the output routine with no assignment to the output string, sends a blank carriage return/linefeed to the modem. For example, 'Outpt=Nul' followed by 'Call IO.O' sends a blank line. Calling the output routine twice sends a blank line after the first message, for example, 'Outpt="Output line."', 'Call IO.O', 'Call IO.O', sends the first line, then a blank line. Usage of the term 'string', or 'message' refer to an assignment or use of text imbedded in quotes, or assigned to a variable. For example: "This text line." could be called a message or string. And the line Outpt="This text line." could have a comment ' make message. The term 'cr/lf' refers to carriage return/line feed which are the ascii characters 13 and 10, respectively. Note however that linefeeds are not normally used by terminal programs and are usually ignored. The variable passing conventions for calling modules have two forms. A call to an example routine, 'Call Routine1(4)' where the routine has a variable with the value of 4 passed to it, 'Sub Routine1(Var)' allows the routine to accept a passed parameter. This is named calling by value. A call to the same routine with a variable, 'Call Routine1(Temp)' passes the value contained in Temp. When the routine accepts the value in its own variable Var, the return from the routine can change the value in Var. This is named calling by reference. Passed variables should match in type. End terminology notes.