Game Development Community

Scripting And Middleware.

by Michael Rowley · in Torque Game Engine · 01/22/2004 (10:30 pm) · 12 replies

Hiya all, I have been Out of the gaming dev side for well, since october of 2002. so, please forgive any questions that are two newbish, I have been researching MMO's and have a few questions, that i would love if someoen could help answer.

1) Client/Server Model?
If i have a game world with say 5 zones or levels or missions (whatever you want to refer them too). and say I ran an instance of each on a server. Is it possible to In game, say if the player clicks a object, that it would Load him into the other server with a new mission or zone or whatever?

2) scripting?
If i remember correctly TORQUE's scripts are on the client side, and can be altered basicly by anyone? If this is the case it poses a huge advantage for the player. i wouldn't want to allow anyone to alter the client scripts.. Has anything been improved or does anyone have ideas on this topic? is it possible to have the server do it all? or encrypt the scripts?

2) Databases?
If i remember right, someone was working on a python way to hook into the torque engine. Has anyone looked into the GNU ICE (internet connection engine)
It seems that it would be possible with that to have a good middleware that could connect the servers with the client?

Any info or ideas would be great, basicly I"M just a hobbiest and never plan on finishing any MMO but I would like to just have the basic functionality of one. Even if its block charecters... =)
Thanks guys and gals =)

#1
01/23/2004 (4:56 am)
This is a very quick and short response because I have to get to work...

Yes you could move players from server to server.

With scripts, you always want to put any game related functions on the server side to prevent tampering. All that should be on the client side is GUI stuff for the most part. Also you only release the compiled script files.
#2
01/23/2004 (7:57 am)
There is no native functionality for MMO in Torque. You could program your own "meta" server that connects several servers with their own areas. Each of the areas could have 128 or so players.

Actually, anything important is scripted on the server side to prevent cheating.

Torque has a resource to connect it to mySQL. No need to use Python. Just use Torquescript.

Many people in the community are working on these issues. Admiting it is a hobby is the best first step.

-Jeff Tunnell GG
#3
01/23/2004 (8:10 am)
In answer to your first question, check out this resource: www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=2421

Maybe you'll find this FAQ interesting as well: www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=4603

Regards,

Thijs
#4
01/23/2004 (8:40 am)
"Admiting it is a hobby is the best first step" :)

HA - Hobbyists Anonymous!
#5
01/23/2004 (9:58 am)
BTW ... ICE is not license compatible with TGE.

Unless you shell out for a commercial license, of course, which is rather expensive.
#6
01/23/2004 (11:37 am)
Thanks for all the great responses. Ok now some more questions

1) Is ICE still compatible if you never sell it?
just wondering....

2) I think it is great that torque script has built in mysql, thats just sweet. saves me one less thing i need to do.

3) an MMO with 100 people in a zone is LIke 90 people more then i would ever want (hobbiest) I think i could do it with Torque script and mysql, at least holding the data, and sending it to the player.. (Design is my best part) The codeing part i will worry about some other time) LOL.


4)total newbie question. Whats the differnce between a BSP zone type and a PORTAL I"m pretty sure Quake is bsp, and torqe is portal. but whats the difference? and is there a way to convert bwetween the 2 formats?

5) Thanks guys once again for making me Happy i purchased torque so long ago.





i'm a pure hobbiest... I don't ever plan to sell anything. =)
#7
01/23/2004 (11:42 am)
Greetings!

If you haven't already done so, you may want to check out my continually maintained resource:

www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=3405

Feel free to add to it if you have other resources.

- LightWave Dave
#8
01/23/2004 (11:46 am)
1) If ICE is licensed under the GPL license (what I think it is since you called it GNU ICE) then as far as i know you can use the library for personal purposes anyway you see fit. Just don't release anything.

4) BSP (= Binary Space Partitioning) is a way of sorting polygons. The polygons are sorted and saved in a tree. Given a certain polygon in the tree, you can easily (ie. without much cpu cost) determine what other polygons are visible so you can render them (and render them in the correct order so you don't need a z-buffer for your polygons). Portal are often used in conjuction with BSP maps (levels) to allow geometry like windows so you can look from one area (eg. a room) into another.

I hope this helps.

Regards,

Thijs
#9
01/23/2004 (12:05 pm)
Thijs:
Quote:
1) If ICE is licensed under the GPL license (what I think it is since you called it GNU ICE) then as far as i know you can use the library for personal purposes anyway you see fit. Just don't release anything.

Have you even read the GPL license? Anything GPL you use with anything of yours automatically becomes GPL, therefore, you must provide source code without question.
#10
01/23/2004 (12:11 pm)
... Which would be why he said 'don't release anything.'
#11
01/23/2004 (8:54 pm)
Nathan-

That's wrong. The GPL doesn't force you to release your source under the GPL. It forces you to release your source under a compatible license.
#12
01/23/2004 (9:47 pm)
I would get a game idea and some content together, then let the game and content drive the tech.

I've let tech do the driving for the last couple (ashamed to admit few) years. It got me nothing more than several major spinouts. Well, that and a decent education.

-J