[world] height_tiles = 40 refund_percentage = 100 starting_building_blocks = 200 scrap_despawn_seconds = 120 scrap_per_threat = 0.25 tile_size_m = 10 belt_speed_mps = 20 tunnel_max_distance_tiles = 10 departure_interval_seconds = 20 orbit_factor = 0.8 rally_orbit_radius_tiles = 5.0 building_blocks_tooltip = "Building blocks are the currency for construction. Spend them to place buildings and to expand the asteroid. Produce building blocks in your factory and deliver them to the HQ on a belt to grow your stock." [regions] asteroid_width_tiles = 60 player_buffer_width_tiles = 20 contest_zone_width_tiles = 60 enemy_buffer_width_tiles = 20 [scroll] # View pan speed (REQ-UI-SCROLL-SPEED): slow near the asteroid, fast across the # contest zone, with a linear ramp of the given width straddling each boundary. pan_speed_slow_tiles_per_second = 16.0 pan_speed_fast_tiles_per_second = 32.0 pan_ramp_band_width_tiles = 16 [expansion] columns_per_expansion_tiles = 10 # x = expansions already purchased; ~1 per cycle mid-game, decelerating # to 2-3 cycles late (docs/balancing/derived.md). cost_building_blocks_formula = "300 + 50*x + 10*x*x" [push] push_expand_columns_tiles = 10 boss_advance_seconds = 60 [targeting] target_score_formula = "1 / (1 + x)" # x = distance / max weapon range; higher = better, clamped to >=0 overclaim_penalty_formula = "max(0.5, 1 - 0.1*x)" # x = competing claim count; multiplies score, clamped to [0,1] target_hysteresis = 0.40 # keep current target unless a challenger beats it by >10% [artifacts] artifact_chance_formula = "0.05 * x" # 5% chance per station level artifact_win_count = 5 [waves] # Tuned against the factory-size curve (docs/balancing/targets.md, balancing # targets): stays below the player's achievable military output early, # crosses it around the late boundary (~cycle 15), overwhelms by ~24. threat_rate_formula = "2*x + 0.15*x*x" gap_min_seconds = 15 gap_max_seconds = 45 spawn_duration_seconds = 10 boss_countdown_seconds = 300 boss_threat_duration_seconds = 60 boss_quiet_before_seconds = 20 boss_quiet_after_seconds = 20