quantumWebX
1)Ну т.е как у тебя преобразование происходит % артефакта в фактическую характеристику?
2)Судя по подбору комбинаций у тебя меняются статы сразу всех артефактов в сборке одновременно, разве не может получиться так, что сборка пройдет при например 105 _ 104 _ 104 _ 104 _ 104 или такие условия не рассматриваются в угоду ускорения поиска?

3)Так же я возможно чего-то не понимаю, но не логичнее ли при подборе потенциала и качества было использовать бин. поиск?

  • Gagutuun ответили на это сообщение.

    quantumWebX 1) для этого отдельная функция написана, которая осуществляет подсчет характеристики, высчитывая их в зависимости от процента качества и потенциала, если я правильно понял вопрос)

    2) Если посмотреть на этот скрин, то видно, что проценты качества у артов не всегда одинаковые

    я уже видимо догадываюсь в чем дело и это просто кривой лог, а я этому не придал значения. Но сама идея действительно заключается в ускорении поиска.

    3) На счёт использования бинарного поиска почему-то возникли небольшие сомнения, связанные в первую очередь с тем, что поиск может осуществляться единовременно только для одного артефакта, а не для всей сборки, а узнать оптимальные параметры рассматривая артефакты по очереди невозможно, поскольку нас изначально интересует вся совокупность.

    • quantumWebX ответили на это сообщение.

      Gagutuun

      А какой пул из артефактов у тебя используется? Самые используемые или вообще все с игры?

      2)А да, увидел
      3)Действительно. Я подумал, что в случае одинаковых статов это будет работать ок, но хотелось-то у каждого по отдельность подобрать, поэтому да

      1)Почему спрашиваю, в АПИ СК там у каждого процента свое число передается и его перевод в проценты - не самое очевидное действие, я когда расписывал, мб пригодится для более точных подсчетов или если вдруг в апи полезешь

      Единственное, учитывай квалити просто еще там

      • Gagutuun ответили на это сообщение.
      • Gagutuun оценил это.

        Chezviex около близко к правде

        quantumWebX О, крайне благодарю, надо изучить))

        Вообще вот мои изыскания, которые я описывал товарищу.

        Если брать арт со 100%, то
        повышение качества на 1% равно увелчению баффов на 1 процент
        Повышение потенциала на 1 уровень равно увеличению баффов на 2 процента

        Дебаф арта возрастает с 1 по 10 уровень в рамках одной редкости и на нулевом уровне следующей редкости приводится к стандартному значению и не зависит от потенциала и качества исследования. Базовое значение дебаффа зависит только от редкости арта. Допустим обычный Осколок имеет дабафф био -2.5 на обычной редкости и 100%, но на необычной редкости и последующих редкостях при качестве 1×0 дебафф уменьшится на 10% и будет составлять 2.25 и с каждым процентом потенциала в рамках этой редкости будет повышаться на 1% до 2.5
        Увеличение редкости арта на одну ступень равно увлечению баффов на 10 процентов.
        При понижении качества меньше 100% за каждый процент качества баффы уменьшаются на 0,5 процента.

        Не забывай учитывать и вещественные числа в процентах для более точного результата.

        • Gagutuun ответили на это сообщение.

          309 Справедливости ради конечно нужно и я это понимаю, но даже учитывая как минимум десятые части у каждого артефакта это уже в 10 раз больше вариантов, а самое главное, что даже если программа выдаст человеку какую-то сборку с такими подробными процентами, то вот шанс, что он наролит ее именно такую крайне низкий, поэтому возникает вопрос о целесообразности, на мой взгляд

          Всем снова добрый вечер. Делюсь кое-какими результатами:

          • Доработал GUI (думаю для первой версии пойдет).
          • Добавил новый параметр - мин. процент сборки. Он нужен, чтобы определить нижнюю границу подбираемой сборки, допустим если нужны арты не меньше синих, фиолетовых и т.д.
          • Добавил лимит “холостых” итераций подбора. Под “холостыми” итерациями я подразумеваю итерации подбора между найденными подходящими сборками. Если их количество превысит определенное число, то поиск закончится и в массив подходящих сборок попадут уже найденные. (нужно это для того, чтобы не перебирать все комбинации из артов, имеющих нужные баффы, поскольку список подходящих артов изначально сортируется по их “полезности”, поэтому до конца списка чаще всего нет смысла идти)
          • Добавил обработку знаков “>” и “*”, которые обозначают “не меньше чем…” и “любое” соответственно. Использование этих знаков позволит более гибко настроить нужные параметры.

          Вроде все, может что-то упустил, но сам алгоритм принципиально не менял.

          Хочу еще привести примеры того, что выдает это софтина.
          На этом скрине подбираю сборку на скорость, восстановление выносливости и вес.

          На этом скрине на жир.

          Вот более подробные результаты

          На скорость

          Сборка 1: ———————————–

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Янтарник (Качество: 108%, Потенциал: 15)
          Спираль (Качество: 108%, Потенциал: 15)
          Гелий (Качество: 108%, Потенциал: 15)
          Гелий (Качество: 107%, Потенциал: 15)
          Браслет (Качество: 107%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 13)

          Общие баффы:
          ВосстановВыносливости: 30.04
          ПереносимыйВес: 39.31
          СкоростьПередвижения: 15.24
          ЭффективЛечения: 8.7
          Регенерация: 6.43
          Выносливость: 22.53
          СопротивлениеРадиации: 31.14
          СопротивлениеБио: 31.14
          СопротивлениеТемпературе: 31.14
          СопротивлениеПси: 31.14
          Радиация: -2.16
          БиоЗаражение: -3.64
          Пси-излучение: -6.61
          Температура: -2.16

          Общие дебаффы:
          Радиация: 0.02
          Пси-излучение: 0.29
          БиоЗаражение: 0.5

          Сборка 2: ——————————————-

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Янтарник (Качество: 109%, Потенциал: 15)
          Золотистый грави (Качество: 109%, Потенциал: 15)
          Гелий (Качество: 109%, Потенциал: 15)
          Гелий (Качество: 109%, Потенциал: 15)
          Браслет (Качество: 109%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 15)

          Общие баффы:
          ВосстановВыносливости: 30.47
          ПереносимыйВес: 49.88
          СкоростьПередвижения: 15.02
          Выносливость: 41.38
          Регенерация: 6.52
          СопротивлениеРадиации: 32.13
          СопротивлениеБио: 32.13
          СопротивлениеТемпературе: 32.13
          СопротивлениеПси: 32.13
          Радиация: -3.76
          БиоЗаражение: -3.76
          Пси-излучение: -6.82
          Температура: -2.23

          Общие дебаффы:
          Пси-излучение: 0.25
          БиоЗаражение: 0.48

          Сборка 3: —————————————-

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Янтарник (Качество: 111%, Потенциал: 15)
          Янтарник (Качество: 111%, Потенциал: 15)
          Гелий (Качество: 111%, Потенциал: 15)
          Браслет (Качество: 111%, Потенциал: 15)
          Снежинка (Качество: 111%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 10)

          Общие баффы:
          ВосстановВыносливости: 32.76
          ПереносимыйВес: 53.68
          СкоростьПередвижения: 15.01
          Регенерация: 3.32
          Выносливость: 38.38
          СопротивлениеРадиации: 29.66
          СопротивлениеБио: 29.66
          СопротивлениеТемпературе: 29.66
          СопротивлениеПси: 29.66
          Радиация: -2.05
          БиоЗаражение: -3.47
          Пси-излучение: -6.29
          Температура: -2.05

          Общие дебаффы:
          Радиация: 0.09
          Пси-излучение: 1.12
          БиоЗаражение: 0.07

          Сборка 4: —————————————-

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Янтарник (Качество: 106%, Потенциал: 15)
          Остов (Качество: 106%, Потенциал: 15)
          Браслет (Качество: 106%, Потенциал: 15)
          Браслет (Качество: 106%, Потенциал: 15)
          Браслет (Качество: 106%, Потенциал: 15)
          Трансформатор (Качество: 142%, Потенциал: 15)

          Общие баффы:
          ВосстановВыносливости: 31.56
          ПереносимыйВес: 48.27
          СкоростьПередвижения: 15.3
          БиоЗаражение: -5.16
          Радиация: -2.2
          Выносливость: 66.97
          СопротивлениеПси: 39.87
          Пси-излучение: -13.11

          Общие дебаффы:
          Пси-излучение: 1.49

          Сборка 5: ————————————

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Янтарник (Качество: 114%, Потенциал: 15)
          Янтарник (Качество: 113%, Потенциал: 15)
          Гелий (Качество: 113%, Потенциал: 15)
          Гелий (Качество: 113%, Потенциал: 15)
          Браслет (Качество: 113%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 10)

          Общие баффы:
          ВосстановВыносливости: 37.96
          ПереносимыйВес: 54.89
          СкоростьПередвижения: 15.0
          Регенерация: 6.76
          Выносливость: 23.8
          СопротивлениеРадиации: 29.66
          СопротивлениеБио: 29.66
          СопротивлениеТемпературе: 29.66
          СопротивлениеПси: 29.66
          Радиация: -2.05
          БиоЗаражение: -3.47
          Пси-излучение: -6.29
          Температура: -2.05

          Общие дебаффы:
          Радиация: 0.11
          Пси-излучение: 1.22
          БиоЗаражение: 0.48

          На жир

          Сборка 1:

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Осколок (Качество: 123%, Потенциал: 15)
          Солнце (Качество: 123%, Потенциал: 15)
          Призма (Качество: 123%, Потенциал: 15)
          Иней (Качество: 122%, Потенциал: 15)
          Атом (Качество: 100%, Потенциал: 0)

          Общие баффы:
          Живучесть: 11.51
          ЭффективЛечения: 60.34
          Выносливость: 25.9
          Регенерация: 3.68
          РеакцияНаОжог: 5.44
          Кровотечение: -1.44
          ВосстановВыносливости: 10.87
          Пулестойкость: 30.22
          ЗащитаВзрыв: 17.27
          ЗащитаРазрыв: 19.67
          Температура: -2.55
          СопротивлениеРадиации: 23.1
          СопротивлениеБио: 23.1
          СопротивлениеТемпературе: 23.1
          СопротивлениеПси: 23.1
          Радиация: -1.6
          БиоЗаражение: -1.6
          Пси-излучение: -2.6

          Общие дебаффы:
          Радиация: 0.29
          БиоЗаражение: 0.29
          Пси-излучение: 0.82
          Холод: 0.46

          Сборка 2: ———————————————

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Осколок (Качество: 123%, Потенциал: 15)
          Солнце (Качество: 123%, Потенциал: 15)
          Каблук (Качество: 123%, Потенциал: 15)
          Призма (Качество: 123%, Потенциал: 15)
          Атом (Качество: 100%, Потенциал: 0)

          Общие баффы:
          Живучесть: 11.51
          ЭффективЛечения: 83.15
          Выносливость: 25.9
          Регенерация: 3.68
          РеакцияНаОжог: 5.44
          Кровотечение: -1.44
          ВосстановВыносливости: 10.87
          РеакцияНаРазрыв: 7.04
          Температура: -4.16
          Пулестойкость: 30.22
          ЗащитаВзрыв: 17.27
          СопротивлениеРадиации: 23.1
          СопротивлениеБио: 23.1
          СопротивлениеТемпературе: 23.1
          СопротивлениеПси: 23.1
          Радиация: -1.6
          БиоЗаражение: -1.6
          Пси-излучение: -2.6

          Общие дебаффы:
          Радиация: 0.29
          БиоЗаражение: 0.29
          Пси-излучение: 0.82
          Холод: 0.93

          Сборка 3: ———————————————-

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Осколок (Качество: 123%, Потенциал: 15)
          Призма (Качество: 123%, Потенциал: 15)
          Куриный бог (Качество: 122%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 15)

          Общие баффы:
          Живучесть: 10.55
          ЭффективЛечения: 77.39
          Выносливость: 51.81
          Регенерация: 3.68
          Пулестойкость: 30.22
          ЗащитаВзрыв: 17.27
          ВосстановВыносливости: 10.36
          РеакцияНаЭлек: 7.45
          РеакцияНаОжог: 7.45
          РеакцияНаХим: 7.45
          РеакцияНаРазрыв: 3.49
          Температура: -3.97
          СопротивлениеРадиации: 32.13
          СопротивлениеБио: 32.13
          СопротивлениеТемпературе: 32.13
          СопротивлениеПси: 32.13
          Радиация: -3.76
          БиоЗаражение: -3.76
          Пси-излучение: -6.82

          Общие дебаффы:
          Радиация: 0.36
          Холод: 0.46

          Сборка 4: —————————————————

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Осколок (Качество: 123%, Потенциал: 15)
          Призма (Качество: 123%, Потенциал: 15)
          Вихрь (Качество: 122%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 15)

          Общие баффы:
          Живучесть: 10.55
          ЭффективЛечения: 77.39
          Выносливость: 51.81
          Регенерация: 3.68
          Пулестойкость: 30.22
          ЗащитаВзрыв: 17.27
          ВосстановВыносливости: 5.76
          СкоростьПередвижения: 4.76
          РеакцияНаОжог: 5.39
          Температура: -4.76
          СопротивлениеРадиации: 32.13
          СопротивлениеБио: 32.13
          СопротивлениеТемпературе: 32.13
          СопротивлениеПси: 32.13
          Радиация: -3.76
          БиоЗаражение: -3.76
          Пси-излучение: -6.82

          Общие дебаффы:
          Радиация: 0.36
          Холод: 0.46

          Сборка 5: ——————————————–

          Количество слотов: 6
          Защита: 60%

          Артефакты:
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Мамины бусы (Качество: 123%, Потенциал: 15)
          Солнце (Качество: 123%, Потенциал: 15)
          Призма (Качество: 123%, Потенциал: 15)
          Гелий (Качество: 122%, Потенциал: 15)
          Атом (Качество: 107%, Потенциал: 15)

          Общие баффы:
          Живучесть: 10.55
          ЭффективЛечения: 58.84
          Выносливость: 51.81
          РеакцияНаОжог: 5.44
          Кровотечение: -1.44
          ВосстановВыносливости: 20.71
          Пулестойкость: 30.22
          ЗащитаВзрыв: 17.27
          СкоростьПередвижения: 3.17
          Регенерация: 3.65
          СопротивлениеРадиации: 32.13
          СопротивлениеБио: 32.13
          СопротивлениеТемпературе: 32.13
          СопротивлениеПси: 32.13
          Радиация: -3.76
          БиоЗаражение: -3.76
          Пси-излучение: -6.82
          Температура: -2.23

          Общие дебаффы:
          Радиация: 0.36
          Температура: 0.04

          Нашел даже себе одну сборочку, почти собрал, вполне доволен)

          Если кому-то интересно протестить и дать фидбэк, буду рад

          7 месяцев спустя

          Доброе предновогоднее утро (день) всем! 🎄

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

          За это время было сделано следующее:

          • Добавлено ключевое слово “max” для желаемого баффа, которое позволяет максимизировать данный параметр в сборке
          • Добавлена возможность задавать не только нижнюю границу качества сборки, но также и верхнюю, чтобы артефакты в сборке не превышали и не были меньше выбранных процентов качества
          • Добавлена возможность задавать дополнительные лимиты дебаффов персонажа, будь то доп.характеристики контейнера или какие-либо расходники типо водки (если хочется попробовать собрать сборку под водкой или чем-либо еще)
          • Добавлена возможность использовать собственные артефакты, которые будут учитываться при подборе сборок. Для этого нужно выбрать свой артефакт, задать его качество и потенциал, выбрать доп.характеристики. Также указать является ли артефакт контрартефактом (в случае Атома, Трансформатора и т.д.), чтобы он корректно учитывался. Пользовательские артефакты помещаются в создаваемый файл “user_artifacts.json” и подгружаются автоматически при открытии программы.
          • Добавлена доп стадия - подбор наиболее близкой сборки по параметрам, заданным пользователем, в том случае, если не было найдено ни одной сборки, которая строго удовлетворяла бы заданным параметрам.
          • Пересмотрел этап подбора контрартефакта, постарался добиться, чтобы этот этап был как можно быстрее

          Таким образом сейчас выглядит GUI
          {TEXT?}

          Алгоритм использования:

          1. Открыть программу
          2. Выбрать файл, содержащий артефакты (arifacts.json). В нем старые названия артов, не стал править
          3. Выбрать желаемые баффы. Для более корректной работы ключевое слово “max” стоит применять только к одному, максимум двум параметрам. Также есть ключевые слова “*” - данный параметр должен присутствовать в сборке и “> [число]” - данный параметр не может быть меньше заданного числа
          4. Задать параметры контейнера и границы качества сборки
          5. Опционально - добавить свои артефакты
          6. Нажать кнопку старт и подождать.

          Ну и собственно сама ссылка для скачивания. Залил на свой yandex.disk
          https://disk.yandex.ru/d/haa2LytdC5NozA

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

          Прикрепляю ссылку на VirusTotal для тех, кто видит во всем этом подвох: https://www.virustotal.com/gui/file/9f86d13a0b7deb2a0887c0f6d7797ffa158543c5deb1ff36ad751adfe4b1808f/detection

          P.S. У меня нет цели поделиться вредоносным ПО или провернуть подобную авантюру. Мне действительно хочется получить обратную связь от комьюнити, поэтому лучшим вариантом посчитал дать возможность попользоваться прогой лично каждому. Надеюсь, что ни у кого не возникнет мысли, что автор - скамер.

          Всем хороших праздников и с наступающим, дорогие!

          • StepaPro2009 ответили на это сообщение.

            Gagutuun исходным кодом пока не хочется делиться он ужасен,

            Сомнительная причина.
            Могу кстати его вытащить и за тебя выложить, хо-хо. 😁

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

            Я вообще боюсь представить, как это можно перебирать без чётких формул и ебейших алгоритмов, т.к доп элемент это +1 к n(O).

            • Gagutuun ответили на это сообщение.

              StepaPro2009 Ну потести, потом выразишь мнение)