{"repo":"AlexeyBond/godot-constraint-solving","free":true,"listed":false,"github":"https://github.com/AlexeyBond/godot-constraint-solving","clone":"git clone https://github.com/AlexeyBond/godot-constraint-solving.git","description":"WFC (Wave Function Collapse) and generic constraint satisfaction problem solver implementation for Godot 4","language":"GDScript","stars":458,"topics":["godot-4","wave-function-collapse","constraint-satisfaction-problem","procedural-generation","godot","godot-addon","godot4","wfc"],"license":"MIT","category":"game-templates","readme_excerpt":"WFC (Wave Function Collapse) and generic constraint satisfaction problem solver implementation for Godot 4 Features: - Backtracking support. This addon implements backtracking, so it's possible to generate maps that are guaranteed to have no broken cells. However, it may take a lot more time (and more memory) so it's possible to disable backtracking or limit the number of attempts. - Multithreading . Generation of a 2d map using WFC algorithm can be split into few tasks. Some of the tasks can be executed concurrently. The algorithm is (in most cases) able to detect if it's impossible to split the task. It falls back to single-threaded generation in such cases. - Learning from example . 2d WFC generator is able to infer rules from an example of a valid map. The algorithm also tries to infer some valid cell combinations beyond those provided in the example. In cases when the algorithm produces some invalid or not-nice-looking cell combinations, it's possible to also provide examples of cell combinations that should not appear in the final result. Or stop the generator from searching for additional cell combinations and provide all possible combinations in the initial example. Rules can also in some cases be learned from terrain settings of tilesets used in TileMapLayer maps. - Supports different node types : - TileMapLayer and TileMap (including some hexagonal tilemaps, see example) - GridMap (a flat map in one of XY/YZ/XZ planes can be generated) - Support of other node types ","default_branch":null,"files":null,"tree":[],"storefront":"/r/AlexeyBond","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/AlexeyBond/godot-constraint-solving/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}