BlitzMax UDP Library for use MMORPG

BlitzMax Forums/BlitzMax Programming/BlitzMax UDP Library for use MMORPG

Trader3564(Posted 2008) [#1]
Hi,

Its been about a year ago since i started working on an RPG called Fantasaar, maybe some of you remember. I ran into a major issue back than that is that i did not had the knowlage to create a decent UDP lib myself, altough i have some basic understanding of Networking, the tech involved with making a stable UDP engine for MMORPG is rather complicated, not to mention the security. You do not want people to tune in with packet readers and mess arround. Remote functions, etc.. I know there where some prommesing libs back then, but non seemed finished or have any support. Now, about a year later i hoped maybe it has come to a change. Could some people who have been checking the forums since 2007, maybe provide me with an update on wheter there have been new sounds recently?
Just imagine what we could do with a good lib. Again, i dont mind paying for a good lib even if its over 500 dollars. Question to me still is, can BlitzMax do it? and Do we have a Lib for 2009?
Its a hobby project, nothing commercial as yet... but i so love to get it running. I dont really want to use another tool. I like BlitzMax a lot.

Thank you!


Foolish(Posted 2008) [#2]
I hear people talk a good deal about Raknet, but don't know if anybody has done anything substantial with it.

My sights are much lower than yours. I'm just trying to work on a LAN game and am looking at GNET again and the update to it called MaGNET.


Trader3564(Posted 2008) [#3]
Yes, Raknet, its a beast. But i remember theres been a lot of troubles in wrapping this BlitzMax.
Raknet is professional lib used by developers doing retail games.


Mahan(Posted 2008) [#4]
Let me start with stating that i know very little about mmorpg network programming. But I found this interesting link:

http://www.experts-exchange.com/Programming/Game/Q_21807714.html

Also I would recommend going for an established library (as Rakknet) as they probably contain an enormous amount of extra functionality that would be a pain to have to implement by yourself. Stuff like login-servers (lobby functionality), bandwidth throttling, interpolation, encryption etc. It's one thing to know what these things do, and completely another write it and debug it and actually run it with a huge amount of networked computers to tune it. Libs like rakknet are probably quite well tested and tuned.

My guess is that time invested in wrapping up rakknet (or similar established lib) is far more well-invested than writing something from scratch.


Question to me still is, can BlitzMax do it?



Afaik noone has actually written a MMORPG in BlitzMax yet, so no one has a prof of concept to your question, but BlitzMax is on the other hand "just another computer language" with a DLL interface. If you would go for rakknet (as an example) the networking code is still written in C++.

Professional programming today is very much about finding the right framework/libs and binding them together in a sensible way much in the way some of us built lego when we where kids: If you are to build a website today you will almost certainly go for an established web-framework. When I used to build a lego-houses (as a 10-year old) I also built it with premade-pieces that where windows, doors and sometimes even wall-modules. The pieces where my "house building framework" and I sure had it easier so build a cool-looking house than some kid in the stoneage that had stones, sticks and mud to his disposal. (Stone, sticks and mud in this example is the "writing everything from scratch option) :)


Brucey(Posted 2008) [#5]
But i remember theres been a lot of troubles in wrapping this BlitzMax.

There has? My own wrap of it works very well. Perhaps those were troubles with an older version? The latest version is very nice indeed. Two thumbs up from here :-)


Foolish(Posted 2008) [#6]
Raknet does seem to have a lot available. However, last week I started playing around with trying to convert the "chat" example into something with basic game play mechanics and my framerate was all over the place. Hence, I have been asking on the forum if anybody has a real gameplay example using Raknet.

So far, the silence is deafening.


rs22(Posted 2008) [#7]
There has? My own wrap of it works very well.


Will you ever release it? :o


Trader3564(Posted 2008) [#8]
Brucey, you have? Where can i find it?


Trader3564(Posted 2008) [#9]
maybe we could throw together some cash and have Brucey write us an MMORPG starterskit using his Raknet wrapper? hence, Brucey could start selling it. Im sure many people would be interested!!


Retimer(Posted 2008) [#10]
Hmm, the latest RakNet wrapper released works fine, although it's missing a few features. If your wrapper is as stable and is capable of using even more of the features....PLEASE release it Brucey...we love you looong time!

maybe we could throw together some cash and have Brucey write us an MMORPG starterskit using his Raknet wrapper? hence, Brucey could start selling it. Im sure many people would be interested!!


I'm sure it would be a great product if he took it on, but I just don't think it would be practical to the audience he seems to be assisting right now. Also, less than a dime from a dollar who would use it would probobly ever cough out anything commercial - against whatever those indies would lead themselves to believe they could accomplish, or so says the obvious stat of users who use such engines that get no where but a splash page for a website and high hopes that get no where.


Trader3564(Posted 2008) [#11]
True. I guess im in a unique position of having a dedicated box myself (heavy machine) and pulled off already an old morpg with 2000 ppl. Thing is i had to quit that because i found the aprouch was wrong, so i wanted todo a make over, but that ment also getting a better online lib. I guess RakNet wrapper, if its working now, is something i could use then. Where can i find it? And it was free.. i meen, the costs where high, so you need to come up with an alternative from a comercial point of few. Theres no way competing, but if you ahve a unique game concept you can charge a onetime fee or allow additional items to be bought, or you find advertisers. Nonetheless 2000 ppl is not enough, you need a lot before advertisers are interested. Then comes the issue of security, because onces real money is involved, ppl go try and hack the stuff. I know this guy who crack every software from adobe to games. Only real thing that works is make sure you keep it all serverside coded. And thats a pain.

Edit:
n.m. i found it: http://repeatuntil.free.fr/raknet/index.html
Thats it right?

b.t.w. OpenTNL seems to be another good lib, even surpassing RakNet
http://www.opentnl.org/
Can anyone create a wrapper for that, or do we have one already?

I quote from a forum

I'm pretty sure Raknet has no analog for TNL's higher level object management code (ghosting, scoping, prioritization). Also, TNL's RPC implementation is far superior to what is provided in Raknet, in that it parses the argument list to the RPC and marshalls each element into the bit stream automatically. Plus TNL provides a security model, various forms of DoS protection and more.



Mahan(Posted 2008) [#12]

http://www.opentnl.org/
Can anyone create a wrapper for that, or do we have one already?



Most open source software and free software is written to "scratch an itch" that the creator himself has and then he might be nice enough to share his work for others to benefit from. No offense, but if 1) There is no existing wrapper for OpenTNL 2) You have an "Itch" for it, why don't you write it? And if you're in a good mood maybe even release it to the community :)

I don't mean to be rude in any way it's just that you might have to wait a year to two before somebody else gets an urge to use OpenTNL in their own project and writes a wrapper.


plash(Posted 2008) [#13]
I second Mahan's suggestion, sockets are actually really easy to use.


TaskMaster(Posted 2008) [#14]
Doesn't Raknet have a limit to the number of connections it supports?

I don't think you could write a MMORPG with it.


*(Posted 2008) [#15]

b.t.w. OpenTNL seems to be another good lib, even surpassing RakNet
http://www.opentnl.org/
Can anyone create a wrapper for that, or do we have one already?


AVG flags the source zip file as having an adware virus in it :S


Retimer(Posted 2008) [#16]
Nonetheless 2000 ppl is not enough, you need a lot before advertisers are interested.


Many games survive with profit at <200 subscribers. I'm interested....do you know of a developer who used an rpg kit to generate their product and is now hosting 100k+ players/customers, with advertisers and massive profits? Maybe we all can learn something here..

Doesn't Raknet have a limit to the number of connections it supports?


Not that i'm aware of...that would be more based on the server/hardware & line, no?

I don't think you could write a MMORPG with it.


Not sure where you got that idea from. Some 'mmorpgs' only use tcp, let alone the optimization switch of unreliable udp. Obviously, RakNet is not some ho ho optimization miracle that can allow 100,000 unique connections on a single home computer running windows vista on a dsl line. RakNet's limitations (much like the majority of blitzmax' capabilities as a whole) are simply what the developer(s) are capable of.

n.m. i found it: http://repeatuntil.free.fr/raknet/index.html
Thats it right?



Yessir


TaskMaster(Posted 2008) [#17]
My "I don't think you can use it for an MMORPG" was directed at the fact that I thought it had a user limit. It did years ago when I used it. It had a 64 user limit back then. I haven't used it since, and after taking a look, it looks like it no longer has a limit.

It also used to have VOIP in it, does it still have that?


Foolish(Posted 2008) [#18]
Has anybody has any success actually using Raknet in a game? And if so, do they have any example code they could share?


Trader3564(Posted 2008) [#19]
@Mahan
I understand, but sometimes its best to focus on a few aspects, and have others do the other parts. Paying for such work is no problem. But there is a problem if you try and do everything yourself. I meen, ofcourse you need to overcome certain disiplines, but making a MMORPG all alone, and getting involved in stuff your not THAT good at, is just not wise. Whilest someone maybe is willing to earn a few bucks, 500 or 1000 maybe, or maybe more, and has a freehand to put his expertise in action, and write a small MMORPG engine, or just a wrapper, thats best for everyone. Good for the economy to. Especialy in these times.

@Retimer
Yes, painfully i have to agree. There is people with just a fewer users that make good profits. I assume they know the things another one (me for example) lacks, when it comes to marketing and promoting your game. See, skill is not my problem. Getting my stuff out on the market is a problem. But as its more of like a hobby, i guess i dont do enough networking. But making a good profitable MMORPG is quite a challange. But tahts what is so motivating, and so challanging. If pulled something off before, its just it was aimed for kids in the range of 8 to 16. Problem with that is, they dont throw even $5 at your project cause even if they want, they dont have a creditcard or paypal or anything. So they need to ask mom/dad, and they say no (obviously).
So... go figure... i just had to re-do the whole concept.

:)


Mahan(Posted 2008) [#20]
@P.Weijtenburg: Well as a developer that has worked under contract for several years I can tell you how far $1000 goes if you ask a company: ~5-8 hours of development at least where i live and depending on contract. Sure you might be able to find some student that will do a bit more hours for that money, so lets assume you find one that will work 50 hours ($20x50=$1000). 50 hours of work goes quite far for wrapping a nontrivial lib (like a sound lib/network lib/maybe even a 3d engine) but for writing an MMORPG engine? Even if this MMORPG engine is build from established libs exclusively and just glue-code is written i think even 500 hours is not sufficient. If you already had a game running 2000 players (very impressive!) and need a platform that can support what, 20k? You know World of Warcraft, Warhammer online and Lord of the Rings online don't oftan have that many players online on one realm, and even there the technology is distributed servers with several servers/realm. I've taken part in raids of > 250 ppl (as an example I took part in this one: http://www.youtube.com/watch?v=LDjBsEb1wFQ) and we had the server crash on us when we all got inside one zone. And this was in WoW probably the most polished MMORPG in the world today with gazzillions of work-hours invested in it.

Ok, to get to my conslusion: I think you are aiming to high. If you already have an engine that allows for 2000k simultaneous players I would suggest you do this:

1) Write an entertaining game that attracts adult players. (that have CC like you mentioned.)
2) Provide free demo accounts for your game (10 days free play) to hook players.
3) Make it cost ~$5 a month with nice easy registration through your site. Provide paypal-payment and stuff so people pulling you their CC feel secure when paying you.
4) When you get 1900k paying players you already have an income of ~$9500 a month and by then you should have no problem to buy another server + more bandwidth and redirect the creation of new player chars to your new realm.

Maybe this sounds like utopia but its still more realistic than getting anything MMORPGish for a $1000 investment. Well thats my opinion anyway.


Trader3564(Posted 2008) [#21]
uhm.. by 2000 i meen 2000 players as in members, registerd users who play the game. Yet about 30 are online simultanious. Not 2000 hahaha. That would kick.