Ignite – уникальные особенности оружия
мая 16
Сегодня ввел в игру возможность для оружия иметь свои уникальные свойства. В данный момент уникальные свойства имеют не конкретные единицы вооружения, а только их классы (мечи, топоры…), но система реализована таким образом, что добавить уникальное свойство для определенной единицы не составляет никаких трудностей (только править xml-файл и додумать систему случайной генерации предметов).
На данном скриншоте видно, как игрок получает 2 бафа из-за того, что взял в руки 2 булавы.
Осталось только дописать код, чтобы одинаковые эффекты стекались (соединялись) в один для более удобного представления пользователю.
В данный момент уникальные свойства получили:
- клинки – шанс прока двойной атаки (объединяется вместе с похожим эффектом класса воин в характеристику Haste)
- топоры – увеличивают пробивание брони цели (armor penetration)
- булавы – шанс оглушить врага при ударе
- копья – увеличивают шанс избежать игроком удара
Также потихоньку буду выносить все фразы в отдельный xml-файл (который на данный момент используется, как описание существующих эффектов). Наличие фраз в отдельном файле позволит позже осуществить перевод проекта на другой язык (если, конечно, Ignite дорастет до стадии, чтобы его было интересно переводить с английского
)
Ignite – расширение инвентория и набора противников
мая 14
В игре ежедневно происходит множество изменений, с лупой и средой разработки я охочусь за багами и исправляю ошибки, допущенные при программировании “далеко за полночь”. Сейчас никакая игра не увлекает меня так сильно, как написание своей собственной.
Сегодня реализовал систему считывания параметров монстров и предметов из файла, что дает мне возможность быстро создавать новых противников и средства их уничтожения. Добавил на тестовый уровень несколько новых врагов, а также достаточно сильно расширил количество предметов, которые игрок может добыть из тел поверженных противников.
Пора расширять количество слотов под надеваемые предметы, но это после того, как прикручу систему, которая позволит добавлять к существующим предметам различные эффекты (физические и магические). Таким образом предметы с одинаковыми параметрами будут уникальными. Например, кинжал будет иметь бонус к пробиванию брони, а палица – шанс оглушить противника.
Введены в игру также несколько видов брони: более легкая увеличивает шансы избежать удара, а более тяжелая снижает полученные повреждения, но шанс увернуться от попадания в такой броне снижается.
Ignite – field of view и AI
мая 11
Сегодня (внезапно) реализовал алгоритм расчета поля зрения игрока и монстров. Получилось достаточно просто, но, несмотря на это, эффективно.
В данный момент проект достаточно сильно изменился со времен версии 0.01. Судите сами: игрок теперь видит не только соседнюю клетку, но и несколько рядом, а противники не стоят на месте аля Desktop Dungeons, а точно также видят игрока и пытаются ввязаться с ним в бой. Я планирую добавить разнообразия в систему вещей, сделать генератор карт (просто не знаю откуда начать его реализацию) и выпустить альфа-версию 0.02 где-то в начале июня. Если успею, то к этому времени доделаю воинские таланты и реализую переход между уровнями.
Ignite – ход разработки
мая 10
На выходных добавил в игру зачатки AI для противников: теперь, когда они видят игрока, они приближаются к нему и атакуют. Стали возможными ситуации, когда игрок может быть окружен несколькими противниками сразу и вынужден вести бой одновременно со всеми.
- Ближайшее время собираюсь работать над честным расчетом зоны видимости (а не 1 клетка, как было до этого). С увеличением зоны обзора до 4-5 клеток, появится необходимость использовать дальнобойное оружие, магию и навыки, которые позволяет быстрее перемещаться по полю боя (догонять или убегать от противника).
- Также будет введена система регена здоровья, количество Health Globe будет сведено к минимуму и они станут роскошью, а не необходимостью.
- Добавлю в игру (и боевую систему) несколько комплектов брони, которая будет защищать игрока и его противников. Также добавлю зачатки механизма модификации существующих вещей, когда игроком случайно может быть получена более совершенная версия того или иного предмета.
Ignite – система повреждений
мая 7
Пришла пора описать систему повреждений, которая будет применяться в моей игре. Мне проще производить изменения, которые где-то описаны. И эти ревью становятся одновременно дизайн документом, а так как я работаю над проектом на разных машинах, то и неплохо иметь его в онлайн виде.
Сейчас система достаточно проста: существует только чистое повреждение, которое модифицируется только блоком щитом и может промазать. В дальнейшем это повреждение станет физическим уроном и будет уменьшаться классом брони (на величину равную классу брони), а шанс промахнуться также будет зависеть от модификатора брони (легкая броня увеличивает шанс уворота, тяжелая – снижает).
Кроме физического урона, также появится урон от кровотечений (bleed). Некоторые классы (например, воин и вор) могут наносить противникам урон от кровотечения – это будут специальные эффекты, которые будут наносить урон 1 или несколько ходов, а потом исчезать. Примечательно то, что урон от кровотечения напрямую зависит от величины нанесенного физического урона, но не уменьшается классом брони.
Следующим видом урона становится урон от яда (который наносят воры и некоторые виды магов) – poison. Он наносится или заклинанием или соответствующим эффектом, сопровождаемым попаданием физической атаки. Снижается благодаря сопротивлению к ядам (на величину равную сопротивлению).
Элементальный урон(elemental) и урон от магии(magic) применяется не только магами, но и может быть нанесен физической атакой волшебным оружием. Снижается также сопротивлением к элементальной или простой магией.
Эта система уже введена в игру и работает аналогично публичной альфе.
Следующее, что я планирую ввести в игру:
- Перемещение на соседнюю клетку, вместо прыжков на любую доступную точку карты. (в дальнейшем усовершенствую алгоритм так, чтобы он находил путь к этой самой точке на карте, но перемещался дискретно по каждой клетке)
- Расширение области зрения до 4-5 клеток.
- Базовый AI монстров (увидел игрока – подхожу, не вижу – стою на месте).
Публичная альфа Ignite 0.01
мая 5
Предисловие: проект Ignite находится в данный момент в стадии публичной альфа-версии. Что это означает? А означает это то, что скорее всего все, что вы видите работает не тем образом, как это задумывалось автором, и уж точно не тем образом, как будет работать в более поздних версия проекта. В процессе работы программы, вы можете встретиться с какими-то недоработками или откровенными багами, и я буду вам весьма признателен, если вы о них мне сообщите (например, в комментариях к данной записи).
* Один статический уровень подземелья.
* Один класс для игры (воин) с 6ю талантами на выбор (вы сможете взять 1-2 в течении одного прохождения).
* Несколько видов оружия и стилей боя на выбор
В данный момент Ignite представляет собой больше тест возможностей движка и заявление миру “смотрите, оно работает”, чем полноценный релиз, но даже так я весьма горд им.
Язык интерфейса – английский. Для запуска вам потребуется MS Windows XP sp3 или выше, а так же .net framework 4.
Interface language – english. You will need MS Windows XP sp 3 + and net framework 4 to run it.
Ignite – генерация предметов и лут
мая 5
Сегодня ввел в игру случайную генерацию предметов, а также возможность снимать их с поверженных врагов. Теперь игрок начинает игру только с двуручным мечом (что являет не самым оптимальным выбором для прохождения тестового уровня) и в процессе игры может получить одноручные мечи и щит. А может и не получить
Фактически уже практически все готово для того, чтобы сделать публичный тестовый релиз. Надо только парочку багов “допилить”. Надеюсь, что сегодня у меня хватит времени доделать работу, уничтожить эти баги и сделать релиз.
Ход разработки Ignite
мая 3
Сегодня практически не программировал, только утром полностью реализовал функционал для работы талантов (т.е. теперь осталось придумать остальные таланты для воина и нарисовать кучу иконок). А также разрешил одну из самых больших проблем, которые не давали мне спать по ночам – наличие панели для быстрого доступа к активным навыкам и предметам инвентория, которые требуют использования. Теперь такая панель существует в закрытом билде и на нее успешно выводится единственный активный навык – Raging Blow.
С добавлением талантов для Arms ветки, стало возможным пройти уровень с использованием двуручного оружия (напомню, что уровень как раз заточен против персонажей с двуручниками), но с двумя клинками это можно сделать намного проще – все, как и задумывалось. Вариативность. Также с добавлением предметов инвентаря класса “щит”, стало возможным прохождение в защитной стойке – т.е. не быстрое убийство врага, а переживание его за счет очень низкого входящего урона. Таким образом я имею 3 работоспособных столпа класса воин, которые и планировал изначально. Надеюсь гибрид веток развития покажет жизнестойкость.
На сегодня все, продолжаю разработку.
Ignite, тестовая версия
мая 3
Только что собрал первую работающую версию своей roguelike-игры, которую увидит другой человек. Игру я переименовал в емкое Ignite. Отныне она будет называться именно таким образом.
Итак, что же входит в первую тестовую версию игры?
Во-первых, 1 игровой персонаж (не удивляйтесь такому, я бы сказал, минимальному количеству, ибо персонажи в Ignite будут действительно разными).
Во-вторых, 1 прегенерированный уровень. В дальнейшем уровни будут, как случайными, так и созданными заранее.
В-третьих, в нее даже можно выиграть, пройдя единственный уровень из второго пункта. Для этого всего-лишь надо пробиться через заслон солдат, найти в жутких коридорах подземелья генерала Кессиди и победить его в честной схватке.
Кроме того, я наконец-то реализовал системы эффектов и талантов. Данные системы так тесно были интегрированы друг с другом механикой моей игры, что я даже не знал с какой из них начинать разработку. Решил я это тем, что сначала написал код, который симулировал работу одной из систем, что позволило мне отладить работу второй, а потом, имея данные работы второй, я смог создать первую. Где-то так
В результате это вылилось в наличие у игрока таланта “Enrage – (Passive, Arms, Tier 1) – Каждый раз, когда вы наносите 2 или больше удара в один ход (не считая спецабилок) вы увеличиваете свой урон на 5%.”, который вызывает соответствующий эффект в процессе боя.
Данная версия уходит в зрительский зал тем людям, которые изъявили желание ее получить, а первый публичный билд будет немного позже, как только я доделаю первые 6 воинских талантов, сделаю систему повышения уровня персонада и разбросаю по подземелью оружие, щит и броню. В принципе, это только вопрос времени.







