My favorites | Sign in
Project Home Wiki Issues Source
READ-ONLY: This project has been archived. For more information see this post.
Search
for
PageName  
One-sentence summary of this page.
Updated Aug 4, 2014 by iso4f...@gmail.com

Введение

Игра Sokoban была создана в 1981 году Хироюки Имабаяси, и впервые издана в 1982 году японской компанией Thinking Rabbit. В последствии было разработано огромное количество клонов для множества компьютерных платформ, включая практически все домашние и персональные компьютеры. Также существуют версии игры для карманных компьютеров, игровых приставок, цифровых фотоаппаратов и мобильных телефонов. Возникновение клонов стало возможным, потому что автору игры и его компании принадлежат права непосредственно на программу как на конечный продукт, а не на идею. Кроме того, автору принадлежат права на планы уровней первой реализации (в версии 1984 года их было пятьдесят). Поэтому всяческие римейки, использующие уровни того самого первого Сокобана, являются, строго говоря, незаконными.

Техническая информация

За годы своего существования Сокобан превратился из простой логической игрушки в культовый объект. С каждым годом появляются все новые и новые версии этой игры. По нему пишут диссертации и научные статьи. Он оброс различными вспомогательными программами и файловыми форматами. План уровня и первоначальное положение объектов записывается в обычном текстовом файле с помощью следующих символов:

Такой формат записи получил название "XSB File Format". Файлы этого формата могут иметь расширения: xsb, sok, rdf, lp0, dat, pak и даже просто txt. Этот формат хранения уровней можно найти во многих клонах Сокобана. Есть также отдельный формат для записей перемещений человечка по лабиринту. В нем все перемещения записываются буквами r, l, u и d (соответствующие четырем направлениям перемещений). Если при перемещении двигается ящик, то буквы записываются в верхнем регистре.
СимволОписание
#стены
пробелпустое место, куда надо поставить ящик (так называемая "цель")
@человечек
+ человечек, который стоит на той клеточке, где находится одна из целей
$ящик на пустом месте
звёздочкаящик на одной из целей

О проекте

Данный клон игры вначале разрабатывался для иллюстрации примеров исходного кода к урокам сайта http://lazarus-games.ru/, но мне захотелось продолжить развитие игры и постепенно добавлять новые возможности, которые выходят за рамки уроков, поэтому было принято решение опубликовать проект для общего доступа. Игра написана с использованием открытой среды разработки Lazarus и компилятора Free Pascal Compiler, используются только стандартные компоненты. Работоспособность проверено в Windows XP SP3 и OpenSuse 13.1 x64, если у Вас есть возможность проверить под другими системами, пожалуйста, сообщите о результатах на сайт http://lazarus-games.ru/.

Powered by Google Project Hosting