I’m building a game such as Same Game, when I have to create a new level I’ve just run an algorithm to fill the board with N colors, this algorithm fills the board at random, but obviously the levels generated this way are not all has a solution.
I have to make a function to resolve this problem, so the game can be played by a perfect player for ever.
I have a maximum of 6 color and a minimum of 2 and the board has a reasonable size (14×12) but can be modified.
The language is irrelevant.
EDIT: I don’t need to solve the puzzle, I need to create levels that has at least one solution.
I’ve just check out about five different versions of the game on Ubuntu and I’ve found an answer you can pillage from!
Simon Tatham’s Portable Puzzle Collection
I play about five of his games incessantly but preferred Same GNOME. I just loaded up his Same Game and it has the option to ensure solubility when creating custom games. Even has a customisable scoring system. It’s all awfully advanced.
An exe and source code is available from the above link.
And the license is MIT (meaning you can use it freely in commercial games – but please donate something to him if you can afford it)