Click here to Skip to main content
15,886,110 members
Articles / Desktop Programming / WPF

MUD Client Essentials

Rate me:
Please Sign up or sign in to vote.
4.40/5 (5 votes)
19 Apr 2011Public Domain2 min read 34.2K   1.1K   13   5
Includes the necessary code to support the Telnet protocol and ANSI color in a MUD client

Please Steal this Code!

If you've ever considered developing your own MUD client (an online text gaming app) but were discouraged by the preliminary protocol implementation step, this code will set you free to start working immediately on the features you care about. If you're new to the idea of online text games, here's the fact you need to know - there are hundreds of "MUD" servers out there, and all use the same basic protocol. This means you may develop a client application which connects your users to ANY of those games, then add features to delight and excite them.

Background

Despite the hobbyist community's frequent introduction of new MUD servers (see www.mudconnect.com), online text games as a genre are languishing. Starting with Everquest's first release, the availability of graphical online RPG games has been pulling gamers away, and text game developers (both client and server) haven't yet "upped their game" accordingly. Clients are especially problematic, because most are at least 10 years old, developed on decade-old platforms. They get the job done, but they don't look or feel modern, so potential gamers hesitate to give them a chance.

Today's technology offers an opportunity to deliver a much-improved user experience - imagine a client which "feels like" an open book rather than a rainbow-on-black avalanche of text, or a themable multi-window client complete with high-res background image, animations, smooth scrolling, transparency, and streaming music. Client developers also face entirely new challenges in taking text gaming to touch screens, tablets, and mobile phones.

Starting from scratch, would-be MUD client developers are often quickly discouraged when they learn there are two big hills to climb - Telnet, a 30-year-old protocol documented in truly archaic format, and ANSI color, the standard for embedding color information in MUD text. Telnet tends to be the most problematic because its byte values aren't readable by the human eye (they don't map to printable characters), and because due to its introduction in a time when bandwidth was scarce, a lot of complexity was introduced to keep it efficient.

You can read more about MUD client development here: Modernizing the MUD Client.

Using the Code

This code project includes all the C# code you need to support both Telnet and ANSI color, AND a sample WPF (Windows Presentation Foundation) application which uses that code to complete a bare-essentials MUD client.

Please take this code and build a better client! The text gaming community will thank you!

Interested in becoming more involved in the text gaming community? Try these sites:

Demo application in action.

History

  • 4th April, 2011: Initial version
  • 14th April, 2011: Added one bullet to list of related links

License

This article, along with any associated source code and files, is licensed under A Public Domain dedication


Written By
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
GeneralOverall great post but... Pin
Michael Key30-Jun-14 9:57
Michael Key30-Jun-14 9:57 
AnswerRe: Overall great post but... Pin
Chris Witt25-Jan-16 18:41
Chris Witt25-Jan-16 18:41 
GeneralMy vote of 5 Pin
califf2214-Dec-12 6:20
califf2214-Dec-12 6:20 
QuestionMud Client questions Pin
maxx23105-May-12 16:51
maxx23105-May-12 16:51 
GeneralMy vote of 3 Pin
R. Hoffmann14-Apr-11 9:09
professionalR. Hoffmann14-Apr-11 9:09 
Hi,

Well done for developing this framework, and thanks for sharing it with people! However, how about highlighting some of the key techniques and code in the article?

I understand why you've posted this, and the excitement visible in your writing is infectious, I'd just like to recommend expanding the article a little Smile | :)

P.S. This is now the third time I'm posting this comment - first time CodeProject went down as I was posting, and the second time posted okay but later vanished. Here's hoping for third time lucky Smile | :)

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.