OverviewWith this component crossword puzzles of all types can be played and created. A puzzle can be (pre-)compiled by one of the included compilers or it can be generated on the fly dynamically. If your puzzle should be conform to a kind of pattern and have the maximum possible amount of crossings, pre-compilation is the choice. The included compilers are capable of creating puzzles up to the quality you find them in newspapers like the New York Times. Otherwise if you don’t want to deal with creating a large dictionary of word/clue pairs and don’t need a puzzle pattern you can just let the component create a puzzle dynamically on-the-fly with a few words.
The Flash Application
The Flash application allows to play within your Internet browser any kind of crossword puzzles. It supports American style puzzles (like you find them in the New York Times e.g.), Japanese style, British style, free style puzzles of all sizes etc.
- Mostly all left-to-right languages are supported (UTF-8).
- Pictures can be shown. You can link any word/clue to an image.
- It is XML driven and resizable
- The welcome screen can be suppressed (like in the preview)
- Like in the word search puzzle game there is a regular and an exam mode for playing integrated. The exam mode prohibits the player from using the auto-solve function.
- Time is measured and you can set a time limit to restrict the time of play.
- You can set the width of the clue lists on the right side
- There is an auto-solve function incorporated to auto-solve letters, words or the whole puzzle at once if you need help playing the game.
- After finishing the game you will see a screen showing you your statistics including a score.
- Everything is nicely animated and beyond that there is a PHP back-end application included which allows the player to submit his/her results to a MySQL database for evaluation purposes. Submitted is email address, date of play, score, time of play and number of letters solved without the computer’s help.
- Included keyboard controls: arrow keys (navigate in the grid), enter key (switches between across and down if possible), backspace (deletes the selected letter and goes to the previous one), delete (deletes the selected letter)
- A crossword puzzle is set up through an easily to understand well documented XML file. You can create one by hand or let the Flash component create it based on a simple list of words/clues dynamically on the fly or you can use the included crossword puzzle compilers to generate an advanced one…
- You can choose a puzzle out of many categorized ones. For that the Flash front-end loads a puzzle collection XML file which contains an unlimited set of puzzles with categories and descriptions. Such an XML file is easily created and there is a complete description of it in the documentation.
- FlashVars are supported so you can define your puzzle collection file within the HTML file.
- A game can be saved at any point allowing you to continue it whenever you like to. However you can turn off this feature as it makes sense in an exam setting e.g.
- It can be set if the wrong letters should be highlighted in red or not. (This effects the difficulty quite a lot)
Credits: Some dynamic logic incorporated is related to a C implementation from Franz Korntner, firstname.lastname@example.org, 1996, GNU2 . For a free copy you can email me too and I will give it to you.
The Java Crossword Puzzle Compilers
Creating very good crossword puzzles is a difficult task in regard to computation theory.
This package includes to be precise 2 crossword puzzle (pre-)compilers. Beyond that the Flash application is able to create puzzles dynamically.
- The Devarai Crossword Puzzle Compiler is a multi-threaded Java application based on Evolutionary Algorithms. It specializes in so-called free form/free style puzzles like you can see one in the “example 2” in the preview. This compiler has the advantage that it is robust. This means that when there is no perfect solution found it can deliver you a “nearly” best solution that is not optimal but still quite good. You will be always given a solution. The dictionary you need can be relatively small. Executables are included. It is seemlessly integrated with the Flash front-end.
- The CWC Crossword Compiler we include in this package is an adaptation of the algorithm presented in 1999 by Lars Christensen in C++ (see web site). This program is based on exhaustive search and intelligent backtracking. Our adaptation has a nice user interface, supports large alphabets, uses XML and fits in perfectly with our Flash front-end. It generates a XML file that can be directly imported to our front-end. This compiler is able to compile highly dense and symmetric puzzles like you find them in newspapers like the New York Times. However it needs a large dictionary to succeed. We recommend to experiment with different puzzle patterns that correlate well with your dictionary. This compiler is published under the GNU GPL license. The source code can be downloaded independently from our component for free on our web site (see here). Note: In the package sold on ActiveDen there is a Windows executable and a cross-platform executable JAR included.
As mentioned you have to provide a dictionary XML file with some phrases/words and their corresponding clues for both compilers. There is an example dictionary file included for the English audience with some hundred words with clues which let you create puzzles right from the start. The CWC compiler needs as well a puzzle pattern XML description file which can be easily created (an example is included). Everything is explained in our documentation.There is a training video for the compilers available on YouTube: click here
All source code (including the Java apps) is included. Everything is extensively documented. For any further questions or suggestions don’t hesitate to contact us.
Enjoy this great creation from Devarai!
- Puzzles can be generated dynamically
- Pictures can be shown. Every clue/word can be linked to an image.
Comprehensive Update 12/15/2010
- Game state can be saved
- A complete set of puzzles can be loaded
- Puzzles can be categorized
- A lot of fine-tuning
- Improved the documentation
- Updated the crossword puzzle compilers
All updates are free for buyers.