How to make scenery disappear and reappear at specific times

Hi, I'm creating a new monastir airport for FS2004 in monastir, tunisia, and I want to add some objects that appear on certain dates and then disappear in later dates, to replicate some events that occur at that airport, I downloaded some New York scenery featuring the twin towers which disappear after a certain day, is it possible to do that at this airport?, and if so, how? thank you in advance :)
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
For FS2004 you could indeed tweak the model to have the condition in it. Did you make the objects yourself?
 
yes I did, some are aircraft and some are a series of 3D lights for the runway, I'd like to begin with the lights first.
though instead of making 1 light then using XML to place them (because I have no idea how to do that), I made a lot of lights and placed them by copying and dragging along the airport, not the model of the light on the runway but the 3D light effect I made.
 
Last edited:

dave hoeffgen

Resource contributor
Although I never developed for FS9 I'm curious now.

Is there any reference table of the conditions that can be used and how they are named?
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
The wiki article mentioned above shows the tweaks in the ASM file. The FS2000 scenery SDK has an overview of variables. Or the html file that comes with bglc_9 also contains a list.
 
Okay soooooooooo... I've read through the html file, and I didn't get a thing!!!!!! :rotfl:
All i need is the code for:
Light model: day off, night/dawn/dusk on
Static aircraft: appears only on the 12th of January
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Hi,

The wiki article does contain an example to have lights on at night/dawn/dusk. So you can just copy those lines from there.

For the day of the year the variable is 38A (hexadecimal value). And 12th of January is the 12th day of the year, so your line would be something like:

Code:
IFIN1 skipobj, 038A, 12, 12
... (call to your object here)
skipobj label word
 

dave hoeffgen

Resource contributor
Reading throught this it makes more and more sense to use asm based objects with conditional/seasonal display for autogen objects even for FSX and beyond.
Does this still work in the recent versions of Prepar3d?
Also is there any way nowadays to obtain the necessary sdk and references?
 
These are the call lines i found:

; NonAlpha
AN124_NonAlpha label BGLCODE
BGL_CALL_32 AN124_Root_5 ; Node 1 - Root
BGL_END
BGL_RETURN


AN124_Root_5 label BGLCODE

; Node 2 - AA transform:

BGL_SET_MATRIX_INDIRECT 0
BGL_CALL_32 AN124_AA_6 ; Node 2 - AA
AN124_skip_4 label BGLCODE

; Node 4 - AC transform:

BGL_SET_MATRIX_INDIRECT 1
BGL_CALL_32 AN124_AC_7 ; Node 4 - AC
AN124_skip_5 label BGLCODE

; Node 3 - AB transform:

BGL_SET_MATRIX_INDIRECT 2
BGL_CALL_32 AN124_AB_8 ; Node 3 - AB
AN124_skip_6 label BGLCODE
BGL_RETURN

which is the call line i have to insert the condition to?
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Reading throught this it makes more and more sense to use asm based objects with conditional/seasonal display for autogen objects even for FSX and beyond.
Does this still work in the recent versions of Prepar3d?
Also is there any way nowadays to obtain the necessary sdk and references?
The old FS2004 code is no longer supported in recent P3D versions. Also performance is better when using native FSX/P3D objects.
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
These are the call lines i found:

; NonAlpha
AN124_NonAlpha label BGLCODE
BGL_CALL_32 AN124_Root_5 ; Node 1 - Root
BGL_END
BGL_RETURN


AN124_Root_5 label BGLCODE

; Node 2 - AA transform:

BGL_SET_MATRIX_INDIRECT 0
BGL_CALL_32 AN124_AA_6 ; Node 2 - AA
AN124_skip_4 label BGLCODE

; Node 4 - AC transform:

BGL_SET_MATRIX_INDIRECT 1
BGL_CALL_32 AN124_AC_7 ; Node 4 - AC
AN124_skip_5 label BGLCODE

; Node 3 - AB transform:

BGL_SET_MATRIX_INDIRECT 2
BGL_CALL_32 AN124_AB_8 ; Node 3 - AB
AN124_skip_6 label BGLCODE
BGL_RETURN

which is the call line i have to insert the condition to?
You can put the IFIN1 line just before the BGL_CALL command at the top.
 

dave hoeffgen

Resource contributor
The old FS2004 code is no longer supported in recent P3D versions. Also performance is better when using native FSX/P3D objects.
My thought was that sometimes single trees are needed so I have to place them as agnlibobject. As the agn system doesn't support seasonal variations there I need them in the model and except for P3Dv4 conditional display isn't supported in models either...
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Why you want to place a single tree as a library object? Just place it with a small AGN vegetation rectangle and the seasons work perfectly.
 

arno

Administrator
Staff member
FSDevConf team
Resource contributor
Did you make sure the label that is jumped on failure exists?
 
Top