Game Development Community

Need Real Time Multiplayer - TGB or TGE?

by Bruno Campolo · in Torque Game Builder · 08/15/2006 (12:03 pm) · 8 replies

Hi, I've been getting seriously interested in TGB for my next game project but was disappointed to hear that it didn't support the same networking as TGE. I'm essentially making a fairly simple 2D Real-Time Multiplayer game, but my question is: Should I buy TGB and somehow put Real-Time Networking code into it? or should I buy TGE and "dumb it down" to work for my project? I hear there are samples in the TDN that show how to add networking to TGB? Is it easy to add? Basically, I'm just confused as to which product to buy. I want the ease of use of TGB with real time networking...

-Bruno

About the author

Creator of Bantam City Games, a one-man independent game development studio. To learn more, check out 'A Game Developer's Saga', a game development blog at: http://www.bantamcity.com/blog


#1
08/15/2006 (12:09 pm)
I cannot say from direct experience, but I personally believe that getting TGE to be a 2D engine would be significantly harder than putting the Torque Network Layer into TGB. It would most likely be easiest to get a license to both TGE and TGB, but I am by no means saying this would be easy either.

You might find another solution more appropriate to your needs. I cannot recommend one specifically, but the level of effort it would take to get either TGB or TGE into the state you need is likely to be pretty high. How soon are you needing to start movement on this? I do not know full details, but perhaps TorqueX might fit your needs better...
#2
08/17/2006 (7:36 pm)
By "real time networking" what exactly are you saying -- I was hoping to build some networked games myself but did not really put too much thought into the networking provided by TGB over TGE, I was sadly under the idea that they were the same as I've not really researched TGE much at all as I'm more interested in starting out with fun/goofy 2d games first.


What are the differences between the TGE and TGB network layers, and ... why were they built differently?
#3
08/17/2006 (7:37 pm)
.....
#4
08/17/2006 (10:15 pm)
TGB's network layer is optimized for turn based gaming, and my understanding is that out of the box, it does not support real-time networking.
#5
08/17/2006 (11:08 pm)
By "real time" I meant as opposed to turn-based. Some of the people in the other forums suggest that it is event driven, which may be used to mimick real time multiplayer? I guess I could play around with it, so I'm still on the fence about which one to choose (TGB or TGE), but I'm trying to decide which would increase my development efforts and which would just be more trouble than its worth.

-Bruno
#6
08/18/2006 (1:39 am)
You can use commandToServer() and commandToClient() with TGB 'out of the box'. This allows for a broad range of networked games, but real-time networking requires more information than can be efficiently sent using this method. The information on TDN regarding extending the capabilities of TGB's networking does not provide example code. It explains what is missing from TGB's network code, and gives some pointers on where you would need to start implementing them. I own both TGE and TGB and after looking over the code, it does not appear at all trivial to implement a fully-featured TGE network layer into TGB. Depending on your coding skill, your mileage will obviously vary =)
#7
08/18/2006 (5:04 pm)
Hrm, I'm actually a bit sad to hear that -- if it's a simple turn-based networking system, then games such as RTS's (Warcraft, StarCraft, etc) would not really be possible without modifying the source code.

Is there any talk about extending the networking capabilities in a later release, or was this the actual intent of GG when they designed TGB?
#8
08/18/2006 (8:55 pm)
Using commandToServer() and commandToClient(), why isn't it possible to make realtime networking work?
If the server-side keeps track of everything and client-side sends as little information as needed, it should be doable to get it working... I think :P

If the server is doing the same simulation one would only need to update when collisions and/or user interacts (ie keypresses) with the game... Some kind of ghosting :)
And once in a while update absolute position to make sure everything is in synch
Although this puts some workload on the server...

Am I way out of there? Havent worked with networking in TGB but in my own homemade engines it's not THAT difficult to get at least a decent experience. Maybe not Halo, but playable at least...

Since there is quite som moaning about realtime networking around in the forums, I think we all could help build a usable realtime network layer... At least until GG decides to say either if they are gonna support it or not in the future, havent heard anything about it from them at all in a while...
Or what do everybody think of this?