Skip to content

gruppe-adler/grad_meh

Repository files navigation

Gruppe Adler Map Exporter

Gruppe Adler Map Exporter (grad_meh) is an Arma 3 modification built on intercept, which allows exporting Arma 3 maps.
If you wonder what the h stands for you should check out this pull request.

The aim of this project is not to generate finished map tiles for a WMTS, but to export all data that might be needed to generate such tiles or basically anything else. So the goal is to export everything interesting about an Arma 3 map. What you do with that data is up to you. The use cases are only limited by your imagination (ノ◕ヮ◕)ノ*:・゚✧

The output section outlines what exactly is exported.

Check out our FAQ at the bottom of this README if you ask yourself "How?" or "Why?".

Installation

Download the latest version of the mod from our releases page. The only dependency, which has to be loaded as well is intercept.

Usage

Although we would say that using grad_meh is intuitive and mostly self-explanatory, we made this short video on how to use it.

Troubleshooting

  • Make sure that @grad_meh, @intercept and @CBA_A3 are loaded.
  • Make sure that BattlEye is disabled.
  • If you're still having problems check the rpt and grad_meh log files located in C:\Users\<USERNAME>\AppData\Local\Arma 3 for any errors.
  • If all else fails, open a new issue and make sure you include the rpt and grad_meh log files.

Limitations

  • To reduce complexity we only allow one export process at a time.
  • To reduce complexity it is not possible to stop a running export reliably, except by killing the game.
  • MEH cannot export maps included in .ebo files, because those are encrypted and therefore we cannot get to the map files.
  • MEH will have some difficulties with older maps (e.g. Fallujah, Clafghan), where it fails to export roads and tile the sat image correctly.

Output

We export the following from Arma 3 maps:

  • Elevation model
  • Preview picture
  • Satellite image
  • Vector data for all map objects / locations
  • Any interesting metadata like display name, longitude, latitude, etc.

All exported files can be found in the grad_meh subdirectory of your Arma 3 installation directory. Each map has its own subdirectory, which structure is further explained here.

Scripting API

Gruppe Adler Map Exporter adds a script command, which is used by the UI. If you want to, you could leverage that scripting command for your own purposes.

gradMehExportMap

Syntax
Description Start export of given map.
Syntax gradMehExportMap [mapId, sat, geojson, previewImg, meta, dem]
Parameters [mapId, sat, geojson, previewImg, meta, dem]: Array
mapId: String - CfgWorlds class name of map
sat: Boolean - Export sat images
geojson: Boolean - Export GeoJSONs
previewImg: Boolean - Export preview image
meta: Boolean - Export meta.json
dem: Boolean - Export Digital Elevation Model
Return Value Number - Status code
0 - Export process started nominally
1 - Error: Invalid arguments given
2 - Error: Another export is currently running
3 - Error: Map wasn't found in config file
4 - Error: Map invalid because worldSize field in config is missing
5 - Error: PBO of map's WRP not found (Most likely because it is an EBO)
6 - Error: PBO map still populating (MEH has to do this once upon game start, before it can export anything)
Examples gradMehExportMap ["Stratis", true, true, true, true, true];

FAQ

How long does an export take?

How long an export takes varies a lot depending on your machine and factors like map size, map object count and which data you want to export.
But for reference: It took us less than thirty seconds to export everything for Stratis on a normal gaming system (i7-6700K@4.00Ghz, NVIDIA GeForce GTX 1060 6GB, 16 GB RAM).

Is there some exported data already available for download?

Yes, check out this repository. (We would appreciate if you contribute exported maps to this repository)

Can I just tab out while the export process is running?

Yes you can tab out while the export is running, but we recommend starting with the -noPause Arma 3 startup parameter. Otherwise, MEH will not initiate the export of pending maps.
Oh... and yeah and your CPU utilization will probably peak around 100% while MEH is running so have fun being productive.

How does grad_meh work?

grad_meh utilizes our Arma file formats C++ library to parse all map relevant files. So most of the magic is outsourced.