This top-down map is the same simplified world grain market as the 3D version, redrawn flat: four exporting nations (Ukraine, Russia, USA, India) at the top and left, four import-dependent nations (Egypt, Nigeria, Bangladesh, Yemen) at the bottom and right, connected by fixed trade routes. Line thickness is baseline tonnage share; the moving dots are cargo actually in transit. Pick an exporter and a shock type, then raise intensity: drought cuts that country's harvest at the source, conflict blocks its ports and rail lines outright, and export ban models a government restricting sales abroad to protect its own domestic price.
price index = 100 · Σ(baseline flow) / Σ(actual flow)
actual flow_ij = weight_ij · exportFactor_i
food security_j -= shortfall_j · vulnerability_j · dt (recovers when flow is restored)
- Exporter affected — which producing nation the shock hits; each ships a different mix of routes, so the same shock hits different importers hardest.
- Shock intensity — how severe the drought/conflict/ban is, from unaffected to a near-total halt of that country's exports.
- Simulation speed — how fast trade flow, price and food-security reserves respond and recover.
Real-world relevance: this mirrors 2022, when Russia's invasion blocked Ukrainian Black Sea grain exports and several countries (including India, on rice) imposed export restrictions of their own to shield domestic supply — both moves pushed global grain prices sharply higher and hit import-dependent nations like Egypt and Yemen hardest, since they had the least ability to substitute the lost tonnage. The price-history strip under the map lets you watch that spike build and fade as you release, hold, or reverse the shock.