A note about endianness: Two function sets to deal with this arpa/inet.h series: ntohl, ntohs, htons, htonl endian.h series: There are more of them here Why do we have two? arpa/inet.h are more standard For this reason, I prefer them endian.h has more options That said: Time for Lurk! Lurk is a protocol for multi-user adventure games Simple enough we can succeed in a semester And have fun at the same time! It's not a protocol for every game imaginable Quite a few people have made servers, and some are online For examples Official example servers on 5190 and 5191 Some student servers are out of date on protocol version 2.3 seems pretty stable though Tools: lurkscan (discovers lurk servers running on isoptera) lc (for protocol examination, can be a client or server) lurktest (automated test client) lurkwolf (semi-official client) lurkman (another semi-official client) Clay's web client, if it's online Might not be Feel free to explore any server you like Let's go through the protocol!