Project VesselBuilder for Orbiter

Here is the pitch_down_1 in the config. Did everything in order, including add at the end, still no texture viewed.
Code:
THR_14_ID = 14
THR_14_NAME = Pitch_dwn_1
THR_14_POS = 0 0 10
THR_14_DIR = 0 -1 0
THR_14_MAX0 = 214.517
THR_14_ISP0 = 1e+007
THR_14_ISPREF = 0
THR_14_PREF = 101400
THR_14_TANK = 0
THR_14_HASEXHAUST = TRUE
THR_14_EX_0_ID = 0
THR_14_EX_0_LSIZE = 1
THR_14_EX_0_WSIZE = 0
THR_14_EX_0_EXTEX = 1
THR_14_EX_0_CUSTOMPOSDIR = TRUE
THR_14_EX_0_POS = 1.113 1.387 0.56
THR_14_EX_0_DIR = 0.287 0.538 -0.793
THR_14_HASPARTICLES = FALSE
even tried it with the default texture.

I can see the thrusters with the DG.

---------- Post added at 02:49 AM ---------- Previous post was at 02:45 AM ----------

I think I found the problem. I put 0.05 for the width of the thruster, but it was saved as 0

I made it 0.05 in the config, now I see the thruster. :thumbup:
 
I think I found the problem. I put 0.05 for the width of the thruster, but it was saved as 0

I made it 0.05 in the config, now I see the thruster. :thumbup:

ah great! I'll see if I can add decimal numbers to that cell to make it more flexible! thanks for pointing that out!
 
Also, only the default texture works.
 
I hate to be taking your time, but here is the new config for the four pitch thrusters, All should face the aft direction, which they do, but shouldn't the numbers be in the -z in the coordinates ? They are in SC3.ini

Code:
THR_14_ID = 14
THR_14_NAME = Pitch_dwn_1
THR_14_POS = 0 0 10
THR_14_DIR = 0 -1 0
THR_14_MAX0 = 214.517
THR_14_ISP0 = 1e+007
THR_14_ISPREF = 0
THR_14_PREF = 101400
THR_14_TANK = 0
THR_14_HASEXHAUST = TRUE
THR_14_EX_0_ID = 0
THR_14_EX_0_LSIZE = 1
THR_14_EX_0_WSIZE = 0.05
THR_14_EX_0_EXTEX = -1
THR_14_EX_0_CUSTOMPOSDIR = TRUE
THR_14_EX_0_POS = 1.113 1.387 0.56
THR_14_EX_0_DIR = -0.287 -0.538 0.793
THR_14_HASPARTICLES = FALSE
 
THR_15_ID = 15
THR_15_NAME = Pitch_dwn_2
THR_15_POS = 0 0 -10
THR_15_DIR = 0 1 0
THR_15_MAX0 = 214.517
THR_15_ISP0 = 1e+007
THR_15_ISPREF = 0
THR_15_PREF = 101400
THR_15_TANK = 0
THR_15_HASEXHAUST = TRUE
THR_15_EX_0_ID = 0
THR_15_EX_0_LSIZE = 1
THR_15_EX_0_WSIZE = 0.05
THR_15_EX_0_EXTEX = -1
THR_15_EX_0_CUSTOMPOSDIR = TRUE
THR_15_EX_0_POS = -1.113 1.387 0.56
THR_15_EX_0_DIR = 0.287 -0.538 0.793
THR_15_HASPARTICLES = FALSE
 
THR_16_ID = 16
THR_16_NAME = Pitch_up_1
THR_16_POS = 0 0 10
THR_16_DIR = 0 1 0
THR_16_MAX0 = 214.517
THR_16_ISP0 = 1e+007
THR_16_ISPREF = 0
THR_16_PREF = 101400
THR_16_TANK = 0
THR_16_HASEXHAUST = TRUE
THR_16_EX_0_ID = 0
THR_16_EX_0_LSIZE = 1
THR_16_EX_0_WSIZE = 0.05
THR_16_EX_0_EXTEX = -1
THR_16_EX_0_CUSTOMPOSDIR = TRUE
THR_16_EX_0_POS = -1.113 -1.387 0.56
THR_16_EX_0_DIR = 0.287 0.538 0.793
THR_16_HASPARTICLES = FALSE
 
THR_17_ID = 17
THR_17_NAME = Pitch_up_2
THR_17_POS = 0 0 -10
THR_17_DIR = 0 -1 0
THR_17_MAX0 = 214.517
THR_17_ISP0 = 1e+007
THR_17_ISPREF = 0
THR_17_PREF = 101400
THR_17_TANK = 0
THR_17_HASEXHAUST = TRUE
THR_17_EX_0_ID = 0
THR_17_EX_0_LSIZE = 1
THR_17_EX_0_WSIZE = 0.05
THR_17_EX_0_EXTEX = -1
THR_17_EX_0_CUSTOMPOSDIR = TRUE
THR_17_EX_0_POS = 1.113 -1.387 0.56
THR_17_EX_0_DIR = -0.287 0.538 0.793
THR_17_HASPARTICLES = FALSE
 
I hate to be taking your time
I'm very happy to help and that people use the module, so no worries at all! :thumbup:

All should face the aft direction, which they do, but shouldn't the numbers be in the -z in the coordinates ? They are in SC3.ini

this is surely a good point and I am a bit puzzled because it works as I intend it to do, but I was just reviewing the code to be sure and I have the doubt that it shouldn't :lol:

Anyway the way I want it to work is to have the dir vector to set the exhaust direction, so if I have an engine that thrust towards right, I will have a dir vector for the exhaust that is towards left and I will put a vector towards left. This is commonly used in the orbiter's vessel's APIs (with the exception of one case, and that's my doubt about the code, but that's another story), I think that it is more often used because it can be more intuitive than doing the opposite (specify the thruster direction instead of the exhaust one).

to me seems more intuitive because if I have a thruster that pushes in a certain way and I have to put a completely custom exhaust somewhere else I see the vector of the exhaust direction more easily to find with respect to the hypothetical thruster direction (which is not there, because it's just the exhaust), anyway it's just a convention to agree, since the one is just the other multiplied by -1.

If users find more intuitive to specify the "face" direction instead of the exhaust direction this procedure can be changed in the final version (it's just a matter of multiplying the vector by -1 anytime it is used or updated in the dialog).

---------- Post added at 06:29 ---------- Previous post was at 05:57 ----------

In the meantime the texture swap event works, here is the event set for just a keypress and look at the skin of the DG...

[ame="http://www.youtube.com/watch?v=OUkDsN-C0x4"]http://www.youtube.com/watch?v=OUkDsN-C0x4[/ame]

this opens up the possibility to both use for example burned textures for reentry vehicles (using dynamic pressure as trigger), or to change the texture for rocket stages or to give the chance to make the vessel "skinnable". Or also other uses that the users may think (an image on a screen inside the vc? why not...)
 
With the follow me tool. Does the green line match the exhaust direction or the push direction ? Or as Newton put it, The action direction, or the reaction direction.
 
With the follow me tool. Does the green line match the exhaust direction or the push direction ? Or as Newton put it, The action direction, or the reaction direction.

It is supposed to match the exhaust direction.
 
I'm not sure it does, I'll check it again.

Another issue I had was when I tried to save bank thrusters. The thrust groups were saved as:

Right_bank 0 , 0
Left_bank 2 , 2

I changed it,(through trial and error) to:

Right_bank 0 , 3
Left_bank 2 , 1

Then it worked.
 
I'm not sure it does, I'll check it again.

Another issue I had was when I tried to save bank thrusters. The thrust groups were saved as:

Right_bank 0 , 0
Left_bank 2 , 2

I changed it,(through trial and error) to:

Right_bank 0 , 3
Left_bank 2 , 1

Then it worked.

YOU just found a bug in the add default RCS function. In the bank thrusters for one case the arm was not multiplied by -1, and the thrusters were added twice to a group... just the bank thrusters, who knows what I was thinking while doing everything correct but that... :facepalm: I just corrected it in the code, you'll have it available at the next release but in the meantime change the cfg as follows (just the lines I indicate here):

Code:
THR_0_ID = 0
THR_0_NAME = Bank_left_1
THR_0_POS = 10 0 0
THR_0_DIR = 0 1 0

THR_1_ID = 1
THR_1_NAME = Bank_left_2
THR_1_POS = -10 0 0
THR_1_DIR = 0 -1 0

THR_2_ID = 2
THR_2_NAME = Bank_right_1
THR_2_POS = 10 0 0
THR_2_DIR = 0 -1 0

THR_3_ID = 3
THR_3_NAME = Bank_right_2
THR_3_POS = -10 0 0
THR_3_DIR = 0 1 0

THGROUP_ATT_BANKLEFT = TRUE
THGROUP_ATT_BANKLEFT_THRUSTERS = 0, 1
THGROUP_ATT_BANKRIGHT = TRUE
THGROUP_ATT_BANKRIGHT_THRUSTERS = 2, 3

Many thanks for pointing that out, it would have taken weeks for me to find it :hailprobe:
 
Last edited:
Just glad to be here boss.

---------- Post added at 04:53 PM ---------- Previous post was at 04:03 PM ----------

Another, or same bug ?

I added a second Translate_up thruster, but it didn't save it.

THGROUP_ATT_UP = TRUE
THGROUP_ATT_UP_THRUSTERS = 4

So I added it manually

THGROUP_ATT_UP = TRUE
THGROUP_ATT_UP_THRUSTERS = 4, 22

But it still doesn't show.

---------- Post added at 04:56 PM ---------- Previous post was at 04:53 PM ----------

Here are the 2 thrusters in the config.

Code:
THR_4_ID = 4
THR_4_NAME = Translate_up_1
THR_4_POS = 0 0 0
THR_4_DIR = 0 1 0
THR_4_MAX0 = 400
THR_4_ISP0 = 1e+007
THR_4_ISPREF = 0
THR_4_PREF = 101400
THR_4_TANK = 0
THR_4_HASEXHAUST = TRUE
THR_4_EX_0_ID = 0
THR_4_EX_0_LSIZE = 1
THR_4_EX_0_WSIZE = 0.05
THR_4_EX_0_EXTEX = -1
THR_4_EX_0_CUSTOMPOSDIR = TRUE
THR_4_EX_0_POS = -0.903 -1.382 1.126
THR_4_EX_0_DIR = -0.767 0.554 -0.324
THR_4_HASPARTICLES = FALSE

THR_22_ID = 22
THR_22_NAME = Translate_up_2
THR_22_POS = 0 0 0
THR_22_DIR = 0 0 1
THR_22_MAX0 = 400
THR_22_ISP0 = 1000
THR_22_ISPREF = 0
THR_22_PREF = 101400
THR_22_TANK = -1
THR_22_HASEXHAUST = TRUE
THR_22_EX_0_ID = 0
THR_22_EX_0_LSIZE = 1
THR_22_EX_0_WSIZE = 0.05
THR_22_EX_0_EXTEX = -1
THR_22_EX_0_CUSTOMPOSDIR = TRUE
THR_22_EX_0_POS = 0.903 -1.382 1.126
THR_22_EX_0_DIR = 0.767 0.554 -0.324
THR_22_HASPARTICLES = FALSE


---------- Post added at 05:06 PM ---------- Previous post was at 04:56 PM ----------

Never mind this one.

I forgot to set the tank. :facepalm:

---------- Post added 03-25-19 at 04:10 AM ---------- Previous post was 03-24-19 at 05:06 PM ----------

I get a CTD when trying to assign more than one AnimComp, to the same parent.
 
Please check if this solves the issue
 

Attachments

Last edited:
Confirmed, fixed !!

---------- Post added at 04:54 PM ---------- Previous post was at 02:59 PM ----------

More than one thruster, not being saved to thrust group.
 
More than one thruster, not being saved to thrust group.

I have been trying both to see if there were glitches in the code and to replicate the issue but I can't... can you please give me the details on how you define the group? to see if there is something that I overlooked...
 
The default thruster works fine. Trans_down_1 e.g. When I add a thruster, then click on it in the menu. I name it, Trans_dwn_2 e.g. I then save the specs, (dir,tank,thrust, texture info). I push test thruster, and it works. If I move the cursor arrow to the main screen and press the NUM8 key for Translate down. The default thruster works, but the new one doesn't. I close the VB box, then exit the program. I open the config and under thrusters, Down thrusters only has the default one saved. I can add the new one manually and run the program, and it works. Hope I'm not confusing you.

---------- Post added at 08:06 PM ---------- Previous post was at 06:47 PM ----------

Maybe, I'm not adding the thrusters in the right order for the thrust groups. I kinda spread them out in the thruster list. Could that be the problem ?
 
The default thruster works fine. Trans_down_1 e.g. When I add a thruster, then click on it in the menu. I name it, Trans_dwn_2 e.g. I then save the specs, (dir,tank,thrust, texture info). I push test thruster, and it works. If I move the cursor arrow to the main screen and press the NUM8 key for Translate down. The default thruster works, but the new one doesn't. I close the VB box, then exit the program. I open the config and under thrusters, Down thrusters only has the default one saved. I can add the new one manually and run the program, and it works. Hope I'm not confusing you.

Ah! I see the point: since I'm replicating the vessel's orbiter API not all passages may be clear for those not accostumed with it. In orbiter there is a series of logical thruster groups which define the main functions and that are used for example when you press the NUM8 key or the KILLROT button. But those logical groups by default are empty, it's the user that creates thrusters and after he has to group them in a logical group (which can be main engine, pitch up, pitch down, translate back etc...). So, as said, new thrusters do not belong automatically to a thruster group, you have to define which thruster goes into which group yourself. In VB this can be done in the section after Thrusters which is called THRUSTERGROUPS (the sections are organized so it's kind of a "walkthrough" in vessel's making). So once you are happy with a thruster and you want to make it belonging to a group you go to the "THRUSTERGROUPS" section and you decide where do you want it to be. It may seem difficult, but if you try it it should be quite easy.

If you want it to belong to translate down group you choose the "TRANSLATE DOWN" item and you'll have the list of thrusters availble for you. Please note that if a group is already defined it will be locked, so you can't modify it directly, but it is anyway super easy, just undefine it by pressing the "UNDEFINE" button, choose the thrusters and then redefine it and it will (or at least should) work.

Also note that undefined groups have an asterisk * in front of their names, while defined not, so it is simpler to do the job
 
Last edited:
I see it is easy, once you know how. ;)

Having a blast with it.
 
Hey fred18 will you be able to create thrusters that gimbal?

This is a very good question... I have been thinking a lot about this. There is the possibility but it is very hard for me to define a usage in a general module. I can let the user set some parameters (maximum angle of rotation for example) but then how to activate it? it seems to me that it is one of those things that require direct c++ coding and cannot be applied in general terms. I could be wrong of course ,but I see it very difficult to use...
 
Back
Top