chiark / gitweb /
Always something. Mention `svn add'ing the .R file in the new-puzzle
[sgt-puzzles.git] / CHECKLST.txt
1 Useful checklists
2 =================
3
4 Things to remember when adding a new puzzle
5 -------------------------------------------
6
7 Write the source file for the new puzzle (duhh).
8
9 Create a .R file for it which:
10  - defines a Recipe symbol for it if it requires auxiliary object
11    files
12  - adds it to the `ALL' definition, to ensure it is compiled into
13    the OS X binary
14  - adds it as a GTK build target
15  - adds it as a Windows build target
16  - adds auxiliary solver binaries if any
17  - adds it to $(GAMES) in the GTK makefile, for `make install'
18  - adds it to list.c for the OS X binary.
19
20 If the puzzle is by a new author, modify the copyright notice in
21 LICENCE and in puzzles.but. (Also in index.html, but that's listed
22 below under website changes.)
23
24 Double-check that the game structure name in the source file has
25 been renamed from `nullgame', so that it'll work on OS X. Actually
26 compiling it on OS X would be a good way to check this, if
27 convenient.
28
29 Add a documentation section in puzzles.but.
30
31 Make sure there's a Windows help topic name defined in puzzles.but,
32 and that it's referenced by the help topic field in the game
33 structure in the source file.
34
35 Add the new Unix binary name to the svn:ignore property.
36
37 Don't forget to `svn add' the new source file, and the new .R file,
38 before checkin!
39
40 Put the puzzle on the web:
41  - make a screenshot
42  - add an entry in the puzzles list in index.html
43  - adjust the copyright in index.html if the puzzle is by a new
44    author
45  - add a link to the Windows binary
46  - make sure the Windows binary link points at the right binary, not
47    the wrong one!
48  - run puzzlesnap
49  - test that the binary link and the docs link work
50  - run webupdate
51  - test again
52  - `svn add' the binary symlink and the screenshot
53  - check in the website changes (screenshot, symlink, index.html)