Jump to content
  • Advertisement
Sign in to follow this  
Federico

where to start in a MMORPG

This topic is 4431 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hi, I think i posted 5 times talking about this topic before but i'll do it again because nobody gave me simple (or concrete) answers. I have a big amount of experience about role-playing games (Dungeons and dragons, cthulhu, etc.) and a little of Visual Basic .NET. So i want to create a simple MMORPG, a 3d one because its easier to create new animations or change the textures than doing it with 2d graphics. I was thinking about a game similar to Tibia (www.tibia.com) but 3d. Now, i don't know where to start. I think the first think i should do is: To create the rules and the economy Create a renderer Create an engine Create the meshes and texture Test it, and if it works start to build a webpage, the maps and the database. If im wrong, please tell me, Bye, Federico.

Share this post


Link to post
Share on other sites
Advertisement
While not entirely wrong, you're perhaps missing a key tether to reality. Even the simpilest online RPG is a fairly mammoth undertaking for someone with far more experience, skill, and knowledge than 'little of Visual Basic .NET'. There are no simple [rudeless] answers to your question.

And the common advice: "If you don't know where to start, what makes you think you'll know how to get where you're going?" also holds.

Share this post


Link to post
Share on other sites
You can take a look at open source projects like Eternal Lands.
It is written in C though.

Maybe somebody knows of other open source projects worth checking out?

But yes, I suggest start with a multiplayer tetris clone.

Share this post


Link to post
Share on other sites
Think small, brainstorm, prototype and experiment. Break your project down into major component pieces (ie, Renderer, Game Engine, Network Client, Network Server), and then further break down each component piece into smaller pieces - and then prioritize each piece. It is common to write an entire prototype and then start over from scratch using what you learned.

For an MMORPG, here as some starting points (off the top of my head, I am by no means an MMORPG developer):

Renderer
--Scene
----Camera
----Scene Graph
------Models, Geometry, Effects, etc.
--User Interface
----UI Components

Game Engine
--Resources
----Models, Meshes, Textures/Images, Effects, Sounds, Music, etc.
--Scripting
--Gameplay

Networking
--Client
--Server
--Database

Believe it or not, game rules and economy (ie, "gameplay"), are probably the least important things from a development point-of-view (however, it is likely the most important thing from a production point-of-view). It is tempting, but try not to look at your project from a gamer's perspective. Think development, not production (although the two are closely related), and you should be fine.

Share this post


Link to post
Share on other sites
The Ogre3D library has pretty much all the Render and Game Engine stuff from swordfish's list.
If you are more into making the game than learning the nuts and bolts from scratch, which is a daunting task, you should check it out.

Its not like it does the job for you either, its just a good C++ API for the graphics and scenery. You still have to do the game logic, mechanics, networking, sound, input and what not yourself.
The tutorials there will get you started

Share this post


Link to post
Share on other sites
If you don't have much programming experience, the best place to start is a simple single player RPG - perhaps a roguelike. Even a simple project like this can be difficult to make, but would be a great learning experience.

Once you're done with that, try making a graphical (either 2D or 3D) version. Also make some simple multiplayer networked games. Once you've done this, combine all the knowledge you've acquired - then ask yourself if you think making a simple MMORPG is a feasible goal - if so, go for it.

Share this post


Link to post
Share on other sites
"A little knowledge" of Visual Basic .NET very likely isn't really enough to get started on a simple MMO right away. While it may seem to be a bit of a disappointment and not really what you want to do, I'm afraid I agree with the other posters who have suggested trying something simpler first as a learning experience. That being said, you can start out with your MMO project and succeed, it'll just likely be a little harder as you'll have to do all your learning with this project.

An MMO is a particularly complex example of a game, and even a simple game often isn't the easiest thing to program, especially if you're still learning to program.

So, what do I think you should do? I see two potential paths, although as mentioned I'd personally recommend some more learning with additional smaller projects first:

1. Start with a MUD:
Work towards creating a text-based MUD (Google if you don't know the term). The idea is to create both a server and a client and have a working game where players can walk around, chat, fight, and perhaps do other things, but all with a simple text-based interface. You can then design a new graphical client which connects to this server and displays that data to the client graphically rather than through text.

2. Start with a single-player RPG:
Work towards creating a fairly simple single-player RPG. The idea is to create a playable game with all the basic functionality you'll require of your client, but you need not worry too much about world creation and the actual gameplay at this stage. You would then learn about networking, design a server, re-design your game to connect to that server, and then move any functionality that should be server side over and get things working again. At this point you could then flesh out the actual gameplay with your rules and whatnot.


Either of those options is quite difficult and entails quite a lot of work, but are viable paths towards a working MMO. As already mentioned by another poster, rules and economy, etc won't actually be important till quite some way through the process, although you could of course design them earlier on anyway.

You'll need to learn your chosen language quite well, learn about networking, database usage to store information, and learn a graphics API. You could also look into using existing engines and/or libraries to provide some of the functionality for you.

Hope that's of some help.

Share this post


Link to post
Share on other sites
If you decide to make some other game before making an MMO (a wise choice, IMHO), then one of the most valuable lessons that you will learn from that game is how incredibly difficult making (large) games can be, especially for a single-person team.

Share this post


Link to post
Share on other sites
Well, first of all, thanks for the answers. I have to say that i don't know if 'a little' is an exageration, I have 2 years and a half with VB .Net.

I like the idea of swordfish of dividing the development in parts and then start to make each piece separately. I think that Kazgoroth was trying to say the same than swordfish, because the MUD would be the network stuff and the single player RPG would be the graphical stuff. If i mix that i have my MMO completed.

Well, i already bought the 3d studio max 7 and i downloaded the DirectX 9 SDK. I also made my own renderer (which is not difficult to develop), and i can load X files. So im not thaaat noob. But i understand that a MMO is a very complicated game (specially if i want to do it alone).

Thanks again!
Federico

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!