Многочлен: Компаньоны
Итак, свершилось важное. Я таки упоролся и за две ночи и два полу-дня отрисовал всех запланированных компаньёнов. Правда я не до конца продумал им способности…
Начнём вообще не с них, а с тех, кто их ведёт. Я пока не брался за реализацию, но проблемы вижу много УЖЕ. Прежде обозначу ГГ:
Он грустный… И это нормально. Особенно, когда теряешь того, без кого жить не можешь!
А ещё он довольно беспомощный, однако всякие штуки он сможет делать и ртом и ногами.
Например прыгать, ногами, разумеется, а не ртом. А ртом он будет кричать, разбивая некоторые препятствия. Ещё он будет командовать своими компаньонами, высказывая просьбы двигаться с определённой стороны от себя.
Но всё это не сразу, а при помощи собираемых способностей. Как они будут собираться я пока до конца не придумал, но точно не в виде банальных бонусов. Вообще у рта ГГ будет ещё одна очень полезная функция, доступная с самого начала! Жрать ягоды. Именно так и будут происходить сохранения. Стоит дерево с кучей ягод ГГ под него подходит, открывает рот, в него падает ягода. СЕЙВ. Может быть способности будут примерно так же собираться при помощи ягод. Одной большой, или нескольких поменьше.
Ну и самая важная способность ГГ — это бежать рядом и заводить полезные знакомства. Но уже на этапе заведения знакомства начинаются проблемы. Вот я говорил, что есть шкала внимания. Если внимания на нового компаньона не хватает что тогда? Сбросится шкала знакомств? Или вообще не появится? Или он заменит кого-то из тех, что уже с ГГ? Или дать выбор, кого заменить?
Далее, если игрок бежит рядом с двумя потенциальными компаньонами, то позволять их вербовать одновременно? Или по очереди? И как выбрать очерёдность?
А теперь вопросы, над которыми я почти не думал.
Когда у игрока уже есть толпа, то как избавиться от лишних?
Если компаньон отстал от игрока, то что с ним происходит?
Как переносить толпу компаньонов из комнаты в комнату?
Если игрок помер, то компаньоны возрождаются с ним на сейве или нет?
На все эти вопросы мне придётся найти ответы в ближайшее время.
Зачем вообще игроку компаньоны? Потому что игрок сам не может сражаться и делать некоторые вещи, которые могут некоторые компаньоны. В каком-то смысле компаньоны — это расходник и навербовать их будет не очень сложно. Задача игрока будет в том чтобы дружить правильно. И правильным способом. Видов отношений планируется 4.
Самый первый — это «и не друг и не враг, а так», по сути просто приятели, обозначается глазом. Компаньоны-приятели самые простые и слабые, он потребляют немного внимания и не накладывают никаких штрафов.
Второй тип — это «друг». Дружба — она такая, что нужно не только брать, но и давать. Тут начинаются штрафы. Потеря друга отнимает игроку 1ХП. То есть если можно было обложиться приятелями как щитами, то тут так не получится. Зато компаньоны-друзья посильнее приятелей, и повыносливее. По сути просто усиленная версия.
Третий и четвёртый тип отношений могут быть открыты после дружбы в любом порядке.
Третий тип отношений — это любовь. Компаньоны-любовники требуют очень много внимания. Они разделяют получаемый урон с игроком поровну и после смерти отнимают гораздо больше ХП. Зато это значительно более сильные юниты, чем друзья.
Четвёртый тип отношений — финансовое партнёрство. Такие компаньоны требуют минимум внимания (чтобы нельзя было бесконечно много их набрать). Но они требуют оплаты своих услуг, по сути с игрока списываются деньги, которые игрок собирает в процессе путешествия,
А теперь, непосредственно, сами компаньоны.
Бомбардер — такой вот кусочек сыра на ножках, который плюётся изо рта бомбами. Его фишка в том, что он может плеваться ими через стены.
Стрелок, хоть и похож на зародыш крокодила, но на деле довольно полезный товарищ. Его «клюв» вращается на 360 и метко выцеливает неприятеля.
Кто следил за проектом с начала, уже видели его, но более красного и более весёлого, в качестве первой версии главгероя. Но он был уволен с этой должности с целью взять более соответствующего контексту зачуханную, печальную зелёную соплю. После чего Огнемётчик обзавёлся хитрецой в глазу и представляет серьёзную опасность, но только для тех, кто стоит справа или слева от него.
Это одноразовый друг, именно поэтому он такой формы (под тип плохо развёрнутого гандончика). Одноразовый — потому что он жертвует собой, чтобы подорвать противника. Кстати, делает он это добровольно, так что никаких посмертных штрафов на всех разновидностях отношений.
По форме уже понятно, что это защитник. Но как он работает? Очень просто! После попадания по щиту, он не получает урона, но раскрывается.
И тогда его нужно беречь, пока щит не схлопнется обратно.
Это не капельница-переросток, а «серьёзный мужик», обожающий ближний бой. Правда своеобразный.
Он подходит к противнику и отвешивает челюсть — она с грохотом падает вниз, создавая ударную волну.
Ещё один любитель поиграть огнём, но особым образом, из-за чего дружба с ним — занятие рискованное. Он медленно едет и оставляет под собой огоньки, которые полезны при тактическом отступлении, но не полезны, для главгероя, если он на него наступит (если только он не в любовных отношениях с этим трактором).
Садовый озорник, подрабатывает оружием массового поражения, выпуская во все стороны свои колючки. В отличие от «гандончиков» — не одноразовый, колючки быстро отрастают.
И завершает парад уродцев вот такое змеиное сердечко. Совершенно безобидное. Это местный целитель. Если он будет находиться на полянке с цветами-сердечками то начнёт исцеление команды. А в более продвинутых отношениях и полянка будет не нужна!
Вот такие компаньоны. У меня по плану теперь сделать с ними дружбу и чтобы они работали. Сделать элементы игрового мира и навигацию по этому самому миру.
Ах да, ещё эти самые существа не будучи компаньонами могут быть противниками ГГ в двух случаях. Если он пересечёт след такого существа без вступления в отношения. Или если в такое существо вселится тёмная сущность (насылаемая боссами)
- 21 февраля 2022, 14:34
- 011
По-моему, было бы интересно, если бы компаньоны могли бы быть привлечены друг другом и таким образом уйти от ГГ, ну или был бы своеобразный городок/поселение, где подходя к конкретному виду компаньонов, похожих на "лидеров" или "айдолов", соотв. компаньоны уходили
Хотя сложновато наверное... Попросить их просто уйти из толпы (т. к. гг умеет командовать), как понимаю, не желаемый вариант?
P.S. Просто предложил мысль
И успехов в создании игры)
Не будет никакого городка, так что первый вариант мимо.
Второй вариант возможен, но как технически это должно выглядеть - вот в чём вопрос. Так чтобы не закапываться в кучу менюшек и интерфейсов и не грузить игрока подобным менеджментом. Я любитель максимально простых решений.
Идеи, возникшие в ходе прочтения:
Про я годы слишком сложно, т.е. много действий для вербовки союзника. Я тут решаю нужно ли заставлять игрока пересекать след потенциального компаньона или это слишком сложный мув =)
Салат из ягод, дающий способность - звучит на первый взгляд интересно, но это механика разовая по сути. Сделал рецепт и получил способность, иначе получится как в акварии - временные бафы.
Про хищников тоже так себе идея. Дело в том, что у игрока будет выбор - ходить с толпой слабых юнитов или с небольшим количеством сильных. Это так же задаст и тактику ведения боя, т.к. юнитами можно будет прикрывать свой восхитительный зад.
Походу я зря этих существ красил в такие заковыристые цвета. Я так подумал, что изначально существа будут вообще серые. И окрашиваться в нужный цвет в зависимости от типа отношений/заражений. В конкурсной версии это точно будет автоматически шейдером, а потом я может всё-таки расщедрюсь на индивидуальные спрайты с избирательным подкрашиванием. Такая индикация поможет игроку проще классифицировать кто с ним ходит и чем будет атаковать.
Ну и так по прогрессу - сделал шкалу вербовки и сам процесс вербовки, кроме последнего шага с пересеканием следа. След вообще нужно ещё сделать правильно.
Так же ответил для себя на несколько вопросов с поста.
Будет вербовать того, который ближе. Это я уже сделал.
Он переходит в состояние "потеряшки" и игрок может его "подобрать" в пределах одной комнаты, но при переходе в другую комнату такая потеряшка теряется. Плюс особенность потеряшки в том, что её могут заразить злые сущности и тогда потеряшка становится противником.
Компаньоны возрождаются на сейве при загрузке сейва из главменю, но не возрождаются при перерождении ГГ после смерти. Возможно, исключением станут любовники и партнёры, мол "любовь до гроба" и "работа есть работа". Но это я пока ХЗ.
Пока в голове крутится спецобъект, типа трибунки или подиума, типа для ораторствавания, когда игрок на него встаёт - компаньоны собираются вокруг него и он может их как-то исключать из банды, типа "отпускать", мирное расставание и всё такое. Я очень не хочу делать прям менеджмент, возможно, по компаньонам будет идти курсор и прожимая спецкнопку происходит расставание, т.е. сойти с этого подиума можно будет в любой момент обычным передвижением.
Потихоньку продолжил делать проект.
Сегодня сделал шейдер покраски компаньонов в нужный цвет, оставляя глаз нужного цвета. Понял, что придётся высветлять заливки компаньёнов, скорее всего они тогда изначально будут в grayscale, может заморочусь хоть пятна сделаю на них отдельно (благо в шопе всё по слоям разбито). Привязал цвет это к выбранной способности.
Начал писать начинку компаньонов. Пока только прямолинейное движение сделал и следование за игроком. Тут тоже пока непонятно как лучше сделать. Пока поставил mp_potential_step - эта функция рассчитывает путь до точки и двигает по нему объект на заданное расстояние. Но в какую точку должны следовать компаньоны, следующую за игроком? Где-то рядом с игроком и это пока непонятно как вычислять и чтоб там стены не было. И ещё нужно эту точку менять, чтобы компаньоны не стояли как истуканы рядом с игроком, а бродили вокруг него. Пока не получилось сделать - непись дёргано двигается. Ещё есть спорная идея в качестве эксперимента по следванию за игроком - сделать чтоб компаньоны тупо двигались в сторону персонажа, не огибая стены, но упираясь в них. Тогда будет некоторый челлендж в том чтобы провести компаньонов, особенно в местах со множеством стен. Но нужно, чтобы это было весело и не вызывало фрустрацию.
В ходе эксперимента с вербовкой выяснил, что после заполнения шкалы отношений лучше не делать пересечение следа. Неочевидно это и выглядит криво из-за того что область вербовки слишком маленькая. Скорее всего вербовка будет сделана просто отдельной кнопкой и тут же будет показано хватает ли у игрока внимания чтобы его завербовать. Так что пересечения будут раскрываться иначе, в создании себе противников, если будешь наступать на чужие следы.
Ещё сделаю сопровождалки действий персонажей - балуны с эмоциями. Персонажи в игре не будут общаться текстом. Но я хочу сделать так чтобы текст выступал пояснением, к тому что они говорят, типа синхронный перевод. Но это пока в проекте. Балуны с эмоциями точно будут, например, когда компаньон будет отставать от игрока - будет соответствующий балун в качестве индикации отставания.
Таки решился. Вчера всю ночь переделывал спрайты мобов для послойного прокрашивания. Результатом в целом доволен.
Пришлось пилить новую начинку для анимации. Дело в том, что в ГМ-е есть недостаток при работе с анимацией спрайтов - это если фрейм дублируется то его нужно явно дублировать и это всё будет кушать память. Во всяких фреймворках типа фазера можно отдельно указывать массив кадров для анимаций. Я так и сделал у себя, чтобы можно было всякие idle анимации делать без потери видеопамяти. Я мог бы так не заботиться об этом, если бы спрайты были цельные, а не из 4-х слоёв.
Всё это менеджить сложно, импортировать, потом кадры дублировать - запутаться легко. Так что я сделал конфигурацию спрайтов персонажей с массивоам анимации и установкой FPS-а. но там ещё всё равно придётся передоделывать. Я пока сделал счёт фреймов по системному таймеру, что не подходит для атак. Нужно будет делать и менеджить свою переменную текщего кадра. Но это я буду делать когда начну реализацию абилок мобов.
Сегодня немного облагородил ландшафт камушками и растительностью пока что.
Вроде как решил вопросы с вербовкой, но пока не доделал - надо ещё сделать подсказки клавиш и балуны "реплик" для персов, те, которые эмоциональные балуны, т.е. эмо-балуны. Балуны будут в следующей итерации, уже придумал как сделать, нарисовал, но не реализовал. Когда происходит вербовка, одновременно со шкалой вербовки наполняется и шкала внимания внизу, но мигающей частью. Если эта часть упирается в конце шкалы, то вербовка останавливается и типа УСЁ. Пишется, что нехватает внимания. А если шкала наполнилась успешно, то пишется то действие, которое нужно сделать игроку согласно активной способности, ну там "подружиться", или "влюбиться" или "нанять". Моба можно будет "посеять", если он отстанет. В этом случае он перестаёт требовать внимания и просто останавливается, уязвимый для заражения злыми сущностями. Его можно будет подобрать, скорее всего по тому же принципу что и вербовка, только он двигаться не будет и нельзя будет поменять тип моба. Но если из комнаты выйдешь, то он просирается и восстанавливается на исходном месте. Да, я буду делать примерно как в соусах, пока чек не взял - убитые мобы не восстанавливаются. Так же не будут восстанавливаться завербованные. Чтобы нельзя было абьюзить и навербовать в одной комнате кучу одинаковых мобов.
Пока что столкнулся с проблемой таскания толпы мобов. Функционал mp_potential_step глючит безбожно, так что mp_grid что ли расчехлять блин. Но основная проблема даже не в этом, а в том что толпа "некрасиво" перемещается. Особенно, когда игрок стоит, хочется чтобы толпа рассредотачивалась вокруг него. В открытом пространстве может и можно сделать, но в замкнутом помещении непонятно пока что. Может быть попробую реализовать модель пружин, жёсткость которых зависит от дальности нахождения от ГГ. Тогда мобы будут тупо двигаться в сторону ГГ без обхода препятствий. Может будет и прикольно, типа минизадачки на то, чтобы провести свою команду через "лабиринты". И пока не знаю как спавнить свою команду при переходах между комнатами.
Переходы между зонами будут осуществляться по стрелкам(на картинке сверху слева и справа), что пока не сделано, но будет в ближайшем будущем. Стрелки будут показывать направление перехода и не факт что они будут располагаться чётко по границам экрана. Сами комнаты преимущественно будут небольшого размера(1-1.5 экрана fullHD), но будут и большие. На карте, наверное, как-то это будет отражаться. Карту пока планирую делать процедурной генерацией. Что-то типа открытого мира, в котором игрок будет собирать абилки и выполнять задания на прогресс. Повышение сложности будет регулироваться теми злыми сущностями, что будут вселяться в мобов. Злые сущности будут вселяться в мобов не в каждой комнате, что будет являться подсказками по тому где выполнять задание. Впрочем, даже без сущностей будет чем заняться, т.к. чтобы не сагрить моба - нужно будет не наступать на его след. Так что уже потенциально есть стелс-режим помимо брутального. В зачёт будет идти только пересечение слада моба игроком а не членами его команды.
Завтра я доделываю вербовку мобов(плюс потеряшек), балуны на персонажей, переходы между комнатами. Больше вряд ли успею.
Не представляю, что можно Хейзеру противопоставить на этом Гаминаторе. Пашет как трактор. Отдохни денек!
Можно легко противопоставить "доделать игру", потому что я не уверен что успею. Тем более у меня сейчас снова будут IRL дела время кушать. А отдыхал я целую неделю, шокированный от мировых событий.
Как я и предсказывал, много времени сожрали дела. Так что из намеченной программы я сделал только переходы между комнатами на тестовой карте 2х2.
Возможно, в будущем я буду расчехляться на видео или гифки, т.к. в динамике выглядит поинтереснее всё.
Сегодня пришла в голову мысль а не сделать ли как в JRPG какой-нибудь (типа Child of Light), когда ты на моба натыкаешься - открывается отдельное поле сражения с ним. В этом есть своя привлекательная сторона - не нужно прям таскать за собой компанию, но и компания будет не так ощущаться, а просто как набор юнитов за пазухой. Зато отдельное поле боя - простор для манёвра и много находок для геймдизайна. Есть у меня подозрения, что сражаться в обычных комнатах будет тесновато. А делать комнаты более просторными можно, да, но по ним скучновато ходить.
То времени нет, то настроения... Но что-то делаю потихоньку.
Добавил балуны с эмоциями, сделал перемещение компаньонов по комнатам, сделал потеряшек и их перевербовку.
Полирнул красивости - сделал плавные транзишены между комнатами и добавил эффекты частиц.
Сегодня намерен всерьёз заняться движением компаньонов. Может быть чекпоинты сделаю ещё.
Далее буду делать атаки мобам, что займёт несколько дней 100%.
Нуууу, вроде что-то получилось
Они, конечно, не супер по-умному ходят, но в целом лучше, чем до этого. Ну и пружинная модель сработала = мобы друг друга расталкивают. Правда бывает так что один пытается прощемиться меж двух, а т.к. "сила выталкивания" двух сильнее силы одного -то он бесконечно тыркается в щель между ними.
Сегодня без картинок, т.к. почти ничего не поменялось. Писал начинку персонажам. Сделал что они агрятся на игрока если он наступает(пересекает) след. У игрока два права на ошибку за которые непись явно выражает своё неудовольствие эмо-балуном. А потом переходит во враждебное состояние. Степень неудовольствия, как и многие параметры игрового мира будут сбрасываться только на чеках, как в соулслайк играх ( пока не знаю делать ли то же самое с валютой, но скорее всего нет). Смысл в том, чтобы нельзя было перезаходом в комнату абьюзить механику пересечения следа. Нужно, чтобы игрок проявлял скил и планировал маршрут.
Я всё хотел сделать FSM для мобов, но чё-то я запутался и оно нихера не работает как нужно. Я хочу сделать одинаковый кусок для "охоты" за противником во всех случаях. То есть когда моб - противник игрока и когда моб в команде игрока. Но когда моб в команде, он должен учитывать что он не может выйти за френдзону чтоб не заплакать. А когда моб одинокий противник, то такого правила нет. Хотя вот я только что подумал, что под контролем злой сущности вполне себе правило.
Но в целом вроде норм получается. Стычки - это гемор, т.к. будут вести к потерям, что будет мотивацией не наживать врагов без надобности.
Что такое балуны?
У меня это эмо-балуны, вот такие штуки.
Традиционно в них обычно пишется текст, в комиксах. Но я не люблю такие штуки с текстом делать.
Первый раз услышал такое слово. Более привычно бабл. А по русски это будет выноска. Но гугл сказал, что балун тоже устоявшийся стандарт.
КАКИЕ ЕЩЕ БАБЛЫ С БАЛУНАМИ?! ЭТО ОБЛАЧКА!!! ААА!!! ААААААА!!! ААААААААААААААААААААА!!!!!!
Не писал пару дней, но работы идут. Рисую и программирую способности компаньонов. Для первого типа отношений осталось сделать плазму и хил. А ещё другие типы отношений, в которых не так много прям эксклюзива (многое рулится парматерами). Ещё нужно будет сделать систему повреждения и отображение ХП мобов.
А так мой командос уже бегает вместе с игроком и правильно выбирает цель. Из мыслей - отдельную арену для сражения я делать не буду. И так вполне нормально получается. Но противников нужно чуть больше, чем агрящиеся мобы. Так что злые сущности будут не только вселяющиеся в мобов, но и боевые.
К концу конкурса не успею сделать даже какой-то прототип - это инфа 95%. Дай бог до конца недели с механиками мобов разобраться и чекпоинты хотя бы сделать. А ещё ведь есть элементы окружения, уровни, противники, боссы, звук и музыка. А самое главное - генератор карты. Вот это будет ещё одна фича, он будет настраиваемый, и расширяемый. Размер карты, количество биомов и т.д. Со временем я добавлю разные типы сущностей, новых мобов, и может быть новые виды отношений и генератор будет делать неравнозначные выборки генерируя новые задачи для игрока, а значит и новый экспиренс.
По способностям пока мысль сделать в виде рецептов. Предварительно: будут разные плодовые штуки (ягоды,фрукты,овощи,грибы), которые игрок сможет пожирать и чтобы получить способность игрок должен будет сожрать правильные ингредиенты, возможно ещё и в правильной последовательности. Рецепты будут генерироваться, разумеется. Рецепты можно будет получать разными способами скорее всего. Найти страничку книги, заметить рецепт, нарисованный на стене, купить у торговца (если я их сделаю) и может ещё какие способы придумаю.
Сделал систему повреждения, с учётом фрэндлифаера. Есть две категории мобов - враг или друг. Ну или без категории. Пули не повреждают мобов из одной категории.
Сделал отображение ХП мобов на поле боя и пиктограмки пати игрока внизу над шкалой внимания.
Пилю атаки мобам. Тут ещё много работы впереди. На пару дней точно.
Из новопридумок:
1) Когда игрок агрит моба наступая на его след теперь не просто увеличивает ярость моба, но делает процесс дружбы с ним медленнее. То есть с разозлённым мобом сложнее подружиться, что логично. Но всё-таки можно при должном упорстве. Это я уже сделал.
2) При повреждении из мобов будут выпадают сердечки. И пока что исчезают. Думаю сделать для мобов в отношениях влюблённости возможность подобрать выпавшее из него сердечко. Механика такая: при повреждении влюблённого моба урон проходит и по игроку, но игрок может подобрать выпавшее из моба сердечко и компенсировать хотя бы урон по себе.
3) Злые сущности смогут влиять на ГГ и команду. Напомню если говорил: злые сущности - это одиночество, предательство, смерть. Вот это они и будут делать при контакте. То есть при контакте одиночества с мобом он сразу становится потерянным, а при контакте с ГГ - ГГ теряет на время возможность вербовать новых мобов и вся его команда становится потерянной. А при контакте с предательством, например, дружественный моб становится враждебным. Смерть же просто делает инстант-килл и моба и игрока.
4) Думаю над сбором "ягод". Скорее всего некоторые будут находиться в местах, которые требуют чего-нибудь, например на дереве, будут требовать длинный язык, а некоторые нужно будет выкапывать, например при помощи моба, который делает землетрясение. Вообще использование абилок мобов в мирных целях - это крутая тема, но как это реализовать грамотно при непрямом управлении я пока не представляю.
Из задач ближнего фронта ещё - умирание мобов и расформировывание команды.
Последние пару дней снова много демотивации, но потихоньку делал, в основном систему повреждений и лечения. Плюс умирание мобов - рисовал им отдельные спрайты для этого. Правил ошибки в механике вербовки. Занимался причёсываниями по большому счёту.
Разжился вот такой травкой для спецнужд. Это особая травка, на которой должен стоят хилер на низких уровнях чтобы лечить товарищей.
Как ни странное, сделать механику хилера оказалось самым заковыристым. На втором месте - механика щитовика. А всё дело в том, что для компаньёнов у меня есть общий кусок кода, который управляет состояниями. И вот если компаньое дружественный, то он либо следует за игроком, либо "охотится" на врагов, если рядом есть эти самые враги. Так вот в случае щитовика и хилера нет никакой охоты, т.к. это не атакующие компаньоны. Но вроде как-то выкрутился, во время охоты они просто ходят как-то.
Даже до "увольнения" компаньонов пока не дошёл, следующий пункт после реализации всех абилок компаньонов. Я пока сделал только все абилки для отношения "знакомство" и все абилки для хилера. Но вообще там несложно, т.к. это по большей части расширение механик, только в паре случаев что-то кардинально новое.
Придумал как сделать использование конкретной абилки компаньона. Для этого игроку нужно будет сперва найти способность "указывать". Тогда в нижней части экрана по пиктограмкам компаньонов будет перемещаться курсор (на игровом поле тоже будет показываться) и при помощи спец-кнопки компаньон будет принудительно атаковать.
Звучит чёт прям заморочено....
Всё хочу видео записать, но руки не доходят и не понимаю куда выкладывать короткие ролики чтобы их тут шарить. Может кто подскажет? Ютуб не годится - там слишком долгий процесс выкладывания и не хочу захламлять свой канал.
А так я серьёзно продвинулся - сделал абилки всем мобам. Да-да, для всех 9 видов компаньонов для всех видов отношений, т.е. по 9 х 4 = 36 атак. Не совсем разных порой. Старался подобрать всё по балансу. Видимо, создам отдельный пост по всем компаньонам и что они делают. Самый жопошный оказался "капельница-переросток". Вообще он довольно мощный, несмотря на то, что атакует вблизи.
Это компенсируется приличным запасом здоровья, чтобы "танчить". И что ему придумать в качестве абилки, чтобы развивало его способность? Просто увеличивать радиус волны - такое себе. Я долго шёл к тому чтобы сделать замедляющие "вихри". На самом деле это больше похоже на пропеллеры. Но это то что нужно, если жертва пытается сбежать, он её замедляет, и быстро догоняет чтобы ещё раз ударить. Плюс сама ударная волна тушит огонь. Я очень люблю всякие такие маленькие взаимодействия, т.к. они превращают голую игровую механику в законы взаимодействия игрового мира, по которым игрок учится играть.
Вообще игровой процесс получается прикольный на мой вкус. Это именно тот менеджмент, которым я был бы готов заниматься в игре. Аркадный. То есть вот у тебя есть некая пати, но ты не занимаешься прокачкой скилов и циферов, менеджментом статов и т.д. твоя задача - просто вербовать нужных юнитов с нужными боевыми установками. Я вообще не люблю циферки в играх. Это сразу разрушает очень много погружения. Именно поэтому я являюсь сторонником дискретизации в играх, т.к. уход от массивных шкал с константным дамагом в сторону малого количества с увеличенным куладуном. На примере с ХП - вместо шкалы здоровья - несколько "сердечек" и отнимание их по одному с кулдауном на получение повторного дамага. Если вдруг кто-то ещё гадает об успехе Hollow Knight, то это одна из причин - в игре нет цифр в пользу малых дискретных значений. И в самом деле я же играть хочу, а не математикой заниматься =)
Продолжая про игровой процесс, мобы немного тупенько двигаются и не умеют правильно обходить препятствия, плюс их часто сбивает от сражения выход за "френдзону". Это вроде бы и раздражает, но так же и даёт много интересных логистических задач, в т.ч. по оптимизации маршрутов. С толпой будет сложнее двигаться в узком пространстве, например. А в бою требуется правильно ходить, чтобы твои "тупни" не попадались под выстрелы, да и самому чтоб не попасться, т.к. игрок - та ещё мишень.
Накидал возможные биомы и начал продумывать алгоритм генерации карты. Не хочу смотреть какие уже существуют. Буду придумывать свой велосипед в этом плане. Очень хочется выработать своё решение по генерации карт аля метроидвания. Не уверен, что у меня получится всё так как я хочу, но я буду стараться. Потребуется ОЧЕНЬ много заготовленных комнат, чтобы обеспечить разнообразие. И да, если кто-то хочет мне рассказать что генерация метроидвании - задача невыполнимая, то спешу огорчить, есть тот же Robot named Fight из того во что я лично играл. Слышал про Dead Cells, но не уверен что там именно метроидвания, да и в целом игра по роликам производит ощущение унылого коридорного слешера.
Из ближайших задач до конца недели планирую добить то что можно по компаньонам. Это несколько абилок по их менеджменту (удаление из пати, строевая подготовка если получится, использование абилок моба). Так же нужно ещё сделать штрафы отношений - это когда потеря друга снимает ХП игроку, из любовников сыпятся подбираемые сердечки для клмпенсации разделяемого урона, а партнёры должны тратить денюжку. Так же нужно будет сделать денежки и продумывать способы их добычи. "Выпадение из мобов" - это как крайняя мера на случай геймидазйнерской импотенции. Я не хочу делать именно такой способ фарма. Хочется дать игроку способ "заработать" сразу много, может быть за какие-то мини-задания. И ещё очень важно сделать траектории движения, т.к. это одна из главных фишек игры, которая делает механику вербовки компаньонов интересной.
На этом можно будет закрывать тему компаньонов, я думаю. И начать следующую тему из серии: биомы и объекты игрового мира, злые сущности, задания, генерация карты и интерфейс, боссы. На всё будет по отдельному заявочному посту с кучей комментариев с подобными потоками сознания по ходу разработки.
P.S. Как будет развиваться проект, я пока не могу сказать. Из-за организованного Путлером кризиса я вынужден пока вернуться на сторонний фулл/парт тайм, так что на геймдев времени может уже тупо не хватать. А собирать донаты от случайных фанатов я пока не умею в виду их отсутствия XD
Но есть и свои плюсы: теперь я не заинтересован выпустить как можно больше проектов для издательства и могу посвятить все остатки свободного времени неспешной разработке конкретно этого проекта; или то что если ситуация не будет меняться то смысла в платности моих игр никакого не будет; насколько нужна поддержка англоговорящей аудитории я пока тоже не знаю.
Dead Cells скорее рогалик, чем метроидвания, а способности там больше как ключики к другим локациям и некоторым "секреткам" (кроме пары способностей вроде ходьбы по стенам и пробития пола в некоторых местах). Сами открывашки всегда находятся в своих локациях, а для доступа к остальным ключам надо сначала умереть и через другой маршрут пройти к нужной локации; сами локации последовательные и не выбираются случайно (кроме бонусной опциональной), так что зайдя в одну локу, точно знаешь, куда можно выйти. С каждой способностью и уровнем сложности маршрут можно подбирать более вариативный.
Сами локации так и генерируются по шаблонам - есть набор заранее готовых комнат, из них часть выбирается, перетасовывается и выходит лабиринт (только некоторые комнаты обязательны).
Саму игру, между тем, пройти до конца можно только собрав почти все ключи.