DRT scans files to find datarefs. This might not work if your dataref is in an encrypted Lua file or something, so you have several options:
DRT reads every dataref published by every aircraft and plugin, on every frame of the simulation. Sometimes, they haven't fully been debugged, and may crash. (If you're a developer, the best way to do this is to run X-Plane in a debugger and look at the backtrace of the crash- if you see RefRecords::update() in the backtrace, this is likely what happened.)
If you can figure out which dataref caused the crash, the best way to work around this is to add the name of the dataref to a file called X-Plane 11/Resources/plugins/drt_ignore.txt
. This will cause DRT to never read the value of the dataref, even if it does come up in search results.
If you're flying the Bell 407, there is a known issue with this aircraft where reading some datarefs triggers an immediate crash. To work around this, create a file called X-Plane 11/Resources/plugins/drt_ignore.txt
, and add the following lines to the file:
B407/Lights/CL1
B407/Lights/CL2
B407/Lights/CL3
The Bell 407 problem is being tracked in issue #33 in this repository.
DRT reads datarefs every frame in order to detect changes to values. This takes time; moreover, it takes time for other plugins and for X-Plane to compute the dataref values (which is what actually takes most of the time). It takes CPU time to actually do what DRT does; this is why you're losing FPS.
Here are the best ways to make sure that DRT is having the smallest impact on your FPS:
Close all DRT windows when you aren't using them. DRT does stop reading datarefs completely when all windows are closed; you should not lose any FPS at all when all windows are closed.
Ignore datarefs from other plugins that are slow to read. You can do this buy creating a file called X-Plane 11/Resources/Plugins/drt_ignore.txt
, and list the datarefs you want to ignore there. In X-Plane 11, I'd recommend adding these slow datarefs to the ignore file:
sim/airfoils/afl_cd
sim/airfoils/afl_cm
sim/airfoils/afl_cl
To identify datarefs that are slow to read, use a CPU profiler (I use X-Code Instruments).
Buy a faster CPU! :-) DRT is written in a highly optimized and efficient manner; however, it does a lot of work, and that work takes CPU time.