YSokoban
YSokoban е реализация на играта Sokoban. Програмата има поддръжка на кожи, поддръжка на езици,
неограничена възможност за връщане на извършени ходове,
възможност за игра с мишката и много клавишни комбинации за различни действия,
конфигурируем потребителски тоолбар
координатна система (подобна на шаха),
запомня решените нива за да не ви се налага да помните кое вече сте решили и по-късно може да повтори решението при поискване.

Инсталация
Не са нужни специални действия. Просто разпакетирате изтегления zip някъде и стартирате играта от там.
- YSokoban.exe - това е unicode версията на играта и се препоръчва за ползване на всички windows системи след win95 (както и линукс със wine)
- YSokobanA.exe - не unicode версия на програмата (няма я в стандартния zip, изтегля се отделно), трябва да се ползва на Win95/98, възможно е да се ползва и на другите, но не се препоръчва
Мобилен режим на ползване
YSokoban записва някой данни в така нареченото registry на компютъра за използване при последващи активирания на програмата.
Данните съдържат неща като: текущо положение и размер на програмата на екрана, кое ниво играете и други.
В някой случаи е удобно тези данни да се записват на файл, за да може да държите всичко на USB и по-късно само да го преместите от един компютър на друг, като се запазват всички настройки.
За целта: създайте празен файл YSokoban.ini (или YSokobanA.ini ако ползвате не unicode версията). YSokoban ще записва в този файл настройките си вместо да ги слага в registry на компютъра.
Създаването на празен файл може да стане например с notepad или някой друг текстов редактор. Само се убедете че файла се нарича така (т.е. редактора не му е добавил автоматично .txt към името).
Всичко е наред и ако след стартиране на YSokoban и последващо спиране в този файл има някаква информация (може да го погледнете с текстов редактор). Ако той продължава да е празен значи нещо с името на файла не е наред.
Ако създадете такъв файл докато YSokoban работи (не сте го спирали), то при спиране той трябва да си запише (копира) всички настройки от registry на компютъра в този файл.
Премахване (деинсталиране) на YSokoban
Ако просто изтриете директорията в която сте инсталирали YSokoban, то сте свършили 99% от деинсталацията.
Това, което още трябва да направите за да премахнете всички следи от програмата е да премахнете записите в registry на компютъра.
За целта има два начина.
- за по запознатите с компютърните програми: изтрийте HKEY_CURRENT_USER\Software\YGP\YSokoban
- или поискайте от YSokoban да изтрие сам тези данни. Това очевидно трябва да се направи преди да изтриете програмата (ако вече сте я изтрили, може да я заредите и разпакетирате отново). От менюто на YSokoban изберете <Деинсталация>, отговорете с <Да> на въпроса дали искате и след като спрете програмата изтрийте папката с YSokoban.
Забележка: намиращите се в registry данни ще бъдат изтрити само за текущия потребител на операционната система. Програмата не работи в режим на администратор и не изтрива данните от другите потребители. Ако играта е била играна и от друг потребител (компютъра се ползва от повече от един потребител), то почистването на registry трябва да се направи и за него (всички такива).
Menu
YSokoban няма лента с меню. Менюто може да се активира по няколко начина:
- активирайте системното меню по стандартния начин (цъкате върху иконата в горния ляв ъгъл на прозореца или натискате Alt-Space)
- използвайте меню бутона в диалога за ориентация
- активирайте менюто с натискане на F10
- цъкате върху "Ниво:" (точно преди номера на нивото, което играете и точно под системната икона намираща се в горния ляв ъгъл
Всички тези алтернативни начини за активиране на менюто могат да се използват и във пълноекранния режим (full screen mode)
или ако ползвате YSokoban под Linux (и Wine).
Менюто има следните възможности:
Параметри на командния ред
Синтаксиса за стартиране на YSokoban на командния ред е: YSokoban [-png|-bmp|-norec] [-w|-l] [filename]
Следните параметри могат да бъдат зададени на командния ред за YSokoban
- -bmp - стартира YSokoban в режим запис с използване на BMP формат за картинките при запис
- -png - стартира YSokoban в режим запис с използване на PNG формат за картинките при запис
- -norec - стартира YSokoban в режим не записване
- -w - включва YSokoban в режим на запис за целия прозорец (но не активира режима на запис)
- -l - включва YSokoban в режим на запис за нивото (но не активира режима на запис)
- filename име на файл (колекция или ниво) което ще се зареди
Параметрите (тези с -, т.е. -bmp, -png, ...) трябва да бъдат зададени преди името на файл (ако има такова), защото то може да включва интервали и специални символи, например:
- YSokoban ClassicQuest.xsb
- YSokoban -png ClassicQuest.xsb
- YSokoban -w ClassicQuest.xsb
- YSokoban -png -w
Списък на възможностите
YSokoban има следните възможности:
- YSokoban има много специални клавиши за да извършвате бързо някой действия
- Поддържа кожи (skins)
- Многоезична поддръжка Може да ползвате YSokoban на различни езици (тези за които има превод)
- Може да се играе с мишка и с клавиатура. Може да се конфигурират бутоните на мишката и колелцето й.
- Може да разрешите (или забраните) показването на подсказки като опция или да го превключвате с F9
- Неограничено връщане/преиграване (undo/redo)
- Практически неограничен размер на решението:
някой програми имат ограничение за броя на движения които може да извършите. YSokoban няма такова ограничение, но все пак е ограничен от размера на паметта в системата. Тъй като YSokoban е 32 битово приложение то може да ползва максимум 2 GByte от паметта на компютъра дори и под 64 битова OS с много повече гигабайти рам. Това означава че броя движения е ограничен на няколко стотици милиона движения, което на практика е неограничено (поне човек не може да го достигне, защото няма как да направи повече от 100 движения в секунда, което значи че 100 милиона движения се постигат с поне 10 дневна игра без прекъсване и практически без мислене).
- Практически неограничен размер на нивото
YSokoban поддържа нива с всякакви разумни размери (например ниво с размер 65000x65000 не се поддържа, ниво с размер 10000x10000 не е тествано и може да има проблеми).
Когато нивото е по-голяма отколкото прозореца YSokoban може да покаже тогава се появяват ленти за скролиране (sroll bar) за да може да се движи прозореца по нивото. Може да местите видимата област, като:
- ползвате лентите за скролиране
- при натискане и задържане на мишката върху която и да е клетка в която няма работник или сандък и тогава може да променяте видимата област с влачене.
- автоматично следване на играча: ако е разрешено то видимата област се мести като следи положението на играча.
В долния десен ъгъл, там където се събират двете ленти за скролиране има квадратче с точка в него, това всъщност е бутон. Когато е натиснат - автоматично следване на играча е разрешено.
- може да ползвате Shift или Alt докато въртите колелцето на мишката за да скролирате
- YSokoban може да прави снимки на екрана си за да подпомага направата на анимирани GIF-ове.
- Координатна система - може да показва координатите на клетките (подобно на шах). Използват се при обсъждане на някое ниво (при чат, поща, разговор, ...).
- Запис/четене по време на игра: по всяко време може да запишете/възстановите текущото си състояние (използвайте Ctrl-S/Ctrl-D или Ctrl-O).
- Показване (изиграване) на решение: може да пуснете за разглеждане всяко записано решение, като променяте скоростта на изиграване и/или използвате пауза
- copy/paste: може да ползвате копиране/вмъкване (copy/paste) за да копирате/вмъквате в/от клипборда движения/ниво.
- Може да зареждате нивата от файл или от клипборда.
За да заредите нивата от файл използвайте бутона "Колекция".
За клипборда - вмъкнете ги от клипборда
- Автоматично запомня изиграните нива (за да си ги пускате по-късно или за да ви предупреди, че вече сте играли това ниво)
- YSokoban може да бъде конфигуриран да записва различен брой (различни) решения за всяко ниво.
- Експот на решения: запис на решенията в текстов файл
- Импорт на решения: прочитане на решения от текстов файл. Тази функция е направена най-вече за да може да импортирате вече експортирани нива (например от един компютър на който играете на друг).
- Ориентация на нивото: нивото което играете може да бъде завъртяно (всъщност коя да е от 8-те възможни еднаквости) по време на игра.
- Бързо (светкавично) движение: може да не се показват междинните места при преместване на сандъците (полезно когато гледате много дълго решение - хиляди ходове)
- Търсене на път при бутане на сандък
- Преминаване през сандък търсене на път за бутане на сандък дори и ако се разбутат други сандъци
- Оптимизация на начина на бутане на сандък: може да се направят настройки как по-точно да се намира пътя при бутането на сандък
- показване какво е достъпно (и какво не) от работника
- възможност за решаване на нива който започват с напълно решена ситуация (т.е. всички сандъци са си на местата).
- Автоматично намиране на тривиални нива
- Автоматичен запис: ако спрете програмата докато сте по средата на решаването на ниво, то текущото състояние автоматично се записва и при последващ старт се възстановява. Това може да се конфигурира.
- Автоматично увеличаване/намаляване на размера на прозореца за да "пасне" на текущото ниво. Това зависи от конфигурацията.
- Избор на ниво от колекцията.
- Отбелязване на нива: Ctrl-<1>..<9> за да си ги отбележите, <1>..<9> за да скочите към отбелязано ниво.
- Символите за подчертаване (_) и минус (-) е възможно да се използват в XSB формата на нивата за да заместват интервал (" ").
Това е полезно при копиране на ниво от/към писмо (или форум).
Със същата цел YSokoban пропуска символа ">" защото често се ползва в електронната поща (при отговаряне).
Символа за продължение на ред "\" (backslash) също се игнорира.
- Поддръжка на пакетирани нива и решения за тях.
- Поддръжка на много профили при игра (няколко потребителя)
- Пресмятане на броя на целите и сандъците в дадена област. При натискане на мишката дръжте Ctrl и изберете правоъгълна област в нивото. YSokoban ще изчисли броя на сандъците и броя на целите в тази област (резултата се показва в заглавната част на прозореца). Ако пуснете бутона на мишката но продължавата да държите натиснат Ctrl, то може да изберете още една област (до максимум 10 области).
- Макроси: за да подпомогне решаване на нива с повтарящи се действия може да се използват макроси (по идея от текстовите редактори които също имат макроси).
- Показва броячи за текущото решение на статус реда