# Manual Dialing: Local vs Hypergrid

This adds a simple operator workflow for handling local and hypergrid dialing differences.

## What Changed

1. DHD controller now sends extended dial payloads:
- DHD|DIAL|mode|route|destination_sim|grid

2. Gate controller now accepts:
- local mode requests
- hypergrid mode requests
- destination sim and grid metadata

3. Different power cost is already enforced in gate logic:
- local uses localDialPowerCost
- hypergrid uses hypergridPowerCost
4. Native same-region dialing now uses gate discovery and enforces minimum separation:
- destination gate must be at least 100m away

## DHD Owner Commands

Use channel -779903 in local chat.

1. Set center-button manual mode to local:
mode local

1. Set center-button manual mode to same region (single-sim communities):
mode region

2. Set center-button manual mode to hypergrid with destination context:
mode hg|Destination Sim Name|grid.host:port|grid_id

3. Trigger an immediate local dial from chat:
dial local|1,2,3,4,5,6,0

3. Trigger an immediate same-region dial from chat:
dial region|1,2,3,4,5,6,0|TARGET_SHORT

4. Trigger an immediate hypergrid dial from chat:
dial hg|1,2,3,4,5,6,7,8,0|Destination Sim Name|grid.host:port|grid_id

## Gate Owner Direct Commands

Use channel -779904 in local chat.

1. Local dial direct to gate:
dial local|1,2,3,4,5,6,0

1. Same-region dial direct to gate:
dial region|1,2,3,4,5,6,0|TARGET_SHORT

2. Hypergrid dial direct to gate:
dial hg|1,2,3,4,5,6,7,8,0|Destination Sim Name|grid.host:port

## Multi-Grid IDs And Short Names

Gate admin commands use channel -779905.

1. Set this gate display name:
gate name Atlantis Alpha Gate

2. Set this gate short name:
gate short AAG

3. Register a hypergrid endpoint with unique ID:
grid add|pegasus|pegasus.example.org:8002

4. Save a short-name route entry:
route add|MID|Midway Relay|1,2,3,4,5,6,7,8,0|hypergrid|Midway Relay|pegasus

5. Dial by short name:
dial short|MID

You can also define a same-region short route by using mode same_region in route add.

6. View configured grids and routes:
grid list
route list

7. View known same-region gates discovered natively:
region list

## Same-Region Native Rule

1. Same-region dialing does not require hypergrid endpoint data.
2. Gate-to-gate separation must be at least 100m.
3. If target is closer than 100m, dial is denied with same_region_too_close.
4. If target short name is unknown, dial is denied with same_region_target_unknown until discovery updates.

## Notes

1. Hypergrid mode should include destination sim and grid endpoint for best display and logging output.
2. Local mode ignores grid metadata and uses local routing behavior.
3. If destination sim is omitted, the gate uses Local Target placeholder text.
