mirror of
git://git.tartarus.org/simon/puzzles.git
synced 2025-04-20 23:51:29 -07:00
Files

when testing a new game, so here's a new architecture for the Recipe file. mkfiles.pl now supports several new features: - an `!include' directive, which accepts wildcards - += to append to an existing object group definition - the ability to divert output to an arbitrary file. So now each puzzle has a `.R' file containing a fragment of Recipe code describing that puzzle, and the central Recipe does `!include *.R' to construct the Makefiles. That way, I can keep as many experimental half-finished puzzles lying around my working directory as I like, and I won't have to keep reverting Recipe when I check in any other changes. As part of this change, list.c is no longer a version-controlled file; it's now constructed by mkfiles.pl, so that it too can take advantage of this mechanism. [originally from svn r6781]
53 lines
1.7 KiB
Plaintext
53 lines
1.7 KiB
Plaintext
Useful checklists
|
|
=================
|
|
|
|
Things to remember when adding a new puzzle
|
|
-------------------------------------------
|
|
|
|
Write the source file for the new puzzle (duhh).
|
|
|
|
Create a .R file for it which:
|
|
- defines a Recipe symbol for it if it requires auxiliary object
|
|
files
|
|
- adds it to the `ALL' definition, to ensure it is compiled into
|
|
the OS X binary
|
|
- adds it as a GTK build target
|
|
- adds it as a Windows build target
|
|
- adds auxiliary solver binaries if any
|
|
- adds it to $(GAMES) in the GTK makefile, for `make install'
|
|
- adds it to list.c for the OS X binary.
|
|
|
|
If the puzzle is by a new author, modify the copyright notice in
|
|
LICENCE and in puzzles.but. (Also in index.html, but that's listed
|
|
below under website changes.)
|
|
|
|
Double-check that the game structure name in the source file has
|
|
been renamed from `nullgame', so that it'll work on OS X. Actually
|
|
compiling it on OS X would be a good way to check this, if
|
|
convenient.
|
|
|
|
Add a documentation section in puzzles.but.
|
|
|
|
Make sure there's a Windows help topic name defined in puzzles.but,
|
|
and that it's referenced by the help topic field in the game
|
|
structure in the source file.
|
|
|
|
Add the new Unix binary name to the svn:ignore property.
|
|
|
|
Don't forget to `svn add' the new source file before checkin!
|
|
|
|
Put the puzzle on the web:
|
|
- make a screenshot
|
|
- add an entry in the puzzles list in index.html
|
|
- adjust the copyright in index.html if the puzzle is by a new
|
|
author
|
|
- add a link to the Windows binary
|
|
- make sure the Windows binary link points at the right binary, not
|
|
the wrong one!
|
|
- run puzzlesnap
|
|
- test that the binary link and the docs link work
|
|
- run webupdate
|
|
- test again
|
|
- `svn add' the binary symlink and the screenshot
|
|
- check in the website changes (screenshot, symlink, index.html)
|