creating a Text Based MMO

Started by
8 comments, last by aabrami 15 years, 8 months ago
Hi Everyone, Can C# be used to make a text-based MMO(Massive Multiplayer Online game)? If not, then how can I go about creating one? Any advice or information is very much appreciated. Thank you and good luck with everybody in their gaming ventures. Arbi
Advertisement
A text based MMO is called a MUD, and C# will work. Look up 'mud programming', as there are several sites dedicated to that.
yes c# can be used to create Text based MMO's but what you should look into are Muds Mush and Mux which is the text based equivalent of a Graphical MMO's most muds that i've come across have been programmed in c/c++ though i've also looked at some code bases done in python, pearl, vb and java.

the first thing needed is an understanding of socket programming, following that string manipulation.

I've worked on several muds as an administrator and coder. I'm about 30% done with my own code base written from scratch in c++, I've looked at c# as a starting point and for me and at the time i didn't have a good enough understanding of c# to complete the project the way i wanted to and with the features i wanted.

Use the tools you are most proficient with.

Write down all the features you want you engine to have

organize them, and order them in priority to what you need to have done in order
to test it

Write down goals and mile stones

things like

Mile Stone #1 sending text over sockets
Mile Stone #2 Users logging on
Mile Stone #3 Command stucture
mile stone #20 OLC (online creation) Implemnted
ect...

think about how you want to represent the world to the player

are you just going to have a list of rooms with references to each other
do you want to have the rooms organized in areas so that they are easier to maintain

what are you going to use to store rooms players and items
you can use a traditional database like mysql or just a list of files

one last thing work out a command structure and syntax, you are going to want a way to limit what commands a user has access to and the syntax will help you with parsing the commands and help provide a familiar interface to the user and make it easier to learn to play your game
0))))))>|FritzMar>
C# can very good be used for a MUD. The .NET framework already contains high level classes for jobs like socket programming, string manipulation and data handling. Like the poster above said you need to learn about socket programming.

If you don't have experience with socket programming I suggest you first try to make a simple chat-like connection. No multi user yet. Dive into the System.Net.Sockets namespace and see what it has to offer. Then move to a more difficult approach and build a Connection Manager which handles your clients.

That could help you get started :)
Wow what agreat response. Very informative.

Khaosz: Your Dawn project seems interesting, I will definitley observe. Good luck!

FritzMar: Thank you very much for that detailed response.

Everybody else, I really apprecaite it, thank you. Thanks to you guys, I obviously have a lot of work to do lol.

Arbi
One other thing worth noting is that you're probably reinventing the wheel: http://www.tigermud.com/

There's no shame in building off of other people's (open source) work, so you might want to check that project out rather than starting from scratch.

Whichever route you decide to take, I wish you luck. [smile]
Thank you very much, but tigermud.com didn't work. Is that the exact URL?
Quote:Original post by aabrami
Thank you very much, but tigermud.com didn't work. Is that the exact URL?

Click here

The third listing is a C# mud code base.
I apologize for the broken link. That is indeed the correct url, but the DNS server seems to be down? You can find their project page here, though they don't host any files there and the project website just takes you to www.tigermud.com. [depressed]

In all likelyhood the DNS server will be fixed in the next 24-48 hours, so you might check back then, though as Daaark mentioned there are other C# MUD code bases out there as well. [smile]
Thats alright. Thanks for the info! Plenty to work with

This topic is closed to new replies.

Advertisement