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 «Previous 1 2 3 Last »
#1
05/31/2006 (1:41 am)
Woo!
Cool, Tom!
#2
05/31/2006 (2:04 am)
I cant stress enough how freakin useful this tool is. I mean, its so useful if you arent using it, you might as well be drilling on your own skull. Yes its *that* useful.

Nice one Tom, I was expecting the old one to expire yesterday :)
#3
05/31/2006 (2:05 am)
Nice!
#4
05/31/2006 (2:49 am)
Been awhile since i used this one. I'll try again and see if the issues i had previously are gone.
#5
05/31/2006 (2:50 am)
Thanks Tom, your continued work is definitely appreciated here.
#6
05/31/2006 (2:56 am)
Thanks for the encouragement guys!

@Phil - Your quote will be on the sales page! =)

@Ramen - Please let me know what issues you had/have. I do try to resolve whatever comes up.
#7
05/31/2006 (3:02 am)
Wow it definately seems to work alot better now.

How can i remove files from my project? It seems to just load all the files in a directory.
i only see a delete option :/

Oh my WOW, it does precompiling on my scripts... that's like spell check for my horrible syntax grammar!!!!
#8
05/31/2006 (3:11 am)
@Ramen - I assume remove everything but script files? Although that's not how it was designed to work, i could maybe add a feature which hides all files that are not script types and folders that do not contain scripts.

Do make note of the "Ignored Mod Paths" option in the project preferences... it allows you to remove those extra mod paths you don't normally work in from the tree and from the code completion engine.

And the pre-compiler does indeed rock. =)
#9
05/31/2006 (3:16 am)
Well i keep various revisions backups of my scripts in the same folder, and having it load them up isn't what i want. I'll just throw them into a "backup" folder and call it good.


Also.... I dunno, some people might see it as some sorta "feature", but you can't copy and paste between files. Each open file seems to have it's own clipboard :/

I'd imagine it'd be impossible to oraganize and move functions from file to file.

::Edit:: ok that's weird, that behavior doesn't seem to be happening now....... odd
#10
05/31/2006 (3:21 am)
@Ramen - You can cut and paste between script files... maybe that Ctrl+V is wearing out. ;)
#11
05/31/2006 (4:39 am)
Indeed a great IDE, thanks for all the work, I know it has benifited our developement
#12
05/31/2006 (4:44 am)
Tom: Is it possible to allow torsion to open text files regardless of the CS extension? For example with TGB the levels are saved as .t2d yet it would still be useful to open them. Perhaps a preference setting allowing you to define allowed types?

Also when reloading Torsion, it would be nice ot have the last config restored, eg if I add a DEBUG and RELEASE config, it will keep defaulting to debug.

The only other thing I can think of at the moment which is a bit of a pain is that typing a question mark doesn't appear to be allowed. I've had to copy/paste from other apps :(

Keep up the good work, Torsion rocks :)
#13
05/31/2006 (4:52 am)
@Phil,

I'll continue to drill on my own skull seeing that I use Linux and this wickedly kick arse tool is not available to us lesser individuals (just yet!)

-Ron
#14
05/31/2006 (5:14 am)
And remember kids, Linux spelled backwards is Xunil!

Can't wait to try this new version.
#15
05/31/2006 (6:21 am)
@Gary - Your still running the old version.... go install the new release. It allows you to define what extensions it treats as TorqueScript (i'll add TGB extensions as defaults once TGB is final). And my dumb question mark bug is fixed too. =)

Good call on restoring the selected config... i'll get that in.
#16
05/31/2006 (9:11 am)
Find and replace... hmm... at the moment I have to copy, skip to notepad, find replace, copy again, paste back in torsion ;p

And I second phil, torsion is a must have and quickly on its way (if not already there) as the defacto
torque editor.

~neo
#17
05/31/2006 (9:29 am)
Thank you for getting the num-keys working again. That was driving me nuts. Oh, and thanks for the tool in general, it is exceptional.
#18
05/31/2006 (9:42 am)
Ok, getting a bit confused now, do the current head versions of TGE/TGB/TSE contain the latest telnet debugger update or is there a newer one that I have to merge?

~neo
#19
05/31/2006 (9:50 am)
Wow, yeah this is pretty cool, Tom. All this stuff I never knew I needed! :)
#20
05/31/2006 (10:19 am)
really awesome Tom. Nice to be able to debug script this way.
Page «Previous 1 2 3 Last »