T.S.C.Plage 0 Posted September 22, 2012 (edited) I've compared the locations of heliports (via their airport indentifier) on the TKOH map with the original Seattle area because I wanted to know how correct they're. I've used the "heliport.hpp" to cross check them and to see which are actually in there and if they're named correctly. I've also looked for some unnamed airports, -fields and strips that I noticed while flying around. Here is the result: Marked on map and named in "heliport.hpp":WT42 - Larkin Aviation Heliport /not existing WT07 - Ion Heliport /not existing 9WA6 - Puget Sound Plaza Heliport WA54 - 1001 Fourth Avenue Plaza Heliport WN01 - Seattle Private Number One Heliport WN16 - Komo Tv Heliport 8WA9 - Broadcast House Helistop WA55 - Elliott Park Heliport WN93 - Park 90 Heliport WT22 - Graves Field Heliport 9WA0 - Boeing Plant 2 Heliport WA11 - Boeing Military Airplanes Heliport 8WA2 - Boeing Renton Ramp Site Nr 2 Heliport /close to Starbucks ;) 01WT - Odyssey Heliport 71WA - I-90/Bellevue Busi Pk Boeing Comp Svcs Hdq Heliport WN71 - Evans Heliport WA19 - Berkley Structures Heliport 81WA - Jobe Skis Plant 1 Heliport WA38 - South Cove Heliport 54WA - Tukwila Operations Center Heliport WA75 - Flying 'o' Ranch Heliport /in "heliport.hpp" wrongly named "Tukwila Operations Center Heliport", too 08WA - Manchester Laboratory Heliport 9WA9 - Naval Submarine Base Bangor Heliport /wrong position, should be more to the NW 43WA - Wilson Heliport WN91 - Evans Heliport 92WA - Conner Heliport WA71 - Kelly Ranch Heliport WA61 - Thompson Airport WA05 - Apex Airpark 4WA9 - Port Orchard Airport WA04 - Kyles Airport Marked on map but not named in "heliport.hpp": 1WT7 - ??? /not existing 1WT6 - Overlake Hospital Ems Heliport 8WA3 - Valley Medical Center Heliport 0WA8 - Childrens Hospital Emergency Heliport Not marked on map and not named in "heliport.hpp": WA17 - Majerle Strip W16 - Firstair Field 2S1 - Vashon Municipal Airport WA69 - Wax Orchards Airport S50 - Auburn Municipal Airport S36 - Crest Airpark Added: Martha Lake Airport (Park) /ex S13, not functional today but still visible on TKOH map Unknown Airstrip /Grass airstrip at Farm SW of Duvall (no infos found) I've made an editor-mission with some additional markings. Looks like this... Here's the mission.sqm if you're interested. Update: v1.01 (see "Added" in quote above) version=11; class Mission { addOns[]= { "united_states_h" }; addOnsAuto[]= { "united_states_h" }; randomSeed=10340698; class Intel { startWeather=0.34999999; startWind=0.1; forecastWeather=0.34999999; forecastWind=0.1; year=2013; day=8; hour=11; minute=20; }; class Markers { items=17; class Item0 { position[]={6807.9795,115,11506.048}; name="port_orchard_airport"; text="4WA9 - Port Orchard Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item1 { position[]={19220.203,112.80691,8248.0508}; name="wax_orchard_airport"; text="WA69 - Wax Orchards Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item2 { position[]={20859.436,103.36714,14712.587}; name="vashon_municipal_airport"; text="2S1 - Vashon Municipal Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item3 { position[]={39863.656,24,471.70166}; name="aubrun_municipal_airport"; text="S50 - Auburn Municipal Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item4 { position[]={49161.223,146.78442,1501.9519}; name="crest_airpark"; text="S36 - Crest Airpark"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item5 { position[]={56630.535,19.072081,60924.031}; name="firstair_field"; text="W16 - Firstair Field"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item6 { position[]={57732.367,19,48070.578}; name="majerle_strip"; text="WA17 - Majerle Strip"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item7 { position[]={1477.217,162.33931,36519.035}; name="apex_airpark"; text="WA05 - Apex Airpark"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item8 { position[]={16642.121,20,52533.824}; name="thompson_airport"; text="WA61 - Thompson Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item9 { position[]={53033.871,135.65376,54599.648}; name="kyles_airport"; text=" WA04 - Kyles Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item10 { position[]={2837.6191,117.97524,41835.336}; name="usn_base_bangor_heliport"; text="9WA9 - Naval Submarine Base Bangor Heliport"; type="n_air"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item11 { position[]={33383.184,136.50497,13948.437}; name="seatac"; text="SEA- Seattle Tacoma International Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item12 { position[]={40499.145,12.563371,18805.646}; name="renton_municipal_airport"; text="RNT - Renton Municipal Airport"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item13 { position[]={33936.43,11,22751.803}; name="king_county_airport"; text="BFI - Boeing Field King County International Airport"; type="n_plane"; a=0.5; b=0.5; }; class Item14 { position[]={1300.9391,127.67548,31211.529}; name="camp_wesley_harris"; text="Camp Wesley Harris"; type="mil_dot"; colorName="ColorBlack"; a=0.5; b=0.5; }; class Item15 { position[]={38447.395,159.99976,59774.992}; name="martha_lake_airport"; text="Martha Lake Airport Park"; type="n_inf"; colorName="ColorBlue"; a=0.5; b=0.5; }; class Item16 { position[]={56248.973,19,44041.375}; name="unknown_01"; text="Unknown Airstrip"; type="n_plane"; colorName="ColorBlue"; a=0.5; b=0.5; }; }; }; class Intro { addOns[]= { "united_states_h" }; addOnsAuto[]= { "united_states_h" }; randomSeed=9307836; class Intel { startWeather=0.34999999; startWind=0.1; forecastWeather=0.34999999; forecastWind=0.1; year=2013; day=8; hour=11; minute=20; }; }; class OutroWin { addOns[]= { "united_states_h" }; addOnsAuto[]= { "united_states_h" }; randomSeed=15320198; class Intel { startWeather=0.34999999; startWind=0.1; forecastWeather=0.34999999; forecastWind=0.1; year=2013; day=8; hour=11; minute=20; }; }; class OutroLoose { addOns[]= { "united_states_h" }; addOnsAuto[]= { "united_states_h" }; randomSeed=16662464; class Intel { startWeather=0.34999999; startWind=0.1; forecastWeather=0.34999999; forecastWind=0.1; year=2013; day=8; hour=11; minute=20; }; }; Unfortunately the marking for the heliport of the Bangor Base is wrongly placed. Could this be fixed in a future patch, please? If this thread better belongs in the editing section or anywhere else then please move. Edited October 1, 2012 by T.S.C.Plage Share this post Link to post Share on other sites
neojd[ny] 10 Posted September 23, 2012 Interesting! Good work. Share this post Link to post Share on other sites
Sven2157 1 Posted September 30, 2012 T.S.C., Have you looked into the Functions( BIS_fnc_ )? BIS_fnc_heliportDBAdd: private ["_mode","_path","_params","_dbAdd","_result","_category","_cfgCategory"]; _mode = [_this,0,"",[""]] call bis_fnc_param; _path = [_this,1,[],[[]]] call bis_fnc_param; _params = [_this,2,[],[[]]] call bis_fnc_param; _result = true; #define ADD_CATEGORY \ _category = _path - [_path select (count _path - 1)]; \ _cfgCategory = [_category] call BIS_fnc_dbConfigPath; \ _dbAdd = [hsim_heliportDB,_category + ["config"],_cfgCategory] call BIS_fnc_dbValueSet; #define ADD_ITEM \ _dbAdd = [hsim_heliportDB,_path + ["config"],_params select 0] call BIS_fnc_dbValueSet; switch _mode do { //--- Missions case "Missions": { if !([hsim_heliportDB,_path] call BIS_fnc_dbClassCheck) then { ADD_ITEM _dbAdd = [hsim_heliportDB,_path + ["turn"],[] call bis_fnc_heliportTurn] call BIS_fnc_dbValueSet; }; }; //--- Helicopters case "Helicopters": { ADD_ITEM ["Helicopters_U",_path select 0,nil,[_path select (count _path - 1)]] call bis_fnc_heliportAddForced; }; //--- Helicopter Upgrades case "Helicopters_U": { ADD_CATEGORY ADD_ITEM //_dbAdd = [hsim_heliportDB,_path + ["active"],true] call BIS_fnc_dbValueSet; }; //--- Staff case "Staff": { ADD_CATEGORY ADD_ITEM _dbAdd = [hsim_heliportDB,_path + ["priceDuration"],_params select 1] call BIS_fnc_dbValueSet; if (getnumber (_cfgCategory >> "type") == 1) then { _dbAdd = [hsim_heliportDB,_path + ["helicopter"],""] call BIS_fnc_dbValueSet; }; }; //--- Upgrades case "Upgrades": { ADD_CATEGORY ADD_ITEM _dbAdd = [hsim_heliportDB,_path + ["position"],_params select 1] call BIS_fnc_dbValueSet; /*** Storing helicopter slots in DB - for future use //--- Load composition private ["_composition","_objectScript","_listComposition","_heliSlotCount"]; _composition = gettext ((_params select 0) >> "composition"); _objectScript = gettext (configfile >> "CfgObjectCompositions" >> _composition >> "objectScript"); if (_objectScript != "") then { _listComposition = call compile preprocessfilelinenumbers _objectScript; _heliSlotCount = 0; { private ["_class","_position","_direction","_dbAdd"]; _class = _x select 0; if (_class iskindof "helicopter") then { _position = _x select 1; _direction = _x select 2; _heliSlotClass = format ["heliSlot_%1",_heliSlotCount]; _dbAdd = [hsim_heliportDB,_path + ["HeliSlots",_heliSlotClass,"position"],_position] call BIS_fnc_dbValueSet; _dbAdd = [hsim_heliportDB,_path + ["HeliSlots",_heliSlotClass,"direction"],_direction] call BIS_fnc_dbValueSet; _heliSlotCount = _heliSlotCount + 1; }; } foreach _listComposition; }; /**/ }; default {["Mode '%1' not found.",_mode] call bis_fnc_error; _result = false} }; _result BIS_fnc_heliportGetHeliports: private ["_listHeliports","_cfgMissions","_item","_itemName","_isHeliport","_configName","_dbAdd"]; _listHeliports = []; if (isclass (campaignconfigfile >> "campaign")) then { //--- Campaign mode _cfgMissions = campaignconfigfile >> "campaign" >> "missions"; for "_i" from 0 to (count _cfgMissions -1) do { _item = _cfgMissions select _i; if (isclass _item) then { _itemName = configname _item; //--- CfgMissions entry exists _isHeliport = getnumber (_item >> "heliport"); if (_isHeliport == 1) then { _show = [_item,"show",true] call bis_fnc_heliportCondition; if (!(_itemName in _listHeliports) && call compile _show) then { _listHeliports = _listHeliports + [_itemName]; _dbAdd = [hsim_heliportDB,[_itemName]] call BIS_fnc_dbClassSet; }; }; }; }; } else { //--- Debug mode _cfgBase = configfile >> "cfgBase"; for "_i" from 0 to (count _cfgBase - 1) do { _item = _cfgBase select _i; if (isclass _item) then { _itemName = configname _item; if !(_itemName in _listHeliports) then { _listHeliports = _listHeliports + [_itemName]; _dbAdd = [hsim_heliportDB,[_itemName]] call BIS_fnc_dbClassSet; }; }; }; }; _listHeliports BIS_fnc_heliportUpgradePostions: private ["_listUpgradePositions","_cfgUpgrades","_categoryName","_category","_itemName","_item","_position"]; _listUpgradePositions = []; _cfgUpgrades = [hsim_heliportDB,[_this,"Upgrades"]] call BIS_fnc_dbClassReturn; for "_u" from 0 to (count _cfgUpgrades - 1) step 2 do { _categoryName = _cfgUpgrades select _u; if (_categoryName call BIS_fnc_dbIsClass) then { _category = [hsim_heliportDB,[worldname,"Upgrades",_categoryName]] call BIS_fnc_dbClassReturn; for "_i" from 0 to (count _category - 1) step 2 do { _itemName = _category select _i; if (_itemName call BIS_fnc_dbIsClass) then { _position = [hsim_heliportDB,[_this,"Upgrades",_categoryName,_itemName,"position"]] call BIS_fnc_dbValueReturn; _listUpgradePositions = _listUpgradePositions + [_position]; }; }; }; }; _listUpgradePositions I haven't worked too much with these, but am looking into it as I mod. Hope that helps! ;-) =170=Sven2157 Share this post Link to post Share on other sites
T.S.C.Plage 0 Posted October 1, 2012 Yes, I've taken a look into them. Didn't actually planed to include them this way...but will see. So far I've updated the mission.sqm with two new locations (see first post). Share this post Link to post Share on other sites