summaryrefslogtreecommitdiff
path: root/src/game/content.ts
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/content.ts')
-rw-r--r--src/game/content.ts123
1 files changed, 123 insertions, 0 deletions
diff --git a/src/game/content.ts b/src/game/content.ts
new file mode 100644
index 0000000..db94df7
--- /dev/null
+++ b/src/game/content.ts
@@ -0,0 +1,123 @@
+export interface Palette {
+ name: string;
+ descriptor: string;
+ top: string;
+ bottom: string;
+ grid: string;
+ primary: string;
+ accent: string;
+ warm: string;
+ ghost: string;
+ signal: string;
+}
+
+export interface LayerDescriptor {
+ name: string;
+ caption: string;
+ motif: 'core' | 'roots' | 'surface' | 'aqueduct' | 'towers' | 'clouds' | 'orbital';
+}
+
+export const CYCLE_HEIGHT = 900;
+export const WORLD_WIDTH = 18;
+
+export const LAYERS: LayerDescriptor[] = [
+ {
+ name: 'Planetary Core',
+ caption: 'Magnetic furnaces hum below the city. Infrastructure begins as pressure.',
+ motif: 'core'
+ },
+ {
+ name: 'Mycelial Switchyard',
+ caption: 'Roots and fungal circuits share memory through living cable bundles.',
+ motif: 'roots'
+ },
+ {
+ name: 'Surface Arteries',
+ caption: 'Aqueduct rails, markets, and dense habitation recycle heat into movement.',
+ motif: 'surface'
+ },
+ {
+ name: 'Analog Canals',
+ caption: 'Fluid logic, wheels, and pressure gates store power in visible machinery.',
+ motif: 'aqueduct'
+ },
+ {
+ name: 'Tower Choir',
+ caption: 'Needle towers process weather, finance, and rumor in stacked districts.',
+ motif: 'towers'
+ },
+ {
+ name: 'Cloud Mesh',
+ caption: 'Platforms thin into luminous rafts and relay gardens above the weather.',
+ motif: 'clouds'
+ },
+ {
+ name: 'Orbital Threshold',
+ caption: 'Geometry strips itself down to signal, velocity, and intention.',
+ motif: 'orbital'
+ }
+];
+
+export const PALETTES: Palette[] = [
+ {
+ name: 'Neon Furnace',
+ descriptor: 'dense, humid, electric',
+ top: '#140b26',
+ bottom: '#04070f',
+ grid: '#1f4d5f',
+ primary: '#71faff',
+ accent: '#fd4fd0',
+ warm: '#ff9f43',
+ ghost: '#d8f8ff',
+ signal: '#a78bfa'
+ },
+ {
+ name: 'Biolume Relay',
+ descriptor: 'organic, damp, networked',
+ top: '#0f1d17',
+ bottom: '#04070d',
+ grid: '#205a4f',
+ primary: '#70ffbf',
+ accent: '#8de95f',
+ warm: '#f4d35e',
+ ghost: '#d4ffe8',
+ signal: '#64d2ff'
+ },
+ {
+ name: 'Ceramic Dawn',
+ descriptor: 'clean, bright, infrastructural',
+ top: '#1c2448',
+ bottom: '#080b13',
+ grid: '#315f8e',
+ primary: '#98c8ff',
+ accent: '#ff6aa2',
+ warm: '#ffd166',
+ ghost: '#f4faff',
+ signal: '#8cf1ff'
+ },
+ {
+ name: 'Voltage Bloom',
+ descriptor: 'vibrant, ceremonial, airborne',
+ top: '#221140',
+ bottom: '#05070c',
+ grid: '#483f9b',
+ primary: '#b8a7ff',
+ accent: '#ff7b72',
+ warm: '#ffe066',
+ ghost: '#ece9ff',
+ signal: '#6ef3ff'
+ }
+];
+
+export const THOUGHT_LINES = [
+ 'If the world gets simpler as you rise, what exactly are you learning to ignore?',
+ 'The city stores memory in pipes, fungus, glass, and habits. Which medium trusts you most?',
+ 'Ghosts are not dead players. They are adjacent decisions still visible from here.',
+ 'Progress can mean refinement, abstraction, or amputation. Which one are you performing?',
+ 'A platform is a temporary agreement between gravity and intention.',
+ 'Every layer calls itself the real city. Each one merely found a different compression.',
+ 'Information wants a body. Bodies want a future. Cities negotiate between the two.',
+ 'Ascending is easy to narrate and hard to define. Are you escaping or integrating?',
+ 'The brighter the signal, the easier it is to mistake compression for truth.',
+ 'Shared ghosts make failure public and persistence communal.'
+] as const;