{"meta":{"slug":"pterodactyl-arma3","name":"Pterodactyl Arma3","category":"arma","source":"pelican","owner":"pelican-eggs","repo":"games-steamcmd","branch":"main","path":"arma/arma3/egg-pterodactyl-arma3.json","rawUrl":"https://raw.githubusercontent.com/pelican-eggs/games-steamcmd/main/arma/arma3/egg-pterodactyl-arma3.json","indexedAt":1792246788483},"egg":{"_comment":"DO NOT EDIT: FILE GENERATED AUTOMATICALLY BY PTERODACTYL PANEL - PTERODACTYL.IO","meta":{"version":"PTDL_v2","update_url":null},"exported_at":"2025-10-06T15:23:36-07:00","name":"Arma 3","author":"red_thirten@yahoo.com","description":"Experience true combat gameplay in a massive military sandbox. Deploying a wide variety of single and multiplayer content, over 20 vehicles and 40 weapons, and limitless opportunities for content creation, this is the PC's premier military game. Authentic, diverse, open - Arma 3 sends you to war.","features":["steam_disk_space"],"docker_images":{"ghcr.io/parkervcp/games:arma3":"ghcr.io/parkervcp/games:arma3"},"file_denylist":[],"startup":"./{{SERVER_BINARY}} -par=startup_params_server.txt","config":{"files":"{\r\n    \"server.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"password=\": \"password = \\\"{{server.build.env.SERVER_PASSWORD}}\\\";\",\r\n            \"//password=\": \"password = \\\"{{server.build.env.SERVER_PASSWORD}}\\\";\",\r\n            \"password =\": \"password = \\\"{{server.build.env.SERVER_PASSWORD}}\\\";\",\r\n            \"//password =\": \"password = \\\"{{server.build.env.SERVER_PASSWORD}}\\\";\",\r\n            \"maxPlayers\": \"maxPlayers = {{server.build.env.MAX_PLAYERS}};\",\r\n            \"headlessClients\": \"headlessClients[] = { \\\"127.0.0.1\\\" };\",\r\n            \"localClient\": \"localClient[] = { \\\"127.0.0.1\\\" };\"\r\n        }\r\n    },\r\n    \"battleye/launch/beserver.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"RConPassword\": \"RConPassword {{server.build.env.RCON_PASSWORD}}\",\r\n            \"RConPort\": \"RConPort {{server.build.env.RCON_PORT}}\"\r\n        }\r\n    },\r\n    \"battleye/launch/beserver_x64.cfg\": {\r\n        \"parser\": \"file\",\r\n        \"find\": {\r\n            \"RConPassword\": \"RConPassword {{server.build.env.RCON_PASSWORD}}\",\r\n            \"RConPort\": \"RConPort {{server.build.env.RCON_PORT}}\"\r\n        }\r\n    }\r\n}","startup":"{\r\n    \"done\": \"Host identity created.\"\r\n}","logs":"{}","stop":"^C"},"scripts":{"installation":{"script":"#!/bin/bash\r\n\r\n## File: Pterodactyl Arma 3 Egg - egg-pterodactyl-arma3.json\r\n## Author: David Wolfe (Red-Thirten)\r\n## Date: 2025/10/06\r\n## License: MIT License\r\n## Image to install with is 'ghcr.io/parkervcp/installers:debian'\r\n\r\n# Download URL for a default Arma 3 server.cfg\r\n# (Feel free to modify to your own preferred, self-hosted file if you wish)\r\nSERVER_CFG_URL=\"https://raw.githubusercontent.com/pelican-eggs/games-steamcmd/main/arma/arma3/egg-arma3-config/server.cfg\"\r\n\r\n# Install packages. Default packages below are skipped if using image noted above, thus speeding up the install process.\r\napt -y update\r\napt -y --no-install-recommends install curl lib32gcc-s1 ca-certificates\r\n\r\n# Check for valid Steam credentials to download Arma 3 with (requires valid Steam account)\r\nif [[ \"${STEAM_USER}\" == \"\" ]] || [[ \"${STEAM_USER}\" == \"anonymous\" ]] || [[ \"${STEAM_PASS}\" == \"\" ]]; then\r\n    echo -e \"INSTALLATION ERROR: A valid REAL Steam account is required to download the Arma 3 Dedicated Server.\"\r\n    echo -e \"\\t(\\\"anonymous\\\" account cannot be used. Game ownership is not required.)\"\r\n    exit 1\r\nfi\r\n\r\n# Download and install SteamCMD\r\ncd /tmp\r\nmkdir -p /mnt/server/steamcmd /mnt/server/steamapps\r\ncurl -sSL -o steamcmd.tar.gz https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz\r\ntar -xzvf steamcmd.tar.gz -C /mnt/server/steamcmd\r\ncd /mnt/server/steamcmd\r\n\r\n# SteamCMD fails otherwise for some reason, even running as root.\r\nchown -R root:root /mnt\r\nexport HOME=/mnt/server\r\n\r\n# Install game server using SteamCMD\r\necho -e \"\\nInstalling/Validating Arma 3 Dedicated Server Files...\"\r\necho -e \"(It is okay to ignore any \\\"SDL\\\", \\\"steamservice\\\", and \\\"thread priority\\\" errors during this process)\"\r\nif [[ -n ${STEAMCMD_BETAID} ]]; then\r\n    echo -e \"\\tDownload/Update of \\\"${STEAMCMD_BETAID}\\\" branch enabled.\"\r\nfi\r\necho -e \"\"\r\n./steamcmd.sh +force_install_dir /mnt/server \"+login \\\"${STEAM_USER}\\\" \\\"${STEAM_PASS}\\\"\" +app_update ${STEAMCMD_APPID} $( [[ -n ${STEAMCMD_BETAID} ]] && printf %s \"-beta ${STEAMCMD_BETAID}\" ) validate +quit\r\n\r\n# Set up 32 and 64 bit libraries\r\nmkdir -p /mnt/server/.steam/sdk{32,64}\r\ncp -v linux32/steamclient.so /mnt/server/.steam/sdk32/steamclient.so\r\ncp -v linux64/steamclient.so /mnt/server/.steam/sdk64/steamclient.so\r\n\r\n# Arma 3 setup\r\ncd /mnt/server/\r\n[[ -f server.cfg ]] || curl -sSLO ${SERVER_CFG_URL} # Download default server.cfg file\r\n[[ -f basic.cfg ]] || curl -sSLO ${BASIC_CFG_URL} # Download default basic.cfg file\r\nchmod 644 server.cfg basic.cfg\r\nmkdir -p ./battleye/launch # Create BattlEye config files\r\ntee ./battleye/launch/beserver.cfg ./battleye/launch/beserver_x64.cfg > /dev/null <<EOF\r\nRConPassword $RCON_PASSWORD\r\nRConPort $RCON_PORT\r\nEOF\r\n\r\nif [[ -f \"arma3server_x64\" && -f \"server.cfg\" && -f \"basic.cfg\" ]]; then\r\n    echo -e \"\\nArma 3 Dedicated Server successfully installed!\\n\"\r\nelse\r\n    echo -e \"\\n\\nFailed to install the Arma 3 Dedicated Server!\"\r\n    echo -e \"\\tReview the installation logs for any errors before trying again.\\n\"\r\n    exit 1\r\nfi","container":"ghcr.io/parkervcp/installers:debian","entrypoint":"/bin/bash"}},"variables":[{"name":"[Host] Steam Username","description":"Used for installation and updates. Account does not need to own Arma 3, but MUST BE a VALID Steam account (anonymous login cannot be used). For security reasons it is recommended that you create a new Steam account just for your dedicated servers. *This info is not visible to the server owner.*","env_variable":"STEAM_USER","default_value":"","user_viewable":false,"user_editable":false,"rules":"required|string","field_type":"text"},{"name":"[Host] Steam Password","description":"Used for installation and updates. Steam Guard MUST be completely TURNED OFF for install to complete successfully. *This info is not visible to the server owner, BUT IS stored in PLAIN TEXT. It is NOT advised to use a personal account; best to use a dummy account.*","env_variable":"STEAM_PASS","default_value":"","user_viewable":false,"user_editable":false,"rules":"required|string","field_type":"text"},{"name":"[Host] Number of SteamCMD Retry Attempts","description":"How many times SteamCMD should retry downloading a server or mod after a recoverable error. (ie. A particularly large mod like CUP or RHS download times out)","env_variable":"STEAMCMD_ATTEMPTS","default_value":"3","user_viewable":false,"user_editable":false,"rules":"required|integer","field_type":"text"},{"name":"[Host] RCon Port","description":"BattlEye's RCon port for remote connections with an Arma 3 compliant RCon client/tool. If set to 0, remote connections are disabled. (Note: This port is different from the \"BattlEye traffic\" port and must be unique)","env_variable":"RCON_PORT","default_value":"","user_viewable":true,"user_editable":false,"rules":"required|integer|between:0,65536","field_type":"text"},{"name":"Automatic Updates","description":"Quickly checks for any server or mod updates on startup, and updates if necessary. (1 Enable | 0 Disable)","env_variable":"UPDATE_SERVER","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"Arma 3 Branch (CDLC, etc.)","description":"Downloads/Updates a specific Arma 3 branch during server install or the next Automatic Update. \"public\" is the default branch. \"creatordlc\" will install all mod files required to run any Creator DLC (CDLC). CDLCs can be enabled by adding their mod folder name to the \"Additional Mods\" startup variable. For example, add \"vn;\" to load the Prairie Fire CDLC. \"profiling\" is for running the special profiling build of the server.","env_variable":"STEAMCMD_BETAID","default_value":"public","user_viewable":true,"user_editable":true,"rules":"required|string|in:public,creatordlc,profiling","field_type":"text"},{"name":"Server Binary","description":"Server binary to call on server start. (32-bit: arma3server | 64-bit: arma3server_x64)","env_variable":"SERVER_BINARY","default_value":"arma3server_x64","user_viewable":true,"user_editable":true,"rules":"required|string|in:arma3server,arma3server_x64,arma3serverprofiling,arma3serverprofiling_x64","field_type":"text"},{"name":"Max Players","description":"Maximum number of players allowed to join the server.","env_variable":"MAX_PLAYERS","default_value":"32","user_viewable":true,"user_editable":true,"rules":"required|integer|gt:0","field_type":"text"},{"name":"Server Password","description":"Password required to join the server. Leave blank to have no password.","env_variable":"SERVER_PASSWORD","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"Modlist File (Exported from A3 Launcher)","description":"Filename for a modlist exported from the Arma 3 Launcher. This file will be parsed for mod installation and loading. Upload your HTML file to the root directory (eg. /home/container/modlist.html). Leave blank to disable loading mods from a modlist.","env_variable":"MOD_FILE","default_value":"modlist.html","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"Additional Mods","description":"A semicolon-separated list of additional mod folders to load. Useful for loading CDLCs or manually uploaded mods. This mod list will be loaded in addition to the Modlist File (if used). Any mods in this list that are in \"@workshopID\" form will also be included in Automatic Updates (if enabled). NO capital letters, spaces, or folders starting with a number! (ex. myMod;vn;@123456789;@987654321;etc;)","env_variable":"MODIFICATIONS","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"Disable Verbose Logging","description":"Adds the \"-noLogs\" startup parameter. Significantly reduces console output/spam. Note: Enabling this will also prevent `.rpt` logs from being generated.","env_variable":"PARAM_NOLOGS","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"Load Mission To Memory","description":"Adds the \"-loadMissionToMemory\" startup parameter. Server will load mission into memory on first client downloading it. Then it keeps it pre-processed & pre-cached in memory for next clients, saving some server CPU cycles.","env_variable":"PARAM_LOADMISSIONTOMEMORY","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"Auto Initialize Mission","description":"Adds the \"-autoInit\" startup parameter. Automatically initializes the mission just like the first client does. The server config file (server.cfg) must contain `persistent = 1;` otherwise this parameter is skipped.","env_variable":"PARAM_AUTOINIT","default_value":"0","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"RCon Password","description":"BattlEye's RCon password for remote connections with an Arma 3 compliant RCon client/tool. It is recommended to choose a strong password that only contains alpha-numerics. The server config file (server.cfg) must contain `BattlEye = 1;` otherwise RCon is disabled.","env_variable":"RCON_PASSWORD","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|alpha_num","field_type":"text"},{"name":"[Advanced] Server-Side Only Mods","description":"Mod folders to be used with the \"-serverMods\" startup option. They only run server-side and are not required by clients if \"verifySignatures\" is enabled in your server.cfg file. Any mods in this list that are in \"@workshopID\" form will also be included in Automatic Updates (if enabled). NO capital letters, spaces, or folders starting with a number! Each folder must be followed with a semicolon (ex. @123456789;@987654321;etc;)","env_variable":"SERVERMODS","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"[Advanced] Optional Client-Side Mods","description":"A semicolon-separated list of optional mods to load into the keys folder, but not include in server's mod parameter. Useful for allowing clients to connect to the server with or without the mod loaded. Mods in this list must be in \"@workshopID\" form (ex. @123456789;@987654321;). These will also be included in Automatic Updates (if enabled).","env_variable":"OPTIONALMODS","default_value":"","user_viewable":true,"user_editable":true,"rules":"nullable|string","field_type":"text"},{"name":"[Advanced] Enable File Patching","description":"Adds the \"-filePatching\" startup parameter. Allows the game to load unpacked data. Value will be applied to HCs as well.","env_variable":"PARAM_FILEPATCHING","default_value":"0","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"[Advanced] Server FPS","description":"Adjusts the maximum number of simulation cycles the server will try to run per second. Higher values mean network messages are sent out more frequently, entities (units/vehicles/projectiles/etc) are simulated more often, as well as AI behavior and vision calculations are done more often. The practical impact of higher values vary based on the mission file, and may cause additional unwanted overhead. Adjust with caution. Value will be applied to HCs as well.","env_variable":"PARAM_LIMITFPS","default_value":"50","user_viewable":true,"user_editable":true,"rules":"required|integer|between:5,1000","field_type":"text"},{"name":"[Advanced] Headless Clients (HC)","description":"Number of Headless Clients (0 - 5) to launch parallel with the server. Be sure to set the following \"HC Connect Password\" variable if your server is password locked. PLEASE NOTE: Using a headless client is only recommended for advanced users, adds extra overhead to your permitted server resources, and is only beneficial if a properly written, HC compliant mission file is provided. See https://community.bistudio.com/wiki/Arma_3:_Headless_Client for more info.","env_variable":"HC_NUM","default_value":"0","user_viewable":true,"user_editable":true,"rules":"required|integer|between:0,5","field_type":"text"},{"name":"[Advanced] HC Hide Console Output","description":"Hides Headless Client console output (except for critical errors) to prevent nonessential console spam.","env_variable":"HC_HIDE","default_value":"1","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"[Repair] Make Mod Files Lowercase","description":"Every mod that is set to be loaded will have its folder and files changed to lowercase (to prevent errors). It is recommended to enable this for one server boot after copying a mod from a Windows machine to the server, or if mods seem to not be loading.","env_variable":"MODS_LOWERCASE","default_value":"0","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"[Repair] Validate Server Files","description":"Validates all server files when Automatic Updates is enabled. Note: This will significantly increase server startup times, so it is recommended to only enable this when needed.","env_variable":"VALIDATE_SERVER","default_value":"0","user_viewable":true,"user_editable":true,"rules":"boolean","field_type":"text"},{"name":"[System] Arma 3 Dedicated Server App ID","description":"Used for installation and updates. Rarely needs to be changed.","env_variable":"STEAMCMD_APPID","default_value":"233780","user_viewable":false,"user_editable":false,"rules":"required|integer","field_type":"text"},{"name":"[System] basic.cfg URL","description":"URL to a valid Arma 3 basic.cfg file. The \"Basic\" configuration file is used during server runtime for advanced network performance tuning. Because it is a required file, this URL is used to download it during installation, or if the file is found missing during startup.","env_variable":"BASIC_CFG_URL","default_value":"https://raw.githubusercontent.com/pelican-eggs/games-steamcmd/main/arma/arma3/egg-arma3-config/basic.cfg","user_viewable":false,"user_editable":false,"rules":"required|url","field_type":"text"}]},"readme":"# Arma 3\n\n> [!IMPORTANT]\n> **(September 2025) *This Egg has just been majorly updated.*** Please see [How to Update Egg](#how-to-update-egg) to avoid any migration issues!\\\n> \\\n> If you need time to update, you can continue using the old Egg with this image for the time being: `ghcr.io/ptero-eggs/games:arma3`\n___\n\n## Authors / Contributors\n\n<!-- prettier-ignore-start -->\n<!-- markdownlint-disable -->\n<table>\n    <tr>\n        <td align=\"center\">\n            <a href=\"https://github.com/redthirten\">\n                <img src=\"https://avatars.githubusercontent.com/u/4533989\" width=\"50px;\" alt=\"\"/><br /><sub><b>Red-Thirten</b></sub>\n            </a>\n            <br />\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=redthirten\" title=\"Codes\">💻</a>\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=redthirten\" title=\"Maintains\">🔨</a>\n        </td>\n        <td align=\"center\">\n            <a href=\"https://github.com/aussieserverhosts\">\n                <img src=\"https://avatars.githubusercontent.com/u/65438932\" width=\"50px;\" alt=\"\"/><br /><sub><b>Aussie Server Hosts</b></sub>\n            </a>\n            <br />\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=aussieserverhosts\" title=\"Codes\">💻</a>\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=aussieserverhosts\" title=\"Contributor\">💡</a>\n        </td>\n        <td align=\"center\">\n            <a href=\"https://github.com/IAmSilK\">\n                <img src=\"https://avatars.githubusercontent.com/u/16708907\" width=\"50px;\" alt=\"\"/><br /><sub><b>IAmSilK</b></sub>\n            </a>\n            <br />\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=IAmSilK\" title=\"Codes\">💻</a>\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=IAmSilK\" title=\"Contributor\">💡</a>\n        </td>\n        <td align=\"center\">\n            <a href=\"https://github.com/Yomanz\">\n                <img src=\"https://avatars.githubusercontent.com/u/5119107\" width=\"50px;\" alt=\"\"/><br /><sub><b>Daave</b></sub>\n            </a>\n            <br />\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=Yomanz\" title=\"Codes\">💻</a>\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=Yomanz\" title=\"Original Creator\">⭐</a>\n            <a href=\"https://github.com/pelican-eggs/games-steamcmd/commits?author=Yomanz\" title=\"Retired from Development\">💤</a>\n        </td>\n    </tr>\n</table>\n<!-- markdownlint-enable -->\n<!-- prettier-ignore-end -->\n\n___\n\n### Game Description\n\nFrom Bohemia Interactive's [Website](https://arma3.com/):\n> Experience true combat gameplay in a massive military sandbox. Deploying a wide variety of single and multiplayer content, over 20 vehicles and 40 weapons, and limitless opportunities for content creation, this is the PC’s premier military game. Authentic, diverse, open - Arma 3 sends you to war.\n___\n\n### Egg Capabilities\n\n- Configurable to run 32 or 64-bit versions of the server\n- Max Players is configurable and able to be host enforced (\\*see [Recommended Egg Modifications](#recommended-egg-modifications))\n- Able to download server updates on startup\n- Able to download, update, and load Steam Workshop mods on startup (\\*see [Installation Requirements](#installationsystem-requirements))\n  - Accepts uploaded HTML modlist files exported from the Arma 3 Launcher to define mods to load on the server.\n  - Also accepts manually listed mods, CDLCs, server-side only mods, and optional client-side only mods.\n  - Checks for mod updates against their Steam Workshop page's last update for quick and efficient update checks.\n  - Automatically moves mod `.bikey`'s to the `/keys/` directory.\n- Configurable to download Creator DLCs (`creatordlc` branch)\n- Configurable to run Profiling/Performance binaries of the server (if desired; advanced users only)\n- Most popular [Arma 3 startup parameters](https://community.bistudio.com/wiki/Arma_3_Startup_Parameters) can be added via Startup Variables.\n- Configurable to run up to 5 Headless Clients in parallel with the main server (may require additional performance overhead)\n- Configurable to allow remote RCon connections\n- [WHMCS](https://www.whmcs.com/) compatible (\\*see [Recommended Egg Modifications](#recommended-egg-modifications))\n\n___\n\n### Installation/System Requirements\n\n> [!IMPORTANT]\n> - A valid, **real** Steam account, with **Steam Guard turned off**, is required to install the server (default \"anonymous\" login cannot be used). This account *does not* need to own Arma 3 (unless downloading mods; see below). For security reasons it is [recommended by Valve](https://developer.valvesoftware.com/wiki/SteamCMD#With_a_Steam_account) that you create a new Steam account just for your dedicated servers.\n> - For automatic Steam Workshop **mod downloading** to work, the Steam account ***does*** need to ****own Arma 3**. However, this is optional functionality, and mods can be manually uploaded to the server if desired. See [Recommended Egg Modifications](#recommended-egg-modifications) if you would like to disable mod downloading.\n\n|  | Bare Minimum | Recommended | Notes |\n|---------|---------|---------|---------|\n| Processor | 2.4 GHz Dual-Core x86-64-v3. No ARM support. | 3.5+ GHz Quad-Core | ARMA 3 is mainly CPU intensive. Contrary to popular belief, the server binary *can* run on multiple cores/threads. However, it's ability to manage asynchronous tasks and hyperthread is somewhat limited, meaning additional cores/threads reach diminishing returns very quickly. In addition, it's ability to utilize all of the CPU allotted to it for AI processing seems to be limited as well. Therefore, a Headless Client ***and*** a properly written mission file are highly recommended if large amounts of AI units will be used. |\n| RAM | 2048 MiB | 4096 MiB | If used, every Headless Client uses an additional 2048 MB of RAM as well. |\n| Storage | 32 GB HDD | 50+ GB SSD | Mods can drastically increase usage if many are downloaded. |\n| Network | 0.512 Mbit/s/player | 1-5 Mbit/s/player | Arma 3 server does not support IPv6 or DSlite IPv4 via IPv6 tunnel. You must have a real IPv4 connection. Multihome (ie. host with multiple WAN IPs) is not supported. |\n| Host OS | Most stable Linux OS branches should work. | Using the latest kernel version for your installed OS can prevent some edge-case installation/boot issues. |\n\n> [!WARNING]\n> It has recently been found that newer CPUs with \"efficiency cores\" can sometimes cause major issues with Arma's performance. If Arma arbitrarily chooses to use any of these cores, this issue can occur.\\\n> \\\n> This issue **should not** be fixed by telling the panel to pin the server to specific CPU cores as this has caused issues in the past. Instead, hosts should manually add the [`-cpuCount`](https://community.bistudio.com/wiki/Arma_3:_Startup_Parameters#cpuCount) or [`-cpuAffinity`](https://community.bistudio.com/wiki/Arma_3:_Startup_Parameters#cpuAffinity) flag to the Startup Command of the Egg/Server.\\\n> \\\n> Which one you should use depends on where your efficiency cores are indexed for your CPU model. Examples for a 24-core CPU:\n> - Cores 0 to 7 are efficiency cores: `-cpuAffinity=0xFFFF00` (use cores 8-24)\n> - Cores 16 to 23 are efficiency cores: `-cpuCount=16` (use cores 0-15)\n\n> [!NOTE]\n> This Egg no longer supports the Wisp SaaS Panel.\n\n___\n\n### Server Ports\n\n> [!TIP]\n> - Default server ports are listed below, but the Main port can be any port.\n> - There are three more ports after the Main port that are relative to the Main port (For example: The BattlEye port is always 4 ports higher than the Main port).\n> - It is [recommended](https://community.bistudio.com/wiki/Arma_3:_Dedicated_Server#Port_Forwarding) that each server on a single host be 100 ports separate from each other.\n\n| Port | Default | Protocol | Required | Notes |\n|---------|---------|---------|---------|---------|\n| **Arma 3 Game & VON** | 2302 | UDP | **Yes** | Must be **Primary** port in panel. |\n| Steam Query (+1) | 2303 | UDP | **Yes** | |\n| Steam Port (+2) | 2304 | UDP | **Yes** | |\n| VON  (+3) | 2305 | UDP | No | No need to forward; currently depreciated. |\n| BattleEye traffic (+4) | 2306 | UDP | **Yes** | |\n| BattleEye RCon | 2301 | UDP | No | Can be any port, except for those listed above (including +3). |\n\n___\n\n### Mounting Workshop Mods\n\nServer hosts may wish to save space and avoid download issues by mounting large and/or common mods. Unfortunately, Arma only allows mods to be loaded from directories down-stream of the server binary (ie. `/home/container/*`). This makes properly mounting the mod directories tricky. I have tried both mounting the mod folder directly into the `container` directory, and mounting into `/` (root) with a symlink to the folder placed in `container`. In both scenarios, `ls` showed files were mounted properly, but Arma was not able to see the folder for some reason. If anyone knows a solution to this, please open an Issue to let us know. I have a feeling it might be permissions related to NSS Wrapper, but I'm not sure.\n\n___\n\n### Recommended Egg Modifications\n\nThe following are highly recommended Startup Variable modifications you can make to the Egg after importing it to your panel. While viewing this Egg, simply go to the \"Variables\" tab of the Egg editor to make these changes.\n\n#### Default Steam Username & Password\n\n- To make deploying servers easy (**or if you are using WHMCS**), it is recommended to edit the default values of \"Steam Username\" and \"Steam Password\" to your Steam account dedicated for hosting. This will make all newly installed servers use these credentials. **DO NOT** make these fields visible to the end user so that they can use their own Steam accounts; the panel will save their Steam credentials in **plain text**, which is a BIG NO NO for security and privacy.\n\n#### Restrict Max Players\n\n- If you would like to restrict the maximum number of players that can join your client's server, you can change the permissions of the \"Max Players\" variable so that clients can only view this value (and not edit it). It's default value can also be changed, or the value can be changed on a server-by-server basis as desired.\n\n#### Disable Mod Downloads/Updates\n\n- If the Steam account does not own Arma 3, attempts to download mods will fail. If you would like to prevent end-users from downloading mods, simply delete the following Startup Variables:\n    - \"Modlist File (Exported from A3 Launcher)\"\n    - \"Additional Mods\"\n    - \"[Advanced] Server-Side Only Mods\"\n    - \"[Advanced] Optional Client-Side Mods\"\n\n___\n\n### How to Update Egg\n\nIf you already have an Arma 3 Egg installed on your panel, there are a couple things to consider after updating this Egg:\n\n#### September 2025 Update\n\n- Please **delete all existing mod folders** and have the system download and install them again. The mod management system was completely rehauled, and there is unfortunately no easy way to convert the mod files of the old system to the new system. Appologies for this, but the new system will dramatically reduce mod download errors.\n- If you are still getting the \"Your Arma 3 Egg is outdated and no longer supported\" error after updating the Egg, please toggle the \"Disable Verbose Logging\" startup variable on or off once for every server that is using this Egg. This is due to a small bug in the panel where default values for new variables are set to `null` instead of their defaults.\n- If you use a custom Arma3Profile file, **its location and name has changed**. You can move the contents of your old Arma3Profile to its new location at: `/home/container/.local/share/Arma 3 - Other Profiles/server/server.Arma3Profile`\n- The Startup Command has changed, but does not update across all your existing servers. Servers will still boot with their old Startup Command, but will not operate as intended. Servers will have to be manually updated to the new Startup Command via the Startup tab.\n\n#### Pterodactyl specific\n- Startup Variables have been completely re-hauled. While most existing variables have retained their Environment Variable names, some have been completely changed or removed. Simply updating your existing Egg with this Egg may lead to Startup Variables being terribly out of order and cluttered. Therefore, the following steps are recommended to avoid this:\n  1. Inform your end-users that some Startup Variable values may be lost and must be reconfigured.\n  2. Change the name of your existing Arma 3 Egg to \"Arma 3 (Old)\".\n  3. Import this updated Egg.\n  4. Make any Egg modifications you would like. (\\*see [Recommended Egg Modifications](#recommended-egg-modifications))\n  5. Change all existing Arma 3 servers to the new Egg via the Startup tab.\n  6. Delete the old Egg.\n"}