----------------------------------------------------------------------- KlinZha Boards V 1.1.4 (2000-11-14) 11/2000 by Volker Tanger http://www.wyae.de/software/ ----------------------------------------------------------------------- KlinZha-Boards is a perl script that converts short-notations of KlinZha game moves into a more readable (ASCII-) graphic notation and calculates the (total) time the players needed for their moves (comes in handy in remote KlinZha). The script takes input from STDIN and pours the output to STDOUT, thus can be used as filter. For details on the KlinZha game itself, please refer to The Authorized KlinZha Homepage at http://www.fyi.net/~kordite/klinzha.htm ----------------------------------------------------------------------- Requirements ----------------------------------------------------------------------- * Perl installed (I guess even older versions will do) * The template board file (board_template.txt) has to be in the current directory. Alternatively you can configure an absolute path within the perl script. ----------------------------------------------------------------------- Provided Material: ----------------------------------------------------------------------- * Transcriptions of the original sample games from Kordite's "Authorized KlinZha Homepage" (http://www.fyi.net/~kordite/klinzha.htm) Thanks Kordite! * Transcription of a game between veSbe' and yabHuj (ongoing) * Graphical output of this - file ZUEGE_GRAPHISCH.TXT * Shell-script "mkBoard" that does the converting job. It is fairly simple and provides an easy adaption on local server settings. ----------------------------------------------------------------------- Short-Notation Format: ----------------------------------------------------------------------- * Each section is separated from the other by a separator: a line that starts with at least three dashes (---). * 1st Section - Header: yyyy-mm-dd hh:mm - time of game start X PlayerX - 1-letter ID and name of 1st player Y PlayerY - 1-letter ID and name of 2nd player * 2nd / 3rd section - Setup: In the 2nd section PlayerX sets all his pieces onto the board. In the 3rd section PlayerB does so. The notation does not differ from moves later in the game - except that all pieces are "moved". The format is: yyyy-mm-dd hh:mm - time of setup Xaa x99 - piece AA is set on position x99 Xbb x88 - piece BB is set on position x88 (cont.) * Further sections - The Match: yyyy-mm-dd hh:mm - time of this move Xaa x00 - piece AA is moved to position x00 (cont.) ----------------- Pieces and moves: ----------------- * Lines in the movement section starting with a semicolon (;) are comments (or continuations thereof). * Pieces are notated in three-letter-words. The first letter is the Player ID as set in the notation header. I highly recommend to use letters that are easy to distinguish. 1/l (one/ell) and O0 (oh/zero) are especially nasty combinations in this respect, but MN, GQO0 or HKR are not much better either, especially on bad/tiny displays. * The second and third letter denote the type of piece. The following abbreviations are used here: bl = Blockader f1 = Flyer-1 f2 = Flyer-2 fe = Fencer la = Lancer sw = Swift v1 = Vanguard-1 v2 = Vanguard-2 v3 = Vanguard-3 go = The Goal * Moves are notated as follows: PIECE [space] POSITION [space] COMMENT COMMENT ... The position is notated as defined in ASCII-Zha. The comment is optional. Please see the sample file "zuege.zha" for a short example. To remove a piece from the board, simply move it to the (nonexisting) field 000. The goal has always to be moved as last piece. ----------------------------------------------------------------------- Known bugs: ----------------------------------------------------------------------- * Does not really check for correct notation. * Does not validate movement. * Goal is "invisible" if being carried. * The goal is not automagically carried - you have to "move" it with a separate command - along with the carrying piece. * Date/Time entries not checked for correctness. ----------------------------------------------------------------------- Have fun Qapla' Volker Tanger yabHuj -- --======================================================-- QIb vestai yabHuj Chief Ambassador Volker Tanger Khemorex Klinzhai yabHuj@khemorex-klinzhai.de PGP Key available Unsolicited advertising mail is not wanted! --==============================================-- http://www.khemorex-klinzhai.de/faqs/meta-faq.html All Klingon FAQs --------------------------------------------------------------- Shortcut: Distributable under "Modified BSD" license --------------------------------------------------------------- Copyright (c) 2000 Volker Tanger All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditionsare met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE ---------------------------------------------------------------