Add KNetwalk help handbook.

pull/1/head
Darrell Anderson 11 years ago
parent ceaf53c042
commit 305beeb1d5

@ -0,0 +1,9 @@
#################################################
#
# Improvements and feedback are welcome
#
# This file is released under GPL >= 2
#
#################################################
tde_create_handbook( DESTINATION knetwalk )

@ -0,0 +1,3 @@
KDE_LANG = en
KDE_DOCS = AUTO

@ -0,0 +1,334 @@
<?xml version="1.0" ?>
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
<!ENTITY knetwalk "<application>KNetwalk</application>">
<!ENTITY kappname "&knetwalk;">
<!ENTITY package "tdegames">
<!ENTITY % English "INCLUDE">
<!ENTITY % addindex "IGNORE">
]>
<book id="knetwalk" lang="&language;">
<bookinfo>
<title>The &knetwalk; Handbook</title>
<authorgroup>
<author>
<firstname>Fela</firstname>
<surname>Winkelmolen</surname>
<affiliation>
<address><email>fela.kde@gmail.com</email></address></affiliation>
</author>
<author>
<firstname>Eugene</firstname><surname>Trounev</surname>
<affiliation><address><email>eugene.trounev@gmail.com</email></address></affiliation>
</author>
<author>&tde-authors;</author>
<!-- TRANS:ROLES_OF_TRANSLATORS -->
</authorgroup>
<copyright>
<year>2007</year>
<holder>Fela Winkelmolen</holder>
</copyright>
<copyright>
<year>&tde-copyright-date;</year>
<holder>&tde-team;</holder>
</copyright>
<legalnotice>&FDLNotice;</legalnotice>
<date>2007-11-13</date>
<releaseinfo>3.0.0</releaseinfo>
<abstract>
<para>
&knetwalk; is a game for system administrators.</para>
</abstract>
<keywordset>
<keyword>TDE</keyword>
<keyword>tdegames</keyword>
<keyword>game</keyword>
<keyword>logic game</keyword>
<keyword>knetwalk</keyword>
</keywordset>
</bookinfo>
<chapter id="introduction">
<title>Introduction</title>
<para>
&knetwalk; is a single player logic game.
</para>
<para>
The object of the game is to start the LAN, connecting all the terminals to the server, in as few turns as possible.
</para>
</chapter>
<chapter id="how-to-play">
<title>How to Play</title>
<para>
The player is presented with a rectangular grid containing a server, several terminals, and pieces of wire. The object of the game is to rotate these elements until every client is connected to the server, and no wires are left unconnected. Optionally, you can try to get a high score by minimizing the number of rotations needed.
</para>
<para>
Left clicking on a square rotates it counterclockwise, while right clicking rotates it clockwise. Middle clicking on a square marks it as blocked and prevents it from being rotated unless it gets unblocked by another middle click; this can be very useful for marking squares which are known to be in the correct orientation. The status bar displays the number of clicks so far.
</para>
</chapter>
<chapter id="rules-strategies-tips">
<title>Game Rules, Strategies and Tips</title>
<sect1 id="rules">
<title>Rules</title>
<itemizedlist>
<listitem><para>There is only one possible correct solution for every game.</para></listitem>
<listitem><para>When playing the <guilabel>Very hard</guilabel> difficulty level connections can wrap from left to right and from top to bottom.</para></listitem>
<listitem><para>The game ends when every terminal and every wire is connected to the server.</para></listitem>
<listitem><para>The score represents the number of clicks it took to complete the game. The lower the score the better.</para></listitem>
</itemizedlist>
</sect1>
<sect1 id="stategies-and-tips">
<title>Strategies and Tips</title>
<itemizedlist>
<listitem><para>Start seeking for squares which orientation can be easily determined.</para></listitem>
<listitem><para>Once you are sure of the orientation of a square you can mark it using the &MMB;. This is particularly usefull in harder games.</para></listitem>
<listitem><para>Look for I-shaped and T-shaped wires near the borders, and L-shaped wires near the edges. The position of these squares can be easily determined, unless you are playing the <guilabel>Very hard</guilabel> difficulty level.</para></listitem>
<listitem><para>When playing the <guilabel>Very hard</guilabel> difficulty level a good place to start looking is near empty squares, if present, and near regions containing many terminals grouped together.</para></listitem>
<listitem><para>Even when playing with the same difficulty level some games are easier than others, restart the game if you want to get a different board.</para></listitem>
<listitem><para>If you want to get a good score, only do a move when you are sure.</para></listitem>
</itemizedlist>
</sect1>
</chapter>
<chapter id="interface-overview">
<title>Interface Overview</title>
<sect1 id="game-menu">
<title><guimenu>Game</guimenu> Menu</title>
<variablelist>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>New</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Starts a new game. It creates a random board using the current difficulty level.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>H</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Show High Scores</guimenuitem></menuchoice></term>
<listitem>
<para>
Shows a dialog containing the High Scores for the various difficulty levels.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<shortcut>
<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
</shortcut>
<guimenu>Game</guimenu>
<guimenuitem>Quit</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Quits the program.
</para>
</listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="settings-menu">
<title><guimenu>Settings</guimenu> Menu</title>
<variablelist>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Toolbar</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Toggles on and off the display of the toolbar.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Show Statusbar</guimenuitem>
</menuchoice></term>
<listitem>
<para>
Toggles on and off the display of the statusbar.
</para>
</listitem>
</varlistentry>
<!--
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Themes</guimenuitem>
</menuchoice></term>
<listitem><para>
<action>Choose a graphical theme for the game. Which themes are available depends on the current installation.</action>
</para></listitem>
</varlistentry>
-->
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guisubmenu>Difficulty</guisubmenu>
</menuchoice></term>
<listitem>
<para>Lets you set the difficulty level from a sub-menu.</para>
<para>There are four levels of difficulty:
<itemizedlist>
<listitem><para><guimenuitem>Easy</guimenuitem>: 5 rows, 5 columns, without wrapping.</para></listitem>
<listitem><para><guimenuitem>Medium</guimenuitem>: 7 rows, 7 columns, without wrapping.</para></listitem>
<listitem><para><guimenuitem>Hard</guimenuitem>: 9 rows, 9 columns, without wrapping.</para></listitem>
<listitem><para><guimenuitem>Very hard</guimenuitem>: 9 rows, 9 columns, with wrapping.</para></listitem>
</itemizedlist>
</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Shortcuts...</guimenuitem>
</menuchoice></term>
<listitem><para>
<action>Opens a dialog which lets you redefine all the keyboard shortcuts.</action>
</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice>
<guimenu>Settings</guimenu>
<guimenuitem>Configure Toolbars...</guimenuitem>
</menuchoice></term>
<listitem><para>Displays a &tde; standard dialog where you can configure the toolbar icons.</para></listitem>
</varlistentry>
<varlistentry>
<term><menuchoice><guimenu>Settings</guimenu><guimenuitem>Configure
Notifications...</guimenuitem></menuchoice></term>
<listitem><para>This item displays a standard &tde; notifications configuration
dialog, where you can change the notifications (sounds, visible messages,
&etc;) used by &knetwalk;.</para></listitem>
</varlistentry>
</variablelist>
</sect1>
<sect1 id="help">
<title><guimenu>Help</guimenu> Menu</title>
&help.menu.documentation;
</sect1>
<sect1 id="keybindings">
<title id="keybindings-title">Shortcuts</title>
<para>The default shortcuts are:</para>
<table>
<title>Shortcuts</title>
<tgroup cols="2">
<tbody>
<row>
<entry>Start a new game</entry>
<entry>
<keycombo action="simul">&Ctrl;<keycap>N</keycap></keycombo>
</entry>
</row>
<row>
<entry>Show High Scores</entry>
<entry>
<keycombo action="simul">&Ctrl;<keycap>H</keycap></keycombo>
</entry>
</row>
<row>
<entry>Quit</entry>
<entry>
<keycombo action="simul">&Ctrl;<keycap>Q</keycap></keycombo>
</entry>
</row>
<row>
<entry>Help</entry>
<entry><keycap>F1</keycap></entry>
</row>
<row>
<entry>What's this?</entry>
<entry>
<keycombo action="simul">&Shift;<keycap>F1</keycap></keycombo>
</entry>
</row>
</tbody>
</tgroup>
</table>
</sect1>
</chapter>
<chapter id="credits">
<title>Credits and License</title>
<para>
&knetwalk;
</para>
<para>
Program copyright 2004 - 2007 by Andi Peredri, Thomas Nagy and Fela Winkelmolen <email>fela.kde@gmail.com</email>
</para>
<para>
Documentation copyright 2007 by Fela Winkelmolen <email>fela.kde@gmail.com</email>
</para>
<!-- TRANS:CREDIT_FOR_TRANSLATORS -->
&underFDL;
&underGPL;
</chapter>
&documentation.index;
</book>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:t
End:
-->

@ -1,13 +1,7 @@
[Desktop Entry] [Desktop Entry]
Type=Application Type=Application
Exec=knetwalk -caption "%c" %i %m Exec=knetwalk -caption "%c" %i %m
# Restore the following key and remove this comment when a help handbook DocPath=knetwalk/index.html
# is written. Disabling this key prevents populating the main handbook
# table of contents with a non-existent document, which results in a
# main handbook error message of
# 'There is no documentation available for /xyz/index.html.'
# Also disable this key when there exists only a useless template handbook.
# DocPath=knetwalk/index.html
Name=KNetwalk Name=KNetwalk
Name[bn]=কে-নেটওয়াক Name[bn]=কে-নেটওয়াক
Name[fi]=KNetwalk Name[fi]=KNetwalk

@ -24,7 +24,7 @@
#include "mainwindow.h" #include "mainwindow.h"
static const char description[] = static const char description[] =
I18N_NOOP("KNetWalk, a game for system administrators."); I18N_NOOP("KNetwalk, a game for system administrators.");
static const char version[] = "1.0"; static const char version[] = "1.0";
@ -39,7 +39,7 @@ static TDECmdLineOptions options[] =
int main(int argc, char ** argv) int main(int argc, char ** argv)
{ {
TDEAboutData about("knetwalk", I18N_NOOP("knetwalk"), version, description, TDEAboutData about("knetwalk", I18N_NOOP("KNetwalk"), version, description,
TDEAboutData::License_GPL, I18N_NOOP("(C) 2004, 2005 Andi Peredri, ported to KDE by Thomas Nagy"), 0, TDEAboutData::License_GPL, I18N_NOOP("(C) 2004, 2005 Andi Peredri, ported to KDE by Thomas Nagy"), 0,
"tnagyemail-mail@yahoo.fr"); "tnagyemail-mail@yahoo.fr");
about.addAuthor( "Andi Peredri", 0, "andi@ukr.net" ); about.addAuthor( "Andi Peredri", 0, "andi@ukr.net" );

Loading…
Cancel
Save