30 May, 2007, Ugha wrote in the 1st comment:
Votes: 0
I've been running my own ROM mud for around 9 years now and I have finally reached the point
where my vision is limited by the existing codebase. I want to create my own codebase… the only
problem is I know jack about telnet protocol, sockets and the like.

I've read a little on winsock and the like, but I can't grasp the concept very well because most of
the examples given are written in C++.

I hate C++. I dislike the very concept of abstracting something down to a "human understandable level"

Does anyone know any source of information for sockets/telnet protocol (enough to create a basic client and
a basic server) for C? A simple telnet app written completely in C or perhaps a very sparse "talker" server?

Yes, I know I could go and rip the socket information out of my ROM codebase, but I'd rather start from scratch
and LEARN this stuff instead of just copy and paste.

Thanks in advance,
Ugha
30 May, 2007, kiasyn wrote in the 2nd comment:
Votes: 0
30 May, 2007, Justice wrote in the 3rd comment:
Votes: 0
It's probably a good thing you don't simply copy the ROM code. Instead of going straight for the telnet protocol, I'd start by learning how to use raw sockets. It's not very hard to find information on these in C. A quick search for "C Sockets" yields several results including:
http://www.cs.rpi.edu/courses/sysprog/so...

Ugha said:
I hate C++. I dislike the very concept of abstracting something down to a "human understandable level"

Does anyone know any source of information for sockets/telnet protocol (enough to create a basic client and
a basic server) for C? A simple telnet app written completely in C or perhaps a very sparse "talker" server?


As for C++, I think you've been given a poor view of the purposes for abstraction. Abstraction is NOT to make things human readable. It may be used for that, but doing so is often a poor implementation. Abstraction is to make code easier to modify and maintain. In fact, C uses abstraction as well. Ever call a function using a pointer? (DO_FUN) That's abstraction. Each "command" follows the same "interface" and is called either by pointer or in the case of older codebases, from a lookup. (SmaugFUSS uses dlsym, while SMAUG uses a lookup function)
31 May, 2007, Conner wrote in the 4th comment:
Votes: 0
Actually, just as a minor point of correction there, SmaugFUSS 1.7 uses dlsym, and Smaug through 1.8 as well as SmaugFUSS through 1.6 uses a lookup function (in tables.c) and use DO_FUN calls as well (in mud.h).
01 Jun, 2007, Ugha wrote in the 5th comment:
Votes: 0
Kiasyn… I love you man! Hehe, seriously… this is some good stuff. Thanks.

Justice… thanks, I haven't checked out your link yet but I'll absolutely look into it when I finish reading Kiasyn's.

Thank you both.

And as far as the C++ thing, yes, I assume it does have a great deal of merit… and as much as I hate to admit it,
I'll most likely end up having to learn it sometime in the future.

I'm just stubborn and hate having to change my ways (Which is most likely why I'm still into MUDs instead of something
that could… you know… actually make money ;)

Thank you again.
26 Feb, 2008, exeter wrote in the 6th comment:
Votes: 0
Why not check out SocketMUD? It's basically what you're asking for… a no-frills server with just socket handling and not much else, in plain C.
0.0/6