Skip to main content
GameDev.net gamedev.net
🔒 Locked

An experiment in making multiplayer RPG's

Started by JWalsh Apr 16, 2007 at 5:58 PM 88 replies 22k views
Original Post
JWalsh
JWalsh
Hail All, About 10 times a day I see people ask the question "How do I develop my own MMORPG?" (tm). This is generally answered with some sarcastic remark about how it's "impossible for one person to develop an MMO, newb." In general, this is true, but the answer is given so frequently, that there are people giving this answer who do not even know the reasons WHY it's so difficult/impossible for a single person to develop an MMO. They're just regurgitating what others have spewed before them. So why not find out? Why not run a workshop/tutorial on developing our own MMORPG (Miniature Multiplayer Online Role-Playing Game)? So my question to you, good people of the "For Beginners" forum, is whether this is something you're interested in, and what you'd like such a workshop/tutorial to contain? What features should the Mini MORPG contain? how many users should it support? what language should it be in? ... This is your opportunity to play systems analyst and provide feedback on both the structure of such an MMO and the structure of such a tutorial. (Note: Dont flame me, this is a discussion about what you'd like to see in such a tutorial, should I decide to take on such a task. Keep in mind I'm not a newb, I'm an industry professional with multiple credited titles, and this question is simply posed to gauge interest and community reaction.) /discuss [smile] [Edited by - jwalsh on April 21, 2007 12:59:19 AM]
Crazyfool
Crazyfool
I personally would like this, not because I want to develop a MMORPG per se, but because I'd undoubtedly learn a ton. I also offer my tried (and failed) attempts at programs up for example :D
cNoob
cNoob
Quote:
Original post by jwalsh
So my question to you, good people of the "For Beginners" forum, is whether this is something you're interested in

I would be very interested in a workshop like this.

Quote:
Original post by jwalsh
What features should the Mini MORPG contain?

Basic chatting capabilities, economics system and maybe battles?

Quote:
Original post by jwalsh
how many users should it support?

Hmmm the only online game I play often is CSS so im not sure on the average users in a MMORPG.

Quote:
Original post by jwalsh
what language should it be in?

My preffered language is c++, if the project is a 2D mmorpg then I think SDL would be a nice API to use for most concepts.
Mike.Popoloski
Mike.Popoloski
Quote:
what language should it be in?

Well, here I make my case for C#. It has an extremely elegant syntax, is very efficient, has a huge standard library, is consistant for everyone that installs it, has a great support machine backing it (Microsoft), is just as fast as C++, especially when compiled down into a native image, and has a great graphics library for beginners called XNA. Plus its easy to learn, and makes moving to C++ much easier in the future. How can you loose?
Mike Popoloski | Journal | SlimDX
BenThereDoneThat
BenThereDoneThat
I would like this, simply because I've never gotten real in-depth in networking before, and learning it in deloping an actual game instead of some chat client would be fun. I could help out on teaching the the other stuff though, if we use C#, C++, or Python.

Great idea by the way, hopefully we'll see less posts about making MMO's, and more about things that are actually possible for beginners to make.
----------------------------My site: www.sudoexec.net
TheUnbeliever
TheUnbeliever
I would find it interesting to watch the progress, and see how it worked out - as well as to see what stumbling blocks were genuinely hit and which could be avoided with some planning. I wouldn't take part but would support it. I'll come back with a more useful post (i.e. one that actually addresses your other requests for feedback) tomorrow.
[TheUnbeliever]
Alpha_ProgDes
Alpha_ProgDes
First: MMO = Mini Multiplayer online
Second: I'm leaning toward something more action and less RPG
Third: Please use a language other than C++. C#, Java, or anything language that's SDL compliant.
Fourth: A chat system.
Fifth: REAL good explanation on the networking code and behind the scenes that is going on
Beginner in Game Development?  Read here. And read here.  
bschneid
bschneid
Quote:
Original post by jwalsh
(Miniature Multiplayer Online Role-Playing Game)


Sorry, someone had to do that, though some things should probably stay in the lounge...:D

Anyway, I wouldn't probably follow too closely as I've never been huge on MMORPGs, but I think it'd be a great way to alleviate all the MMORPG questions - all you'd have to do is link to this tutorial. You wouldn't even have to flame teh noobs, and who knows, maybe something would get accomplished, maybe not, but either way it would help. As for the specifics of the workshop, I'd say C++ and SDL are probably the most widely used language/API for the sort of beginner projects you mention. Plus, it might be a good resource for game dev-ing in general, you know?

EDIT:
Quote:
Original post by Alpha_ProgDes
Fifth: REAL good explanation on the networking code and behind the scenes that is going on


I think that there is the challenge of such a tutorial. Do you focus on the MMO aspect(networking), or the RPG aspect(things typical of an RPG game, like quests)? Those are probably the two topics which deserve huge tutorials by themselves and will be incredibly hard to write a tutorial for, considering they are usually the parts that people don't have experience with.
HVA310
HVA310
I believe some workshop like this, building any game from the ground up, would be fantastic! You are a very brave man, jwalsh!

For your own sake, I would suggest doing a simple RPG to start off with for a variety of reasons. To begin with, it will satisfy the people who want the full blown game (with immense online play) while still catering to those who are just beginning. I believe it would be even cooler if you could modularize it so that the online portion could even be added on later. The only reason I say this is because, personally, I'd rather have the entire workshop focus on learning the actual game programming rather than the network requirements, which some of us (and don't hold me to this) might not be able to accomplish/maintain.

With that said, if you were able to break the game down into clean, concise, and logical portions to share each *insert time frame here*, the the final outcome could be very beneficial from all standpoints.

In terms of the logistics, as I said, I would do a bare bones RPG to start. Create the general focus and slowly work off of it, knocking off a certain criteria each step of the way. For one section, work on the "hero". For the next section, work on enemies. The list goes on. I'm sure you have already begun to think that over, however.

In terms of language, I think C++, or anything else with a broad range of references, would be suitable. Something that is portable is a definite plus, in my opinion.

By all means, make it happen, though! I would certainly stay tuned as it would be a great resource for many.
James
ViLiO
ViLiO
I think this sounds like a very ambitious idea for a workshop, but if it does get the go-ahead and those running it are prepared to stick it through to the end, then I can see it helping a great deal of developers. Probably more than just the beginners too, as an Online RPG would touch on so many aspects of game development that there would be something in there for everyone really.

Quote:
Original post by jwalsh
What features should the Mini MORPG contain?
In all seriousness, as this would be a GDNet MMORPG ...it simply MUST contain either Hockey or the ability to marry The Hulk (or both). It just wouldn't be right if at least one of these wasn't in there [smile]

Good Luck,
ViLiO
Richard 'ViLiO' Thomasv.net | Twitter | YouTube
Crazyfool
Crazyfool
Quote:
Original post by Alpha_ProgDes
First: MMO = Mini Multiplayer online
Second: I'm leaning toward something more action and less RPG
Third: Please use a language other than C++. C#, Java, or anything language that's SDL compliant.
Fourth: A chat system.
Fifth: REAL good explanation on the networking code and behind the scenes that is going on


Why not C++?

C# is fine by me.. but Java, I shall smite with the heat of a thousand suns. My school teaches UCI and just about every engineering place I applied for internship asked about my C++ experience and said me knowing Java wasn't going to help me.


Networking has been explained VERY well. If you DO use networking, do something more complex like IOCP because there's not a lot of good sources for that. Simple sockets have been covered very well (I used to think the opposite, but I kept reading and learning).
Alpha_ProgDes
Alpha_ProgDes
Quote:
Original post by bschneid
Quote:
Original post by jwalsh
(Miniature Multiplayer Online Role-Playing Game)


Sorry, someone had to do that, though some things should probably stay in the lounge...:D

Anyway, I wouldn't probably follow too closely as I've never been huge on MMORPGs, but I think it'd be a great way to alleviate all the MMORPG questions - all you'd have to do is link to this tutorial. You wouldn't even have to flame teh noobs, and who knows, maybe something would get accomplished, maybe not, but either way it would help. As for the specifics of the workshop, I'd say C++ and SDL are probably the most widely used language/API for the sort of beginner projects you mention. Plus, it might be a good resource for game dev-ing in general, you know?

EDIT:
Quote:
Original post by Alpha_ProgDes
Fifth: REAL good explanation on the networking code and behind the scenes that is going on


I think that there is the challenge of such a tutorial. Do you focus on the MMO aspect(networking), or the RPG aspect(things typical of an RPG game, like quests)? Those are probably the two topics which deserve huge tutorials by themselves and will be incredibly hard to write a tutorial for, considering they are usually the parts that people don't have experience with.


I believe the MMO part should be focused on more than the RPG. What makes this tutorial special and worth undertaking is not the RPG aspect but the MMO aspect. Which is why I suggest game that's more action based and a language and API more suited to the task like C#. It's put more focus on the MMO aspect of the workshop. More coding and less learning language. [smile]
Beginner in Game Development?  Read here. And read here.  
Trapper Zoid
Trapper Zoid
I have no desire to make an MMORPG (even if the first M stands for miniature [smile]), but I do love seeing well run tutorials. I'd keep tabs on what you were doing just to see how you approach the subject as a tutor. Plus I don't know a lot about multiplayer network coding so I could always learn something new.

My main concern is that something as big a topic as a MORPG strikes me as being more suitable to an advanced tutorial rather than one for beginners. I think you'll have to decide what background knowledge you expect; are you aiming for total programming newbies or people with some programming experience?

Secondly I think you'll need to define down exactly what you expect people to get out of the tutorial - "by the end of this course, I expect you to now understand how to do X". If X is too general (i.e. "make a MMORPG") then the task will be too gargantuan to satisfy. If it's a bit more specific ("learn how to write a program where multiple players can interact in real-time") then I think it'll be much more achievable.
mmoWoWmkr
mmoWoWmkr
So you are trying to make something where people on this forum can work together to make a simple mmorpg? If so...Im not a very good artist on the computer but i am good at making small objects (Fruit,gold,small accessories)with 3D looks and shading.
Driv3MeFar
Driv3MeFar
Sounds like a good idea to me, even though I have no plans of ever making a (massive or mini) MMO.

Edit: Also, C++ is fine with me, as would be C#. Java, not so much.
BenThereDoneThat
BenThereDoneThat
Quote:
Original post by mmoWoWmkr
So you are trying to make something where people on this forum can work together to make a simple mmorpg? If so...Im not a very good artist on the computer but i am good at making small objects (Fruit,gold,small accessories)with 3D looks and shading.


No, it would be a learning workshop, where we would teach beginners about the topics involved with the creation of a MiniMORPG.

----------------------------My site: www.sudoexec.net
Feralrath
Feralrath
personaly i think that the ammount of questions that are asked about mmos on this forum says that it has come time for a workshop like this.

as for your questions:

chat system, character management system, echonomics, in other words if your going to do it, you mine as well do it all =P.

it should be able to support up to a couple hundered uses.

as for the language.....i'm biased..........c++/opengl maybe and maybe with sdl window control.
ranakor
ranakor
i'd be interested in one as long as it at least skip everything about basic programming (language & it's feature being learnt aside)

i'd like C# for the language as it fits what begginers keep getting told in here (aka no C / C++ to start )
Silvo
Silvo
Sounds fun!

I would have simply assumed that you would do it with C++... especially after the C++ workshop. Anyway, I would recommend C++ (so I could do it) for the language. As far as features... chat is a must, some sort of battle (depending on what kind of game it is), but maybe not economy. Something else to consider is whether there will be NPCs. That would add a whole realm of AI to the skills you will need to teach. That is why I do not think economy is such a must; if you focus on PvP, then economy is not really needed (think Unreal Tournament online). But some kind of character/empire development would be essential.

I think use C++, and either SDL or 2D OpenGL (keep it cross-platform). Maybe a scripting language (Lua, Python)?? Amount of users? I have no idea.

Anyway, good luck if you decide to do this.

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.