ArtemSH Опубликовано 19 ноября, 2023 Опубликовано 19 ноября, 2023 Добрый вечер! Такой вопрос: по скрипту контейнер\кровать должны переходить к игроку. Написал скрипт "если владелец мертв, то переходи к игроку". А если владелец - фракция, что писать? Я подумал так: скрипт считывает является ли владелец фракцией и далее высчитывает живы ли нпц, принадлежащие к фракции. Но как написать это, увы, не знаю.. Скрипт был такой: if(furnitureRef.GetOwner == 1) debugPrint "setting ownership to %i" furnitureRef furnitureRef.SetOwnership Заранее спасибо за помощь! Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
Takirell Опубликовано 20 ноября, 2023 Опубликовано 20 ноября, 2023 19.11.2023 20:27:52, ArtemSH сказал(-а): Добрый вечер! Такой вопрос: по скрипту контейнер\кровать должны переходить к игроку. Написал скрипт "если владелец мертв, то переходи к игроку". А если владелец - фракция, что писать? Я подумал так: скрипт считывает является ли владелец фракцией и далее высчитывает живы ли нпц, принадлежащие к фракции. Но как написать это, увы, не знаю.. Приветствую. Не существует функции, которая бы показала - живы ли мемберы фракции или нет, ровно как и нет функции, которая бы просто могла вернуть массив актеров, которые состоят в той или иной фракции. Так что, могу сразу сказать, что задумка с перезаписью владельца в случае, если предыдущий владелец - фракция, мертворожденная. По крайней мере в том виде, в каком Вы предложили. Стоит также отметить, что скрипт не будет работать, если кровать находятся в "заприваченной" ячейке. Т.е, чтобы переписать права собственности на отдельную койку внутри ячейки, которая принадлежит НПС\фракции, нужно переписать права владения на ячейку целиком. С контейнерами и отдельными вещами все несколько проще. Ничто не истинно, все потрачено
ArtemSH Опубликовано 20 ноября, 2023 Опубликовано 20 ноября, 2023 Благодарю за подробный ответ! Значит придется придумывать что-то другое. Спасибо! 1 Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
piramis Опубликовано 21 ноября, 2023 Опубликовано 21 ноября, 2023 Добрый вечер, вопрос общего характера ко всем- каково мнение по поводу размера ESP-файла ? Если он становится слишком большим, не будет ли лучше разделить мод на части (речь идет о данжах, и созданных для них нипах и некотором количестве снаряжения для них). Вроде бы глупый вопрос, но что-то вызвал беспокойство, так как кое-что у меня уже больше по размерам, чем скажем "рыцари девяти". Пока что проблема лишь в том что дольше сохраняются новые изменения и доработки , для игры вроде бы влияния быть не должно.
Nu-Hatta Опубликовано 22 ноября, 2023 Опубликовано 22 ноября, 2023 Рыцари девяти? Нашёл с чем сравнивать, там же всего два мегабайта - это вообще ни о чём, существует огромнейшее количество модов, чей размер гора-а-аздо больше. Да вот, например, Knights of the Nine Revelation: есм - 31 Мб, есп - 5 Мб. Короче, не заморачивайся.
ArtemSH Опубликовано 28 ноября, 2023 Опубликовано 28 ноября, 2023 Приветствую Размеры из-за новых мешей, введенных в игру? Или из-за крупных изменений? Просмотрел свой список установленных модов, больше рыцарей девяти только Кобл и большие довольно квесты. Но вообще заморачиваться реально не о чем) 21.11.2023 21:17:00, piramis сказал(-а): Добрый вечер, вопрос общего характера ко всем- каково мнение по поводу размера ESP-файла ? Если он становится слишком большим, не будет ли лучше разделить мод на части (речь идет о данжах, и созданных для них нипах и некотором количестве снаряжения для них). Вроде бы глупый вопрос, но что-то вызвал беспокойство, так как кое-что у меня уже больше по размерам, чем скажем "рыцари девяти". Пока что проблема лишь в том что дольше сохраняются новые изменения и доработки , для игры вроде бы влияния быть не должно. Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
piramis Опубликовано 29 ноября, 2023 Опубликовано 29 ноября, 2023 (изменено) 28.11.2023 22:08:34, ArtemSH сказал(-а): Приветствую Размеры из-за новых мешей, введенных в игру? Или из-за крупных изменений? Просмотрел свой список установленных модов, больше рыцарей девяти только Кобл и большие довольно квесты. Но вообще заморачиваться реально не о чем) Собственный мод про дремор. Все меши, персонажи дефолтные, но три дейдрических мира раздули мод уже до 8 мгб, и бедняжка CS заметно подтормаживает при каждом сохранении. А там еще не все и доделано, немного интерьеров надо добавить. Определенно больше двух не стоило вносить. Изменено 29 ноября, 2023 пользователем piramis
ArtemSH Опубликовано 1 декабря, 2023 Опубликовано 1 декабря, 2023 29.11.2023 15:03:18, piramis сказал(-а): Собственный мод про дремор. Все меши, персонажи дефолтные, но три дейдрических мира раздули мод уже до 8 мгб, и бедняжка CS заметно подтормаживает при каждом сохранении. А там еще не все и доделано, немного интерьеров надо добавить. Определенно больше двух не стоило вносить. Проблемы в размерах модов особо нет, делить их на несколько есп-файлов было бы еще хуже, мест для подключения всего 256 так то Я полагаю размеры трех миров увеличились в разы :)) Это мощно, удачи Вам в этом деле Главное, чтобы в конечном итоге было это дело оптимизировано, я в какой-то момент увлекся и потом только заметил, что один мой проект разросся до масштабов таких, что в окрестностях его лагает даже на хорошей машине :)) Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
ArtemSH Опубликовано 4 декабря, 2023 Опубликовано 4 декабря, 2023 Добрый вечер! Вопрос по скрипту: Не могу понять какой функцией сделать так чтобы скрипт прочитывал содержимое инвентаря и находил конкретные книги. Если есть несколько нужных книг, повышается стадия квеста. Я вижу только функцию с интеджер, но она вроде как мне не нужна в такой ситуации. Мне нужен то ли стринг, то ли что... Вот скрипт: if Квест 30 GetInventoryObject Book2CommonFrontierConquest, Book2CommonDarkestDarkness, Book2CommonGalerionTheMystic, Book2CommonMysteriousAkavir, Book2ReligiousTheAmuletofKings, Book2ReligiousTrialsofStAlessia, Book3ValuableTheFirmament, Book4RareMysticism setstage квест 40 endif Заранее спасибо за помощь Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
ArtemSH Опубликовано 4 декабря, 2023 Опубликовано 4 декабря, 2023 (изменено) 04.12.2023 21:13:42, ArtemSH сказал(-а): Добрый вечер! Вопрос по скрипту: Не могу понять какой функцией сделать так чтобы скрипт прочитывал содержимое инвентаря и находил конкретные книги. Если есть несколько нужных книг, повышается стадия квеста. Я вижу только функцию с интеджер, но она вроде как мне не нужна в такой ситуации. Мне нужен то ли стринг, то ли что... Вот скрипт: if Квест 30 GetInventoryObject Book2CommonFrontierConquest, Book2CommonDarkestDarkness, Book2CommonGalerionTheMystic, Book2CommonMysteriousAkavir, Book2ReligiousTheAmuletofKings, Book2ReligiousTrialsofStAlessia, Book3ValuableTheFirmament, Book4RareMysticism setstage квест 40 endif Заранее спасибо за помощь Переделал скрипт, но он все равно в игре не работает и после получения предмета игроком стадия квеста не меняется :) if aqt 30 if PLAYERref.GetItems (Book2ReligiousTrialsofStAlessia) 1 setstage aqt 40 endif endif ни референс, ни просто "игрок" ничего не меняют, увы. не понимаю в чем проблема Изменено 4 декабря, 2023 пользователем ArtemSH Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
Takirell Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 04.12.2023 23:13:08, ArtemSH сказал(-а):не понимаю в чем проблема Приветствую. Проблема в том, что Вы используете вообще не те функции и, мало того, не так, как нужно. GetItems - возвращает массив (Array_Var-величину) предметов в сумке у персонажа, а не конкретный предмет. Для работы с массивами нужно использовать цикл (ForEach-Loop). В Вашем случае нужно просто сделать так: Begin GameMode if Квест 30 if (PlayerRef.GetItemCount Book2CommonFrontierConquest > 0) || (PlayerRef.GetItemCount Book2CommonDarkestDarkness > 0) || (PlayerRef.GetItemCount Book2CommonGalerionTheMystic > 0) || (PlayerRef.GetItemCount Book2CommonMysteriousAkavir > 0) || (PlayerRef.GetItemCount Book2ReligiousTheAmuletofKings > 0) || (PlayerRef.GetItemCount Book2ReligiousTrialsofStAlessia > 0) || (PlayerRef.GetItemCount Book3ValuableTheFirmament > 0) || (PlayerRef.GetItemCount Book4RareMysticism > 0) setstage квест 40 Return Endif Endif End 1 Ничто не истинно, все потрачено
Atosamyc Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 Как давно я забыл элементарные функции скриптов, что долго думал, в чем причина невозможности работы скрипта у предыдущего оратора. Придется вспоминать молодость и наверстовать упущенное (забытое). 1 Як-цуп-цоп
ArtemSH Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 05.12.2023 11:12:10, Takirell сказал(-а): Приветствую. Проблема в том, что Вы используете вообще не те функции и, мало того, не так, как нужно. GetItems - возвращает массив (Array_Var-величину) предметов в сумке у персонажа, а не конкретный предмет. Для работы с массивами нужно использовать цикл (ForEach-Loop). В Вашем случае нужно просто сделать так: Begin GameMode if Квест 30 if (PlayerRef.GetItemCount Book2CommonFrontierConquest > 0) || (PlayerRef.GetItemCount Book2CommonDarkestDarkness > 0) || (PlayerRef.GetItemCount Book2CommonGalerionTheMystic > 0) || (PlayerRef.GetItemCount Book2CommonMysteriousAkavir > 0) || (PlayerRef.GetItemCount Book2ReligiousTheAmuletofKings > 0) || (PlayerRef.GetItemCount Book2ReligiousTrialsofStAlessia > 0) || (PlayerRef.GetItemCount Book3ValuableTheFirmament > 0) || (PlayerRef.GetItemCount Book4RareMysticism > 0) setstage квест 40 Return Endif Endif End Спасибо большое! Я, к сожалению, даже не понимаю, что такое массив, мало знаком с программированием. Раз правильно гетитемкаунт, значит гетитемкаунт :)) Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
Takirell Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 05.12.2023 13:30:15, ArtemSH сказал(-а):Спасибо большое! Всегда пожалуйста. Я хотел спросить - зачем Вы используете зачастую OBSE-функции? В большинстве случаев, будет достаточно стандартных. У Вас есть справочник по скритингу OSFM? Он бы сильно помог. Ничто не истинно, все потрачено
ArtemSH Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 К сожалению в итоге и этот скрипт не работает, я не понимаю почему вот как выглядит он полностью. подсоединен к квесту в начальном экране создания квеста (где их список), обозначен как квест скрипт. менял player на playerref и обратно, но не меняется ничего. я пробовал на одной книге, чтобы проверить работоспособность, но он не меняет стадию квеста. Я не понимаю )) Scn ASHBooksScr begin gamemode if ASHBooks 30 if (Player.GetItemCount Book2CommonDarkestDarkness > 0) || (PlayerRef.GetItemCount Book2CommonGalerionTheMystic > 0) || (PlayerRef.GetItemCount Book2CommonMysteriousAkavir > 0) || (PlayerRef.GetItemCount Book2ReligiousTheAmuletofKings > 0) || (PlayerRef.GetItemCount Book2ReligiousTrialsofStAlessia > 0) || (PlayerRef.GetItemCount Book3ValuableTheFirmament > 0) || (PlayerRef.GetItemCount Book4RareMysticism > 0) setstage ASHBooks 40 RETURN endif endif end 05.12.2023 13:34:48, Takirell сказал(-а): Всегда пожалуйста. Я хотел спросить - зачем Вы используете зачастую OBSE-функции? В большинстве случаев, будет достаточно стандартных. У Вас есть справочник по скритингу OSFM? Он бы сильно помог. Я просто ищу по наитию и смотрю как делали другие модмейкеры те или иные штуки. Особой цели именно обсе использовать нет :) ОСФМ я давно читал, тогда показалось, что слишком сложно и для тех, кто уже сечет в программинге Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
Atosamyc Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 Я бы попробовал такой вариант: Scn ASHBooksScr Begin Gamemode if GetStage ASHBooks == 30 if (Player.GetItemCount Book2CommonDarkestDarkness > 0) || (PlayerRef.GetItemCount Book2CommonGalerionTheMystic > 0) || (PlayerRef.GetItemCount Book2CommonMysteriousAkavir > 0) || (PlayerRef.GetItemCount Book2ReligiousTheAmuletofKings > 0) || (PlayerRef.GetItemCount Book2ReligiousTrialsofStAlessia > 0) || (PlayerRef.GetItemCount Book3ValuableTheFirmament > 0) || (PlayerRef.GetItemCount Book4RareMysticism > 0) setstage ASHBooks 40 RETURN endif endif end 1 Як-цуп-цоп
Takirell Опубликовано 5 декабря, 2023 Опубликовано 5 декабря, 2023 05.12.2023 18:04:49, Atosamyc сказал(-а):Я бы попробовал такой вариант: Да, GetStage отсутствует и игра не понимает, что от нее хотят. 05.12.2023 16:18:05, ArtemSH сказал(-а):ОСФМ я давно читал, тогда показалось, что слишком сложно и для тех, кто уже сечет в программинге Ну... это базис, на нем все скриптовое мироздание держится, да и нет там ничего сложного. Вам придется его освоить, раз уж сели делать моды, даже при условии, что скриптами просто балуетесь. Настоятельно рекомендую обращаться к этому учебнику, чтоб хотя бы синтаксис понять. Ничто не истинно, все потрачено
ArtemSH Опубликовано 7 декабря, 2023 Опубликовано 7 декабря, 2023 аааа вот что я упустил Спасибо! мне казалось, что за эти 20 лет со дня выхода облы уже должен был выйти многостраничный мегагайд по тому как стать в рамках модмейкинга убер-программистом (как эдакий маскар), так сказать от а до я, но это оказалось мечтами :) да, придется осваивать его Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασσα αὐτῷ ὑπακούουσιν
Rybak2 Опубликовано 14 декабря, 2023 Опубликовано 14 декабря, 2023 (изменено) Вот этот ESP - Royal.rar в Конструкторе, в окне Render Window никак себя "не проявляет", а надо бы там кое-чего подредактировать, поможете? О, прошу прощения, в простом Конструкторе локация просматривается нормально, щас буду деревья в Дендрарии ИС пересаживать, раз автору мода было недосуг. Изменено 14 декабря, 2023 пользователем Rybak2
IgorLutiy Опубликовано 14 декабря, 2023 Опубликовано 14 декабря, 2023 07.12.2023 20:44:52, ArtemSH сказал(-а):мне казалось, что за эти 20 лет со дня выхода облы уже должен был выйти многостраничный мегагайд по тому как стать в рамках модмейкинга убер-программистом (как эдакий маскар), так сказать от а до я, но это оказалось мечтами OSFM это и есть "многостраничный мегагайд" как овладеть скриптингом для Обливиона. Что там такого особенного еще можно было написать за прошедшие с его выхода 15 лет? Учебника вполне достаточно, чтобы вникнуть в скрипты. Хотя, если иметь представление в целом о программировании - это заметно упростит процесс. 1 Мир друзьям - смерть врагам! Мой новый сайт-блог: https://igorlutiy.pp.ua - как некое подведение итогов моей жизни в интернете Мой профиль на Самиздате: http://samlib.ru/l/ljutyj_i/
Rybak2 Опубликовано 24 декабря, 2023 Опубликовано 24 декабря, 2023 С предновогодней жалобой-просьбой: как можно(если можно) сделать работу мышки более плавной и "производительной" в Конструкторе? Навигация по всем трем осям "идет" рывками, прямо жуть как. Вроде, когда только осваивал эту работу, пару-тройку лет назад, было проще, полез сейчас, двигать предметы - сущее наказание; передвинул стол, а поставить посуду на него не в состоянии... Может что в свойствах манипулятора прописать, или в инишнике конструктора, черт бы его побрал.
Bianor Опубликовано 4 января, 2024 Опубликовано 4 января, 2024 24.12.2023 04:27:33, Rybak2 сказал(-а):Навигация по всем трем осям "идет" рывками Маубе привязка к сетке включена? На панели инструментов сверху рядом с отменить/повторить две кнопки - привязка к углам и привязка к сетке (snap to grid/snap to angle). 1
Rybak2 Опубликовано 4 января, 2024 Опубликовано 4 января, 2024 04.01.2024 03:13:12, Bianor сказал(-а): Маубе привязка к сетке включена? На панели инструментов сверху рядом с отменить/повторить две кнопки - привязка к углам и привязка к сетке (snap to grid/snap to angle). Спасибо, за такое простое, но очень нужное напоминание по функционалу конструктора.
Rybak2 Опубликовано 9 января, 2024 Опубликовано 9 января, 2024 (изменено) Опять я(надоел уже сам себе), вот с чем: пересаживаю соцветия льна с бетонного основания у монумента на землю, сохраняюсь..., в игре все равно весь цвет на бетоне сидит; сколько ж терпения надо в этом Конструкторе работать, да еще с такой простой задачей... Есть подсказка от уважаемых форумчан? А то уже подступает желание отправить свой крайний лицензионный диск с Облой на вечное хранение, так и не сделав свою собственную сборку ни на 2-х ядрах, ни на 4-х, видимо и на 6-ти с картой 3060, не получится... Изменено 9 января, 2024 пользователем Rybak2
Takirell Опубликовано 9 января, 2024 Опубликовано 9 января, 2024 @Rybak2, приветствую. Вы изменения вносите в отдельном плагине или оригинальном? Скорее всего, игра записала в сохранения положение всех объектов и теперь нужно мод отключить, сделать чистое сохранение без него и включить вновь. Еще, как вариант, нужно попробовать очистить плагин от "грязных" правок через TES4Edit (мануал по этой программе свободно можете найти как на ТыТрубе, так и просто в гугле). Ради эксперимента, на этом соцветии введите Update3D (если у Вас установлен OBSE) или же Reset3DState. Можно и то, и то. P.S Обла часто пишет информацию в сохранения и очистить ее можно только путем отключения мода и перезаписи сейва. Недавно столкнулся с "приколом", когда у НПС сначала был спелл невидимости, я протестировал его (НПС), затем спелл удалил. Но у актера заклинание все равно осталось и он его кастовал в начале боя. С положениями объектов в мире\ячейках абсолютно та же история. Не всегда, но в основном. 2 Ничто не истинно, все потрачено
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти