Goofy machine spitting out mumble jumble words and characters. White wall background. 50's cartoonic drawing style

How to translate DRE

Here are some points on how to translate DRE strings and keep a structure when building sentences 👇

 

In-app

This is the easiest way to edit single translations as you go is in the in-app editor.

It includes automatic translations from Google and DeepL to get you started and inspired.

 

DRE Localizations Google Sheet

To batch-edit translations, you can edit and comment the DRE Localization Google Sheet

 

Understand DRE grammar

Whether you use the in-app editor or batch-edit in the Google Sheet, you can learn more about the sentence structure and dynamic content below

 

Square Brackets

“he wore[ her;] [shoes;boots;hat]”

Square brackets [] contain optional/random content delimited by semicolons ;.

In the example above, “[ her;]” will either be ” her” or omitted (empty) at random.

“[shoes;boots;hat]” resolves to a random result between “shoes”, “boots” or “hat”.

To avoid duplicate adjacent spaces: Whenever a bracket is optional (ends with a ;) it’s advised to include a space before the content and remove any space before the bracket like shown in “he wore[ her;]” instead of “here wore [her;]”

 

Tags

“You need {INT:Laps} more”

Curly brackets {} define dynamic tags being resolved at runtime. Do not alter these and try to fit them in where grammatically correct.

 

“[Time’s up;Alarm triggered][ {{PlayerIdentifier}};]. It’s {0:HH mm}”

Double curly braces like {{PlayerIdentifier}} should be kept that way in case there are other single-curly braced tags like {0:HH mm}.

A parser takes care of resolved the single-curled {0….} style tags first and removes the double-curlys in that same go

 

“{DD:TireCompoundChanges:PLU:time}”

“{DD:TireCompoundChanges:PLU:gang:gange}”

Any curly bracketed tag that includes PLU means a word is pluralized based on a number, in this case the TireCompoundChanges. The tag may include just one word to be appended after the number like “time” having appended a “s” turning into “times” when != 1, or like in this instance for the Danish translation of “time” = “gang”, where it’s pluralized form is “gange”

 

“(Live:lɪv) to fight another day”

Parentheses define phonetic altered words with the structure (visual text:spoken text)

Use this when a localized spoken word is not the right one and you want to adapt it

 

“<{LEADER:Name}>”

Angle brackets <> are shown as “& lt ;” and “& gt ;” (without spaces) in text data – do not alter these

 

“{IFMC: in the class}”

IFMC denotes “if multiclass” and means when in a multiclass session, this tag will be included in the string. Therefore the tag content (“in the class”) should be translated, eg. to Italian: “{IFMC: della classe}”

 

Issue with tags and cloud translators

Pay extra attention to the number of brackets in the English variant and the suggestion by DeepL and Google. These two tend to add extra {{ which aren’t present in the original English string. You should remove any added brackets, so it matches what’s in the original English string.

 

Restructuring and Rewording

Feel free to move words, tags, etc. around in the sentences to match a natural speech in your language. Just make sure to keep the tags intact in their structure. This is one example of how it can be done:

  • {DD:PD} last driver swap happened on lap {DD:LapLastSwap}, {DDH:LapsSinceLastSwap} -> {DD:PD} Der letzte Fahrerwechsel fand in Runde {DD:LapLastSwap}, {DDH:LapsSinceLastSwap} start
  • {DD:SPBe} driving a {DD:CarScreenName} -> {DD:SPBe} fährt mit dem {DD:CarScreenName} (avoids the “a” which differs based on the CarScreenName)

 

Terminology

Use the Glossary in Google Sheet to learn more about the tags, modifiers, operators and conditionals.

Grammar Glossary for spoken alerts and commands

 

Context

If you need to know the context of a translation string, just demand it through the translation comment, or ask on DRE Discord:

Translation Context Comment

 

{LOC:…}

If you see something like this:

[[{LOC:YouHaveVariations}] ;;;;;;]

LOC: indicates a reference to another LOCalized string with the key of YouHaveVariations. You can search for this source in the translation editor to reveal what’s inside it.

The ;;;;;; simply add empty variations for DRE to choose between. In other words: The more semicolons present, the smaller chance it has at picking the content of YouHaveVariations.

The resolved string in this example would be:

[[You have;We have;You’ve;We’ve;We’ve got;We got;There’s] ;;;;;;]

 

Latest Updates from the blog

iRacing Control Profile Bindings

DRE reads the active saved iRacing profile for supported voice requests and optional controller actions, including changes you save during a session.

Smart Turn and Echo Cancellation

Introduced in 2026.4.0, Smart Turn and Acoustic Echo Cancellation handle natural pauses and speaker feedback more reliably, helping you finish voice commands and interrupt DRE while driving.

Your League Classes, Not the Sim’s

DRE 2026.3.0 brings your league’s Pro, Pro-Am, Am, and other custom classes into live race information, the roster, track map, and Analytics.

Braking Overlap Signal

DRE now catches brake + throttle overlap in braking zones and gives one short sound cue when it happens.

DRE 2026.2: Assetto Corsa Support, Braking Overlap Coaching, and Faster Startup

DRE v2026.2.0 adds full Assetto Corsa support, Braking Overlap coaching, adjustable pit speeding offsets, app keybind control, faster startup, and fixes.

DRE 2026.1 is live

DRE 2026.1 is live with pit stall location alerts before pitting, rollback installs when moving down release lanes, no Neural word caps, faster chat recall, and Turkish support.

DRE Now Supports Le Mans Ultimate

Le Mans Ultimate now works with DRE, bringing voice race engineering, spotter awareness, fuel guidance, and quick mid-race answers into LMU.

Speak with intents

Tired of memorizing exact voice commands? DRE’s new Neural and Hybrid recognition lets you speak naturally. Your race engineer just got a whole lot smarter.

Black Friday 2025 is here

Black Friday Sale: Save big on DRE subscriptions! New users get 50% off the first year, existing subscribers enjoy 25% off on renewals. Use codes: BFNEW2025 for new sign-ups, BFRENEW2025 for renewals. Act before Nov 30th!

DRE 2025.1 is now in beta

DRE 2025.1 beta is here, Read the quick run-down of the major features in this new release.

GET STARTED NOW WITH THE DRE

Email Email icon Discord Discord icon