Game Development Community

Why WAS Torque3D documentation so poor?

by Dark Tengu · in Torque 3D Professional · 03/02/2010 (6:38 pm) · 442 replies

I would really like to get back into Torque, but I am finding the documentation to be so poor. For example, where is the explanation of callbacks? If I remember correctly, callbacks are HIGHLY important in Torque. Its great that there is an explanation of Torque syntax, but honestly synatax is VERY easy to figure out for anyone who has done even a little C/C++.

Perhaps I am just missing the quality documentation, any help would be appreciated. The only documentation regarding Torque3D I have found is at the following link:

http://docs.torquepowered.com/torque-3d/official/index.html

Moderator Edit - You can download the draft version of the T3D Script Manual by clicking here
#361
07/09/2010 (10:34 pm)
So, for all of you who plan on being in the C++, I just wanted to give you a heads up on all the changes. Try and reduce the "shock" if you run a dif on a previous project. Well, with all the actual engine bug fixes you would probably have seen a massive changelog anyway...but at least now when you see these new macros you will know why they are there...maybe I should document this while I'm at it? =)
#362
07/09/2010 (10:37 pm)
@Glen - Thanks for the supportive words =)

Can you tell me what you mean by simple "move object" functions? My brain is a bit fried right now, so I don't quite know what you are looking for.
#363
07/09/2010 (11:40 pm)
Yea, I thought it would sound a bit vague. I mean like moving an entity using pos x, y, z and rotation. More or less just simply moving an object, i.e. the player walking forward without animation.

If that doesn't explain I can chat in Facebook for a few minutes.
#364
07/09/2010 (11:48 pm)
Wow Michael, thanks.

Supercalifragilisticexpialidocious* is the only word that i can think of that fully describe how profound this seemingly small and previously unadvertised addition to T3D is. I can foresee much acceleration in all future Torque development time.

*"To correct the fault of ignorance through implementation of delicate beauty." For the many i know who do not have education in the Science of Linguistics and the ability to decipher this words perfectly convoluted definition.
#365
07/10/2010 (12:10 am)
Just saw a twit from torquepowered that the new updated documents will not make it in the new beta release, but will make it 1.1 final release.
So is this good news? :)
#366
07/10/2010 (12:30 am)
Mich, congratulations, just had a short look trough the new docs and I must say it looks very good!
#367
07/10/2010 (8:16 am)
@Andy Dbest - Umm, that tweet was wrong. It's contrary to what I said here and in IRC. I think Donald just misread what I was saying due to the past pace of IRC.

Edit - Oh oh oh. He was referring to some new engine (aka source code manipulation) tutorials I've been working on. Those cover extending an existing module, creating a new one, and script <-> engine communication...which in that last one I kind of just wrote out. Those will not be in Beta 2, but they are separate from this CHM we are building up.
#368
07/10/2010 (8:23 am)
@Glen - AI players have move-to. Player objects use $mvForward. As for static objects, you would most likely need to use setPosition or implement an interpolated movement like the player classes. You can see an example of that in the RTS Prototype tutorial in the online docs.
#369
07/10/2010 (10:22 am)
@Michael Perry - So we get the documents sooner?
Just asking coz I might have missed the post.
#370
07/10/2010 (10:47 am)
@Andy Dbest - On page 17 of this thread, Gerry pointed out that we stated the TS Script API documentation would be completed by Beta 2. We stated this in a video stream during GDC a few months back. We said it, so we are bound by it. After his post Eric came to my desk before I could watch the video to double check. He confirmed it. What made me kind of smile was not him asking if it was "doable". He said it has to be done, and asked what I needed to make it happen.
#371
07/10/2010 (11:23 am)
I just want to say thanks to GarageGames putting in the effort to finally get us docs. The docs are looking much better, still a lot missing though. Maybe I'm missing it, but are we going to get documentation of all engine variables that are exposed in script?
#372
07/10/2010 (11:30 am)
@Michael Perry - I don't understand your explanation of callbacks.

as far as I know, a callback is a case where the source directly calls a script function when a particular event occurs.

The example you gave with applydamage() looks like an example where torquescript is calling a source function. how is this considered a callback? or is this a new way of defining console functions?
#373
07/10/2010 (12:02 pm)
One more suggestion:

if you go to Class Members->Functions->Letter 'o', among other things, youve pretty much got a comprehensive list of all the callbacks in the engine along with the objects that call them. You guys should take the on- callback functions and create an "events" reference list. Each event should be listed with a brief description of when it's called along with references to the torquescript objects that call it.

#374
07/10/2010 (12:12 pm)
@JonD
Quote:While on the subject of variables, what about those pesky global variables defined in C++ but contain no real comments or docs? Well, we are covering those (slowly but surely) as well. The addVariable macro also takes advantage of our auto-Doxy system:


From post #356 of this thread.

#375
07/10/2010 (12:19 pm)
Thanks Caylo. I missed that one.
#376
07/10/2010 (12:22 pm)
@Sean - I don't think that is a comprehensive list. It seems to be missing all networking callbacks and quite a few others, but it is a decent start for now. I wouldn't say it would cut it for the final though.
#377
07/10/2010 (12:31 pm)
@Sean - Doh. You're right. It was late and I was in a rush to finish up the series of posts. I didn't just choose a poor example, I flat out chose the wrong thing. I'll find something better to post later.
#378
07/10/2010 (12:39 pm)

@Sean and Michael

Lighting::applyDamage should look like this:

void Lightning::applyDamage( const Point3F& hitPosition,
                             const Point3F& hitNormal,
                             SceneObject*   hitObject)
{
   applyDamage_callback( hitPosition, hitNormal, hitObject );
}
#379
07/10/2010 (2:31 pm)
Thanks Michael. Looking forward to it.
#380
07/11/2010 (12:08 pm)
Quote:
Lighting::applyDamage should look like this....
I had wondered about that when I saw the change there - thanks for clarifying and for the fix Rene.