chiark / gitweb /
When setting focus on commodities, always use top left corner of table
[ypp-sc-tools.db-test.git] / pctb / README
index 2a085b2011c9d0938e5ee37cb19fd9ed6420625c..8379208a4e7319ef1e0c7481c8c4751405040439 100644 (file)
@@ -6,16 +6,23 @@ This tool can:
   - produce the results as a tab separated values file
   - upload the results to PCTB
 
-To run it, change to this directory, type `make', and then:
-  ./ypp-commodities --tsv >commods.tsv
-or
-  ./ypp-commodities --upload
+To build, install the dependencies, cd to this directory and type `make'.
+
+To screenscrape and upload to the PCTB server, select `trade
+commodities' from the hold of a vessel or building, and run:
+   ./ypp-commodities
+Currently we use pctb.ilk.org, the testing instance of the PCTB
+database, pending approval from the operators of the main server.
+
+Or, for example, for a tab-separated values dump:
+   ./ypp-commodities --tsv >commods.tsv
 
 While it is capturing the screenshots, do not move the mouse or use
 the keyboard.  Keyboard focus must stay in the YPP client window.
+If you use Gnome or KDE you must raise the YPP client window so that
+it is completely unobscured - the ypp-commodities program tries to do
+this but metacity and kwin do not honour the request.
 
-You will probably need to turn off `Use antialiased font' in the YPP
-client.  This is in the Ye panel, Options, tab `General'.
 
 Command-line options
 --------------------
@@ -29,10 +36,10 @@ Setting the operation mode:
 Options to vary the processing:
   --single-page         One screenful, no paging - results will be incomplete
   --quiet               Suppress progress messages
-  --screenshot-file F   Store or read screenshots in F rather than #pages#.pnm
+  --screenshot-file F   Store or read screenshots in F rather than _pages.ppm
   --window-id ID        Specified X window is the YPP client - do not search
   --edit-charset        Enable character set editing.  See README.dictionary.
-  --no-edit-charset     Do not edit charset even if #local-char*#.txt exists.
+  --no-edit-charset     Do not edit charset even if _local-char*.txt exists.
   --find-island         Find and print the ocean and island.  Suppresses OCR
                          and output unless used with result processing option.
   --test-servers        Set default servers to be the test servers, not
@@ -59,99 +66,11 @@ Options to override which servers we talk to:
 Or set the environment variables YPPSC_PCTB{_PCTB, _DICT_UPDATE, _DICT_SUBMIT}
 
 
-Files we use and update
------------------------
-
-The program reads and writes the following files:
-
- * #pages#.pnm
-
-   Contains one or more images (as raw ppms, end-to-end) which are the
-   screenshots taken in the last run.  This is (over)written whenever
-   we take screenshots from the YPP client.  You can reprocess an
-   existing set of screenshots with the --same (aka --analyse-only)
-   option; in that case we just read the screenshots file.
-
-   You can specify a different file with --screenshot-file.
-
-   If you want to display the contents of this file, `display' can do
-   it.  Don't try `display vid:#pages#.pnm' as this will consume
-   truly stupendous quantities of RAM - it wedged my laptop.
-
- * #master-newcommods#.txt #local-newcommods#.txt
-
-   Dictionary of newly introduced commodities.  When a new commodity
-   appears in Puzzle Pirates, the PCTB server operators need to add it
-   to their database for us to be able to upload data about it.
-
-   It can sometimes take a few days to do this.  In the meantime, it
-   is possible to upload partial data - data just omitting that
-   commodity.  This is controlled by these files: they list
-   commodities which should be automatically ignored if the PCTB
-   server doesn't know about them.  The master file is downloaded and
-   updated automatically from my server.  You may create the local
-   file yourself.  The format is simple: one commodity per line.
-
-   Unrecognised commodities can also be due to OCR failure so
-   double-check what you're doing before overriding the uploader by
-   telling it to ignore an unrecognised commodity.
-
- * #master-reject#.txt #local-reject#.txt
-
-   Dictionary of regexps which, when the OCR appears to match, we
-   reject instead.  At the moment this is used to stop us thinking
-   that `Butterfly weed' is `Butterflyweed'.  This happens if the
-   character set dictionary is missing the lowercase `y ' glyph.
-   See README.charset.
-
- * #master-char*#.txt  #local-char*#.txt
-   #master-pixmap#.txt #local-pixmap#.txt
-
-   Character set and image dictionaries.  For the semantics of the
-   char* files README.charset.  There is not currently any accurate
-   documentation of this dictionary format.
-
-   #master-*#.txt contain the centrally defined and approved data.
-   They are downloaded automatically from the SC PCTB server and
-   updated each run.  You can safely delete this file, if everything
-   is online, if you want to fetch a fresh copy.
-
-   #local-*#.txt are a local copy of your submissions, so that they
-   will be used by your client pending approval by me.  You can delete
-   this file if you think you may have made a mistake.
-
-   See README.privacy for details of the communications with the SC
-   server about the contents of these dictionaries.
-
- * #commodmap#.tsv
-
-   Map from commodity names to the numbers required by the PCTB
-   server.  This is fetched and updated automatically as necessary.
-   It can safely be deleted as it will then be refetched.
-
- * #upload-1#.html #upload-2#.html
-
-   We screenscrape the pages from the PCTB upload server.  The actual
-   HTML returned from the upload server is left in these dropping
-   files for debugging etc.
-
- * <file>.tmp
-
-   When any of these tools overwrite one of the persistent dictionary
-   files, they temporarily write to <file>.tmp.
-
-These files are all in the current working directory.  There is not
-yet any feature to have them be somewhere else.  The helper programs
-  dictionary-manager
-  commod-results-processor
-must (currently) also be in the current directory.
-
-Future versions may have more helpers and more data files.
-
-
 Installation requirements
 -------------------------
 
+Your X server must be 24bpp (or better).
+
 This program has quite a few dependencies:
                                                        Package (Debian etch)
 
@@ -168,7 +87,21 @@ This program has quite a few dependencies:
  - Perl interpreter and basic modules                  perl (usu.installed)
 
 On other Linux distros the packages may have different names, but
-these should be roughly right for Debian and its derivatives.
+these should be roughly right for Debian and its derivatives.  You can
+install them with this rune:
+  sudo apt-get install build-essential libnetpbm10-dev netpbm libx11-dev libxtst-dev libpcre3-dev tk8.4 libxml-parser-perl libjson-perl
+
+
+The supplied helper programs
+  dictionary-manager
+  commod-results-processor
+  database-info-fetch
+must (currently) also be in the current working directory when you run
+the main ypp-commodities program.
+
+The data files (see README.files) are also left in the current working
+directory.  There is notyet any feature to have the data files and
+helpers be somewhere else.
 
 
 Reporting problems
@@ -177,7 +110,7 @@ Reporting problems
 If you need to report a bug, for example an inability to recognise,
 please be sure to remember the exact error message and circumstances.
 Also, for recognition problems there will probably be a very useful
-screenshot file called `#pages#.pnm'.  This is likely to be very large
+screenshot file called `_pages.ppm'.  This is likely to be very large
 so don't just email it to me, but if you can put it up on a webpage
 for me to download that will help.  At least keep a copy of it.
 
@@ -185,7 +118,7 @@ If the problem is a failure to cope with some particular YPP client
 display and is reproducible, try running:
    ./ypp-commodities --raw-tsv --single-page
 If this reproduces the problem, please email me the screenshot file
-#pages#.pnm, which will consist only of the single screen, plus the
+_pages.ppm, which will consist only of the single screen, plus the
 error messasge.  I'll then be able to understand what's wrong,
 hopefully.
 
@@ -209,6 +142,47 @@ GUI.
 See README.privacy for full details.
 
 
+Authorship and copyright
+------------------------
+
+The PCTB server itself is a project of Joel Lord and various others.
+
+
+However, this screenscraper and upload client was written entirely
+from scratch by me, Ian Jackson.  It is part of ypp-sc-tools, a set of
+third-party tools for assisting players of Yohoho Puzzle Pirates.
+
+ypp-sc-tools is
+Copyright (C) 2009 Ian Jackson <ijackson@chiark.greenend.org.uk>
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+Yohoho and Puzzle Pirates are probably trademarks of Three Rings and
+are used without permission.  This program is not endorsed or
+sponsored by Three Rings.
+
+
+The character and UI images copied from the YPP client, and submitted
+to stored and shared by the YPP SC PCTB dictionary server, are those
+provided by Three Rings as part of the YPP client and by your Java
+installation.  I regard the current use of these images in this way as
+Fair Dealing (in the UK) or Fair Use (in the USA).
+
+These images do not form part of the ypp-sc-tools distribution,
+although the ypp-sc-tools pctb client does download them automatically
+from my dictionary server when run in the most ordinary way.
+
 
  - Ian Jackson
    ijackson@chiark.greenend.org.uk