Re: Advanced Terminal Mode

From: ShadowLord (
Date: 06/30/96

On Sun, 30 Jun 1996, KLA wrote:

> Has anyone put an advanced terminal mode for CircleMud ??
> Like separating the server output and user input into different window ?
> having a status bar for the make_prompt output ?
> You know, like the screen format for Unix IRC clients ??
> is it possible to code those kind of screen  format to the output
> of CircleMud server ?
> or that can  only be done by a client program? 
> (I knew Tintin++ also have this idea of screen splitting)

The (only?) way to implement this is through use of VT100/VT102 (a large
set of codes that preceeds the ANSI color specification) codes.  I did it
a few times on the MUDs I've worked on.  It's not particularly difficult,
provided you have a working knowledge (or rather, a reference) to the
VT102 codes.  Although, (once again) this is not the place to discuss the
VT102/ANSI color specifications.

Aside from the codes, the only neccessary things would be to make a
structure, put it into the structure where "struct char_data *fighting;"
is.  This structure will serve as the character's information so we can
tell when the person needs an update to their status bar.  You'll also
need to make a PRF_STATUS flag.

In comm.c, inside make_prompt, if the person is flagged PRF_STATUS, check
what information has changed (you'll need to update their status bar info
structure rapidly so as to keep their status bar up-to-date without
constantly sending the status bar, so as to prevent sending the status bar
repeatedly when not neccessary), and then send out the updates to the
status bar.

I DO NOT have the VT102 specifications in front of me.  You'll need to
look elsewhere for the said documentation.  It might be useful if it was
posted upon a WWW site for CircleMUD coding -- although it's not
specifically related to CircleMUD, it is quite useful when undertaking
coding projects like this (or anything that will involve positioning
cursors, clearing the screen, etc.)

This message has left a lot up to the individual coders, so as to let you
excersice your skill (and because I don't have the code in front of me :))


This archive was generated by hypermail 2b30 : 12/18/00 PST