How hard would it be to implement a simple mapping table? Just an array of 256 characters - feed every value into an array lookup to get the character to send the client, " @%vGTT*OO*MFdH$><T!T$_T^v><L%V^ !\"#$%&'()*+,-./0123"etc - load it from a file, then if people want to use ANSI instead of the terminal font they could replace the mapping table to fix all the accented letters and line drawing characters (they'd have to make walls look like # but it's better than nothing)
A mapping table wouldn't be hard to implement, however, it's kind of pointless because DF squeezes too much information into the various tiles and mapping more tiles on to already heavily used tiles will make the game much more interesting to play (currently all control codes are mapped to ' ').
Not being ASCII seems to be a bit nit-picky... However, the fact it's OpenGL and not console based certainly does change the matter quite a bit. If it was console based though, I probably wouldn't be asking this question
ASCII really doesn't have anything to do with it. However, the existance of my program definitely proves that even though it is OpenGL, it can be routed through telnet.
I've worked out a primitive binary protocol for forwarding console updates over the net. Anyone who wants to write something to scrape DF / inject key events and provide a server for this protocol; i'll write the client (for windows). It's a relatively general-purpose protocol, not DF-specific at all, though i need to add codepage support to be able to allow other thna 437
...
This kind of defeats the purpose of using Telnet, which at the time was to make DF more convenient to use under Unix.
Besides if the client you're writing is going to be Windows only, there's
vtnt which is a terminal type that Windows Telnet client supports and it makes transfering updates much better.
Under Unix telnet terminals there's other terminal types available, most also support extended ANSI commands that the default Windows Telnet doesn't support that will allow me to send full CP437.
The only reason why it's limited to the basic ANSI is because I really only use the default telnet client windows comes with. I also haven't taken the time to implement the other telnet modes.