Console

Client Deployment Instruction

Preparation

After ACE SDK is integrated into the game, the following 2 requirements must be fulfill to enable the game to have actual anti-cheat ability:

  1. The process that integrates ACE SDK has administrator privileges;
  2. The EXE file that integrates ACE SDK has been hardened and the output files is deployed properly, see next section.

Before hardening, please make sure that the target EXE (i.e. the EXE that integrates ACE SDK) has enabled the administrator privilege requiring, which can be enabled by adding manifest configuration or setting linker parameters (only C++) when generating EXE.

Hardening and Releasing

Upon the official release of the client, utilize the shelling tool to obtain the release package. This package will include the AntiCheatExpert directory for release, which should be distributed alongside the exe and dll files generated after shelling.

Note: Do not distribute the AntiCheatExpert directory found in the SDK package, nor the ACEChecker directory which is intended for testing.

Installation

Upon the first launch of the client with the integrated ACE SDK, the ACE components will be automatically installed onto the system partition, alongside the Windows services and drivers. (A client without hardening does not install ACE components)

The following descriptions detail the files and directories that ACE installs onto the system partition (assuming the C drive is the system partition):

Directory/Files Function
C:\Program Files\AntiCheatExpert ACE primary installation path
C:\Windows\System32\drivers\ACE-*.sys ACE driver files
C:\ProgramData\AntiCheatExpert ACE configuration path

The service name for the ACE installed into the operating system is: AntiCheatExpert Protection , with the corresponding service program file as: C:\Program Files\AntiCheatExpert\ACE-Service64.exe.

The service name for the driver installed by ACE is: ACE-Base , and the relative driver file is C:\Windows\System32\drivers\ACE-Base.sys.

ACE will store some configuration information in the system registry.

Additionally, ACE also contains a solution named ACE-Boot, which allows ACE's kernel module to be automatically loaded when the operating system starts to monitor cheating software that may be launched before the game starts. This solution is disabled by default. If you need to enable it, please contact the ACE team.

Running

During runtime, ACE relies on DLL components ( ACE-Base64.dll , etc.), service processes ( ACE-Service64.exe ) installed in the system, and driver components ( ACE-Base.sys , etc.) to collectively ensure the game's security.

Due to the uniqueness of the service and driver, only one instance of the game with ACE integrated is allowed to run at the same time.

Exiting

Within 10 seconds after the protected game process has exited, ACE's service processes and driver components will also terminate. ACE's in-game components exit simultaneously with the process exit.

Uninstallation

ACE provides an automated procedure for uninstalling ACE components from the system partition.

Upon uninstalling the game, call ACE-Setup64.exe in AntiCheatExpert of the game directory with administrator privileges to execute the ACE component removal. Utilize the following command line for uninstallation:

ACE-Setup64.exe -q

This command will silently remove ACE-related files from the system partition, delete system services, uninstall drivers, and clean the related registry entries. A successful uninstallation will result in an exit code of 0.

Users may also double-click the Uninstaller.exe in the ACE installation directory of the system partition or the ACE-Setup64.exe in the game directory in Explorer to perform the uninstallation. An interactive dialog box will appear, prompting users to confirm the uninstallation operation.*

Note: If the game decides to end the integration of ACE, it needs to actively call the uninstaller to uninstall ACE from the user's system, or guide the user to uninstall it.

FAQ

Q1: What happens if the hardened EXE is not run with administrator privileges?

When the game is started, ACE-Setup64.exe will pop up a UAC box and ask the user to click. If the user clicks "No", ACE will pop up a box to prompt the user and exit the game; even if the user clicks "Yes", ACE can only run in a restricted state. Therefore, please make sure to add the configuration for requesting administrator privileges when generating the EXE.

Q2: What if multiple games using ACE run simultaneously?

Since only one instance of ACE driver components can run at a time, the latter launched game will examine the ACE component version used by the currently running game and compare it to its own ACE component version. If the version difference is significant, a pop-up box will prompt the user to close the other game before running the new game.

Q3: With multiple games sharing the same service and driver components, is there a risk of sensitive data leakage?

No, each game's data is reported independently.

Q4: Can the uninstallation process fail?

Yes, uninstallation failure usually occurs when an ACE-integrated game is currently running. If the uninstallation continually fails, advise the user to reboot the system and try again.

Q5: What happens during the uninstallation of a game using ACE if multiple games are installed on the user's computer?

If more than one game integrating ACE is installed on the computer and no game is currently running, the uninstaller will still carry out a full uninstallation. However, other games won't be affected, as any game with ACE integration will assess if ACE is already installed in the current environment at startup and attempt to reinstall it if it's not.

Q6: If users uninstall ACE by running ACE-Setup64.exe themselves, will the game still run normally?

Yes, please refer to the answer for Q5.

Copyright © 1998 - 2026 Anti-Cheat Expert. All Rights Reserved.
chat-icon
1
Hi there! Welcome to Anti-Cheat Expert. We provide industry-leading security solutions for games. To best assist you, could you tell me what brought you here today?🤔