Game Development Community

Extension requirements and proposals.

by Phil Carlisle · in Torque Game Engine · 03/18/2001 (11:33 am) · 3 replies

Hi Guys,

I am wondering what particular extensions you see that might be required for the V12 stuff, is there anything you feel that is lacking or would like to see improved?

I am wondering how you are going to manage upgrades and extensions to the engine as well, will there be some form of moderated submission format?

how do you envision people working, someone committing to complete a specific extension, or multiple
people working on the extension in tandem and taking the best fit?

I just see a lot of potential for people to be duplicating work.

Certainly interesting work tho :)

Phil.

#1
03/18/2001 (12:11 pm)
Managing a large "Open Source" community is not something Rick or I have much experience in. We'll put together a list of changes and enhancements we feel the engine needs as well as a development road map. We'll most likely use CVS, and as you suggest, some form of moderated submission with trusted developers. Any feedback or suggestion on this topic would be very welcome.
#2
03/21/2001 (9:17 am)
Well, the best models Ive heard of for this type of thing I guess are the Crystalspace and Flightgear projects (both 3d engines open sourced).

The only real difference is the "credit" system you guys mentioned (i.e. credit against royalties).

Its not massively important until we see whats there and what could use some work really. If it suits what I want to do, then thats fine.

I think there is probably enough info out there on running CVS and integrating things like bugzilla etc. Perhaps take a look at www.sourceforge.com and see what software they use to control development?

Phil.
#3
03/21/2001 (12:01 pm)
I foresee needing to address how different enhancements are added onto the V12 Engine. For example, say a team develops a networking scheme to support massive multiplayer games. This would be a significant enhancement to the V12 engine but, for the guys building a simple puzzle game, this wouldn't be useful and would significantly bloat the code. If the code is well laid out, then you could just include every enhancement and expect the programmers to remove what they don't want/need but that isn't a very clean approach. Another approach would be to treat nearly every piece of the engine as plug-ins that are loaded when needed. If this approach is taken, we would have to clearly document all of the "plug-ins" or "modules" dependencies upon each other (like the Physics module requiring the vector code from the Math module). Maybe make that the responsibility of the submitting party? I'd imagine this would require a pretty major rewrite of the engine , though. Another approach would be to have small demos showing off various enhancements and their implementation using as little of the rest of the engine as possible. For example, you could have a massive multiplayer client and server with only the smallest of graphics and gameplay code (PongWorld anyone?). That way if someone is interested in adding massive multiplayer support to their game they have a reference to go by without having to dig through a bunch of unrelated code (to their game and to the particular enhancement). Anyway, I don't know what approach will best help the V12 engine. I do have one major recommendation, though. QuakeForge took the approach of taking the original raw Quake1 source and cleaning it up, adding comments, and fixing bugs all without adding any enhancements to the engine. They then left this version out there for people to use and began to enhance the engine greatly in a separate version. I think that something like this needs to be done with the V12 engine. It will be hard to resist adding features right off the bat, but I feel that getting a good stable reference version built first is very important. Then we can go wild =)