Tools/Utilities for Spring
Moderator: Moderators
-
- Posts: 436
- Joined: 26 Aug 2004, 08:11
Tools/Utilities for Spring
So I was curious, what kind of tools and utilities would be sueful to have for spring?
Continuing Upspring's development would be nice. It's a good app, but it could still be made better. The ability to UV map (or at least modify existing UV maps), apply transform without resetting the origin, etc would be nice.
A map editor, or at the very least a compiler with memory management would be good. I'd like to see the ability to change the orientation of features in a way other than making a new tdf and model.
Perhaps taking the scriptor source and tweaking it for spring operation would be good too. Rewrite the .h files and such so they are GPL but still do their job. Though I guess anyone could do that.
TDF/FBI editors are ultimately useless. Maybe provide a program that can do basic calculations so one can figure out buildtime, range, velocity, etc, but that's really not all that hard to do. Well, I suppose they wouldn't be useless if you could do something across an entire set of files (select *.fbi, multiply all sightdistance values by two, or something like that). But for general tweaking notepad is still dandy.
That's really about all there is...
A map editor, or at the very least a compiler with memory management would be good. I'd like to see the ability to change the orientation of features in a way other than making a new tdf and model.
Perhaps taking the scriptor source and tweaking it for spring operation would be good too. Rewrite the .h files and such so they are GPL but still do their job. Though I guess anyone could do that.
TDF/FBI editors are ultimately useless. Maybe provide a program that can do basic calculations so one can figure out buildtime, range, velocity, etc, but that's really not all that hard to do. Well, I suppose they wouldn't be useless if you could do something across an entire set of files (select *.fbi, multiply all sightdistance values by two, or something like that). But for general tweaking notepad is still dandy.
That's really about all there is...
Ive made a FBI editor in Excel. It allows you to add your own tags, so it never becomes out of date. It allows you to add, subtract, multiply and divide any value you want, you can have unlimited units opened, and it is even compatible with OTA. I hardly think that its usless, even Caydr uses it for AA.Gnome wrote:TDF/FBI editors are ultimately useless. Maybe provide a program that can do basic calculations so one can figure out buildtime, range, velocity, etc, but that's really not all that hard to do. Well, I suppose they wouldn't be useless if you could do something across an entire set of files (select *.fbi, multiply all sightdistance values by two, or something like that). But for general tweaking notepad is still dandy.
What would be handy is a height map editor, that allows you to preview your height map in 3d, and then go back and edit it. I am trying to make one, but as I have never worked with 3D before, and can only program in VB, dont expect anything to soon.
You mean like the FarCry editor? That one lets you sculpt out terrain in 3d, then you can export the heightmap and/or texturemap into .jpg's IIRC.Maelstrom wrote: What would be handy is a height map editor, that allows you to preview your height map in 3d, and then go back and edit it. I am trying to make one, but as I have never worked with 3D before, and can only program in VB, dont expect anything to soon.
-
- Posts: 436
- Joined: 26 Aug 2004, 08:11
Zaphod expressed an itnerest in binding a scripting language to UpSpring so that extra modules could eb made for other things such as scripting etc...
As for map editing you do ahve soemwhat of an ingame editor using Map exporter groupAI and terraind eformation, and I think ti wouldnt be that hard to tie the cursor itno raising and lowering heights and allowing you to modify the terrain ingame as you play then export a heightmap......
As for map editing you do ahve soemwhat of an ingame editor using Map exporter groupAI and terraind eformation, and I think ti wouldnt be that hard to tie the cursor itno raising and lowering heights and allowing you to modify the terrain ingame as you play then export a heightmap......
Servo is a animation untility that lets you take a TA model and create animations for it graphically, rather than the painstaking scripting method.
Basically, you make each frame of your animation in servo, and then it exports a bunch of script for you, saving you the hell that is blind animation scripting.
Source code for it is here: http://www.wolfegames.com/TA_Section/servo2source.zip
and the app itself is here: http://www.fileuniverse.com/?p=showitem&ID=193
Basically, you make each frame of your animation in servo, and then it exports a bunch of script for you, saving you the hell that is blind animation scripting.
Source code for it is here: http://www.wolfegames.com/TA_Section/servo2source.zip
and the app itself is here: http://www.fileuniverse.com/?p=showitem&ID=193
I usually just write .bat files to perform a "modify all values by some constant", like for example when I wanted to cut all weapon damages and maxhealths by an order 10...
Although a handy-dandy util that could search by metadata and regular expressions to modify stuff would come in useful indeed
For example:
CANFLY CANHEAL ISAIRBASE ? MAXHEALTH /= 10 : MAXHEALTH += 1
Although a handy-dandy util that could search by metadata and regular expressions to modify stuff would come in useful indeed
For example:
CANFLY CANHEAL ISAIRBASE ? MAXHEALTH /= 10 : MAXHEALTH += 1
- heightmap editor, but it could be that I implement some simple heightmap editor for my map renderer stuff, because people aren't going to use it if I don't write a terrain texture editor for it (And adding heightmap editing to such a tool wouldn't be that much work).
- Animation editing like servo is WIP for upspring.
- I think a mission editor and maybe trigger nodes in spring would be very nice. Fnordia was thinking about continuing on his lua stuff, maybe you can work together (Him adding LUA support for missions, and you creating an editor for adding LUA-based map nodes/triggers.... or something)
I tend to work on a lot of things at the same time... that used to work well until now
- Animation editing like servo is WIP for upspring.
- I think a mission editor and maybe trigger nodes in spring would be very nice. Fnordia was thinking about continuing on his lua stuff, maybe you can work together (Him adding LUA support for missions, and you creating an editor for adding LUA-based map nodes/triggers.... or something)
I tend to work on a lot of things at the same time... that used to work well until now

-
- Posts: 436
- Joined: 26 Aug 2004, 08:11
Dragon, I still don't see the point to have something like this ^_^ It seems very one use specific.Dragon45 wrote:I usually just write .bat files to perform a "modify all values by some constant", like for example when I wanted to cut all weapon damages and maxhealths by an order 10...
Although a handy-dandy util that could search by metadata and regular expressions to modify stuff would come in useful indeed
For example:
CANFLY CANHEAL ISAIRBASE ? MAXHEALTH /= 10 : MAXHEALTH += 1
Zaphod, I'm really interested in starting the heightmap editor in wxWidgets/SDL. Maybe we can coordinate and put in texture mapping as well?
- PauloMorfeo
- Posts: 2004
- Joined: 15 Dec 2004, 20:53
- Animation editing like servo is WIP for upspring.

At last, a light shines through the tunnel that is S3O. Even if it was only a previewer that would run BOS code, so that we could preview things, it would rule. If it had a basic, no-nonsense timestamp (note the word "stamp", not "line"- we don't need fluid animation curves, just timestamps of "now" to work out animation timing) editor... that'd be all it takes to get to the next level of awesome for a lot've mod concepts.
Short of building a particle system that modders can abuse and tie to COB events, this is just about one of the most important things we need.
Thank you. This is a really big deal, in terms of content creation. The TA community has never had a tool like this before, other than Servo, which doesn't work very well, and I strongly suspect that we will be making some fricking AWESOME demos with this... gods, the people stuck in the world of IK will be gasping, when they are reminded that this kind of animation is still relevant to gaming... and a very powerful tool for building a lot've things that are extremely hard to do with IK, like randomized-outcome animations.
I'd like UpSpring tiny bugs and shortcomings to be fixed. For instance:
- When you move/turn pieces and don't apply, then save/load or merge, pieces gets all deformed.
- The order in which UpSpring apply rotation is wrong. In TA, and I think Spring too because on one of my unit there's a pieces that I turn around all three axis and it looks the same, First it turns around Z, then around X, then around Y. (That's condidering the rotation turns the pieces but not the axis of the pieces. Y is done last, so when you turn a turret around Y, you can be sure it turns around the vertical axis, no matter how it turned around X to aim up and down.)
- UpSpring X and Z axis have their sign inverted.
Also, note you can't use 3doBuilder for reference, as in 3do builder, the Z axis is inverted.
- UpSpring use different distance units than what TA tradionnally used. A box like Scriptor to choose your units would be nice. With a button "reset to tradionnal units".
- I'd like a tickbox to choose between 0 - 360° angle and -180° +180° angle.
- You can't turn textures in UpSpring (when using the old 3do method).
- UpSpring change many faces into "groundplate"
- When I modify a model into UpSpring, for instance merging pieces and deleting faces, and then save it, it is somehow slightly corrupted and 3do builder can't open it anymore, until I use Benito's 3do dry cleaner on it. Not sure what's really bad in UpSpring output, the logs of 3do dry cleaner says it adds faces and removes vertex.
- I wish there was some way for UpSpring to store model "pose", and that someone would release lastest UpSpring source, and explain me what format they are and how to get them, and so I could program something to write walkscript from those poses. I don't really like the idea of UpSpring interfacing with angelscript to read angelscript script to generate bos script that then have to be compiled by Scriptor into cob, the idea of scripts that write scripts just sounds too convoluted to me and it would add even more confusion to the mind of newbie unit maker, I think the code that generate bos code could be as well hard coded in UpSpring.
Currently, I have to add some pieces to seperate axis of rotations on pieces that turn around more than one axis, then pose the model making sure to turn the right pieces for pieces I had to split to split their axis, then I have to manully note down angles, then I have to keep in mind that the sign of Z and X must be inverted, then I have to convert values like <-340> into <20> as it's not only prettier but also makes rounding error smaller (ok, actually it wouldn't matter much if I didn't do it), then I have to calculate manually what speed to use to reach the position just in time to get smooth animation. And for translation I have to note down the position, then substract the default position offset that I had to mentally remember, then I have to multiply by 2.5 to get traditionnal TA units, then to invert some sign, then I have to calculate the speed to reach the position just in time. The process is tedious, and the inverted signs makes it especially easy to goof up. It would be so much better if I could just store model "poses", input the time between each pose, and have UpSpring generate bos code. I'd be willing to write the part that translate poses coordinates + time between poses into bos code.
Oh, and once the pose system is done, it'd be nice to also have some point-and-click easy to use thing to tell UpSpring "This is the turret, this is the gun, this is the flare, now write me the bos!". And merge UpSpring with Scriptor too, so UpSpring wouldn't just generate the bos but the cob as well. And then something to visually visualise cone of fire and outpout the FBI with limited fire arc, and some menu to choose what kind of units it is (walker/veh/plane/ship/hover, cost, speed, etc...) and it would generate the FBI. Hmm, ok it's going a lil bit too far there.
I think most of it is already on Zaphod todo list, if not already half-coded in some unreleased WIP UpSpring version. UpSpring is great, and once this few little issues are fixed, we could definitively forget the oudated 3do Builder and use only UpSpring even for TA units. (Yes, many people are still modding TA and not Spring).
- When you move/turn pieces and don't apply, then save/load or merge, pieces gets all deformed.
- The order in which UpSpring apply rotation is wrong. In TA, and I think Spring too because on one of my unit there's a pieces that I turn around all three axis and it looks the same, First it turns around Z, then around X, then around Y. (That's condidering the rotation turns the pieces but not the axis of the pieces. Y is done last, so when you turn a turret around Y, you can be sure it turns around the vertical axis, no matter how it turned around X to aim up and down.)
- UpSpring X and Z axis have their sign inverted.
Also, note you can't use 3doBuilder for reference, as in 3do builder, the Z axis is inverted.
- UpSpring use different distance units than what TA tradionnally used. A box like Scriptor to choose your units would be nice. With a button "reset to tradionnal units".
- I'd like a tickbox to choose between 0 - 360° angle and -180° +180° angle.
- You can't turn textures in UpSpring (when using the old 3do method).
- UpSpring change many faces into "groundplate"
- When I modify a model into UpSpring, for instance merging pieces and deleting faces, and then save it, it is somehow slightly corrupted and 3do builder can't open it anymore, until I use Benito's 3do dry cleaner on it. Not sure what's really bad in UpSpring output, the logs of 3do dry cleaner says it adds faces and removes vertex.
- I wish there was some way for UpSpring to store model "pose", and that someone would release lastest UpSpring source, and explain me what format they are and how to get them, and so I could program something to write walkscript from those poses. I don't really like the idea of UpSpring interfacing with angelscript to read angelscript script to generate bos script that then have to be compiled by Scriptor into cob, the idea of scripts that write scripts just sounds too convoluted to me and it would add even more confusion to the mind of newbie unit maker, I think the code that generate bos code could be as well hard coded in UpSpring.
Currently, I have to add some pieces to seperate axis of rotations on pieces that turn around more than one axis, then pose the model making sure to turn the right pieces for pieces I had to split to split their axis, then I have to manully note down angles, then I have to keep in mind that the sign of Z and X must be inverted, then I have to convert values like <-340> into <20> as it's not only prettier but also makes rounding error smaller (ok, actually it wouldn't matter much if I didn't do it), then I have to calculate manually what speed to use to reach the position just in time to get smooth animation. And for translation I have to note down the position, then substract the default position offset that I had to mentally remember, then I have to multiply by 2.5 to get traditionnal TA units, then to invert some sign, then I have to calculate the speed to reach the position just in time. The process is tedious, and the inverted signs makes it especially easy to goof up. It would be so much better if I could just store model "poses", input the time between each pose, and have UpSpring generate bos code. I'd be willing to write the part that translate poses coordinates + time between poses into bos code.
Oh, and once the pose system is done, it'd be nice to also have some point-and-click easy to use thing to tell UpSpring "This is the turret, this is the gun, this is the flare, now write me the bos!". And merge UpSpring with Scriptor too, so UpSpring wouldn't just generate the bos but the cob as well. And then something to visually visualise cone of fire and outpout the FBI with limited fire arc, and some menu to choose what kind of units it is (walker/veh/plane/ship/hover, cost, speed, etc...) and it would generate the FBI. Hmm, ok it's going a lil bit too far there.
I think most of it is already on Zaphod todo list, if not already half-coded in some unreleased WIP UpSpring version. UpSpring is great, and once this few little issues are fixed, we could definitively forget the oudated 3do Builder and use only UpSpring even for TA units. (Yes, many people are still modding TA and not Spring).
Ah I'll keep that as a reference for improving upspring.
All the changes together mean a lot of changing in structure... it started with a simple position/XYZ rotation/scaling for every object. Now it has
-position
-a rotator object to handle rotation in an abstract way
-scaling.
-animation properties linked to object properties above, with keyframes.
I'm now looking into creating a lightweight build of mono and bind it to my C++ classes, but that is quite a large task in itself (So far I wasn't even able to build the damn thing). It's a lot better than angelscript though: mono supports a lot of different popular languages.
Creating scripts with scripts really isn't very weird. Look at most linux build tools for example. Besides a script language is just yet another way to build things, just different from C++.
All the changes together mean a lot of changing in structure... it started with a simple position/XYZ rotation/scaling for every object. Now it has
-position
-a rotator object to handle rotation in an abstract way
-scaling.
-animation properties linked to object properties above, with keyframes.
I'm now looking into creating a lightweight build of mono and bind it to my C++ classes, but that is quite a large task in itself (So far I wasn't even able to build the damn thing). It's a lot better than angelscript though: mono supports a lot of different popular languages.
Creating scripts with scripts really isn't very weird. Look at most linux build tools for example. Besides a script language is just yet another way to build things, just different from C++.
-
- Posts: 436
- Joined: 26 Aug 2004, 08:11