пятница, 28 сентября 2012 г.

SSGE 0.01

Все здравствуйте! О проекте SSGE теперь можно услышать в подкасте podgames weekly #110: http://gamersweb.ru/podcasts/podgames-weekly/podgames-weekly-110-2/. У проекта появилась страница на кузнице сорцов: http://sourceforge.net/projects/ssg-engine/. Там есть исходники и последний билд (на текущий момент времени). Пока только для ОС GNU/Linux. Добавлены профили крупныx многосоставных врагов, подправлена система частиц, добавлена случайная генерация декораций облаков.


понедельник, 6 августа 2012 г.

SSGE новый билд

Всем времени суток::)
Всех благодарю за проявленный интерес к проекту. Недавно собрал новый билд, добавил еще чуток диблы:) Скачать его можно тут: http://yadi.sk/d/R-dQbvUV4A3Q

Теперь доступна карта уровня - кнопка m. Появился инвентарь, вызывается кнопкой i. Через него можно использовать или продавать за очки подобранные бонусы. Если инвентарь переполнен, бонусы при поднятии продаются сразу. Также через инвентарь доступна прокачка корабля. Прокачать можно 3 характеристики: реактор, щит, броня. Механика действия реактора на оружие и щит аналогична как в обычному Tyrian.  Добавил несколько видов новых патронов. Из врагов - добавлены миноукладчики.

среда, 1 августа 2012 г.

SSGE

Собрал бинарные версии (пока без исходников) игры SSGE для ОС Linux  и MS Windows.
Ссылка для скачивания: http://yadi.sk/d/gfuKiTyc0XbA

В этой сборке отключена возможность редактора, зато можно ознакомиться с генератором уровней - каждый уровень игры строится случайным образом (хотя еще возможны незначительные ошибки в построении).

Основное орудие игрока:
Состоит из нескольких составляющих: тип патрона WB, вид турели WT, задержка выстрела WC.

WB бывает 3-х видов:
0 или 1 - звезда, сила повреждения 1;
2 - лазер, сила повреждения 2;
3 - молния, сила повреждения 7.

WT, также, м.б. 3-х видов:  
0 или 1 - обычная прямо стреляющий трассер;
2 - "генератор хаоса";
3 - прицельный трассер, цель для выстрела определяется местоположением курсора мыши.

WC - число циклов между выстрелами, чем оно меньше - тем оружие стреляет быстрее

Вспомогательное орудие игрока :
Бывает 2-ух видов: ракета (MT=1) или гравибомба (MT=2). Ракета при полете ускоряется и может сместить воздушную цель с места своего нахождения или сбить траекторию. Гравибомба движется с постоянной скоростью и при взрыве создает гравитационный колодец, куда затягивает все воздушные цели, включая и игрового персонажа.
M - количество оставшихся зарядов
MK - количество выпущенных одновременно зарядов.

Встречающиеся враги:
1) Мины - стоят, молчат, не шевелятся, мешаю пролететь. Жизней много.
2) Налетчики - стреляют молнией, имеют встроенный телепорт.
3) Заградитель - в качестве оружия используют лазер, имею встроенный телепорт. При попадании начинают раскачиваться, тем самым увеличивая радиус поражения.
4) Бур - просто летит вниз с ускорением.
5) Стационарные базовые турели.

Управление  в игре:
Клавиши со стрелками - перемещение игрового персонажа.
Пробел - стрельба из основного орудия.
X - вспомогательное орудие - запуск 1-ой ракеты (или гравибомбы ), для запуска большего числа ракет - необходимо стучат по данной клавише.
ESC - меню.
Мышь используется для управления внутри игровых меню и для целеуказания стрельбы одного из видов турелей основного орудия.

Сложности запуска под 7-кой:
1) Необходимо наличию работающей звуковухи.
2) Если в 7-ке включёно "Удобство чтения с экрана", то в свойствах ssge.exe в вкладке совместимость - поставить галку в пункте "Отключить масштабирование изображения при высоком разрешении экрана". Там же, можно еще поставить галку к пункту "Запсутить программу в режиме совместимости с Windows XP".


Тема о SSGE на форуме gamedev.ru: http://www.gamedev.ru/projects/forum/?id=165253





воскресенье, 22 июля 2012 г.

Разработка рандомного генератора уровней для моей игрушки в самом разгаре:)

На данном этапе реализовано построение карты уровня, с последующей ее текстуризацией в ландшафт - летающие острова и наземные базы с пушками-турелями. Местоположение вражин реализовано, пока, еще "на коленке".

Если в кратце, то механизм случайной генерации карты уровня следующий:
1) По пустой карте уровня пускаем "червя" из конца уровня в начало (снизу на верх). Червяк движется рандомно по оси X, по оси Y - всегда вверх. Если червяк вылетает за границы по OX, то он появляется в произвольной точке своего пройденного маршрута и снова продолжает путь, пока не доберется до самого верха. Траектория передвижения червя можно наблюдать в видеоролике с на левой картинке с 6 по 13 секунды.

2) Произвольно на карту уровня раскидываем "центры роста" - те точки, вокруг которых, случайным образом, в разные стороны будет распространятся земля. Часть этих центров - должна попасть на "червячную" траекторию движения. Другая часть - может попасть куда угодно.

3) Из центров роста начинаю расти острова (правая картинка в видеоролике с 6 по 13 секунды). Для того, чтобы получить, именно, острова - "червячную дорожку" я, выкинул. Если ее оставить, то получается длинный, единый материк.

4) Далее, делую небольшую фильтрацию дырок и стыков между островами и произвожу тектурирование.


понедельник, 25 июня 2012 г.

...

Мда, чето совсем нет новых идей и с конфой не прёт:( В целом, не все так плохо - так как Моя теперешная работа связана с XML - в будущем планируется статья по парсингу XML файлов при помощи pugiXML. На данный момент - пытаюсь допиливать свою леталку SSGE. Нужен ХУДОЖНИК (жду предложений) для всего этого хозяйства, не использовать же все время графику из Tyrian. Хочется сделать что-то с похожей картинкой но в стилистике стим-панка. дирижабли, летающие суда и корабли, небесные острова и т.д. Не JamesTown. Планируется осуществить механизм генерации уровня - хочется реализовать скрул-шутер а'ля Diablo:)
Кстати, вот видево последнего билда:

вторник, 29 ноября 2011 г.

мелкие добавления в старые проекты

Недавно обновил сайты своих старых проектов (SwibPlex и BomjSurvivor): для SwibPlex добавлен кривой порт на html5-canvas, а для BomjSurvivor добавлены полноценный html5-canvas порт Survivor и кривой порт на языке Processing - теперь игру можно запустить на андроидных устройствах