Keirath said:
One thing I'm very interested in doing is instituting a lot of what you've done here by way of telnet subnegotiation and what not. However, I have absolutely no experience with this. What is the best way to go about this?
I tend not to read this forum very frequently, as I have to keep an eye on the MUSHclient one.
If you want to ask me more questions about it, you would get a faster response there:
http://www.gammon.com.au/forum/
Basically though, if you want to send stuff for status bars etc., you have some sort of protocol (eg. ATCP, Lua, JSON, B-encoding, MSDP) which is a method of encoding your information (eg. hp=22;mana=33). Then you may well want to send this extra stuff "out of band" so-to-speak, so it doesn't clutter up the main screen. Telnet subnegotiation is one way of doing that, which is what I used in the above demo.
Once you decide on a protocol (my example code for the above demo used a combination of telnet subnegotiation, and Lua) then you need to have a plugin (or other method) at the client end to pull the data out of the incoming data stream, decode it, and display it usefully (eg. a status bar).
Some useful links:
http://www.ironrealms.com/rapture/manual/files/FeatATCP-txt.html
http://www.ironrealms.com/gmcp-doc
http://json.org/
http://en.wikipedia.org/wiki/Bencode
http://tintin.sourceforge.net/msdp/
This post by me puts it all together somewhat:
http://www.gammon.com.au/forum/?id=10043
Note that my suggestions were not universally accepted.