-
Notifications
You must be signed in to change notification settings - Fork 3
Configuration Reference
Static configuration lives in lua/ge/extensions/taxiDriver/config.lua. Values are loaded once by the main GE extension. Runtime state does not belong in this module.
en, de, fr, es, it, pl, uk, ru, zh-CN
| Key | Value | Unit / meaning |
|---|---|---|
minRideDistance |
1,000 | metres |
maxRideDistance |
25,000 | metres |
minPickupDistance |
400 | metres |
maxPickupDistance |
3,500 | metres |
arrivalRadius |
14 | metres |
maxArrivalSpeedKmh |
4 | km/h |
averageCitySpeedKmh |
40 | ETA reference speed |
minimumDrivability |
0.7 | route/road cutoff |
hudUpdateInterval |
0.2 | real seconds |
boardingDuration |
3 | simulation seconds |
alightingDuration |
3 | simulation seconds |
completedDuration |
4 | simulation seconds |
stopWaitingDuration |
10 | simulation seconds |
forcedExitDuration |
5 | simulation seconds |
| Setting | Default | Range |
|---|---|---|
uiScalePercent |
100% | 80–180% in 10% steps |
appVolume |
0.65 | 0–1 |
dynamicZoomIntensity |
100% | 0–200% |
overspeedWarningKmh |
10 km/h | 0–30 km/h |
economyMultiplier |
1.00× | 0.25–5.00× |
deliveryOrderSharePercent |
50% | 0–100% |
unlimitedRouteDistance |
false | Boolean; removes the 25 km upper bound |
aiDriver.aggressionPercent |
40% | 30–100% |
aiDriver.followingTimeGap |
2.3 s | 1–4 s |
aiDriver.minimumFollowingDistance |
4 m | 2–10 m |
aiDriver.brakingDeceleration |
3.5 m/s² | 2–8 m/s² |
aiDriver.trafficWaitSeconds |
3 s | 1–10 s |
aiDriver.preset |
balanced |
novice, cautious, balanced, assertive, racer, custom
|
aiDriver.obeySpeedLimits |
true | Boolean |
aiDriver.laneDiscipline |
true | Boolean |
aiDriver.strictGpsRoute |
false | Boolean; independent from the preset |
aiDebugLogging |
false | Boolean; streams dedicated AI JSONL diagnostics |
randomEvents.<event>.enabled |
Event-specific | Boolean |
randomEvents.<event>.chancePercent |
Event-specific | 0–100% |
randomEvents.policeCheck.preloadConfirmed |
false | Must be true before police preload is allowed |
fleet.enabled |
true | Boolean |
fleet.aiPreset |
standard |
careful, standard, or fast
|
fleet.ownerSharePercent |
35% | 10–90% |
fleet.hiringFee |
$75 | $0–1,000 |
fleet.wagePerTenMinutes |
$12 | $0–250 |
fleet.maxDrivers |
6 | 1–12 |
fleet.worldLabelDistance |
400 m | 50–1,000 m in 50 m steps |
fleet.minimumJobDistanceKm |
1.5 km | 0.5–20 km |
fleet.maximumJobDistanceKm |
8 km | minimum–50 km |
fleet.passengerJobs / deliveryJobs
|
true / true | At least one remains enabled |
externalMapEnabled |
true | Boolean |
externalTerrainEnabled |
true | Boolean |
externalMapQuality |
balanced |
eco, balanced, or smooth
|
godMode |
false | Boolean |
debugLogging |
true | Boolean |
routePlanner.isDistanceAllowed() receives no maximum when unlimited routes are enabled. Minimum passenger/delivery distances and drivability checks are unchanged.
The native adapter has a small set of fixed safety rules:
| Value | Current behavior |
|---|---|
| Player observer interval | 100 ms |
| Curved-path samples | 12 |
| Observer jerk limit | 2.5 m/s³ |
| Emergency threshold | TTC below 0.55 s or required deceleration at least 8.5 m/s² |
| Pickup radius | 7 m plus complete stop |
Premature Route Done retries |
3 |
| Horn sequence | 600 ms on, 200 ms off, 600 ms on |
The old predictive planner, local spatial graph, custom bypass, reverse escape and world visualization constants are retained only in historical release notes and are not part of the active 3.4.2 RC runtime. See AI Driver and Recovery.
Fleet workers use fixed profiles rather than the player's six-profile/Custom editor. They apply only native aggression/legal-speed values and the following/braking values used by the reduced-rate traffic guard.
| Preset | Native aggression | Native speed mode | Effective no-progress window | Replans |
|---|---|---|---|---|
careful |
20% | Legal | 45 s minimum | 3 |
standard |
30% | Legal | 45 s minimum | 3 |
fast |
52% | Unrestricted | 45 s minimum | 3 |
All Fleet workers use native avoidCars="on", driveInLane="on", recover-on-crash, and enabled electrics. Traffic observation runs every 200 ms with six curved-path samples. Route monitoring runs every 250 ms with per-worker phase offsets. A retry starts from the current closest road segment, and an assignment is abandoned after the bounded retry budget.
See Fleet Operations for hiring, wages, assignments, persistence, and worker lifetime.
| Key | Value | Meaning |
|---|---|---|
initialDelay |
1.5 s | Delay before first generation job |
intervalMin / intervalMax
|
1.2 / 2.2 s | Delay between completed offers |
generationStepInterval |
0.02 s | Cooldown between coroutine resumes |
semanticScanBatchSize |
6 | Objects processed before yielding |
semanticCandidateAttempts |
40 | Bounded semantic candidates per stop search |
randomRouteAttempts |
24 | Bounded graph-derived fallback attempts |
semanticLongitudinalJitterMax |
70 m | Maximum variation along a semantic road segment |
randomDistanceExponent |
1.15 | Random route-distance distribution |
recentStopLimit |
48 | Remembered roadside points |
recentStopSeparation |
150 m | Preferred separation from recent points |
routeDiversityMinimumShare |
0.65 | Pool share requiring strict endpoint diversity |
routeDiversityAttempts |
3 | Candidate routes checked per normal offer |
routeDiversityCellSize |
400 m | Spatial route-history cell size |
routeDiversityEndpointSeparation |
280 m | Minimum endpoint separation under strict checks |
recentRouteLimit |
20 | Remembered accepted/generated route pairs |
minVisible / maxVisible
|
10 / 12 | Dispatcher pool target |
nextOfferDuration |
5 s | Floating offer lifetime |
nextOfferRetryMin / Max
|
5 / 10 s | Retry after expiry/failure |
nextOfferProgressThreshold |
0.80 | Route progress required for floating offers |
pickupTimeMultiplier |
1.35 | Pickup ETA multiplier |
pickupTimeGraceSeconds |
60 s | Added pickup grace |
pickupTimeMinSeconds / Max
|
120 / 600 s | Pickup budget clamp |
multiStopChance |
0.24 | Random unplanned type chance |
multiStopVisibleMin / Max
|
2 / 3 | Requested pool composition |
rushVisibleMin / Max
|
2 / 4 | Requested pool composition |
multiStopCountMin / Max
|
2 / 2 | Intermediate stop count |
multiStopMinimumCandidates |
20 | Semantic candidates required |
multiStopSegmentMin / Max
|
3,000 / 7,000 m | Normal leg range |
multiStopRouteAttempts |
18 | Attempts per special leg |
generationFailureBackoffMin / Max
|
4 / 7 s | Backoff after repeated failures |
rushChance |
0.28 | Random unplanned type chance |
rushBonusMin / Max
|
0.22 / 0.42 | 22–42% bonus |
rushTimeRatioMin / Max
|
0.72 / 0.86 | Normal ETA fraction |
| Key | Value |
|---|---|
baseFare |
$3.25 |
farePerKm |
$1.55 |
farePerMinute |
$0.20 |
ratingBonusThreshold |
3.99 |
maxRatingBonus |
0.15 |
maxTotalPenalty |
0.50 |
ratingPenaltyScale |
8 |
collisionRatingPenalty |
0.15 |
minimumRideRating |
1 |
| Key | Value |
|---|---|
pickupLateBasePenalty |
0.05 |
pickupLatePenaltyPerSecond |
0.000333 |
maxPickupLatePenalty |
0.12 |
| Key | Value |
|---|---|
calmPenaltyIgnoreMaximum |
0.70 |
calmPenaltyMultiplierThreshold |
50 |
passengerStressThresholdMinimum |
72 |
passengerStressThresholdCalmBonus |
23 |
passengerMoodMaximumGain |
40 |
passengerMoodPerfectRideGain |
40 |
passengerMoodStressRecovery |
0.8 |
passengerMoodPickupLateLoss |
4 |
passengerMoodPickupLateStepLoss |
2 |
passengerMoodSpeedingBaseLoss |
2 |
passengerMoodCollisionBaseLoss |
10 |
passengerMoodAggressionBaseLoss |
4 |
passengerMoodRushExpiredLoss |
6 |
| Preset | Fixed tolerance | Ratio tolerance | Grace | Rate | Configured max |
|---|---|---|---|---|---|
| Elementary | 15 km/h | 25% | 6 s | 0.00025 | 6% |
| Easy | 11 km/h | 20% | 4.5 s | 0.00045 | 10% |
| Standard | 8 km/h | 15% | 3 s | 0.0008 | 15% |
| Professional | 4 km/h | 8% | 1.5 s | 0.0018 | 25% |
| Preset | Damage threshold | Damage scale | Damage factor | Event add | Configured max |
|---|---|---|---|---|---|
| Elementary | 60 | 22,000 | 0.10 | 0.004 | 10% |
| Easy | 35 | 17,000 | 0.14 | 0.007 | 14% |
| Standard | 20 | 12,000 | 0.18 | 0.010 | 20% |
| Professional | 10 | 8,000 | 0.24 | 0.020 | 30% |
Collision events use a three-second cooldown in every preset.
| Preset | Longitudinal trigger/release | Lateral trigger/release | Event add | Extra rate / cap | Configured max |
|---|---|---|---|---|---|
| Elementary | 0.88 / 0.55 g | 0.78 / 0.48 g | 0.002 | 0.006 / 0.004 | 5% |
| Easy | 0.74 / 0.48 g | 0.66 / 0.42 g | 0.0035 | 0.010 / 0.006 | 8% |
| Standard | 0.62 / 0.40 g | 0.55 / 0.35 g | 0.005 | 0.015 / 0.010 | 12% |
| Professional | 0.48 / 0.32 g | 0.42 / 0.28 g | 0.010 | 0.025 / 0.018 | 20% |
Aggression events use a three-second cooldown in every preset.
Internally, individual component accumulators allow up to twice the configured component max so a low-mood sensitivity multiplier can be represented. The final combined fare penalty remains capped at 50%.
Both passenger-triggered early exit and the extra percentage portion of driver abandonment use:
| Preset | Reduction |
|---|---|
| Elementary | 10% |
| Easy | 20% |
| Standard | 30% |
| Professional | 45% |
Driver abandonment additionally subtracts one full rating star before clamping to 0–5.
| Key | Value |
|---|---|
fuelInitialLevel |
5% |
electricInitialLevel |
30% |
fallbackPricePerUnit |
$1.00 |
fuelRatePerSecond |
2 readable units/s |
electricPercentRatePerSecond |
4 percentage points/s |
| Gasoline fixed price | $0.93/L |
| Electric fixed price | $0.50/kWh |
dashboardRefreshInterval |
1 s |
Estimated range uses 10 L/100 km for gasoline, 8.5 L/100 km for diesel, 12.5 L/100 km for kerosene, and 22 kWh/100 km for electric energy.
| Key | Value | Meaning |
|---|---|---|
visibleMin / visibleMax
|
5 / 7 | Requested delivery count in a full pool |
minimumWeightKg / maximumWeightKg
|
2 / 250 kg | Generated cargo range |
weightDistributionExponent |
1.55 | Bias toward lighter cargo |
minimumDistance / maximumDistance
|
2,000 / 25,000 m | Delivery route range |
routeAttempts |
28 | Route attempts per delivery candidate |
diversityAttempts |
3 | Spatially distinct candidates checked |
fareMultiplier |
0.82 | Pre-weight rate relative to passenger work |
weightFareBonusThresholdKg |
15 kg | Weight premium threshold |
maximumWeightFareBonus |
1.50 | Maximum +150% premium at 250 kg |
collisionDamageThreshold |
20 | Minimum telemetry damage delta |
minimumImpactDamagePercent / maximumImpactDamagePercent
|
1 / 35% | Package damage per impact |
impactDamageScale |
4,500 | Exponential impact-severity scale |
ratingDamageThresholdPercent |
5% | Damage threshold before rating loss |
inactive, searching, toFuelStation, toPickup, boarding,
toStop, stopWaiting, toDestination,
passengerStopDemand, passengerForcedExit, driverAbandoning,
alighting, complete, error
TaxiDriver Reloaded documentation · Version 4.0.3 · BeamNG.drive 0.39
- Installation and Quick Start
- Gameplay and Ride Lifecycle
- Order Generation and Routing
- Passengers, Fares and Ratings
- Cargo Deliveries
- Realistic Refueling
- Driver Profile and Persistence
- Settings, Localization and Audio
- Navigation and Map Controls
- External Web UI
- Driver UI Design
- AI Driver Engine 0.39
- AI Driver and Recovery
- Fleet Operations
- Troubleshooting and Compatibility