Before anything else: install with the Full Installer from the Download page, keep the game out of C:\Program Files, run Play XileRetro.exe, Setup.exe and xile.exe as administrator, and let your antivirus allow the folder. Most of the errors below disappear once those four things are true.
Cannot init d3d OR grf file has problem

The client could not start Direct3D. Despite the wording it is almost always the graphics setting, not a broken GRF.
Open Setup.exe in your XileRetro folder (right click, Run as administrator).
Under Graphics Device, pick the entry that ends in [dgVoodoo TnL HAL].
Set Resolution to something your monitor supports, 1024 x 768 x 32 is a safe start. The client cannot go above 2048 x 1536 because it is built on DirectX 7.
Click Apply, then OK, and start the game from Play XileRetro.exe.

Still failing? Tick Disable hardware-accelerated graphics in the same window, and make sure your monitor's own resolution is 2048 x 1536 or lower. If the error mentions a GRF by name, patch again through Play XileRetro.exe; if it repeats, reinstall with the Full Installer.
Optimal dgVoodoo settings
XileRetro ships with dgVoodoo, the wrapper that lets this DirectX 7 client run on modern Windows. Open dgVoodooCpl.exe in your XileRetro folder and match the three tabs below. These are the settings the client is happiest with; the defaults usually work, but this is what to set when the game will not start, flickers, or runs in the wrong size.
Prefer to watch? The same setup step by step: dgVoodoo settings video
Setting up dgVoodoo for XileRetro
Ready-made files
Rather not click through the tabs? This zip has the wrapper and the finished settings. Copy all of it into your XileRetro folder, the one with xile.exe and data.grf, replacing the files it asks about, then set the Graphics Device in Setup.exe to the [dgVoodoo TnL HAL] entry.

Some antivirus software flags dgVoodooCpl.exe. It is the official dgVoodoo control panel and it is safe, but you only need it to change settings: the two DLLs and dgVoodoo.conf are what the game actually uses, so you can delete the control panel if you prefer.
Check the Config folder / Running instance box at the top first: it must point at your XileRetro folder, the one holding xile.exe. Click OK when you are done, not just Apply, so the settings are written to dgVoodoo.conf.
General

- Output API: Best available one
- Adapter(s) to use: All of them, Full Screen Output: Default
- Appearance: Windowed (pick Full Screen only if you play fullscreen), Scaling mode: Unspecified
- Brightness / Color / Contrast: 100% / Norm / 100%
- Tick Keep window aspect ratio and Capture mouse. Leave Progressive scanline order, Enumerate refresh rates and Center app window unticked.
Glide

- 3Dfx card: Voodoo 2 (8MB/12MB, 2 TMUs), Onboard RAM: 8 MB
- Memory size / TMU: 4096 kB, Number of TMUs: 2
- Filtering: App driven, Resolution: Unforced, Antialiasing (MSAA): App driven
- Tick Enable Glide Gamma Ramp. Leave the rest unticked.
DirectX

- Disable and passthru to real DirectX: unticked. This is the important one; ticking it hands the client back to your real driver and brings back the
Cannot init d3derror on most machines. - Videocard: dgVoodoo Virtual 3D Accelerated Card, VRAM: 256 MB
- Filtering and Mipmapping: App driven, Resolution: Unforced, Antialiasing (MSAA): App driven
- Tick Application controlled fullscreen/windowed state and Disable Alt-Enter to toggle screen state.
- Leave Bilinear DD/CPU operations, Force vSync, Fast video memory access, Phong shading and the dgVoodoo Watermark unticked. The watermark only adds a logo in the corner of the game.
After saving, open Setup.exe and confirm the Graphics Device still ends in [dgVoodoo TnL HAL], then start the game.
The game opens in a tiny window
Same window, different setting: open Setup.exe, choose a larger Resolution, tick Play in Full Screen if you want fullscreen, then Apply.
If Setup refuses to save the resolution, edit dinput.ini in the game folder with Notepad and set a resolution divisible by 4:
WindowWidth =1024
WindowHeight =768
mfc110.dll, msvcp110.dll or msvcr110.dll is missing
The client needs the Visual C++ 2012 runtime.
- Install Visual C++ Redistributable for Visual Studio 2012 Update 4.
- Install the x86 (32-bit) version first, it is the one the client uses. Add x64 only if the error continues.
- For
MSVCP120.dllinstall the 2013 redistributable, and forMSVCP140.dllorapi-ms-win-crt-runtime-l1-1-0.dllinstall the 2015 to 2022 redistributable.
DirectX errors, missing d3dx9 files
Install the DirectX End-User Runtime, then restart the computer. Windows 10 and 11 ship with DirectX 12, but this client needs the older DirectX 9 files that the runtime adds.
Your game executable has been modified or is not the latest version
Run the patcher as administrator. Right click Play XileRetro.exe in your XileRetro folder, choose Run as administrator, and let it finish. Without it the patcher is not allowed to replace xile.exe, so the old file stays behind and the server keeps rejecting it.

Play XileRetro.exe, then Run as administratorIf you still get an error, close xile.exe first. A running game holds the file open and the patcher cannot overwrite it. Close every XileRetro window, check Task Manager for a leftover xile.exe, end it, then patch again.
Still failing?
- Add the whole XileRetro folder to your antivirus exclusions, then patch again. Antivirus software often deletes part of a patch while it downloads.
- Keep the game out of
C:\Program Files; Windows blocks writes there even for an administrator.
The patcher opens but Start Game does nothing
Right click xile.exe, open Properties, then the Compatibility tab, tick Run this program in compatibility mode for Windows XP (Service Pack 3) and Run this program as administrator, click Apply. Start the game from the patcher again.

xile.exe in your XileRetro folder, Properties, Compatibility, then tick Run this program as administrator and ApplyTicking it in Properties makes the setting stick, so the game starts elevated every time rather than only when you remember to right click it.
Still stuck?
- The full list of fixes is on the Troubleshooting page.
- Ask in the #support channel on Discord and include a screenshot of the error, your Windows version and what you already tried.