# El manual de &ksokoban;

## Introducción

El primer juego sokoban fue creado en 1982 por Hiroyuki Imabayashi en la compañía japonesa Thinking Rabbit, Inc. «Sokoban» en japonés significa «encargado de almacén». La idea es que el jugador es un encargado de un almacén que intenta colocar cada caja en su sitio dentro del almacén.

El problema es que no se puede tirar de las cajas o pasar sobre ellas. Si no tiene cuidado algunas de las cajas pueden quedar bloqueadas y/o cerrar el paso.

El resolver un nivel es de por sí bastante difícil. Pero puede aumentar la dificultad intentando minimizar el número de movimientos e impulsos utilizados para resolver el nivel.

Para hacer el juego divertido a los niños más pequeños (de unos 10 años o menos), en &ksokoban; se han incluído algunas colecciones de niveles sencillos. Estos están marcados como (fácil) en el menú de colección de niveles. Desde luego estos niveles también pueden resultar divertidos para los adultos, por ejemplo si no desean someterse a demasiada presión mental.

## El juego

El objetivo del juego es empujar todas las gemas rojas a sus cuadrados de llegada, que están marcados con un cristal verde incrustado en el suelo.

Utilice las teclas de cursor o el ratón para moverse. Si se mueve sobre una gema utilizando las teclas de cursor o el botón central del ratón, y no hay nada que bloquee el lado opuesto, empujará la gema. No es posible tirar de las gemas, así que si empuja una gema contra una esquina, quedará allí inmovilizada. Tampoco es posible pasar sobre las gemas, así que el jugador podría quedar atrapado en una parte del laberinto si bloquea la salida con gemas. Tenga también en cuenta que no es posible empujar más de una gema cada vez.

Si observa que ha movido las gemas de forma que no es posible resolver el nivel, siempre puede utilizar la función de deshacer para volver a la posición anterior a la comisión del error. También puede, por supuesto, volver a comenzar el nivel desde el principio.

### Controles

Tecla | Acción
Teclas de cursor | Movimiento de un cuadro en una dirección.
&Ctrl;Cursores | Movimiento de tantos cuadros como sea posible en una dirección sin empujar ninguna gema.
&Shift;Cursores | Movimiento de tantos cuadros como sea posible en una dirección moviendo cualquier gema que esté en el camino.
Botón izquierdo del ratón | Movimiento a cualquier lugar del laberinto al que se pueda llegar sin empujar ninguna gema.
Botón central del ratón o &Ctrl;Z | Deshacer el último movimiento
Botón derecho del ratón | Movimiento arriba/abajo/a la izquierda/a la derecha en línea recta empujando cualquier gema que se encuentre en el camino.
Ruleta del ratón | Desplazamiento por el historial de movimientos.
&Ctrl;&Shift;Z | Rehacer el último movimiento deshecho.
N | Ir al siguiente nivel en la colección actual de niveles.
P | Ir al nivel anterior en la colección actual de niveles.
&Esc; | Reiniciar el nivel actual.
&Ctrl;Q | Salir del juego.

### Carga de niveles externos

&ksokoban; tiene la posibilidad de cargar niveles externos desde archivos de texto. Puede cargar niveles utilizando la entrada de menú Juego Cargar niveles..., o especificando la &URL; del archivo de nivel como argumento de la línea de órdenes al iniciar &ksokoban; desde un intérprete de órdenes.

Los niveles externos deben ser definidos utilizando los caracteres estándar mostrados en la siguiente tabla. Si el archivo contiene más de un nivel, los niveles deben estar separados por líneas en blanco. El archivo también puede contener texto entre los niveles.

Carácter | Significado
`#` | Muro.
(espacio) | Cuadro vacío.
`.` | Cuadro de destino.
`$` | Objeto en un cuadro vacío.
`*` | Objeto en un cuadro de destino.
`@` | Posición inicial en un cuadro vacío.
`+` | Posición inicial en un cuadro de destino.

Como ejemplo, a continuación se muestra una representación en texto del primer nivel de la colección de niveles Microcircuito:

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

## Referencia de menús

Esta es una guía completa de los menús de &ksokoban;.

### El menú Juego

Juego Cargar niveles...

- Carga un nivel externo. Consulte la sección Carga de niveles externos para más información.

N Juego Siguiente nivel

- Carga el siguiente nivel.

P Juego Nivel anterior

- Carga el nivel anterior.

&Esc; Juego Reiniciar nivel

- Reinicia el nivel actual.

Juego Colección de niveles

- Cambia a un conjunto diferente de niveles. &ksokoban; viene con varios conjuntos de niveles, y puede cargar más que puede encontrar en Internet.

&Ctrl;Z Juego Deshacer

- Deshacer el último movimiento

&Ctrl;&Shift;Z Juego Rehacer

- Rehace el último movimiento que se haya deshecho con el elemento de menú anterior.

&Ctrl;Q Juego Salir

- Sale de &ksokoban;.

### El menú Animación

El menú Animación le permite especificar la velocidad de movimiento de las animaciones cuando se deshaga un movimiento.

Animación Lento

- Deshacer el último movimiento a velocidad lenta

Animación Medio

- Este es el valor predeterminado, y deshace el último movimiento a velocidad lenta.

Animación Rápido

- Deshacer el último movimiento a velocidad rápida.

Animación Apagado

- No muestra animaciones cuando se deshace el último movimiento.

### El menú Marcadores

Marcadores Configurar marcador

- &ksokoban; le permite establecer marcadores de un estado particular de un nivel. Puede utilizar esta opción para evitar tener que repetir siempre los primeros pasos de un nivel.

  Puede tener hasta diez marcadores en cada momento, y acceder a los mismos por medio de &Ctrl;`X`, donde `X` es cualquier dígito entre 0 y 9.

Marcadores Ir a marcador

- Salta al estado que se había almacenado previamente como marcador.

### El menú Ayuda

&help.menu.documentation;

## Créditos y licencia

&ksokoban; tiene copyright © 1998-2000 de &Anders.Widell; &Anders.Widell.mail;. Para obtener la última información sobre &ksokoban;, visite la página web de &ksokoban; en http://hem.passagen.se/awl/ksokoban/.

El gráfico de fondo «campo de estrellas» ha sido tomado de El Gimp. El resto de los gráficos han sido creados por &Anders.Widell; &Anders.Widell.mail; utilizando el trazador de rayos Povray.

Todos los niveles de sokoban instalados actualmente han sido creados por David W. Skinner sasquatch@bentonrea.com. Visite su página sobre sokoban en http://users.bentonrea.com/~sasquatch/sokoban/.

Traducido por Rafael Osuna rosuna@wol.es.

Traducido por Miguel Revilla Rodríguez yo@miguelrevilla.com.

&underFDL; &underGPL;

## Instalación

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