So I’ve been thinking, as I’ve mentioned before I’m doing several puzzle games this month. They already have a fair amount of levels built in, but these are also the types of games that can be super easy to build levels for, many per day, without too much effort.
As usual this requires some upfront work and/or help from a programmer. But that is nothing compared to the time and money savings long term. The beauty and nature of most puzzle games (like Sudoku) is that they can be generated and solved mathematically.
For best results I suggest a 2 or 3 step process.
1) Generate random puzzles. Any good programmer should be able to write a program to do this. Most info can be found through Google that will spec out the type of puzzle and the rules.
2) Tweak the puzzle to make it look better (optional). This step does not really apply for Sudoku but could for puzzles like or similar to Klotski or Sokoban. Depending on how fancy you want to get this step does not even need any programming, you could just do it with paper and pencil.
3) Optimized puzzle solver. This program would verify there is a solution, detail the solution and minimum number of steps to solve. This is probably the hardest piece to have done. But most good programmers should be able to do it.
For any of these steps there are no restrictions on what programming language to use. Just use something that you are able to easily work with, or let your programmer suggest. They should be able to make a Mac or PC application out of it.
This whole process can be optimized depending on the puzzle type. Any or all of the steps could be incorporated into a single piece of software. You will need to go through this process for each type of puzzle app you want to create. The software can be as fancy or as crude as you like. For some puzzle types someone may have already written a program you can use for free. Google is your friend.
I’ll be going through this process myself soon and will post more details about it at that time.