Sign in to follow this  
Guest JR Morgan

Advanced Building Helipads

Recommended Posts

Hi all.Thanks to Christian Stock's investigations of the default BGLs, in typical 'Forest Gump' fashion, I may have stumbled onto a different way of coding invisible helipads.These pads are actually FS2000 Advanced Buildings with no height:; Delavan Helipad;Header( 1 N42:37:59.75 N42:37:59.75 W088:38:00.00 W088:38:00.00 )LatRange( N42:37:59.75 N42:37:59.75 ); ----------------------------------------Area( 5 N42:37:59.75 W088:38:00.00 12 ) Call( :_Placeit ) Jump( : ):_Placeit RefPoint( abs :_FailReturn 1.00 N42:37:59.75 W088:38:00.00 E= 300 V1= 0 V2= 68 ) Call( :_Pad ) Call( :_Light ) Return:_Pad AdvBldg( normal 100 100 LEVEL1 0 0 0 0 LEVEL2 58 0 320 352 320 LEVEL3 0 0 0 0 ROOF 10 256 256 ) Return:_Light IfVarAnd( :_FailReturn 030A 0018 ) LineColor( 0F F0 ) Dot( 0 0 0 ) LineColor( 10 F0 ) DotLine( 49 0 49 -49 0 49 50 ) ; 1 DotLine( -49 0 49 -49 0 -49 50 ) ; 2 DotLine( -49 0 -49 49 0 -49 50 ) ; 3 DotLine( 49 0 -49 49 0 49 50 ) ; 4:_FailReturn ReturnEndA; ----------------------------------------This is a 100x100 meter invisible pad, with some lights, placed at 300 meters elevation... about 12 meters above the default ground here.Autogen is excluded directly under the pad, which should be no problem, as pads usually reside on top of objects larger than the pads.All flat roofed Advanced Buildings appear to be landable ( please correct me if I'm wrong ! ), so they only need lights and a bitmap for the target. I don't know about sloped roofs, or peaked roofs. Although a sloped roof brings up an interesting possibility of a sloped runway.I'm going to test this for a day or two, and see if all kinds of objects can benefit from this type of pad.Hopefully, J.R. Morgan will have an API ready for using this soon. ;)Dick

Share this post


Link to post
Share on other sites
Help AVSIM continue to serve you!
Please donate today!

Hi J.R.I hope your reading this. You'll still need an Area16n flatten under the object you wish to place a pad on. That is needed to "lock" the mesh elevation.. so different meshes don't upset the placement of the pad to the object it sit on.This isn't even a bad idea for Advanced Buildings with heliports designated. In the real world, heliports have set elevation, just like runways.Dick

Share this post


Link to post
Share on other sites

>>All flat roofed Advanced Buildings appear to be landable ( please correct me if I'm wrong ! ), so they only need lights and a bitmap for the target.<< **Well, I, err, umm...I just don't get it :-doh. First off, it's been a heckuva day here --- 'Wife insisted I paint the innards of the front entry door --- Spent 5 hours on a job that should have taken 1/2 hour.'Soon as I could; First, I checked the San Diego Scenery in the sim and could find NO buildings that had hardened roof-tops. Scenery detail set to extremely dense, etc, etc. Anyone got a precise Lat/Lon location for any of those? I Know the Carrier West of SD has hardened landing and hangar decks -- 'You guys ever broke it's code? Second, Checked many flat-roofed AdvBldgs I had made in a scenery in-work and none of those are roof-top landable.Third, compiled your (last list I think) code, went to it in Delavan and had nice green lights floating in the air but no Heli-landable surface other than the ground surface below it.I'm reasonably sure I'm missing something basic here, based on seeing the pic you posted with the shadows, etc, but ????? Did you make that with code you posted on in BGLC?Fourth, I made a locatable macro, placing it in various locations. 'Got lights but no landable surface, similar to the Delavan experience.I was hoping to have a macro to post tonite but so far --- Zilch.ALSO, to top things off, My drag 'n drop SCASM compile function quit working. Works OK from a DOS window or in the 'Start/Run' box but no longer compiles when drag/dropping a code snippet on top of it *:-* ! Any ideas of how to recover that handy function?I'd go kick the dog but I'd probably only break my foot..J.R.

Share this post


Link to post
Share on other sites

Did you read my reply to the other thread (the one where I started it all)?I now posted the BGLC decompile of one of the two default files...Cheers, Christian

Share this post


Link to post
Share on other sites

Hi J.R.This is a mystery!I can turn off all my autogen, by turning the slider down to zero... then I can easily find the default Advanced Buildings. I can land a helicopter on all of them.I'm thinking I may have something activated that you do not... so I'll play with my system today, and see what turns off their hardening.It's nothing dependant on anybody's computer, but most likely a slider or checkbox that is different. I usually have all my sliders to the right ( maxed out ). We'll find it.Meanwhile, here's a zipped FS video of and Advanced Building Roof and its hardening. If your settings are not supporting this, then the video should show a crash... other wise it might be interesting.Dick

Share this post


Link to post
Share on other sites

Hi J.R.Sorry for another post on this. I should have looked more closely.First, turn your autogen off, to properly be able to see the Advanced Buildings... the slider is in the Display menu item.2nd. You may have Advanced buildings... but if you have used transform or dummy cals, they may not work as expected.3rd. The Delavan example has no visible pad. The surface is hard surfaceplane between the lights. Slew above the target, then use the 'A' key to descend to it. You'll be sitting above the ground, surrounded by the lights. You can go under the surfaceplane, and ascend through it... but dropping down, i is solid, and crashable.I used TDFCalc3's elevation readings over some default ADV buildings. The ground elevation is used, until you descend to the roof height.. then suddenly you are stopped by the roof, and the ground elevation snaps to the ground + roof height. If you stay in the nearby area ( v1 ?) the ground elevation is now the roof. If you leave the area and return, the ground elevation is now the ground, until you again descend to the roof.I tried all kinds of sliders, setings, etc... Only scenery density hurts the default Advanced buildings. If you can see them, you can land on them.You can place these over a Gmaxed object as well. Even over a Gmaxed object, turned into a library object, by fsregen ( but they show artifacts if you insert the damage code into the library object code!!! )Dick

Share this post


Link to post
Share on other sites

Hi all.Attached is a txt file of a helipad API using the Advanced building code.; ADVPad30m.api by Richard Ludowise; code is free for any usage within the constraints of SCASM usage; this will place a 30x30 meters helipad at a specified elevation... the hardened surface is 50x50 meters; many thanks to J.R. Morgan; ------------------------------------Area( 5 %1 %2 30 ) PerspectiveCall( :_ADVPlace ) Jump( : ):_ADVPlace RefPoint( abs :_ADVFail 1 %1 %2 E= [ %11 ] V1= 500 V2= 70 ) RotatedCall( :_Harden 0 0 0 ) RotatedCall( :_ADVFail 0 0 0 ) Return:_Harden Zbias( 1 ) AdvBldg( normal 50 50 LEVEL1 0 0 0 0 LEVEL2 0 0 0 0 0 LEVEL3 0 0 0 0 ROOF 0 0 0 ) Zbias( 0 ) Return:_ADVFail ReturnEndA; ------------------------------------Area( 5 %1 %2 30 ) PerspectiveCall( :_PadPlace ) Jump( : ):_PadPlace RefPoint( abs :_PadFail 1 %1 %2 E= [ %11 ] V1= 3000 V2= 40 ) RotatedCall( :_PadPaint 0 0 0 ) RotatedCall( :_PadFail 0 0 0 ) Return:_PadPaint Zbias( 2 ) LoadBitmap( 0 L5 EF 255 255 255 "helo3.bmp" ) Points( 1 -15 0 15 15 0 15 15 0 -15 -15 0 -15 ) ShadedTexPoly( m 0 32767 0 0 1 0 127 2 127 127 3 127 0 4 0 0 ):_PadFail Zbias( 0 ) ReturnEndA; ------------------------------------Area( 5 %1 %2 30 ) PerspectiveCall( :_Lights ) Jump( : ):_Lights RefPoint( abs :_LightsFail 1 %1 %2 E= [ %11 ] V1= 6000 V2= 40 ) RotatedCall( :_LightsPaint 0 0 0 ) RotatedCall( :_LightsFail 0 0 0 ) Return:_LightsPaint Zbias( 3 ) IfVarRange( :_StrobePaint 028c 0002 0004 ) LineColor( 10 F0 ) DotLine( 15 0 15 -15 0 15 16 ) ; 1 DotLine( -15 0 15 -15 0 -15 16 ) ; 2 DotLine( -15 0 -15 15 0 -15 16 ) ; 3 DotLine( 15 0 -15 15 0 15 16 ) ; 4:_StrobePaint IfVarAnd( :_LightsFail 282 5555 ) RGBLColor( EF 255 255 255 ) Brightness( 100 ) Dot( 15 0 15 ) Dot( -15 0 15 ) Dot( -15 0 -15 ) Dot( 15 0 -15 ):_LightsFail Zbias( 0 ) ReturnEndA; ------------------------------------Enjoy.Dick

Share this post


Link to post
Share on other sites

Hi Dick..Well, there clearly must be something vastly different in our systems. Per your screenshot at San Diego's Lat/Lon positions, I went there (see atchd screenshot for lat/lon verificaton); and maybe you can park a 'heavy' on it but I can't land a Heli on it :-). I'm wondering if perchance you have some FSUPIC things set that might be affecting this? Some peculiarities:1. AGN on or off doesen't affect the AdvBldg roof's 'landability'. BTW, note the different appearance of AGN between your pic and my pic. I'm running Gerrish's AGN replacements and his latest trees but surely that's not affecting the AdvBldg's roof characteristics??2. On first attempt at running your SCASM API (Thanks for writing it) I had a G3D.dll lock-up but 'don't necessairly blame it on your .api as I'd been doing some 'cruddy' stuff in the scenery area I wrote it to. 'Ended up re-doing scenery.cfg to get things back running right.Here's the pic's of my San Diego experience and also my system settings:3e49b2ec2436ce9e.jpgIn this pic the pilot's jock strap is gently crunching into the bldg.3e49b36f25e9ae97.jpg,3e49b39f26a8ddd0.jpg'Just got the dinner call so CUL. I'll play around some more with your macro tonite...J.R.

Share this post


Link to post
Share on other sites

Hi J.R.I'm not a good chopper pilot at all! But I can slew above the target, about 30 meters, and control the descent to gently land on these buildings. I noted the Bell is a little more "touchy" than the freeware EuroCopter... but I can land both models.The surface of these roofs are hard, and you can crash... just like you can crash on the ground. I believe the sim 'sees' thr roof area as ground, otherwise I couldn't park the big iron on it. :)I think a small runway could be placed over these buildings, but I think that isn't really needed. Perhaps the surface needs to be smoothed.I don't know what surface type these are ( I suspect rough )... I'll need to make a longer building and see if I can land a small plane on it.Dick

Share this post


Link to post
Share on other sites

Hi J.R.I think I found the answer.I made a building of huge length...3000 meters.I tried to land a Cessna on it.. and crashed miserably.After fooling with the code for a while. I placed an invisible runway at ground altitude.. under the building. I then could land easily on the building!I fooled a bit more with this...If you place an advanced building with an absolute elevation, it still appears at ground level... but the hardened surface is:Building Height + your placement elevation.So a 0 elevation building has 0 + your placement elevation for the hardened surface. This hardened surface isn't detectable from below, and isn't detectable from above, until you are practically on it.The really odd thing is that the the invisible runways surface characteristics "echo" upwards to the invisible building's surface hardening.==============So place an invisible runway under any building or object first, at the ground level. Then you can put the zero-height ( invisible ) advanced building pad at any height you want, and it will have runway characteristics.I haven't tried to SurfaceType( 0 50 50 'ground elevation' ), yet.That may also work, and "echo" upwards.EDITEDSurfacetype does NOT appear to "echo" upwards to the invisible pad.Dick

Share this post


Link to post
Share on other sites

>I haven't tried to SurfaceType( 0 50 50 'ground >elevation' ), yet.Please tell me if this doesn't make sense, as I haven't followed the whole discussion 100% :), but with a SurfaceType you can not make the ground hard (and landable), it is only used to set the properties of the ground.Arno


Member Netherlands 2000 Scenery Team[link:home.wanadoo.nl/arno.gerretsen]Arno's FlightSim World for scenery design hints, tips and other tricks...

Share this post


Link to post
Share on other sites

Hi Arno.You can make a zero meter tall AdvBldg(), then set the absolute RefPoint elevation to any height, and there will be an invisible hardened surface at the RefPoint height.The surface appears to be 'rough', and is causing J.R. some problems landing his helicopter on it.I placed an invisible runway at the ground level under it, and it seemed to smooth the surface, and make it more landable. ( That might be subjective ).I was trying to see if setting SurfaceType to 'smooth' would effect the elevated, invisible surface. It doesn't.I'm pretty sure Smoothing( 1 )... Smoothing( 0 ), would have no effect.I really need to work on it more.I can land a helicopter on top of an advanced building fairly well, but it does need a soft landing or you'll crash.Here's a Gmaxed Cube and a hardened pad on top of it:NewCube.zipDick

Share this post


Link to post
Share on other sites

OK Dick... I've found (MY) problem in not being able to duplicate your results. It was 'simple as pie' --- In order for these buildings to have landable roof-tops, The Aircraft's 'crash' ability must be set. -- All the while, I've been bad-mouthing M$ for not being 'kind' to us Heli Pilots when, as the song says, "It was there all the time". If only they'd have put helipad texturing on those roof-tops instead of (only) the single blinking red light, I could have saved lots of 'wierd' coding (I think).Here's a pic of the famous San Diego site:3e4a96720b4fd44a.jpgSee ** Comments to >> << statements, based on testing here:>> I can slew above the target, about 30 meters, and control the descent to gently land on these buildings. I noted the Bell is a little more "touchy" than the freeware EuroCopter... but I can land both models.<<** Dick, I used both 'slow slew' ( Q or A keys) AND real flight to test at San Diego and the Delavan code, which AFAIK, did not have an Inv Rwy under it? (These AdvBldg's with the single blinking lights need more looking-into)? Usually, I would always use slow-slew first to look for an aircraft shadow indicating the roof was 'hard' surfaced, but also use real flight, dropping through the roof top to ground (the A/C shadow appeared on the ground under the building), HOWEVER, I always have 'crash-detect' turned-off when doing my testing during development of elevated rooftop scenery(s). Although it speeded-up development time, I now see that was a mistake.**>> The surface of these roofs are hard, and you can crash... just like you can crash on the ground. I believe the sim 'sees' thr roof area as ground, otherwise I couldn't park the big iron on it. <<** The "and you can crash" comment above was my clue. In your Delavan picture I saw the eurocopter's shadow. that convinced me the surface was indeed hard -- but my problem is that I'd not been able to duplicate that hardness condition (yet); Because I had 'crash' turned-off. :-grr :-rotor.Arno is correct in saying the SCASM 'SurfaceType' is only used to establish whether a surface is 'bumpy/dusty', smooth, or acts like water. It cannot, in itself, produce a hardened surface. Finally, at this point in time, I think the real key to understanding all this is to know the nature of the code MS uses under these (landable only if crash-detect is turned-on) buildings. I think you've approached a similar result in your comments on placing the InvRwy under the created AdvBldg.**Well this is a very nice experience and IMHO, made possible only because Christian and yourself (Dick) and people like Arno have continued to use your abilities to explore and experiment with the default code which, I'm sure still contains many nice'ties yet to be discovered.**Thanks; J.R.

Share this post


Link to post
Share on other sites

Hi J.R.Are you saying the invisible runway must be under the building for you to land easily?Or, are you landing alright, without the invisible runway?Dick

Share this post


Link to post
Share on other sites

Dick... No; at the San Diego bldg, the landing was on the default conditions, however, I had to have 'Crash-Detect' turned-on.J.R.

Share this post


Link to post
Share on other sites

Dick --- More for the Journal.. I think I've tested enough now to confirm that as you've previously stated: All flat roofed AdvBldgs WITH OR WITHOUT the flashing red light are heli-landable, provided crash detection is activated.Also good news: User created flat-roofed AdvBldgs are also heli landable, even when placed on top of a user created 'Flatten Area' that varys the default terrain mesh.I re-tested your helipad with the green lights at Delavan and it works just fine with crash-detect enabled and doesn't work with crash-detect de-activated. Also, the 3 flat-roofed bldgs across the road from Delavan Rwy 18 and the bldg nearest Rwy 36 are landable.Then went to a scenery I'm always working-on and verified that all flat-roofed AdvBldgs I had made there which sit on top of a large flatten polygon are landable with crash-detect turned on.This is great news because we can now eleminate use of the elevated inv rwy for helipads as long as they're placed on top of flat roofed AdvBldgs :-). The inv rwys have a bad characteristic of not 'refreshing' fully when the scenery area is departed-from and then re-entered, inspiring all sorts of 'kluge' fixes for that.Below are 2 screenshots at Delavan and 1 at the village of Vandalia IL (KVLA) showing their hard surface capability. Now we can start saving our sheckels for "A Century of Flight" :-rotor. J.R.

Share this post


Link to post
Share on other sites

Hi J.R.Then it is true that you can make invisible ( zero height ) AdvBldgs, and set their hardening height with an absolute refpoint. So my macro will work if crash-detect is ON. Invisible helipads.I can place an invisible, crashable surface anywhere, and any size. Airport has a very easy feature for this.Here's the airport code for a 50mx50m invisible pad at 400 meters altitude.; Building invisible helipad!Area( 5 00:0.0 000:0.0 10 ) IfVarRange( : 0346 1 32767 ) PerspectiveCall( :_P0 ) ShadowCall( :_S0 ) Jump( : ):_P0 Perspective:_S0 RefPoint( 2 :_S1 1 00:0.0 000:0.0 E= 400 V1= 10000 V2= 71 ) RotatedCall( :_R0 000 000 90 ) Return:_R0 AdvBldg( NORMAL 50 50 LEVEL1 0 0 256 256 LEVEL2 0 0 256 256 256 LEVEL3 0 0 256 256 ROOF 0 256 256 ):_S1 ReturnEndAI've still got to check if these are 'stackable'... allowing multiple helipad levels. Autogen influence?And I need to check is sloped roofs can also be used this way.:)Dick

Share this post


Link to post
Share on other sites

>>Then it is true that you can make invisible ( zero height ) AdvBldgs, and set their hardening height with an absolute refpoint. So my macro will work if crash-detect is ON. Invisible helipads.<<**The tests I've done so-far indicate that is a YES. Usually of course, we would put the helipad's graphic and lights on top of a visible AdvBldg. The invisible hardened surface, however, would be very attractive for AC hangar and flight decks.**>>I can place an invisible, crashable surface anywhere, and any size. Airport has a very easy feature for this<<**I would assume the size would only be limited by your header and within a SCASM LatRange if using that compiler? Yep, the Apt routine is what I usually use for AdvBldgs.**>>I've still got to check if these are 'stackable'... allowing multiple helipad levels. Autogen influence?<<**The stackable feature would be very good for Flight Deck/Hangar Deck work with Carriers, Police Helis in large parking garages :-), etc. I hope that works. Presently, it appears to me that with prudent use of V2, the AGN influence would be limited to a minimal dead zone around the size envelope of the AdvBldg? Needs testing.**>>And I need to check is sloped roofs can also be used this way.<<** Yes, that would be a 'nice-to-know' thing. I will test some flat roofed units dispersed with TransformCalls (unless you've already tried that)? **J.R.

Share this post


Link to post
Share on other sites

Hi Dick and all. This is just another report on the quest for usable 'gimmicks' to enhance the Helicopter flying scenery experience in FS2002. As promised, I tested the ability of flat-roofed FS2000 Advanced Buildings to retain their Heli-Landable 'Hard' roof-tops when placed in scenery using the SCASM TransformCall opcode.BTW, Thanks Dick, for the previous example of simple source code for compacting code for placing multiple objects with TransformCall. To me, this is like having 'Library Call' capability without the need for the Library :-). The below macro works pretty well here. I use the term 'pretty well' because for the houses placed with the macro to be 'always hard-roofed', it seems they must be approached from a few km distant from the RefPt -- then, the 4 houses seem to always be reliably Heli-Landable.For example, If a flight instance is started in a Heli sitting on the RefPt building, then as the other bldgs in the group are approached, their roofs are not immediately hard-surfaced UNTIL the heli is rotated in azimuth until it's shadow appears on the roof top. OR, until one flys beyond the 'Most distant-from-RefPt bldg, does a 180 turn and returns toward the RefPt. This condition may be improved by finding better values for V1 & V2? I don't know yet.For 'general' use in a designer's scenery, the code below works very well because the scenery is usually started from a fairly distant airport rwy or a more prominent bldg's roof-top a few km distant from these houses. Keep in mind that the intent for this code is to add autogen-like bldgs in scenery areas that were not 'blessed' with default autogen.The code below is in macro form that should be able to placed using your favorite 'object placing scenery design program' that uses the SCASM compiler. I used Apt26 w/SCASM 2.88 to test it. Of course, you ambitious ones can make headers for it if you don't like the macro format :-). On that note, be aware that some object placing design programs, Apt for example, may change some parameters prior to compiling the source code containing this (or any other) macro.;__________________________________________;Multiple Advanced Buildings To Augment Autogen;With Flat-Roofed Buildings that are Heli-Landable;AdvBldg Type 25 is Brown 4-Plex Style house 10 M high with flat roof.;%1=Latitude;%2=Longitude;%4=Scale;Copyright SCASM - Macro by J.R. Morgan with assistance from Richard Ludowise Area( 5 %1 %2 10 ) IfVarRange( : 0346 1 6 ) RefPoint( 7 :Fail %4 %1 %2 V2= 256 ); Calls ------------------------- TransformCall( :House1 000 000 000 0 0 0 0 0 0 ); 1 TransformCall( :House1 000 000 -105 0 0 0 0 0 0 ); 2 TransformCall( :House1 090 000 -105 0 0 0 0 0 0 ); 3 TransformCall( :House1 035 000 -200 0 0 0 0 90 0 ); 4 RotatedCall( :Fail 0 0 0 ) ; DummyCall Jump( : ); Buildings -------------------:House1 AdvBldg( NORMAL 40 20 LEVEL1 25 4 256 256 LEVEL2 0 0 256 256 256 LEVEL3 0 0 256 256 ROOF 9 256 256 ) Return:Fail ReturnEndA;_________________________________________J.R.

Share this post


Link to post
Share on other sites

Tried zero height advanced buildings for my fs2002 helipads, which became unstable in fs2004 and they work great now. Don't know what I would do without this forum... Would NEVER have thought about THIS solution :-). Had a problem though, which I could solve. Don't know if anybody else has written about that, so I thought I'd share my little finding: Very large pads (my largest is 77*186 meters) becomeinstable at the borders with the same sink-in effect as with the AreaSense/SetElevation-method. The solution was to use two adjacent advanced buildings. Now the pad is stable.CheersGottfried

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this