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

Вопросы по TES Construction Set


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

Все @ и # в затронутых или добавленных тобой диалогах надо заменять на { и } соответственно. Тот файл, в котором у тебя { и } - рабочий файл, "подготовленный для редактирования". Если тебе надо проверить плагин в игре или выложить его для использования, то нужно "подготовить для игры". И обратно, если тебе дают готовый для использования файл (т.е. "подготовленный для игры"), то тебе надо "подготовить его для редактирования".
Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 2.7 тыс
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

Изображения в теме

Как удалить контейнер через скрипт? Стандартным Disable, пишет ошибку.

Нужно, чтобы у контейнера было уникальное ID и стояла галочка возле Reference Persist.

А Disable его не удаляет полностью, делай нормально, читай MSFD, там четко описано как удалить объект полностью. А по ID правильно сказали, иначе все контейнеры удаляться.
Ссылка на комментарий
Поделиться на другие сайты

Как заставить НПЦ лежать мертвым изначально, а не от обнуления здоровья (неважно скриптом, или в КС), мне надо, чтобы при входе в локацию не были слышны их охи и вздохи. Например, что заставляет так себя вести Надса Тарена, трупа в хижине на св. Делине, одетого в зеленую мантию?
Ссылка на комментарий
Поделиться на другие сайты

У этого самого Тарена по умолчанию 0 хп и стоит галочка Corpse Persist, у сейданинскго сборщика налогов тоже.

Наверное, дело все-таки в Corpse Persist.

Ссылка на комментарий
Поделиться на другие сайты

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

У этого самого Тарена по умолчанию 0 хп и стоит галочка Corpse Persist, у сейданинскго сборщика налогов тоже.

Наверное, дело все-таки в Corpse Persist.

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

Ссылка на комментарий
Поделиться на другие сайты

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

как можно в CS уменьшить скорость развития навыков, и, как следствие, рост общего уровня?

http://pic.fullrest.ru/upl/NR5rkxZw.png

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

Спасибо.

 

------------

 

Еще хотел спросить: какую программу лучше использовать для объединения мелких однотипных плагинов? Да, я знаю, что это можно делать и в CS, но писали что редактор это делает кривовато, может есть более подходящий софт для этих целей?

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

Какой параметр в "settings" отвечает за уменьшение попаданий с ростом Ловкости и отражение заклинаний - Силы Воли? А то в игре влияние этих параметров на воров и магов слабо чувствуется.
Ссылка на комментарий
Поделиться на другие сайты

Подскажите, правильно ли я понимаю, что координата ZRot в редакторе для НПЦ указана в градусах, но для скрипта нужно указывать в минутах?

Вот к примеру погонщик из Вивека - Adondasi Sadalvel.

Его ZRot=270, далее, если я мучу скрипт от сваливания погонщика с рампы, он выглядит так:

Begin sadalvelfixscript

 

if ( ( GetPos, z ) < 850 )

Position, 32319, -72130, 927, 16200

endif

 

End sadalvelfixscript

 

Где 16200 это 270х60, согласно UESP.

Всё верно, товарищи?

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

  • 2 недели спустя...
Есть ли какие-нибудь проверки на наличие сражения в целом? не OnPCHitMe, а если кто-то сейчас собирается меня атаковать. Как их установить?
Ссылка на комментарий
Поделиться на другие сайты

Есть ли какие-нибудь проверки на наличие сражения в целом? не OnPCHitMe, а если кто-то сейчас собирается меня атаковать. Как их установить?

Если бы была простая реализация такая то не был бы так туп ИИ наемников. можно отследить локальным скриптом если нпк нацелился на гг. Можно попробовать по музыке играющей отследить( но не думаю что получится, там свои заморочки) В общем реализовать можно, но нужно знать ID нападающего.
Ссылка на комментарий
Поделиться на другие сайты

[offtop]Так не пойдет. Да и фиг с ним, обошелся без этого. Вот, что получилось

http://chaos-heart.r...BB%D0%B8%D0%BD/ [/offtop]

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

Подскажите: как должен выглядеть скрипт, который не дает выбросить определенный предмет из инвентаря, только если скриптом? По сути скрипт не должен быть сложным, просто в этой сфере я не разбираюсь.

 

p.s. Если в игре уже есть такой скрипт, то укажите как называется. Я тогда подсмотрю там.

Ссылка на комментарий
Поделиться на другие сайты

Не знаю, можно попробовать как-то так, скрипт кладется на предмет, то, что выделено красным, не переписывай:

Begin Script

 

short doOnce

if ( MenuMode == 1 )

return

endif

 

if ( doOnce == 0 )

if ( OnActivate == 1 )

Activate

Journal *** 25

set doOnce to 1

endif

endif

 

if ( GetJournalIndex *** >= 25 ) ; получаем 25 запись, когда берем предмет

if ( GetDistance Player <= 1024 )

disable

setdelete 1

player->additem ItemID 1

MessageBox "Вы не можете избавиться от предмета" ; можешь заменить слова в кавычках на любые другие по твоему усмотрению

endif

endif

 

End

 

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

 

if ( Once == 0 )

if ( GetJournalIndex *** >= 25 ) ; получаем 25 запись, когда берем предмет

if ( GetDistance Player <= 1024 )

disable

setdelete 1

player->additem ItemID 1

set Once to 1

endif

endif

endif

 

Да, еще строкой выше от short doOnce поставь short Once и первый блок замени на

 

if ( MenuMode == 1 )

return

elseif ( GetItemCount ItemID >= 1 )

set Once to 0

else

return

endif

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

Скорее всего как-то так, если будут ошибки, напиши, какие именно.

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

А без создания записи в журнале никак нельзя? Может есть функции вроде dropitem или getitemcount, с помощью которых можно было бы опираться на факт наличия самого предмета в инвентаре? Изменено пользователем Demolir
Ссылка на комментарий
Поделиться на другие сайты

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

Все условия, связанные с журналом, замени на переменную doOnce, которая уже объявлена, то есть

if ( GetJournalIndex *** >= 25 ) замени на if ( doOnce == 1 ), а Journal *** 25 вообще вырежи.

Да и: #238

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

Вообщем, покопался я в дефолтных скриптах. Оказывается такие переменные как OnPCAdd и OnPCDrop не совсем обычные, используются на подобие функции условий (подсмотрел скрипт на кольце Форгота и в других). Знать я этого конечно не знал. Но если их использовать, то можно найти такое неожиданное решение:

Begin AANoDpop_Script

Short OnPCDrop

If ( OnPCDrop == 1 )
player -> additem "ObjectID" 1
Messagebox "А не тут-то было!"
disable
setdelete 1
set OnPCDrop to 0
Endif
End

 

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

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

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

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

Создать учетную запись

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

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

Войти

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

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

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