Wednesday 4 March 2009

Simon Tatham's Portable Puzzle Collection - Code for my third-party Mosco puzzle

This is the code for the third-party Mosco puzzle I implemented for Simon Tatham's Portable Puzzle Collection. It can be incorporated into any of the official codebases (e.g. Palm, GTK, Java, etc.) just by putting the two files into the source code directory and re-running mkfiles.pl before recompiling. I'm putting this here because there aren't many out-of-tree third-party puzzles out there for the collection (the only one I could find was Maze3D).

The code is here:

http://www.ledow.org.uk/gp2x/mosco/

And there are only two files, mosco.R and mosco.c. It has puzzle generation and a solver (admittedly naive) and should work on all platforms supported by the collection (tested on Linux, Cygwin, and my own SDL/GP2X port).

Saturday 28 February 2009

Version 1.1

Ledow has released version 1.1 of STPPC2x!

The latest version of my efforts to port Simon Tatham's Portable Puzzle Collection to the GP2X. This is a set of 31 addictive logic and puzzle games. Some are old favourites (like sudoku, sliding puzzles and minesweeper) and others you may not have seen before.



You can download STPPC2x immediately from the main website or from the GP2X archive. The music pack is unchanged and can be downloaded from the main website too.

So, what's new?

Collection:

Display - Show whether a game supports numeric input, a solver, etc. on the main menu, removed a couple of incorrect screen updates that could make the menu flicker, game preview images now centre properly (e.g. Maze3D's).

Gameplay - All games now have cursor-mode control, status-bar messages now "time out" rather than linger forever.

Input - Digit input for large games that need characters rather than just numbers.

Memory - Can now take advantage of the upper 32Mb of RAM should we ever run out of memory on the GP2X.

Screenshots - Now disabled by default, enable and press Stick-Click to use them.

Size - The size of the executable has been reduced by a number of means: removal of unused code, better final compression, shortening of static buffers, etc. Also, the images have been compressed more using pngcrush. This should save up to 500Kb on the GP2X.

Games

Cube - Massive memory usage (spotted by me) now fixed (by Simon Tatham).
Dominosa - More presets.
Guess - Fixed potential crash.
Loopy - improve generation of "Great-Hexagonal" games, quicker solvers.
Map - "Show immutable regions" option now removed - you can just press Y and the regions that can't be changed highlight in red.
Mosco - Fix completion bug, add end-of-game flash, clicking on the edge tiles highlights squares that could "point" to them, non-square grids and new presets.
Solo - Show intermediate lines properly, enable 4x4 etc. presets, add "Killer" Sudoku mode.

Feedback is appreciated and full source code is available from:

http://www.ledow.org.uk/gp2x/ or http://code.google.com/p/stppc2x/

Monday 12 January 2009

STPPC2x post-v1.0 update

Yes, I'm still working on it!

However, there were a few problems which meant I had trouble getting a working development environment up and running on a new machine - nothing drastic enough to stop coding but it turned from "must do" to "I'll get around to it".

Anyway, I am still coding and there's quite a few changes that have already gone into the main code repository (http://code.google.com/p/stppc2x/), but don't think that what you see in there is all that exists... I'm working on a few new features besides those listed in the previous post, it's just that it's a jumble of half-finished, specific-to-my-PC code that doesn't belong in SVN at the moment.

I won't be coding for Pandora, because STPPC2x is the only thing that I enjoy coding on recently and it would be pointless to port because Simon Tatham's original collection will run fine on it because it has full X-Windows support, but I will continue coding for the GP2X even if I'm the only person who actually uses my code! The Wiz is in a strange middle-ground... if I can get hold of one at some point, I may well port STPPC2x over provided it isn't too different from a programmatic point of view but I'm not going to buy one just to do that.

The Changelog at the SVN repository (latest version can always be found here: http://code.google.com/p/stppc2x/source/browse/trunk/CHANGELOG.GP2X ) has the lowdown on what I've finished recently (it doesn't sound very exciting!) and I still use what-will-be-v1.1 on my own GP2X when I'm out and about (I do about 3 hours of train journeys every day and take my GP2X everywhere still - perfect for beta-testing!).

It aten't dead!