Download Play DO O M for MetaTrader 5

Play DO O M

Play DO O M

This tool for MetaTrader 5 is specifically engineered to streamline your trading operations. This Expert Advisor serves as automated trading software. It is utilized to monitor financial markets and execute trades based on predefined algorithmic rules, enabling precise position management without the need for constant manual oversight.

MT5 expert Pack 📂

How to Setup and Use Play DO O M

1. Installation: Open the "File" menu, select "Open Data Folder," navigate to MQL/Experts, paste your file, and restart the terminal.

2. Activation: Drag the EA from the Navigator onto a chart, ensure "Allow live trading" is checked in the Common tab, and verify the AutoTrading button is green.

3. Optimization: Right-click your chart, choose "Expert List," click "Properties" to adjust inputs, and save your preferred setup as a set file for future use.

4. Maintenance: Regularly check the "Experts" tab in the terminal window to monitor trade logs and potential execution errors.

Frequently Asked Questions

Q: Why is my EA not opening trades? A: Check the "AutoTrading" button, ensure "Allow live trading" is enabled, and verify your broker allows automated trading on your account type.

Q: Can I run multiple EAs on one chart? A: No, each chart can only host one active EA; however, you can open multiple charts for different currency pairs to run several EAs.

Q: What does the "smiley face" icon mean? A: A smiley face in the top-right corner of the chart indicates the EA is successfully running; a frowny face means it is disabled.

Description & Settings


This Expert Advisor runs the original DOOM (1993) inside MetaTrader 5's chart window. The game renders directly onto the chart using with a bitmap label and , while keyboard input is captured via and forwarded to the DOOM engine running inside a custom DLL.
IMPORTANT — Read Before Use:
The DoomEA.mq5 file alone will NOT run the game. You
must
download the
MQL5.zip
file attached to this publication. This zip contains the precompiled DLL (doomlib.dll), the DOOM shareware WAD file (doom1.wad), the full DLL source code, and build instructions. Without these files properly deployed, the EA will fail to initialize.
How It Works
The project has two components. The first is a Windows DLL that wraps the engine — a single-header, zero-dependency, pure C source port of DOOM designed to run on any platform. The DLL runs the game loop on a background thread, maintains a double-buffered framebuffer, and exposes simple exported functions for initialization, framebuffer retrieval, and key input. The second component is the MQL5 Expert Advisor, which calls the DLL every ~33ms via , copies the DOOM framebuffer (320x200 ARGB pixels) into a bitmap resource on the chart, and forwards keyboard events from the chart to the engine.
Since MQL5 does not provide CHARTEVENT_KEYUP events, key releases are detected by polling
GetAsyncKeyState
from user32.dll on each timer tick — a well-known workaround in the MQL5 community. The game runs at a smooth ~30 FPS, which matches DOOM's original 35hz tick rate closely.
Setup Instructions
Follow these steps carefully to get DOOM running on your chart:

Download MQL5.zip
from the files attached to this publication.

Extract the zip. Inside you will find:
Libraries\doomlib.dll
,
Experts
\
Doom\doom1.wad
and the "For Devs" source code folder.
Ignore this folder
if you are
not
a developer.

Copy
doomlib.dll
to your terminal's
MQL5\Libraries\
folder.

Create a folder called
Doom
inside
MQL5\Experts\
and copy
doom1.wad
into it.

Compile
DoomEA.mq5
in MetaEditor.

Attach the EA to any chart. In the EA settings dialog, check
"Allow DLL imports"
.

The DOOM title screen should appear on the chart. Press Enter to start a new game.
DLL Imports Required:
This EA requires DLL imports to be enabled. The DLL is open source — full C source code and CMakeLists.txt build configuration are included in MQL5.zip so you can inspect and compile the DLL yourself if you prefer not to use the precompiled binary. Building requires CMake and a C compiler (Visual Studio or MinGW).
Controls Technical Details

Engine:
PureDOOM — a single-header C port of the original DOOM source code (id Software, 1993). No external dependencies.

Rendering:
The DLL provides a 320x200 ARGB framebuffer each frame. The EA writes it to a chart bitmap object via ResourceCreate with COLOR_FORMAT_ARGB_NORMALIZE.

Threading:
The DOOM game loop runs on a dedicated background thread inside the DLL. Double buffering with CRITICAL_SECTION synchronization ensures the EA can safely read the framebuffer at any time.

Input:
Keyboard events are captured in OnChartEvent (key-down) and polled via GetAsyncKeyState from user32.dll (key-up). A ring buffer inside the DLL queues input events for the game thread. Files
Reminder:
You MUST download
MQL5.zip
below. The EA requires doomlib.dll in your Libraries folder and doom1.wad in your Experts\Doom folder. Without these, the EA will not function. The full DLL source code is included for transparency.

You May Also Like

RobotFX does not own any of the code provided on this platform. All tools are freely available on the internet; we simply index and re-offer them for download. We are not responsible for any financial losses that may occur. Trading responsibilities rely solely on the traders downloading and using the displayed Expert Advisors, indicators, and scripts. These tools are provided for educational purposes only and may require modification or optimization to align with a trader's specific strategy or needs.
© ROBOTFX - Best MetaTrader Expert Advisors & Indicators