VoltricsImport is in ALPHA. Expect bugs and changes while we build it out.
VoltricsImport

Guide

Import guide

From a scenery folder to a Roblox place, a textured kit and a placer plugin. Ten minutes of reading, a few of clicking, one token.

MSFS 2020 / 2024 X-Plane 11 / 12 1 token per conversion

1 Start with a scenery package

VoltricsImport reads airport scenery in the formats the simulators themselves ship. It is not a converter for aircraft, liveries or terrain.

  • MSFS 2020 / 2024 — a package folder with manifest.json and compiled .BGL files. The airport record, pavements, paint, placed objects and the package's own ModelLib models and textures are all read from those files.
  • X-Plane — a folder with Earth nav data/apt.dat. Runways, pavements, lines and signs come from the text records.

Hand it over as an archive — .zip, .7z, .rar, .tar.gz, .tgz, .tar.bz2, .tar.xz, .tar — or just drag the folder in. Do not unzip and re-pick single files; the importer wants the whole tree.

Where sceneries live MSFS packages are usually in your Community folder. X-Plane sceneries sit in Custom Scenery. Either way, pick the folder that contains the airport, not the folder above it.

2 Drop it in

Open the importer, sign in with Discord (your first sign-in comes with 3 free tokens) and drop the archive on the page. The upload is checked as it unpacks: absolute paths, .. escapes and drive letters are refused, and anything past the size limits below stops before conversion.

When the upload finishes the card changes: you get the detected airport, the options, and a Convert to Roblox button. Nothing has been converted, and no token spent, yet.

3 Confirm the airport

The name and ICAO code are pre-filled from the package. Rename them if you want a tidier place — they end up in the file names and in the Studio plugin.

ICAO codeLetters and digits only. Used for ENGM_Oslo_Gardermoen.rbxl, avi_ENGM_Kit.glb and the plugin title.
Airport nameFree text, written into the place and the plugin's window.
ScaleStuds per metre. Leave it at 3.5714 (1 stud = 28 cm) unless you deliberately want a different scale; everything, including the plugin's placement, follows this number.
Airport pickerOnly appears when one apt.dat contains several airports. Filter by code or name and pick the one you want.
Approximate layoutOffered only when the airport record cannot be read at all. It builds a runway estimated from raw coordinates and is marked GUESSED in the report — no pavements, lines or signs.

4 Choose what to include

The defaults suit most airports. Turn things off for a lighter kit; every switch shows up in the fidelity report.

OptionDefaultWhat it does
3D models from the packageOnTerminal and other buildings shipped in the scenery, with their textures. Off = ground layout only.
Runway lightsOnEdge and threshold lights, only on runways the scenery marks as lit.
Taxi centre & hold-short linesOnMSFS paints these at run time from the taxi network, so they are not in the paint records. Off = only the scenery's own paint.
Windsocks & polesOnMasts at the positions and heights stored in the scenery.
Models from librariesOnObjects whose model is not in the package are looked up in the model libraries on the server.
Placeholders for missing modelsOffA translucent marker at each object that cannot be found anywhere, plus a list to swap real models in later.
SurroundingsOnRoads, buildings, fields, woods and water from OpenStreetMap, as plain parts and meshes. No Roblox Terrain.
TreesOnMapped trees and tree rows, and woods filled with low-poly trees, kept clear of runways and aprons.
Surroundings radius3 kmHow far out surroundings and trees go, from 1 to 8 km. Always at least 1 km past the airfield's edge.
Fix textures VoltScan flagsOnGPU checks look for QR codes, links, e-mails, phone numbers, @handles and faces. Flagged textures are blurred, re-checked, and replaced by a flat colour if still readable (faces and blocklisted images always). Links, e-mails, QR codes, faces and blocklisted images are fixed even with this off, and so is any texture whose check failed. Off = phone numbers and @handles are only reported.
Remove photos with textOnPosters, billboards and shop-window photos with writing on them become a flat colour. Flight boards and signs are kept.
Textured ground decalsOffPaint, stains and stand markings drawn with the package's own decal textures. Each is another Roblox upload; stand numbers and logos have been flagged, so leave it off unless you need it.

Pavement surfaces

If the package does not ship the material library its pavements use, MSFS's built-in materials appear as a table with a small map of where each one lands. Set the surface per material there (asphalt, concrete, grass, dirt, gravel) instead of accepting one guessed colour for all of them.

Model libraries

Sceneries place a lot of objects from the simulator's own libraries: vehicles, lamps, props. The server keeps an index of library packages; objects it can't find are listed in the report, and become placeholders if you turned those on.

5 Watch the five stages

Conversion runs on our servers in the background; you can close the tab and come back to it from Recent conversions. The token is taken when the conversion starts and given back if it fails. The progress card names the stage it is on:

  1. Extract package — unpack and VoltScan-check the archive.
  2. Read airport data — BGL or apt.dat: airport record, runways, taxi network, painted lines, signs, object records.
  3. Build runways & ground — projection to studs, slabs, paint, markings, lights.
  4. Textures & 3D models — decode KTX2/DDS, run VoltScan, place every model, fetch the surroundings and trees.
  5. Write Roblox files — the .rbxl place, the .glb kit, the placer plugin, the preview and the report.

A large airport with many textures takes minutes, not seconds. The percentage is a progress estimate, not a promise — the stage list is the honest part.

If it fails The error line under the stage says what happened and Change options and retry keeps your settings. A conversion that ran out of memory on a very large scenery usually gets through with 3D models or library models turned off.

6 Open it in Studio

Two ways in: the place file for a quick look, or the kit plus the placer for the real thing. Download everything as one zip, or grab the files individually from the results card.

Quick look, no textures

Open <ICAO>_<Name>.rbxl straight from disk. A grass base, runways, paint, pavements, lines, signs, lights and block-outs of the buildings are already in place, and players spawn at the runway start. Nothing is uploaded to Roblox.

With textures

  1. Copy the placer into your Studio plugins folder, then restart Studio.
    avi_<ICAO>_Placer.rbxm
    %LOCALAPPDATA%\Roblox\Plugins
  2. File → Import 3D the kit. Keep the whole model and its textures.
    avi_<ICAO>_Kit.glb
  3. Plugins tab → Place <ICAO> → Check kit. It confirms the kit belongs to this conversion and lists any missing piece or textured piece that arrived without its texture.
  4. Place airport. The placer creates the grass base, the airport, its surroundings and trees. Ctrl+Z undoes the whole placement in one step.
  5. Airport lighting (optional) sets Future lighting, sky and atmosphere for the airport.
The check is not ceremony Import 3D can silently skip pieces. The check is what turns that into a list you can act on, before you replace the airport already in your place.

7 Limits and retention

Upload5 GB per archive.
Unpacked12 GB and 50,000 files per archive by default; a whole archive past 1 GB that expands more than 5000:1 is refused.
DownloadsKept on the server for 24 hours. The zip you download is the permanent copy.
QueueConversions run one at a time; yours shows its place in the queue while it waits.
TokensOne per conversion, taken when it starts and returned automatically if it fails.
Roblox limitsParts are split at 2,048 studs per axis, textures are downscaled to 1,024 px, and meshes over 20,000 triangles are split in the kit.

8 When something looks wrong

“No airport found in this package”The archive held no airport record the importer recognises. Check you picked the airport folder, not the whole Community directory. For a multi-airport apt.dat, choose the airport in the picker. If the record is genuinely unreadable, the approximate-layout option is the only path, and it is labelled as a guess.
“VoltScan blocked this archive”Unsafe paths, too many files, or past the unpacked limit. The message names the limit that tripped; the archive is not converted.
Most models are missingThe scenery places them from the simulator's libraries. Add your MSFS install or a library package under Model libraries and re-index, then convert again.
Texture needs reviewVoltScan lists the source texture and rule. With fixes enabled, flagged images are blurred, checked again and replaced by a flat colour if needed. If a local OCR scan fails or a check is unavailable, the report marks coverage incomplete instead of calling it clean.
A conversion disappearedDownloads are kept for 24 hours. Convert the package again, or keep the downloaded zip, which is the permanent copy.
No previews on the result pageThe previews are rendered from the kit at the end of a conversion. Older conversions, or ones where the render failed, show the top-down map instead; the downloads are complete either way.
A texture was rejected by RobloxFind it in the VoltScan section of the report. Make sure Remove photos with text is on and Textured ground decals is off, then convert again.