Major Changes:
- Enhanced burg placement system with three-tier hierarchy:
* Primary centers (capitals + large ports) connected by main roads
* Regional centers (plaza burgs) connected by secondary roads
* Local settlements connected by trails to existing network
Burg Placement Improvements (burgs-and-states.js):
- Added identifyLargePorts() function to mark coastal settlements as major population centers
- Implemented placeRegionalCenters() function for strategic plaza burg placement
- Enhanced placeTowns() with hierarchical scoring based on distance to major centers
- Updated population calculations to respect settlement hierarchy
- Modified defineBurgFeatures() to guarantee plazas for regional centers
Route Generation Overhaul (routes-generator.js):
- Created hierarchical route system eliminating overlapping routes:
* Main roads connect primary population centers (capitals + large ports)
* Secondary roads connect plaza burgs to main network and each other
* Trails connect isolated settlements to nearest existing routes
- Added filtered burg categorization to prevent duplicate connections
- Implemented intelligent pathfinding that integrates with existing routes
- Fixed getLength() function with fallback calculation for DOM timing issues
CSV Export Enhancement (routes-overview.js):
- Updated routes CSV export to include new "secondary" route type
- Added documentation for supported route types in export function
Technical Features:
- Distance-based population gradients radiating from major centers
- Urquhart graph algorithm for optimal route networks
- Integration with existing pathfinding cost system
- Proper route merging and connection tracking
- Robust error handling for route length calculations
Result:
- Realistic settlement hierarchy with proper population distribution
- Non-overlapping transportation network with clear purpose for each route type
- Radial patterns from major centers through regional hubs to local settlements
- Enhanced world-building with economically logical settlement placement
* removed priority queue in favor of simple array extension as it will be easier to migrate to esm
* patch: bump version
* spacing
* moved references to globalThis
* demonstrate module interop
* added version to priority-queue and moved to utils to follow dom loading pattern
* removed PriorityQueue in favor of FlatQueue
* update index.html
* never mind that force push I don't know how to amend commits right
* missing capitalization
* priority set to 0 on 541
---------
Co-authored-by: RyanGuild <ryan.guild@us-ignite.org>
* feat: style - store emblem size mod in style (v1.99.10)
* fix the isOutdated function for versions past 1.99
* fix: showUploadMessage function not called correctly for isUpdated case
* feat: load - improve version detection
* feat: improve version detection and update process
* feat: Update version and use constant for VERSION in multiple files
* Update versioning.js to fix incorrect message display for stored version
* feat: zones editor - update to work with pack data
* feat: zones editor - update editor
* feat: zones editor - update editor
* chore: update version
* feat: zones - regenerate
* feat: zones - render zones as continuius line
* feat: zones - editot changes
* feat: zones - auto-update
* feat: zones - generation fixes
* feat: zones - generation fixes
* feat: zones - restore layer
* feat: zones - proselytism - check population
---------
Co-authored-by: Azgaar <azgaar.fmg@yandex.com>
* Update burgs-and-states.js
Khanate title for Mongolian Empires and Kingdoms, Khaganate for Turkic.
* Update burgs-and-states.js
I also added Beylik form name Generation.
* Update burgs-and-states.js
* Add the ability to lock states, provinces, cultures, and religions (#902)
* Add the basis for locking everything, code and test the culture locking
* Got the religion generator working, but not the tree. There are cycles being generated
* Religions work now, including the tree view
* Got the states and provinces working as well, all good and ready
* Refresh the province editor when regenerating
* Implement the versioning steps
* Fix the state naming and color changing even when locked
* The fix did not work with loaded maps, fix that too
* Fix a few more bugs and address the PR feedback
* Fix the state expanding event when they're locked bug
* Implement some logic to ignore state being locked when regenerating provinces directly.
* refactor(#902): start with states regenertion
* refactor(#902): locked states cells to be assigned on start
* refactor(#902): lock state - keep label
* refactor(#902): lock provinces
* refactor(#902): regenerate states - update provinces
* refactor(#902): regenerate cultures
* refactor(#902): regenerate religions
Co-authored-by: Guillaume St-Pierre <gstpierre01@gmail.com>
Co-authored-by: Azgaar <maxganiev@yandex.com>
* Update burgs-and-states.js
* Update burgs-and-states.js
* Adding state and province form to the list
* typo in index.html
* deleted some suggested forms
Deleted some forms of state and province. Some are still suggested to add.
* Updated burgs-and-states.js
Worked eparchy, exarchate, patriarchate, captaincy and seneschalty.
* index.html alphabetical order state forms
alphabetical order for Patriarchate in theocracy group
* Added a lock function to burgs that will prevent them from being regenerated
* Updated tooltips and fixed culture change from renaming locked burgs and group remove from deleting locked burgs