[DGD] Question: Implementing ANSI

Trance Junkie trance_junkie2002 at hotmail.com
Fri May 6 22:31:02 CEST 2005


>   You know that changing those lines of code should *not* produce missing
>file errors, right?  Did you try compiling the plain version of DGD in 
>question
>*before* updating the files to the ANSI version?

I think I mentioned, that the only dgd-1.1 I could find required Visual C++ 
to compile, and that I've already downloaded one program (Cygwin) for what 
was meant to be a single use. Just the install files for that were over 
100mb, and I don't even want to think about how much extra stuff it has that 
I have no desire or intention to ever use. As a result, I do not 
particularly want to download and install another program that may or may 
not help.

This means that no, I didn't compile 1.1, since I neither have the software 
required to compile it, nor do I have any experience with said software, and 
I don't want to risk breaking my machine in the process of learning how to 
use Visual C++ and Cygwin properly, just so I can do one thing with each 
program. Sure I can reinstall later, but I'm hoping there is a nice person 
out there that will offer a little help before it comes to that point.

>   On a semi-related note, it is possible to fake ANSI color by 
>implementing
>your own telnet protocol in DGD.  Phantasmal has this functionality about 
>75%
>implemented, but that's all built on top of the Kernel library, so it may 
>not
>be your cuppa tea.

The mudlib I'm planning on creating will also be built on top of the kernel 
library, though the likely result will include a LOT of modification to the 
standard kernel lib which I feel confident enough to do myself via trial and 
error. As for implementing ansi colour purely via the lib, I must admit I 
did not think about doing it that way, possibly because I was focusing on 
the packages which all refer to patching the driver itself, though I do 
remember reading somewhere in my researching that the driver either omits or 
strips ansi codes.. I didn't fully understand it when I read it, nor can I 
currently find the page I read it on.

I'll research Phantasmal a bit deeper for pointers on how to implement it 
this way, but any additional help you can give would be greatly appreciated.

By the way, if it helps, my intention at the moment is to automatically 
include ansi colour codes in all outgoing messages to players, but that 
those messages be parsed through a generic incoming_message() function which 
queries the player's preset ansi options, and strips ansi codes if the 
player has not set their terminal options to accept ansi codes.

This option would of course be off by default, therefore all ansi codes 
would be stripped by default unless the player in question had previously 
enabled ansi colour. Also, I'd like to add capabilities for each player to 
set their own preferred colours for specific types of mesages, for example 
if they want to see room brief descs in green and see exits in bold,magenta, 
they can do so via a specific command created for this purpose.

Once I know how to implement ansi colour, I believe I can do all of this 
with my current knowledge and experience of coding lpc. If ansi colour can 
be implemented without modifying the driver, so much the better. I don't 
need all of the fancy non-english character sets, just the ability to send 
colours much as many muds do nowadays. But again, it comes back down to the 
how of it, which is what I'm here to learn =)

Thanks again,

Shadow





More information about the DGD mailing list