October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
World desk13 min

Arma Reforger Server Config: Complete config.json Guide

A build-aware guide to Arma Reforger server config.json, covering the -config parameter, network reachability, game and gameProperties settings, operating limits, schema differences and common connection failures.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Arma Reforger server settings are normally loaded from one JSON file passed with the -config launch parameter. In a self-hosted installation, that file controls the bind address and port, public registration, server name, passwords, scenario, player limit, view distance, voice and anti-cheat options, AI limits, and save timing. The safest workflow is to copy the configuration generated by your own server build, change only the keys it already contains, validate the JSON, and then test reachability from outside your network.

There is no surfaced official Bohemia Interactive schema reference for these settings. Community guides disagree about filenames, nesting, defaults, ports, protocol, and even key casing. Treat the values below as community-reported examples, not universal defaults; your generated file and your installed build take precedence.

As an Amazon Associate I earn from qualifying purchases.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What Arma Reforger config.json controls

The configuration file is read when the dedicated server starts. The launch command tells the server which JSON file to load:

-config /path/to/config.json

One community guide calls the file config.json; another calls it server.json. The filename is not reliable across distributions, containers, host panels, or game versions. Look at the file supplied with your installation and at the command line used by the service. If the command points to server.json, renaming it to config.json without changing the command will not help.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.

Most examples divide settings into four logical areas:

  • Network: local bind address, game port, public address, public port, region, query listener and remote administration.
  • Game: server name, player password, administrator password, scenario, player limit, cross-platform visibility and browser visibility.
  • gameProperties: view distance, grass distance, third-person rules, validation and voice settings.
  • operating: player-save timing, AI limits and reservation timeouts.

These labels describe the settings conceptually. Exact nesting is build-dependent. A file that starts successfully is not proof that every key was accepted: an unknown key can be ignored while the server continues with a default.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Before you edit the file

  1. Stop the server. Editing while the process is running can be overwritten on shutdown, and a restart is required for most values to take effect.
  2. Make a dated backup. Keep the last known-good JSON and the generated file from the current build. A copy such as config-working-2026-10-14.json makes rollback straightforward.
  3. Find the command line. Confirm the path after -config, and note whether the service also supplies -bindIP, -bindPort, -server or -adminPassword. A launch flag can override the file.
  4. Inspect the generated schema. Preserve the key names, capitalization and nesting used by the file created by your server. Do not blindly merge two guides aimed at different releases.
  5. Validate JSON syntax. JSON does not allow comments, trailing commas or duplicate keys. Use a local JSON validator or your editor’s JSON checker before starting the service.
  6. Change one group at a time. Test network changes separately from gameplay changes so a failed restart has an obvious cause.

Arma Reforger config.json example

The following is an illustrative starting point assembled from commonly reported keys. It is valid JSON, but it is not an official template. Your build may require different nesting, additional required fields or different names. Keep only keys that appear in the file generated for your version.

{"bindAddress":"","bindPort":2001,"publicAddress":"","publicPort":2001,"region":"EU","game":{"name":"My Reforger Server","password":"","passwordAdmin":"change-this-admin-password","scenarioId":"{GUID}Missions/Example.conf","maxPlayers":64,"crossPlatform":true,"visible":true,"gameProperties":{"serverMaxViewDistance":1600,"serverMinGrassDistance":50,"networkViewDistance":1000,"disableThirdPerson":false,"fastValidation":true,"battlEye":true},"operating":{"playerSaveTime":120,"aiLimit":-1,"slotReservationTimeout":60}}}

In this example, an empty bindAddress asks the server to listen on all interfaces, while an empty publicAddress leaves public-address detection enabled. The numbers are reported examples, not guarantees. One guide places operating at the root rather than inside game; follow the structure already present in your generated file.

Network settings: make the server reachable

Network mistakes are the most common reason a server starts but cannot be found or joined. Change the JSON and the host firewall or router rules as one change set.

bindAddress

bindAddress selects the local interface. Community references describe an empty value as equivalent to 0.0.0.0, meaning all available interfaces. That is useful on a machine with one public network interface or several interfaces where you do not need to restrict traffic. Set a specific private address only when you deliberately want to bind to one interface, such as a dedicated game NIC. Binding to an address that is not assigned to the host prevents startup or leaves the listener unavailable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

bindPort

bindPort is the game listener. One guide reports UDP port 2001 as the default; another uses 2302 as an example, and managed hosts often assign a different port. The commonly stated valid range is 1 through 65535, but a port being numerically valid does not make it available on your machine. Pick an unused port, open the same protocol in the host firewall, and forward that port from the router when the server is behind NAT.

publicAddress and publicPort

publicAddress is the address registered with the backend and is commonly auto-detected. Leave it automatic unless the server advertises the wrong interface, private address or multi-homed route. publicPort is the port other players should use. On a self-hosted setup where the internal and external ports are identical, change bindPort and publicPort together. If your NAT maps an external port to a different internal port, use the externally reachable value for publicPort and the local listener for bindPort, provided your build supports that arrangement.

Region

Community examples list EU, US, AS, AU, SA and AF. Choose the region containing most players rather than the physical location of an occasional administrator. Region selection affects listing and matchmaking metadata; it does not replace firewall or port forwarding.

Query and RCON listeners

Server browsers may poll an A2S query listener. One guide reports UDP port 17777 for that listener. Do not assume the game port and query port are interchangeable; check the generated file and your host’s panel before opening another port.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Remote administration is less settled. Community documentation reports BattlEye RCON on UDP 19999 in one setup, port 2312 in another, while a Docker-oriented document describes RCON over TCP. Because both port and protocol conflict, copy the RCON block from your build’s generated configuration, open only the specified protocol, and test with the matching RCON client. Never expose an RCON port with a blank or reused administrator password.

Setting Reported value or behavior What to verify
bindAddress Empty value commonly resolves to all interfaces The address exists on the host and is intended for public listening
bindPort 2001 UDP in one guide; 2302 used as an example elsewhere Build-specific port, firewall rule, router forwarding and collisions
publicAddress Auto-detected unless overridden Advertised address is reachable from the internet
publicPort External registration port; may match bindPort NAT mapping and listing behavior
A2S query 17777 UDP in one community reference Exact key and protocol in your version
RCON 19999 UDP, 2312, or TCP are all reported by different guides Protocol, port and password from your generated file

Game settings: identity, access and capacity

name

name is the browser-facing server name. Keep it descriptive and avoid placing passwords, private addresses or misleading region claims in the name. After changing it, restart the server and refresh the browser; cached listings can take time to update.

Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by

password

password protects player access. An empty string is commonly used for a public server. Use a separate player password when you want a private session, and distribute it through a trusted channel. Do not use the administrator password as the player password.

passwordAdmin

passwordAdmin is the administrator credential used by administrative features. Community instructions conflict: one says it must contain no spaces, while another recommends at least three characters. Use a long, unique value without spaces unless your own build explicitly documents otherwise, and do not commit it to a shared repository or paste it into a public support request. If your host offers a secret field or environment variable, use that instead of a world-readable JSON file.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

scenarioId

The reported format is {GUID}Missions/Name.conf. The GUID and mission path must match a scenario installed on the server. A typo can produce a startup error, a fallback scenario or a server that appears online but cannot create a session. Copy the identifier from the scenario file or from the generated configuration rather than retyping it.

maxPlayers

One community reference reports a default of 64 and a range of 1 to 128. Treat both figures as build-specific. Set a value your CPU, memory, bandwidth and mission can sustain; raising the slot count increases the possible simulation and network load even when the server is empty. If a host panel imposes a lower allocation, the panel or launch command may override the JSON value.

crossPlatform and visible

crossPlatform is commonly shown as a Boolean that enables cross-platform participation. visible controls whether the server is listed publicly. A hidden server can still be reachable by direct connection if the network path is open, while a visible server still needs correct public address, port and backend registration.

gameProperties: performance and rules

gameProperties is shown nested inside game in several community templates. It groups simulation and presentation rules rather than identity or networking.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

View and grass distances

serverMaxViewDistance is reported with a default of 1600 in one reference. serverMinGrassDistance and networkViewDistance also appear in examples. Larger distances increase what clients and the server must process; lower values can reduce load at the cost of visual range or detail. Do not copy a distance from a different hardware profile and assume it is safe. Change one distance, observe frame time and network behavior, then adjust.

Third-person and validation

disableThirdPerson is commonly used to enforce a first-person rule. fastValidation appears in community templates and changes validation behavior. Because these options can affect gameplay and compatibility, apply the values used by the scenario or community you intend to host rather than treating them as performance switches.

BattlEye and voice

A reported default for battlEye is true, and one guide advises leaving it enabled. Disabling anti-cheat changes the trust model and may prevent some players from joining. Other community examples include VON voice settings, but the exact key names and nesting are not consistent; retain the voice keys generated by your build instead of inventing a block from another version.

operating settings: saves, AI and reservations

playerSaveTime

playerSaveTime is reported with a 120-second default. It controls how often player state is saved in builds that expose this option. A shorter interval can reduce progress lost after a crash but may add disk activity; a longer interval reduces writes but increases potential loss. Confirm the unit and accepted range in the generated file before changing it.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

aiLimit and AILimit

Reference guides use lowercase aiLimit and report -1 as no limit. A preset uses AILimit instead, demonstrating a casing conflict. JSON keys are case-sensitive in many parsers. If the generated file says AILimit, keep that exact casing; if it says aiLimit, use the lowercase form. Lower the limit on weaker hardware when AI load is the cause of simulation slowdown. A value of -1 should not be assumed to mean unlimited unless your build accepts it.

slotReservationTimeout

One reference reports a default of 60 seconds and an accepted range of 5 to 300 seconds. This value determines how long a reserved slot is held before it becomes available again. Increase it only when players routinely need more time to connect; an excessive timeout can leave capacity apparently unavailable.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Launch parameters that can override config.json

The JSON file is only one source of settings. Community setup guides show these arguments alongside it:

Parameter Reported purpose Operational note
-config Path to the JSON configuration Required in guides that use a file; verify the path and filename
-maxFPS Caps the server process frame rate Guides report defaults from 30 to 60; start conservatively and measure CPU use
-profile Selects a profile or writable profile directory Use a directory the service account can write
-logStats Enables statistics logging in a sample launch line Check disk growth and rotate logs
-bindIP and -bindPort Override the address or port from the file Command-line values win when both are supplied
-server Launches a specific world One guide says it bypasses -config; do not combine it casually with a file-based setup
-adminPassword Supplies an administrator password at launch Prefer a protected secret mechanism; avoid shared command histories and process listings

A generic file-based launch pattern is:

-config /srv/reforger/config.json -profile /srv/reforger/profile -logStats -maxFPS 60

The executable name, quoting rules and path syntax depend on your operating system and service manager. Add -bindIP or -bindPort only when you intentionally want to override the JSON. If the server appears to ignore a changed port, inspect the actual process command before editing the file again.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Schema differences and version traps

Several guides warn that the schema changed around version 0.9.12. Older examples may show gameHostBindAddress and gameHostRegisterAddress; newer examples generally use bindAddress and publicAddress. Another guide shows a flat gameHostBindPort rather than root-level bindPort. These are not interchangeable spellings you should add simultaneously. Use the keys emitted by your installed build.

The same problem appears with nesting. One layout places gameProperties under game and puts operating at the root; another places operating settings inside the game object. Casing also varies for the AI limit. When upgrading, generate a fresh file, compare it with your backup, and migrate values field by field. Do not replace the whole file with a template written for another release.

Managed hosting versus self-hosting

Self-hosted machine

You control the JSON, firewall, router, operating-system permissions and process command. Open only the game, query and administration ports actually required by your build. Confirm that the service account can read the configuration and write its profile and log directories. Test from a separate internet connection; a local test can succeed even when NAT hairpinning or public firewall rules are wrong.

Managed server

Hosting panels commonly preconfigure bindAddress and bindPort. Community hosting instructions advise leaving those values alone unless support explicitly tells you to change them. A panel may generate the JSON on every restart, inject launch flags, or reserve ports outside the file. In that environment, change gameplay fields through the panel where possible and compare the resulting generated file after each save.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Troubleshooting by symptom

The process exits immediately

  • Validate the JSON for missing commas, trailing commas, unescaped backslashes or duplicate keys.
  • Check that the path after -config exists and that the service account can read it.
  • Compare the file’s nesting and key casing with a freshly generated file from the same build.
  • Confirm that scenarioId points to an installed scenario and that bindAddress is assigned on the machine.

The server starts but is not listed

  • Confirm that visible is enabled and that the server has finished registration.
  • Verify publicAddress and publicPort; an auto-detected private interface can advertise an unreachable address.
  • Check the firewall, router forwarding and provider-level firewall for the actual game protocol and port.
  • Look for a launch-time -bindIP or -bindPort that overrides the JSON.

Players can see the server but cannot join

  • Ensure the forwarded external port matches publicPort and reaches the local bindPort.
  • Check whether the server is password-protected and distribute the player password exactly.
  • Verify that the scenario is installed and that the player count has not exceeded the host allocation.
  • Test with the query listener separately; a working browser listing does not prove the game listener is reachable.

Performance degrades as players or AI increase

  • Use -maxFPS to cap unnecessary CPU consumption; guides report caps between 30 and 60, so measure rather than assuming one value is correct.
  • Lower aiLimit or the exact casing used by your file when AI is the load source.
  • Reduce view, grass or network distances in gameProperties one at a time.
  • Lower maxPlayers if the hardware cannot sustain the advertised capacity.

RCON does not connect

  • Confirm whether your build expects UDP or TCP; community documents disagree.
  • Confirm the configured port rather than assuming 19999 or 2312.
  • Check that BattlEye administration is enabled and that the password has no accidental whitespace.
  • Open the port only to trusted administrator addresses where your firewall supports source restrictions.

A safe change procedure

  1. Record the current build version, launch command, file path and working ports.
  2. Copy the generated configuration and label the copy with the date.
  3. Change one related group, such as the game name and visibility, or the network address and port.
  4. Run a JSON syntax check and inspect for duplicate keys.
  5. Restart the server and read the startup log for the loaded path, bound address, scenario and registration status.
  6. Test locally, then from a different network. Use a player account to test the player password and a separate administrator account to test administration.
  7. If the result is wrong, restore the backup before attempting another combination of schema changes.

Settings to change first

Goal Fields to review Risk to check
Make a public server visible, publicAddress, publicPort, firewall and forwarding Private address advertisement or blocked port
Run a private session password, visible, publicAddress Sharing the administrator credential or leaving listing enabled unintentionally
Increase capacity maxPlayers, AI limit, view distances, -maxFPS CPU, memory and bandwidth saturation
Enforce first person disableThirdPerson Scenario or community expectations may differ
Reduce save loss playerSaveTime More frequent disk writes and unknown unit or range in an older build
Enable remote administration RCON block, BattlEye setting, administrator password Protocol mismatch and internet exposure

Practical validation checklist

  • The launch command points to the file you edited, and no alternate file is generated at startup.
  • The JSON parses without comments or trailing commas.
  • Key casing and nesting match the file produced by the installed build.
  • The scenario identifier is copied from an installed mission.
  • bindPort, publicPort, firewall rules and NAT forwarding describe the same connection path.
  • Any query or RCON listener uses the protocol and port expected by that build.
  • The administrator password is unique, protected and not embedded in shared scripts.
  • Player capacity and AI or view-distance settings have been tested on the actual hardware.
  • A known-good backup is available before every schema migration or game update.

The durable rule is simple: use the server’s generated configuration as the contract, use -config to load that file, and treat community defaults as hints that require verification. Ports, nesting, casing and defaults reported by guides are not established official specifications, so a successful start, a reachable port and a test join are all necessary before calling a configuration finished.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
Windows Errors? Fix Them Before They SpreadFree repair scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.