TorqueScript and future upgrades...
by Daniel Kruger · in Torque Game Builder · 10/09/2006 (12:40 am) · 4 replies
Hello all:
Just got my TGB last weekend, and have began playing around with the basic functions in it.
I'm pleasantly surprised at how well TorqueScript is put together, but did find it lacking in some very minor areas.
My questions
1) As future versions of TGB are released, do additional commands to TorqueScript also get introduced, or is TorqueScript considered "feature complete"? I imagine this has to be leveraged against TGE in order to be a consideration.
2) Is there an area for requests of things to add to the script language?
I've been looking mostly for file related functions that seem sorely lacking in the script language. Something like binary file reading/writing (so one could implement custom asset protection), or functions dedicated to it.
(Asset protection for purposes of preventing graphics/sound switch-out and to discourage the notion of "reading the last chapter first". I realize that anyone determined enough will rip off your content)
In all honesty, the functions I've found to be missing from the engine have been covered by other developers in custom libraries, or are fairly simple (which is why I wonder why they're missing).
To leverage this, I'm forced to upgrade beyond the script-only license to get at libraries that are not supported by the developers of the engine itself or I have to develop them on my own (at which point I have to manage my code against future releases, as well as try to keep it cross-platform).
I guess my view here is, code extensibility at the source code level (while a great feature here) should be the last resort for the quirkiest need of the application you're writing, not a cop-out for excluding basic or fairly reasonable functions that should be native to the script language. Hopefully that view isn't completely off base in regard to the audience TGB is intended for. The marketing materials sure seem to suggest I'm not too far off. :)
TGB is an excellent product, and I can't wait to get into it further. My comments are to encourage further excellence. Keep up the great work!
Just got my TGB last weekend, and have began playing around with the basic functions in it.
I'm pleasantly surprised at how well TorqueScript is put together, but did find it lacking in some very minor areas.
My questions
1) As future versions of TGB are released, do additional commands to TorqueScript also get introduced, or is TorqueScript considered "feature complete"? I imagine this has to be leveraged against TGE in order to be a consideration.
2) Is there an area for requests of things to add to the script language?
I've been looking mostly for file related functions that seem sorely lacking in the script language. Something like binary file reading/writing (so one could implement custom asset protection), or functions dedicated to it.
(Asset protection for purposes of preventing graphics/sound switch-out and to discourage the notion of "reading the last chapter first". I realize that anyone determined enough will rip off your content)
In all honesty, the functions I've found to be missing from the engine have been covered by other developers in custom libraries, or are fairly simple (which is why I wonder why they're missing).
To leverage this, I'm forced to upgrade beyond the script-only license to get at libraries that are not supported by the developers of the engine itself or I have to develop them on my own (at which point I have to manage my code against future releases, as well as try to keep it cross-platform).
I guess my view here is, code extensibility at the source code level (while a great feature here) should be the last resort for the quirkiest need of the application you're writing, not a cop-out for excluding basic or fairly reasonable functions that should be native to the script language. Hopefully that view isn't completely off base in regard to the audience TGB is intended for. The marketing materials sure seem to suggest I'm not too far off. :)
TGB is an excellent product, and I can't wait to get into it further. My comments are to encourage further excellence. Keep up the great work!
#2
I'm not seeing any forums labeled as "Private". Have I not purchased a sufficient license to gain access to it? (I have the script-only TGB)
Perhaps the asset protection I was seeking isn't such an issue in modern games. I remember back in the C-64 days when "Super Mario Bros" surfaced. It was really a game called "Great Giana Sisters" that someone had managed to replace the graphics files with Mario, goomba's etc... Perhaps today's pirates aren't nearly as creative :)
I suppose if someone wants to see the ending cut scenes badly enough without going through the game, they'll figure out a way. Probably no different than jumping to the last chapter on a DVD. Would be nice to at least make it more difficult to do that for the average user.
At any rate, the lack of it certainly doesn't stop me from proceeding forward.
What I meant by "basic or fairly reasonable functions" was something like I mentioned above. The ability to read and write binary files, for instance. I guess I sort of expected base-level standard file operations to be there. Scripting languages such as Python, Perl and closer "competitors" such as BlitzBasic have all of these out of the box. As I said, the lack of this doesn't deter at all. Just seemed a little strange to see it lacking in the script language when it's so common.
Again, thanks for taking the time to respond.
Regards
Dan
10/09/2006 (7:43 pm)
Thank you for your response, Alex.I'm not seeing any forums labeled as "Private". Have I not purchased a sufficient license to gain access to it? (I have the script-only TGB)
Perhaps the asset protection I was seeking isn't such an issue in modern games. I remember back in the C-64 days when "Super Mario Bros" surfaced. It was really a game called "Great Giana Sisters" that someone had managed to replace the graphics files with Mario, goomba's etc... Perhaps today's pirates aren't nearly as creative :)
I suppose if someone wants to see the ending cut scenes badly enough without going through the game, they'll figure out a way. Probably no different than jumping to the last chapter on a DVD. Would be nice to at least make it more difficult to do that for the average user.
At any rate, the lack of it certainly doesn't stop me from proceeding forward.
What I meant by "basic or fairly reasonable functions" was something like I mentioned above. The ability to read and write binary files, for instance. I guess I sort of expected base-level standard file operations to be there. Scripting languages such as Python, Perl and closer "competitors" such as BlitzBasic have all of these out of the box. As I said, the lack of this doesn't deter at all. Just seemed a little strange to see it lacking in the script language when it's so common.
Again, thanks for taking the time to respond.
Regards
Dan
#3
Login to garagegames.com > Community > Forums > Edit Forum Subscriptions > put a check in Torque 2D Game Builder Private Forums
As to the binary file i/o functions, not sure- you seem to be correct it's not a built-in feature of torquescript. At least not that I can find in the docs.
10/09/2006 (7:53 pm)
Dan, try this Login to garagegames.com > Community > Forums > Edit Forum Subscriptions > put a check in Torque 2D Game Builder Private Forums
As to the binary file i/o functions, not sure- you seem to be correct it's not a built-in feature of torquescript. At least not that I can find in the docs.
#4
10/09/2006 (10:36 pm)
Ah ha... cleverly hidden behind a link. Thanks for the assistance, Alex.
Torque Owner Alex Rice
Default Studio Name
In the TGB private forms there are a dozen or so topics including Suggestions, Torque Core, and Scripting .
In Torque (TGB, TGE, etc) games the sound files and graphics files are not protected, but everything else is at least binary/obscured. That includes scripts, gui, particle fx.
Garagegames and Torque users have written and published a bunch of commercial titles. As far as I've noticed, none of them seemed to have any special asset encryption scene.
What is "basic or fairly reasonable functions that should be native to the script language" is actually fairly subjective :-)