Traffic
Every commute in Microlandia is decided one trip at a time, by one citizen, using a generalized cost model. Every option (walk, bicycle, bus, car) is reduced to one number that stands in for the total felt cost of that trip. That number is in-vehicle travel time, plus a fare penalty for the bus, plus a daily or monthly fee spread out across the expected trips for the car. The citizen picks whichever option has the lowest generalized cost on that trip.
That is why most of the parameters on this page are conversion factors, like “one dollar of bus fare feels like three minutes of travel time,” or “the yearly car license fee gets spread across forty-four commutes per month.” Citizens with fewer means feel monetary costs more strongly, while those with more income or savings put less weight on them. This sensitivity stays between half and twice the reference value and applies to both transit fares and the car fees used in choosing a mode.
Bus fare
Bus fare is the most visible lever you have. Because fare turns into perceived minutes, dropping the fare bends every commuter’s bus utility upward in proportion to how much they care about money. Raising it pushes the same commuters back toward cars, or onto foot if their walk is short enough.
The fare is counted once for the whole journey, including any changes of line. Citizens who have no car still compare it with walking and cycling. When the fare reaches zero, that part of the journey’s cost disappears; the walk, wait and ride take just as long. Discretionary trips have a separate response to cheaper fares, described below.
The whole bus journey
Riders compare the walk to a station, each wait, the ride and the final walk to their destination. Waiting and destination walking feel twice as costly as time on the bus; the first walk counts one and a half times. A change of line adds five perceived minutes, and two changes add fifteen in total. These are game weights, not extra minutes on a timetable. A useful direct line can therefore beat a slightly faster connection, while a much faster connection can still win.
These rules draw on research linking mode choice to time, cost and the burden of transfers and walking. The numerical weights are game assumptions. The Seoul study behind this model finds stronger reluctance toward multiple changes and toward transfer and destination walking, but does not establish universal values for them. Its demographic regression is not reproduced in the game. See Ha, Lee and Ko (2020) and the Transportation page for the station, connection and service rules.
Street layouts and parking
Most streets have one car lane each way. A four-lane street has two each way, so it carries twice the traffic before it slows down. Besides the lanes, what differs is what lies beside them. A street parking street has a parking lane along each curb: six spaces per 20 meters of straight street, none at junctions, corners or ramps, and none on bridges. A street with only bike lanes, or with nothing but its lanes, parks no cars at all. Drivers who find no space near where they are going search longer, and that search is part of what a car trip costs them.
So the choice is a trade. Parking streets make driving easier for the people who live and work along them. Bike lane streets give that room to cyclists instead, and the 30 meter layout gives both. Riders load no street: a bicycle takes no space in the traffic the cars feel, so a street full of cyclists is as quick to drive as an empty one.
Garages
Some buildings bring their own parking. A house has a garage for one car, for the family who lives there. A corporate tower has two basement levels with 90 spaces, for the people who work there. A shopping center has 140 spaces under it and on its roof, for the people who work or shop there. Nobody else parks in these garages. A car that finds room in its own building’s garage never circles a full block looking for a space: it takes only the few minutes any car takes to park on an empty street. So where the streets nearby are busy, driving there gets quicker, and more of its people drive. (They still pay the street parking fee: it is a tax on driving to work, wherever the car ends up.)
The parking garage is the public one: 135 spaces for the people who work within 400 meters of it, while a company runs it. An empty parking garage that no company rents holds no cars. When a building’s own garage is full, or it has none, its people’s cars try the nearest parking garage within that distance, then the street and the parking lots nearby. A car parked for a shopping trip or an outing holds its space for a couple of hours, so each space serves about four of them a day; a car parked at work or at home holds its space all day. A garage that no street a car can use reaches (a building that fronts only a promenade) stands empty.
Select a building to see its garage: how many spaces were taken on its busiest day this week, and how many more it needed that day. The toolbox shows the spaces before you build.
A household buys a car only where it can keep it. A house keeps as many cars as its garage holds, however much room the street has. Any other home buys a car unless the Traffic map marks its building with parking problems: in the last seven days someone going there found nowhere to park, or last night one of its residents’ cars found no space. A building the map marks “No parking” (cyan, or purple when its roads fail it too) gets no new cars, so the cure is the same as the warning: a parking lot, a parking garage, or a street with a parking lane.
Congestion
Every street carries so many cars before it fills up, two lanes more than one. As the traffic on a street nears what its lanes carry, its cars slow down, and every trip that uses it takes longer. Drivers look for a quicker way round, so a jam spreads to the streets beside it, and some of its drivers give up the car for the bus, a bicycle or their feet.
A commute has to come in under 90 minutes of felt cost. A worker who has no way to work under that bar, by any mode, misses the day, and a worker who keeps missing days can be fired. Private employers complain about it in the paper. The Traffic map shows where the streets are full, and the city’s statistics count the workers fired over their commute.
A few subtleties
Three nuances are worth flagging:
- License fees and parking fees only shift mode share for citizens who actually have an alternative: a bus, or a ride. Captive drivers can’t switch, so a higher parking fee on them is just a tax, not a behavioral lever.
- A separate induced demand elasticity lets existing bus riders take more trips when fares drop, on top of any new riders the lower fare attracts. The total ridership response to a fare cut is the sum of the two effects.
- Buses on a road slow down cars on that same road. So a dense bus network gradually nudges car owners onto transit even before you touch the fare.
The fare-response assumptions draw on the transit-elasticity literature, including Litman’s collection at the Victoria Transport Policy Institute. Journey weights and bounded income sensitivity are game choices informed by that research, rather than a fitted prediction for a particular city.
Parameters
Car speed limit km h
40
The speed limit for cars on roads, expressed in kilometers per hour. This affects the road capacity and probability of traffic congestion.
⚠️ Source pending
Bus network traffic car penalty
0.2
The amount of traffic bandwidth taken from roads where the bus network is operating. This usually means that car drivers will avoid roads with frequent bus traffic
⚠️ Source pending
Bus fare reference
$2
Baseline bus fare used as the pivot for fare-elasticity calculations. Roughly the median per-ride urban transit fare across benchmark North American and European cities, the elasticity formula treats this fare as the ‘no-change’ point.
Source: APTA Public Transportation Fact Book — typical urban fares
Bus fare perceived minutes per dollar
3
A dollar of bus fare in perceived travel minutes, charged once per journey including transfers. Every rider feels it, including those comparing the bus with walking or cycling. Silver scales this and the car’s money costs by the square root of the trade-sector market wage divided by the rider’s monthly means (salary, or a profession estimate, plus safe income from savings), bounded to 0.5–2 times this rate. The bounds and conversion are game assumptions: lower-income riders care more about price, while every income still responds to time. A zero fare removes this cost without changing walking, waiting or riding time.
Sources: Litman, T. — Transit Price Elasticities and Cross-Elasticities (Victoria Transport Policy Institute); Ha, Lee & Ko (2020): Travel time, cost, and transit burdens in commute mode choice
Car license fee perceived minutes per dollar
3
Per-trip share of the monthly car license fee converted into perceived-time disutility added to gcCar. Same value as the bus-fare counterpart for symmetric cash-vs-time tradeoffs; only applied when a bus alternative exists (captive drivers can’t switch). Without this term, fees are sunk-cost from a per-trip perspective and don’t shift mode share.
Source: Litman, T. — Transit Price Elasticities and Cross-Elasticities (Victoria Transport Policy Institute)
Car license fee amortization trips per month
44
Trip count used to spread the monthly fee across per-trip GC: 2 trips/day × 22 weekdays = 44. Excludes weekend discretionary trips, owners psychologically attribute fixed ownership costs to commuting.
⚠️ Source pending
Commute trips per workday
2
One trip to work + one trip home. Used to spread per-day fees (e.g. parking) across per-trip generalised cost. Separate from the per-month amortization constant for the license fee, which is paid annually.
⚠️ Source pending
Parking fee perceived minutes per dollar
3
Per-trip share of the daily parking fee converted into perceived-time disutility added to gcCar. Same elasticity as bus fare and car license fee, symmetric cash-vs-time tradeoff. The daily fee is split across 2 commute trips/day. Only applied when a bus alternative exists (captive drivers can’t switch). Without this term, parking is a sunk monthly tax that doesn’t shift mode share.
Source: Litman, T. — Parking Pricing Implementation Guidelines (Victoria Transport Policy Institute)
Fuel cost perceived minutes per dollar
3
Per-trip extra fuel cost in an oil crisis converted into perceived-time disutility added to gcCar. The same cash-vs-time tradeoff as the parking fee and the bus fare. Only applied when the driver could take the bus or ride a bicycle instead.
Source: Litman, T. — Parking Pricing Implementation Guidelines (Victoria Transport Policy Institute)
Bus induced demand elasticity
-0.15
Trip-frequency elasticity of existing bus riders to fare. A 1% drop in fare induces ~0.15% more discretionary bus trips by riders who would have ridden anyway. Multiplies per-trip ridership weights so that cheaper fares cause existing riders to make more trips, separate from the mode-shift effect captured by the GC fare-as-time term. Set near the lower end of Litman’s surveyed range because the mode-shift portion of total fare elasticity is already modelled via generalised cost.
Source: Litman, T. — Transit Price Elasticities and Cross-Elasticities (Victoria Transport Policy Institute)
Bus overcrowded threshold
0.85
Share of a bus line’s daily seat-trips consumed before the game calls it overcrowded. One number for the two surfaces a player reads together — the Transport panel’s line rows and the newspaper’s full-buses stories — so the paper can’t run a crowding story about a line the panel still shows as fine. Two related thresholds are deliberately NOT this one: the hiring gate uses a stricter smoothed figure (a company shouldn’t hire onto a seat that is usually gone), and the A-F network grade’s cliff sits higher still, because bottoming the grade out should mean a line is genuinely turning people away.
⚠️ Source pending
Bus congestion multiplier cap
4
Ceiling on how much road congestion can slow a bus, as a multiple of its free-flow travel time. Buses share the road with cars, so a jammed corridor drags them down with it — but the BPR congestion curve saturates around 13x, which would take a 25 km/h bus to walking pace and delete the line in a single bad day. 4x floors bus speed at ~6 km/h, the low end of what real mixed-traffic buses manage in gridlocked city corridors.
Source: TCRP Report 165 — Transit Capacity and Quality of Service Manual (mixed-traffic bus speeds)
Congestion ema alpha
0.4
Smoothing weight for the per-tile congestion signal that transit times read. Bus schedules degrade under sustained congestion, not from one busy afternoon, so today’s transit times price in a rolling average of recent weekdays rather than yesterday’s raw peak. 0.4 means a new jam is felt over ~2-3 weekdays and recovery takes about as long — responsive enough to reward a fix, damped enough that the congestion/ridership feedback loop settles instead of oscillating.
⚠️ Source pending
Slowed line threshold
1.3
How much slower than free flow a bus line’s round trip must run before the game calls it out as ‘slowed by traffic’ in the Transport panel and lets the newspaper report it. 1.3 is roughly the point where riders notice their commute got worse rather than merely varied.
⚠️ Source pending
Bus utilization smoothing window days
7
Rolling-window length used to smooth the bus fleet utilization figure shown in the Transport panel. Daily utilization swings naturally between weekday peaks and weekend troughs, which makes the raw current-cycle number flicker wildly in the UI. Averaging over a calendar week absorbs the weekday/weekend rhythm so the displayed % reflects how loaded the fleet really is, not which day of the week the player happened to look at it.
⚠️ Source pending
Car fee income share max
0.05
Maximum share of a citizen’s gross annual income that the car license fee ALONE can consume before they judge the car not worth keeping and sell it — but only if they have a viable commute alternative (a reachable, non-full bus, or a walkable job). 5% is deliberately well past real-world norms: US vehicle registration fees are typically under 1% of income, and TOTAL household transportation spend (vehicle purchase + fuel + insurance + fees combined) runs ~15-17% of income (BLS Consumer Expenditure Survey). Set this high so only a genuinely punitive, non-realistic fee drains the fleet; an ordinary registration fee never triggers a value sell. Captive owners (no alternative) keep their cars until the fee passes CAR_FEE_AFFORDABLE_INCOME_SHARE of their income, and the bankruptcy backstops still apply to them.
Car market monthly sell fraction
0.25
Cap on the fraction of value-eligible car owners (those whose fee exceeds CAR_FEE_INCOME_SHARE_MAX of their income AND who have a commute alternative) that sell their car in any single month. Selling is gradual, not a cliff: a sustained punitive fee drains the affected fleet over roughly 4-6 months instead of dumping every car at once, so the player watches the sell-off build in the car-market ledger and has time to react (lower the fee, add buses). At least one eligible owner always sells so the drain can’t stall.
⚠️ Source pending
Savings safe withdrawal rate
0.04
The share of their savings a citizen can spend each year without running them down, counted as income when judging whether they can afford the car license fee (CAR_FEE_AFFORDABLE_INCOME_SHARE). $10M in the bank adds $33,333 a month to their means. 4% is the classic safe withdrawal rate: the share of a portfolio a retiree can draw each year and still not run out over 30 years.
Source: Trinity study (Cooley, Hubbard and Walz, 1998)
Travel failure window days
7
How long a building remembers that people failed to reach it. Failed arrivals (workers and customers turned away by full parking, gridlock, a severed road or a transit gap) are counted over this window to tint the traffic map and to flag a hard-to-reach company. A calendar week always contains at least five weekdays, so the count never collapses over a weekend, and a fix the player makes on Monday reads clean within the same game week.
⚠️ Source pending
Disrupted decay days
3
How long a building keeps its ‘Disrupted Service’ mark on the public transport map after the last rider failed to reach it, when no successful bus arrival clears it sooner. Citizens are sampled, so a building is not tested every single day; three days spans the sampling gaps and a weekend without the mark flickering, while still fading fast enough that adding a bus or connecting a line visibly heals the map.
⚠️ Source pending
