Bukittinggi: a highland town between two volcanoes, at 25 km
Published
Bukittinggi is the third largest city in West Sumatra, home to 121,028 people in 2020[1]. It sits in the highlands near two volcanoes, Singgalang, inactive, and Marapi, still active[2]. In Hostile Flagship it was the first place where ships came down to the ground.
The place
The game’s area is a 25 km-high circle, 200 km across, centred at 0.3° S, 100.4° E, in the Barisan mountains between Marapi and Singgalang. It hangs under the low-orbit point over Sumatra. The town itself sits about 3.4 km west of the centre, at the city’s true coordinates[2].
Why it came first: it is inland, so there is no sea to draw yet, and its mountains are good for hiding behind. The game now starts over Bangkok; Bukittinggi is still where the tests and benchmarks run.
The ground
- NASA’s height map lifts a grid that follows Earth’s curve: 401 points a side, about 0.5 km apart in the middle and 2 km at the area’s edge. The patch runs past the horizon, so no square edge ever shows.
- Generated ridges add the detail the map lacks, up to 800 m on high ground and none at sea level. That works on any planet without extra data. The trade-off: the peaks are invented. Marapi tops out around 3.4 km in game, against 2,885 m on the real mountain[4].
- The ground’s colour comes from NASA’s map, with generated patterns by land type: field patchworks on farmland, clumpy canopy in forest, rock above a tree line at 2,900 m. Slopes are lit more steeply than true so the land’s shape shows under a high sun.
- The same triangles are the ground for every rule, so ships at Low hold 300 m over exactly the hills you see.
A shader fix that skips faded or unused layers took the zoomed-out view at 1080p from 58 to 96 fps.
Air, cloud and forest
- Haze thickens with distance and toward the ground and thins quickly with height, so the hills stand in layers. The sky is deep blue with faint stars at 25 km, paler near the ground. The fixed clock puts Bukittinggi at about 12:40 local time.
- One thin cloud sheet sits at 2.6 km, the tallest peaks poking through. NASA’s cloud map says where the clouds are; the wisps are generated, drift slowly and cast shadows. Fuller low cumulus clouds were tried, at about 9 ms a frame, and switched off for now.
- The forest is billboards: single trees out to 3 km, then clumps out to 10 km, then the ground’s painted canopy. The same plants come back on every visit. The plant models are AI-generated placeholders (made by Claude, scripting Blender), to be replaced; see the credits.
The town
The town is generated, not mapped: a ragged, lobed outline about 3 km in radius, streets at uneven gaps, rows of two-to-four-storey shophouses with rusty zinc and red-tile roofs, big buildings in the core and a few towers up to about 80 m. About 30,000 buildings in all. Four roads lead out in the directions of the real neighbouring towns, winding along the valleys and fading out after 6 km. Ships can’t land in the town or its fringe.
Landmarks are not in yet. The real city’s symbol, the Jam Gadang clock tower in its centre[3], is one for later.
Hold Alt to see the town’s rings: walls of airspace drawn round the town at 4 km and 12 km out, rising to 8 km and fading as they go up, with no lid.
How heights work near the ground: Height bands.
Related
- Top, High, Med, Low: four heights instead of free flight
- 7.8 km a second: what low Earth orbit means
- 384,400 km apart: the Earth and the Moon at true scale
- Credits
Sources
- Bukittinggi, Wikipedia.
Bukittinggi (Minangkabau: Bukiktinggi, Jawi: بوكيت تيڠڬي, formerly Dutch: Fort de Kock) is the third largest city in West Sumatra, Indonesia, with a population of 111,312 in 2010 and 121,028 in 2020
- Bukittinggi, Wikipedia.
it is located at 0°18′20″S 100°22′9″E, near the volcanoes Mount Singgalang (inactive) and Mount Marapi (still active)
- Bukittinggi, Wikipedia.
The Jam Gadang, a clock tower located in the heart of the city, is a symbol for the city and a well-visited tourist spot in the city
- Mount Marapi, Wikipedia.
Its elevation is 2,885 metres