diff --git a/public/resources/buildings/adamantine_echo.json b/public/resources/buildings/adamantine_echo.json index b2244fdc..10380ae1 100644 --- a/public/resources/buildings/adamantine_echo.json +++ b/public/resources/buildings/adamantine_echo.json @@ -32,6 +32,10 @@ { "type": "courier_delay_reduction", "value": -100 + }, + { + "type": "envelope_intercept_resistance", + "value": 0.5 } ], "enables_units": [], diff --git a/public/resources/buildings/resonance_chamber.json b/public/resources/buildings/resonance_chamber.json index d024e0e1..e4014c53 100644 --- a/public/resources/buildings/resonance_chamber.json +++ b/public/resources/buildings/resonance_chamber.json @@ -28,6 +28,18 @@ { "type": "science", "value": 2 + }, + { + "type": "comm_tier", + "value": 8 + }, + { + "type": "heartbeat_interval", + "value": 6 + }, + { + "type": "envelope_throughput", + "value": 2 } ], "enables_units": [ diff --git a/public/resources/diplomacy/treaty_rules.json b/public/resources/diplomacy/treaty_rules.json index b44eb851..2b1bd333 100644 --- a/public/resources/diplomacy/treaty_rules.json +++ b/public/resources/diplomacy/treaty_rules.json @@ -51,6 +51,36 @@ "breaks": "shared_map_single", "reputation_delta": 0, "description": "If the SharedMap courier is intercepted, the deal is voided but no reputation cost — both parties acted in good faith. Payment is non-refundable." + }, + "envelope_intercepted_war_dec": { + "breaks": "pending_war_dec_overlay", + "reputation_delta": 0, + "single_attempt": true, + "description": "Communications Phase 2: an intercepted war-declaration envelope clears the sender's pending_war_dec overlay. The shared Relation does NOT flip (interception is functionally a failure to deliver the message). No third-party reputation hit — observers cannot tell the message was a war-dec. The sender takes a private reputation hit (-15, mc-comms domain) to mark broken trust without third-party diplomatic fallout." + }, + "envelope_intercepted_peace_offer": { + "breaks": "peace_offer_single", + "reputation_delta": 0, + "single_attempt": true, + "description": "An intercepted peace-offer envelope simply fails to arrive. The sender can re-issue. No reputation impact." + }, + "envelope_intercepted_joint_attack": { + "breaks": "joint_attack_plan_single", + "reputation_delta": 0, + "single_attempt": true, + "description": "An intercepted joint-attack envelope reveals the plan to whoever intercepted it (Phase 3 beacon-tap counter-intel will surface readable envelopes). The plan itself is voided; no reputation cost to sender." + }, + "envelope_intercepted_research_agreement": { + "breaks": "research_payout_single", + "reputation_delta": 0, + "single_attempt": true, + "description": "A research-agreement payout envelope intercepted in transit forfeits that tick's beaker transfer. The underlying agreement remains active." + }, + "envelope_intercepted_tribute": { + "breaks": "tribute_demand_single", + "reputation_delta": 0, + "single_attempt": true, + "description": "An intercepted tribute-demand envelope fails to arrive — the demand is silently void. Sender can re-issue." } }, "edge_cases": [ diff --git a/public/resources/improvements/beacon_tower.json b/public/resources/improvements/beacon_tower.json index da341e6b..a9d220e0 100644 --- a/public/resources/improvements/beacon_tower.json +++ b/public/resources/improvements/beacon_tower.json @@ -11,7 +11,10 @@ "effects": { "vision_bonus": 2, "provides_los_chain": true, - "severable": false + "severable": false, + "comm_tier": 6, + "los_chain": true, + "decay_radius_mult": 1.5 }, "hp": 35, "flags": ["destroyable_structure", "courier_infrastructure"], diff --git a/public/resources/improvements/messenger_post.json b/public/resources/improvements/messenger_post.json new file mode 100644 index 00000000..42f9fd93 --- /dev/null +++ b/public/resources/improvements/messenger_post.json @@ -0,0 +1,23 @@ +{ + "id": "messenger_post", + "name": "Messenger Post", + "description": "A road-side waystation with stabled couriers, signal-flags, and a small lookout. Early-era infrastructure that lets foot-couriers run a step faster than the open trail allows. Cheap, available before tunnels or beacons, and adjacent-to-road only.", + "build_turns": 4, + "valid_terrain": "any_land", + "adjacency_required": ["road", "hold_road"], + "requires_tech": "roads", + "yields": {}, + "effects": { + "comm_tier": 2, + "comm_steps_per_turn_bonus": 1, + "severable": false + }, + "cost": 30, + "flags": ["courier_infrastructure", "early_courier"], + "encyclopedia": { + "category": "civilization", + "entry_type": "improvement", + "detail_route": "/buildings/improvements", + "tags": ["courier", "infrastructure", "era2"] + } +} diff --git a/public/resources/improvements/resonance_wire.json b/public/resources/improvements/resonance_wire.json index 2804cc9b..6749da91 100644 --- a/public/resources/improvements/resonance_wire.json +++ b/public/resources/improvements/resonance_wire.json @@ -8,7 +8,10 @@ "yields": {}, "effects": { "courier_delay_class": "near_instant", - "severable": true + "severable": true, + "comm_tier": 8, + "vision_share_latency": 0, + "decay_radius_mult": 2.5 }, "encyclopedia": { "category": "civilization", diff --git a/public/resources/improvements/steam_track.json b/public/resources/improvements/steam_track.json index f882a26a..769503b5 100644 --- a/public/resources/improvements/steam_track.json +++ b/public/resources/improvements/steam_track.json @@ -8,7 +8,10 @@ "yields": {}, "effects": { "movement_cost_modifier": -2, - "severable": true + "severable": true, + "comm_tier": 7, + "vision_share_latency": 1, + "decay_radius_mult": 2.0 }, "encyclopedia": { "category": "civilization",