The DEA raid system in Drug Dealer Simulator 1 is driven by your exposition factor level
(heat), the game's difficulty setting, and how often you visit each apartment. The numbers on this page
come straight from the decompiled statisticsManager_C.adaptDifficulty and
deaRaidManager_C bytecode — not from community guesswork.
Datamined & Verified: All values on this page are pulled from the game's Blueprint Kismet bytecode using UAssetAPI. Earlier versions of this guide used hardcoded constants that turned out to be Normal-difficulty values quoted without the difficulty context. The table below shows the real per-difficulty scaling.
🔎 How DEA Observation Works
DEA agents do not raid apartments randomly. They observe one (or more) of your apartments based on how much heat you have generated and how often you have visited the apartment in question.
- Heat threshold — observation can only begin once your
expoFactorLevelreaches the difficulty-specificexpoLevelDEA_startvalue. - Target selection — on Normal/Hard the DEA picks the apartment with the most visits (
areaVisits). On Hardcore every eligible apartment is observed simultaneously. - Observation interval — once selected, an internal timer counts up to
deaObservationIntervalseconds. While the timer runs, repeated drug activity at that apartment increases raid probability. - Raid roll — when the timer expires the game rolls for a raid using
deaChanceMultiplier. If it fires, you get the in-game warning and the raid begins.
areaDEAobserved. Buying an apartment outright
(areaForever) removes it from the observation pool entirely.
🎯 Difficulty Scaling (Real Values)
Every value in this table is read straight from statisticsManager_C.adaptDifficulty.
Hard and Hardcore share identical scalar parameters — the difference is that Hardcore observes all
eligible apartments at once while Normal/Hard observe only one.
| Parameter | Easy | Normal | Hard | Hardcore |
|---|---|---|---|---|
expoLevelDEA_startHeat needed for DEA to start watching |
600.0 | 500.0 | 400.0 | 400.0 |
deaObservationIntervalSeconds in the observation window |
3200 | 1600 | 1300 | 1300 |
deaChanceMultiplierRaid roll multiplier at end of interval |
0.55 | 0.65 | 0.80 | 0.80 |
expoFactorDropRatePSHeat decay per second (continuous) |
0.18 | 0.13 | 0.10 | 0.10 |
expoFactorMinFloor — heat never decays below this |
35.0 | 50.0 | 80.0 | 80.0 |
ExpoFactorMultiplierGlobal heat scaling factor |
0.70 | 1.00 | 1.20 | 1.20 |
🔌 Heat Decay (Continuous)
Your exposition factor drains continuously toward expoFactorMin
(the floor for your difficulty) at the rate of expoFactorDropRatePS per second.
It is not a "one-tick-per-second integer drain" — it is a real-valued continuous deduction.
| Difficulty | Drop / sec | Drop / minute | Floor (min heat) |
|---|---|---|---|
| Easy | 0.18 | 10.8 | 35.0 |
| Normal | 0.13 | 7.8 | 50.0 |
| Hard | 0.10 | 6.0 | 80.0 |
| Hardcore | 0.10 | 6.0 | 80.0 |
500.0 heat (DEA start threshold on Normal), passive decay to the floor takes
roughly 57 minutes of real time on Normal, 70 minutes on Hard,
and 43 minutes on Easy. The decay is multiplied by ExpoFactorMultiplier
when reading the final clamped level — on Hard your effective heat reads 20% higher than the raw factor.
🔥 What Builds Heat
Heat (exposition factor) is the weighted average of recent sales and events. Activity older than 200 timecodes is pruned from the running average.
- Drug sales contribute heat via
calcSaleExposure(): baseClamp(50 + qty*10, 60, 200); multiplied by 1.2 between 9 PM and 6 AM (theEXPO-NIGHT-SALE-MULTIPLIERBalanceFlag). - Events read from the
ExpoEventDatabaseDataTable. Each event has anExpoEventValueand a weight (ExpoEventMedianePoints). - Sample handouts fire the
CLIENT-SAMPLEevent for +500 expo. Yes — samples add heat, even though the rest of the sample system is positive. - Base inactivity contributes via
EXPO-BASE-INACTIVITY-MEDIANE— a small constant that prevents the running average from collapsing too fast when you stop selling.
🛡 Surviving an Active Raid
Once the raid actually fires, you have a fixed countdown to either get out, hide the evidence, or
accept the consequences. The countdown is driven by deaRaidManager_C.
🎯 Strategy
- Rotate apartments. The DEA targets the most-visited apartment on Normal/Hard. Spreading visits across multiple safehouses spreads the risk.
- Buy outright when you can. An
areaForeverapartment is removed from the observation pool. Permanent ownership = permanent exemption. - Avoid night sales when hot. The 1.2× night multiplier compounds with already-elevated heat. Run daytime routes whenever your exposition factor is above the DEA start threshold.
- Watch the heat floor. On Hard/Hardcore your
expoFactorMinis 80, which means even after long inactivity you sit near the DEA-trigger range. Easy lets you decay all the way down to 35. - Hardcore is different. On Hardcore every eligible apartment is observed simultaneously. Rotating apartments stops being a defensive strategy — only buying them outright or keeping heat low works.
Datamined from statisticsManager_C.adaptDifficulty, deaRaidManager_C,
rentAppartmentArea_C, and policeManager_C Kismet bytecode using UAssetAPI.
Last updated May 2026.
💬 Discussion