Game Development Community

Porting & Multiplayer

by Okashira · in General Discussion · 01/19/2007 (11:48 am) · 6 replies

Alright, I have some questions about porting & multiplayer. Basically I have never done anything multiplayer or anything with porting from one os to another.

So, porting first. I am currently working on a Windows XP with a Visual C++ 2005 Express Edition. So I have two questions -
1.If I don't change the code at all and only script, what will I have to do to port my game from Windows to Mac OSX and/or Linux with TGE 1.5?
2.The same question as above, only assuming that I have made minor code changes(for example, adding swimming, different inventory system, etc...)

Now for multiplayer. I am aware that the starter.fps and starter.racing that come with TGE run off of the GG server in multiplayer, but what goes in to creating my own server and how much does it cost? Is it as simple as having an extra computer hooked up to highspeed cable(like it can be for MMOs), or is it more complicated for a FPS-style game?

Thanks guys,
Okashira

#1
01/19/2007 (12:14 pm)
1. Nothing. Slap your scripts into an equivalent version of torque for those two platforms and you're good to go
2. Depends on how much time you spend hardcoding platform-specific junk into parts of the codebase that aren't in platformXXXXXX.
If it's many small changes, none of which are platform-specific, then you'll just have to compile on the other platforms with minimal, if any, changes, and you're good to go.

Quote:I am aware that the starter.fps and starter.racing that come with TGE run off of the GG server in multiplayer

Not really. Run the game, click the "host server" checkbox, and you're hosting your own server...

Quote:but what goes in to creating my own server and how much does it cost? Is it as simple as having an extra computer hooked up to highspeed cable(like it can be for MMOs), or is it more complicated for a FPS-style game?

Yes, it is that simple.

Gary (-;
#2
01/19/2007 (12:35 pm)
Thanks alot Gary!

It's strange, I know I read somewhere that starter.fps and starter.racing all go through a GG server, like battle.net does(like you can host your own server, but people connect to that server through a constantly running GG server). Well, it's good to know I won't need a computer constantly running a master server everytime I release a little multiplayer game :).

Thanks again,
Okashira
#3
01/19/2007 (1:04 pm)
Ah. GG have a master server that, you know, sometimes works and sometimes does something interesting.

You can host your own master server, if a master server is something you want... Simple perl prototype. A master server requires a lot more of a machine than a simple fps dedicated server, though.

Lots of games don't need or use master servers... you can always just connect directly to hosts :-)

Gary (-;
#4
01/19/2007 (1:09 pm)
So, I guess how does starter.fps work, exactly? Does it connect directly to hosts, or use a master server?

Thanks,
Okashira
#5
01/19/2007 (1:28 pm)
tdn.garagegames.com/wiki/Torque/Networking
tdn.garagegames.com/wiki/Torque/Networking/Server_and_Client

To clarify, a "master server" isn't a game server /per se/. It does two things, basically:

1) Normal game servers connect to it, and tell it about themselves:
"Hi, I'm 127.45.32.12, aka "Snuggles and hugs". I'm a CTF server running the map "snugglepuff"."
2) Clients connect to it to find public servers:
"What servers are out there?"
"127.45.32.12, called "Snuggles and hugs" is a CTF server running the map "snugglepuff".
127.56.234.55, called "Bowachickabowwow" is a deathmatch server running the map "discoandporn"."

Then your client presents you a list in your connect-to-server screen, showing you Snuggles and hugs, and Bowachickabowwow, and some information about them.

This isn't really a small topic, and, uh, I'd suggest digging through TDN since a lot of people, a lot smarter than me, have written a lot more interesting, accurate and better, stuff there.

Gary (-;
#6
01/19/2007 (1:35 pm)
Thanks for all your help Gary!

Time to start digging!