20 июня 2011

Конкурс: вести с полей

Да, конкурс движется. Участников уже много! Очень здорово, что люди тянутся программировать! Правда летом это занятие приносит наибольшие хлопоты. Компьютер перегревается, жутко хочется на природу, да и накопившиеся дела просят их наконец-то сделать. Но люди находят время и силы, чтобы порадовать форумчан красивыми демками и интересными идеями. Я вот тоже посидел и решил делать "клон" (очень модное слово сейчас) малоизвестной flash-игры. Пока не буду говорить какой, чтобы не спойлерить. В двух словах - физический пазл! Из оригинала возьму базовую механику, геймплей. Саму игру я постараюсь оказуалить, сделать немного проще, чем во флеш-игре, добавить интересные уровни, ну и попробую добавить всякие вкусности, возможно даже простенькие механизмы.
Свободного времени сейчас совсем нет, поэтому я решил начать с прототипа. Как это было и что в итоге получается - читаем ниже...


Итого, на данный момент игра выглядит так:


Наверно совсем не разобрать, что отображено на экране. Но я пока и не хочу "раскрывать всех карт". Скриншот привожу только для того, чтобы было видно как выглядит игра на первых этапах разработки. Надеюсь успеть переделать внешний вид, хотя можно сослаться на стилизацию под примитивизм (а-ля 8bit) и еще указать, что это "фича"!
Но на самом деле сейчас есть только простая debug-отрисовка объектов. Циферки вверху - простой и временный способ перехода между уровнями. Черный квадратик - курсор мыши. Хотя в принципе уже можно играть... Правда выглядит некрасиво, да и не очевидно, что нужно сделать. Так что дружелюбный интерфейс должен бы присутствовать.
Кстати, решил оставить только оконный режим. Выбрал 800х600. Этого пространства хватит "с головой", зато освободит меня от лишних забот вроде черных полос и правильного выставления разрешения монитора. Окошко, и все тут... Хотя, если будет время - постараюсь исправить этот серьезный недостаток, но большого внимания уделить ему не смогу, это точно.

Программирование
Обдумывая возможные нюансы будущей игры, я размышлял над тем, как лучше хранить уровни. С одной стороны - хочется очень быстро их создавать. То есть на лицо обычные сохранение и загрузка объектов из какого-нибудь бинарника или xml. Но с другой стороны хочется каких-то навороченных конструкций и взаимосвязей. Механизмы как бы, реагирующие определенным образом. А это уже скрипты. В общем сначала я прикрутил загрузку уровня из скриптов. Но потом подумал, что это как-то сложно и открутил.А сейчас вот решил заново перекинуть уровни на скриптовые рельсы. Так что в очередной раз познаю простую истину - сначала продумай, потом берись за дело. Мысль верная, но мне пока с трудом дается продумывание мелочей, от чего и страдаю.
Вообще, с программированием пока особых проблем нет. Обычно сложности возникают на конечном этапе, когда новые костыли образуются каждый день. Сейчас же работы проделано мало, поэтому и дается все легко.

Графика
Так как игра больше логического склада, то на графику я почти не отвожу времени. Да, нужно сделать красиво и со вкусом, но текстур и рисованных объектов наверно не будет. Времени совсем нет. Кстати, раздумывая над отображением графики, я до сих пор не решил, как именно ее выводить. Либо спрайтами, либо рисовать "руками" на canvas'е. Идея как раз в том, чтобы имея одну большу полосато-сетчатую текстуру, накладывать ее на объекты разной ширины и высоты без искажений (то есть необходимо вырезать заплатки нужных размеров). Наверно плохо пояснил, но лучше пока не могу; наверно как реализую какой-нибудь вариант, я опишу его в журнале.

Планы
Итак, сейчас первоочередными задачами стоят такие:
  • сделать доступными для скриптов все основные объекты, чтобы начать создавать полноценные уровни
  • накидать хоть какие диалоги для перехода между уровнями
  • подумать над текстурами, стилизацией игры
  • гуи: простое меню, кнопки, элементы
  • "причесать" то, что есть, чтобы было не стыдно выкладывать на всеобщее обозрение в будущем
Кстати, последние две недели я не в городе. А это сообщение заготовил заранее и сейчас, имея возожность ненадолго вылезти в интернет (нарушая правила русского языка, пишу это слово с маленькой буквы), я решил опубликовать сообщение с небольшими корректировками. Очень хочется успеть все доделать к конкурсу, но нет ни времени, ни банального ноутбука с делфи. Через неделю приеду - постараюсь успеть! :)

Сообщения, схожие по тематике:

3 коммент.:

  1. а скрипты самописные или используете сторонние?

    ОтветитьУдалить
  2. 2Антон
    Скорее всего, lua. Камрад Лампоголовый с ними разобрался довольно неплохо и не отказывался от них, насколько я знаю :)

    ОтветитьУдалить
  3. Антон, прошу прощения, что совсем забыл ответить... Да, использую Lua, но ничего сверхестесственного не делаю там, просто перечисление объектов, их свойств и т.д. Так и собирается уровень, создавая один за другим игровые объекты.

    ОтветитьУдалить