f1ufx_ update! :)
основная завязка апдейта тут
http://www.desktank.com/tank.1.1.0.12.zip
Основное изменение:
- Добавились синие гиры(gears) и ренчи (wrench) - очки получения уровня
- За каждый уровень дают 1 синюю гиру и 1 синий ренч.
- После каждого тура теперь есть меню, где можно перейти в прокачку, а потом выбрать тип игры, или выйти в основное меню.
- Шестерёнки идут на прокачку основных скиллов. Ключи - на прокачку саппорта.
- Стало быть, добавлены и зелёные ренчи, выпадающие из врагов.
- Часть скиллов, доступных за зелёные шестерёнки, стала доступна за синие. Часть primary скиллов стала доступна за зелёные шестерёнки. Часть апгрейда саппорта стала доступна за зелёные ключи.
- Есть вещи, которые стоят 2 уровня. Например, Trouble Cannon
игру накрыло мощной волной дифференциации :) я раскидал часть скиллов саппорта на зелёные ключи, и тут выяснилось, что прокачка резко сократилась... ну, т.е. качать сразу стало мало чего, потому как приток "ресурсов" для прокачки вырос примерно в 1.5-2 раза. Поэтому пришлось сразу убавить лут, выпадающий с корованов и боссов :( я сёдня на лёгком уровне убил двух боссов, с которых ничего не выпало. Но на то он и лёгкий уровень: там играть легко, но скучно, зелень не сыпится из врагов - прокачать можно только основные параметры. А вот в начале(в начале недели) было весело... не знал, куда девать лут.
Немного романтики:
- Раньше я не делал возможность апгрейда посреди игры(накопление очков), потому что они не могут появиться среди тура, если их прокачать. Я про это забыл напрочь, вспомнил совсем недавно :[ поэтому в таких скиллах будет отметка "будет доступно только в следующем туре"
- Только сёдня вечером заметил такую фичу: если захватить нейтрала, у которого есть ammo, например, башню с ракетами — не стоит стоять под выстрелом :) сам юнит переходит в team, а вот его ammo уже создано и принадлежит нейтралам. После захвата юнит делает залп, так как готов, но если попадёт в танк — танк получит урон, так как ракеты из другой комманды :D
Версия, скорее всего, сыроватая и несбалансированная. Но было уже много правок, надо сделать билд перед сменой геймплея, да тут ещё Ren меня разбудил зачем-то...
В общем, мне нормально игралось, хоть и непривычно. Надо сделать всё равно автооткрывание окон для прокачки в конце тура, опционально.
Ну, и да, печаль, судя по тому, что дефолтно работало всё на OpenGL, никто в игру не играл =(
upd: косяк с неправильно масштабируемой картой поправил и залил тем же архивом
Bad rockets update :)
http://www.desktank.com/tank.1.1.0.12.zip Ёпрст! upd: Конечно же http://www.desktank.com/tank.1.1.0.13.zip!
добавлено 4 скилла для ракетной башни:
- drain rockets - тянут здоровье
- harm rockets - уменьшают максимум здоровья
- shear rockets - тянут шилд
- disrupt rockets - уменьшают максимальный шилд
в честь индийского праздника Нам Побухатпиванада пойду порасплетаю сырные косички
Довольно интересная версия старой и всем знакомой игры советую попробовать скинуть ее в стиме, если надумаете то помогу с этим делом, сам являюсь разработчиком и уже 4 проекта одобрено встиме через издателей.
Renik
Спасибо, хорошая идея. Но пока до стима там далеко :)
Сейчас планируется по 4 типа "заклинаний" на каждый тип поддержки (коих тоже 4, как и класса. Похоже, 4 - сакральное число это йгры. Пифагор одобряет), сейчас я делаю ракетную башню, там 2 уже есть (в 1.1.0.14, будет сёдня-завтра выпущено):
- rockets storm - на n секунд ускоряет башню в 10 раз. Она быстрее вертит головой и перезаряжается, т.е. стреляет в 10 раз быстрее. N секунд зависят от уровня.
- rockets star - башня выстреливает большой ракетой в сторону ГГ. Как только ракета долетает до ГГ, она рассыпается на кучу радиально разлетающихся ракет. Это примерно выглядит, как взрыв коробки с ракетами. (И пока хреново помогает в бою, в отличие от первого. Возможно надо сделать привязку к homing/piersing/shock, но места для кнопок на окне прокачки уже катастрофически не хватает... и это отдельный вопрос)
Ещё планируется:
- установка ракетной мини-башни рядом с ГГ. Т.е. ещё одна огневая точка, которая может принять часть огня на себя, тут всё понятно.
- ракетный шилд :) это такая странная штука: вокруг танка запускаются ракеты, которые будут кружить вокруг него. Если ракета об кого заденет - взорвётся в обычном режиме и нанесёт урон. А так же если будет "стоять" на пути вражеского выстрела - возьмёт урон на себя (почти bone shield из второй дяблы, только с уроном)
- залповый огонь. Это аналог того, что делает дальняя арта: башня пуляет красную точку во врага, и там по площади в течении некоторого времени наносится урон (есть идея указывать эту точку руками, см. ниже второй вопрос)
Вопрос #1: какие два из трёх "заклинаний" выбрать.
ИИ команды сейчас работает по принципу: атакую самого ближнего врага, даже если враг уже найден на предыдущей итерации. Есть идея: атаковать выбранного врага до полного уничтожения. Идея эта растёт из другой идеи, которая растёт из идеи залпового огня - указывать место руками мышкой (см. выше). Это я сёдня утром придумал. И сразу же пришла такая идея: при наличии захваченных нейтралов или своей армии, да даже просто башни - возможность выбрать их мышкой и указать цель для атаки. Вот из-за этого придётся менять вышеописанный алгоритм ИИ для команды (у врагов всё немого иначе).
Вопрос #2: надо ли добавлять фичу установки цели для нейтралов, и стало быть, менять ИИ? Есть ещё вариант: ИИ не менять, а добавить признак, кем установлена цель, собой (тогда юнит может выбрать другую) или командиром (тогда не может, пока не убьёт).
Есть ещё параллельный вариант: паузить игру (пробел занят на выстрел, фак...) и в режиме паузы задавать цели (ещё один шаг в Dragon Age и Neverwinter), потом отпускать, но тогда прощай (о, боги) вероятный мультиплеер :)))
Или оставить всё как есть?
Вопрос #3: как внешне отображать уровень(класс) брони? Сейчас корпус красится разным цветом, но мне это не нравится, а ещё хочется цвет использовать под игрока, потому что при одинаковом классе брони в пылу битвы я не могу отличить своих от чужих :( только по полоске перезарядки.
Help rockets update :)
http://www.desktank.com/tank.1.1.0.14.zip
добавлено 2 умения для башни:
- rockets storm - ускорение перезарядки турели
- rockets star - выстреливает
- изменил ИИ для команды: они теперь атакуют выбранный (ближний) танк, до тех пор пока не убьют. Если это не танк, тогда они могу переключиться на танк, если он окажется ближе.
- немного навёл порядок в кнопках, теперь все заклинания (4 на ГГ, 4 на саппорт) привязаны к 4 кнопкам, а не раскидано по клавиатуре (хотя в целом мало чё поменялось)
- подправлены немного боссы
С утра тестировал башню, играл на лёгком уровне. Прошёл 42 уровня. 1 жизнь осталась. Получается довольно интересно. Вначале очень легко :) расслабляешься, врагов становится всё больше, бьют больнее, в результате из-за отсутствия бдительности быстро вынесли 3 раза, а ещё из-за того, что качать только атаку - проигрышный вариант. Три танка на тебя выезжают - и всё, убежать не успел... Особенно, когда появляются хоминги. Три хоминга за раз - это проблема. Поэтому временами на броню и оборону скидывать немного надо.
С турелькой получается пока примерно так: всегда есть, куда потратить синие очки прокачки, зелёных не хватало, но это потому что лёгкий уровень, их падает мало. Кроме того, то, что добавлено в 13-м апдейте, надо или переделывать или выкидывать. Здоровье и шилд тулельке я качал(её пару раз убивали), а вот всё, что ниже - нет, потому что после прокачки урона от ракет, такая мелочь уже как-то без надобности.
До 20 уровня игралось легко, потом у вражьей базы появился шилд, и стало труднее выносить врагов. У меня пару раз выносили всю базу нафиг, а потому что стена слабая :) Но тут всё ещё остался дисбаланс: захват нейтральных корованов. Если захватить шилдилку и/или лечилку, жить становится гораздо легче. Кроме того, если на ранних уровнях позадроствовать: пособирать аптечки и арморы, то объём лечения от них возрастает, что потом хорошо сказывается на состоянии танка в бою.
Если захватить пару шилдилок(а корованы и RA всегда уползают назад, потому что не воюют напрямую), то потом есть шанс, что с их помощью боевой захваченный нейтральный танк доживёт до конца уровня. После этого он начнёт игру снизу, и у него будет ещё больше шансов выжить. Если собрать по 2-3 танка с обеих сторон, игра превращается в треш и угар :))) эти две толпы бегают с двух сторон и мочат врагов. Но, конечно, надо их прикрывать, потому что они за здоровьем не следят (базу на армор и лечение лучше тоже прокачать немного, чтобы спасала нейтралов).
В общем, за 42 уровня игра поменялась три раза :)
StepEver
Чё на Steam курс взял?
Хаус
> Чё на Steam курс взял?
Неее.
Я перевёл всё на 3D-рельсы (вид сбоку), сделал общую механику и основной игровой цикл.
Заодно во время перевода всё написал "правильно", теперь есть 2 формальные армии, со своим всем, все параметры вынесены в динамику. Сейчас переношу в код прокачку и скилы, без них играть неинтересно :)
StepEver
Жалко. 2Д версию в Стим. 3Д версию как 2-ю часть.
Хаус
> Жалко. 2Д версию в Стим. 3Д версию как 2-ю часть.
Ну, я решил в 3D всё перевести, потому что там больше возможностей по графике, а так же чтобы не переводить весь виндовый GUI в свой UI.
Идея для второй части готова уже давно.
StepEver
> Неее.
Стим тебе не грозит.
StepEver
> а так же чтобы не переводить весь виндовый GUI в свой UI.
Не обижайся на меня так.
Хаус
Не, там надо было избавляться от popup окон, потому что всё должно быть в одном окне
- - -
чтобы не забыть, и чтобы не апать тему и потом просто грохнуть этот пост, буду писать сюда, что делается:
общую схему я портировал примерно за недели три на новый движок, но там всё было по минимуму
по ходу портирования я стал сразу убирать косяки архитектуры в первом проекте.
кроме косяков я сразу стал наращивать возможности новой архитектуры
основные отличия новой:
- введено понятие армии, туда входят танки, стены, базы. Армия ведёт свою статистику, следит за состояниями объектов и выполняет шаг игрового цикла.
- армий пока две: наша и не наша (раньше все танки были в нескольких векторах)
- скиллы вынесены из приложения и навешены на каждый танк отдельно. Параметры рандомных танков будут начисляться из лимита уровня скиллов.
- характеристики и состояния вынесены в Prop, отдельный класс, объекты которого динамически подвешиваются на объекты игры(раньше все параметры и состояния были прошиты в коде, в классах)
- добытые шестерёнки и ключи скидываются в танк (раньше они были тоже просто в приложении)
- формула урона поменялась. Старая формула позволяла при полном наборе брони, в любое число пунктов(что неправильно), выдержать удар любой силы( что неправильно), потому что было Dmg -= Dmg * Armor/ ArmorFull. Получалось, что выгоднее малое чисто пунктов брони при быстром восстановлении - быстрее можно достичь максимума и выдержать любой удар.
Теперь весь урон делиться на N+1 частей, где N - класс брони, N/(N+1) урона идёт в армор, если он полный. Если он не полный, то Armor/ArmorFull. После этого этот урон вычитается и общего, результат идёт в урон здоровью. Урон по броне делится на N и вычитается из армора.
Тема в архиве.