# Handbok &ksokoban;

Anders Widell

    &Anders.Widell.mail;

Stefan Asserhäll

    stefan.asserhall@comhem.se

Översättare
2000 &Anders.Widell;
&FDLNotice;
2006-06-19
0.4.2

&ksokoban; är en &kde;-implementering av det japanska lagerarbetarspelet Sokoban.

KDE kdegames spel sokoban ksokoban

## Inledning

Det första Sokoban-spelet skapades 1982 av Hiroyuki Imabayashi hos det japanska företaget Thinking Rabbit, Inc. Sokoban är japanska för lagerarbetare. Idén är att du är en lagerarbetare som försöker knuffa spjällådor till deras riktiga plats i en lagerbyggnad.

Problemet är att du inte kan dra lådorna eller hoppa över dem. Om du inte är försiktig kan en del lådor fastna på fel ställe och/eller blockera din väg.

Det kan vara ganska svårt att bara lösa en nivå, men om du vill göra det ännu svårare kan du försöka minimera antalet förflyttningar och/eller knuffar som du använder för att lösa en nivå.

För att göra spelet roligare för små barn (mindre än omkring 10 år), finns några samlingar med lättare nivåer tillgängliga i &ksokoban;. Dessa är markerade med (lätt) i menyn för nivåsamlingar. De här nivåerna kan förstås vara roliga för vuxna också, till exempel om man inte vill utsätta sig för alltför mycket mental påfrestning.

## Spelet

Målet med spelet är att flytta alla röda juveler till målrutorna, som är markerade med runda gröna glasliknande saker på golvet.

Använd piltangenterna eller musen för att flytta omkring. Om du flyttar mot en juvel med piltangenterna eller mittenknappen på musen, och det inte finns något som blockerar den på andra sidan, så knuffar du juvelen. Det är inte möjligt att dra juvelerna, så om du knuffar en juvel in i ett hörn fastnar den där. Du kan inte heller hoppa över juvelerna, så du kan också bli fångad i en del av labyrinten genom att blockera vägen med juveler. Observera också att det inte är möjligt att knuffa mer än en juvel åt gången.

Om du märker att du har flyttat juvelerna på ett sätt som gör det omöjligt att lösa nivån, kan du alltid använda ångerfunktionen för att gå tillbaka till en position där misstaget inte gjorts än. Du kan förstås också starta om nivån från början.

### Styrning

Tangent | Åtgärd
--- | ---
Piltangenter | Flytta en ruta i någon riktning
&Ctrl;Piltangenter | Flytta så långt som möjligt i någon riktning utan att knuffa några juveler
&Shift;Piltangenter | Flytta så långt som möjligt i någon riktning, och knuffa alla juveler som är i vägen
Vänster musknapp | Flytta till vilken plats som helst i labyrinten som kan nås utan att knuffa några juveler
Mittenknappen på musen eller &Ctrl;Z | Ångra senaste draget
Höger musknapp | Flytta uppåt/neråt/vänster/höger i en rak linje, och knuffa alla juveler som är i vägen
Mushjulet | Gå igenom historiken
&Ctrl;&Shift;Z | Gör om det senaste ångrade draget
N | Gå till nästa nivå i den nuvarande nivåsamlingen
P | Gå till föregående nivå i den nuvarande nivåsamlingen
&Esc; | Starta om nuvarande nivå
&Ctrl;Q | Avsluta spelet

### Att ladda externa nivåer

&ksokoban; har möjlighet att ladda externa Sokoban-nivåer från textfiler. Du kan ladda nivåer med menyn Spel Ladda nivåer... , eller genom att ange nivåfilens webbadress på kommandoraden när du startar &ksokoban; från ett skal.

De externa nivåerna måste definieras med standardtecknen som visas i tabellen nedan. Om filen innehåller mer än en nivå, ska nivåerna skiljas åt med tomma rader. Filen kan också innehålla text mellan nivåerna.

Tecken | Betydelse
--- | ---
`#` | Vägg
(blanktecken) | Tom ruta
`.` | Målruta
`$` | Objekt på en tom ruta
`*` | Objekt på en målruta
`@` | Startposition på en tom ruta
`+` | Startposition på en målruta

Som ett exempel finns textrepresentationen av den första nivån i nivåsamlingen Microban nedan:

    ####
    # .#
    #  ###
    #*@  #
    #  $ #
    #  ###
    ####

## Menyreferens

Det här är en fullständig guide till menyerna i &ksokoban;.

### Menyn Spel

Spel Ladda nivåer...

  Ladda en extern nivå. Se avsnittet Att ladda externa nivåer för mer information.

N Spel Nästa nivå

  Ladda nästa nivå.

P Spel Föregående nivå

  Gå tillbaka till föregående nivå.

&Esc; Spel Starta om nivån

  Starta om nuvarande nivå.

Spel Nivåsamling

  Byt till en annan uppsättning nivåer. &ksokoban; levereras med flera uppsättningar nivåer, och du kan hämta fler som finns på Internet.

&Ctrl;Z Spel Ångra

  Ångra senaste draget

&Ctrl;&Shift;Z Spel Gör om

  Gör om den senaste förflyttningen som du ångrade med menyalternativet ovan.

&Ctrl;Q Spel Avsluta

  Avslutar &ksokoban;.

### Menyn Animering

Menyn Animering låter dig ange hastigheten som uppspelade animeringar av förflyttning visas med.

Animering Långsam

  Visa uppspelade animeringar med en långsam takt.

Animering Mellan

  Det här är den normala inställningen, och visar uppspelade animeringar med en något snabbare takt.

Animering Snabb

  Visa uppspelade animeringar med den snabbaste takten.

Animering Av

  Animera inte uppspelade animeringar.

### Menyn Bokmärken

Bokmärken Sätt bokmärke

  &ksokoban; låter dig sätta bokmärken för en nivå i ett visst tillstånd. Du kan använda det här för att undvika att upprepa samma inledande förflyttningar på en nivå.

  Du kan ha upp till tio bokmärken samtidigt, och komma åt dem via snabbtangenten &Ctrl; X, där X är någon siffra mellan 0 och 9.

Bokmärken Gå till bokmärke

  Hoppa till ett tillstånd som du tidigare sparat som ett bokmärke.

### Menyn Hjälp

&help.menu.documentation;

## Tack till och licens

&ksokoban; är copyright © 1998-2000 av &Anders.Widell; &Anders.Widell.mail;. För den senaste informationen om &ksokoban;, se &ksokoban;s hemsida på http://hem.passagen.se/awl/ksokoban/

Bakgrundsgrafiken starfield kommer från Gimp. All annan grafik är skapad av &Anders.Widell; &Anders.Widell.mail; med renderingsprogrammet Povray.

Alla Sokoban-nivåer som ingår för närvarande är skapade av David W. Skinner sasquatch@bentonrea.com. Se hans Sokoban-sida på http://users.bentonrea.com/~sasquatch/sokoban/

Översättning Stefan Asserhäll stefan.asserhall@comhem.se

&underFDL; &underGPL;

## Installation

&install.intro.documentation; &install.compile.documentation;
&documentation.index;