Project VesselBuilder for Orbiter

misha.physics

Well-known member
Joined
Dec 22, 2021
Messages
468
Reaction score
592
Points
108
Location
Lviv
Preferred Pronouns
he/him
Thanks.

@fred18, yes, I've just found it's not even necessary for the vessel to move. You can give a very little retro thrust and pressing brakes, so the vessel won't move, but the Follow Me Tool will work correctly.

@jacquesmomo, I'm going to ask you if your Cessna is based only on the VB? Or it uses the General Vehicle and Multistage 2015 as well (exactly for the Cessna aiplane)?

And maybe you could recommend some useful materials to understand VB for the vessel (let's think about an airplane like Cessna) making?
 

misha.physics

Well-known member
Joined
Dec 22, 2021
Messages
468
Reaction score
592
Points
108
Location
Lviv
Preferred Pronouns
he/him
Hi,
I'm a little confused with my experiments with those two sets for the TD points, so I need any advice.

The question is the following. Is it possible to use the only one SET for the TD points and leaving the "Changeover Animation" undefined? Or the both sets and the "Changeover Animation" must be defined?

For example an Cessna airplane by @jacquesmomo doesn't have retractable wheels and the corresponding animation. I've found that the following minimum TD points section works correctly:
Code:
;<-------------------------TOUCHDOWNPOINTS DEFINITIONS------------------------->

TDP_1_0_POS = 0 -2 5
TDP_1_0_STIFFNESS = 100000
TDP_1_0_DAMPING = 3000
TDP_1_0_MU = 5
TDP_1_0_MULNG = 0.5
 
TDP_1_1_POS = -8.5 -2.25 -0.5
TDP_1_1_STIFFNESS = 100000
TDP_1_1_DAMPING = 3000
TDP_1_1_MU = 12.5
TDP_1_1_MULNG = 0.5
 
TDP_1_2_POS = 8.5 -2.25 -0.5
TDP_1_2_STIFFNESS = 100000
TDP_1_2_DAMPING = 3000
TDP_1_2_MU = 12.5
TDP_1_2_MULNG = 0.5
 
TDP_1_3_POS = 0 -1 -5
TDP_1_3_STIFFNESS = 100000
TDP_1_3_DAMPING = 3000
TDP_1_3_MU = 12.5
TDP_1_3_MULNG = 1
 
TDP_2_0_POS = 0 -2.17 5
TDP_2_0_STIFFNESS = 100000
TDP_2_0_DAMPING = 3000
TDP_2_0_MU = 10
TDP_2_0_MULNG = 3
 
TDP_2_1_POS = -8.5 -2.15 -3
TDP_2_1_STIFFNESS = 100000
TDP_2_1_DAMPING = 3000
TDP_2_1_MU = 12.5
TDP_2_1_MULNG = 4
 
TDP_2_2_POS = 8.5 -2.15 -3
TDP_2_2_STIFFNESS = 100000
TDP_2_2_DAMPING = 3000
TDP_2_2_MU = 12.5
TDP_2_2_MULNG = 4
The SET 2 is disabled and the "Changeover Animation" option is undefined in the VB window, but the SET 2 is defined in the code above. And it seems to be necessary.

Then I've found that the minimum working TD points section for the included DG_VB is:
Code:
;<-------------------------TOUCHDOWNPOINTS DEFINITIONS------------------------->

TDP_1_0_POS = 0 -2 9
TDP_1_0_STIFFNESS = 1e+007
TDP_1_0_DAMPING = 100000
TDP_1_0_MU = 3
TDP_1_0_MULNG = 3
 
TDP_1_1_POS = 0 -2 -5
TDP_1_1_STIFFNESS = 1e+007
TDP_1_1_DAMPING = 100000
TDP_1_1_MU = 3
TDP_1_1_MULNG = 3
 
TDP_1_2_POS = -8.5 -2 -7.05
TDP_1_2_STIFFNESS = 1e+007
TDP_1_2_DAMPING = 100000
TDP_1_2_MU = 3
TDP_1_2_MULNG = 3
 
TDP_1_3_POS = 8.5 -2 -7.05
TDP_1_3_STIFFNESS = 1e+007
TDP_1_3_DAMPING = 100000
TDP_1_3_MU = 3
TDP_1_3_MULNG = 3
 
TDP_SECONDSET_ENABLED = TRUE
TDP_CHANGEOVER_ANIM = 5
TDP_2_0_POS = 0 -2.57 10
TDP_2_0_STIFFNESS = 1e+006
TDP_2_0_DAMPING = 100000
TDP_2_0_MU = 1.6
TDP_2_0_MULNG = 0.1
 
TDP_2_1_POS = -3.5 -2.57 -1
TDP_2_1_STIFFNESS = 1e+006
TDP_2_1_DAMPING = 100000
TDP_2_1_MU = 3
TDP_2_1_MULNG = 0.2
 
TDP_2_2_POS = 3.5 -2.57 -1
TDP_2_2_STIFFNESS = 1e+006
TDP_2_2_DAMPING = 100000
TDP_2_2_MU = 3
TDP_2_2_MULNG = 0.2
But I can't get these TD points to work without the "Changeover Animation". It doesn't work when I change the animation from "Gear" to another (Elevators or Rudders, for example). Is the "Changeover Animation" option related to the gear mesh groups? It seems to be strange, and I'm not sure in it.

I think it's a general question non specific to the VB only, so maybe someone who programs its own vessel module could suggest something.

I took a quick look at the API_Guide.pdf and API_Reference.pdf, but didn't found the thing. Maybe I was looking badly and in the wrong place...

I'm just trying to understand what is the minimum set for the TD points for an airplane (with three wheels which can't be retracted).
 
Last edited:

misha.physics

Well-known member
Joined
Dec 22, 2021
Messages
468
Reaction score
592
Points
108
Location
Lviv
Preferred Pronouns
he/him
Hi.
Sorry for the following amateurish questions.

Let's say I created a vessel based on the VB module, namely I have the vessel *.cfg file (as well as a *.msh file, etc) that the VB uses. Is it possible to automatically transform all the data presented in the *.cfg file to an independent *.dll module for the vessel somehow?

And is it possible to see the corresponding code for the vessel that will contain all the parameters defined in the VB *.cfg file? I'm just wondering how such code might look at all. Could such code be manually compiled later to get the vessel *.dll module?

(Looks like I mean C++ code. I don't know anything about it yet. For now I'm only interested in the concept itself.)
 

Buck Rogers

Major Spacecadet
Joined
Feb 26, 2013
Messages
446
Reaction score
370
Points
63
Delving deeper into VB, a couple of questions/issues:

First off, how does the EVENT "disable by default" function? Does this work with reconfigurations?
I get a CTD on reloading a saved .scn. When I delete the entry: EVENTS_TO_RECONSUME, it loads, and apparently without negative effects?
I have several vessels attached (in series) to a live cargo on a Multistage rocket, it seems if I have events in more tha one VB vessel they are detached on loading?
Is there a way to jettison an attachment with velocity as an event? I can open the attachment interface and release or just delete an attachment point, but not as an automatic function?
Also it would be nice to have an event to switch vessel focus.
automatically transform all the data presented in the *.cfg file to an independent *.dll
Somebody made something like that for Spacecraft4 but there's nothing like that for VB
And is it possible to see the corresponding code for the vessel that will contain all the parameters defined in the VB *.cfg file? I'm just wondering how such code might look at all. Could such code be manually compiled later to get the vessel *.dll module?
All "GUIs" utilise the same Orbiter API, and all code can be written in notepad before compiling, an understanding of C++ is helpful.
There are many examples in the OrbiterSDK folder to get an idea how it works.
 

jacquesmomo

Addon Developer
Addon Developer
Joined
Jun 14, 2008
Messages
616
Reaction score
459
Points
78
Location
FRANCE
Website
francophone.dansteph.com
First off, how does the EVENT "disable by default" function? Does this work with reconfigurations?
Hi

There is a function that can deactivate/enable an event

For this the line
EVENT_nn_DISABLED = FALSE (or TRUE)
must be in the section

very useful

There are some examples in my Cessna.

An example: in this rocket, when the doors are open, the motor keys (P - O) are deactivated.
(but not the "numpad +" key....) !!!

But for reconfiguration change, all is reset 'by defaut"

;*********************************************************
; Touches de commandes "rapide" des moteurs
;*********************************************************
EVENT_0_ID = 0
EVENT_0_NAME = Main 100% (key P)
EVENT_0_TYPE = 5
EVENT_0_DISABLED = FALSE
EVENT_0_TRIGGERTYPE = 2
EVENT_0_REPEAT = 1
EVENT_0_KEY = 25
EVENT_0_KEYMOD = 0
EVENT_0_THG = 0
EVENT_0_THGLVL = 1

EVENT_1_ID = 1
EVENT_1_NAME = Hover 100% (key O)
EVENT_1_TYPE = 5
EVENT_1_DISABLED = FALSE
EVENT_1_TRIGGERTYPE = 2
EVENT_1_REPEAT = 1
EVENT_1_KEY = 24
EVENT_1_KEYMOD = 0
EVENT_1_THG = 2
EVENT_1_THGLVL = 1

[(...) event 2 to 12 ]

;**********************************************************************************
; EXPERIMENTAL
; SI portes ouvertes ALORS commande(s) "P" ou "O" désactivée(s)
;**********************************************************************************
EVENT_13_ID = 13
EVENT_13_NAME = Sas Disable command O (Hoover 100%)
EVENT_13_TYPE = 12
EVENT_13_TRIGGERTYPE = 2
EVENT_13_REPEAT = 1
EVENT_13_KEY = 2
EVENT_13_KEYMOD = 0
EVENT_13_OTHERTOENABLE = 1
EVENT_13_OTHERENABLE = FALSE

EVENT_14_ID = 14
EVENT_14_NAME = Sas Enable command O (Hoover 100%)
EVENT_14_TYPE = 12
EVENT_14_TRIGGERTYPE = 2
EVENT_14_REPEAT = 1
EVENT_14_KEY = 2
EVENT_14_KEYMOD = 1
EVENT_14_OTHERTOENABLE = 1
EVENT_14_OTHERENABLE = TRUE

EVENT_15_ID = 15
EVENT_15_NAME = Soute Disable command P (Main 100%)
EVENT_15_TYPE = 12
EVENT_15_TRIGGERTYPE = 2
EVENT_15_REPEAT = 1
EVENT_15_KEY = 3
EVENT_15_KEYMOD = 0
EVENT_15_OTHERTOENABLE = 0
EVENT_15_OTHERENABLE = FALSE

EVENT_16_ID = 16
EVENT_16_NAME = Soute Enable command P(Main 100%)
EVENT_16_TYPE = 12
EVENT_16_TRIGGERTYPE = 2
EVENT_16_REPEAT = 1
EVENT_16_KEY = 3
EVENT_16_KEYMOD = 1
EVENT_16_OTHERTOENABLE = 0
EVENT_16_OTHERENABLE = TRUE
 
Top