Files
puzzles/CHECKLST.txt
Simon Tatham e2c84a5fd2 Introduce a mechanism in this source tree for building the container
web pages for the Java applets. Previously, those have all been
maintained by hand in my website's svn area, which is a bit silly. Now
we have a file per puzzle in the 'html' subdirectory which contains
the puzzle's name, one or two attributes, and the instructions snippet
to go below the puzzle applet; and then there's a Perl script that
builds all the real web pages out of that by adding in the parts
common across all files: the header, footer, and middle fragment with
the <applet> tag and resizing bits and pieces.

One piece _not_ checked in here is the footer text specific to my
hosting at chiark, which I think does still belong in the www area. So
Buildscr doesn't actually build the web pages; it just delivers the
bits and pieces by which my nightly snapshot script will be able to
run the program that _does_ build them, passing that footer as an
extra argument.

[originally from svn r9780]
2013-03-30 20:04:10 +00:00

76 lines
2.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 <puzzle>_EXTRA symbol for it if it requires auxiliary
object files (make sure that symbol doesn't contain the icon)
- adds it to the `ALL' definition, to ensure it is compiled into
the OS X binary
- adds it as a GTK build target, with the optional GTK icon
- adds it as a Windows build target, with the optional resource
file
- 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
- adds it to wingames.lst along with a textual name, for the build
system and Windows installer.
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.
Check that REQUIRE_RBUTTON and/or REQUIRE_NUMPAD are set as
appropriate.
Add the new Unix binary name, and the names of any auxiliary solver
binaries, to the svn:ignore property.
Write an instructions fragment for the webified puzzle pages, as
html/<puzzlename>.html .
Make a screenshot:
- create an appropriate save file in `icons'
- add the puzzle name to icons/Makefile
- set up a REDO property in icons/Makefile if the screenshot wants
to display a move halfway through an animation
- set up a CROP property in icons/Makefile if the icon wants to be
a sub-rectangle of the whole screenshot
Don't forget to `svn add' the new source file, the new .R file and the
save file in `icons', the new .html file, and any other new files that
might have been involved.
Check in!
Put the puzzle on the web:
- run puzzlesnap first
- make sure the screenshot and Windows binary have arrived in the www
directory, and that the .jar file and its accompanying web page has
arrived in the java subdirectory
- add an entry in the puzzles list in index.html
- add the Windows executable name to the list further down
index.html
- adjust the copyright in index.html if the puzzle is by a new
author
- test that the binary link and the docs link work
- test that the Java version works
- run webupdate
- test again
- check in the change to index.html