The BalanceFlags DataTable is DDS1's master tuning table. It holds 62 entries
that the game reads at runtime via BlueprintHelpers::GetBalanceFlag(ID). Each entry has a
Bool (Enabled), Float (FloatValue),
Int (IntValue) and a Polish description (Notatka). If the engine asks for a flag that
doesn't exist, it logs "Flaga {ID} nie istnieje!!" and falls back to defaults (Enabled=true, Float=1.0, Int=0).
Datamined & Verified:
All 62 entries below were extracted directly from the game's BalanceFlags DataTable via the
DataTablePatcher list command operating on the 11 GB game pak. Values shown are the literal
floats and ints the runtime reads, not approximations.
Replaces older page:
An earlier version of this article listed several wrong values
(POLICE-SPAWN-RAND-TIMEOUT as 120 instead of 150; NEW-CLIENT-INTERVAL as 9–12 minutes instead of 6–9; DEALER-XP-PER-GRAM as 11
instead of 14; RESPECT-DROP-PS as 0.06 instead of 0.04; EDDIE-LIMIT-BASE / EDDIE-LIMIT-PER-LEVEL as 120 / +35 instead of 150 / +45;
GANG-ORDER-INTERVAL as 36000 instead of 24000) and inverted FIRST-LABS-COST-PERCENT. This page contains the verified runtime values.
Police & Detection (9 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| POLICE-SPAWN-CHANCE-LOW | true | 0.40 | 0 | Low–expo patrol spawn chance |
| POLICE-SPAWN-CHANCE-HI | true | 1.00 | 0 | High–expo patrol spawn chance |
| POLICE-SPAWN-RAND-TIMEOUT | true | 150.0 | 0 | Patrol spawn cooldown (seconds) |
| POLICE-PERCEPTION-MODIFIER | true | 1.00 | 0 | Police perception multiplier |
| POLICE-TASE-ENABLED | true | 0.0 | 0 | Police can use tasers |
| POLICE-ALWAYS-CHASE-ENABLED | false | 0.0 | 0 | Police always chase (disabled in vanilla) |
| CAMERAS-ALERT-RANGE | true | 10000.0 | 0 | Camera detection range in Unreal Units (~100 m) |
| CAMERAS-MAX-PATROLS-ALERT | true | 0.0 | 2 | Max patrols dispatched per camera alert |
| CAMERAS-POLICE-CHASE-ENABLED | true | 0.0 | 0 | Camera–triggered police chase enabled |
Client Economy (7 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| NEW-CLIENT-INTERVAL-MIN | true | 360.0 | 0 | Min seconds between new clients (6 min) |
| NEW-CLIENT-INTERVAL-MAX | true | 540.0 | 0 | Max seconds between new clients (9 min) |
| CLIENT-ORDER-INTERVAL-MIN | true | 360.0 | 0 | Min seconds between client orders (6 min) |
| CLIENT-ORDER-INTERVAL-MAX | true | 600.0 | 0 | Max seconds between client orders (10 min) |
| CLIENT-ORDER-INTERVAL-MULTIPLIER | true | 1.42 | 0 | Global order interval scaling |
| WEEKEND-ORDER-QUANTITY-MULTIPLIER | true | 2.00 | 0 | Weekend order size 2× |
| WEEKEND-ORDER-ORDER-INTERVAL-MULTIPLIER | true | 1.25 | 0 | Weekend order frequency +25% |
Dealer System (9 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| DEALER-CRIT-CHANCE-BASE | true | 0.07 | 0 | Base 7% crit order chance |
| DEALER-CRIT-CHANCE-WEEKEND-MULTIPLIER | true | 1.50 | 0 | Weekend crit chance +50% |
| DEALER-CRIT-CHANGE-LEVEL-INCREASE | true | 0.015 | 0 | +1.5% crit chance per dealer level |
| DEALER-XP-PER-GRAM | true | 14.0 | 0 | Dealer XP awarded per gram sold |
| DEALER-XP-LEVEL-RATIO | true | 225.0 | 0 | Triangular level curve divisor |
| DEALER-MAX-LEVEL | true | 0.0 | 10 | Max dealer level (per client) |
| DEALER-ORDER-INTERVAL-MULTIPLIER | true | 0.75 | 0 | Dealers order 25% faster than clients |
| DEALER-CASH-DELIVERY-INTERVAL-MULTIPLIER | true | 1.10 | 0 | Cash collection 10% slower |
| DEALER-TRAIN-DISCOUNT-PERLEVEL | true | 50.0 | 0 | $50 training discount per dealer level |
Crit Orders (4 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| CRIT-ORDER-QUANTITY-MULTIPLIER-MIN | true | 1.50 | 0 | Crit order quantity min multiplier |
| CRIT-ORDER-QUANTITY-MULTIPLIER-MAX | true | 2.50 | 0 | Crit order quantity max multiplier |
| CRIT-QUAN-MULTIPLIER-MIN | true | 0.55 | 0 | Crit quantity floor multiplier |
| CRIT-QUAN-MULTIPLIER-MAX | true | 1.50 | 0 | Crit quantity ceiling multiplier |
Exposition & Heat (5 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| EXPO-BASE-INACTIVITY-MEDIANE | true | 6.00 | 0 | Base weighted–average denominator (idle baseline) |
| EXPO-SALE-EFFECT | true | 0.80 | 15 | Float = sale heat normalization; Int = weight in weighted avg |
| EXPO-NIGHT-SALE-MULTIPLIER | true | 0.70 | 0 | Night sales generate 70% heat (30% less) |
| EXPO-NIGHT-EVENT-MULTIPLIER | true | 0.60 | 0 | Night events generate 60% heat (40% less) |
| RESPECT-DROP-PS | true | 0.04 | 0 | Respect (reputation) decay per second |
Cash & Laundering (3 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| CASH-INTRODUCE-ATM | true | 0.0 | 600 | ATM/bank unlocks after $600 lifetime earned |
| CASH-ILLEGAL-MAX | true | 2500.0 | 0 | Max dirty cash before laundering pressure rises |
| CASH-INTRODUCE-LAUNDERING | true | 0.0 | 1000 | Laundering unlocks after $1000 lifetime earned |
Gang Orders (8 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| GANG-ORDER-INTERVAL | true | 24000.0 | 0 | Base gang order interval (seconds) |
| GANG-INTERVAL-MAX-DROP | true | 0.30 | 0 | Max gang interval reduction (30%) |
| GANG-BALLENA-ORDER-MIN | true | 0.0 | 8 | Min Ballena order (grams) |
| GANG-BALLENA-ORDER-MAX | true | 0.0 | 25 | Max Ballena order (grams) |
| GANG-KEIJI-ORDER-MIN | true | 0.0 | 20 | Min Keiji order (grams) |
| GANG-KEIJI-ORDER-MAX | true | 0.0 | 110 | Max Keiji order (grams) |
| GANG-MAX-LEVEL | true | 0.0 | 10 | Max gang relationship level |
| GANG-REP-PER-DELIVERY | true | 80.0 | 0 | Base reputation per successful delivery |
Eddie (Drug Supplier) (2 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| EDDIE-LIMIT-BASE | true | 150.0 | 0 | Base Eddie order limit ($) |
| EDDIE-LIMIT-PER-LEVEL | true | 45.0 | 0 | +$45 limit added per player level |
Eddie limit formula:
limit = EDDIE-LIMIT-BASE + EDDIE-LIMIT-PER-LEVEL × playerLevel.
Level 1 = $195, Level 10 = $600, Level 20 = $1050, Level 30 = $1500.
Lab System (8 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| LAB-GLOBAL-SPEED-MULTIPLIER | true | 1.00 | 0 | Global lab processing speed |
| LAB-GLOBAL-QUAN-MULTIPLIER | true | 1.00 | 0 | Global lab output quantity |
| LAB-CREW-TRAIN-COST | true | 1000.0 | 0 | Lab crew training cost ($) |
| LABCREW-XP-PER-GRAM | true | 2.00 | 0 | Lab crew XP per gram processed |
| LABCREW-MAX-LEVEL-BONUS | true | 0.30 | 0 | Max lab crew level output bonus (+30%) |
| LAB-CONVERT-COST-PERCENT | true | 0.50 | 0 | Conversion cost = 50% of drug value |
| FIRST-LABS-COST-PERCENT | true | 0.25 | 0 | First lab costs 25% of normal price (75% discount) |
| LAB-REMOVE-RETURN-PERCENT | true | 0.50 | 0 | Lab removal refund (50% of lab cost) |
Villa System (2 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| VILLA-PRICES-GLOBAL-MULTIPLIER | true | 1.00 | 0 | Villa price global multiplier |
| VILLA-BUILD-TIME-MULTIPLIER | true | 1.00 | 0 | Villa build time global multiplier |
Miscellaneous (5 flags)
| Flag ID |
Bool |
Float |
Int |
Description |
| KEY-PRICE-FACTORY | true | 0.0 | 1000 | Factory key costs $1,000 |
| SMUGGLE-BOX-PRICE | true | 0.0 | 200 | Smuggle box costs $200 |
| GSM-MESSAGE-TIMER-MIN | true | 180.0 | 0 | Min GSM message interval (3 min) |
| GSM-MESSAGE-TIMER-MAX | true | 300.0 | 0 | Max GSM message interval (5 min) |
| SHOW-VISIBILITY-DEBUG | false | 0.0 | 0 | Developer debug visibility display (disabled) |
Summary
Total Entries
62 flags
Across 11 categories
Enabled by Default
60 / 62
2 disabled: POLICE-ALWAYS-CHASE-ENABLED & SHOW-VISIBILITY-DEBUG
Source DataTable
BalanceFlags
/Game/DataTables/BalanceFlags.uasset
Accessor Function
GetBalanceFlag()
BlueprintHelpers_C
Datamined from BalanceFlags DataTable in the DDS1 game pak. All 62 entries verified via DataTablePatcher list.
Last updated May 2026.