Advertisement

Developing an RPG

Started by April 29, 2014 11:23 PM
10 comments, last by kaitodomoto 10 years, 8 months ago

I want to develop an RPG, with a large player base in it(e.g can change clothing, shoes, weapons, etc.), I'll be using C++ to develop it. But I have a couple of questions that are bothering me.

Okay so this is what's bothering me:

  • I currently using GLFW library, and have some problems with it, but I heard its a better alternative then SDL, and forgot the other one. But is it the right choice?
  • I know when it comes to large player base RPG's there's going to be a lot of files involved. So I want to do what MMORPG's do and create a node tree of files(not sure if im using the correct term) to compress the files and read them off the newly compress file. Ex: Some MMO's have a bunch of file that have endings like .data, .og, and so on. how do i make/read of them?

Hopefully I am making some sense, its kind of hard to explain what I want to do. but for now. thats the beginning of what I want to do with the RPG.

Thanks for reading,

~kaitodomoto

I don't have the energy for the standard MMO spiel, so...

"Number of files" and "large player base" are unrelated. .data files are probably some proprietary binary format that the individual game uses. It may just be a bunch of data structures in a file without any kind of compression/encryption. In that case, you can just use fread or whatever C++ uses that's equivalent. The challenge that comes with having a lot of players is the networking, and you'll probably want a database to store the player information.

As far as GLFW, it should be fine. Keep in mind that it's not as featured as something like SDL or SFML -- it only handles graphics, not sound or networking, though you can find other libraries to do those separately if you like.

Advertisement

I don't have the energy for the standard MMO spiel, so...

"Number of files" and "large player base" are unrelated. .data files are probably some proprietary binary format that the individual game uses. It may just be a bunch of data structures in a file without any kind of compression/encryption. In that case, you can just use fread or whatever C++ uses that's equivalent. The challenge that comes with having a lot of players is the networking, and you'll probably want a database to store the player information.

As far as GLFW, it should be fine. Keep in mind that it's not as featured as something like SDL or SFML -- it only handles graphics, not sound or networking, though you can find other libraries to do those separately if you like.

Oh, Its just how you know if you have all the movements for the weapons and skills, it'll eventually go over 1000 files, which are kind of annoying to keep track of, but I understand what you are saying and thanks for the advice. I'll keep what you said in mind.

I know when it comes to large player base RPG's there's going to be a lot of files involved. So I want to do what MMORPG's do and create a node tree of files(not sure if im using the correct term) to compress the files and read them off the newly compress file. Ex: Some MMO's have a bunch of file that have endings like .data, .og, and so on. how do i make/read of them?


These are often just renamed .ZIP files or some close variation. See PhysicsFS for a library that lets you handle packed resource archive files (in several formats) easily.

And to expand on what Seraph alluded to, an MMO is an absolutely no-questions inarguably unrealistic project for an individual hobbyist game developer to start with. Aim for a more restrained scope of game. Even a single-player RPG is a very large endeavor that is a very poor first choice of game to make. Try a platformer or top-down adventure first. Something that needs relatively little content and only a couple key gameplay features to be fun.

Sean Middleditch – Game Systems Engineer – Join my team!

As I always recommend, read this article (http://www.gamedev.net/page/resources/_/technical/game-programming/your-first-step-to-game-development-starts-here-r2976 ) and do the list of clone games it has before jumping into RPGs and don't even consider an MMO unless you can get a good sized team of programmers, artists, etc. together to make it.

Oh, Its just how you know if you have all the movements for the weapons and skills, it'll eventually go over 1000 files, which are kind of annoying to keep track of, but I understand what you are saying and thanks for the advice. I'll keep what you said in mind.


You know those files in other games aren't there to help keep track of their contents, right? They're usually there to try to hide data a little from the end user, or maybe compress files, or pack things together to improve load times, or something else like that. The 1000s of raw animations and other assets still live somewhere else for development purposes - artists have to be able to edit them and rebuild the packed assets - and they are still a mess to organize. At some point you'll decide that the way character X swings weapon Y with skill Z needs some tweaking, and you'll have to find and modify the raw version. Keeping track of all that work is not some low-level problem of how to write the right file. It's a problem of policy and conventions and choosing the right tools. Someone could give you exactly how to make your own custom archive file, but it won't get you any closer to making an MMO at this time.

By the way, it's not perfect, but there's a pretty decent way to store a "node tree" of files. That's what directories are. Working on a game, I personally find it's easier to work on a game with raw files directories filled with content, which we call a "loose" build, as opposed to any build which packs up those files into something else. It takes more time to make changes to that version of the game.
Advertisement

I dont have anything against the original post, cause there were also specific questions in it. But wouldnt it be a good idea to pin one of these questions? Or put it in the FAQ. "I want to make an MMO-RPG, ....all alone, ...in C++. How?". Not that its a bad question, ...but it is being answered on a weekly basis.

But wouldnt it be a good idea to pin one of these questions? Or put it in the FAQ. "I want to make an MMO-RPG, ....all alone, ...in C++. How?". Not that its a bad question, ...but it is being answered on a weekly basis.


It used to be, many ages ago, but it didn't help.

What is up there now is positively worded. Trying to add "MMO means things that are beyond the comprehension of beginners" is not really positive or constructive.

Right now this type of beginner question often devolves along the lines "How to make MMO?" --> "How to make online game?" --> "How to make game?" --> "Any good resources to learn to program?". Real beginners have no clue what they are doing, nor do they understand what to ask and why. ...

... They also rarely check the FAQs.

To clarify, I am not trying to make a(n) MMORPG, when I mean RPG I really mean a(n) RPG, like old style Final Fantasy, Fire Emblem, etc. And not trying to sound rude, but I'm not a beginner at programming, I'm just partially new to C++, I only been coding in C# for about 5 - 6 Years now, and I wanted to try a higher language. Again, not trying to stir up anything, I'm just informing you, and for the record I already KNOW that MMORPG are extremely out of reach unless you have a team, and years to work on it, and due to the fact I'm not in college yet for another year, I won't have any time to do such a thing, I just wanna learn how to program a game, which I have once, but it was a simple text-based game, and then go on to bigger things, like MMO's or indie game development.

Edit:

Small note: I was just using an MMO as an example for the file types, not to sound mean - which is getting pretty hard to do at this point - every time someone mentions the word(s) "MMO", "MMORPG", or something in that range, doesn't means they want to develop it... For the past year, I've been trying to learn to make an actual game and every time I even get close to the word "RPG" people start shooting me down and trying to discourage me without even know what I want to do. Which for one thing is getting on my nerves, I just want to see if I can develop a game or not, I'm not trying to make some fancy over-the-top game which everyone will play, its just for learning purposes. Sorry if I'm sounding rude, but this isn't the first time someone has misunderstood what I ment, which frankly happens a lot in my life, which I'm not going to go into that.

Programming wise, an RPG isn't any more complicated than other types of games. The difficulty with developing an RPG is that it requires a LOT of content, which is why it's generally good to work as a team if you plan on completing one.

This topic is closed to new replies.

Advertisement