It's Obvious That We Need (I Need) A "Basic Guide...
by Michael Hense · in Torque Game Engine · 06/28/2002 (7:18 am) · 38 replies
... To Programming The Torque Engine"
Look at all of the questions regarding fundamental apects of Torque development posted here.
Forget the Realm Wars enhancements right now... Realm Wars, as it is now, is a great demo of Torque's capabilities.
Put all that talent to work on writing a usefull Guide, something someone can look at and understand the basics Torque Game Development...
Start with something like... setting up your 'Basic Empty World', then 'Adding Elements To The World', then 'Animating Elements', then 'I/O, Mouse, Keyboard, Etc'...
Right now I'm up against a brick wall... the whole concept of stripping out existing game elements and replacing them with your own new stuff is ok, but where do you start??
I've managed to glean a lil info from the forums and all over the web, but so far, zilch... it just doesn't come together.
Something like this shouldn't take too long to do... put up a section of the forum specific to this and post each chapter as it is completed. It doesn't have to be totally comprehensive, just the fundamentals... the first chapters could be done in a matter of days...
I don't wanna sound like a spoiled sport here, but I've busted my a$$ going through all the disparate notes and stuff, and I've bothered almost all of the guys/gals here who have generously taken the time to explain stuff to me... and so far, all that I can do is add a few static elements to the Realm Wars Demo..
You have a potential winner here... but without a solid foundation to build upon, only the coders who are already familiar with Torque (V12) will ever get anything done, and the whole ball of wax will fall by the wayside, along with a lot of other well intentioned projects.
Please... consider this request...
--Mike
Look at all of the questions regarding fundamental apects of Torque development posted here.
Forget the Realm Wars enhancements right now... Realm Wars, as it is now, is a great demo of Torque's capabilities.
Put all that talent to work on writing a usefull Guide, something someone can look at and understand the basics Torque Game Development...
Start with something like... setting up your 'Basic Empty World', then 'Adding Elements To The World', then 'Animating Elements', then 'I/O, Mouse, Keyboard, Etc'...
Right now I'm up against a brick wall... the whole concept of stripping out existing game elements and replacing them with your own new stuff is ok, but where do you start??
I've managed to glean a lil info from the forums and all over the web, but so far, zilch... it just doesn't come together.
Something like this shouldn't take too long to do... put up a section of the forum specific to this and post each chapter as it is completed. It doesn't have to be totally comprehensive, just the fundamentals... the first chapters could be done in a matter of days...
I don't wanna sound like a spoiled sport here, but I've busted my a$$ going through all the disparate notes and stuff, and I've bothered almost all of the guys/gals here who have generously taken the time to explain stuff to me... and so far, all that I can do is add a few static elements to the Realm Wars Demo..
You have a potential winner here... but without a solid foundation to build upon, only the coders who are already familiar with Torque (V12) will ever get anything done, and the whole ball of wax will fall by the wayside, along with a lot of other well intentioned projects.
Please... consider this request...
--Mike
#22
I have read much of the available documentation... it serves as a decent overview(and then some)... I would say that some case studies would be highly beneficial... I, like many, learn best from example and not from technical dissection... a completed Realm Wars game with source available would be a wonderful teacher...
The best documentation is (and always will be) the actual source code and script... that and a good debugger with some breakpoints set... single step thru the code... look at the call stack... get on with it...
There are many books, articles, and forums in the world devoted to the basics of game creation... I do not believe that Torque is basic... nor do I believe it's job is to teach the basics... it is a AAA game engine with the power and complexity that this entails... that being said, certainly somebody could do something basic with it... if they so choose...
I can't say that volumes of documentation (such as what is supplied if you license Lithtech...) is the way to go... things quickly get muddy... on the other end of the spectrum, think of all those games made with the QuakeII engine... all they got was a tar ball :)
Struggle and not being afraid of doing something wrong several times is the best teacher... in fact, the wrong approach may lead to unexpected and rewarding discovery... or just maybe: something fun
-J
06/30/2002 (2:31 pm)
Strictly from a coding standpoint:I have read much of the available documentation... it serves as a decent overview(and then some)... I would say that some case studies would be highly beneficial... I, like many, learn best from example and not from technical dissection... a completed Realm Wars game with source available would be a wonderful teacher...
The best documentation is (and always will be) the actual source code and script... that and a good debugger with some breakpoints set... single step thru the code... look at the call stack... get on with it...
There are many books, articles, and forums in the world devoted to the basics of game creation... I do not believe that Torque is basic... nor do I believe it's job is to teach the basics... it is a AAA game engine with the power and complexity that this entails... that being said, certainly somebody could do something basic with it... if they so choose...
I can't say that volumes of documentation (such as what is supplied if you license Lithtech...) is the way to go... things quickly get muddy... on the other end of the spectrum, think of all those games made with the QuakeII engine... all they got was a tar ball :)
Struggle and not being afraid of doing something wrong several times is the best teacher... in fact, the wrong approach may lead to unexpected and rewarding discovery... or just maybe: something fun
-J
#23
The associates, employees, and members of this forum have made great points.
I learned more about programming by studying source code than I ever did from a book or a class.
However, I do agree with Michael in the sense that there should be better "Getting Started" documents that new users can use to get their feet wet. Something basic that increased their understanding of how to use the Torque tools and editors (with expamples) is essential(Not writing Code, ofcourse). This is a must for the graphics part of a game. As for more advanced functionality, I agree, that should be left to the user to learn on their own, by studying the source, reading and asking questions in the forum, and trying things out.
DOCUMENTAION:
There is alot to this sort of documentation, ABSOLUTELY. But I still think it needs to be done, even if it is a weekly, bi-weekly, or monthly process. If this was a community project, it would be much less of a burden and would make the Torque community stronger as a whole. You need to get new users up to speed which in turn will increase your documentation by their contributions. IMHO
TOOLS AND EDITORS:
Personally, I think I could get by just fine by reading the forums, studying the source code, and asking questions if I need help. Nonetheless, I think an even better way to help a new Torque user would be the presence of better tools and editors. By "better tools and editors" I mean being more user friendly. There are so many world editors out there that are a great deal more user friendly than the Torque tools and editors.
IMHO, simply creating a program that does what you want it to do is not enough. If you are creating a software package, you need to consider your audience. Even if it is meant for advanced users, there has to be some sort of explanation with examples of its base functionality to be professional(I am not talking about modding here). However, explanations and examples on adding features to the engine is NOT expected and is NOT part of the product.
The power and functionality of this engine is impressive but the documentation is lacking a great deal.
I am a Mechanical Engineer who bought the Torque SDK for fun and I do not claim to be an expert programmer. But, I AM your AUDIENCE along with many others that are at different levels in game developement.
All of the engineering projects that I have been on in the past have consisted of extreme documentation about every asset of the project. In most cases our audience was for technical people, but not neccessarily advanced technical people. The documentation was pain staking; however, in the long run, it saved us alot of grief in regard to technical support and complaints.
In closing, I would like to say that I am impressed with the work that has been done here so far. However, the excuse of "It's just us four" is not acceptable. I think a better excuse would be "we're working on it, please be patient, and check back often". LOL
Oh, one more thing, I love intellectual debates and they are welcome, but please keep your bashing to something constructive.
(excuse the spelling and / or grammer)
Herbert
09/10/2002 (3:18 pm)
Great Topic!The associates, employees, and members of this forum have made great points.
I learned more about programming by studying source code than I ever did from a book or a class.
However, I do agree with Michael in the sense that there should be better "Getting Started" documents that new users can use to get their feet wet. Something basic that increased their understanding of how to use the Torque tools and editors (with expamples) is essential(Not writing Code, ofcourse). This is a must for the graphics part of a game. As for more advanced functionality, I agree, that should be left to the user to learn on their own, by studying the source, reading and asking questions in the forum, and trying things out.
DOCUMENTAION:
There is alot to this sort of documentation, ABSOLUTELY. But I still think it needs to be done, even if it is a weekly, bi-weekly, or monthly process. If this was a community project, it would be much less of a burden and would make the Torque community stronger as a whole. You need to get new users up to speed which in turn will increase your documentation by their contributions. IMHO
TOOLS AND EDITORS:
Personally, I think I could get by just fine by reading the forums, studying the source code, and asking questions if I need help. Nonetheless, I think an even better way to help a new Torque user would be the presence of better tools and editors. By "better tools and editors" I mean being more user friendly. There are so many world editors out there that are a great deal more user friendly than the Torque tools and editors.
IMHO, simply creating a program that does what you want it to do is not enough. If you are creating a software package, you need to consider your audience. Even if it is meant for advanced users, there has to be some sort of explanation with examples of its base functionality to be professional(I am not talking about modding here). However, explanations and examples on adding features to the engine is NOT expected and is NOT part of the product.
The power and functionality of this engine is impressive but the documentation is lacking a great deal.
I am a Mechanical Engineer who bought the Torque SDK for fun and I do not claim to be an expert programmer. But, I AM your AUDIENCE along with many others that are at different levels in game developement.
All of the engineering projects that I have been on in the past have consisted of extreme documentation about every asset of the project. In most cases our audience was for technical people, but not neccessarily advanced technical people. The documentation was pain staking; however, in the long run, it saved us alot of grief in regard to technical support and complaints.
In closing, I would like to say that I am impressed with the work that has been done here so far. However, the excuse of "It's just us four" is not acceptable. I think a better excuse would be "we're working on it, please be patient, and check back often". LOL
Oh, one more thing, I love intellectual debates and they are welcome, but please keep your bashing to something constructive.
(excuse the spelling and / or grammer)
Herbert
#24
But in the end, I'm in no better position than anyone else. Asking for "better documentation" didnt occur to me, because I understood the fundamental deal, torque is a once off, its precisely because of its nature that there is no documentation, so if you have to "rough it" and learn by stepping code, thats a by product.
There is more than enough information on this site to do almost everything people need, hence some people are able to get on and produce games. Others simply sit there and gripe about "poor tools" or whatever. Fact is, the tools are capable (if not great) the engine is clearly capable.
So I'd say if there's a problem, dont blame the tools.
Obviously I'm not advocating NOT improving the situation, but simply griping about it wont help.
As for the purpose of gg.com I'm not sure it IS to hand hold people through torque usage. I'm reasonably happy with them just providing a focus point for indie development. The fact that they do torque is another side issue really.
If I werent using torque, I'd be using my own engine (freedom) from a while back and would still be interested in an indie site where other people hang out and share info.
Phil.
09/10/2002 (4:16 pm)
The problem I had with the posts was that I'd read many "How do i do this" posts and replied to them when I had the time.But in the end, I'm in no better position than anyone else. Asking for "better documentation" didnt occur to me, because I understood the fundamental deal, torque is a once off, its precisely because of its nature that there is no documentation, so if you have to "rough it" and learn by stepping code, thats a by product.
There is more than enough information on this site to do almost everything people need, hence some people are able to get on and produce games. Others simply sit there and gripe about "poor tools" or whatever. Fact is, the tools are capable (if not great) the engine is clearly capable.
So I'd say if there's a problem, dont blame the tools.
Obviously I'm not advocating NOT improving the situation, but simply griping about it wont help.
As for the purpose of gg.com I'm not sure it IS to hand hold people through torque usage. I'm reasonably happy with them just providing a focus point for indie development. The fact that they do torque is another side issue really.
If I werent using torque, I'd be using my own engine (freedom) from a while back and would still be interested in an indie site where other people hang out and share info.
Phil.
#25
I know that this answer may seem like a pipe dream to many who read this, but I am currently working on just such a document. I too was frustrated (at first) when I tried to get started with Torque. However, I soon discovered that there is a ton of information out there, albeit hard to find at times. I have two other guys on my team who are not currently active members here and are not using Torque...yet. So, I'm sorting through all my notes, links, code, etc and putting it together in a single document for them and for me. Seeing as this will be useful for the community at large, I'll first skeleton with some content at my own website and go from there based on feedback from the GG community. I hope that people will find it interesting and give me requests, or better yet their own contributions.
So, if you don't hear from my by about the 20th, mail me or in some way other heckle me.
Oh, BTW If you like this idea, you should contact me with your own request and contributions.
GG Home: Ed's Home
Web Home: www.hallofworlds.com
09/10/2002 (9:19 pm)
Michael,I know that this answer may seem like a pipe dream to many who read this, but I am currently working on just such a document. I too was frustrated (at first) when I tried to get started with Torque. However, I soon discovered that there is a ton of information out there, albeit hard to find at times. I have two other guys on my team who are not currently active members here and are not using Torque...yet. So, I'm sorting through all my notes, links, code, etc and putting it together in a single document for them and for me. Seeing as this will be useful for the community at large, I'll first skeleton with some content at my own website and go from there based on feedback from the GG community. I hope that people will find it interesting and give me requests, or better yet their own contributions.
So, if you don't hear from my by about the 20th, mail me or in some way other heckle me.
Oh, BTW If you like this idea, you should contact me with your own request and contributions.
GG Home: Ed's Home
Web Home: www.hallofworlds.com
#26
09/11/2002 (8:19 am)
I have found that the community in itself is this "document" you seek. If you're having problems you can always ask. Most likely someone has already had the same problem you're having and you'll be able to find an archive here in the Forums of a solution/workaround/how-it-works. Having done some work on the TGE itself I have found the community to be invaluable. It's a win-win situation. I think that any other shortcomings you may find without such a hand-holding document would be a personal lack of knowledge. If you have a decent understanding of C++ and game development techniques in general, along with the community provided here at Garage Games, I don't think there is much else anyone can ask for.
#27
The attitude of "hand holding is not our purpose" has to change to "give freely and receive 10 fold back"
My suggestion will only make it better for new Torque users and in turn will increase the number of advanced users in time. This would also increase the value of the product and would certainly bring descent reviews from other websites. Hence, more members and contributions can be expected. In the long run, helping new users get started will only increase the number of advanced users in the future. Advanced users are needed to improve the engine itself. Win Win!
I would suggest opening a forum thread and inserting sub-section titles increasing in difficulty to solve this problem.
A possible thread might be titled "Beginners Guide"
Subsections might include:
Using the Mission Editor
Sub-sub-section
Sub-sub-section
Using the Terrain Editor
Sub-sub-section
Sub-sub-section
Using the GUI Builder
Sub-sub-section
Sub-sub-section
Using the Terrain Generator
Sub-sub-section
Sub-sub-section
INSERT MORE SECTIONS AS NEEDED!
Users that are confident and experienced enough could submit SHORT TUTORIALS on these sub-sections(any and all they feel they can help with). I am certain that there are plenty of people that wouldn't mind contributing to at least one of these sub-sections. Eventually, these sections will be filled in and I am certain there would be plenty of praise for each contributor.
I know that personally, I would enjoy contributing to the community to help others get started. When I reach an advanced level of understanding, I certainly will contribute.
All I am asking is that people keep an open mind. I think we already lost Michael by the insulting comments that were directed toward him. I feel that he could have eventually been a valuable asset to the community.
BASHING PEOPLE CERTAINLY DOESN'T HELP EITHER!
Herbert
09/11/2002 (1:24 pm)
This kind of community has great potential and I hope that I can enlighten some of the people that are frowning on my suggestions.The attitude of "hand holding is not our purpose" has to change to "give freely and receive 10 fold back"
My suggestion will only make it better for new Torque users and in turn will increase the number of advanced users in time. This would also increase the value of the product and would certainly bring descent reviews from other websites. Hence, more members and contributions can be expected. In the long run, helping new users get started will only increase the number of advanced users in the future. Advanced users are needed to improve the engine itself. Win Win!
I would suggest opening a forum thread and inserting sub-section titles increasing in difficulty to solve this problem.
A possible thread might be titled "Beginners Guide"
Subsections might include:
Using the Mission Editor
Sub-sub-section
Sub-sub-section
Using the Terrain Editor
Sub-sub-section
Sub-sub-section
Using the GUI Builder
Sub-sub-section
Sub-sub-section
Using the Terrain Generator
Sub-sub-section
Sub-sub-section
INSERT MORE SECTIONS AS NEEDED!
Users that are confident and experienced enough could submit SHORT TUTORIALS on these sub-sections(any and all they feel they can help with). I am certain that there are plenty of people that wouldn't mind contributing to at least one of these sub-sections. Eventually, these sections will be filled in and I am certain there would be plenty of praise for each contributor.
I know that personally, I would enjoy contributing to the community to help others get started. When I reach an advanced level of understanding, I certainly will contribute.
All I am asking is that people keep an open mind. I think we already lost Michael by the insulting comments that were directed toward him. I feel that he could have eventually been a valuable asset to the community.
BASHING PEOPLE CERTAINLY DOESN'T HELP EITHER!
Herbert
#28
After doing a lengthy search and scan (& download) of 100's of forum items, I started to work feeling not too bad as I now had a general understanding of what was expected of ME vs GG.
This week found me banging my head on the wall due to lack of core documentation (usage wise). I was seriously pissed at purchasing something that now seemed 'to hot to handle'. (Even if it's only $160 Canadian)
After a brief break, I simply dug in deeper and asked for help. Between the two I learned more than any tutorial could provide.
Summary:
I agree that general documentation is necessary, that already exists in one form or another.
I feel that jumping in and doing, will provide a greater and lasting understanding of what's going on.
I also feel that MANY more light/limited/specific examples, would be way more useful than 300 pages of docs.
Lastly, I believe that if you've bought the engine hoping to point and click (and maybe script a bit) to make a game, you probably could, but the reality is, if you don't have any programming experience, and/or you don't have any basic 3D game engine, modelling or level building knowledge/experience, you will have a tough time of it.
Simple Game Creation:
I would suggest:
1 - Play the Torque Demo for a bit, see what doing certain things does
2 - Edit the Mission and add some more stock/existing items
3 - Make some minor changes to the scripts, see what happens
Now the real part of game creation:
1 - Research what you'd like to accomplish and plan
2 - Plan some more
3 - Set goals and timelines
4 - If you don't know how to program, learn or hire
5 - If you don't know how to model, learn or hire
6 - If you don't know how to build levels/worlds1, learn or hire
7 - Do all the writing, drawing etc. to get your game idea down pat and skeletal (before you even touch a line of code.
8 - Contact and communicate with others and play as many games of your genre as you can (get the feel of what's right and what's wrong)
9 - Get to work and adjust as necessary
10 - Expect no real results for a couple of months as you will still be learning and coming across different ideas and ways of doing the same thing.
11 - To shorten the timelines to a finished and polished product (expect a year+), get some help. There's a lot of part-time hobbyist's with varied skills that are in the same boat.
I guess I'm saying - don't expect to buy the engine and have a game for sale next month, you have to work for it.
Wow....that was long....
09/13/2002 (4:23 pm)
It's funny that this thread started up again as I've just purchased the engine a week and 1/2 ago.After doing a lengthy search and scan (& download) of 100's of forum items, I started to work feeling not too bad as I now had a general understanding of what was expected of ME vs GG.
This week found me banging my head on the wall due to lack of core documentation (usage wise). I was seriously pissed at purchasing something that now seemed 'to hot to handle'. (Even if it's only $160 Canadian)
After a brief break, I simply dug in deeper and asked for help. Between the two I learned more than any tutorial could provide.
Summary:
I agree that general documentation is necessary, that already exists in one form or another.
I feel that jumping in and doing, will provide a greater and lasting understanding of what's going on.
I also feel that MANY more light/limited/specific examples, would be way more useful than 300 pages of docs.
Lastly, I believe that if you've bought the engine hoping to point and click (and maybe script a bit) to make a game, you probably could, but the reality is, if you don't have any programming experience, and/or you don't have any basic 3D game engine, modelling or level building knowledge/experience, you will have a tough time of it.
Simple Game Creation:
I would suggest:
1 - Play the Torque Demo for a bit, see what doing certain things does
2 - Edit the Mission and add some more stock/existing items
3 - Make some minor changes to the scripts, see what happens
Now the real part of game creation:
1 - Research what you'd like to accomplish and plan
2 - Plan some more
3 - Set goals and timelines
4 - If you don't know how to program, learn or hire
5 - If you don't know how to model, learn or hire
6 - If you don't know how to build levels/worlds1, learn or hire
7 - Do all the writing, drawing etc. to get your game idea down pat and skeletal (before you even touch a line of code.
8 - Contact and communicate with others and play as many games of your genre as you can (get the feel of what's right and what's wrong)
9 - Get to work and adjust as necessary
10 - Expect no real results for a couple of months as you will still be learning and coming across different ideas and ways of doing the same thing.
11 - To shorten the timelines to a finished and polished product (expect a year+), get some help. There's a lot of part-time hobbyist's with varied skills that are in the same boat.
I guess I'm saying - don't expect to buy the engine and have a game for sale next month, you have to work for it.
Wow....that was long....
#29
I am not technical (my last released product was in Applesoft in 1982), but I was able to download the sdk with CVS, install MS C++ (with service patch), follow the doco and build the demo all by myself. Absolutely no help from the technical GG guys.
I used the docs to import shapes and do scripting changes. I stopped there, but there are a many, many tutorials, and code snippets that get you going from there. That is the "newbie" look. Torque would have been worth way more than the $100 I paid for it. I had fun using it.
Now, Kevin Ryan is one of the best programmers that I know. Way back in the day he developed the oringinal The Incredible Machine from scratch in nine months, and from there he worked on many more Dynamix titles.
Last May, Kevin agreed to work on Marble Blast. Two months later, he brought us back a working version of the concept that was exciting and fun. He did not make one phone call to GarageGames to get help on the engine. Kevin printed out all of the docs and tutorials and worked through them. Then experimented to get make progress. The result will be shipped this October.
It can be done, but it takes work. Like I stated above. We say the engine is powerful and that you will have fun and learn a lot. We never state it will be easy. Making games is hard and an engine powerful enough to make a real game is even harder.
I hope that someday an enterprising developer will create a point and click interface that will take most of the work out of creating a simple game, but, keep in mind, the day that happens, these games will no longer have commercial value.
Making a game is work. The reason it is called work is because it is difficult. You get paid for doing difficult things. Work can also be fun and rewarding. I know that using the Torque is fun AND rewarding.
I also hope that the community can continue to create new documentation and tutorials. GG will continue to kick in to this effort as well, but we want to make games too. Hope I didn't ramble too long.
Jeff Tunnell GG
Edit: Typos.
09/13/2002 (6:00 pm)
Am I missing something here? This documentation link, plus the getting started link on the Torque Home Page seem to provide a lot of info.I am not technical (my last released product was in Applesoft in 1982), but I was able to download the sdk with CVS, install MS C++ (with service patch), follow the doco and build the demo all by myself. Absolutely no help from the technical GG guys.
I used the docs to import shapes and do scripting changes. I stopped there, but there are a many, many tutorials, and code snippets that get you going from there. That is the "newbie" look. Torque would have been worth way more than the $100 I paid for it. I had fun using it.
Now, Kevin Ryan is one of the best programmers that I know. Way back in the day he developed the oringinal The Incredible Machine from scratch in nine months, and from there he worked on many more Dynamix titles.
Last May, Kevin agreed to work on Marble Blast. Two months later, he brought us back a working version of the concept that was exciting and fun. He did not make one phone call to GarageGames to get help on the engine. Kevin printed out all of the docs and tutorials and worked through them. Then experimented to get make progress. The result will be shipped this October.
It can be done, but it takes work. Like I stated above. We say the engine is powerful and that you will have fun and learn a lot. We never state it will be easy. Making games is hard and an engine powerful enough to make a real game is even harder.
I hope that someday an enterprising developer will create a point and click interface that will take most of the work out of creating a simple game, but, keep in mind, the day that happens, these games will no longer have commercial value.
Making a game is work. The reason it is called work is because it is difficult. You get paid for doing difficult things. Work can also be fun and rewarding. I know that using the Torque is fun AND rewarding.
I also hope that the community can continue to create new documentation and tutorials. GG will continue to kick in to this effort as well, but we want to make games too. Hope I didn't ramble too long.
Jeff Tunnell GG
Edit: Typos.
#30
Personally, I am not in need of anything more than is provided. My last two posts were made because I kind of felt sorry for Michael.
As I stated in an earlier post, I have no trouble learning on my own. After 5 years of college and
a completed doctorate paper in Mechanical Engineering Design, I have learned how to pick things apart and design / test until I have the answers.
In the past, I have done a lot of modeling, skining, creating my own textures, animations, winsock and directx programming, etc., though my background is in programming for technical applications (mostly offline). I have programmed software packages in Delphi Pascal. I have extensive background in PLC's as my field requires this sort of thing. I have at least some if not advanced programming knowledge in 15 or so different languages. I have been programming since the 70's, but I can't say that I am an expert in c++(1986 I believe?).
I have created a few simple games both 3D and isometric in the last few years just for fun.
The reason I bought the source for Torque is because I wanted to put these simple games online for my friends (more than 50) and have a living breathing world that changes even though no one is online.
I don't have time to program an entire engine, by myself, and I am amazed and quite pleased
with my purchase of Torque SDK. So, Please, don't get me wrong. I just felt sorry for the guy.
I guess I didn't have to give you a run down on my background, but I am feeling a bit defensive and respect from my colleagues is important to me.
I think I will be able to do what I was talking about soon (depending on how much I work at it), though I am a bit lazy some times. LOL
Well thanks for the replies, I appreciate your feedback and opinions.
Herbert
09/13/2002 (9:07 pm)
Sounds good guys! Personally, I am not in need of anything more than is provided. My last two posts were made because I kind of felt sorry for Michael.
As I stated in an earlier post, I have no trouble learning on my own. After 5 years of college and
a completed doctorate paper in Mechanical Engineering Design, I have learned how to pick things apart and design / test until I have the answers.
In the past, I have done a lot of modeling, skining, creating my own textures, animations, winsock and directx programming, etc., though my background is in programming for technical applications (mostly offline). I have programmed software packages in Delphi Pascal. I have extensive background in PLC's as my field requires this sort of thing. I have at least some if not advanced programming knowledge in 15 or so different languages. I have been programming since the 70's, but I can't say that I am an expert in c++(1986 I believe?).
I have created a few simple games both 3D and isometric in the last few years just for fun.
The reason I bought the source for Torque is because I wanted to put these simple games online for my friends (more than 50) and have a living breathing world that changes even though no one is online.
I don't have time to program an entire engine, by myself, and I am amazed and quite pleased
with my purchase of Torque SDK. So, Please, don't get me wrong. I just felt sorry for the guy.
I guess I didn't have to give you a run down on my background, but I am feeling a bit defensive and respect from my colleagues is important to me.
I think I will be able to do what I was talking about soon (depending on how much I work at it), though I am a bit lazy some times. LOL
Well thanks for the replies, I appreciate your feedback and opinions.
Herbert
#31
-jtarbox
09/14/2002 (1:39 pm)
IMO, doxygen is typically mode then enough data to learn an api for C/C++.. I just wish it covered the scripting language too. The object in the scripting language are my only real slow point. I have to search through several other project scripts to try to figure out what an object is, how to use it, and where it should go.-jtarbox
#32
To be honest, I have not done jack sh*t with it :(, I took the knowledge that I gained with the Alpha release and started to play around in the scripts.
After thinking about it, I decided to start on the docu kick again. I will be working on completing what I started. I hope to have something worth a poop some time soon.
-Ron
09/14/2002 (3:17 pm)
I have been inedated with emails regarding the status of the documentation I was working on.To be honest, I have not done jack sh*t with it :(, I took the knowledge that I gained with the Alpha release and started to play around in the scripts.
After thinking about it, I decided to start on the docu kick again. I will be working on completing what I started. I hope to have something worth a poop some time soon.
-Ron
#33
The C++ documenation and "examples" need the attention. Out of 200k lines of code probably <1% is scripting but, scripting get 99% of the documenation.
I don't think new classes need examples, I just think the existing classes, like Player, Vehicle, ect need more documenation, as if they WERE tutorial code.
The fact that that the auditing and metric tools I am using to learn Torque claim that approx 30% of the code is DEAD, and that it never gets called is another problem. What is real, and what is useless cruft from Tribes2 and what is really used but the auditing tool does not see the connection?
It is painfully evident to someone with my background that there is some awesome best practices design in the bowels of the Torque engine. The very very low level code at the network level and the simulation level is great, but once you get away from the generic stuff it gets hacky.
It is very obvious that there is a line where "lets get it right" turned into "lets get it done" and there are lots of Tribes2 code that is completely irrelevant and just plain out confusing.
After a few hundred hours pouring thru the code and documentation on the site I finally realized what I should have do, scrap all the code that is Tribes2 specific or appears to be tightly coupled with the Tribes2 implementation.
I am looking at pretty much starting over at ShapeBase, that is where the Tribes2 cancer seems to emanate from.
I mean what is "setEnergyLevel" and "setRechargeRate" doing in ShapeBase??? Also having all the "muzzle" functionaliy at that level does not make sense either.
Look at the subclasses of ShapeBase, does every one of those objects need "getMuzzleTransform" ? I don't even think Player and Vehicle need it. I think it needs to be rethought completely. Can you "mount" things to Camera or MissonMarker or SpawnSphere? How about all the cloaking operations? Does every subclass of ShapeBase need to manage ammo?
I bought Torque just to get a look at the network code, I think the $100 US is well spent just to see the code. I think that there is lots of good design, but there is lots of cruft from ShapeBase on up.
I posted a message asking if anyone else wanted to start a refactoring project to refactor ShapeBase and on up and did not get a single reply. Just one or two other people to have some input in redesigning some objects on top of GameBase would be a great project in and of it self to encapsulate more generic objects that don't have the legacy overhead of Tribes2.
If interested shoot me an email at
torque@vertigrated.com
09/14/2002 (10:28 pm)
Personaly I think the scripting, modeling and other "mod" oriented activities have plenty of documenation, but not all in one place and definately not organized.The C++ documenation and "examples" need the attention. Out of 200k lines of code probably <1% is scripting but, scripting get 99% of the documenation.
I don't think new classes need examples, I just think the existing classes, like Player, Vehicle, ect need more documenation, as if they WERE tutorial code.
The fact that that the auditing and metric tools I am using to learn Torque claim that approx 30% of the code is DEAD, and that it never gets called is another problem. What is real, and what is useless cruft from Tribes2 and what is really used but the auditing tool does not see the connection?
It is painfully evident to someone with my background that there is some awesome best practices design in the bowels of the Torque engine. The very very low level code at the network level and the simulation level is great, but once you get away from the generic stuff it gets hacky.
It is very obvious that there is a line where "lets get it right" turned into "lets get it done" and there are lots of Tribes2 code that is completely irrelevant and just plain out confusing.
After a few hundred hours pouring thru the code and documentation on the site I finally realized what I should have do, scrap all the code that is Tribes2 specific or appears to be tightly coupled with the Tribes2 implementation.
I am looking at pretty much starting over at ShapeBase, that is where the Tribes2 cancer seems to emanate from.
I mean what is "setEnergyLevel" and "setRechargeRate" doing in ShapeBase??? Also having all the "muzzle" functionaliy at that level does not make sense either.
Look at the subclasses of ShapeBase, does every one of those objects need "getMuzzleTransform" ? I don't even think Player and Vehicle need it. I think it needs to be rethought completely. Can you "mount" things to Camera or MissonMarker or SpawnSphere? How about all the cloaking operations? Does every subclass of ShapeBase need to manage ammo?
I bought Torque just to get a look at the network code, I think the $100 US is well spent just to see the code. I think that there is lots of good design, but there is lots of cruft from ShapeBase on up.
I posted a message asking if anyone else wanted to start a refactoring project to refactor ShapeBase and on up and did not get a single reply. Just one or two other people to have some input in redesigning some objects on top of GameBase would be a great project in and of it self to encapsulate more generic objects that don't have the legacy overhead of Tribes2.
If interested shoot me an email at
torque@vertigrated.com
#34
09/15/2002 (2:57 am)
I think Troque is great! I tried other engines and found them hard to use to be able to get anywhere etc was hard also and when you got there it didn't look good, made you think of how great it would be to get it to look like the doom at least lol or Quake 1. But Troque is good, I like it, there is so much around about it on this site! you pay $100 ($200 AUS$ for me), and get all this! The examples etc in it are great and give you a good view of what can be done, then you look at the code change it abit etc and it just gets better, easy to understand. It gets hard in engine code etc... but thats to be expected.
#35
...talk about rising from the dead :)
Anyway, a few things have indeed changed... and a few have not...
*************
The documentation situation is getting a heck of a lot better... my sincere Thanks and appreciation to Ron Yacketta and Xavier Amando for their selfless contributions to the docs library...
Also to the other helpfull posters here who have been generous with their code and advice.
******************
As for the attitudes of some of the Associates Members... well, the 'let em eat cake' mood of a lot of the responses I've seen shows that these are some of the things that regretably hasn't changed...
You guys can keep feeding the newbees the line about picking it up from code fragments and reading through this and scanning through that... and if they insist on questioning, they get the virtual kick in the teeth from the anointed Gods of GGdom...
A decent set of docs is a prerequisite to any real game development in any development environment, and even though a lot of it can be gleaned from the forums and such, a lot of time is being wasted playing around with stuff that should be referenced.
I for one had to put Torque on the back burner right now, I am working on a naval sim in a simpler 3d development environment, and doing some DX coding for another project... (in addition to a business project in VB and C).
screen shot from my current headache in progress
Since I am constantly involved in multiple projects using different development environments, I just don't have the time to search through reams of code for some basic fundatmental architectural information that should be available.
The basic fundamental concepts is the key to progressive development, and a coder shouldn't have to search for this sorta stuff.
Once a guy/gal has locked up these fundamentals, then they are more than able to get the rest from code fragments and the forums... and once this happens, they will make games, and the GG Sales site will be bulging with quality offerings...
... and you guys will be in a better position to join the other notable CEOs who were recently making so much money that they had to... well, you know what I mean.
A few people may not like what I have to say... they will remain in happy denial about the situation that exists... hey...
... others will acknowledge that the problem exists, and the best amongst us will take up the keyboard and help rectify the situation.
I haven't given up on Torque, I would like to see GG do well... if only so that I can be connected with a visible and successful enterprise (and sell a lot of games and make a lil money... just to make the wife happy :) )
I'm still picking away at the core engine architecture, and although I hate scripting, I now see where it comes into play... but this is basic info that should be available to the new developer.
As soon as my hands are a lil freer, I'm going to organize my notes and post such a reference.
Hey... just venting a lil... been up for 53 hours (coding some math on that d#mned sim of mune), and just happened to drop into the forum for a few...
... seeing this old thread pop back up really surprised the heck outta me.
--Mike
09/16/2002 (7:33 am)
WOW... I thought that this puppy had been laid to rest a while back......talk about rising from the dead :)
Anyway, a few things have indeed changed... and a few have not...
*************
The documentation situation is getting a heck of a lot better... my sincere Thanks and appreciation to Ron Yacketta and Xavier Amando for their selfless contributions to the docs library...
Also to the other helpfull posters here who have been generous with their code and advice.
******************
As for the attitudes of some of the Associates Members... well, the 'let em eat cake' mood of a lot of the responses I've seen shows that these are some of the things that regretably hasn't changed...
You guys can keep feeding the newbees the line about picking it up from code fragments and reading through this and scanning through that... and if they insist on questioning, they get the virtual kick in the teeth from the anointed Gods of GGdom...
A decent set of docs is a prerequisite to any real game development in any development environment, and even though a lot of it can be gleaned from the forums and such, a lot of time is being wasted playing around with stuff that should be referenced.
I for one had to put Torque on the back burner right now, I am working on a naval sim in a simpler 3d development environment, and doing some DX coding for another project... (in addition to a business project in VB and C).
screen shot from my current headache in progressSince I am constantly involved in multiple projects using different development environments, I just don't have the time to search through reams of code for some basic fundatmental architectural information that should be available.
The basic fundamental concepts is the key to progressive development, and a coder shouldn't have to search for this sorta stuff.
Once a guy/gal has locked up these fundamentals, then they are more than able to get the rest from code fragments and the forums... and once this happens, they will make games, and the GG Sales site will be bulging with quality offerings...
... and you guys will be in a better position to join the other notable CEOs who were recently making so much money that they had to... well, you know what I mean.
A few people may not like what I have to say... they will remain in happy denial about the situation that exists... hey...
... others will acknowledge that the problem exists, and the best amongst us will take up the keyboard and help rectify the situation.
I haven't given up on Torque, I would like to see GG do well... if only so that I can be connected with a visible and successful enterprise (and sell a lot of games and make a lil money... just to make the wife happy :) )
I'm still picking away at the core engine architecture, and although I hate scripting, I now see where it comes into play... but this is basic info that should be available to the new developer.
As soon as my hands are a lil freer, I'm going to organize my notes and post such a reference.
Hey... just venting a lil... been up for 53 hours (coding some math on that d#mned sim of mune), and just happened to drop into the forum for a few...
... seeing this old thread pop back up really surprised the heck outta me.
--Mike
#36
these basic fundemental concepts are very well documented, I think the problem is they are exteremly advanced in most cases and anyone not familiar with advanced Object Oriented Design and the more esoteric C++ idioms will have some problems.
this Chapter 7:Engine Coding in C++ is a high level overview.
this Appendix C: Core Engine C++ Reference has everything you need to know to use the Torque framework.
Here was the problem for me. Tribes2 legacy cruft. Using the Appendix C I have started over at ShapeBase in the Object Tree and am trying to re-engineer a better set of classes without all the cruft from Tribes2.
Everything from that is a superclass of ShapeBase, is pretty damn well documented and understandable, as it is very well designed. Everythign that inherits from ShapeBase or a subClass of ShapeBase is a mess because of the cruft that litters the ShapeBase class itself.
My advice is to start from scratch and don't use the classes that have anything to do with ShapeBase. Start with GameBase and work up from there, it will be much less frustrating, cleaner and faster to just scrap alot of the Tribes2 cruft instead of trying to figure it what is useful, what is broken, what is dead code, etc.
09/16/2002 (2:19 pm)
Quote:The basic fundamental concepts is the key to progressive development, and a coder shouldn't have to search for this sorta stuff.
these basic fundemental concepts are very well documented, I think the problem is they are exteremly advanced in most cases and anyone not familiar with advanced Object Oriented Design and the more esoteric C++ idioms will have some problems.
this Chapter 7:Engine Coding in C++ is a high level overview.
this Appendix C: Core Engine C++ Reference has everything you need to know to use the Torque framework.
Here was the problem for me. Tribes2 legacy cruft. Using the Appendix C I have started over at ShapeBase in the Object Tree and am trying to re-engineer a better set of classes without all the cruft from Tribes2.
Everything from that is a superclass of ShapeBase, is pretty damn well documented and understandable, as it is very well designed. Everythign that inherits from ShapeBase or a subClass of ShapeBase is a mess because of the cruft that litters the ShapeBase class itself.
My advice is to start from scratch and don't use the classes that have anything to do with ShapeBase. Start with GameBase and work up from there, it will be much less frustrating, cleaner and faster to just scrap alot of the Tribes2 cruft instead of trying to figure it what is useful, what is broken, what is dead code, etc.
#37
... suplemented by a few Tribes programming refernces to fill in the damn gaps and give me a lil damn insight into where the game engine came from.
I've found nothing overly esoteric in the class hierarchy or the way it is coded... as a matter of fact, from what little I've been able to glean, it appears to be very straightforward.
As for your suggestion... sounds like the way to go.
--Mike
09/16/2002 (6:11 pm)
I'm not sure how damn well it's documented Jarrod, but this is where I've been spending most of my time with Torque...... suplemented by a few Tribes programming refernces to fill in the damn gaps and give me a lil damn insight into where the game engine came from.
I've found nothing overly esoteric in the class hierarchy or the way it is coded... as a matter of fact, from what little I've been able to glean, it appears to be very straightforward.
As for your suggestion... sounds like the way to go.
--Mike
#38
This is what I do for a living in a way as a consultant, so I figure, I will debried the T2 cruft and save more time in the long run with a clean well considered generic code base than continue to with a dirty system.
09/20/2002 (3:54 pm)
I completely started over with my project because I spending more time dealing with T2 cruft in Player and ShapeBase than on adding features for my game.This is what I do for a living in a way as a consultant, so I figure, I will debried the T2 cruft and save more time in the long run with a clean well considered generic code base than continue to with a dirty system.
Associate Ron Yacketta
Sorry about that, looks like I need a new pair of glasses *sigh*
FOUR not FOR
-Ron