Game Development Community

dev|Pro Game Development Curriculum

Torsion Update

by Tom Spilman · 05/31/2006 (1:30 am) · 46 comments

www.sickheadgames.com/images/shbug_03.pngNew Torsion out today. As some of you may have noticed this one was up to the wire with the previous release expiring about 5 minutes ago (for those of you in CST).

This release mostly focused on the left side of the window... the project tree. As part of that the following got done:
  • You can now toggle the project tree filter to display ignored mod paths.
  • Fixed text coloring during project tree drag and drop.
  • When you 'explore' a file or folder from the project tree you no longer get the folders explorer bar.
  • Project tree view now supports multiple item selection with open, delete, move, and copy operations.
  • Updated directory watcher so you can always delete a folder in the project tree.
  • Added Explorer context menu in project tree context menu.
  • Fixed bug where you could not delete from the project tree when no script was open.
  • Fixed bug where you could delete the project root.
  • Added 'New File' into project tree context menu.
  • 'New Folder' in project tree context menu now works.
  • We now use the native icons for all files in the project tree view.
  • You can now adjust the files and folders which are always excluded from the project tree view in the Preferences.
There are a lot more changes including more configurability (in particular for script and DSO extensions) and VC++ style menus. You can read the rest of the change log, but i'm gonna highlight a few of my favorite improvements:


www.sickheadgames.com/stuff/nativeicons_t.pngNative Icons

Nothing really glamorous, but it's one that i've been wanted to see for a while. Torsion now queries the OS for the normal icons used for files when it populates the project tree. This has been a pet peeve of mine in VC++ since 2.0... don't assume i want to use the IDE to edit a non-source file, don't change the look of my non-source icons. The more i integrate the project tree with the native functionality of the OS the more useful it seems to become. I hope to extend this native feel to the Mac and Linux ports if it makes sense.








Explorer Menu

This came out really nice. It was inspired by the Explorer menu in the excellent tool BeyondCompare. This basically opens just about any shell extension based tool within Torsion.

www.sickheadgames.com/stuff/explorer_t.png

And as you can see in the screen shot... it gives you some basic access to shell integrated version control systems. It's not ideal by any means, but it's better than waiting till i had time to implement a custom integration with SVN. Now to the big feature.


Edit and Continue

www.sickheadgames.com/stuff/setnextstatement_t.pngThis was something i wasn't planning on adding at this time, but i had a need for it in a contract job and implemented a quick hack over a few hours. I've since spent a week on it and it's pretty damn good... better than VC++ in alot of cases, but of course it can fail badly in odd situations. For those of you not in the know, Edit and Continue is something Microsoft introduced with VC++ 6 that allowed you limited editing of C++ code while your app was running. This would allow you to make some small changes to the code without requiring a stop/compile/restart of the debug session.


For TorqueScript this is a easier than doing it for VC++, but it had it's own challenges. The first naive implementation just used exec() and the 'nocalls' parameter. The problem was that the 'nocalls' param was bugged in TGE 1.4 and would crash on some script files. Also it didn't quite behave as it should... global assignments outside of functions were executed and if you removed a function from the file it would not be removed from memory. A custom solution was needed and i added two new commands to the TelnetDebugger to make it work.



www.sickheadgames.com/stuff/reload_t.pngWhich brings us to the bad news... i haven't updated the TelnetDebugger resource with the changes just yet. So although your teased with the "Set Next Statement" and the script reload prompt dialog, you'll get an evil Bing! from Torsion as the TelnetDebugger denied you your request.


I'll try to get the update for this out very soon. :)







Stability and What's Next

A quick note. I've noticed people commenting on Torsion stability here an there. In general is pretty good, but there have been a few pesky crash bugs out there. The automated crash reports have helped, but the biggest problem is that Torsion is still in an alpha state. I regularly rework large portions of the code when inserting new core features which leads to things being more unstable than i'd like. I try hard to keep this from effecting people because i wanted to get a real IDE out to people back when TorqueScript debugging was a joke. I'm in the final stretch towards beta, so cut me a little slack please. At that point it's all stability, polish, and some crap work (docs and marketing). I won't ship something that is bug ridden. Promise! :)

I have a heavy load of contract work going on, but i'm still pushing hard towards the final. The next release will promise to complete one feature people ask alot about... Find and Replace. I almost never use it myself and it's something difficult to implement well, so it's been back burner'd for a long time now. I can't put it off any longer. I will have full Find and Replace in the next release... count on it.

You can get Torsion at the usual location:


www.sickheadgames.com/images/torsion_r_logo500.jpg

Download Torsion
v1.0.607 Alpha

Please send bug reports and feature requests over here.

- Tom
Page«First 1 2 3 Next»
#41
07/17/2006 (5:52 am)
On a short note, the current alpha version is already expired. When is the next Torsion build coming out? If so I'm interesting in pre-ordering the app. Any discount for that :P
#42
07/17/2006 (6:13 am)
Ugh. That sucks. Fortunately, I am currently stuck in optimizing C++ code, so I don't need Torsion right now, but it would have been a great impediment for me if it had happened in a more script-oriented production phase. Please Tom, release a new alpha or propose some kind of "early adopters" program... working with the fear that one of your tools might expire one day or another is not a nice feeling.
#43
07/17/2006 (11:12 am)
I put out a new version late last night, but i didn't update the version number on the download page or put out a plan (was really busy with stuff). Anyway... the new release is out. I hope to put up a plan about it in the next day or so.
#44
07/17/2006 (4:47 pm)
Got it! Thanks Tom. Keep up with the good job. Anyway, please think about that Early Adopter thing. Torsion is so good that I'm starting to wonder why you still consider it alpha. I've seen (and, sadly, used) professional production tools that were much less stable and with lot more serious bugs. I'm not joking!
#45
07/17/2006 (5:11 pm)
@Alberto - I still consider it alpha because it is not yet feature complete. I have a few things left on the list:

  • Add configurable user tools menu.
  • Replace in Files.
  • Finish simple print support.
  • Add special locals view to watch window.
  • Finalize the code browser features.
  • [li]Finalize code completion features.
... and then i feel ok calling it a beta and focusing solely on bug fixes, docs, and marketing materials. ;)
#46
01/01/2009 (6:26 pm)
@Tom
Finalize code completion features = Intellisense ???
Page«First 1 2 3 Next»