> ## Documentation Index
> Fetch the complete documentation index at: https://help.freakhosting.com/llms.txt
> Use this file to discover all available pages before exploring further.

# How to Manage BattlEye Filters in Arma 3

> Analyze BattlEye script logs on your Arma 3 server and configure filter exceptions to prevent legitimate mission scripts from causing player kicks and bans.

## Managing Security: Script Restrictions

BattlEye is an aggressive anti-cheat solution designed to protect Arma 3 servers from unauthorized code execution. However, by default, it blocks many strong scripts used in popular community missions like *Antistasi*, *Exile*, or *Hearts and Minds*. "Script Restriction #0" kicks occur when a legitimate mission script triggers a generic security filter. This guide explains how to identify and resolve these conflicts safely.

<CardGroup cols={2}>
  <Card title="Difficulty" icon="gauge-low">
    Advanced
  </Card>

  <Card title="Time" icon="clock">
    15 Minutes
  </Card>
</CardGroup>

***

## Analyzing the Kick

When a player is removed from the server for a "Script Restriction," BattlEye generates a detailed log entry that tells you exactly which piece of code was blocked.

<Steps>
  <Step title="Locate the Log File">
    In the [Game Panel](https://panel.freakhosting.com) File Manager, navigate to the `/battleye/` directory and open `scripts.log`.
  </Step>

  <Step title="Interpret the Entry">
    Look for the most recent line in the file.

    * *Example:* `23.01.2026 14:00:00: PlayerName (IP:Port) GUID - #0 "player setVelocity [0,0,10];"`
    * **#0:** This is the filter index (referencing a line in your filter file).
    * **"player setVelocity...":** This is the exact code that caused the kick.
  </Step>
</Steps>

***

## Adding Filter Exceptions

To allow a specific script to run without compromising your server's overall security, you must add an exception to your BattlEye configuration.

<Steps>
  <Step title="Open the Filter File">
    Open `/battleye/scripts.txt` in the File Manager.
  </Step>

  <Step title="Find the Relevant Filter">
    Locate the line number corresponding to the kick (e.g., if the log said `#0`, find the first active line in the text file).
  </Step>

  <Step title="Append the Exception">
    Add `!=` followed by the exact code snippet found in the log at the end of that line.

    * **Original Line:** `7 setVelocity`
    * **Modified Line:** `7 setVelocity !=player setVelocity [0,0,10]`
  </Step>
</Steps>

<Tabs>
  <Tab title="Filter Level 7">
    This is the "Kick" mode. It is the most secure but requires the most maintenance to ensure legitimate scripts aren't blocked.
  </Tab>

  <Tab title="Filter Level 1">
    This is "Log Only" mode. Use this temporarily during server development to see what scripts are running without kicking players.
  </Tab>
</Tabs>

***

<Important>
  ### Security Best Practice

  **Never delete a filter line.** Removing a filter like `setVelocity` entirely would allow malicious players to use speed-hacks or teleportation cheats. Always use the `!=` (Not Equal) operator to whitelist specific, known safe strings while keeping the general protection active.
</Important>

***

<Note>
  ### Need Extra Help?

  If you encounter any issues, our support team is ready to assist:

  * **Live Chat:** Quick assistance via our website.
  * **Support Ticket:** [Open a Ticket](https://freakhosting.com/clientarea/submitticket.php)
  * **Discord:** [Join our Community](https://discord.gg/freakhosting)
  * **Email:** [support@freakhosting.com](mailto:support@freakhosting.com)
</Note>

<Tip>
  ### Save on Your Hosting

  Ready to get a new server? Use code **KB20** at checkout for **20% off** your first month!
</Tip>

***

<div align="center">
  **Last Updated:** January 2026 | **Arma 3:** Filters refined.
</div>
