Electron Soccer SDL
Electron Soccer вечен! Сколько раз я говорил, что все, эта версия последняя, и больше эльсокков не будет?! И каждый раз проект оживал. Итак, очередная реинкарнация Electron Soccer, на сей раз действительно портабельная. Все платформенно-зависимые вещи делает SDL, и, теоретически, эльсокк должен собираться почти везде - начиная от BeOS и заканчивая виндами. По крайней мере, под Linux и Windows он работает точно.
История SDL версии эльсокка такова: как-то мы с yole нашли в сети объявление об открытии SDL Gaming Contest. Не обратить на него внимания мы, понятное дело, не могли - не так уж часто случаются подобные конкурсы в сети. Спонсорами конкурса были Linux Journal, Loki Software и No Starch Press. Все эти организации были тогда на слуху, так что в серьезности конкурса можно было не сомневаться. Суть была такова: разработать игру, которая работала бы через SDL (судьи собирали и тестировали все игры на Linux, работоспособность игры на PowerPC и других платформах с инверсным порядком байт в слове считалась плюсом), и занимала бы не больше мегабайта. Дальше судьи должны были выбрать самые оригинальные и технически совершенные субмишшны и соответственно расставить всех по местам. Обещали призы, которых нам, в общем-то, было нафиг не надо, но вот занять приличное место хотелось.
До конкурса было еще месяца три (deadline был 1 декабря 2001), так что мы подумали и решили, что писать ничего нового не будем - времени нет, а сконвертим что-нибудь из старого. Решили конвертить эльсокк - если программу уже куда-то портировали (а эльсокк портировали под Win32), то перенести ее еще раз будет уже намного проще. Действительно, в эльсокке все платформенно-зависимые вещи были достаточно хорошо абстрагированы от логики. Сам он был написан на ANSI C, так что собираться должен был везде. И на этом мы ... ничего делать не стали. Ведь впереди было еще столько времени!
В общем, что-то делать мы начали за два дня до последнего срока сдачи работ :) Я быстро переписал видео подсистему и работу с клавиатурой под SDL, это оказалось достаточно просто. Приделал читалку конфигурации из ini файлов (раньше все конфигурилось внешней конфигурялкой, но это как-то не unix style). Оно даже заработало. Потом yole приделал zlib компрессию ресурсов, fmod для звуков и музыки (в формате xm). До дэдлайна оставалась одна ночь, а ведь надо было еще убедиться, что все это живет под Linux. Ни у меня, ни у yole его не стояло... В общем, yole его поставил :) Пол ночи на то, чтобы настроить видеокарту и саундкарту под Линуксом, час на то, чтобы убедиться, что эльсокк собирается и работает. За несколько часов до дэдлайна мы собрались, написали readme и отослали готовую entry для конкурса. Оставалось дождаться результатов.
С опозданием на месяц, но результаты все же случились. Увы, но мы не вошли даже в лучшую десятку. 18-ое место. Посмотреть результаты можно здесь. Причина оказалось банальной - мы использовали fmod для воспроизведения звуков; fmod - он не GNU/GPL, что нарушает условия конкурса. Посмотрев на остальные игры, участвовавшие в конкурсе можно смело утверждать, что уж в первую-то десятку мы должны были попасть.
Кстати, еще через месяц Loki Software разорилась. Не иначе, как манифестация божественной справедливости :) В общем, черт с ним, главное ведь участие, а не победа, правда? ;)
Итак, Electron Soccer SDL:
Все то же, но подробнее, можно прочитать в readme.
В поставку не включены исходные файлы для сборки ресурса. Их можно взять из исходных текстов предыдущей версии. Если вы планируете запускать elsocc под виндами, то скачайте лучше нативную виндовую версию, она лучше отлажена и должна работать надежнее. |
И знаете, очень похоже, что это еще не конец истории эльсокка. Грядет версия для карманных компьютеров. Electron Soccer CE!
Также читать: