Перейти к содержанию

FNVFUN

Проверенный
  • Публикаций

    2 451
  • Пожертвование

    0,00 ₽ 
  • Зарегистрирован

  • Посещение

  • Победитель дней

    32

Сообщения, опубликованные FNVFUN


  1. 4 часа назад, MagnuMspec сказал:

    Да, там меню тестера пропускается, если параметров не 40.

    Думаю нужно сделать также, как в твоем варианте для ванильного тестера - запуск меню с CountSPECIALPointsGlob. 

    Как вариант, можно оставить опцию пропуска, если полученная в условии сумма не равна SPECIALsum.

    Так этот пропуск нужен или чисто опционален? Когда начинается сам квест Калифорнии? Он может начаться, когда игрок только вышел из Убежища 101? Просто там в условии для пропуска стоит if getstage MQ01 == 10. Это первый квест, спросить у Мориарти про отца.

     

    До этого же скрипта все очки SPECIAL сбрасываются, так что по идее этот пропуск и не нужен и его закомментить можно? Он будет только хуже делать, если поменять значение CountSPECIALPointsGlob, например.

     

    А так, вроде все сделано) Либо сегодня, либо уже завтра скину готовый фикс в теме тестера)


  2. 12 часов назад, MagnuMspec сказал:

    @FNVFUN В общем, здесь нужно:

     

    В RA-NewCalifornia_Addon.esm, изменить:

    PBrazilPQ01VigorTesterSCRIPT [SCPT:0C0C7CD5]

    PBrazilPQ02VigorTesterSCRIPT [SCPT:0C0C7CD6]

     

    Прописав туда твой код по удалению перков и восстановлению неиграбельных.

     

     

    В этих скриптах оригинальный код менять не нужно, а просто вставить перед самим меню Тестера мой код? Я так понял, что если там очков SPECIAL больше 40, то тестер вообще не включается. Так и должно быть? По логике у игрока должны сбрасываться все перки/навыки и тд?


  3. 3 часа назад, MagnuMspec сказал:

    (кстати в 150 стадии еще есть манипуляции с XP, они не нужны?)

    Не увидел никаких манипуляций) Разве что там какой-то закомменченный код есть.

     

    3 часа назад, MagnuMspec сказал:

    Или как думаешь лучше?

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

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

     

    4 часа назад, MagnuMspec сказал:

    * кстати, не нужно ли добавить подобное этому?

    видимо меняет параметры для этих двух перков, сбрасывая их.

    Такое лучше в отдельный скрипт запихнуть, чтобы не мешалось)

     

    4 часа назад, MagnuMspec сказал:

    **По поводу калифорнии давай в отдельной теме тогда, раз там иначе нужно.

    Да уже написал бы, как надо, я бы по-быстрому сделал) А то процесс до следующего года растягивается :lol:

    Как знаешь, в общем)


  4. 1 час назад, MagnuMspec сказал:

    А это баг? Просто вроде как была задумка такая. Не железно на 1, а немного рандома. Или это проблему вызывает?

    Я хз, Магнум) Человек написал, что у него проблема: уровень не сбрасывается до 1. Я и пытаюсь добиться четкого ответа по этому вопросу)

     

    1 час назад, MagnuMspec сказал:

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

     

    Сам вызов этого скрипта нужно вписать в SFWFunctionsSCPT, сюда, вместо выделенного:

      Показать контент

     

    Т.е. по сути мы заменяем вызов стадий 150 и 151 этого квеста, твоим новым скриптом.

     

    Почему именно в это место? Чтобы сброс уровня навыков и всего прочего был у персонажа в момент пробуждения у дока, а не именно в тестере. Хотя я не помню, может ли гг посмотреть свои хар-ки до выхода из дома дока.

    Тут тоже я пытаюсь получить четкий ответ, какой именно нужен функционал? Что конкретно нужно? Только удаление играбельных перков и трейтов или еще и удаление Навыков? Или удаление вообще всех перков? Назначение уровня 1 нужно?

    И теперь надо сделать, чтобы все перки удалялись во время пробуждения у Дока, и только после использования тестера добавлялись неиграбельные перки, которые до этого были у игрока? И сделать так, чтобы этот скрипт можно было использовать в других местах?

     

    1 час назад, MagnuMspec сказал:

    В аддоне калифорнии просто вызывается старт квеста сброса startquest aSFWPlayerResetQst

    Можно вместо этого вписать тот же call и твой скрипт новый.

    Или можно пока не заморачиваться с этим вообще, просто в теме аддона калифорнии может быть отдельно поможешь с этим. :)

     

    Еще раз, Магнум, мой скрипт написан для тестера с определенным функционалом. Для Калифорнии какой функционал нужен? Такой же?

    Вот мой код. Активируется при нажатии на тестер. Я там пометил, что каждый раздел делает:

    Спойлер

    scn VCG01VigorTesterUDF

    array_var aNonPlayablePerks
    array_var aIter
    ref rPerk
    int iCount

    Begin Function {}

     

    ;Перманентное удаление играбельных перков и трейтов. Неиграбельные перки удаляются временно и возвращаются после выхода из тестера.

    if eval (Ar_Size Player.GetAllPerks) > 0
        aNonPlayablePerks = Ar_Construct "array"
        ForEach aIter <- Player.GetAllPerks
            rPerk = *aIter
            if eval (GetPerkFlag rPerk 1 == 0 && GetPerkFlag rPerk 0 == 0) || rPerk == SFWRAUndeletablePerksList
                if eval PlayerREF.GetPerkRank rPerk > 1
                    iCount = 0
                    while iCount += 1 <= (PlayerREF.GetPerkRank rPerk)
                        Ar_Append aNonPlayablePerks, rPerk
                    loop
                    continue
                endif
                Ar_Append aNonPlayablePerks, rPerk
            endif

            Player.RemovePerk rPerk
        loop        
    endif

    if eval (Ar_Size aNonPlayablePerks) > 0
        CallWhen (begin function {}
            ForEach aIter <- aNonPlayablePerks
                rPerk = *aIter
                player.AddPerk rPerk
            loop
        end) ({} => GetActiveMenuMode == 0)                    
    endif

     

    ;Сброс Характеристик

    player.SetAV Strength 5
    player.SetAV Perception 5
    player.SetAV Endurance 5
    player.SetAV Charisma 5
    player.SetAV Intelligence 5
    player.SetAV Agility 5
    player.SetAV Luck 5

     

    ;Сброс Навыков

    player.SetAV Barter 2
    player.SetAV Guns 2
    player.SetAV EnergyWeapons 2
    player.SetAV MeleeWeapons 2
    player.SetAV Explosives 2
    player.SetAV Science 2
    player.SetAV Lockpick 2
    player.SetAV Medicine 2
    player.SetAV Speech 2
    player.SetAV Survival 2
    player.SetAV Unarmed 2
    player.SetAV Repair 2
    player.SetAV Sneak 2

     

    ;Сброс Уровня

    player.setlevel 1

     

    ;Активация тестера

    ShowLoveTesterMenuParams CountSPECIALPointsGlob
    SetStage VCG01 65

    END
     

     

    Что из этого оставлять? У меня неиграбельные перки хранятся во временном массиве, поэтому если делать универсальный скрипт, то нужные ЧЕТКИЕ требования к функционалу, так как надо переписывать код.

     

    В квесте aSFWPlayerResetQst тупо удаляются все перки (ну или хз, какие остаются). Таким макаром можно просто всучить туда RemoveAllPerks. В стадиях же квеста SFWFunctions 150 и 151 еще удаляются Навыки и снижается Уровень. То есть скрипты будут разные для одного и другого случая)


  5. 39 минут назад, Bulbyan сказал:

    Скорее всего хрень, поскольку у меня

    нет, а багулина эта появляется причем в разных местах. 

    Если хочешь, можешь скинуть лог, может у тебя будет что-то более внятное покажет)


  6. 13 часов назад, MagnuMspec сказал:

    aSFWPlayerResetQst поправить тоже нужно для того, чтобы в аддоне калифорнии отработало. И может быть, с твоей правкой даже не будет ломаться тамошний тестер иногда. :)

    У меня код написан специально для тестера, там удаляются все перки, а после использования тестера возвращаются только те, что не Playable и не Trait. Мне нужно четкое понимание, какой функционал нужен для Калифорнии и других мест.


  7. 12 часов назад, MagnuMspec сказал:

    По поводу раздела сброса перков, думаю стоит заюзать сами эти стадии квеста aSFWPlayerResetQst. Вписать в них вместо прямого удаления вызов твоих скриптов через call.

    С навыками возиться не надо.

     

    Тфу, короче я криво смотрю.

    Наоборот. Если NVSE новая, то юзается 150-я стадия SFWFunctions. Т.е. менять надо ее.

    И лучше сделать через call, чтобы и там и там вписать вызов одного скрипта.

    Так а как это поправит баг с тем, что уровень не сбрасывается до 1, если я туда докину только скрипт на сброс перков?

    Покажи конкретно, какой код надо менять (часть кода или весь код, я хз), а то там чехарда. В общем, я в скрипт тестера запихну сброс Навыков и сброс уровня до 1, чтобы наверняка все работало, а то путаница какая-то чес слово.

     

    12 часов назад, MagnuMspec сказал:

    Давай в исключения.

    Сделал. Еще создал лист для перков, которые не нужно удалять у игрока. Эти перки должны быть Playable, либо Trait, так как остальные перки и так не удаляются. Твики Стиви позволяют выбирать Дикую Пустошь бесплатно: bFreeWildWasteland = 1

     

    12 часов назад, MagnuMspec сказал:

    Вообще странно. Учитывая что там всё стандартно должно быть.

    Но там бы тоже хорошо глобальную переменную, если работает.

     Там багается интерфейс, мерцания чисел происходят. Но вроде как-то она багалась, что нельзя было из нее выйти, ну да ладно. Глобал. переменную сделал для всех менюшек с распределением Характеристик, но оказалось, что твики Стиви переопределяют их все. В общем, будет и глобал и, как аналог, твики Стиви.

    В твиках за это отвечают переменные bCustomSpecialPoints и iNumPointsToAllocate.

     

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


  8. 1 час назад, MagnuMspec сказал:

    Т.е. это не должно само по себе тестер ломать? А на книжку спешиал в 101-м распространяется?

    Навряд ли, он же вроде только для Вегаса твики делает. Если так хочется сделать глобальную настройку, то надо буквально пару скриптов поменять, добавив вместо "40" значение какой-нибудь глобальной переменной. Но завтра посмотрю, работает ли.

     

    1 час назад, MagnuMspec сказал:

    Походу я уже сам в этой каше запутался. Эти стадии этого квеста вызываются только когда NVSE старая или отсутствует (т.е. в текущих реалиях никогда)

    А при наличии сейчас запускается отдельный квест сброса, который проще, что ли:

      Показать контент

    Он же кстати юзается в аддоне калифорнии для сброса персонажа.

    Получается, с Навыками и Уровнем героя мне не надо разбираться? Что делать с разделом "сброс перков" в этом коде?

    ХАНТЕР73 выше в теме написал, что у него уровень сбрасывается до 12, а не до 1.

     

    1 час назад, MagnuMspec сказал:

    Трейты должны сбрасываться тоже. 

    А дикую пустошь, раз она так меняет мир, надо делать отдельным сообщением, видимо. Были подобные моды.

    Что мне с ней делать? Кидать в исключения или она перестанет быть трейтом?

     

    1 час назад, MagnuMspec сказал:

    Книжка при новой игре в 101м ломается разве? 

    Просто если мы проходим воспоминание, она вообще не должна активироваться, там должно вылезать что-то вроде 'Док провел отличную операцию'.

     

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

    • Нравится 1

  9. И еще два вопроса:

    1) Есть какая-то переменная, отвечающая за то, выбрал ли себе гг Особенности (Дикую Пустошь и тд)? Это меню нельзя вызывать более одного раза за игру, иначе игрок каждый раз может брать доп. 2 Особенности.

     

    2) Книжка в Убежище 101 тоже багается. Ее чинить? Но тут вопрос в целом насчет сообщений о перераспределении характеристик героя. Если игрок начал игру в Мохаве, а потом прошел проходить Убежище 101, то, может, стоит удалить ему возможность распределять по новой Навыки, Характеристики и тд? Выглядит совсем нелепо, когда тебе это постоянно (до 4 раз) предлагают сделать, едва час игры прошел)


  10. Фикс перков Житель Олд-Олни и Кола полярного медведя, которые позволяют приручать животных. Животные в итоге становились компаньонами игрока, что не позволяло их убить, а уволить или что-то еще толковое сделать с ними нельзя.

     

    DreeReqPerks-fix.esp

    • Нравится 2

  11. 22 часа назад, MagnuMspec сказал:

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

    Но возможно я бред несу)

    Баг от этого не перестанет быть багом. Или каждому челику, который будет обращаться с этой ошибкой, говорить, чтобы он попробовал перезапустил игру?)

    Не смог определить, с чем связан тот баг, так как он больше вообще никак не воспроизводится. Единственное проблема, которую сейчас наблюдаю: иногда временно пропадают числа и кнопки на тестере.

     

    22 часа назад, MagnuMspec сказал:

    я склонен думать, что скорее есть ошибки в реализации.

    Реализация чего? Тестера? Ты прав, этот тестер предназначен для использования только в начале игры - под другие случаи разработчики его не адаптировали) Поэтому если даже после моего фикса, когда у игрока вообще не будет никаких доп. характеристик, люди будут жаловаться на его работу, то его надо запретить использовать, а не пытаться починить нечинибельное.

     

    22 часа назад, MagnuMspec сказал:

    В идеале надо перед тестированием с удаленным перком чекать, сколько суммарно спешиал. 

    Это и так там реализовано)

     

    22 часа назад, MagnuMspec сказал:

    Как здесь работает твик Стьюи на изменения этого числа, я хз, но мне почему-то кажется, что дело тупо в том, что указанное суммарное число отличается от очков по навыкам, и тестер разламывается.

    Т.е. надо перед запуском тестера считать, сколько у ГГ спешиал, считать сумму, и выполнять: SetSPECIALPoints сумма

    Ну и в самом тестере указывать нужное значение в команде ShowLoveTesterMenuParams 

     

    И, внезапно, в тестере есть таки такое:

      Показать контент

    т.е. DCTotal  - это как раз то значение.

    Нет, тестер разламывается, потому что как минимум не адаптирован к модифицированным очкам характеристик (показываются командой GetActorValueModifier), потому что в начале игры у игрока их не должно быть. Это как минимум, что не адаптировано в функционале тестера на уровне движка.

    Твики Стиви просто задают свое фиксированное число очков распределения характеристик для тестера, которое будет иметь приоритет над числом, указанном в коде.

     

    22 часа назад, MagnuMspec сказал:

    Смотрю, сейчас идет перебор всех перков руками. Заменить универсальным думаю будет очень кстати, с учетом того, что перки должны удаляться те, которые Playable, и не Hidden.

    Т.е. это не должно затронуть наградные перки квестов. С ними отдельный разговор.

    Которые Hidden, нужно удалять навсегда?

     

    22 часа назад, MagnuMspec сказал:

    Кстати в модуле перков в нескольких скриптах для удаления трейтов используется скрипт migFnRemoveAllTraits [SCPT:13004F7B]

    Стянутый с какого-то мода. Возможно что-то подобное и нужно сделать. Если оно работает.

    Да, что-то такое я и сделал. Мой код нужно совать куда-то в особенное место или можно оставить в скрипте тестера?

    Сейчас скрипт тестера работает так:

    Удаляет все перки. Запоминает nonPlayable перки и после выхода из тестера их возвращает игроку.

     

    9 часов назад, CtpAHnuK сказал:

    Как один из тех,кто бился над проблемой скажу: там идет система, что уровень сбрасывается на значение (если сейчас мне не изменяет склероз) количество перков (из лвллиста) деленное на 2. Поэтому уровень не всегда сбрасывается (использованы перки из модов). Технически, думаю это можно решить добавляя скриптом перки из модов в лвллист. Но это надо писать скрипт для КАЖДОГО мода, добавляющего перки

    Судя по коду, что скинул Магнум выше, там количество перков не делится.

     

    22 часа назад, MagnuMspec сказал:

    Да там хитрый расчет:

      Показать контент

    150 стадия SFWFunctions.

    Что это за система и зачем она нужна? На какое количество должен снижаться уровень игрока в теории?

    И что по Навыкам?


  12. 1 час назад, ХАНТЕР73 сказал:

    А уровень и очки навыков нормально сбрасываются? У меня иногда не до конца сброс происходит при переходе. Типа в СП докачивался до 30 уровня, и сбросился до 12

    Я хз, по какой системе все эти перки/навыки/уровни сбрасываются.


  13. 15 часов назад, MagnuMspec сказал:

    а как именно он там не срабатывает?

    Насколько я помню, он просто ничего не активирует и все.

     

    19 часов назад, MagnuMspec сказал:

    Ох, вспомнить бы всю эпопею с этим.

     

    Суть в проблемы в том, что изначально в игре дается определенное количество очков - 40.

    В процессе игры игрок набирает перки, которые повышают определенную характеристику. И в дальнейшем при повторном обращении к тестеру - всё разваливается.

     

    Стандартные перки игры, повышающие харк-и, вроде как учтены. Проблема именно в модовых.

     

    При это кол-во 40 сделано глобальной переменной, но и эти потуги не помогли.

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

     

    Итого, есть я так понимаю два подхода к решению.

    1. Блокировать переопределение спешиал, если очков больше изначального значения. Т.е. нужно условно в скрипте подсчитать, сколько их, и если не равно 40, выводить сообщение с пропуском.

    2. Определять источники повышенных хар-к и временно отключать их. Это надо перебрать все перки, отыскать в них подобное.

    Походу не чинится, так что все потуги зря. Баг на движковом уровне, возможно. В инете про это практически не пишут. Там даже если нет перков, повышающих характеристики, все равно тестер ломается. Вот только что затестил:

    У меня был перк, повышающий Силу на 2, и при выборе очков в тестере именно Силу я мог только увеличить (независимо от того, нажимаю я на минус или плюс).

    Но потом я перезагрузился, удалил этот перк, и снова активировал тестер. У меня все характеристики были по 5 (по умолчанию сбросились скриптом перед открытиям меню тестера) и никаких перков, повышающих характеристики, не было. В итоге Интеллект, Харизму и Ловкость я мог только уменьшить. Ну и я из-за этого застрял в тестере.

    Та же хрень происходит, если просто ввести команду в консоли на открытие меню тестера.

     

    В скрипте тестера уже есть код (но он неактивный), который просто выводит сообщение о характеристиках героя (и дает возможность их перераспределить, открывая меню тестера, но эту возможность можно просто удалить). Так и надо сделать, я считаю.

     

    19 часов назад, MagnuMspec сказал:

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

     

    Это есть в твиках Стиви.

     

    15 часов назад, MagnuMspec сказал:

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

    Можно удалить все перки, которые гг выбирает при повышении уровня. Все остальное оставить. Насколько я знаю, можно написать универсальный скрипт под это дело. Добавить какие-то исключения, если понадобится (типа Интенсивной Тренировки). Если этот скрипт уже не написан) Я хз, как найти этот скрипт.


  14. 2 часа назад, MagnuMspec сказал:

    ну целиком отмена сброса выглядит так себе идеей, когда в Мохаве приходишь перекачанным.

    Нужно именно решить как-то эту проблему.

    Так я же написал, пускай перки удаляются. Главное, чтобы тестер не срабатывал, как в моде выше. Те характеристики, что игрок выбрал себе в Убежище 101, пускай и остаются с ним до конца игры без возможности их перераспределить. Все остальные перки и характеристики, полученные в DC, пускай сбрасываются.


  15. 44 минуты назад, MagnuMspec сказал:

    Ох, вспомнить бы всю эпопею с этим.

    Вот же мод, который скипает этот тестер. Зачем повторно перераспределять очки, если это столько багов вызывает? Удалить эту возможность и все) Т.е. перки пускай удаляются, но сам тестер скипается.


  16. 1 час назад, ХАНТЕР73 сказал:

    Магнум говорит для этого нужно найти всё что добавляет очки спешал. Во всех модулях. В каждом моде. Для этого, ну не знаю, надо организовать консилиум или найти упоротого что пройдёт всю сборку. Ну или у вас там в скриптах как то шаманить. Может как то обнулять гг другими методами?

    А не проще удалить эти сообщения и все?) Делов-то. Это я насчет сообщений при выходе из Убежища 101 и Гудспрингса.

    По поводу тестера в принципе то же самое...

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

     

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


  17. Ставить https://falcon-lair.com/files/file/521-sfw-otmena-sbrosa-urovnya-no-reset-player/ и не париться, а то, что в оригинальной сборке, уже много лет как забаговано.

     

    28 минут назад, Grim_Munchkin сказал:

    Он еще и багует при  выходе из Убежища 101 или из Гудспрингс, если попытаться поменять перки его не будет в списке но бонус к характеристикам остается и можно взять еще 2 перка

    Это тоже много лет как забаговано. Почему до сих пор не ставится задача починить, я хз)

     

    Приходится тупо закрывать глаза и проходить мимо таких моментов


  18. В 22.12.2023 в 13:58, FNVFUN сказал:

    Попутно могу попробовать решить баг "Если предложить игру одному из персонажей, у кого есть ограничение в 5 партий, а затем отказаться от неё, даже не начав, то счётчик всё равно увеличится. Таким образом, предложив 5 раз сыграть, а затем 5 раз отказавшись, Курьер потеряет возможность играть с этим персонажем."

    @MagnuMspec

    Оказывается, в оригинале это ограничение было добавлено только для торговцев, чтобы нельзя было выкачивать из них деньги на постоянной основе. Прикол в том, что в RA-Factions эти ограничения уменьшаются или вовсе снимаются в зависимости от Харизмы гг. К тому же я как раз делаю для торговцев отдельный бюджет для игры в Караван...

    Исходя из этого, может просто убрать это ограничение у них?


  19. 2 часа назад, MagnuMspec сказал:

    А какая именно возня?

    Муторно со списками возиться. Там надо в List добавлять карты больших номиналов за место меньших. Так-то могу сделать. Заодно сложность самой игры надо увеличить с 1 до 3, потому что npc максимально тупые поступки делают в игре, сами себе яму роют)


  20. 8 минут назад, Onotoluy сказал:

    Твики только от олекса ставил. Больше ничего.

     

    Помню даже был пост о снежных шарах. Опубликовано 29 июля . Только там они забирались скриптами. С Мохавскими шарами все нормально, такое только с DC.

    Ну хз. Повторюсь, что у меня бага не обнаружено. Они ведут себя, как квестовые предметы, которыми и являются)


×
×
  • Создать...