Skip to content

An algorithm for creating balanced Settlers of Catan boards.

License

Notifications You must be signed in to change notification settings

cgagliardi/settlers-setup

Repository files navigation

Settlers Setup

Looking to use Settlers Setup? Visit settlerssetup.com

Settlers Setup attempts to create "balanced" Settlers of Catan boards. Balanced means that resources are evenly distributed across the board, and the roll numbers are distributed to such that each corner is as close in value to other corners as possible.

Settlers Setup is in no way affiliated with Mayfair Games or Klaus Teuber, of whom Settlers of Catan is a registered trademark.

The code

This project is implemented in TypeScript using Angular for the UI. The algorithm and datastructures are in src/app/board/. This directory does not have any Angular specific dependencies. The algorithm itself is in src/app/board/strategy/balanced-strategy.ts.

The standard and expansion boards are defined in src/app/board/board-specs.ts.

All of the rendering is done in src/app/components/catan-board/catan-board.component.ts.

Debugging

To see debugging information, add ?debug=1 to the URL. This will render the score values for every corner and hex. Clicking a hex or corner will log information to the console.

Development server

Run ng serve for a dev server. Navigate to http://localhost:4200/. The app will automatically reload if you change any of the source files.

About

An algorithm for creating balanced Settlers of Catan boards.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published