Maxim Gumin Profile picture
Prince of probabilistic models, procgen messiah, tamer of Markov chains, the untrolled, necromancer of topics https://t.co/yJanH6SL5X
Jul 31, 2018 6 tweets 4 min read
Did you know that WFC algorithm can generate ~unbiased (not-necessarily-shortest) paths between A and B? Each tile here has an even number of outgoing edges, therefore all paths split into cycles, except A and B, which become connected by a path! Tiles by @beast_pixels.

Thread. Take a tileset with Lines, Turns and DeadEnds, but ban DeadEnds everywhere except 2 endpoints. The key is to NOT include T-shaped roads, as they have odd number of outgoing edges, and the result then doesn't have to split into cycles. X-shaped intersections are fine though.
Mar 23, 2018 4 tweets 2 min read
@Andy_Makes Yeah, this is a classic problem. You can ensure the playability by either
1. Generate and test, aka rejection sampling.
2. Post-processing: dig tunnels, draw ladders with custom rules. @Andy_Makes 3. Pre-processing: generate connected structure in advance and use it as constraint for cellular automata/ConvChain/WFC
Mar 6, 2018 4 tweets 3 min read
Procedural sea villas. The player arrives by boat. Goal: grab the shiny blue cube and get back. Wooden bridges collapse after one pass, consoles open gates wired to them. Guaranteed to be solvable and without shortcuts. Different sizes. I like small ones because you can solve them just from a screenshot. Bridges are hard to fit in small sizes though. Often the only way to reach the goal is to cross a wooden bridge, and then the player needs to find another way to return to the pier. ImageImageImageImage