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

Рекомендуемые сообщения

Опубликовано

Добрый вечер!

Такой вопрос: 
по скрипту контейнер\кровать должны переходить к игроку. Написал скрипт "если владелец мертв, то переходи к игроку". А если владелец - фракция, что писать? Я подумал так: скрипт считывает является ли владелец фракцией и далее высчитывает живы ли нпц, принадлежащие к фракции. Но как написать это, увы, не знаю..

 

Скрипт был такой:

if(furnitureRef.GetOwner == 1)
                                    debugPrint "setting ownership to %i" furnitureRef
         furnitureRef.SetOwnership

Заранее спасибо за помощь!

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано
19.11.2023 20:27:52, ArtemSH сказал(-а):

Добрый вечер!

Такой вопрос: 
по скрипту контейнер\кровать должны переходить к игроку. Написал скрипт "если владелец мертв, то переходи к игроку". А если владелец - фракция, что писать? Я подумал так: скрипт считывает является ли владелец фракцией и далее высчитывает живы ли нпц, принадлежащие к фракции. Но как написать это, увы, не знаю..

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

Ничто не истинно, все потрачено

Опубликовано

Благодарю за подробный ответ!

Значит придется придумывать что-то другое.

Спасибо!

  • Нравится 1
Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано

Добрый вечер, вопрос общего характера ко всем- каково мнение по поводу размера ESP-файла ? Если он становится слишком большим, не будет ли лучше разделить мод на части (речь идет о данжах, и созданных для них нипах и некотором количестве снаряжения для них).

 

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

Опубликовано

Рыцари девяти? Нашёл с чем сравнивать, там же всего два мегабайта - это вообще ни о чём, существует огромнейшее количество модов, чей размер гора-а-аздо больше. Да вот, например, Knights of the Nine Revelation: есм - 31 Мб, есп - 5 Мб. Короче, не заморачивайся.

Опубликовано

Приветствую

Размеры из-за новых мешей, введенных в игру? Или из-за крупных изменений? Просмотрел свой список установленных модов, больше рыцарей девяти только Кобл и большие довольно квесты. Но вообще заморачиваться реально не о чем) 

21.11.2023 21:17:00, piramis сказал(-а):

Добрый вечер, вопрос общего характера ко всем- каково мнение по поводу размера ESP-файла ? Если он становится слишком большим, не будет ли лучше разделить мод на части (речь идет о данжах, и созданных для них нипах и некотором количестве снаряжения для них).

 

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

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано (изменено)
28.11.2023 22:08:34, ArtemSH сказал(-а):

Приветствую

Размеры из-за новых мешей, введенных в игру? Или из-за крупных изменений? Просмотрел свой список установленных модов, больше рыцарей девяти только Кобл и большие довольно квесты. Но вообще заморачиваться реально не о чем) 

Собственный мод про дремор. Все меши, персонажи дефолтные, но три дейдрических мира раздули мод уже до 8 мгб, и бедняжка CS заметно подтормаживает при каждом сохранении. А там еще не все и доделано, немного интерьеров надо добавить.

Определенно больше двух не стоило вносить.

Изменено пользователем piramis
Опубликовано
29.11.2023 15:03:18, piramis сказал(-а):

Собственный мод про дремор. Все меши, персонажи дефолтные, но три дейдрических мира раздули мод уже до 8 мгб, и бедняжка CS заметно подтормаживает при каждом сохранении. А там еще не все и доделано, немного интерьеров надо добавить.

Определенно больше двух не стоило вносить.

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

Я полагаю размеры трех миров увеличились в разы :))
Это мощно, удачи Вам в этом деле
Главное, чтобы в конечном итоге было это дело оптимизировано, я в какой-то момент увлекся и потом только заметил, что один мой проект разросся до масштабов таких, что в окрестностях его лагает даже на хорошей машине :))

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано

Добрый вечер!

Вопрос по скрипту:

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

Вот скрипт:
 

if Квест 30
		GetInventoryObject Book2CommonFrontierConquest, Book2CommonDarkestDarkness, Book2CommonGalerionTheMystic, Book2CommonMysteriousAkavir, Book2ReligiousTheAmuletofKings, Book2ReligiousTrialsofStAlessia, Book3ValuableTheFirmament, Book4RareMysticism
           setstage квест 40
       endif

Заранее спасибо за помощь
 

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано (изменено)
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

ни референс, ни просто "игрок" ничего не меняют, увы. не понимаю в чем проблема

Изменено пользователем ArtemSH
Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано
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

Ничто не истинно, все потрачено

Опубликовано
Как давно я забыл элементарные функции скриптов, что долго думал, в чем причина невозможности работы скрипта у предыдущего оратора. Придется вспоминать молодость и наверстовать упущенное (забытое).
  • Нравится 1

Як-цуп-цоп
bleach-leek.gif
Опубликовано
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


Спасибо большое!
Я, к сожалению, даже не понимаю, что такое массив, мало знаком с программированием. 
Раз правильно гетитемкаунт, значит гетитемкаунт :))

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано
05.12.2023 13:30:15, ArtemSH сказал(-а):
Спасибо большое!

Всегда пожалуйста.
Я хотел спросить - зачем Вы используете зачастую OBSE-функции? В большинстве случаев, будет достаточно стандартных.
У Вас есть справочник по скритингу OSFM? Он бы сильно помог.

Ничто не истинно, все потрачено

Опубликовано

К сожалению в итоге и этот скрипт не работает, я не понимаю почему

вот как выглядит он полностью. подсоединен к квесту в начальном экране создания квеста (где их список), обозначен как квест скрипт. менял 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? Он бы сильно помог.

Я просто ищу по наитию и смотрю как делали другие модмейкеры те или иные штуки. Особой цели именно обсе использовать нет :)

ОСФМ я давно читал, тогда показалось, что слишком сложно и для тех, кто уже сечет в программинге

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано

Я бы попробовал такой вариант:

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

Як-цуп-цоп
bleach-leek.gif
Опубликовано
05.12.2023 18:04:49, Atosamyc сказал(-а):
Я бы попробовал такой вариант:

Да, GetStage отсутствует и игра не понимает, что от нее хотят.

 

05.12.2023 16:18:05, ArtemSH сказал(-а):
ОСФМ я давно читал, тогда показалось, что слишком сложно и для тех, кто уже сечет в программинге

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

Ничто не истинно, все потрачено

Опубликовано

аааа
вот что я упустил
Спасибо!

мне казалось, что за эти 20 лет со дня выхода облы уже должен был выйти многостраничный мегагайд по тому как стать в рамках модмейкинга убер-программистом (как эдакий маскар), так сказать от а до я, но это оказалось мечтами :)

да, придется осваивать его

Пοταπός ἐστιν οὗτος ὅτι καὶ οἱ ἄνεμοι καὶ ἡ θάλασ­σα αὐτῷ ὑπακούουσιν
Опубликовано (изменено)

Вот этот ESP - Royal.rar в Конструкторе, в окне Render Window никак себя "не проявляет", а надо бы там кое-чего подредактировать, поможете?

 

О, прошу прощения, в простом Конструкторе локация просматривается нормально, щас буду деревья в Дендрарии ИС пересаживать, раз автору мода было недосуг. 

Изменено пользователем Rybak2
Опубликовано
07.12.2023 20:44:52, ArtemSH сказал(-а):
мне казалось, что за эти 20 лет со дня выхода облы уже должен был выйти многостраничный мегагайд по тому как стать в рамках модмейкинга убер-программистом (как эдакий маскар), так сказать от а до я, но это оказалось мечтами

OSFM это и есть "многостраничный мегагайд" как овладеть скриптингом для Обливиона. Что там такого особенного еще можно было написать за прошедшие с его выхода 15 лет? Учебника вполне достаточно, чтобы вникнуть в скрипты. Хотя, если иметь представление в целом о программировании - это заметно упростит процесс.

  • Нравится 1

Мир друзьям - смерть врагам!

Мой новый сайт-блог: https://igorlutiy.pp.ua - как некое подведение итогов моей жизни в интернете

Мой профиль на Самиздате: http://samlib.ru/l/ljutyj_i/

  • 2 недели спустя...
Опубликовано

С предновогодней жалобой-просьбой: как можно(если можно) сделать работу мышки более плавной и "производительной" в Конструкторе? Навигация по всем трем осям "идет" рывками, прямо жуть как. Вроде, когда только осваивал эту работу, пару-тройку лет назад, было проще, полез сейчас, двигать предметы - сущее наказание; передвинул стол, а поставить посуду на него не в состоянии... Может что в свойствах манипулятора прописать, или в инишнике конструктора, черт бы его побрал.

  • 2 недели спустя...
Опубликовано
24.12.2023 04:27:33, Rybak2 сказал(-а):
Навигация по всем трем осям "идет" рывками

Маубе привязка к сетке включена? На панели инструментов сверху рядом с отменить/повторить две кнопки - привязка к углам и привязка к сетке (snap to grid/snap to angle).

  • Нравится 1
Опубликовано
04.01.2024 03:13:12, Bianor сказал(-а):

Маубе привязка к сетке включена? На панели инструментов сверху рядом с отменить/повторить две кнопки - привязка к углам и привязка к сетке (snap to grid/snap to angle).

Спасибо, за такое простое, но очень нужное напоминание по функционалу конструктора.

Опубликовано (изменено)

Опять я(надоел уже сам себе), вот с чем: пересаживаю соцветия льна с бетонного основания у монумента на землю, сохраняюсь..., в игре все равно весь цвет на бетоне сидит; сколько ж терпения надо в этом Конструкторе работать, да еще с такой простой задачей... Есть подсказка от уважаемых форумчан? А то уже подступает желание отправить свой крайний лицензионный диск с Облой на вечное хранение, так и не сделав свою собственную сборку ни на 2-х ядрах, ни на 4-х, видимо и на 6-ти с картой 3060, не получится...

Изменено пользователем Rybak2
Опубликовано

@Rybak2, приветствую.
Вы изменения вносите в отдельном плагине или оригинальном?
Скорее всего, игра записала в сохранения положение всех объектов и теперь нужно мод отключить, сделать чистое сохранение без него и включить вновь.
Еще, как вариант, нужно попробовать очистить плагин от "грязных" правок через TES4Edit (мануал по этой программе свободно можете найти как на ТыТрубе, так и просто в гугле).
Ради эксперимента, на этом соцветии введите Update3D (если у Вас установлен OBSE) или же Reset3DState. Можно и то, и то.

P.S Обла часто пишет информацию в сохранения и очистить ее можно только путем отключения мода и перезаписи сейва. Недавно столкнулся с "приколом", когда у НПС сначала был спелл невидимости, я протестировал его (НПС), затем спелл удалил. Но у актера заклинание все равно осталось и он его кастовал в начале боя. С положениями объектов в мире\ячейках абсолютно та же история. Не всегда, но в основном.

  • Нравится 2

Ничто не истинно, все потрачено

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...