С Днём России!
  • 1.099
  • 7
Дорогие друзья! Поздравляю вас с Днём России! Этот праздник напоминает нам о богатой истории и культуре нашей страны, о её величии и непоколебимом духе народа! Желаю вам крепкого здоровья...
Новости Анонсирован Atomic Heart II
Новости Анонсирован ремастер Final Fantasy Tactics
  • 438
  • 1
Культовая пошаговая тактическая RPG от Square Enix получит второе дыхание. На проходящей выставке State of Play, где анонсируются игры для Play Station, состоялся анонс ремастера Final Fantasy...
Новости Моддеры Oblivion Remastered нашли способ внедрения абсолютно любых скриптов
  • 554
  • 4
Сообщество моддинга Oblivion Remastered (ORM) переживает настоящий расцвет. После долгих месяцев работы, энтузиасты научили игру работать с мощным скриптовым языком Lua, открыв перед создателями...
EthernalBreeze

EthernalBreeze 3.05 (BUILD 6.4.6)

Нет прав доступа на загрузку
Сей мод направлен на расширение Нового Баланса в формат Дьяблоида и схожих рпг игр.
Автор
Автор
StonedWizzard

StonedWizzard

Рыцарь
Участник форума
Регистрация
10 Июн 2013
Сообщения
2.163
Реакции
1.884
Баллы
384
Лучшие ответы
0
Почему в игре так много горожан и солдат которые агрятся на тебя? В основном это дублированные черти. Это такая игровая механика
Это, можно сказать, уже фича мода, которая тянется с самых начал разработки. Что там клинит в мозгах нпс я до сих пор не врубаю, да и встречал такое лично всего пару раз за всё время сколько мод делаю. Что я ток не пытался, но сообщения об неадекватности нпс всё поступают. Хз что посоветовать, вырубить их и забвением по голове может?
 

Gdartanin

Гвардеец
Участник форума
Регистрация
6 Июл 2016
Сообщения
1.025
Реакции
212
Баллы
175
Лучшие ответы
3
Это, можно сказать, уже фича мода, которая тянется с самых начал разработки. Что там клинит в мозгах нпс я до сих пор не врубаю, да и встречал такое лично всего пару раз за всё время сколько мод делаю. Что я ток не пытался, но сообщения об неадекватности нпс всё поступают. Хз что посоветовать, вырубить их и забвением по голове может?
По бошке надавать. Или усыпить
 

DanilaDNL

Наемник
Участник форума
Регистрация
2 Май 2018
Сообщения
862
Реакции
231
Баллы
126
Лучшие ответы
0
@StonedWizzard , глянул последний патч и как ты сделал переопределение функций.
Для реализации моих будущих планов (я хочу контролировать и минимальный ранг предмета) нужно как то еще переопределить переменные.
А именно... Так как встроенных механизмов для этого нет я придумал в старых версиях своих пресетов такой вариант:
Я константу const int StExt_ItemRankMax = 6 сделал переменной, а в json указал, что ранг равен уровню предмета.
Таким образом ранг был всегда оч. большой, но вот я его контролировал именно переменной StExt_ItemRankMax.
Отличие в том, что минимальный ранг в DLL у тебя равен половине максимального, но не больше StExt_ItemRankMax.
По итогу ранг всегда был равен переменной StExt_ItemRankMax.

Если использовать новые механизмы переопределений, то мне нужно из константы StExt_ItemRankMax сделать переменную, либо переопределив, либо попросив тебя в следующем патче тоже сделать StExt_ItemRankMax переменной.
Либо, сделать какой-то механизм контроля минимально допустимого ранга.
 

Anubiss

Постоялец
Участник форума
Регистрация
24 Ноя 2022
Сообщения
52
Реакции
14
Баллы
18
Лучшие ответы
0
Такой вопрос
Если я например маг огня, и выучил через книги гидро, я могу где-то обучиться созданию рун магов воды?
Просто у меня не получается так..
 

DanilaDNL

Наемник
Участник форума
Регистрация
2 Май 2018
Сообщения
862
Реакции
231
Баллы
126
Лучшие ответы
0
Так есть же конфиги. Требования тож там прописыватся и там можн установить значения поменьше.
--- Добавлено: ---

Или я чет упускаю? А то со своим микроотпуском еще чехлы собираю...
Если что, то завтра примусь уже наконец обещаные правки и интеграцию делать
Я писал ранее (Если пропустил, найду еще раз, пиши) что у тебя перемножаются 2 мультипликатора при генерации требований.
1й, который генерирует базовое требование - это рандом умноженный на уровень предмета.
И 2й его еще умножает дополнительно и он тоже зависит от уровня предмета.
По итогу формула по требованиям увеличивается с геометрической прогрессией с увеличением уровня предмета.
а, это.
я уже у себя поправил и даже успел забыть. в обнове следующей будет. думаю интеграция и фикс пары багов не займут много времени.
@StonedWizzard , я вот не вижу изменений по этой части. Скачал с гита последний код dllки и всё еще вижу что требования перемножаются.

Давай покажу, где мне кажется, есть проблема.
Если я неправ, поправь...

В DLLке в ItemGenerator.cpp есть переменная conditionsMult, которая увеличивается с уровнем и рангом предмета.
1738691292484.png

Речь идёт именно о нём.
Я расписал, что требуется для балансировки требований предмета в своём посте ТУТ
--- Добавлено: ---

Такой вопрос
Если я например маг огня, и выучил через книги гидро, я могу где-то обучиться созданию рун магов воды?
Просто у меня не получается так..
Почитай FAQ по моду тут на форуме
 
Автор
Автор
StonedWizzard

StonedWizzard

Рыцарь
Участник форума
Регистрация
10 Июн 2013
Сообщения
2.163
Реакции
1.884
Баллы
384
Лучшие ответы
0
@StonedWizzard , глянул последний патч и как ты сделал переопределение функций.
Для реализации моих будущих планов (я хочу контролировать и минимальный ранг предмета) нужно как то еще переопределить переменные.
А именно... Так как встроенных механизмов для этого нет я придумал в старых версиях своих пресетов такой вариант:
Я константу const int StExt_ItemRankMax = 6 сделал переменной, а в json указал, что ранг равен уровню предмета.
Таким образом ранг был всегда оч. большой, но вот я его контролировал именно переменной StExt_ItemRankMax.
Отличие в том, что минимальный ранг в DLL у тебя равен половине максимального, но не больше StExt_ItemRankMax.
По итогу ранг всегда был равен переменной StExt_ItemRankMax.

Если использовать новые механизмы переопределений, то мне нужно из константы StExt_ItemRankMax сделать переменную, либо переопределив, либо попросив тебя в следующем патче тоже сделать StExt_ItemRankMax переменной.
Либо, сделать какой-то механизм контроля минимально допустимого ранга.
Даж не знаю что тут посоветовать. Константа на то и костата что бы её не менять. Это не прихоть, а ограничитель что бы ранг вещи не выходил за определёный размер,ибо ранг ещё используется как индекс массива и без контроля может легко привести к вылету.
Но если нужно, то разве скриптами оно не переопределяется? тоесть по новой пишешь у себя в скриптах, но как переменную. На старте мода в событии присваиваешь ей обычное значение а дальше в нужных местах играешься с ней. Если не работает, то я могу внедрить механизм редактирования констант в рантайме, благо для движка скриптовые константы - не константы.
 

DanilaDNL

Наемник
Участник форума
Регистрация
2 Май 2018
Сообщения
862
Реакции
231
Баллы
126
Лучшие ответы
0
Даж не знаю что тут посоветовать. Константа на то и костата что бы её не менять. Это не прихоть, а ограничитель что бы ранг вещи не выходил за определёный размер,ибо ранг ещё используется как индекс массива и без контроля может легко привести к вылету.
Но если нужно, то разве скриптами оно не переопределяется? тоесть по новой пишешь у себя в скриптах, но как переменную. На старте мода в событии присваиваешь ей обычное значение а дальше в нужных местах играешься с ней. Если не работает, то я могу внедрить механизм редактирования констант в рантайме, благо для движка скриптовые константы - не константы.
Как вариант... В JSON есть параметр NextRankOffset, который отвечает за макс ранг:
int maxRank = power / GeneratorConfigs.NextRankOffset;

Сможешь сделать MinNextRankOffset, чтобы с помощью него нижний порог генерить?

Вместо:
int minRank = static_cast<int>(maxRank * 0.5f);
сделать:
int minRank = power / GeneratorConfigs.MinNextRankOffset;
 
Автор
Автор
StonedWizzard

StonedWizzard

Рыцарь
Участник форума
Регистрация
10 Июн 2013
Сообщения
2.163
Реакции
1.884
Баллы
384
Лучшие ответы
0
Ага, кажись понял. Я себе записал, поправлю чуть позже, сейчас изобретаю своё юи и немного занят...
По всей видимости промежуточный апдейт будет - система крафта будет разделена условно на 3 подсистемы: юи, крафт движок и скрипты. Сейчас я закусился и с юи и пару дней буду шаманить над удобной системой рисовки "окон" по подобию winforms в упрощёном варианте. как достигну более-менее результата на этом поприще то займусь парой фич на подобии фикса генератора, вывода урона на экран вместе с нб и провентилирую вопрос с добиванием доп уроном (может оставлю это ток для людей, если нпс будут правильо помирать) Ну и чтот там ещё, а как выкачу продолжу дальше крафт мучать, благо пару дней раздумий дали результат и я поимаю уже что я хочу и как это примеро делать
 
Автор
Автор
StonedWizzard

StonedWizzard

Рыцарь
Участник форума
Регистрация
10 Июн 2013
Сообщения
2.163
Реакции
1.884
Баллы
384
Лучшие ответы
0
Как вариант... В JSON есть параметр NextRankOffset, который отвечает за макс ранг:
int maxRank = power / GeneratorConfigs.NextRankOffset;

Сможешь сделать MinNextRankOffset, чтобы с помощью него нижний порог генерить?

Вместо:
int minRank = static_cast<int>(maxRank * 0.5f);
сделать:
int minRank = power / GeneratorConfigs.MinNextRankOffset;
Да, изи. Вместе с базовым множителем требований и всем тем что в посте написал, там определённо есть смысл и скорей всего будет всё добавлено как описано в посте.
 

DanilaDNL

Наемник
Участник форума
Регистрация
2 Май 2018
Сообщения
862
Реакции
231
Баллы
126
Лучшие ответы
0
@StonedWizzard, отлично. Буду ждать новой DLLки. После неё можно будет забалансить требования.
 
Автор темы Похожие темы Форум Ответов Дата
Icefist Новый Баланс - FAQ / Мануалы 0
Сверху Снизу