Game Development Community

Plan for Tom Spilman

by Tom Spilman · 07/18/2005 (12:30 am) · 32 comments

Screenshots and video in one plan? Inconceivable!

For the past 4 to 5 months my pet project has been a new TorqueScript development environment called Torsion and quoting Jeff Gran: I'm all giddy inside from the thought of it. Great plan there by the way Jeff. :)



www.sickheadgames.com/stuff/garagegamesimages/torsion4_t.png


This project started as I delved into more serious development with TorqueScript. The existing IDEs out there were ok, but each had some glaring faults; clumsy interfaces, lacking key features, the code was unmaintained, made with Java... :). As I spent days writing code exclusively in script my existing editor started to show it's warts.

Also in general the debugging support across all the IDEs was bad. No fault of the original Tribes team (they had games to ship), but this was because of Torque's script debugging API and script execution core. It lacked some key features to make automated debugging process better than the existing echo and print methods I was currently using to solve my script bugs.

So for these reasons I dusted off our Lua script debugger (which was shelved when we decided to go with Torque) and started to convert it over to be a full fledged TorqueScript editor. Since I started with an existing codebase (which uses wxWindows... hello portability) the basics got up and running very quickly, but soon it was apparent that some serious refactoring was needed. That refactoring took a good 4 months because of interruptions like contract work and laziness. The last month or so has been me filling out little features to make the initial alpha version useable for YOU GUYS.

The system consists of two parts. The editor itself and an enhanced TelnetDebugger resource which also makes some changes to the TorqueScript parser and execution core. This enhancement allows things like breakpoints on code in the main body of a script file, debugging of the non DSO'd main.cs, and fixes some existing bugs. Both parts, in theory, should work in any combination. You should be able to use the editor with an unpatched Torque engine (really you wouldn't want to) or the enhanced debugger with another script debugger like TribalIDE. The plan is that once these changes to the core have had some eyeballs go thru it, we can possibly have it submitted to be an official change to the core engine.

At this point we have something very useable for daily script development. Just about everything you would expect in a VisualStudio for TorqueScript is working or on it's way in the coming months. Still one button debugging gets me drooling every time. I can't describe how great it is to hit F5 and have your script code save, launch in the debugger, and stop at your breakpoint. It is very sweet indeed.

Now I have a few more little pesky bugs to tackle then some time to prepare the security layer and installer. We plan to start the public alpha test this week, so keep your eyes peeled. We seriously want to hear absolutely all the feedback we can on it. Bug reports, things that suck in the alpha, pet features, crazy pie-in-the-sky ideas, pricing thoughts, everything.

Let's end with the aforementioned Torsion teaser video.

I can't wait to get this into the collective hands of the community this week.


www.sickheadgames.com/stuff/garagegamesimages/torsion1_t.png

www.sickheadgames.com/stuff/garagegamesimages/torsion2_t.png

www.sickheadgames.com/stuff/garagegamesimages/torsion3_t.png

www.sickheadgames.com/stuff/garagegamesimages/torsion5_t.png
Page «Previous 1 2
#1
07/18/2005 (12:45 am)
Tom, Your exporter is great, but this takes the cake! I'm just about to start some video tutorials on torque scripting, and just last week was thinking about all the shortcomings of the existing offerings, especially debugging! Just the thought of f5 debugging really does crank up the drool factor!! The video looked awesome, I can't wait to give the software spin!

B--
#2
07/18/2005 (12:52 am)
@Brandon - It would be extremely awesome if you decided to use our editor in your tutorials. Free copy of Torsion for you! =)
#3
07/18/2005 (1:09 am)
Looks awesome. I've only done a little bit of Torque scripting but I can see how this would be very useful.
#4
07/18/2005 (1:34 am)
I am VERY interested in this. I will definatly check it out! Awsome
#5
07/18/2005 (3:33 am)
I was doing something similar (using wxWidgets too), as an open-source project.

I didn't get very far before I ran into time problems, hehe. I want to get back to work on the project I started sometime in the near future.

sourceforge.net/torque-ide

This does look really cool though, :D

Robert
#6
07/18/2005 (5:28 am)
Wow. Great work. Igot my own set of complaints about having to use TorqueScript but this really helps the situation! (and takes away my whining initiative). Great job!
#7
07/18/2005 (5:33 am)
Thanks for the comments guys. I've gotten some great positive feedback tonight.

@Robert - I checked out the site. I hadn't heard of yours before... it looks like your making some progress. It is a fairly challenging job to make an editor... at first i was hesitant to make it edit files. I was gonna make it a read only script debugger, but i soon decided that it would be better to just bite the bullet and make it a full development IDE for TorqueScript.

If you have any tips or suggestions from your experience on yours i'd love to hear them if you feel like sharing, but i understand that you might not want to do that. =)
#8
07/18/2005 (5:34 am)
@Andy - Any specific issues with TorqueScript? Maybe there is something i can do in the editor to help?
#9
07/18/2005 (7:25 am)
Great work Tom! Can't wait to check out the alpha and give you feedback. This will greatly help us on our project. Lack of a debugger was a hurdle for many.

Nick
#10
07/18/2005 (7:28 am)
@Nick - Yea it really is. While one can get good with using echo()s to debug things, in my experience you really don't fully understand your code until you step thru it in the debugger. I've also found that i've learned alot about the TorqueScript language and the Torque engine itself that i wouldn't have without it.

IMO a good debugger are essential to learning Torque quick.
#11
07/18/2005 (7:36 am)
It seems great! Any chance to see a Mac port?
#12
07/18/2005 (7:39 am)
@Mathieu - OSX port is a high priority. I'm looking for partners to manage the port as i'm not experienced with Macs or Linux. The code is around 95% portable already. Just need someone to deal with the details, maintain builds, support platform specific bugs, etc for a percentage of the overall sales and free copies of course.

If anyone is interested we're collecting a list of candidates now. Just drop me an email and tell me your qualifications. We should be making a decision within the next few weeks.
#13
07/18/2005 (11:07 am)
@Robert: lol, you stole our website "design" and navigation and used the same name for your project, too... although I dont really care, that's pretty lame...

Check out the original TorqueIDE (TIDE)
#14
07/18/2005 (1:47 pm)
This is looking great! echo() debuging always felt like more of a work-around and kept you 'removed' from the code.
#15
07/18/2005 (1:57 pm)
I've a really simple suggestion - a function to automatically convert between TGE and TSE script without the user having to remember which function was renamed.
#16
07/18/2005 (2:22 pm)
Tom,

This looks great! I can't to try it out. I tried most of the TorqueScript editors and finally settled on TribalIDE. While the debugging works, I find it often crashes when debugging. I eventually switched back to just doing echo() commands. I've always done my actual scripting in Visual Studio, as for me personally, I haven't found the other editors to be as easy to use (although, one glaring miss of Visual Studio is not having corrent function lookup, etc)

If you can get the script editor working well, and the debugger working, you've got a winner! Let me know if you need any help alpha or beta testing, I'll gladly do it.

One last thing: I find I use bookmarks extensively in Visual Studio for flipping between two places of code or script. That would be a great feature to have if you find enough people want it to warrant working on it.

Thanks for your hard work, Tom!
- Drew

p.s. By the way, our team picked up your exporter and it is awesome. You are making life much easier for us on all fronts.
#17
07/18/2005 (3:14 pm)
Looks awesome Tom, can't wait to get a look at it.
#18
07/18/2005 (3:28 pm)
@Drew - Thanks. I personally never used the bookmark feature in my 10+ years of VC++ use, but i can see how it would be useful. Good suggestion. Plan on the feature in the 1.0 release.

@Andrew - That sounds interesting... is there *that* much of a difference in the script APIs between TGE and TSE? I personally haven't noticed any changing of function names really.

@Stefan Beffy Moises - I think you guys have done a great job with TIDE, but personally i've never liked Java based desktop apps (i was forced to do it for 6 months in my old job). I have seen people have problems with TIDE... the with typical Java issues, but with some effort in those cases it works. If people are looking for something more established or free i would definitely recommend it.
#19
07/18/2005 (3:49 pm)
Tom,

Any chance you could make the debugger automatically determine the properties of an object and create a tree? Instead of having to type in:

%player.name
%player.client
%player. ...

It would be nice to have it know what to do if I enter: %player
Then it would show:

%player
--- client
--- name
--- ...

- Brett
#20
07/18/2005 (3:51 pm)
@Brett - It doesn't do that at the moment, but part of the next alpha release will be autocompletion which will basically do that... if i figure out how to implement it right that is.
Page «Previous 1 2