Picross (nonogram) implementation inspired by the NDS Picross game.
The goal of the game is to complete the grid with filled tiles and cross tiles according to the restrictions given on the sides. A more detailed explanation is given below.
- Randomized Picross puzzles of a customizable size and density (can also be shared using the seed).
- Input support for both the mouse and the keyboard.
- A test mode where you can try out ideas before applying them to the board.
- Realtime feedback via the numbers on the side.
- A possible solution for each puzzle.
See also the Wikipedia article.
The goal of the game is to change every tile in the grid to either a filled tile or a tile with a cross in it. To do this the numbers in front of each row and the number above each column give hits as to which tiles have to be filled. Each individual number represents a sequence of filled connected tiles on that row or column. These sequences appear in the same order as their associated numbers. So for example the hint 2 3 2 1 means that in order there is a sequence of 2 filled tiles, followed by a sequence of 3 filled tiles, followed by a sequence of 2 and finally followed by a sequence of 1 tile. Between these sequences are one or more cross tiles.
As you are playing the program will start graying out the numbers. When a number turns gray this means that you have enclosed a sequence of that length and it is connected via a sequence of filled and/or cross tiles to the side of the game board. If a number turns red this means that there is an error with the sequence representing the number that turned red. If all the numbers turn red this means that either too many or too few sequences are present on a line/column while the entire line is filled with filled tiles or cross tiles.
Filling the entire grid using these hints completes the game. Have fun!
A list of controls for the game.
General controls needed to play the game.
- Left mouse button to fill a tile
- Right mouse button to place a cross
- Left click a filled tile to empty it
- Right click a cross to remove it
- W or arrow up to move up
- S or arrow down to move down
- A or arrow left to move left
- D or arrow right to move right
- Space bar to fill a tile
- Shift to place a cross
- Press space bar on a filled tile to empty it
- Press shift on a cross to remove it
- T to enter test mode
- C to leave test mode and save changes
- V to leave test mode and undo changes
- R to toggle showing the original solution (note that other solutions might also be valid)
- You can drag the game around with the mouse if you click and hold outside the grid (useful if numbers are offscreen)
Windows executable
Runnable Java Archive
This is an Eclipse + Gradle project with Util as the only JAR dependency.
Project development started: 4th of October, 2019.