UNCLASSIFIED - YOU ARE ON A PUBLIC WEB SERVER
Battle Staff Tools
Clears all locally stored data, such as License, Favorites, Orbats, and Map data.
Clear all data
Cancel
Favorites list
Click the save icon with a plus sign to add the current symbol to your favorites. Click any icon in the list to use it as a template for a new symbol.
Layer Name

Load License

To use the Battle Staff Tools off-line or on other sites than spatialillusions.com you need a license file.
If you want to use it on a server in a disconnected network, you can find the latest pricing and contact information in the documentation on the homepage above.
Load License File


© www.spatialillusions.com - 2025
Reality / Exercise / Simulation
Affiliation
Affiliation
Search

Do you enjoy using the Battle Staff Tools?

Please consider supporting us by donating via the Buy Me a Coffee button or purchasing the stand-alone version.

The stand-alone version can be used on any air-gapped system with a modern web browser. It removes all watermarks and donation requests. For an evaluation license, email info@battlestafftools.com.

Symbol set
Symbol set
Main Icon
Main Icon
First Icon Modifier
Second Icon Modifier
Echelon / Mobility
Echelon / Mobility
Headquarters / Taskforce / Dummy
Headquarters / Taskforce / Dummy
Frame shape
Special Headquarters
A text modifier for units; indicator is contained inside the frame; contains the name of the special C2 Headquarters.
Unit Name, Unique Designation
A text amplifier for units, equipment and installations that uniquely identifies a particular symbol or track number. Identifies acquisitions number when used with SIGINT symbology.
If set, this be displayed in your favorites list and orbat.
Additional Information
A text amplifier for units, equipment and installations; content is implementation specific.
If set, this be displayed in your favorites list and orbat.
Show text fields around your symbol
Toggle this to display text fields around your symbol and reveal all additional text input options.
Altitude / Depth
A text amplifier for units, equipment and installations, that displays either altitude, flight level, depth for submerged objects; or height of equipment or structures on the ground.
Combat Effectiveness
A text amplifier for units and installations that indicates unit effectiveness or installation capability.
Common Identifier
Example: “Hawk” for Hawk SAM system.
Date Time Group
An alphanumeric designator for displaying a date-time group (DDHHMMSSZMONYYYY) or “O/O” for on order. The date-time group is composed of a group of six numeric digits with a time zone suffix and the standardized three-letter abbreviation for the month followed by four digits representing the year. The first pair of digits represents the day; the second pair, the hour; the third pair, the minutes. For automated systems, two digits may be added before the time zone suffix and after the minutes to designate seconds.
Direction (in degrees)
A graphic amplifier for units and equipment that identifies the direction of movement or intended movement of an object.
Engagement Bar Type
Engagement Bar Text
The engagement amplifier shall be arranged as follows: A:BBB-CC, where A (1 character) denotes a local versus remote engagement, BBB (up to 3 characters) denotes engagement state and CC (up to 2 characters) denotes weapon deployment/asset control.
A A remote engagement is defined as an engagement assigned outside of ownship control. A local engagement is defined as an engagement assigned to ownship. Local engagements shall have no letter assignment in the A:BBB-CC engagement bar; whereas, remote engagements shall be denoted as “R” in the engagement bar. In the case of multiple engagements, there may be a mixture of both local and remote engagements. In such cases, “B” shall be denoted to indicate both local and remote engagements.
BBB Typical engagement stages to depict include assign/cover, engage and missile(s) in flight. Other engagement events such as hold fire, cease fire, cease engage, break engagement, terminate engagement, management by exception, management by exception less than threshold and others may be depicted in the engagement amplifier. In the case of multiple engagements where no one specific engagement is highlighted, “MLT” may be used to indicate multiple engagements.
ENGAGEMENT STAGE CODE
ASSIGN/COVER ASN
ENGAGE ENG
MISSILE IN FLIGHT MIF
CEASE FIRE CF
CEASE ENGAGE CE
HOLD FIRE HF
TERMINATE ENGAGEMENT TE
BREAK ENGAGEMENT BE
MANAGEMENT BY EXCEPTION (MBE) MBE
MBE LESS THAN THRESHOLD M<T
MULTIPLE ENGAGEMENTS MLT
CC Either deployed weapons such as missiles, guns and torpedoes or controlled assets such as unmanned systems, interceptor aircraft and attack aircraft may have representation in the engagement bar. In the case where multiple engagements are represented within a single engagement amplifier bar, the number of engagements starting from “02” shall be used in the CC field.
WEAPON/ASSET CODE
MISSILE M
BALLISTIC MISSILE BM
CRUISE MISSILE CM
GUN GN
TORPEDO T
ATTACK AIRCRAFT A
COMBAT AIR PATROL (DEFENSIVE COUNTER AIR) C
DEFENSIVE COUNTER AIR (COMBAT AIR PATROL) D
UNDERSEA WARFARE (USW)/ANTISUBMARINE WARFARE (ASW)ENGAGEMENT UW
MINE WARFARE (MIW) ENGAGEMENT MW
SURFACE WARFARE (SUW) ENGAGEMENT SW
ELECTRONIC ATTACK EA
ELECTRONIC DEFENSE ED
UNMANNED VEHICLE UV
CLOSE-IN WEAPON SYSTEM CW
LAMPS L3
VERTICAL LAUNCH ASROC VA
NUMBER OF ENGAGEMENTS ## (02-99)
Equipment Teardown Time
Equipment teardown time in minutes.
Evaluation Rating
A text amplifier for units, equipment and installations that consists of a one-letter reliability rating and a one-number credibility rating.
Reliability Ratings Credibility Ratings
A - completely reliable
B - usually reliable
C - fairly reliable
D - not usually reliable
E - unreliable
F - reliability cannot be judged
1 - confirmed by other sources
2 - probably true
3 - possibly true
4 - doubtfully true
5 - improbable
6 - truth cannot be judged
Guarded Unit
During ballistic missile defense, some tracks are designated as guarded by a particular unit. Only displayed on Sea surface.
Higher formation (Commanding unit)
A text amplifier for units that indicates number or title of higher echelon command (corps are designated by Roman numerals).
IFF / SIF / AIS
A text amplifier displaying IFF/SIF/AIS Identification modes and codes.
Location
A text amplifier for units, equipment and installations that displays a symbol’s location in degrees, minutes and decimal minutes (or in MGRS or other applicable display format).
You can use the coodinate conversion tool to convert between different notations.
Platform Type
Electronic intelligence notation (ELNOT) or communications intelligence notation (CENOT).
Quantity
A text amplifier in an equipment symbol 3 that identifies the number of items present.
Signature Equipment
A text amplifier for hostile equipment; “!” indicates detectable electronic signatures.
Special Designator
Special track designators such as Non-Real Time (NRT) and Tactically Significant (SIG) tracks are denoted here. Only displayed on Sea surface.
Speed
A text amplifier for units and equipment that displays velocity as set forth in MIL- STD-6040.
Staff Comments
A text amplifier for units, equipment and installations; content is implementation specific.
Type
A text amplifier for equipment that indicates types of equipment.
Country
Identifies the country of the organization being shown and shows a flag symbol.
Range
A graphical amplifier for units, equipment, and installations.
If set, this will display one or more range circles (radius in meters) when the symbol is placed on the map. You can specify multiple ranges separated by commas, and use parentheses around a range to make its circle semi-transparent.
Status
Status
Reinforced or Reduced
Stack
General Stars
Color
Some options in the Unit Generator are hidden by default. Toggle this switch to show all available options.
Symbol identification code (SIDC)


© www.spatialillusions.com - 2025

FM 1-02.2, Military Symbols

This is a rendering of symbols in FM 1-02.2 where MIL-STD-2525E symbols are avialable.
Symbols are clickable to set the symbol in the Unit Symbol Generator, however note that not all modifiers can be applied on all symbols since they are in different symbol sets.

FM 1-02.2 "compiles Department of Defense Military Standard (MIL-STD) 2525E approved military symbols applicable to land operations for use in U.S. Army doctrinal publications, situation maps, overlays, and annotated aerial photographs for all types of military operation. MIL-STD 2525E is the single standard for developing and depicting computer-generated military symbols for use in command and control systems. FM 1-02.2 is the proponent for hand drawn alternate symbols, course of action sketch symbols applicable to U.S. Army doctrine, and approved for use military symbols that are not currently included in MIL-STD 2525E due to difference in revision timeline."
The proponent of FM 1-02.2 is the United States Army Combined Arms Center. The preparing agency is the Combined Arms Doctrine Directorate, United States Army Combined Arms Center.

Echelon and non-echelon amplifiers

Main function symbols for units

Sector 1 modifiers for units

Sector 2 modifiers for units

Main function symbols for activities and installations

Sector 1 modifiers for activities and installations

Sector 2 modifiers for activities and installations

Main function symbols for equipment

Sector 1 modifiers for equipment

Sector 2 modifiers for equipment

Unique Designation
Additional Information
Move
Command levels
Layout

New Orbat

Drag units from your favorites list or the current main icon to create symbols in your ORBAT.

or load existing orbat

Drop file here
or
Select local file
Orbats previously saved as JSON or TXT documents can be opened. Load sample Orbat

Coordinate conversion

Input coordinates
Using fuzzy logic, we attempt to parse any format of MGRS or latitude/longitude you enter and convert it to standard formats. You can input blocks of text containing multiple coordinates, and the tool will try to extract all of them. Please verify that the output matches your intended input.

Example inputs

  • 42S UF 1234
    Four digit MGRS, some spaces
    MGRS
  • 42S UF 12 34
    Four digit MGRS, more spaces
    Parsed as: MGRS
  • 42SUF1234
    Four digit MGRS, no spaces
    Parsed as: MGRS
  • 42S UF 123456
    Six digit MGRS, some spaces
    Parsed as: MGRS
  • 42S UF 123 456
    Parsed as: MGRS
  • 42SUF123456
    Parsed as: MGRS
  • 42S UF 12345678
    Eight digit MGRS, some spaces
    Parsed as: MGRS
  • 42S UF 1234 5678
    Parsed as: MGRS
  • 42SUF12345678
    Parsed as: MGRS
  • 33V VE 7220287839
    Ten digit MGRS, some spaces
    Parsed as: MGRS
  • 33V VE 72202 87839
    Parsed as: MGRS
  • 33VVE7220287839
    Parsed as: MGRS
  • 412501.5N 1205857.5W
    DDDMMSS.ssssss Direction
  • N412501,5 E1205857,5
    Direction DDDMMSS.ssssss
  • 4125.5N 12058.5E
    DDDMM.mmmmmm Direction
  • S4125,5 E12058,5
    Direction DDDMM.mmmmmm
  • 41 N -120 E
    Negative signed
    DDD.dddddd Direction
  • 41°N - 120°E
    Dash as separator
    DDD.dddddd Direction
  • N41.092 W120.8362
    Decimal point
    Direction DDD.dddddd
  • N41,092 W120,8362
    Decimal comma
    Direction DDD.dddddd
  • Neptune Spear identified 34°10′9.6″N 73°14′32.8″E as the target.
    As part of a string
    DDD MM SS.ssssss Direction
  • 41°25'N / 120°58'W
    Slash separator
    DDD MM.mmmmmm Direction
  • N-41 25.117 W120 58.292
    Northing Westing
    Direction DDD MM.mmmmmm
  • S41 25,117 E120 58,292
    Southing Easting
    Direction DDD MM.mmmmmm
  • 41 25 01N 120 58 57E
    Northing Easting
    DDD MM SS.ssssss Direction
  • 41°25'01"S 120°58'57"W
    Southing Westing
    DDD MM SS.ssssss Direction
  • S-17 33 08,352 W-69 01 29,74
    Negative signed and Southing or Westing, likely a typo.
    Direction DDD MM SS.ssssss
  • S-17 33' 08.352'' W-69 01’ 29.74
    Poor formatting.
    Direction DDD MM SS.ssssss

Worldwide Equipment Guide stand-alone

Purchasing a Battle Staff Tools license includes access to download the full Worldwide Equipment Guide. Details about licensing options are available under the Information tab.

Load database

Drop file here
or
Select local file
The file should be a ZIPDB database file.

Worldwide Equipment Guide

Information in the Worldwide Equipment Guide is gathered from https://odin.tradoc.army.mil/WEG, when possible always use the latest informaiton from the original source.

Information from ODIN TRADOC:
The WEG was developed to support the TC 7-100 series and all OPFOR portrayal in training simulations (constructive, virtual, live, and gaming). The equipment portrayed in this WEG represents military systems, variants, and upgrades that U.S. forces may encounter now and in the foreseeable future. The authors continually analyze real-world developments, capabilities, and trends to guarantee that the OPFOR remains relevant.

Note: The material included in the WEG is for training and educational purposes. The system parametric data captured here is drawn from a variety of sources. Every data point is corroborated across multiple sources. For additional information on sources used to generate the data, visit the following link:
https://odin.tradoc.army.mil/How-To/WEG/Worldwide_Equipment_Guide
Database Loading, please wait...
Color
Name
Coordinate
Coordinate
Select and pan to unit
Layer
SIDC Symbol IDentification Code for the icon, can be found at the bottom of the Unit Symbol Generator.
Size Size of the unit symbol.
Additional Information
Date Time Group
Range If set, this will be displayed as a range circle (range radius in meters) if the symbol is placed on the map. It is possible to define several comma seperated ranges, and you can place parentheses around your ranges to make them semitransparent.
Fill opacity Opacity of the fill color.
Length
Width
Height
Center
Origin
Radius
Radius
Direction
Sector width
Coordinates
Created / Updated
Description
Point
Line
Arrow
Circle
Ellipse
Sector
Rectangle
Polygon

Attack By Fire
Support By Fire
Isolate
Occupy
Retain
Secure
Block
Breach
Bypass
Canalize
Clear
Disrupt
Delay
Scenario (.GeoJSON)
Scenario, enabled layers
ATAK / Google Earth (.KMZ)
HiRes Image (.PNG)

Format for paper print
Delete all map data

Load map data

Load local data

Drop file here
or
Select local file
The tiling scheme must have been generated for ArcGIS Online/Bing Maps/Google
The file should be a Protomaps PMTiles, Esri TPKX or Esri VTPK file.
Because of access restrictions in the web browser, you will have to load your offline map each time you reload the Unit Symbol Generator.
You can get PMTiles covering the whole world for free from Protomaps.

or connect to a map server

Add raster map URL
The input should be an url-template to a raster tile map server with tiles that are 256x256 px. At the moment only raster maps are supported.

Open scenario file

Merge with current scenario
Replace current scenario
You can choose if you want to merge the file you open with the data you currently have on the map. Each feature will then have the id and update time compared to the existing data, and the most recent data will be used; or you can start fresh and discard all current data.

Scenario collaboration
If your web browser allows it, you can save back changes to disk to the opened file using the save icon next to the scenario name. If multiple users open the same file from a network share, it will automatically pull changes into all open clients when the file on disk is updated with new information.

Import data

Drop file here
or
Select local file
Geodata files that can be imported are ATAK Datapackage (.zip) (only cot messages are parsed), and KMZ/KML (.kmz/.kml) files with basic visualization.
It will also automatically detect and import coordinate points from the following file types, Word (.docx), PowerPoint (.pptx), PDF (.pdf), Markdown (.md), and Plain Text (.txt).
Protomaps © OpenStreetMap

Pricing

Do you want to create Orbats, Maps, or handle other CLASSIFIED INFORMATION?
It is possible to run Battle Staff Tools compleatly offline on any stand-alone computer with a modern web browser, without the need to install anything. Battle Staff Tools is a single HTML file, and all map data comes in a single PMTILES file, so there is no need for any installations or Map Servers.

spatialillusions.com

0€

Free of charge, no additional license needed, but please consider making a donation to keep this page available.

Own server

20€

per network user / year
This if you want to provide the same functionality as on spatialillusions.com, but on a server that isn't connected to the internet. Sold in batches of 100 users. Please send an email for invoicing options.

Stand alone

40€

per user / year
You get a completely stand alone HTML page that can run offline in any modern browser.

Buy on Buy me a Coffee or contact for PayPal.

Download latest release
Licenses for Ukrainian defence are free

Enterprise licenses, that includes both stand-alone and server use, no need to provide hostname for the server, are avialable on request. Pricing for these licenses are also per year, but the built in license won't have an end date, so you don't have the risk of the application stopping to work in the middle of a crisis. Enterprise licenses are sold in batches of 1000 users, up to a maximum of 10 000 users, over that number there will be no extra charge.
An enterprise license also gives you access to the source code for review.

Online
Stand-alone
Server
Enterprise
Free to use
Handle classified data
Support for MIL‑STD‑2525C
Offline Worldwide Equipment Guide
Use on stand-alone clients
Require each user to have a named licese
Use on own server
Continues working when license expire*
Code review
* The enterprise version will continue to work even if the license expires, but you still have to pay a yearly license fee.

Please contact info@battlestafftools.com if you want an evaluation license or have other questions.

Current License File


Battle Staff Tools Changelog

Battle Staff Tools v.2.7.0

  • Added support for letter based SIDC from MIL-STD-2525C.
  • Added possibility to turn off smart layout of ORBATs.
  • Added dark mode support.
  • Any unit can now be set to be, or not to be, a HQ Staff Element in an ORBAT.

Battle Staff Tools v.2.6.5

  • Fixed issue that prevented map scenarios to be opened in older versions of chrome.

Battle Staff Tools v.2.6.4

  • Minor update in rendering of WorldWide Equipment Guide profilation navigation.

Battle Staff Tools v.2.6.3

  • Fixed a bug that broke coordinate parsing in the map UI.

Battle Staff Tools v.2.6.2

  • Added CLASSIFICATION banner when used online.
  • Improved loading on licensed versions.
  • Fixed adding range rings when multiple layers.
  • Convert coordinate can now convert multiple coordinates at once.
  • Fixed a bug where coordinates formated as DD MM Dir wasn't converted.

Battle Staff Tools v.2.6.1

  • Removed common modifiers for Air Missile and Space Missile.
  • Updated WorldWide Equipment Guide clear filter button to be enabled if either a filter or a search term is entered.
  • Updated WorldWide Equipment Guide search to always combine filters and text search.

Battle Staff Tools v.2.6.0

  • Added support for offline access to Worldwide Equipment Guide.

Battle Staff Tools v.2.5.1

  • Updated milsymbol and milstandard-e to newer versions.

Battle Staff Tools v.2.5.0

  • Added support for importing text coordinates from PDFs using a version of pyPdf ported to JavaScript. It is not perfect, but should be able to extract text from most PDF documents.
  • Added dialog when opening a scenario to select if the scenario should be merged with the current data in the map or not.
  • Added clarification that stand-alone licenses are for single user use.
  • Added possibility to convert unit symbols on map to plain points.
  • Added possibility to update all points with the current unit symbol.

Battle Staff Tools v.2.4.2

  • Improved parsing of KMZ and COT datapackages.

Battle Staff Tools v.2.4.1

  • Added functionality to import KMZ files with basic visualization.
  • Fixed a bug where layer not was set correct on graphics.

Battle Staff Tools v.2.4.0

  • Added functionality to import coordinates from Word (.docx), PowerPoint (.pptx), and text files. The cordinates can be written anywhere in the document using any of the patterns supported by the coordinate converter.
  • Added functionality to import TAK datapackages. Only some cot types will be imported, but should provide you with markers, routes, and shapes.
  • Added support for placing features on different layers.
  • Added functionality to import KML files with basic visualization.
  • Change storage for graphics from local storage to indexedDB.
  • Updated dialogs for opening and creating new orbats.
  • Now shows a loading icon while trying to connect to server based pmtiles/vtpk/tpkx.
  • Added slider for setting symbol size on map.
  • Added slider for setting polygon opacity.
  • Added button to reset current icon.
  • Minor UI updates.

Battle Staff Tools v.2.3.1

  • Added support dragging map files to the change map dialog.
  • Added setting for plain text mode that downloads Favorites/Orbats/Scenarios as TXT files. This to enable download functionality in system with strict GPO settings in the web browser.

Battle Staff Tools v.2.3.0

  • Added support for reading Esri VTPK and Esri TPKX both locally and from server.
  • Added support configuring server maps in a separate json file on the server, for easy configuration.

Battle Staff Tools v.2.2.1

  • Fixed an issue when features had no coordinates.

Battle Staff Tools v.2.2.0

  • Added possibility to connect to raster tile servers.
  • Fonts are now stored locally in an indexedb for faster loading.
  • All line featuers can be set as dashed.
  • Made it possible to remove outline on polygon featuers.

Battle Staff Tools v.2.1.1

  • Fixed an issue that prevented objects to be placed on map if localStorage were disabled.
  • Added possibility to set lines as dashed.

Battle Staff Tools v.2.1

  • Fixed an issue with opening scenarios Edge with strict security GPOs.
  • Upgraded milsymbol to fix a rendering issue in Firefox.
  • Migrated from proj4js-mgrs to geographiclib-mgrs to add support for UPS coordinates.

Battle Staff Tools v.2.0

  • Added support for displaying the map as a 3d globe.
  • Upgraded protomaps to version 4. (You now need a v4 pmtiles file)
  • Added functionality to display coordinate lists and other information for selected graphics.
  • Added possiblity to disable labels on the map
  • Lines and arrows will now be drawn as great circles.
  • Upgraded maplibre-gl-js to 5.1.

Battle Staff Tools v.1.9

  • Added possibility to set how many command lavels an Orbat should have.
  • Improved support for cyrillic text.
  • Added functionality to wrap long unit names in Orbats.
  • Added functionality to display general stars on units.
  • Added back symbol for Self-propelled Artillery that is removed from MIL-STD-2525E, because it is a commonly used symbol.

Battle Staff Tools v.1.8

  • Added some tactical graphics to the draw tools in the map view.
  • Moved tools from the toolbar in the ORBAT view and map view to a drop down menu.
  • Made it easier to drag arrows

Battle Staff Tools v.1.7

  • Updated symbol standard to MIL-STD-2525E / STANAG APP6-E.
  • Removed ability to open owl-map KML files, and KML files in general since the implementation was very limited.
  • Scenarios saved as GeoJSON will now contain information about when features were updated or deleted, this makes it possible to merge different versions of a scenario and the most recent information will be used.
  • Added possiblity for multiple users to work with a shared scenario on a networkshare. When you save your edits they will be pulled into other connected clients.
  • Added undo (ctrl-z command-z) in the map for accidential feature delete/move

Battle Staff Tools v.1.6

  • Fixed an issue where a Chrome update broke the drop down menus
  • Map exported as PNG will be upsampled if your dpi scale factor is less than 2
  • All watermarks are removed if you run the stand-alone or hosted version of the Battle Staff Tools
  • SIDC hash was removed from the URL, you can still link to a specific symbol if you set the hash manually

Battle Staff Tools v.1.5

  • Performance improvement for working with scenarios with several hundreds of units
  • Possible to set a range radius on symbols that will be displayed in the map
  • Map will automatically be connected to on a server
  • Added all control measure points
  • Possible to draw Circle Sectors
  • Possible to draw Search Area Graphics
  • Support for opeing KMZ files from Ukraine Control Map
  • Various bug fixes and improvements

Battle Staff Tools v.1.4

  • Added possibility to add flags to represent countries on units
  • Added scalebar to the map view
  • Added possibility to draw rectangles
  • Added possibility to change map and map style without reloading
  • Added possiblity to move the centerpoint of circles to a specified coordinate
  • Removed the use of localStorage if the browser prevents them in any way
  • Various bug fixes and improvements

Battle Staff Tools v.1.3

  • Moved the draw tools to a new menu
  • Added possiblity to draw circles on the map
  • Added length information when drawing lines
  • Fixed a bug where draw tools did not show on first start
  • Fixed a bug where arrows got the wrong width in KMZ export

Battle Staff Tools v.1.2

  • Added possiblity to draw arrows on the map
  • Added possibility to change vector map style
  • Minor bugfixes and improvements

Battle Staff Tools v.1.1

  • Added the possiblity to draw points/lines/polygons on the map
  • Updated all dependencies
  • Minor bugfixes and improvements

Battle Staff Tools v.1.0

  • Initial release, all updates before v1.1 are classified as v1.0

About

Contact

Måns Beckman
Email: info@battlestafftools.com

© www.spatialillusions.com - 2025

External code - milsymbol , and milstandard-e

The MIT License (MIT)

Copyright (c) 2017 Måns Beckman - www.spatialillusions.com

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

External code - DragDropTouch

The MIT License (MIT)

Copyright (c) 2016 Bernardo Castilho

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

External code - fflate

MIT License

Copyright (c) 2020 Arjun Barrett

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

External code - geographiclib-mgrs

MIT License

Copyright (c) 2025 Måns Beckman

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

External code - PMTiles

Copyright 2021 Protomaps LLC

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

External code - maplibre-tilepackage-protocol

MIT License

Copyright (c) 2025 Måns Beckman
Copyright (c) 2021 Protomaps LLC

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

External code - MapLibre

Copyright (c) 2020, MapLibre contributors

All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of MapLibre GL JS nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

-------------------------------------------------------------------------------

Contains code from mapbox-gl-js v1.13 and earlier

Version v1.13 of mapbox-gl-js and earlier are licensed under a BSD-3-Clause license

Copyright (c) 2020, Mapbox
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of Mapbox GL JS nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

-------------------------------------------------------------------------------

Contains code from glfx.js

Copyright (C) 2011 by Evan Wallace

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

--------------------------------------------------------------------------------

Contains a portion of d3-color https://github.com/d3/d3-color

Copyright 2010-2016 Mike Bostock
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* Neither the name of the author nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

External code - mapbox-gl-draw

Copyright (c) Mapbox

All rights reserved.

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

External code - pbf

Copyright (c) 2024, Mapbox
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

* Neither the name of pbf nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

External code - polylabel

ISC License
Copyright (c) 2016 Mapbox

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

External code - TinySDF

BSD-2-Clause
Copyright (c) 2016-2024 Mapbox, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

External code - PyPDF (ported to JavaScript)

Copyright (c) 2006, Mathieu Fenniak
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

* Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

External code - Lunr.js

Copyright (C) 2013 by Oliver Nightingale

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Documentation

Battle Staff Tools utilizes MIL-STD-2525E and NATO STANAG APP-6 E standards, ensuring compatibility with US Army FM 1-02.2 Military Symbology.

During development, we collaborated with the NATO Joint Symbology Panel (JSP) and the DISA Standard Symbology Management Committee (SSMC), both of whom expressed appreciation for our tool. The milsymbol library, developed by our team for generating military symbols, is now used in military systems worldwide and is recognized as a de facto standard.

Unit Symbol Generator

Sample symbol generated with the Unit Symbol Generator


The Unit Symbol Generator offers an intuitive graphical interface for creating unit symbols. You can navigate the interface using either a mouse or keyboard.

If using the keyboard, press Tab to move between menus and use the arrow keys to select different options within a menu. Once a menu is expanded, you can type to search—typing “inf” will quickly take you to the “infantry” option. You can also combine keyboard and mouse navigation for greater flexibility.

Save to favorites

This will save the current symbol to your favorites list. Symbols in your favorites list are stored locally in your web browser, making them available the next time you open the symbol generator.
If you prefer not to store anything in your browser, simply avoid adding symbols to your favorites or remove all symbols from the list at the end of your session.

Download image

This will download the current symbol to your computer as a PNG or SVG image. The file will be named using the format: SIDC - UNIT NAME - ICON NAME - ECHELON.FILEEXTENSION.

If you want to copy the symbol into a document, simply click on the symbol, select “Copy Image,” and paste it directly into your document.

Favorites list

Symbols in your favorites list can be used as templates for new symbols—just click on a favorite to configure the Unit Symbol Generator with its properties. If you update a symbol from your favorites and want to replace it, simply remove the old version and add the updated symbol.

Reorder list

You can reorder symbols in your favorites list by dragging them up or down.

Export/Import list

In the settings menu (the cogwheel in the lower left corner), you can save your favorites list to a local file or import an existing one. This makes it easy to transfer your work between computers or share it with others.

You can also remove all symbols from your favorites list in the same menu to ensure that nothing is stored in your browser’s local storage.

FM 1-02.2

Displays all symbols from US Army FM 1-02.2 that can be created using MIL-STD-2525E in the Unit Symbol Generator. Click a symbol to set it in the generator, where you can further edit its properties.

Note that not all symbol modifiers are available for every symbol, as they belong to different symbol sets.

If you find a symbol that should have a different SIDC, please email us and we will update the symbol mapping.

Orbat Builder

Sample orbat generated with the Orbat Builder


With the Orbat Builder, you can easily create organizational diagrams for presentations and publications. It provides a simple way to combine units generated with the Unit Symbol Generator into visually appealing diagrams and automatically optimizes the layout.

Building an Orbat

Drag and drop symbols from your favorites list or the main icon to any of the new positions that appear when you start dragging a symbol.

You can also drag a unit onto an existing unit to replace or update it.

Clicking a unit in the Orbat Builder sets it as the current unit in the Unit Symbol Generator. To edit its properties, click the main icon in the top left to switch to the generator, make your changes, then return to the Orbat Builder and drag the updated unit to replace the one you want to update.

Example of information that a unit will display in the orbat

Sample orbat with both present and planned units

Sample of how the orbat looks when you are dragging units to insert.


Your created orbat is stored locally in your web browser, making it available the next time you open the Unit Symbol Generator. To remove all saved data, simply delete the top-level unit.

Headquarters Elements

Headquartes elements can be idenified by the line in the upper part of the symbol
Sample of how the orbat looks when you are dragging a headquarters element to insert.

To designate a unit as a headquarters element, it must be a land unit with the first modifier set to "Headquarters or headquarters staff element."

Headquarters elements are always drawn before other subunits.

Moving Units

When you click on a unit, it becomes the current unit in the Orbat Builder menu. You can use the adjacent buttons to move the unit up or down within its sub-organization. Ordinary units cannot be moved above headquarters elements, and headquarters elements cannot be moved below ordinary units.

Deleting Units

When you click on a unit, it becomes the current unit in the Orbat Builder menu. You can use the trash can icon next to the unit to delete it and all its subunits. Deleting the top unit in your orbat will reset the orbat to blank.

Hamburger menu

Open Orbat

Opens a JSON file with a previously saved orbat.

Save Orbat

Saves your orbat structure as a JSON file, or as an image as PNG or SVG.

Floating menu

While you are working with your ORBAT, there will be some menu options floating below the menu bar.

Command levels

Lets you choose how many of the ORBAT levels that should be drawn horisontally.

Layout

Lets you choose how the ORBAT levels should be laid out on the screen. Using a smart layout by default where the ORBAT is optimized for display, and an optional simple layout where no orbat folding is performed.

Fit ORBAT to screen

Fits the orbat to the screen if you create a very wide ORBAT.

White PNG background

Sets the background to white if you download your ORBAT as a PNG.

Map

Battle Staff Tools online connects directly to PMTiles files stored on the server—no external map server is involved. You can also provide your own XYZ link to connect to online raster tile services, such as OpenStreetMap or satellite imagery.
Additionally, you can use locally stored PMTiles, Esri VTPK, or Esri TPKX files, provided the Esri files are compatible with Web Mercator. No map data is transmitted from your computer.

If you run Battle Staff Tools as a stand-alone application, you must provide locally stored geodata or XYZ links as described above.
PMTiles files for offline use can be downloaded directly from Protomaps. Use PMTiles CLI if you want to extract part of a file or remove zoom levels to reduce its size, use the appropriate tools.

For server and enterprise deployments, you can easily configure which map sources to use—file-based or server-based—by editing a simple JSON file stored on the server.

To place units on the map, simply drag and drop the main icon or any icon from your favorites list onto the map. To move a unit you’ve placed, first select it by clicking on it, then drag it to your desired location.

You can move the map or a selected unit to a specific coordinate by entering it in the coordinate input and pressing Enter. The coordinate can be in any format supported by the coordinate converter.

New scenario

Clears all current map data and creates a blank scenario.

Open scenario

Opens a previously saved GeoJSON file containing units. If you already have units and graphics on your map, the contents of the opened file will be added to your existing data. The system compares the ID and date of existing features to ensure the most current information is displayed.

If you are using Chrome or Edge, a save button will appear next to the opened file's name. Clicking this button saves all map information to the scenario you opened. Any changes made to the opened file while it is open will be detected and automatically merged, so updates from others are incorporated into your data.

Show / Hide layer panel

Shows or hides the layer panel. In the layer panel, you can add, remove, and reorder layers for map features. Click a layer to activate it; all features will be placed on the active layer until you select another one.

Import data

Imports data into the current scenario. Currently, geodata from cot messages in TAK datapackages (.zip) and KMZ/KML files (.kmz/.kml) with basic visualization are supported.

It is also possible to import:
  • Word (.docx)
  • PowerPoint (.pptx)
  • PDF (.pdf)
  • Markdown (.md)
  • Plain Text (.txt)
For these formats, coordinates are automatically detected using the same patterns as the coordinate conversion tab. The coordinates are added as points on the map. If you select an imported point, you’ll see its context from the document, including the text before and after the coordinate.

Change background map

Changes the background map to another server or local map.

Drawing shapes

Once you have drawn a shape, you can modify its color and name. In most cases, you can select a shape and move its vertices manually or by entering a specific coordinate. Pressing Backspace or Delete will remove the selected shape from the map, and pressing Backspace or Delete when a vertex is selected will remove that vertex.

When drawing or editing shapes, you can always use Ctrl+Z to undo any mistakes.

Draw Point

Draws a point on the map.

Draw Line

Draws a line on the map.

Draw Arrow

Draws an arrow on the map.

Draw Circle

Draws a circle on the map.

Draw Ellipse

Draws an ellipse on the map.

Draw Sector

Draws a circle sector on the map.

Draw Rectangle

Draws a rectangle on the map.

Draw Polygon

Draws a polygon on the map.

Attack by fire

Draws an attack by fire graphic on the map.
A tactical mission task using direct and indirect fires to engage an enemy from a distance. (FM 3-90)

Support by fire

Draws a support by fire graphic on the map.
A tactical mission task in which a unit engages the enemy by direct fire in support of another maneuvering force. (FM 3-90)

Isolate

Draws an isolate graphic on the map.
A tactical mission task in which a unit seals off an enemy, physically and psychologically, from sources of support and denies it freedom of movement. (FM 3 90)

Occupy

Draws an occupy graphic on the map.
A tactical mission task in which a unit moves into an area to control it without enemy opposition. (FM 3-90)

Retain

Draws a retain graphic on the map.
A tactical mission task in which a unit prevents enemy occupation or use of terrain. (FM 3-90)

Secure

Draws a secure graphic on the map.
A tactical mission task in which a unit prevents the enemy from damaging or destroying a force, facility, or geographical location. (FM 3 90)

Search Area

Draws a search area graphic on the map.
A type of security operation that primarily provides early warning to the protected force. (ADP 3-90)

Block

Draws a block graphic on the map.
A tactical mission task that denies the enemy access to an area or an avenue of approach. (FM 3-90)

Breach

Draws a breach graphic on the map.
A tactical mission task in which a unit breaks through or establishes a passage through an enemy obstacle. (FM 3-90)

Bypass

Draws a bypass graphic on the map.
A tactical mission task in which a unit deliberately avoids contact with an obstacle or enemy force. (FM 3-90)

Canalize

Draws a canalize graphic on the map.
A tactical mission task in which a unit restricts enemy movement to a narrow zone. (FM 3-90)

Clear

Draws a clear graphic on the map.
A tactical mission task in which a unit eliminates all enemy forces within an assigned area. (FM 3-90)

Disrupt

Draws a disrupt graphic on the map.
A tactical mission task in which a unit upsets an enemy's formation or tempo and causes the enemy force to attack prematurely or in a piecemeal fashion. (FM 3-90)

Delay

Draws a delay graphic on the map.
When a force under pressure trades space for time by slowing down the enemy's momentum and inflicting maximum damage on enemy forces without becoming decisively engaged. (ADP 3-90)

Feature information

While a feature is selected on the map, this icon will appear. Clicking it expands a menu with detailed information about the selected feature and allows you to update its properties. The available properties depend on whether the feature is a unit, point, line, or polygon graphic.

Hamburger menu

Save Map

Saves the units on your map as a GeoJSON or KMZ file, or downloads the entire map as a PNG image.

Print Map

Prepares the map to be printed on different paper sizes.

Delete All

Deletes all units and graphics you have placed on the map.

Coordinate Conversion

Converts coordinates entered in LatLong or MGRS to LatLong, MGRS, GARS, and GEOREF formats, allowing you to share coordinates in the format best suited for each unit. The fuzzy logic parser has been developed using large amounts of real-world data, enabling it to handle many creative ways of writing coordinates.

If you encounter a coordinate that cannot be parsed, please email us and we will work to improve our parsing capabilities.

Database viewer

Views databases in the zipdb format. Originally designed to display the TRADOC ODIN Worldwide Equipment Guide, it also supports other databases with the same structure.

When searching the database, you can combine keywords with different properties.
For example, searching for Russia with the Domain Air selected will show cards mentioning Russia in the air domain.

The database is a zip file stored without compression. It contains JSON data for the data cards and a lunrjs search index for full-text search.

Settings

Export favorites as JSON file

Saves all symbols in your favorites list to a JSON file

Export favorites as ZIP file

Exports all symbols in your favorites list as a ZIP file, including each symbol rendered as both PNG and SVG, along with a JSON file containing your favorites.

Open favorites list from File

Opens a JSON file with a previously saved favorites list.

Remove all favorites from list

Clears the local storage and remove all the favorites from your favorites list.

Remove all data from map

Removes all units that you have placed on the map.

Plain text mode

Enables downloading and opening plain TXT files instead of JSON or GeoJSON for Favorites, Orbats, and Scenarios. Use this option if strict security GPOs prevent downloading JSON or GeoJSON files.

FAQ

What web browsers are supported?

  • Chrome - 76
  • Firefox - 69
  • Microsoft Edge - 79
  • Safari on macOS and iOS - 14

Attribution for images

For individual unit symbols, attribution is not required, but if you wish to include it, use:

Unit symbols created with Battle Staff Tools, spatialillusions.com, 2025

For orbats, no additional attribution is needed if it remains in the image. If you remove it, please provide attribution in your document as you would for other images:

Created with Battle Staff Tools, spatialillusions.com, 2025

For maps, you MUST attribute the map data to OpenStreetMap and provide similar attribution as for orbats:

Created with Battle Staff Tools, spatialillusions.com, 2025. Map data from OpenStreetMap

Settings

Favorites list

Open favorites from File
Open a previously saved favorites JSON file.
Save favorites
Save your favorites as a JSON file.
Save favorites as ZIP
The favorites list will be saved as JSON together with all symbols as both PNG and SVG in a ZIP file.
Symbol scale
Scale of the symbols in the zip file, 100 is default.
Remove all favorites
Removes all your favorites that you have saved to the favorites list.

Plain text mode

On systems with strict security GPOs that prevent downloading JSON or GeoJSON files, this option will handle Favorites, Orbats, and Scenarios as plain text instead.