iTGB from the perspective of a n00b
by BeyondtheTech · 05/26/2009 (12:00 pm) · 3 comments
Hello, all. I figured that since it's a relatively quite Tuesday morning after the Memorial Day holiday that I might share a couple of notes for people who may be delving into iTGB for the first time, putting the final touches on their game, or perhaps even struggling in the middle of their development.
When I first heard about iTGB, I joined the forums and was so gung-ho about it. I was even the one that named the product, at least according to the GG guys that replied back on the forum. To top it all off, I literally jumped at the Buy Now button as soon as it became available. I even bought a few Torque books at the local bookstore. But, within a month, I was pulling my hair out, staring at an interface and development method that still felt alien to me. I really didn't know what I was getting into and what exactly was involved, and a lot of the GarageGames' website felt so discombobulated, with resources and bits of code all over the place, and forum posts from bewildered users with no replies, that I actually requested a refund back in late October 2008. Brett was happy to talk to me and I, reluctantly and quietly, reconsidered.
Call it a writer's block - I took a long hiatus, and at the eve of my birthday about two weeks ago, I decided to try iTGB again. 1.2 just came out with some details and it looked like it came a long way from 0.8.0.
Fast forward one week of many late nights and a lot of Diet Pepsi and Sour Patch Kids, and I actually have a game that feels about 60% complete, and it's actually looking and playing awesome on my iPhone 3G. In that one week, I tore apart a lot of TorqueScript code to understand it, read TONS of forum posts to grab code and throw it into the source, came up with a lot of little tweaks and cool tricks, and streamlined a method of repetitively building and testing my code on my device.
So, what did I learn from this?
Well, first off, iTGB came stumbling out of the gate with very little documentation and understanding. It finally gained traction to a point where entertaining iPhone games could be released on the App Store for purchase. So, much to my initial regret, it is worth the investment if you're willing to take the time to understand it.
What's to understand?
What needs to be understood is that iTGB, and probably every other iteration of the Torque family of game development kits, is an evolution of code. You may read criticisms on other forums that there's a lot of outdated code and functions that don't work. I personally have not come across functions that don't work, although there are certain methods that have to be re-understood, akin to physical therapy after an injury, if that's a useful analogy. With the amount of action onscreen in my game that I'm building, I am satisfied with iTGB's current performance, and can only hope it improves further. Granted, the name still says "Torque Game Builder" and "1.7.4" and there are still a lot of unresolved bugs in the game editor, such as trying to select a bitmap in the GUI Editor (you can't), requiring file paths with no spaces, and having to reselect your choices when building to XCode for iPhone deployment. It was only until 1.2 that I realized that I didn't have to do anything with TGB or TGB Pro that were required to purchase, and that all I needed was iTGB to extract and run (I was scratching my head on where to put all the files and serial numbers!). iTGB will continue to evolve, so the earlier you can jump in to get an early feel for it, the better.
Another thing to understand is that you'll be in front and behind the game editor interface at all times. Coming from Game Editor for Windows (www.game-editor.com), the entire development was inside the interface. Selecting an object (Actor, as they call it) opens up a window to enter in code. In iTGB, you'll be in Notepad, TextPad, Ultra-Edit, or whatever editor you choose, to open up and edit all those .cs, .gui, and .t2d files scattered all over the place. I'm still struggling to remember all the different folders and where I put that latest function. Unfortunately, when compiling fails and crashes the created TGB executable, I'm scrambling around to look in the files for a missing semi-colon. I hear Torsion is nice for editing, but I'm on a Mac... (hint-hint, guys).
Lastly, use every resource available. It's out there, sometimes way out there, and you do have to have a programmer's mindset in order to get things going. I don't have any real Objective-C background, and I actually failed my C classes in college (I couldn't understand pointers, pointers of pointers, and the somewhat cryptic syntax - so you can imagine my face when I saw what Objective-C looked like for the first time!). But, I did program in BASIC for many years, and it's the language of programming, not the programming language, that helped me get the gist of TorqueScript (and C for that matter) enough to manipulate a lot of the objects and characters on screen.
In the beginning, I wasn't sure I'd ever get a game on the App Store. With iTGB, I actually have certainty that my game will be there, and only when I feel that it looks and feels good and ready.
FYI, this message nor myself are in no way sponsored or affiliated with GarageGames or iTGB. Sometimes, you just have to let it out when you feel good, and after this past week of coding and building, I do feel real good.
When I first heard about iTGB, I joined the forums and was so gung-ho about it. I was even the one that named the product, at least according to the GG guys that replied back on the forum. To top it all off, I literally jumped at the Buy Now button as soon as it became available. I even bought a few Torque books at the local bookstore. But, within a month, I was pulling my hair out, staring at an interface and development method that still felt alien to me. I really didn't know what I was getting into and what exactly was involved, and a lot of the GarageGames' website felt so discombobulated, with resources and bits of code all over the place, and forum posts from bewildered users with no replies, that I actually requested a refund back in late October 2008. Brett was happy to talk to me and I, reluctantly and quietly, reconsidered.
Call it a writer's block - I took a long hiatus, and at the eve of my birthday about two weeks ago, I decided to try iTGB again. 1.2 just came out with some details and it looked like it came a long way from 0.8.0.
Fast forward one week of many late nights and a lot of Diet Pepsi and Sour Patch Kids, and I actually have a game that feels about 60% complete, and it's actually looking and playing awesome on my iPhone 3G. In that one week, I tore apart a lot of TorqueScript code to understand it, read TONS of forum posts to grab code and throw it into the source, came up with a lot of little tweaks and cool tricks, and streamlined a method of repetitively building and testing my code on my device.
So, what did I learn from this?
Well, first off, iTGB came stumbling out of the gate with very little documentation and understanding. It finally gained traction to a point where entertaining iPhone games could be released on the App Store for purchase. So, much to my initial regret, it is worth the investment if you're willing to take the time to understand it.
What's to understand?
What needs to be understood is that iTGB, and probably every other iteration of the Torque family of game development kits, is an evolution of code. You may read criticisms on other forums that there's a lot of outdated code and functions that don't work. I personally have not come across functions that don't work, although there are certain methods that have to be re-understood, akin to physical therapy after an injury, if that's a useful analogy. With the amount of action onscreen in my game that I'm building, I am satisfied with iTGB's current performance, and can only hope it improves further. Granted, the name still says "Torque Game Builder" and "1.7.4" and there are still a lot of unresolved bugs in the game editor, such as trying to select a bitmap in the GUI Editor (you can't), requiring file paths with no spaces, and having to reselect your choices when building to XCode for iPhone deployment. It was only until 1.2 that I realized that I didn't have to do anything with TGB or TGB Pro that were required to purchase, and that all I needed was iTGB to extract and run (I was scratching my head on where to put all the files and serial numbers!). iTGB will continue to evolve, so the earlier you can jump in to get an early feel for it, the better.
Another thing to understand is that you'll be in front and behind the game editor interface at all times. Coming from Game Editor for Windows (www.game-editor.com), the entire development was inside the interface. Selecting an object (Actor, as they call it) opens up a window to enter in code. In iTGB, you'll be in Notepad, TextPad, Ultra-Edit, or whatever editor you choose, to open up and edit all those .cs, .gui, and .t2d files scattered all over the place. I'm still struggling to remember all the different folders and where I put that latest function. Unfortunately, when compiling fails and crashes the created TGB executable, I'm scrambling around to look in the files for a missing semi-colon. I hear Torsion is nice for editing, but I'm on a Mac... (hint-hint, guys).
Lastly, use every resource available. It's out there, sometimes way out there, and you do have to have a programmer's mindset in order to get things going. I don't have any real Objective-C background, and I actually failed my C classes in college (I couldn't understand pointers, pointers of pointers, and the somewhat cryptic syntax - so you can imagine my face when I saw what Objective-C looked like for the first time!). But, I did program in BASIC for many years, and it's the language of programming, not the programming language, that helped me get the gist of TorqueScript (and C for that matter) enough to manipulate a lot of the objects and characters on screen.
In the beginning, I wasn't sure I'd ever get a game on the App Store. With iTGB, I actually have certainty that my game will be there, and only when I feel that it looks and feels good and ready.
FYI, this message nor myself are in no way sponsored or affiliated with GarageGames or iTGB. Sometimes, you just have to let it out when you feel good, and after this past week of coding and building, I do feel real good.
#2
05/26/2009 (5:39 pm)
Oh, how I wish there was a code editor built into (i)TGB. I still think it's an obvious requirement ;)
#3
Eclipse with Torquescript plugin has really helped me out a lot!
05/27/2009 (9:03 am)
One tip to help you managed all those files for scripting is to download Eclipse and the TorqueScript highlighter plugin. Then you can create a project and add a directory link to your game source directory. I use this for all of my script editing and file management. It's really nice and keeps you from jumping from one editor the other so much. Whenever iTGB crashes while running the game I just goto eclipse and open up the console.log file and it usually tells me the syntax error in my script file that I need to change.Eclipse with Torquescript plugin has really helped me out a lot!

Torque 3D Owner Brett Seyler
Default Studio Name