Ништяки для мододела

Неинтересное введение.

Немного о наболевшем. Моды и мододеланье вокруг игры ДД не особо популярны, по большей части это вина разработчика. Да, это действительно так, в пример можно взять проблему с внедрением новых звуков, их нельзя добавить, соответственно нельзя полноценно добавить новых героев, новые способности старым и то же самое относится к монстрам. Проблеме уже год и восемь месяцев. Ну и в меньшей степени это и незаинтересованность самих игроков(несмотря на немаленький онлайн, с того же нексуса моды качает мало кто).

Многие люди начали делать моды к этой игре, но, столкнувшись с непреодолимой стеной невозможности сделать желаемую фичу, забросили эту затею. Я почти так и сделал, но нашел некоторые хитрости, и хочу ими с вами поделиться.

Структура руководства

Все предельно просто, каждая фича будет располагаться в отдельном разделе, сначала разделов(и фич) будет немного, но по мере жизнедеятельности руководство будет пополняться. Гоу.

Шесть ("6", ШЕСТЬ) активных способностей вместо четырех.

Частично ломает баланс.
Для начала немного просвещения. Картинка на экране, а точнее интерфейс внизу экрана, состоит из заранее нарисованных изображений в формате .PNG, помимо них есть еще layout-файлы, в которых прописаны коордианты конкретных кусков интерфейса.
В .info файлах героев прописано максимально количество выбранных способностей.
Если просто поменять эту цифру, куча иконок способностей просто не влезет в интерфейс, поэтому мы этот интерфейс будем немного ковырять.

Ну и начнем с героя:
Идем в папку игры, затем папка "heroes" и папка интересующего нас героя. В нем открываем блокнотом(очень желательно notepad++) .info файл героя.
Листаем в самый низ и меняем цифру 4 на 6:


Теперь идем ковырять интерфейс:
Идем в папку "scripts", далее "layout" и открываем "panel.banner.darkest".
В моем варианте координаты уже изменены, в своей ж игре вы можете делать что угодно(еще бы). Ну а я, после получаса манипуляций пришел к вот такому варианту:


Ну а в игре это выглядит вот так:


Готово. Осталось подредактировать на свой вкус, или оставить как есть. Изи, не так ли?

Рипост там, где его не было. Без ошибки FMOD.

Как только ввели МАА, я только им и играл. Дааа... тогда он был имбой, в одного мог всю вражескую пати перебить рипостом. А потом его понерфили. Потом ввели антикварку и дали рипост хайвею. Как же я их абузил. А потом решил добавить рипост хелионке. Да, рипост даме с глефой, а почему бы и нет? Назвал это "Blood Dance", разные варианты перепробовал. Чтобы забалансить, сделал так, чтобы при каждом рипосте она сама на себя вешала кровотечение. При кажом рипосте также баффалась на уворот, чтобы было выгодно "разгонять" ее танец. А вся остальная пати ее бафает и лечит.

А потом дал рипост леперу, его скилу Revenge. Глупо ведь, что лепер как бы мстит через этот скил, но получает бафф, даже если никто его не трогал? Я сделал скил через рипост, рипост сам по себе не наносил урона, но при каждом срабатывании вешаел бафф на лепера, на точность и урон. Гениально же! Бафф стакается, и чем больше в него плюх за ход залетало, тем выше был его урон(если он не помер за этот ход =) ), вдобавок при активации скила еще и дебафф на себя, на -SPD, чтобы побольше плюх лицом насобирать.

Но все испортила ошибка FMOD. Звука при рипосте не было, и каждый раз при рипосте вылазила эта желтая ошибка, что у лепера, что у хелионки. Я тогда так огорчился, честно.

Но потом мне пришла идея. Раз я не могу добавить звуки новым скилам(а рипост это тоже скил), так может переделать старую атаку под рипост?

И снова небольшой ликбез. Рипост это такой же скил как и другие, просто его нельзя активировать вручную, только через другой скил. Как это выглядит на бумаге:
Скил_Активатор с эффектом -> эффект, активирующий рипост и дающий бусты рипосту -> Рипост_Скил
При этом если рипостов у героя несколько, активируются все разом.

Приступим. Открываем .info-файл нужного героя, где его найти вы уже знаете. Открываем .art-файл там же. Открываем файл с эффектами в папке "scripts", называется "effects.darkest".

Выбираем в .info-файле ненужный скил и заменяем все пять его строк вот этим:
riposte_skill: .id "666sotona" .level 0 .type "melee" .atk 65% .dmg 0% .crit 5% .launch 1234 .target 1234 .is_crit_valid True При этом, id нужно оставить от старого скила. Точность, урон, шанс крита настройте под свои нужды, в любом случае это балансные параметры и вы их скорее всего еще не раз поменяете.

Далее идем в .art-файл и ищем тот же скил. Скорее всего будет что-то вроде:
combat_skill: .id "opened_vein" .icon "seven" .anim "attack_slice" .fx "opened_vein" .targchestfx "blood_splatter"Меняем "combat_skill" на "riposte_skill", чтобы наш рипост скил не отображался в меню персонажа, удаляем .icon "seven" или что там у вас будет. Следите за id'ом, он должен быть старым и везде соответствовать.

Идем в эффекты. Добавляем с новой строки наш эффект рипоста:
effect: .name "hello world" .target "performer" .curio_result_type "positive" .chance 100% .riposte 1 .duration 3 .riposte_chance_add 100% .on_hit true .on_miss true .attack_rating_add 666% .damage_low_multiply 666% .damage_high_multiply 666%
Даем эффекту имя, задаем бонусы к точности и урону. Скорее всего, вам захочется, чтобы рипост можно было прокачать. Просто полученный эффект копипастим еще 4 раза, каждому новому эффекту задаем новое имя, проще всего приписывать числа 1,2,3,4,5, начиная с первого. "duration" это длительность рипоста, каждый раз когда герой получает ход, этот счетчик сбрасывается на -1, таким образом, если вы в первых ход сходили последним и повешали рипост на себя, а во второй ходите первым, то один ход рипоста был потрачен вникуда. По этому же принципу работают и баффы с дебаффами, и доты.

Остался последний штрих. Идем обратно в .info-файл и выбираем себе скил-активатор. Если в строке скила нет еффектов(после слова .effect), добавляем слово .effect и копипастим название нашего эффекта из эффектов, соответственно каждому уровню скила.
Кстати, поскольку рипост это тоже скил, он так же может обладать эффектами, как и наш скил-активатор. Можно вешать доты, станить, откидывать на задние ряды, хилить, баффать, дебаффать ну или реактивировать рипост(лол).

Надеюсь, был полезен.