Вверх Вниз
MG Что дальше?


Модератор форума: Kris†a™  
Форум » TES V: Skyrim » Мастерская » Вопросы по скриптам Papyrus (О скриптах Papyrus (Skyrim). Скриптеры не проходите мимо!)
Вопросы по скриптам Papyrus
sansuli  Offline Сообщение №1 написано: 31 Августа 2012 в 17:29 | Отредактировано: sansuli - Пятница, 17 Апреля 2015, 21:08


The Red Sun


194
Уроки по скриптованию на языке Papyrus
Прежде чем задать вопрос просмотрите вышеуказанные уроки.
ok

Красное солнце
Есть вопросы по скриптам Papyrus? Пиши не в ЛС, а в эту тему.
atogod  Offline Сообщение №31 написано: 25 Сентября 2012 в 07:27


Странник


4
Доброго времени суток господа! Интересует мнение экспертов- есть ли возможность сделать качественно многопользовательский режим для Skyrim. Я не имею ввиду полноценную MMO, речь идет о батлграунде 3 на 3 к примеру. И если это возможно скажите, какие шансы на реализацию таких кодов(время исполнения и кол-во кодеров).

Monroe  Offline Сообщение №32 написано: 25 Сентября 2012 в 12:41



857
Quote (atogod)
делать качественно многопользовательский режим для Skyrim

Поговорите с ребятами которые его уже сделали

atogod  Offline Сообщение №33 написано: 25 Сентября 2012 в 21:48


Странник


4
Возможно я не совсем полно выразил мысль...
То что это в принципе возможно сомнений нет ;) . Интересует мнение тех, кто работал над подобными системами и знает как реализовать такую возможность (не конкретно для Skyrim, а вообще). Сможет ли это один человек сделать для Skyrim или это оч долго в одиночку(не возможно). Просто есть интересная мысль, вполне реализуемая, с не плохой перспективой ok , но в команду нужен программист(-ы).
P.S. Если не в той веточке про человека в команду обмолвился, то сори.

sansuli  Offline Сообщение №34 написано: 26 Сентября 2012 в 08:19


The Red Sun


194
Нужен скрипт, как сделать чтобы броню "Х" мог одевать только мужчина или только женщина?

Красное солнце
Есть вопросы по скриптам Papyrus? Пиши не в ЛС, а в эту тему.
atogod  Offline Сообщение №35 написано: 26 Сентября 2012 в 12:14


Странник


4
sansuli, Если не ошибаюсь в creation kit у каждой шмотки можно поставить условие при котором ее можно использовать, по половому признаку тоже есть условие. Конечно муторно выставлять для большого кол-ва вещей :)

Koxae  Offline Сообщение №36 написано: 26 Сентября 2012 в 12:45





2342
Quote (atogod)
Если не ошибаюсь в creation kit у каждой шмотки можно поставить условие при котором ее можно использовать
Это где такое? В окне редактирования брони я такого не видела.


Уроки Adobe Photoshop
atogod  Offline Сообщение №37 написано: 26 Сентября 2012 в 13:18


Странник


4
Могу и ошибаться, возможно перепутал с рецептом для создания шмота, там точно есть условие по полу.

Koxae  Offline Сообщение №38 написано: 26 Сентября 2012 в 13:21





2342
atogod, да, в рецептах есть. Но в броне, увы, нету. Если только через скрипт это реализовывать.


Уроки Adobe Photoshop
sansuli  Offline Сообщение №39 написано: 27 Сентября 2012 в 19:35


The Red Sun


194
atogod, ну а я о чем

Красное солнце
Есть вопросы по скриптам Papyrus? Пиши не в ЛС, а в эту тему.
anton  Offline Сообщение №40 написано: 06 Октября 2012 в 17:23



362
А как скриптом можно переместить предмет из точки "А" в точку "Б", но не по прямой, а по дуге ?

(пробовал: TranslateToRef(), SplineTranslateToRef() - но предмет двигается только строго по прямой ... :( )

Мой Блог
Raser0919  Offline Сообщение №41 написано: 06 Октября 2012 в 23:24 | Отредактировано: Raser0919 - Суббота, 06 Октября 2012, 23:27



413
anton, ну давай посмотрим. Что такое дуга? Дуга это либо полуокружность(идеальная дуга), либо что-то наподобие полуокружности. А поэтому, нужно располагать по пути от A в B еще и точки C,D,E,F.... ну столько сколько нужно для получения требуемой дуги. И так, у нас есть две точки. Если добавить к ним еще три, находящиеся между ними но на одну координату выше или ниже, по отношению к прямой по которой A идет в B то получится дуга. то есть надо расставить эти точки по координатам A(1 ; 1) E(2 ; 2) C(3 ; 2,4) D(4 ; 2) B(5 ; 1) ну и вот в этом и вся сложность. Если догадлив и по математике нормален, поймешь, а иначе объясню на конкретном примере.

mxac  Offline Сообщение №42 написано: 07 Октября 2012 в 12:41



178
Подскажите пожалуйста, есть ли внешний редактор и компилятор скриптов для Skyrim, а то который в Creation Kit сначала просил .net framework, но ничего поставил, а теперь просто выдаёт сообщение об ошибке создания скрипта... Или подскажите как это исправить, или же если это мой Creation Kit глючный, так подскажите в ЛС где взять нормальный и английский(мне в нём удобнее).

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


Sabira   Сообщение №43 написано: 07 Октября 2012 в 15:46 | Отредактировано: Sabira - Воскресенье, 07 Октября 2012, 15:50



mxac, Посмотрите здесь: http://skyrim.nexusmods.com/mods/searchresults/ Наберите в поиске Creation Kit

anton  Offline Сообщение №44 написано: 07 Октября 2012 в 20:38



362
Quote (Raser0919)
то есть надо расставить эти точки по координатам


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

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

(... может там как то по особому надо параметр TangentMagnetude задавать ? ...)

Мой Блог
Raser0919  Offline Сообщение №45 написано: 08 Октября 2012 в 16:58 | Отредактировано: Raser0919 - Понедельник, 08 Октября 2012, 17:02



413
anton, ну я думал что тот совет тебе поможет, но да ладно. Лично я не трачу времени на поиски команд, если я их не знаю, я просто беру в помощь мои знания по математике и айда вперед. И кстати не забывай, что помимо скриптов есть еще и анимационные модели(как они там назывались? Кажется moving object) ни или же можно просто привязать анимацию перемещения к обычной модели.

anton  Offline Сообщение №46 написано: 08 Октября 2012 в 21:51



362
Raser0919, совет хороший, просто реализовывать его с помощью Папируса мне пока кажется довольно сложно и не надёжно. Хотя как знать, возможно это будет единственный реальный способ двигать статик по кривой траектории...
Про Moving Object - я ничего не слышал, надо будет покопаться. Я так понимаю - там можно прописать заранее траекторию движения ?

Мой Блог
Myprism  Offline Сообщение №47 написано: 12 Октября 2012 в 01:30


Физик


1448
У меня проблема с поведением манекенов. Если их в одной локации несколько десятков, то спустя некоторое время (скорее всего, время респавна) они теряют одежду. Точнее, они не теряют её, одежда остаётся у них в инвентаре. В принципе, можно забрать у них одежду и дать снова, тогда они её оденут, но со временем опять могут снять. Это совершенно стандартные игровые манекены, сделанные точно так же, как и манекены в жилищах Довакина. На сколько я знаю, поведением манекенов управляет некоторый скрипт. Нельзя ли его изменить, чтобы манекены больше не раздевались?

sansuli  Offline Сообщение №48 написано: 17 Октября 2012 в 00:27 | Отредактировано: sansuli - Четверг, 25 Октября 2012, 23:30


The Red Sun


194
Пожалуй повторюсь

Напишите скрипт что бы
1.при попадании данной магии у НПС отключался АИ.
2.Нужен скрипт, как сделать чтобы броню "Х" мог одевать только мужчина или только женщина?

Да и еще можно ли изменить сон с помощью скрипта? Вот так чтобы если ГГ спал меньше трех часов назад, то он не может спать, если ГГ не спал 15 часов, то он будет спать 9 часов (автоматически, ты не выбираешь время), если ты не спал три дня, спать будешь 24 часа и реген сил, здоровья и магии прекращался, а если пять дней, то ты медленно теряешь здоровье.

Можно же поставить таймер с помощью скрипта?

Красное солнце
Есть вопросы по скриптам Papyrus? Пиши не в ЛС, а в эту тему.
PaukSama  Offline Сообщение №49 написано: 25 Октября 2012 в 16:09


Прячущий свое сердце


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

Отними у меня апельсин - и я тебя убью
Съешь мой апельсин - и я тебя убью
Подари мне апельсин - и... я тебя убью
Мне не нужен никто, лишь мой апельсин
А тот кто не пойман - не ассасин!
Vlados007  Offline Сообщение №50 написано: 03 Ноября 2012 в 22:56



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

Движок не меняется
mxac  Offline Сообщение №51 написано: 04 Ноября 2012 в 00:56



178
Quote (Vlados007)
Друзья, можете подсказать отдельную и удобную прогу для редактирования скриптов? А то эти .pex у меня СК не открывает (ругается страшно). Блокнот открывает, но так, что аж плакать хочется. Помогите, пожалуйста!

Да да, меня тоже интересует такая прога...

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


Demolir  Offline Сообщение №52 написано: 07 Ноября 2012 в 08:50



420
Vlados007,

Я использую Notepad ++ (начиная с версии 5.9.8 у него уже есть поддержка .psc), причем его можно запускать прямо с СК. Но наверняка есть и другие внешние редакторы.

Не судите, да не судимы будите...
Mig08  Offline Сообщение №53 написано: 08 Ноября 2012 в 13:35


Странник


1
Scriptname MigCiurassScript extends Actor

Potion Property MigPotion Auto
Armor Property MigCuirass Auto

Event OnEquipped(Actor akActor) ; старт события при одевании брони

if (Game.GetPlayer().IsEquipped(MigCuirass)) ; проверка одета ли броня (почемуто неработает??)
Game.GetPlayer().AddItem(MigPotion, 1, true) ; добавление бутыльков для примера
Debug.Notification("Одета броня - добавим бутыльков")
endIf
endEvent

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

вариант запоминать состояние через переменную при экипировке, и проверять уже
саму переменную меня неустраивает

Добавлено (08.11.2012, 12:51)
---------------------------------------------
Мда, а свои сообщения тут редактировать нельзя чтоли?



скрипт сохраняется но в игре чтото неработает
Property в редакторе назначал непомогает

Добавлено (08.11.2012, 13:35)
---------------------------------------------
[spoiler=вариант, который меня неустраивает]
Scriptname ArmorBanditCuirassScript extends Actor ;ObjectReference
;; автор Mig
;; данный скрипт нужно просто прицепить в Редакторе к любой веши
;; в данном примере это ArmorBanditCuirass
Potion Property RestoreStamina01 Auto ; Бутылёк выносливости(малый)
Armor Property ArmorBanditCuirass Auto ; броня
int FlasksEnd = 0

Event OnEquipped(Actor akActor) ;Событие при одевании вещи(предмета)
FlasksEnd = 0
while FlasksEnd == 0 ; Цикл - альтернатива, проблема в том что переменную сложнее отслеживать из другого скрипта
Game.GetPlayer().AddItem(RestoreStamina01, 1, true) ; добавление бутылька для примера
Debug.Notification("Одета броня - добавим бутыльков")
Utility.Wait(30.0) ; Задержка для цикла в секундах
endWhile
endEvent

Event OnUnequipped(Actor akActor) ;Событие при одевании вещи(предмета)
if akActor == Game.GetPlayer() ; данная проверка необязательна.
FlasksEnd = 1 ; нужно просто присвоить переменной другое значение, для прерывания цикла
endIf
endEvent[/spoiler]


Demolir  Offline Сообщение №54 написано: 13 Ноября 2012 в 21:20 | Отредактировано: Demolir - Понедельник, 12 Ноября 2012, 19:39



420
Вынужден обратиться с вопросом, т.к. проверять все форумы - это уйма времени, а конкретно вопрос нигде не объяснялся.

Как подключить функционал SKSE к Creation Kit? Дело в том, что данный расширитель подключается видимо как-то иначе, не так как его предшественники OBSE и FOSE. Или новые функции начинают работать сами, после распаковки SKSE в папку с игрой?

Добавлено (12.11.2012, 19:03)
---------------------------------------------
Нет, не сами. Попробовал использовать новые skse-функции, постоянно одна и та же ошибка ""Название функции" is not a function or does not exist". Не видит ее редактор. unsure

Добавлено (13.11.2012, 21:20)
---------------------------------------------
Разобрался с данным вопросом самостоятельно. Объясню как это делается:

Новые функции действительно подключаются иначе. Но если для предшественников подключение значило изменение свойств самого редактора, то функции SKSE подключаются непосредственно в скриптах Papyrus, а точнее методом импорта модулей. Например так:

Import Actor
Import Input

либо перед каждой функцией указывается источник импорта:

Actor."function" ---
Input."function" ---

Как оказалось, все просто ;)


Не судите, да не судимы будите...
ArcherL  Offline Сообщение №55 написано: 19 Ноября 2012 в 16:32


Странник


36
Не подскажете, каким скриптом при заходе игроком в триггер можно воспроизвести звук или видеоролик?

Artem13  Offline Сообщение №56 написано: 19 Ноября 2012 в 18:55


Mercenaries. Со смертью на ты.


2168
Что то я на странице СК не могу найти Справочник функций с описанием стандартных функций. Он вообще существует?


Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
sansuli  Offline Сообщение №57 написано: 20 Ноября 2012 в 07:20


The Red Sun


194
вопросов много а ответов нет, видимо люди сюда не особо заходят

Красное солнце
Есть вопросы по скриптам Papyrus? Пиши не в ЛС, а в эту тему.
Demolir  Offline Сообщение №58 написано: 20 Ноября 2012 в 12:42



420
Quote (Artem13)
Он вообще существует?


Вот тут можно посмотреть. Описания функций правда очень краткие и без примеров.

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

Да, вопросы действительно набираются:

- как построить скрипт, который будет выполняться исключительно в режиме меню (если блоков GameMode и MenuMode больше не существует)? Использование MenuMode как функции условий не помогает.
- как задать значение переменной, находящейся в другом скрипте? Раньше это можно было сделать так Set QuestID.Var to Integer, а как это делается в папирусе?

Не судите, да не судимы будите...
Artem13  Offline Сообщение №59 написано: 20 Ноября 2012 в 17:54


Mercenaries. Со смертью на ты.


2168
Demolir, сенькс.

Quote (Demolir)
как построить скрипт, который будет выполняться исключительно в режиме меню (если блоков GameMode и MenuMode больше не существует)?

Эээ, как не существуют? В той ссылке, что ты дал они, таки, есть. Только они сейчас не блоками, а событиями именуются. С ними поразвлечься не пробовал?

Добавлено (20.11.2012, 17:54)
---------------------------------------------

Quote (Demolir)
- как задать значение переменной, находящейся в другом скрипте? Раньше это можно было сделать так Set QuestID.Var to Integer, а как это делается в папирусе?

Судя по этой статье, в качестве родителя указывается не квест, а собственно скрипт. Попробуй.


Да, мы бандиты и бродяги, как злословит молва,
Мы попадаем в передряги, помня эти слова.
Смотри вперед и не сдавайся ты на милость судьбе!
Предай их всех, останься верен себе. (Канцлер Ги - Кантри Бреган Д'Эрт)
Demolir  Offline Сообщение №60 написано: 21 Ноября 2012 в 05:10



420
Quote (Artem13)
С ними поразвлечься не пробовал?

Пробовал конечно. В том-то и дело, что похоже эти функции оставили просто "для галочки", скрипты с ними комплектуются, но в игре не работают. Да и на другом портале мне уже ответили, что они неработающие...Вообще из того списка довольно много функций перестали работать, например SetDestroyed, SetUnconscious, SetRigidBodyMass и др. При том, что все они числятся в том списке, и в скриптах их использовать можно.
Quote (Artem13)
Попробуй.

Эх...мне бы пример какой-нибудь лучше, слишком там много технического текста :D
Использовать ссылку на скрипт я уже пробовал, но не методом создания функции, а непосредственно вставкой в событие Event OnUpdate, с указанием propertis auto, чтобы потом можно было задать нужный скрипт. Неудачно, я не смог даже сохранить скрипт, видно этот способ не годится.

Не судите, да не судимы будите...
Форум » TES V: Skyrim » Мастерская » Вопросы по скриптам Papyrus (О скриптах Papyrus (Skyrim). Скриптеры не проходите мимо!)
Поиск: