Skip to content

Travel builder - #1657

Merged
Azgaar merged 32 commits into
1.150.0from
travel-builder
Aug 30, 2026
Merged

Travel builder#1657
Azgaar merged 32 commits into
1.150.0from
travel-builder

Conversation

@Azgaar

@Azgaar Azgaar commented Aug 29, 2026

Copy link
Copy Markdown
Owner

Description

msuyar and others added 27 commits August 7, 2026 17:00
- Replace shared findPath with A* (exit-on-pop) for optimal straight paths
- Add on-road cost discount so paths actively seek roads
- Add 50% off-road speed penalty for travel time
- Make Segment.from/to optional to fix false errors from cell-0 sentinel
- Split Set start/Set end from Add segment to fix double-click issue
- Fix biome lint: optional chains, forEach returns, void returns
Drag, insert and remove path points on the map, constrained to terrain the transport can actually cross. Stretched edges refill with collinear points so paths stay editable. Add per-segment note, color and visibility. Pin error tips so hovering no longer wipes them instantly.
Travel Builder — Journeys, a multi-segment travel map calculator.

Adapted to the refactors that landed on travel-builder while the PR was
open (it branched at 1.139.9, 413 commits back):

- Layers registry replaced public/modules/ui/layers.js: journeys is now a
  registered Layer carrying the stroke defaults main.js used to set on the
  group, with a LAYER_TOGGLES button. It sits above fogging, where main.js
  appended the group. Draws go through Layers.draw("journeys") and editors
  open with Layers.show("journeys").
- Generation moved into GenerationPipeline: Journeys.sync() and
  Journeys.generateDemo() are pipeline steps in their former positions;
  sync() also runs on load with the other module syncs.
- Save format: upstream shipped slots 47-51 (labels, style, relief, layers,
  graphOverride), so journeys and transportTypes take 52 and 53 instead of
  colliding with released saves.
- Renamed/removed helpers: destroyDialogIfExists -> destroyDialog,
  findCell -> Pack.findCell, Node.prototype.on -> addEventListener.

Typecheck, biome, vite build and all 479 unit tests pass.
@Azgaar Azgaar self-assigned this Aug 29, 2026
@Azgaar

Azgaar commented Aug 29, 2026

Copy link
Copy Markdown
Owner Author

Hi @msuyar, I'm mostly done with editing, you can review it now.

@msuyar

msuyar commented Aug 29, 2026 via email

Copy link
Copy Markdown
Contributor

Azgaar and others added 4 commits August 29, 2026 15:44
Resolve the style-migration conflicts: the base rewrote every preset from the
legacy selector-keyed format to the registry-keyed store, so the branch's
"#journeys" preset block is re-expressed as a `journeys` layer.

- styles-schema.ts: a journeys layer with no `stroke` - each segment carries its
  own colour from the journey data
- default-styles.json + the 11 shipped presets: the journeys defaults, placed
  after `routes` where the legacy "#journeys" block sat
- styles-legacy.ts: a "#journeys" route, so presets and maps saved by earlier
  travel-builder builds still upgrade
- style-presets.js: took the base's version - collectStyleData is gone, presets
  now serialize the store directly

Also repairs two imports the base branch left broken (a still-used savedMessage
dropped from save.ts, a non-existent calculateVoronoi added to load.ts).

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@Azgaar
Azgaar merged commit 01ab6e3 into 1.150.0 Aug 30, 2026
1 of 3 checks passed
@Azgaar
Azgaar deleted the travel-builder branch August 30, 2026 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants