<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>http://www.fsdeveloper.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nlr</id>
	<title>FSDeveloper Wiki - User contributions [en-gb]</title>
	<link rel="self" type="application/atom+xml" href="http://www.fsdeveloper.com/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Nlr"/>
	<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php/Special:Contributions/Nlr"/>
	<updated>2026-05-04T19:17:35Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.41.1</generator>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Talk:XtoMDL.exe&amp;diff=5029</id>
		<title>Talk:XtoMDL.exe</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Talk:XtoMDL.exe&amp;diff=5029"/>
		<updated>2008-03-31T13:24:03Z</updated>

		<summary type="html">&lt;p&gt;Nlr: Talk:XtoMDL.exe moved to Talk:XtoMDL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[Talk:XtoMDL]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Talk:XtoMDL&amp;diff=5028</id>
		<title>Talk:XtoMDL</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Talk:XtoMDL&amp;diff=5028"/>
		<updated>2008-03-31T13:24:03Z</updated>

		<summary type="html">&lt;p&gt;Nlr: Talk:XtoMDL.exe moved to Talk:XtoMDL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;a href=http://watch-naruto-episode.bestmine.com/map.html&amp;gt; watch naruto episode &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://barely-legal-natalia.bestmine.com/map.html&amp;gt; barely legal natalia &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://scooter-trick.bestmine.com/map.html&amp;gt; scooter trick &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://roketa-scooter.bestmine.com/map.html&amp;gt; roketa scooter &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://scooter-tuning.bestmine.com/map.html&amp;gt; scooter tuning &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://peugeot-scooter.bestmine.com/map.html&amp;gt; peugeot scooter &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://vespa-scooter.bestmine.com/map.html&amp;gt; vespa scooter &amp;lt;/a&amp;gt; &lt;br /&gt;
&amp;lt;a href=http://150cc-scooter.bestmine.com/map.html&amp;gt; 150cc scooter &amp;lt;/a&amp;gt;&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=XtoMDL.exe&amp;diff=5027</id>
		<title>XtoMDL.exe</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=XtoMDL.exe&amp;diff=5027"/>
		<updated>2008-03-31T13:24:02Z</updated>

		<summary type="html">&lt;p&gt;Nlr: XtoMDL.exe moved to XtoMDL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECT [[XtoMDL]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=XtoMDL&amp;diff=5026</id>
		<title>XtoMDL</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=XtoMDL&amp;diff=5026"/>
		<updated>2008-03-31T13:24:02Z</updated>

		<summary type="html">&lt;p&gt;Nlr: XtoMDL.exe moved to XtoMDL&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== XtoMDL ==&lt;br /&gt;
&lt;br /&gt;
Original Entry by Bill Leaming&lt;br /&gt;
&lt;br /&gt;
The new XtoMDL.exe program for FSX is &amp;quot;command line driven,&amp;quot; meaning that there&#039;s no fancy-schmanzy GUI to use.&lt;br /&gt;
&lt;br /&gt;
Did you know that you could create a shortcut on your desktop that would &#039;proxy&#039; commands to another application?(1) Create a shortcut on your desktop, name it something clever like CompileAircraft and enter the following for the &#039;target&#039; (fix up c:\temp to be the appropriate paths to the files):&lt;br /&gt;
&lt;br /&gt;
 %windir%\system32\cmd.exe /K c:\temp\xtomdl.exe /DICT:c:\temp\modeldef.XML&lt;br /&gt;
&lt;br /&gt;
For example, my &amp;quot;target&amp;quot; path is:&lt;br /&gt;
&lt;br /&gt;
 %windir%\system32\cmd.exe /K C:\Autodesk\Max8\FSX_Tools\xtomdl.exe /DICT:C:\Autodesk\Max8\FSX_Tools\modeldef.XML&lt;br /&gt;
&lt;br /&gt;
You can drag and drop onto that shortcut and a new .CMD window will open and stay open so you can see your results.&lt;br /&gt;
&lt;br /&gt;
=== Aircraft models ===&lt;br /&gt;
&lt;br /&gt;
As an &amp;quot;improvement&amp;quot; to the above(2), rename the shortcut something like &amp;quot;CompileAircraft&amp;quot; then move the shortcut to your \SendTo folder:&lt;br /&gt;
&lt;br /&gt;
 C:\Documents and Settings\User Name\SendTo&lt;br /&gt;
&lt;br /&gt;
Next, right click on the moved shortcut and edit the &amp;quot;target&amp;quot; like this:&lt;br /&gt;
&lt;br /&gt;
  %windir%\system32\cmd.exe /K C:\Autodesk\Max8\3DSM7\Plugins\xtomdl.exe /XANIM /DICT:C:\Autodesk\Max8\3DSM7\Plugins\modeldef.XML &amp;gt; buildlog.txt&lt;br /&gt;
&lt;br /&gt;
Note that I&#039;ve added the /XANIM switch, as well as the &amp;quot;&amp;gt; buildlog.txt&amp;quot;  so that I can get a full text file of the X2MDL.exe&#039;s build log in case of problems. ;)&lt;br /&gt;
&lt;br /&gt;
Now, in Explorer rightclick on the .x file and select &amp;quot;CompileAircraft&amp;quot; from the popup menu.&lt;br /&gt;
&lt;br /&gt;
NOTE: The chief advantage of the &amp;quot;Send To&amp;quot; method is that you can have the .x file(s) anywhere you like to keep them, and the compiled .mdl will appear in that same location.&lt;br /&gt;
&lt;br /&gt;
=== Scenery models ===&lt;br /&gt;
&lt;br /&gt;
Creating scenery requires one additional command line switch: /XMLSAMPLE to be added to mix.&lt;br /&gt;
&lt;br /&gt;
Copy the existing CompileAircraft shortcut you just made, and paste it back in the \SendTo folder. Rename is something clever like - say - CompileScenery, and then edit the Target path and add /XMLSAMPLE to the end, so it looks something like this:&lt;br /&gt;
&lt;br /&gt;
 %windir%\system32\cmd.exe /K C:\Autodesk\Max8\FSX_Tools\xtomdl.exe /DICT:C:\Autodesk\Max8\FSX_Tools\modeldef.XML /XMLSAMPLE&lt;br /&gt;
&lt;br /&gt;
=== Common Problems ===&lt;br /&gt;
&lt;br /&gt;
1. XTOMDL.EXE generates only MDL-Files with ZERO SIZE -- International windows settings must be set to US (dot used as decimal character)&lt;br /&gt;
&lt;br /&gt;
2. XTOMDL.EXE shows ERROR: NOT CORRECT DIRECTX OR DIRECTX NOT FOUND -- DIRECTX 9.0c Update from October 2006 is needed&lt;br /&gt;
&lt;br /&gt;
3. XTOMDL.EXE doesn&#039;t start because it needs the MICROSOFT .NET FRAMEWORK 2.0505 -- Download it from Microsoft&lt;br /&gt;
&lt;br /&gt;
=== References ===&lt;br /&gt;
&lt;br /&gt;
*1) Thanks to John Kane from ACES (MS Developer) for this tip!&lt;br /&gt;
*2) Thanks to Tom Gibson for this tip!&lt;br /&gt;
&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
[[category:Aircraft design]]&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[Category:Tools]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Learning_Center_(FSX)&amp;diff=5025</id>
		<title>Learning Center (FSX)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Learning_Center_(FSX)&amp;diff=5025"/>
		<updated>2008-03-31T13:23:06Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The &#039;&#039;&#039;Learning Center&#039;&#039;&#039; is the manual for FSX, and contains a wealth of information on all aspects of operating the simulator.&lt;br /&gt;
&lt;br /&gt;
You can acccess the &#039;&#039;&#039;Learning Center&#039;&#039;&#039; from the GUI within FSX,&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
or at any time from within your internet browser, (without launching FSX).&lt;br /&gt;
== HowTo ==&lt;br /&gt;
&lt;br /&gt;
=== Find lc01.htm ===&lt;br /&gt;
Using Explorer (file manager), navigate to the FSX root folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In there you&#039;ll find a folder named &#039;&#039;&#039;Uires&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Containing a file called &#039;&#039;&#039;lc01.htm&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Default location is -&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;C:\Program Files\Microsoft Games\Microsoft Flight Simulator X\Uires\lc01.htm&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Create a shortcut ===&lt;br /&gt;
Right-click on &#039;&#039;&#039;lc01.htm&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Left-click on &#039;&#039;&#039;Create Shortcut&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Rename the shortcut to &#039;&#039;&#039;Learning Center&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Copy the shortcut.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Paste it onto your &#039;&#039;desktop&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
=== Open the Learning Center ===&lt;br /&gt;
Double click the shortcut, the &#039;&#039;&#039;Learning Center&#039;&#039;&#039; will now open in your internet browser.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
You can view all the content at your leisure.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Notes&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Getting Started&#039;&#039;&#039; is the only page that doesn&#039;t work outside the sim.&lt;br /&gt;
* Depending on your browser &#039;&#039;security settings&#039;&#039;, you may be prompted with an alert. Just &amp;quot;Allow blocked content&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
=== Internal ===&lt;br /&gt;
{{:Transclusion-FSX-Links-Related-Problem Resolving (FSX)}}&lt;br /&gt;
&lt;br /&gt;
=== External ===&lt;br /&gt;
Placholder text&lt;br /&gt;
&lt;br /&gt;
[[Category:General]]&lt;br /&gt;
[[category:FSX]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4926</id>
		<title>Ground polygons (ASM tweak)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4926"/>
		<updated>2008-03-28T08:41:45Z</updated>

		<summary type="html">&lt;p&gt;Nlr: /* FS2002 gamepack */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to create ground polygons with GMax is an often asked question. This article will try to guide you through that process, as it takes some tweaking to get the correct results.&lt;br /&gt;
&lt;br /&gt;
[[Ground_polygons_with_Gmax_-_How_to_create_the_polygons|How to create your ground polygons]] is outside of the scope of this article. Basically you can just draw them like any polygon and then map the texture you want on it. The only difference is that the polygons are on the ground, so they have a z-coordinate of zero. If you want polygons with smooth corners, follow the instructions in the tutorial [[Ground polygons with Gmax - How to create the polygons]].&lt;br /&gt;
&lt;br /&gt;
Please note that if you want your ground polygons to be compatible with FSX (with the SP1 or later installed), you need to make sure that the vertices of your ground polygons are not further away from each other then 100 meters. So if you have a big polygon, you might have to split it into smaller pieces. If you keep this additional restriction in mind, you will not have trouble with the added earth curvation of FSX.&lt;br /&gt;
&lt;br /&gt;
==FS2002 gamepack==&lt;br /&gt;
&lt;br /&gt;
The first complication is that you need to use the FS2002 gamepack ([[Installing the FS 2002 Gmax-SDK]]). This is because the MDL format used by the FS2004 and FSX gamepacks is not really suitable for creating ground polygons. When using them you for example get flickering polygons and the shadow of other objects is also not displayed correctly on them. With the FS2002 gamepack we can apply some tweaks to prevent these trouble.&lt;br /&gt;
&lt;br /&gt;
But you can not download the FS2002 gamepack from the internet, some files only came with the FS2002 Pro CD. So if you don&#039;t own that version of FS (anymore) you have a little problem. A work around is to use [[Saving_X_files_using_MDLCommander | MDLCommander]] with the FS2004 gamepack and then run the  X file that you saved through the FS2002 MakeMDL manually.&lt;br /&gt;
&lt;br /&gt;
Be sure that you use the [http://download.microsoft.com/download/FlightSim2002/Install/sdk/W982KMeXP/EN-US/MakeMDL_SDK.exe latest version] of the FS2002 MakeMDL, as the initial version does not allow you to save the ASM source files that you need to tweak later on. For a basic introduction to saving and compiling ASM source, please refer to this [[ASM_tweaking | article]].&lt;br /&gt;
&lt;br /&gt;
==Tweaking the ASM code==&lt;br /&gt;
&lt;br /&gt;
So now that you have saved your ASM source files, it is time to start tweaking them. What we are going to change in the ASM file are a few commands that by default call your polygons as if they are a 3D object. But there is also another call for ground polygons, when this call is used the flickering and shadow problems are solved.&lt;br /&gt;
&lt;br /&gt;
So open your main ASM file and look for the following lines of code:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDOBJ OBJECT_0_SCALE&lt;br /&gt;
  SHADOW_CALL OBJECT_0_SCALE&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
In this code the ADDOBJ command is the one that is calling your polygons as a 3D object. So this is the one we will change in the ADDCAT command used for ground polygons. The ADDCAT command also has an additional parameter that sets the layer of your ground polygons. So this can be used to layer different ground polygons on top of each other. In this article we will set the layer to 8, it is common practice to use only layers that are a multiple of 4 (so 0, 4, 8, 12, 16, 20, ...).&lt;br /&gt;
&lt;br /&gt;
We will also remove the SHADOW_CALL command, as ground polygons are not really able to cast a shadow on the ground. So after applying these two tweaks you are code should look something like this:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDCAT OBJECT_0_SCALE, 8&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
One final note. This change only works if your source only contains ground polygons. If you have a scene with both ground polygons and 3D objects, use the &amp;quot;Export selected...&amp;quot; feature from GMax to export the ground polygons and the 3D objects seperately from each other.&lt;br /&gt;
&lt;br /&gt;
==Complex example==&lt;br /&gt;
&lt;br /&gt;
In this last section I want to give a little more complex example. Assume you are making an airport that has different layers, how could you easily manage that? I will show you how I do that.&lt;br /&gt;
&lt;br /&gt;
In GMax you create all polygons that you need. In this example I will assume that there are three different layers:&lt;br /&gt;
&lt;br /&gt;
* photo&lt;br /&gt;
* noise texture&lt;br /&gt;
* aprons and taxiways&lt;br /&gt;
&lt;br /&gt;
The noise texture is a layer I added to make the grass in the photo texture look less blurry when you are taxiing on it. It uses a transparent texture that adds random dots. Each of these three layers are exported separately from GMax. I used the following name:&lt;br /&gt;
&lt;br /&gt;
* ehdr_photo.bgl&lt;br /&gt;
* ehdr_noise.bgl&lt;br /&gt;
* ehdr_aprons.bgl&lt;br /&gt;
&lt;br /&gt;
Of course for each BGL file there were also two ASM files saved. What I did next is copy one of the main ASM files and then edit it so that all three layers are called from this single file. I made a copy (and renamed it ehdr_ground_layout.asm) so that the tweaks will not be overwritten the next time I export from GMax. All I have to do after such a new export, is compile the ehdr_ground_layout.asm file again. This is the ASM I use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;header label word&lt;br /&gt;
    dw      0001            ; 00 World set number   &lt;br /&gt;
    dd      0005A174FH          ; 02 North bound        &lt;br /&gt;
    dd      0005A0E5BH          ; 06 South bound        &lt;br /&gt;
    dd      0045BEF71H          ; 10 East bound         &lt;br /&gt;
    dd      0045BEF6FH          ; 14 West bound         &lt;br /&gt;
    dw      20 dup(0)                               &lt;br /&gt;
    dd      (offset OBJECT_DATA) - (offset header)&lt;br /&gt;
    dw      33 dup(0)                               &lt;br /&gt;
&lt;br /&gt;
OBJECT_DATA label word                                  &lt;br /&gt;
    db  21              ;;LATBAND_REL                   &lt;br /&gt;
    dw  02D07h          ;;lat min (inclusive) 512M units&lt;br /&gt;
    dw  02D0Ch          ;;lat max (exclusive)           &lt;br /&gt;
    dd  (offset OBJECT_0) - (offset OBJECT_DATA)        &lt;br /&gt;
    db  0               ;;EOL                           &lt;br /&gt;
OBJECT_0 label    BGLCODE&lt;br /&gt;
    db  12                      ; NEAR_FAR_HUGE_OBJECT_HEADER&lt;br /&gt;
    dd  0005A12D5h,0045BEF70h           ; latitude,longitude          &lt;br /&gt;
    db  100                     ; image power                 &lt;br /&gt;
    dd  (offset OBJECT_0_END) - (offset OBJECT_0)             &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_START label word&lt;br /&gt;
    ADDCAT      OBJECT_0_PHOTO, 8&lt;br /&gt;
    ADDCAT      OBJECT_0_NOISE, 12&lt;br /&gt;
    ADDCAT      OBJECT_0_APRON, 17&lt;br /&gt;
    BGL_JUMP_32 OBJECT_0_END  &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_PHOTO label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 20000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_photo_0.asm&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_NOISE label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN,  5000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_noise_0.asm    &lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_APRON label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 10000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_aprons_0.asm&lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_RETURN label word&lt;br /&gt;
    BGL_RETURN&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_END label word&lt;br /&gt;
EOF&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first part is the BGL header and the data used to place your polygons at the latitude and longitude that you entered during the export. Just copy this and don&#039;t change it. Below that you will see that I placed three ADDCAT command below each other, each calling a label that calls the ASM file with the actually polygons that GMax created. The SCALE_AGL command after the label is the reference point, so you can just copy it around and use it for all your layers. Of course you need to copy it from your own ASM file and not from this example, as your polygons will end up on the wrong location else.&lt;br /&gt;
&lt;br /&gt;
You might also notice that the code in the ASM file looks a little different from the main ASM file that MakeMDL made. This is because I cleaned it up as much as I could, removing all unnecessary code and calls. But hopefully this example still shows you how you can combine all your ground layers in one BGL file.&lt;br /&gt;
&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[category:FS8_(FS2002)]]&lt;br /&gt;
[[category:FS9_(FS2004)]]&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
&lt;br /&gt;
{{Template:Navbox-SceneryDesign-Navigation}}&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4925</id>
		<title>Ground polygons (ASM tweak)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4925"/>
		<updated>2008-03-28T08:39:56Z</updated>

		<summary type="html">&lt;p&gt;Nlr: /* FS2002 gamepack */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to create ground polygons with GMax is an often asked question. This article will try to guide you through that process, as it takes some tweaking to get the correct results.&lt;br /&gt;
&lt;br /&gt;
[[Ground_polygons_with_Gmax_-_How_to_create_the_polygons|How to create your ground polygons]] is outside of the scope of this article. Basically you can just draw them like any polygon and then map the texture you want on it. The only difference is that the polygons are on the ground, so they have a z-coordinate of zero. If you want polygons with smooth corners, follow the instructions in the tutorial [[Ground polygons with Gmax - How to create the polygons]].&lt;br /&gt;
&lt;br /&gt;
Please note that if you want your ground polygons to be compatible with FSX (with the SP1 or later installed), you need to make sure that the vertices of your ground polygons are not further away from each other then 100 meters. So if you have a big polygon, you might have to split it into smaller pieces. If you keep this additional restriction in mind, you will not have trouble with the added earth curvation of FSX.&lt;br /&gt;
&lt;br /&gt;
==FS2002 gamepack==&lt;br /&gt;
&lt;br /&gt;
The first complication is that you need to use the FS2002 gamepack ([[Installing the FS 2002 Gmax-SDK]]). This is because the MDL format used by the FS2004 and FSX gamepacks is not really suitable for creating ground polygons. When using them you for example get flickering polygons and the shadow of other objects is also not displayed correctly on them. With the FS2002 gamepack we can apply some tweaks to prevent these trouble.&lt;br /&gt;
&lt;br /&gt;
But you can not download the FS2002 gamepack from the internet, some files only came with the FS2002 Pro CD. So if you don&#039;t own that version of FS (anymore) you have a little problem. A work around is to use [[http://www.fsdeveloper.com/wiki/index.php?title=Saving_X_files_using_MDLCommander MDLCommander]] with the FS2004 gamepack and then run the  X file that you saved through the FS2002 MakeMDL manually.&lt;br /&gt;
&lt;br /&gt;
Be sure that you use the [http://download.microsoft.com/download/FlightSim2002/Install/sdk/W982KMeXP/EN-US/MakeMDL_SDK.exe latest version] of the FS2002 MakeMDL, as the initial version does not allow you to save the ASM source files that you need to tweak later on. For a basic introduction to saving and compiling ASM source, please refer to this [http://www.fsdeveloper.com/wiki/index.php?title=Beginners_guide_ASM_tweaking article].&lt;br /&gt;
&lt;br /&gt;
==Tweaking the ASM code==&lt;br /&gt;
&lt;br /&gt;
So now that you have saved your ASM source files, it is time to start tweaking them. What we are going to change in the ASM file are a few commands that by default call your polygons as if they are a 3D object. But there is also another call for ground polygons, when this call is used the flickering and shadow problems are solved.&lt;br /&gt;
&lt;br /&gt;
So open your main ASM file and look for the following lines of code:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDOBJ OBJECT_0_SCALE&lt;br /&gt;
  SHADOW_CALL OBJECT_0_SCALE&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
In this code the ADDOBJ command is the one that is calling your polygons as a 3D object. So this is the one we will change in the ADDCAT command used for ground polygons. The ADDCAT command also has an additional parameter that sets the layer of your ground polygons. So this can be used to layer different ground polygons on top of each other. In this article we will set the layer to 8, it is common practice to use only layers that are a multiple of 4 (so 0, 4, 8, 12, 16, 20, ...).&lt;br /&gt;
&lt;br /&gt;
We will also remove the SHADOW_CALL command, as ground polygons are not really able to cast a shadow on the ground. So after applying these two tweaks you are code should look something like this:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDCAT OBJECT_0_SCALE, 8&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
One final note. This change only works if your source only contains ground polygons. If you have a scene with both ground polygons and 3D objects, use the &amp;quot;Export selected...&amp;quot; feature from GMax to export the ground polygons and the 3D objects seperately from each other.&lt;br /&gt;
&lt;br /&gt;
==Complex example==&lt;br /&gt;
&lt;br /&gt;
In this last section I want to give a little more complex example. Assume you are making an airport that has different layers, how could you easily manage that? I will show you how I do that.&lt;br /&gt;
&lt;br /&gt;
In GMax you create all polygons that you need. In this example I will assume that there are three different layers:&lt;br /&gt;
&lt;br /&gt;
* photo&lt;br /&gt;
* noise texture&lt;br /&gt;
* aprons and taxiways&lt;br /&gt;
&lt;br /&gt;
The noise texture is a layer I added to make the grass in the photo texture look less blurry when you are taxiing on it. It uses a transparent texture that adds random dots. Each of these three layers are exported separately from GMax. I used the following name:&lt;br /&gt;
&lt;br /&gt;
* ehdr_photo.bgl&lt;br /&gt;
* ehdr_noise.bgl&lt;br /&gt;
* ehdr_aprons.bgl&lt;br /&gt;
&lt;br /&gt;
Of course for each BGL file there were also two ASM files saved. What I did next is copy one of the main ASM files and then edit it so that all three layers are called from this single file. I made a copy (and renamed it ehdr_ground_layout.asm) so that the tweaks will not be overwritten the next time I export from GMax. All I have to do after such a new export, is compile the ehdr_ground_layout.asm file again. This is the ASM I use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;header label word&lt;br /&gt;
    dw      0001            ; 00 World set number   &lt;br /&gt;
    dd      0005A174FH          ; 02 North bound        &lt;br /&gt;
    dd      0005A0E5BH          ; 06 South bound        &lt;br /&gt;
    dd      0045BEF71H          ; 10 East bound         &lt;br /&gt;
    dd      0045BEF6FH          ; 14 West bound         &lt;br /&gt;
    dw      20 dup(0)                               &lt;br /&gt;
    dd      (offset OBJECT_DATA) - (offset header)&lt;br /&gt;
    dw      33 dup(0)                               &lt;br /&gt;
&lt;br /&gt;
OBJECT_DATA label word                                  &lt;br /&gt;
    db  21              ;;LATBAND_REL                   &lt;br /&gt;
    dw  02D07h          ;;lat min (inclusive) 512M units&lt;br /&gt;
    dw  02D0Ch          ;;lat max (exclusive)           &lt;br /&gt;
    dd  (offset OBJECT_0) - (offset OBJECT_DATA)        &lt;br /&gt;
    db  0               ;;EOL                           &lt;br /&gt;
OBJECT_0 label    BGLCODE&lt;br /&gt;
    db  12                      ; NEAR_FAR_HUGE_OBJECT_HEADER&lt;br /&gt;
    dd  0005A12D5h,0045BEF70h           ; latitude,longitude          &lt;br /&gt;
    db  100                     ; image power                 &lt;br /&gt;
    dd  (offset OBJECT_0_END) - (offset OBJECT_0)             &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_START label word&lt;br /&gt;
    ADDCAT      OBJECT_0_PHOTO, 8&lt;br /&gt;
    ADDCAT      OBJECT_0_NOISE, 12&lt;br /&gt;
    ADDCAT      OBJECT_0_APRON, 17&lt;br /&gt;
    BGL_JUMP_32 OBJECT_0_END  &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_PHOTO label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 20000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_photo_0.asm&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_NOISE label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN,  5000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_noise_0.asm    &lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_APRON label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 10000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_aprons_0.asm&lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_RETURN label word&lt;br /&gt;
    BGL_RETURN&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_END label word&lt;br /&gt;
EOF&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first part is the BGL header and the data used to place your polygons at the latitude and longitude that you entered during the export. Just copy this and don&#039;t change it. Below that you will see that I placed three ADDCAT command below each other, each calling a label that calls the ASM file with the actually polygons that GMax created. The SCALE_AGL command after the label is the reference point, so you can just copy it around and use it for all your layers. Of course you need to copy it from your own ASM file and not from this example, as your polygons will end up on the wrong location else.&lt;br /&gt;
&lt;br /&gt;
You might also notice that the code in the ASM file looks a little different from the main ASM file that MakeMDL made. This is because I cleaned it up as much as I could, removing all unnecessary code and calls. But hopefully this example still shows you how you can combine all your ground layers in one BGL file.&lt;br /&gt;
&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[category:FS8_(FS2002)]]&lt;br /&gt;
[[category:FS9_(FS2004)]]&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
&lt;br /&gt;
{{Template:Navbox-SceneryDesign-Navigation}}&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4924</id>
		<title>Ground polygons (ASM tweak)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4924"/>
		<updated>2008-03-28T08:39:25Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to create ground polygons with GMax is an often asked question. This article will try to guide you through that process, as it takes some tweaking to get the correct results.&lt;br /&gt;
&lt;br /&gt;
[[Ground_polygons_with_Gmax_-_How_to_create_the_polygons|How to create your ground polygons]] is outside of the scope of this article. Basically you can just draw them like any polygon and then map the texture you want on it. The only difference is that the polygons are on the ground, so they have a z-coordinate of zero. If you want polygons with smooth corners, follow the instructions in the tutorial [[Ground polygons with Gmax - How to create the polygons]].&lt;br /&gt;
&lt;br /&gt;
Please note that if you want your ground polygons to be compatible with FSX (with the SP1 or later installed), you need to make sure that the vertices of your ground polygons are not further away from each other then 100 meters. So if you have a big polygon, you might have to split it into smaller pieces. If you keep this additional restriction in mind, you will not have trouble with the added earth curvation of FSX.&lt;br /&gt;
&lt;br /&gt;
==FS2002 gamepack==&lt;br /&gt;
&lt;br /&gt;
The first complication is that you need to use the FS2002 gamepack ([[Installing the FS 2002 Gmax-SDK]]). This is because the MDL format used by the FS2004 and FSX gamepacks is not really suitable for creating ground polygons. When using them you for example get flickering polygons and the shadow of other objects is also not displayed correctly on them. With the FS2002 gamepack we can apply some tweaks to prevent these trouble.&lt;br /&gt;
&lt;br /&gt;
But you can not download the FS2002 gamepack from the internet, some files only came with the FS2002 Pro CD. So if you don&#039;t own that version of FS (anymore) you have a little problem. A work around is to use [http://www.fsdeveloper.com/wiki/index.php?title=Saving_X_files_using_MDLCommander MDLCommander] with the FS2004 gamepack and then run the  X file that you saved through the FS2002 MakeMDL manually.&lt;br /&gt;
&lt;br /&gt;
Be sure that you use the [http://download.microsoft.com/download/FlightSim2002/Install/sdk/W982KMeXP/EN-US/MakeMDL_SDK.exe latest version] of the FS2002 MakeMDL, as the initial version does not allow you to save the ASM source files that you need to tweak later on. For a basic introduction to saving and compiling ASM source, please refer to this [http://www.fsdeveloper.com/wiki/index.php?title=Beginners_guide_ASM_tweaking article].&lt;br /&gt;
&lt;br /&gt;
==Tweaking the ASM code==&lt;br /&gt;
&lt;br /&gt;
So now that you have saved your ASM source files, it is time to start tweaking them. What we are going to change in the ASM file are a few commands that by default call your polygons as if they are a 3D object. But there is also another call for ground polygons, when this call is used the flickering and shadow problems are solved.&lt;br /&gt;
&lt;br /&gt;
So open your main ASM file and look for the following lines of code:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDOBJ OBJECT_0_SCALE&lt;br /&gt;
  SHADOW_CALL OBJECT_0_SCALE&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
In this code the ADDOBJ command is the one that is calling your polygons as a 3D object. So this is the one we will change in the ADDCAT command used for ground polygons. The ADDCAT command also has an additional parameter that sets the layer of your ground polygons. So this can be used to layer different ground polygons on top of each other. In this article we will set the layer to 8, it is common practice to use only layers that are a multiple of 4 (so 0, 4, 8, 12, 16, 20, ...).&lt;br /&gt;
&lt;br /&gt;
We will also remove the SHADOW_CALL command, as ground polygons are not really able to cast a shadow on the ground. So after applying these two tweaks you are code should look something like this:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDCAT OBJECT_0_SCALE, 8&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
One final note. This change only works if your source only contains ground polygons. If you have a scene with both ground polygons and 3D objects, use the &amp;quot;Export selected...&amp;quot; feature from GMax to export the ground polygons and the 3D objects seperately from each other.&lt;br /&gt;
&lt;br /&gt;
==Complex example==&lt;br /&gt;
&lt;br /&gt;
In this last section I want to give a little more complex example. Assume you are making an airport that has different layers, how could you easily manage that? I will show you how I do that.&lt;br /&gt;
&lt;br /&gt;
In GMax you create all polygons that you need. In this example I will assume that there are three different layers:&lt;br /&gt;
&lt;br /&gt;
* photo&lt;br /&gt;
* noise texture&lt;br /&gt;
* aprons and taxiways&lt;br /&gt;
&lt;br /&gt;
The noise texture is a layer I added to make the grass in the photo texture look less blurry when you are taxiing on it. It uses a transparent texture that adds random dots. Each of these three layers are exported separately from GMax. I used the following name:&lt;br /&gt;
&lt;br /&gt;
* ehdr_photo.bgl&lt;br /&gt;
* ehdr_noise.bgl&lt;br /&gt;
* ehdr_aprons.bgl&lt;br /&gt;
&lt;br /&gt;
Of course for each BGL file there were also two ASM files saved. What I did next is copy one of the main ASM files and then edit it so that all three layers are called from this single file. I made a copy (and renamed it ehdr_ground_layout.asm) so that the tweaks will not be overwritten the next time I export from GMax. All I have to do after such a new export, is compile the ehdr_ground_layout.asm file again. This is the ASM I use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;header label word&lt;br /&gt;
    dw      0001            ; 00 World set number   &lt;br /&gt;
    dd      0005A174FH          ; 02 North bound        &lt;br /&gt;
    dd      0005A0E5BH          ; 06 South bound        &lt;br /&gt;
    dd      0045BEF71H          ; 10 East bound         &lt;br /&gt;
    dd      0045BEF6FH          ; 14 West bound         &lt;br /&gt;
    dw      20 dup(0)                               &lt;br /&gt;
    dd      (offset OBJECT_DATA) - (offset header)&lt;br /&gt;
    dw      33 dup(0)                               &lt;br /&gt;
&lt;br /&gt;
OBJECT_DATA label word                                  &lt;br /&gt;
    db  21              ;;LATBAND_REL                   &lt;br /&gt;
    dw  02D07h          ;;lat min (inclusive) 512M units&lt;br /&gt;
    dw  02D0Ch          ;;lat max (exclusive)           &lt;br /&gt;
    dd  (offset OBJECT_0) - (offset OBJECT_DATA)        &lt;br /&gt;
    db  0               ;;EOL                           &lt;br /&gt;
OBJECT_0 label    BGLCODE&lt;br /&gt;
    db  12                      ; NEAR_FAR_HUGE_OBJECT_HEADER&lt;br /&gt;
    dd  0005A12D5h,0045BEF70h           ; latitude,longitude          &lt;br /&gt;
    db  100                     ; image power                 &lt;br /&gt;
    dd  (offset OBJECT_0_END) - (offset OBJECT_0)             &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_START label word&lt;br /&gt;
    ADDCAT      OBJECT_0_PHOTO, 8&lt;br /&gt;
    ADDCAT      OBJECT_0_NOISE, 12&lt;br /&gt;
    ADDCAT      OBJECT_0_APRON, 17&lt;br /&gt;
    BGL_JUMP_32 OBJECT_0_END  &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_PHOTO label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 20000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_photo_0.asm&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_NOISE label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN,  5000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_noise_0.asm    &lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_APRON label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 10000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_aprons_0.asm&lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_RETURN label word&lt;br /&gt;
    BGL_RETURN&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_END label word&lt;br /&gt;
EOF&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first part is the BGL header and the data used to place your polygons at the latitude and longitude that you entered during the export. Just copy this and don&#039;t change it. Below that you will see that I placed three ADDCAT command below each other, each calling a label that calls the ASM file with the actually polygons that GMax created. The SCALE_AGL command after the label is the reference point, so you can just copy it around and use it for all your layers. Of course you need to copy it from your own ASM file and not from this example, as your polygons will end up on the wrong location else.&lt;br /&gt;
&lt;br /&gt;
You might also notice that the code in the ASM file looks a little different from the main ASM file that MakeMDL made. This is because I cleaned it up as much as I could, removing all unnecessary code and calls. But hopefully this example still shows you how you can combine all your ground layers in one BGL file.&lt;br /&gt;
&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[category:FS8_(FS2002)]]&lt;br /&gt;
[[category:FS9_(FS2004)]]&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
&lt;br /&gt;
{{Template:Navbox-SceneryDesign-Navigation}}&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4923</id>
		<title>Ground polygons (ASM tweak)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Ground_polygons_(ASM_tweak)&amp;diff=4923"/>
		<updated>2008-03-28T08:34:38Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to create ground polygons with GMax is an often asked question. This article will try to guide you through that process, as it takes some tweaking to get the correct results.&lt;br /&gt;
&lt;br /&gt;
[[Ground_polygons_with_Gmax_-_How_to_create_the_polygons|How to create your ground polygons]] is outside of the scope of this article. Basically you can just draw them like any polygon and then map the texture you want on it. The only difference is that the polygons are on the ground, so they have a z-coordinate of zero. If you want polygons with smooth corners, follow the instructions in the tutorial &amp;quot;[[Ground polygons with Gmax - How to create the polygons]]&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Please note that if you want your ground polygons to be compatible with FsX (with the SP1 installed), you need to make sure that the vertices of your ground polygons are not further away from each other then 100 meters. So if you have a big polygon, you might have to split it into smaller pieces. If you keep this additional restriction in mind, you will not have trouble with the added earth curvation of FsX.&lt;br /&gt;
&lt;br /&gt;
==Fs2002 gamepack==&lt;br /&gt;
&lt;br /&gt;
The first complication is that you need to use the Fs2002 gamepack ([[Installing the FS 2002 Gmax-SDK]]). This is because the MDL format used by the Fs2004 and FsX gamepacks is not really suitable for creating ground polygons. When using them you for example get flickering polygons and the shadow of other objects is also not displayed correctly on it. With the Fs2002 gamepack we can apply some tweaks to prevent these trouble.&lt;br /&gt;
&lt;br /&gt;
But you can not download the Fs2002 gamepack from the internet, some files only came with the Fs2002 Pro CD. So if you don&#039;t own that version of FS (anymore) you have a little problem. A work around is to use MDLCommander with the Fs2004 gamepack and then run the [http://www.fsdeveloper.com/wiki/index.php?title=Saving_X_files_using_MDLCommander X file] that you saved through the Fs2002 MakeMDL manually.&lt;br /&gt;
&lt;br /&gt;
Be sure that you use the [http://download.microsoft.com/download/FlightSim2002/Install/sdk/W982KMeXP/EN-US/MakeMDL_SDK.exe latest version] of the Fs2002 MakeMDL, as the initial version does not allow you to save the ASM source files that you need to tweak later on. For a basic introduction to saving and compiling ASM source, please refer to this [http://www.fsdeveloper.com/wiki/index.php?title=Beginners_guide_ASM_tweaking article].&lt;br /&gt;
&lt;br /&gt;
==Tweaking the ASM code==&lt;br /&gt;
&lt;br /&gt;
So now that you have saved your ASM source files, it is time to start tweaking them. What we are going to change in the ASM file are a few commands that by default call your polygons as if they are a 3D object. But there is also another call for ground polygons, when this call is used the flickering and shadow problems are solved.&lt;br /&gt;
&lt;br /&gt;
So open your main ASM file and look for the following lines of code:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDOBJ OBJECT_0_SCALE&lt;br /&gt;
  SHADOW_CALL OBJECT_0_SCALE&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
In this code the ADDOBJ command is the one that is calling your polygons as a 3D object. So this is the one we will change in the ADDCAT command used for ground polygons. The ADDCAT command also has an additional parameter that sets the layer of your ground polygons. So this can be used to layer different ground polygons on top of each other. In this article we will set the layer to 8, it is common practice to use only layers that are a multiple of 4 (so 0, 4, 8, 12, 16, 20, ...).&lt;br /&gt;
&lt;br /&gt;
We will also remove the SHADOW_CALL command, as ground polygons are not really able to cast a shadow on the ground. So after applying these two tweaks you are code should look something like this:&lt;br /&gt;
&lt;br /&gt;
  OBJECT_0_START label word&lt;br /&gt;
  IFIN1 OBJECT_0_FAIL, image_complex, 2, 32767&lt;br /&gt;
  ADDCAT OBJECT_0_SCALE, 8&lt;br /&gt;
  OBJECT_0_FAIL label BGLCODE&lt;br /&gt;
&lt;br /&gt;
One final note. This change only works if your source only contains ground polygons. If you have a scene with both ground polygons and 3D objects, use the &amp;quot;Export selected...&amp;quot; feature from GMax to export the ground polygons and the 3D objects seperately from each other.&lt;br /&gt;
&lt;br /&gt;
==Complex example==&lt;br /&gt;
&lt;br /&gt;
In this last section I want to give a little more complex example. Assume you are making an airport that has different layers, how could you easily manage that? I will show you how I do that.&lt;br /&gt;
&lt;br /&gt;
In GMax you create all polygons that you need. In this example I will assume that there are three different layers:&lt;br /&gt;
&lt;br /&gt;
* photo&lt;br /&gt;
* noise texture&lt;br /&gt;
* aprons and taxiways&lt;br /&gt;
&lt;br /&gt;
The noise texture is a layer I added to make the grass in the photo texture look less blurry when you are taxiing on it. It uses a transparent texture that adds random dots. Each of these three layers are exported separately from GMax. I used the following name:&lt;br /&gt;
&lt;br /&gt;
* ehdr_photo.bgl&lt;br /&gt;
* ehdr_noise.bgl&lt;br /&gt;
* ehdr_aprons.bgl&lt;br /&gt;
&lt;br /&gt;
Of course for each BGL file there were also two ASM files saved. What I did next is copy one of the main ASM files and then edit it so that all three layers are called from this single file. I made a copy (and renamed it ehdr_ground_layout.asm) so that the tweaks will not be overwritten the next time I export from GMax. All I have to do after such a new export, is compile the ehdr_ground_layout.asm file again. This is the ASM I use:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;header label word&lt;br /&gt;
    dw      0001            ; 00 World set number   &lt;br /&gt;
    dd      0005A174FH          ; 02 North bound        &lt;br /&gt;
    dd      0005A0E5BH          ; 06 South bound        &lt;br /&gt;
    dd      0045BEF71H          ; 10 East bound         &lt;br /&gt;
    dd      0045BEF6FH          ; 14 West bound         &lt;br /&gt;
    dw      20 dup(0)                               &lt;br /&gt;
    dd      (offset OBJECT_DATA) - (offset header)&lt;br /&gt;
    dw      33 dup(0)                               &lt;br /&gt;
&lt;br /&gt;
OBJECT_DATA label word                                  &lt;br /&gt;
    db  21              ;;LATBAND_REL                   &lt;br /&gt;
    dw  02D07h          ;;lat min (inclusive) 512M units&lt;br /&gt;
    dw  02D0Ch          ;;lat max (exclusive)           &lt;br /&gt;
    dd  (offset OBJECT_0) - (offset OBJECT_DATA)        &lt;br /&gt;
    db  0               ;;EOL                           &lt;br /&gt;
OBJECT_0 label    BGLCODE&lt;br /&gt;
    db  12                      ; NEAR_FAR_HUGE_OBJECT_HEADER&lt;br /&gt;
    dd  0005A12D5h,0045BEF70h           ; latitude,longitude          &lt;br /&gt;
    db  100                     ; image power                 &lt;br /&gt;
    dd  (offset OBJECT_0_END) - (offset OBJECT_0)             &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_START label word&lt;br /&gt;
    ADDCAT      OBJECT_0_PHOTO, 8&lt;br /&gt;
    ADDCAT      OBJECT_0_NOISE, 12&lt;br /&gt;
    ADDCAT      OBJECT_0_APRON, 17&lt;br /&gt;
    BGL_JUMP_32 OBJECT_0_END  &lt;br /&gt;
&lt;br /&gt;
OBJECT_0_PHOTO label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 20000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_photo_0.asm&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_NOISE label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN,  5000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_noise_0.asm    &lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_APRON label    BGLCODE&lt;br /&gt;
    SCALE_AGL   OBJECT_0_RETURN, 10000, 1146, 131072, 0005A12D5h, 0E82Dh, 0045BEF70h, 0AD0Ah, 0, 0&lt;br /&gt;
    include    ehdr_aprons_0.asm&lt;br /&gt;
    &lt;br /&gt;
OBJECT_0_RETURN label word&lt;br /&gt;
    BGL_RETURN&lt;br /&gt;
&lt;br /&gt;
OBJECT_0_END label word&lt;br /&gt;
EOF&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first part is the BGL header and the data used to place your polygons at the latitude and longitude that you entered during the export. Just copy this and don&#039;t change it. Below that you will see that I placed three ADDCAT command below each other, each calling a label that calls the ASM file with the actually polygons that GMax created. The SCALE_AGL command after the label is the reference point, so you can just copy it around and use it for all your layers. Of course you need to copy it from your own ASM file and not from this example, as your polygons will end up on the wrong location else.&lt;br /&gt;
&lt;br /&gt;
You might also notice that the code in the ASM file looks a little different from the main ASM file that MakeMDL made. This is because I cleaned it up as much as I could, removing all unnecessary code and calls. But hopefully this example still shows you how you can combine all your ground layers in one BGL file.&lt;br /&gt;
&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[category:FS8_(FS2002)]]&lt;br /&gt;
[[category:FS9_(FS2004)]]&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
&lt;br /&gt;
{{Template:Navbox-SceneryDesign-Navigation}}&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Taxiline_creation_with_GMax&amp;diff=4651</id>
		<title>Taxiline creation with GMax</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Taxiline_creation_with_GMax&amp;diff=4651"/>
		<updated>2008-03-13T16:49:39Z</updated>

		<summary type="html">&lt;p&gt;Nlr: /* Method for bends */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;br&amp;gt;The following tutorial is made by &#039;&#039;&#039;Jeffrey Stähli&#039;&#039;&#039;. This tutorial can also be found in the scenery forum, but it deserves a place in Wiki. The technique used is very nice to create smooth taxi lines with custom textures.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Loft Method ==&lt;br /&gt;
&lt;br /&gt;
Create a taxiway line template (spline):&lt;br /&gt;
&lt;br /&gt;
# in the &amp;quot;Create&amp;quot; menu, choose &amp;quot;Shapes&amp;quot;.&lt;br /&gt;
# select Rectangle&lt;br /&gt;
# draw one in the FRONT viewport (size doesn&#039;t matter now)&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_01.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# adjust the size of your rectangle. The important size is the WIDTH of your taxiway line.&lt;br /&gt;
# center your rectangle to (0,0,0)! &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_02.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# convert the rectangle to a &amp;quot;Editable Spline&amp;quot; and turn on &amp;quot;Segment&amp;quot; selection.&lt;br /&gt;
# select the indicated 3 segments and delete them.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_03.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# now, set the top segment to ground level 0.0m. Template is done. (You may rename it to &amp;quot;TWYLINE_TEMPLATE&amp;quot; or so for the next steps)&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_04.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# create your taxiline &amp;quot;guides&amp;quot; using splines. For straight lines, just use &amp;quot;line&amp;quot; and for bends, the &amp;quot;arc&amp;quot; object is perfect. Don&#039;t connect the splines to a network, just leave them as single objects. The Loft method doesn&#039;t seem to work with spline-networks. Your transitions should be more exact than my quick try.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_05.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Now the fun part, Line designing ==&lt;br /&gt;
=== Method for straight lines ===&lt;br /&gt;
# Select your LINE-Spline &amp;lt;br&amp;gt; &amp;quot;Create&amp;quot; -&amp;gt; &amp;quot;Geometry&amp;quot; -&amp;gt; &amp;quot;Compound Objects&amp;quot; lets you select &amp;quot;Loft&amp;quot;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_06.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# Click on &amp;quot;Get Shape&amp;quot;.&lt;br /&gt;
# Open up the &amp;quot;Select by name&amp;quot; window.&lt;br /&gt;
# Now, choose your template and pick it. TWYLINE_TEMPLATE in my case (that&#039;s why it&#039;s good to use a strong name ). There it is, your twy-line. Just zoom in to have a look at it. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_07.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# Simply apply your twy material to the loft. No extra uvw mapping needed Play with the surface parameters: If you need a repetetive texture, use the length repeat option. Else, just leave it as is.&lt;br /&gt;
# Import settings are the &amp;quot;Skin Parameters&amp;quot;. Shape Steps lets you choose the &amp;quot;resolution&amp;quot; of your polygon in the &amp;quot;width&amp;quot;-direction. We don&#039;t need more than 0 steps!!! Path Steps is for the &amp;quot;resolution&amp;quot; along the line. For straight lines, a value of 0 gives us the best option. (least amount of polys -&amp;gt; 2 faces for each straight line!) &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_08.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Method for bends ===&lt;br /&gt;
# Select your ARC-spline &amp;lt;br&amp;gt; &amp;quot;Create&amp;quot; -&amp;gt; &amp;quot;Geometry&amp;quot; -&amp;gt; &amp;quot;Compound Objects&amp;quot; lets you select &amp;quot;Loft&amp;quot;. Repeat Steps 2 to 5 from the straight line section!&lt;br /&gt;
# The good thing about lofting is the control over your &amp;quot;smoothness&amp;quot; of your bends. In &amp;quot;Skin Parameters&amp;quot; again, Shape steps are set to 0. But now, Path steps will refine your arc At 0, we have a fairly &amp;quot;hard&amp;quot; bend. Now increase the number until you think it looks good. But don&#039;t go crazy, keep the amount of polys in mind A value of 4-6 is already good imho! &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_09.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
# For demonstration, I used 15 here, and we have a smooth arc. Also, a benefit of lofting, the texture follows perfectly your line! &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;[[Image:taxilines_gmax_10.jpg|400x400px]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
There you have it. Another Gmax-trick unveiled.&lt;br /&gt;
For different Line-widths use, just create another templates. If you get the hang out of it, it&#039;s a really efficient way to create Twy-Lines in gmax. And don&#039;t worry about the spline &amp;quot;guides&amp;quot;, they won&#039;t be exported with MakeMdl&lt;br /&gt;
&lt;br /&gt;
[[category:Scenery design]]&lt;br /&gt;
[[Category:FS8_(FS2002)]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=BglComp_Errors&amp;diff=4462</id>
		<title>BglComp Errors</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=BglComp_Errors&amp;diff=4462"/>
		<updated>2008-02-11T10:21:00Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A list of BglComp Error Codes and solutions.&lt;br /&gt;
&lt;br /&gt;
== C1003 ==&lt;br /&gt;
&#039;&#039;&#039;INTERNAL COMPILER ERROR C1003: Failed to create MSXML object! (0x80040154) &#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You need to download the &#039;&#039;&#039;[http://www.microsoft.com/downloads/details.aspx?FamilyID=3144b72b-b4f2-46da-b4b6-c5d7485f2b42&amp;amp;DisplayLang=en MSXML4.DLL]&#039;&#039;&#039;&lt;br /&gt;
from the Microsoft website.&lt;br /&gt;
&lt;br /&gt;
Scroll down towards the bottom of the page and click &#039;&#039;&#039;msxml.msi&#039;&#039;&#039; (5MB) download button. &lt;br /&gt;
&lt;br /&gt;
Save &amp;amp; run the &#039;&#039;&#039;msxml.msi&#039;&#039;&#039; file.&lt;br /&gt;
&lt;br /&gt;
== Error Placeholder 1 ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Error Placeholder 2 ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
[[BGL Compiler SDK]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
[[category:FS9 (FS2004)]]&lt;br /&gt;
[[Category:Scenery_design]] &lt;br /&gt;
[[Category:Missions]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=BGL_Compiler_SDK&amp;diff=4461</id>
		<title>BGL Compiler SDK</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=BGL_Compiler_SDK&amp;diff=4461"/>
		<updated>2008-02-11T10:19:38Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Useage ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Command Prompt]]&lt;br /&gt;
&lt;br /&gt;
== Errors ==&lt;br /&gt;
For a list of BglComp Error Codes and solutions, see - &#039;&#039;&#039;[[BglComp Errors]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
[[category:FS9 (FS2004)]]&lt;br /&gt;
[[Category:Scenery_design]] &lt;br /&gt;
[[Category:Missions]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Missions_-_Creation&amp;diff=3824</id>
		<title>Missions - Creation</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Missions_-_Creation&amp;diff=3824"/>
		<updated>2008-01-17T15:47:28Z</updated>

		<summary type="html">&lt;p&gt;Nlr: /* Debugging */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;How to create missions, a supplement to the SDK.&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
Creating a mission is a complex task involving a diverse use of tools &amp;amp; skills. Getting your first mission going, even following the SDK documentation, is likely to cause you some headaches.&lt;br /&gt;
&lt;br /&gt;
Still here? Good. Once you &#039;&#039;do&#039;&#039; have that first one running, the sky&#039;s your limit. That basic set of rules and files that make up a mission are always the same so once you&#039;ve got those sorted, it&#039;s just a case of coming up with an idea and writing it.&lt;br /&gt;
&lt;br /&gt;
At it&#039;s simplest, a mission is just a scripted set of events that tell some kind of story. It may be dramatic - mountain rescue, failing aircraft, poor weather. It could just as easily be a simple flight from A to B with you pointing out areas of interest along the way, or a completely abstract challenge like finding out how many times you can touch-and-go in a 747 in five minutes.&lt;br /&gt;
&lt;br /&gt;
Technically speaking, there are two main classes of &#039;things&#039; in a mission; Actions and Triggers. An Action makes something happen, and a Trigger checks to see if something&#039;s happened and calls an Action if it has. By stringing together Actions and Triggers, you tell your story.&lt;br /&gt;
&lt;br /&gt;
You&#039;ll also need to prepare some sound files for the mission speech, some images to appear in FSX and some HTML with the mission briefing. All of these apart from the speech can be &#039;borrowed&#039; from the standard missions and edited so even if you&#039;re not an HTML whiz, it&#039;s certainly possible to do. And if you get really stuck you could always try asking in the [http://www.fsdeveloper.com/forum/forumdisplay.php?f=59 forum].&lt;br /&gt;
&lt;br /&gt;
== The Basics ==&lt;br /&gt;
&lt;br /&gt;
There are some simple things you will need before you start, and while you&#039;re working towards your first mission.&lt;br /&gt;
&lt;br /&gt;
=== The Plot ===&lt;br /&gt;
First and foremost, you need an idea. If this is your first mission, it&#039;s probably better to have a &#039;&#039;simple&#039;&#039; idea; re-writing [http://www.imdb.com/title/tt0064505/ The Italian Job] with Microlights would be fun, but you&#039;ll go insane before it sees the light of day. Start with something with only one or two things to do:&lt;br /&gt;
&lt;br /&gt;
# Fly above 1000 feet for three minutes&lt;br /&gt;
# Land at a specific airport&lt;br /&gt;
&lt;br /&gt;
Once you&#039;ve got this going you&#039;ll have a much better idea of how a mission hangs together and relocating it to Turin with Red, White and Blue [http://www.aircreation.com/anglais AirCreation] Trikes will be one step closer.&lt;br /&gt;
&lt;br /&gt;
=== Instructions ===&lt;br /&gt;
You can safely assume that the player will get things wrong. You might be able to fly your mission from beginning to end but other people don&#039;t know what you were thinking about when you wrote it.&lt;br /&gt;
&lt;br /&gt;
Messages which seem perfectly clear to you might not be as useful as you think. Some speech saying &amp;quot;Now let&#039;s land over there&amp;quot; is fine, surely? Well, maybe. But what if they&#039;ve got a little lost, or distracted, and &#039;over there&#039; is behind them as they circle, trying to spot a landmark?&lt;br /&gt;
&lt;br /&gt;
If there&#039;s something you want the player to do, you need to tell them. They may not know that in the case of, say, being hopelessly lost they&#039;re required by law to do X, Y and Z. That&#039;s particularly important if doing X, Y and Z are what causes the next Trigger to fire; they&#039;ll fly around for a while, get bored, post a rant on a forum and curse your descendants.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;How&#039;&#039; you tell them is up to you. If your mission is a tour of local landmarks, explicit instructions are probably best (&amp;quot;Turn to 170 and fly towards the only hill on that plain&amp;quot;). On other missions, being led around by the nose may not work well so maybe less explicit instructions would be better (&amp;quot;Hey, there they are! They&#039;re OK, so let&#039;s check the next bridge downstream&amp;quot;).&lt;br /&gt;
&lt;br /&gt;
In either case, there are some tricks you can use to help out. First is the Mission Compass. This is a big help, particularly to people who don&#039;t know the area, and it can always be switched off by more experienced pilots. You set points on this using [[Function_Reference#Point_Of_Interest_Mission_Object|PointOfInterest]] (POI) objects, and [[Function_Reference#Point Of Interest Activation Action|PointOfInterestActivationActions]] to set which POI is currently active. You get a big, green rotating spike to show where you&#039;re supposed to go next.&lt;br /&gt;
&lt;br /&gt;
That does take the fun out of navigation challenge missions though. Instead of having to follow instructions, ask local towers for advice and read the landscape you just play fly-towards-the-green-arrow for half an hour. On the other hand, people flying a navigation challenge are more likely to get lost. Tricky.&lt;br /&gt;
&lt;br /&gt;
This is where your design skills start to come in. You need the mission compass to help people that have gone wrong, but you don&#039;t want it there all the time. There&#039;s several ways round this, but a couple are popular.&lt;br /&gt;
&lt;br /&gt;
First, you could enclose the whole area inside a huge AreaRectangle attached to a [[Function_Reference#Proximity_Trigger|ProximityTrigger]]. When you leave the rectangle, the trigger calls a [[Function_Reference#Dialog Action|DialogAction]] (&amp;quot;Dude, where are we?&amp;quot;) and then activates an appropriate PointOfInterest, showing where the player should be. Simple, no? They get the &#039;&#039;chance&#039;&#039; to get it right but then a bit of a prod if they need it.&lt;br /&gt;
&lt;br /&gt;
Alternatively, you could do a similar thing with a [[Function_Reference#Timer Trigger|TimerTrigger]]. Start it when they leave the previous point and if they&#039;re more than, say, two minutes late getting to the next one then use the same trick with the [[Function_Reference#Dialog Action|DialogAction]] and PointOfInterestActivationAction.&lt;br /&gt;
&lt;br /&gt;
Lots of handy tips are also available here:&lt;br /&gt;
[http://www.fsinsider.com/developers/Pages/MissionBuildingTips.aspx FS Insider - Mission Building Tips]&lt;br /&gt;
&lt;br /&gt;
=== Logical Structuring ===&lt;br /&gt;
&lt;br /&gt;
A simple mission probably won&#039;t need much structuring but once you&#039;ve got beyond that and started putting together more complex scenarios, it can help to have a written structure.&lt;br /&gt;
Think of it as a screenplay, and follow the same three-stage layout.&lt;br /&gt;
&lt;br /&gt;
The first section is your introduction. You need to get the player&#039;s interest, explain who they are and why they&#039;re there. You use the first bit to get everything set up so that when The Exciting Thing happens, they know why and what to do about it.&lt;br /&gt;
&lt;br /&gt;
In part two, The Exciting Thing happens. It doesn&#039;t matter what it is, but assuming you have some kind of event to which the player is supposed to react, this part details what happens. Once they&#039;ve managed to cope with the situation and get it under control, they move on to...&lt;br /&gt;
&lt;br /&gt;
Part three, the conclusion. Having successfully dealt with the engine fire/squalling brats in the back seats/condor-strike, the player gets to reflect on what they&#039;ve done and enjoy the feeling of success for a little while. You could always throw in a last-minute plot twist of course.&lt;br /&gt;
&lt;br /&gt;
Structuring like this gives you a tidy way of making your mission appear much more complex. You can easily provide different threads, or ways of achieving something, without too much extra effort. Let&#039;s say your Introduction sees the player getting from a bush strip to the head of a particular valley. You start with them following the river, simple enough. Later on, you could add the option to fly across the peaks and save time; as long as they reach the same head of the same valley, the rest of the mission isn&#039;t affected. If they&#039;ve tried the mission before and failed, chances are they&#039;ll decide to try shortcuts anyway. Wouldn&#039;t it feel better if, having decided to cross the ridge instead of fly round, the mission reacts to that by saying &amp;quot;Hey, you&#039;re going over the ridge! A bit risky in this weather but the views will be stunning&amp;quot;? You can issue different Rewards, or maybe even alter how the next section plays out, depending on the path they took.&lt;br /&gt;
&lt;br /&gt;
In short, you can see your mission sections as leading up to choke-points, such as the head of the valley. If you have three sections, each with three different ways of achieving it, that&#039;s nine different ways of flying a single mission.&lt;br /&gt;
&lt;br /&gt;
=== Coding ===&lt;br /&gt;
This, as you might expect, is probably the trickiest bit. You may find it easier to have a big sheet of paper and draw the mission out in pencil before you start coding. That lets you work out how it fits together logically without having to worry about whether or not you&#039;ve got the spelling right.&lt;br /&gt;
&lt;br /&gt;
For example, you know that after you take off you want to have some speech, and then there are three ways of getting from A to B, where the next section starts. OK, so that&#039;s three boxes to draw; &#039;Takeoff&#039;, &#039;Speech&#039; and &#039;At point B&#039;. The speech should happen 30 seconds after takeoff, so note that down next to the Speech box. Then you can draw three lines between &#039;Speech&#039; and &#039;At Point B&#039; to show the three paths, and the first thing to do on each path is disable the other two paths.&lt;br /&gt;
&lt;br /&gt;
Already you&#039;ve got a decent map of what happens in what order, and translating from these into actual mission-system code will be easier.&lt;br /&gt;
&lt;br /&gt;
Read the list of possible Actions and Triggers, to find out what kinds of things you can check for and do. Try and spot a likely match for each of the boxes on your sheet of paper.&lt;br /&gt;
&lt;br /&gt;
To keep the example going, you might have a [[Function_Reference#Property Trigger|PropertyTrigger]] checking &amp;quot;Altitude AGL &amp;gt; 10&amp;quot; to test for takeoff. That would start a 30-second [[Function_Reference#Timer Trigger|TimerTrigger]] using an [[Function_Reference#Object Activation Action|ObjectActivationAction]] which, in turn, would call a [[Function_Reference#Dialog Action|DialogAction]] for your &amp;quot;Speech&amp;quot; box. You would need one Trigger per potential path; they might be set to detect altitude, or heading, or more likely that the player has entered an area. Each of those would need another [[Function_Reference#Dialog Action|DialogAction]] (just to keep the player informed), an [[Function_Reference#Object Activation Action|ObjectActivationAction]] to enable the Trigger that checks &amp;quot;At Point B&amp;quot; and another [[Function_Reference#Object Activation Action|ObjectActivationAction]] to disable the other two paths.&lt;br /&gt;
&lt;br /&gt;
Everyone will have their own style of writing, of course. Feel free to experiment.&lt;br /&gt;
&lt;br /&gt;
=== Code Design ===&lt;br /&gt;
Your first missions will probably be some active [[Function_Reference#Timer Trigger|TimerTrigger]]s and [[Function_Reference#Proximity_Trigger|ProximityTrigger]]s, each with some [[Function_Reference#Dialog Action|DialogAction]]s attached, and a LandingTrigger to finish the mission. This is fine for beginners, but once your missions get larger this easy design style will cause you problems.&lt;br /&gt;
&lt;br /&gt;
It is far easier to test a mission if you know what you expect to happen at a given moment. Sounds obvious, right? Of course you know what&#039;s supposed to happen, you designed and wrote it.&lt;br /&gt;
&lt;br /&gt;
The problem is that when you have lots of active triggers, any of them can fire. That&#039;s what they&#039;re for. They don&#039;t know that they&#039;re not &#039;&#039;supposed&#039;&#039; to fire so that the player that takes a shortcut - or the designer that&#039;s testing the last three minutes of a 45-minute mission - will find that some very wierd things are happening because triggers that are part of a completely different part of the mission are firing.&lt;br /&gt;
&lt;br /&gt;
The design solution is very easy; you only activate the triggers that you need, and you deactivate any that you don&#039;t need. In other words, almost all of your triggers should be &#039;&#039;&#039;de&#039;&#039;&#039;activated by default. Only when you&#039;re ready for them should they be activated.&lt;br /&gt;
&lt;br /&gt;
Let&#039;s consider a simple mission where you&#039;re flying east from A to B to pick up your wife. As you approach B you&#039;re told that the air ambulance has broken down and someone is urgently needed in town C, to the north, to ferry a transplant organ to town B&#039;s airfield. You, of course, arrive in a shining white Cessna to save the day. A nice, straightforward story with only about a dozen triggers to implement. What could possibly go wrong?&lt;br /&gt;
&lt;br /&gt;
I take off from A and notice a motorway (freeway) leading to B and decide to follow that at 100 feet. Two minutes in, and still a long way from B, a timer switches on the altitude check that is supposed to fire just before I land at B to tell me to go to C. &amp;quot;Abort the landing, Sir Pilot! You&#039;re needed!&amp;quot;. Huh? What landing? Okay, off I go to C as instructed. Land, collect heart, take off, fly towards B. Now I hit a set of [[Function_Reference#Proximity_Trigger|ProximityTrigger]]s around town B, intended to fill in some empty time and which should have gone off &#039;&#039;before&#039;&#039; the emergency call, wittering on about my wife&#039;s assault on the January shoe sales. With a human heart destined for a dying child on the passenger seat.&lt;br /&gt;
&lt;br /&gt;
A similar thing would happen if I&#039;d fluffed the landing on a previous attempt and decided to fly straight to C to avoid the uneventful flight to B.&lt;br /&gt;
&lt;br /&gt;
Or what about the person who gets distracted for a few seconds on finals to town B - maybe his wife&#039;s at the door asking for help upstairs with some new shoes - and misses the &#039;divert to town C&#039; message, lands anyway to get told he&#039;s just saved someone&#039;s life because the final landing trigger was on by default? Huh? Whose life? Just how many shoes did she buy? What a dull mission; I took off, got harangued about footwear, landed, and it finished.&lt;br /&gt;
&lt;br /&gt;
Once more with feeling, then. Treat Triggers like lightbulbs; if you&#039;re not using it, switch it off.&lt;br /&gt;
&lt;br /&gt;
=== Testing ===&lt;br /&gt;
At some point you&#039;ll want to give your mission out to others. They react by flying around like airborne sheep in a hand-grenade factory, and then tell you that your mission sucks. Dude. Some reward for the weeks of work you put in.&lt;br /&gt;
&lt;br /&gt;
You&#039;ve already checked that it all works when it&#039;s flown correctly, that gets done while you&#039;re writing it. Unfortunately, you&#039;re the only person that knows what &#039;correctly&#039; means. Checking that it still works when it&#039;s &#039;&#039;not&#039;&#039; flown correctly is more difficult. You need to make sure that the player gets told when they&#039;ve gone out of bounds, that they&#039;ve been told &#039;&#039;&#039;exactly&#039;&#039;&#039; where they&#039;re supposed to park and not just &#039;near the buildings&#039; (What buildings? Which wall?). What happens when they land on the right runway in the wrong direction, or the at the wrong airport? What happens when they take a shortcut because they&#039;ve flown the mission before, and skip out section 1 completely?&lt;br /&gt;
&lt;br /&gt;
=== Pulling it all together ===&lt;br /&gt;
&lt;br /&gt;
=== Packaging ===&lt;br /&gt;
&lt;br /&gt;
=== Distributing ===&lt;br /&gt;
&lt;br /&gt;
== HowTos &amp;amp; Tools ==&lt;br /&gt;
See these pages for HowTos &amp;amp; Tools used in creating -&lt;br /&gt;
=== Categories ===&lt;br /&gt;
[[Categories]] - Assigning and creating categories.&lt;br /&gt;
&lt;br /&gt;
=== Mission Coding ===&lt;br /&gt;
[[Mission Coding]] - Creating your mission, development process &amp;amp; tips.&lt;br /&gt;
&lt;br /&gt;
=== Rewards ===&lt;br /&gt;
[[Rewards]] - Creation tips.&lt;br /&gt;
&lt;br /&gt;
=== Sounds ===&lt;br /&gt;
[[Sounds]] - Creating dialogue, and sounds, for missions.&lt;br /&gt;
&lt;br /&gt;
=== Artwork ===&lt;br /&gt;
[[Artwork]] - Creating artwork for mission briefings, rewards, etc.&lt;br /&gt;
&lt;br /&gt;
=== Briefing ===&lt;br /&gt;
[[Briefing]] - Creating the UI HTML file(s) to introduce your mission.&lt;br /&gt;
&lt;br /&gt;
== Related ==&lt;br /&gt;
&lt;br /&gt;
=== Internal ===&lt;br /&gt;
[[Compiling Missions]] - Description&lt;br /&gt;
&lt;br /&gt;
[[Link]] - Description&lt;br /&gt;
&lt;br /&gt;
[[Link]] - Description&lt;br /&gt;
&lt;br /&gt;
=== External ===&lt;br /&gt;
[http://www.fsdeveloper.com/forum/forumdisplay.php?f=59 FS Developer - Mission development] - Forum to ask &amp;amp; answer questions.&lt;br /&gt;
&lt;br /&gt;
[http://www.fsinsider.com/developers/Pages/MissionBuildingTips.aspx FS Insider - Mission Building Tips] - Lots of handy tips from MS/ACES. &lt;br /&gt;
&lt;br /&gt;
[http://fsxmission.com/live/index.php FSXMission.com] - Useful site for Missions information.&lt;br /&gt;
&lt;br /&gt;
== Reference ==&lt;br /&gt;
&#039;Reference&#039; documents specifically related.&lt;br /&gt;
&lt;br /&gt;
[[Function Reference]] - With example code.&lt;br /&gt;
&lt;br /&gt;
[[Link]] - Description&lt;br /&gt;
&lt;br /&gt;
[[Link]] - Description&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
= To Sort =&lt;br /&gt;
These bits probably need modifying and/or relocating to appropriate subsections.&lt;br /&gt;
&lt;br /&gt;
== SDK ==&lt;br /&gt;
[[Object Placement Tool]] - Installing, configuring, &amp;amp; general useage tips.&lt;br /&gt;
&lt;br /&gt;
[[Tools]] placeholder text.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Compiling ===&lt;br /&gt;
If you use Rewards, or you want your mission to load a little faster, you must [[Compiling|compile]] them using the [[SDK]]&#039;s command-line tools.&lt;br /&gt;
&lt;br /&gt;
== Function Reference ==&lt;br /&gt;
[[Function Reference|This section]] gives some basic details on the different types of object available to mission writers when writing a mission script.&lt;br /&gt;
&lt;br /&gt;
== Debugging ==&lt;br /&gt;
Currently there are no available tools to allow debugging of your mission.&lt;br /&gt;
&lt;br /&gt;
However there is a basic form of error reporting built into FSX.&lt;br /&gt;
&lt;br /&gt;
Add the following to your fsx.CFG :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
[Debug]&lt;br /&gt;
ReportLoadErrors=1&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unfortunately there are lots of errors that this won&#039;t report. Another way of testing it is [[Compiling]] it; you may get some useful error messages from the compiler.&lt;br /&gt;
&lt;br /&gt;
Sometimes FSX will stop loading your mission completely. There are various reasons for this, but it&#039;s usually because an object that should be attached to another isn&#039;t, or vice-versa. A very quick way of detecting this is to add an activated TimerTrigger, and set &amp;lt;tt&amp;gt;OnScreenTimer&amp;lt;/tt&amp;gt; to True. This makes a small timer appear at the top of the screen as soon as the mission is loaded. If the timer is there, the mission is running. If not, FSX hasn&#039;t loaded it because of some kind of structural problem.&lt;br /&gt;
&lt;br /&gt;
Another simple way of adding some debugging information is to add DialogActions to key triggers that don&#039;t have one already. This can save you lots of time; two temporary DialogActions saying &amp;quot;LandingTrigger A On&amp;quot; and &amp;quot;LandingTrigger B On&amp;quot; might save you several minutes&#039; flying time on every test. If you make sure your temporary DialogActions have sensible names (i.e. they all start with &#039;Debug&#039; or &#039;Temp&#039;) they&#039;re easy to remove once you no longer need them.&lt;br /&gt;
&lt;br /&gt;
[[category:Missions]]&lt;br /&gt;
[[Category:FSX]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=SDK_Installation_(FSX)&amp;diff=3268</id>
		<title>SDK Installation (FSX)</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=SDK_Installation_(FSX)&amp;diff=3268"/>
		<updated>2007-12-21T15:55:41Z</updated>

		<summary type="html">&lt;p&gt;Nlr: /* Versions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
The [[SDK]] is available for &#039;&#039;&#039;[[FSX]] Deluxe&#039;&#039;&#039; only.&lt;br /&gt;
&lt;br /&gt;
== Installation ==&lt;br /&gt;
To install the FSX RTM SDK -&lt;br /&gt;
# Browse the &#039;&#039;&#039;FSX Deluxe Edition disk 1&#039;&#039;&#039;&lt;br /&gt;
# Open the &#039;&#039;&#039;SDK&#039;&#039;&#039; sub-folder&lt;br /&gt;
# Double-click the &#039;&#039;&#039;setup.exe&#039;&#039;&#039;&lt;br /&gt;
# Tell it where to install. Default location is &#039;&#039;&#039;C:\Program Files\Microsoft Games\Microsoft Flight Simulator X SDK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
You must as a minimum have the FSX RTM SDK installed before attempting to upgrade to the SDK Service Packs.&lt;br /&gt;
&lt;br /&gt;
== Versions ==&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;background:#FF0000&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|--&lt;br /&gt;
|&amp;lt;br&amp;gt;&#039;&#039;&#039;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;You must install the appropriate SDK version update to match your FSX version. &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&#039;&#039;&#039;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Find your FSX version in the FSX column, read the matching row SDK details.&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;background:#f2f2f2&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
|--&lt;br /&gt;
| &#039;&#039;&#039;FSX&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;SDK&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Availability&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Installer&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;Location&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | RTM&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | RTM&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | Retail&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | ????&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | FSX RTM disk 1, SDK sub-folder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | &lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | SP1&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | Discontinued&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | ????&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | Standalone&lt;br /&gt;
|--&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| SP1&lt;br /&gt;
| SP1A&lt;br /&gt;
| [http://www.fsinsider.com/downloads/Pages/FSXSoftwareDevelopmentKitUpdate.aspx Download * (166Mb)]&lt;br /&gt;
| fsx_sdk_sp1a.exe&lt;br /&gt;
| Standalone&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | Acceleration&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | SP2&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | Retail&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | sdk.msi&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | FSX Acceleration disk, SDK sub-folder&lt;br /&gt;
|-&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | SP2&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | SP2&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | [http://www.fsinsider.com/downloads/Pages/FSXSDK-SP2Update.aspx Download * (211Mb)]&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | sdk.msi&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | Standalone&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&#039;*&#039; May also be available on magazine cover discs.&lt;br /&gt;
=== Notes ===&lt;br /&gt;
==== Acceleration users ====&lt;br /&gt;
A prior version of the SDK must be present on your PC before upgrading to SDK SP2.&amp;lt;br&amp;gt;&lt;br /&gt;
SDK SP1a is only provided on the Acceleration disk, to allow you to do so.&lt;br /&gt;
&lt;br /&gt;
== Documentation ==&lt;br /&gt;
&#039;&#039;&#039;RTM&#039;&#039;&#039;, &#039;&#039;&#039;SP1&#039;&#039;&#039;, &amp;amp; &#039;&#039;&#039;SP1a&#039;&#039;&#039; documentation is supplied in &#039;&#039;&#039;html&#039;&#039;&#039; format, with each folder containing the relevant html file(s).&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;SP2&#039;&#039;&#039; documentation is supplied in &#039;&#039;&#039;chm&#039;&#039;&#039; format, as a single compiled html file, &#039;&#039;&#039;fsxsdk.chm&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
located by default in &#039;&#039;&#039;C:\Program Files\Microsoft Games\Microsoft Flight Simulator X SDK\SDK&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Configuration ==&lt;br /&gt;
If you have installed both FSX &amp;amp; SDK to their default locations,&lt;br /&gt;
the OPT should now be available from the FSX Tools menu.&lt;br /&gt;
&lt;br /&gt;
If you have installed either FSX or the SDK to a non-default location,&lt;br /&gt;
you should run configsdk.exe in the SDK root folder.&lt;br /&gt;
&lt;br /&gt;
== Addons ==&lt;br /&gt;
Ensure you are using the latest version of any addons, (e.g. FSUIPC).&amp;lt;br&amp;gt;&lt;br /&gt;
Important particularly when you upgrade FSX to a newer service pack.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Incorrect addon versions may prevent the Tools menu from loading entirely.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== dll.xml ==&lt;br /&gt;
If the FSX Tools menu option is still not displaying,&lt;br /&gt;
you may need to edit dll.xml manually, &amp;lt;br&amp;gt;&lt;br /&gt;
to -&lt;br /&gt;
* include the full paths for the SDK entries.&lt;br /&gt;
* set disabled to false&lt;br /&gt;
* remove all addon entries. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Any changes will not be reflected till next time you start FSX.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
The dll.xml file is located at -&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;prettytable&amp;quot; style=&amp;quot;background:#f2f2f2&amp;quot; border=&amp;quot;0&amp;quot;&lt;br /&gt;
|--&lt;br /&gt;
| &#039;&#039;&#039;OS&#039;&#039;&#039;&lt;br /&gt;
| &#039;&#039;&#039;dll.xml location&#039;&#039;&#039;&lt;br /&gt;
|--&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | XP&lt;br /&gt;
| style=&amp;quot;background:#F8EABA;&amp;quot; | C:\Documents and Settings\USERNAME\Application Data\Microsoft\FSX\&lt;br /&gt;
|--&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | Vista&lt;br /&gt;
| style=&amp;quot;background:#C0C090;&amp;quot; | C:\Users\USERNAME\AppData\Roaming\Microsoft\FSX\&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
In the root of your FSX installation there&#039;s also a dll.xml file, &lt;br /&gt;
do not edit this, it&#039;s only a default backup copy.&lt;br /&gt;
&lt;br /&gt;
=== Paths ===&lt;br /&gt;
The defined paths must be correct.&lt;br /&gt;
&lt;br /&gt;
A &#039;&#039;&#039;relative path&#039;&#039;&#039; e.g.&amp;lt;br&amp;gt;&lt;br /&gt;
..\Microsoft Flight Simulator X SDK\SDK\Mission Creation Kit\object_placement.dll&lt;br /&gt;
&lt;br /&gt;
is relative to the FSX default location -&amp;lt;br&amp;gt;&lt;br /&gt;
C:\Program Files\Microsoft Games\Microsoft Flight Simulator X&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
If either FSX or the SDK is installed to a non-standard location&amp;lt;br&amp;gt;&lt;br /&gt;
then use a &#039;&#039;&#039;full path&#039;&#039;&#039; (aka absolute path). e.g.&amp;lt;br&amp;gt;&lt;br /&gt;
C:\Program Files\Microsoft Games\Microsoft Flight Simulator X SDK\SDK\Mission Creation Kit\Object_Placement.dll&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Disabled ===&lt;br /&gt;
Each of the 3 SDK tools need to be set as follows.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
	&amp;lt;Disabled&amp;gt;False&amp;lt;/Disabled&amp;gt;&lt;br /&gt;
	&amp;lt;ManualLoad&amp;gt;False&amp;lt;/ManualLoad&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Addons ===&lt;br /&gt;
Remove all addon entries, ensure the MS SDK tools load, then reapply your addons.&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
&#039;&#039;&#039;[[SDK Toolset (FSX)]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[SDK]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[FSX Acceleration]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;[[Key Mapping (FSXA)]]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
[[category:FSX]]&lt;br /&gt;
[[Category:Aircraft_design]] &lt;br /&gt;
[[Category:Scenery_design]] &lt;br /&gt;
[[Category:Missions]] &lt;br /&gt;
[[Category:SimConnect]] &lt;br /&gt;
[[Category:File_Formats]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Command_Prompt_Window&amp;diff=3249</id>
		<title>Command Prompt Window</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Command_Prompt_Window&amp;diff=3249"/>
		<updated>2007-12-17T09:13:13Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A window displayed on the desktop used to interface with the MS-DOS operating system. &lt;br /&gt;
MS-DOS commands are typed at an entry point identified by a blinking cursor.&lt;br /&gt;
&lt;br /&gt;
== Useage ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
List of tools where you&#039;d use the CP&lt;br /&gt;
&lt;br /&gt;
== Opening ==&lt;br /&gt;
List of methods to open a command prompt window.&lt;br /&gt;
&lt;br /&gt;
=== Start menu Run ===&lt;br /&gt;
Go to run in the start menu and type &#039;&#039;&#039;cmd&#039;&#039;&#039; in the Window that appears. Now press OK and the command prompt will be opened.&lt;br /&gt;
&lt;br /&gt;
=== Installing quick access methods ===&lt;br /&gt;
Add an option to open a &#039;&#039;&#039;Command Prompt Window&#039;&#039;&#039; to your &#039;&#039;&#039;right-click menus&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;br&amp;gt;Works for both WinXP/Vista.&lt;br /&gt;
&lt;br /&gt;
==== Cmd Here Powertoy  ====&lt;br /&gt;
Adds a &#039;&#039;&#039;open command window here&#039;&#039;&#039; option to the folder&#039;s context menu. &lt;br /&gt;
&lt;br /&gt;
Install Microsoft&#039;s: &#039;&#039;&#039;[http://download.microsoft.com/download/whistler/Install/2/WXP/EN-US/CmdHerePowertoySetup.exe Cmd Here Powertoy ]&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
==== Registry Import ====&lt;br /&gt;
A quick Registry import.&lt;br /&gt;
&lt;br /&gt;
* Open &#039;&#039;&#039;Notepad.exe&#039;&#039;&#039;. &lt;br /&gt;
* Copy and paste in the following text -&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
[HKEY_CLASSES_ROOT\Directory\shell\Command]&lt;br /&gt;
@=&amp;quot;Command Prompt:&amp;quot;&lt;br /&gt;
&lt;br /&gt;
[HKEY_CLASSES_ROOT\Directory\shell\Command\Command]&lt;br /&gt;
@=&amp;quot;cmd.exe /k cd %1&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
* Save the text file as &#039;&#039;&#039;addprompt.reg&#039;&#039;&#039;&lt;br /&gt;
* Double-click on the &#039;&#039;&#039;addprompt.reg&#039;&#039;&#039; file you just saved.&amp;lt;br/&amp;gt;&#039;&#039;&#039;Note&#039;&#039;&#039; - This will modify the registry. Your anti-virus software might ask you to confirm the registry change. It is safe to allow it.&lt;br /&gt;
&lt;br /&gt;
==== Method 3 ====&lt;br /&gt;
Placeholder text&lt;br /&gt;
==== Method 4 ====&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Prompt ==&lt;br /&gt;
[[Command Prompt]]&lt;br /&gt;
&lt;br /&gt;
== Error Codes ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
[[Command Prompt]]&lt;br /&gt;
&lt;br /&gt;
[[BGL Compiler SDK]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft_design]]&lt;br /&gt;
[[Category:Scenery_design]] &lt;br /&gt;
[[Category:Missions]]&lt;br /&gt;
[[Category:General]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=Command_Prompt&amp;diff=3248</id>
		<title>Command Prompt</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=Command_Prompt&amp;diff=3248"/>
		<updated>2007-12-17T09:12:27Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MS-DOS commands are typed at an entry point identified by a blinking cursor.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Help ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
== Path ==&lt;br /&gt;
You can hide/show the prompt path -&lt;br /&gt;
&lt;br /&gt;
To hide, type &amp;lt;code&amp;gt;prompt $g&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To show, type &amp;lt;code&amp;gt;prompt $p$g&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Related content ==&lt;br /&gt;
[[Command Prompt Window]]&lt;br /&gt;
&lt;br /&gt;
[[BGL Compiler SDK]]&lt;br /&gt;
&lt;br /&gt;
== External links ==&lt;br /&gt;
Placeholder text&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Category:Aircraft_design]]&lt;br /&gt;
[[Category:Scenery_design]] &lt;br /&gt;
[[Category:Missions]]&lt;br /&gt;
[[Category:General]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
	<entry>
		<id>http://www.fsdeveloper.com/wiki/index.php?title=MDL&amp;diff=3069</id>
		<title>MDL</title>
		<link rel="alternate" type="text/html" href="http://www.fsdeveloper.com/wiki/index.php?title=MDL&amp;diff=3069"/>
		<updated>2007-11-20T15:29:03Z</updated>

		<summary type="html">&lt;p&gt;Nlr: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;MDL is the file format used by Microsoft Flight Simulator to store visual model data. It uses the .mdl file extension.&lt;br /&gt;
&lt;br /&gt;
The MDL format can be broken down into 2 main types; the DLL-based type and the RIFF-based type.&lt;br /&gt;
&lt;br /&gt;
The DLL-based format was used in legacy versions of MSFS, before Flight Simulator 2002. It was actually written as a windows DLL library, and simply used the .mdl extension. It is believed to have been coded in Assembly language. More information may be found at [[Legacy MDL Format]].&lt;br /&gt;
&lt;br /&gt;
The RIFF-based format MDL was introduced in FS2002, and has been updated in every subsequent version of FS. It can be broken into 3 main versions: MDL8, MDL9, and MDLX. The [[MDL8]] file was introduced with FS2002 and was used in aircraft models. It used a simple architecture, containing mostly BGL opcodes wrapped around a simple RIFF shell. In FS9 we were introduced to the [[MDL9]] format. FS9 is especially interesting because the scenery models used the new MDL9 format, but the aircraft models still used the MDL8 format. The MDL9 format introduced some new fourCC tags, and was better organized, but still relied heavily upon BGL codes to actually draw the model. The [[MDLX]] format was introduced with FSX. It is a complete departure away from the old BGL drawing codes and relies solely on data structures defined within 57 different fourCC tags.&lt;br /&gt;
&lt;br /&gt;
[[category:File Formats]]&lt;br /&gt;
[[category:Aircraft design]]&lt;br /&gt;
[[category:Scenery design]]&lt;/div&gt;</summary>
		<author><name>Nlr</name></author>
	</entry>
</feed>