Re: ASCII Pfiles (was: Color)

From: George Greer (greerga@circlemud.org)
Date: 01/16/01


On Tue, 16 Jan 2001, Daniel A. Koepke wrote:

>Basically, we'd have to implement a pseudo-terminal.  Time to dust off the
>ol' copy of _UNIX_Network_Programming_, I think.

I believe I do own that book so it shouldn't be a problem.  If not, I'd
investigate the man pages and such.

>Unless you can remember the thousand-and-one ioctl() calls.

Uh huh, I write terminals all the time.

>Of course, it'd be UNIX only. Windows isn't even remotely[1] capable of
>things like this, last I heard.

I was planning on being elitist for awhile anyway.  In other words, it'll
work under Linux until it would be sufficiently featureful to be worth
running somewhere else.  Other people are free to beat me to it if they
like of course.  That means I'm not being pigish for the sake of the bacon,
but so the program can grow without worrying about breaking some 10 year
old ancient PoS. :) I'd take patches to fix oversights.

>> I'm also hoping for native SSH and compression support, but not for
>> any interim release. ("Interim to what?" you may be asking.)
[...]
>Of course, if we write a telnetd, there's no good reason not to make
>CircleMUD's telnet support more complete (i.e., existent).

Would be nice, wouldn't it? Then your terminal detection code is useful.

>I suppose this is a good reason to use C++ (because the telnet protocol
>support can be a base class that we write once, derive/combine where we
>need it, and forget about).  It'd be terribly nice to do:
>
>    class MudServer: public ServerSocket<TcpInetBase, TelnetProtocol>
>    {
>        .
>        .
>        .
>    };

I was thinking of the socket class possibilities being:

  encrypted | compressed (think bit flag state possibilities)

  TCP or Unix domain socket

and then I'd want to make a "lobby"-ish program to handle the actual
incoming connections. Sorry, no UDP except for maybe the server<->lobby
connection because I really don't want to reimplement TCP.

>BTW... interim to what?  <g>

Insanity. :)

Actually, STL ("map" is neat) isn't looking too bad recently so I'm leaning
toward something C++.  My thoughts were:

        - 3.0   betas
        - 3.1   First CircleMUD 3.x stable release.
        / 4.0   Circle^2 (or Circle^3, depending on pun)
        \ 3.[2-9] Concurrent with 4.0 for some post-3.1 cleanups.

Not that I'm doing anything more than in-head design until 3.1 is finished.

3.1 vision:
        some more bugs (see bugs.circlemud.org)
        documentation (see Jeremy, hoarder of old documents) :)
        yank olc.c or continue our denial of its existence.
3.[2-9] vision:
        OLC
        ASCII data files (players, objects, boards, mail, etc.)
        code-stuff reorganization (like db.c's uselessness post-boot)

I once tried to follow the code marked "This looks ugly, but it works." and
gave up after my head started hurting.  Oh well, at least it works. :)

There shouldn't be anything too radical for the interim release. It'll
mostly be throwing in changes we'd like to have but really don't want to
slap in that much code right now.

--
George Greer            | If it's about the CircleMUD mailing list,
greerga@circlemud.org   | mail owner-circle@post.queensu.ca instead.

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 12/03/01 PST