• Advertisement
Sign in to follow this  

Is Raknet trustable?

This topic is 2925 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

Now I'm *planning* to start an important project of an online action game and I'm planning to use Raknet. Can I trust it to be fast enought and reliable enought to stand if my game grow, or would it be better to program it all by myself using winsocket? [Edited by - WindScar on December 22, 2009 7:24:28 PM]

Share this post


Link to post
Share on other sites
Advertisement
Im sure your using the wrong word when you say pretending, but RakNet will handle what you can throw at it.

Share this post


Link to post
Share on other sites
I don't think you mean to say "pretending"... I think you mean "thinking", as in "I'm thinking of starting an online action game project, and I'm thinking of using Raknet".

In answer to your question, yes you can trust Raknet to be fast "enough" and reliable "enough" (though you haven't really said what you mean by "enough"). If it's good enough for these guys, it's probably good enough for you.

Besides, there's no reason why you couldn't start out using RakNet and later replace it with something else if Raknet proves to be a problem. Spend your time actually making your game now and worry about that kind of thing when (if) it becomes a problem. After all, there's no point worrying about what'll happen when your project becomes popular if you never actually release anything in the first place!

Share this post


Link to post
Share on other sites
*LOL* Really used the wrong word, it was supposed to be "planning". Pretending is very similar to the translation of planning in my native language.

Also, perfect answer Codeka, thank you very much.

Share this post


Link to post
Share on other sites

If havent used RakNet or seen its specs, but the questions I would ask from one side is how large do you think/expect your game to grow, and from the other how scalable is RakNet -- if you have to split your servers into clusters is it a problem?

Does RakNet mostly low level (so that you build what you need above it) or higher level which may interfere in complications when a cluster is used. Does it already include some cluster type features to possibly simplify the work to make that function.

The complications of scaling up a server will probably be independant of the low levels and you might consider a design to allow cluster operations if you expect your game to go that large. Measure twice and cut once -- a little design at the front end could save you from massive rewrites of your game server system later.

Share this post


Link to post
Share on other sites
Compared to all the other stuff you'll need to solve, RakNet won't be your main bottleneck. If it makes network development easier for you, then use it. I seem to have seen RakNet credited in some commercial game I played (XBLA game, perhaps?) so it's clearly usable.

Share this post


Link to post
Share on other sites
It seems to work good but I think networking libraries are a waste of time since you can't make it directly to your needs.

Share this post


Link to post
Share on other sites
well if you want to make something more custom you really can't unless you feel like diving in shit tons of code, I just mean it's more custom when you build it yourself.

Share this post


Link to post
Share on other sites
Quote:
Original post by ARC inc
well if you want to make something more custom you really can't unless you feel like diving in shit tons of code, I just mean it's more custom when you build it yourself.
Yeah, but I'm guessing for the majority of people those libraries do everything they need and therefore they won't need to dive into the code to customize it, thus saving them copious amounts of time over reinventing the wheel.

Share this post


Link to post
Share on other sites
What weakness did you find in Raknet that would merit custom code?

If your argument is "it would require writing lots of code to customise Raknet", it is a pointless tautology and easily rebutted by "it would require writing lots of code to write your custom code from scratch".

Share this post


Link to post
Share on other sites
RakNet's been used in a long list of commercial games, so it's definitely a library with plenty of merit.

Share this post


Link to post
Share on other sites
raknet is fine, a few games (Demigod) for example have ran into issues with the wrapper when over 100,000 users are connected at the same time. But that is an extreme example that most likely won't happen for you.

Share this post


Link to post
Share on other sites
Raknet was made with MMOs in mind. I am using it for my MMO Engine. Haven't tested it with large number of players yet since I am just working on a prototype at the moment and my engine isn't even complete but I am sure it can handle anything you throw at it!

Share this post


Link to post
Share on other sites
Quote:
Original post by dubcanada
raknet is fine, a few games (Demigod) for example have ran into issues with the wrapper when over 100,000 users are connected at the same time. But that is an extreme example that most likely won't happen for you.


Which has nothing to do with RakNet. It sends data as efficiently as possibly, but no network library in the world can deal with anything thrown at it. If you come across a game that has 100,000 users connected at the same time, chances are that they split them up by design - it's not because their library does magic.

WoW breaks too when people get too close to eachother in high numbers.

Share this post


Link to post
Share on other sites
To the original poster: Raknet is not for every game application, it all depends on your design. You need to look through your design, look through the Raknet API, and try to figure out if it will save you time or not.

You might even come to the conclusion that it's better to write your own networking stuff.. Probably not, but who knows? It would save you a third party lib dependency, and that's not too bad.

Share this post


Link to post
Share on other sites
Quote:
Original post by Promit
RakNet's been used in a long list of commercial games, so it's definitely a library with plenty of merit.


Also used as the basis of Unity's network layer

Share this post


Link to post
Share on other sites
Actually, RakNet is good for any application. It's cross-platform and it's reliable. It can certainly handle what you need it to do, and the API is incredibly easy to work with. Everything is well documented and it's not too complicated. If anything, don't trust some of the plugins. I've heard the networked ID one is bad once you add a lot of IDs to it. Other than that, it's really good, I use it for everything.

Share this post


Link to post
Share on other sites
Another vote for Raknet, fast, secure and flexible. deals with the low level stuff letting you get on with the slightly higher level stuff.

PureBlackSin

Share this post


Link to post
Share on other sites
Okay just a question that came up. If RakNet works so well why people creating games worry about learning winsock?

Share this post


Link to post
Share on other sites
Well windscar, why do you bother learning how to program a game instead of just learning Kismet and sticking to the unreal engine?

Some people like learning about network programming (:

Share this post


Link to post
Share on other sites
Some people like to implement everything from scratch. These people are oftenthe ones who haven't ever finished a game.

That said, the Law of Leaky Abstractions implies that even when using Raknet that you will be dealing with some of the underlying issues of the raw socket layer. Having a good grasp of raw sockets might aid in dealing with any issues that bubble through Raknet.

Share this post


Link to post
Share on other sites
It's good the people that like to write everything from scratch exist.

if they didn't, who would write the tools that other people rely on? The knowledge would be lost :P

Share this post


Link to post
Share on other sites
Quote:

It's good the people that like to write everything from scratch exist.

if they didn't, who would write the tools that other people rely on? The knowledge would be lost :P

I could write a network layer, a physics library, a graphics library, etc, etc... but when will the game be finished? Sometime this century might be nice.

At the end of the day, you have to know what you are trying to achieve. That is the part you write from scratch. In the context of this thread, the OP is clearly interesting in writing an "important" project, a "game". Not writing the next network middleware.

Share this post


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

  • Advertisement