mirror of
https://github.com/Azgaar/Fantasy-Map-Generator.git
synced 2025-12-17 17:51:24 +01:00
Implement tiered route system with enhanced CSV export
This commit introduces a comprehensive tiered route generation system that replaces the basic route categories with specific route types based on medieval transportation networks: Route System Changes: - Major Sea Routes (majorSea): Long-distance maritime trade routes connecting capitals and major ports across water bodies, simulating Hanseatic League-style trade networks - Regional Sea Routes (regional): Shorter routes within specific water bodies for high-traffic local maritime trade - Royal Roads (royal): Capital-to-capital connections for diplomatic and military movement using minimum spanning tree algorithm - Market Roads (market): Regional trade networks connecting market towns with 15-30km spacing based on medieval market day travel distances - Local Roads (local): Village-to-market connections linking settlements to their nearest commercial centers - Footpaths (footpath): Hamlet paths with 3-8km range for local community connections Implementation Details: - Removed fallback calls to legacy route generation functions to ensure clean tiered system operation - Routes now include both 'group' (general category) and 'type' (specific tier) properties for detailed classification - Enhanced route generation uses settlement hierarchy and geographic constraints for realistic medieval transportation patterns - Route cost modifiers applied based on route type importance (royal and majorSea routes have priority routing) CSV Export Enhancements: - Added 'Type' column to routes CSV export to distinguish between route tiers - Updated routes overview UI to display both group and type information - Enhanced header layout to accommodate new type column - Routes can now be analyzed by both general category and specific function Technical Changes: - Fixed route ID assignment conflicts between immediate and background processing phases - Improved route data structure consistency across generation phases - Updated routes overview display to show detailed route type information - Enhanced CSV export function to include route type data from pack.routes
This commit is contained in:
parent
8ec53293b7
commit
82eb441845
3 changed files with 17 additions and 16 deletions
|
|
@ -353,9 +353,6 @@ window.Routes = (function () {
|
|||
});
|
||||
}
|
||||
|
||||
// Also use existing main roads logic for primary centers
|
||||
const mainRoads = generateMainRoads();
|
||||
marketRoads.push(...mainRoads);
|
||||
|
||||
TIME && console.timeEnd("generateMarketRoads");
|
||||
return marketRoads;
|
||||
|
|
@ -428,9 +425,6 @@ window.Routes = (function () {
|
|||
}
|
||||
});
|
||||
|
||||
// Also include existing secondary roads
|
||||
const secondaryRoads = generateSecondaryRoads();
|
||||
localRoads.push(...secondaryRoads);
|
||||
|
||||
TIME && console.timeEnd("generateLocalRoads");
|
||||
return localRoads;
|
||||
|
|
@ -504,9 +498,6 @@ window.Routes = (function () {
|
|||
}
|
||||
});
|
||||
|
||||
// Also include existing trails for backward compatibility
|
||||
const trails = generateTrails();
|
||||
footpaths.push(...trails);
|
||||
|
||||
TIME && console.timeEnd("generateFootpaths");
|
||||
return footpaths;
|
||||
|
|
@ -757,8 +748,9 @@ window.Routes = (function () {
|
|||
return segments;
|
||||
}
|
||||
|
||||
function createRoutesData(routes) {
|
||||
function createRoutesData(lockedRoutes) {
|
||||
const pointsArray = preparePointsArray();
|
||||
const routes = [...lockedRoutes]; // Create a new array from locked routes
|
||||
|
||||
// Process critical routes (Tier 1 & 2) - these run immediately
|
||||
for (const {feature, cells, merged, type} of mergeRoutes(majorSeaRoutes)) {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue