Koxae, это не обязательно защита от чужих рук. Это может быть для того чтобы в процессе моддинга не повредить основную проделанную работу, а вносить в нее нужные изменения доп есп. Чтобы ненароком не отредактировать сам мод. Бывает такое надо.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Koxae, хватит уже в сумках сидеть =.= пора выглянуть наружу и увидеть что в монето-моде у нас оказывается люди выносят по 500 аудов за один заход в данж. Это же 50 000 септимов. Да я за все 650 часов геймплея столько держал в руках от силы два раза. Читерство чистой скумы. Я же просил порезать дроп с драугров и сундуков. Ну как так то, а?)
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Хочу создать маркер коллизии, но при нажатии на нужный значок маркер не видно, но при этом другие предметы нельзя выделить, как будто маркер появился, но его не видно. При обратном нажатии на тот же значок все возвр. обратно, но маркера так и нету.
Напоминает создание активатора-триггер маркера. Хоть копируй готовый хоть создавай новый он будет появляться невидимым и не выделяемым. Это происходит тк в редактировании у него отсутствует вкладка Primitive которая отвечает за отображение и активность маркера. Нужно просто его создать.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
DarkVetal, насчет твоего случая я не знаю но в моем варианте чтобы маркер заимел форму и эту вкладку я его создал кликнув по...не помню названия короче на панели инструментов иконка квадратная с буквой Т(тригкреейт вроде) Чтото подобное надо сделать и тебе.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
DarkVetal, мб неправильно делаешь. Там еще такое есть - если ты создал свой объект просто в ObjectWindow и кликаешь на Т то он бывает так и остается невидимым, то есть его нужно создать прямо в функции создания, а не в мире, а потом превращать в активный.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
DarkVetal, в этом то и причина скорее всего, раз перестало работать то что раньше работало. Про версии ничего сказать не могу. Я на них не перехожу и знать не знаю на какой нахожусь. У меня стим там сам чтото патчит я за этим не слежу.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Такой вопрос возник. Как сделать чтобы способность-активный эффект содержащий в себе несколько эффектов в списке отображался в одной строке? Например сам создаю такой в нем скажем понижение здоровья 100 и понижение маны 100. Но в списке эффектов действующих на персонажа они появляются раздельно, а не в два в одном, как например многие заклинания состоящие из нескольких эффектов и отображающиеся одним пунктом.
Добавлено (16.05.2013, 19:33) --------------------------------------------- ааа все вспомнил
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Делаю скрипт на заклинание столкнулся с таким вопросом, не могу никак подобрать строку условия. Она должна означать "Если на персонаже висит заклинание" пишу вот так if Game.Getplayer().addspell (Spell) скрипт компилируется без ошибок, но что то не правильно, думаю мое условие совсем не то означает. Как правильно кто знает?
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, Иsкатель, пасиб ребят, вечером или утром попробую и отпишусь.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, кстати такой еще к тебе вопрос. Хотел я как то написать скрипт расширитель крафта. Все облазил, пытался найти эвент который начинается при крафте. Есть ли вообще такое событие 'игрок начал крафт'? Не активировал кузницу а именно скрафтил вещь.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Иsкатель, файлы скрипта psc скидывать не обязательно. Это ресурсы которые позволяют редактировать скрипт. Если их не будет скрипт в ск будет не просмотреть и не отредактировать(кроме свойств) но в игре все будет работать.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №882
| Тема: Вопросы по скриптам Papyrus
написано: 18 мая 2013, 19:38
| Отредактировано: PaukSama - 18 мая 2013, 19:42
AleksTirex, ммм так вот оно что. Сохраню себе твои инструкции, время будет попробую.
Добавлено (18.05.2013, 23:38) --------------------------------------------- AleksTirex, все проверил все работает, заклинание при условии что оно есть исчезает и возвращается назад по истечении срока действия скрипта все как и надо. Использовал if Game.GetPlayer().HasSpell(___)
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Вот еще чего хотел узнать. Я часто в своих временных скриптах использую Utility.Wait(), но не только для того чтобы там сделать кулдаун между командами, чтобы например проигрывание анимаций дальнейшие действия скрипта не прерывали. Я ставлю большие временные значения скажем пять или десять минут, бывает так что все что есть уже выполнено остается этот расчет времени. Вообще я так тестил и сохраняться во время работы счетчика, выходить из игры и возвращаться в сохранку, вроде бы все нормально. Но меня интересует насколько вообще Utility.Wait() подходит для моих действий, может лучше использовать чтото расчитанное на долгое действие, или же все и так сойдет?
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, вот это меня и напрягало. Понимая как работает Utility.Wait() мысль о его действии на игровой процесс сразу возникает. Конкретно в моем случае я делал - эффект начался - Utility.Wait(5 мин) - эффект удалился. Оно конечно работает но за это время десять раз сохраниться можно. Потому и спросил лучший вариант. Буду пробовать.
Добавлено (19.05.2013, 16:20) --------------------------------------------- вобще в моем скрипте фича тайминга в том что действие должно совершаться не сразу как эффект заклинания пройдет. Так то просто было бы эвентами 'эффект старт и эффект финиш' но дело в том что действие произойдет только спустя 3 минуты после 'эвент эффект финиш'
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, тем не менее таймер все равно нужен...ну сегодня вечером после одинадцати просто выложу свой скрипт как он выглядит на данный момент. Так будет проще оценить где я не прав.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, да там еще не совсем все так просто. Первая половина блока должна происходить до 'эффект финиш' а ее следствие после. Тут в общем несложно будет главное не запутаться. Скрипт и сейчас работает так как мне надо. Но я все же не хочу чтобы он представлял нагрузку для сохранок.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №887
| Тема: Вопросы по скриптам Papyrus
написано: 19 мая 2013, 19:35
| Отредактировано: PaukSama - 19 мая 2013, 19:40
imageSpaceModifier property Pery auto Idle property Start auto Idle property Stop auto Spell Property Dis Auto
event onEffectStart(actor akTarget, actor akCaster) Game.Getplayer().playidle(Stop) Utility.Wait(0.1) if Game.Getplayer().GetSitState() == 0 Game.Getplayer().playidle(Start) endif if (Utility.RandomInt() <= 50) akCaster.AddSpell (Dis) endif if Game.GetPlayer().HasSpell(Dis) akCaster.RemoveSpell (Dis) Utility.Wait(480) akCaster.AddSpell (Dis) endif if akTarget == game.GetPlayer() Utility.Wait(5) Pery.applyCrossFade(2.0) endif EndEvent event onEffectFinish(actor akTarget, actor akCaster) if akTarget == game.GetPlayer() imageSpaceModifier.removeCrossFade(2.0) endif EndEvent
желтым я показал тот самый проблемный блок. В нем таймер расчитан на время превосходящее "эффект финиш" на три минуты, то есть как бы спустя это время после того как кончится эффект должно произойти akCaster.AddSpell (Dis)но только при условии if Game.GetPlayer().HasSpell(Dis) akCaster.RemoveSpell (Dis) которое проходит проверку до окончания эффекта в самом начале после каста.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №888
| Тема: Вопросы по скриптам Papyrus
написано: 20 мая 2013, 06:06
| Отредактировано: PaukSama - 20 мая 2013, 06:08
AleksTirex, кроче это скрипт для моего мода. Представляет собой добавление спелла наркотической зависимости. Сам скрипт висит на бутылке и активируется когда ее выпивает гг, никаких других akCaster быть не может. Для начала рандом, у меня там тестово 50% пока стоит то бишь с этим шансом после каждой бутылки можно получить спелл. if Game.GetPlayer().HasSpell(Dis) akCaster.RemoveSpell (Dis) Utility.Wait(480) akCaster.AddSpell (Dis) Вот это проверяет получил ли я спелл, либо он у меня уже был от предыдущей бутылки. Спелл сразу же удаляяется, типа эйфория облегчает ломку, но как только пройдет 480 секунд вернется, поэтому каждая новая бутылка будет уже встречать спелл на игроке и if (Utility.RandomInt() <= 50) akCaster.AddSpell (Dis) даже если шанс сработает вторично спелл не добавит, тк он уже есть. Нет в общем то можно сделать некое упрощение и как только действие эффекта проходит - сразу спел выдавать чтобы скрипт не длился дольше onEffectFinish. Но даже если так что то я не соображу как привязку сделать чтобы if Game.GetPlayer().HasSpell(Dis) akCaster.RemoveSpell (Dis) проверялось в эффект старт, а его следствие akCaster.AddSpell (Dis) в эффект финиш.
Добавлено (20.05.2013, 10:06) --------------------------------------------- ммм да я не подумал. Незачем делать время превосходящее эффект финиш. Так будет даже лучше, тк спелл на котором висит скрипт и который его запускает ничего сам по себе не значит и нигде не отображен ему можно поставить просто временное значение больше остальных эффектов что будет давать выпитая бутылка. Таким образом визуальный эффект кончится раньше но скрипт позже. Осталось с этим блоком разобраться как его разбить на эффект старт и эффект финиш проверка в одном следствие в другом.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №889
| Тема: Вопросы по скриптам Papyrus
написано: 20 мая 2013, 13:51
| Отредактировано: PaukSama - 20 мая 2013, 13:53
AleksTirex, не на что там смотреть. Я его еще не обновил до зависимости. Она в процессе.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, как раз это имеет смысл. Тк отвечает за добавление спелла. То есть если этот рандом не сработает то и никакого заклинания удалено не будет. И после удаления в конце скрипта обратно не появится. Эти строки как раз начинают все действие. Сейчас он 50 процентный лишь для теста. В финале он будет около 10. И да Dis это оно.
Добавлено (20.05.2013, 20:18) --------------------------------------------- и да мне ничего лишнего не надо. Хочу оставить так как есть, только чтобы конец эффекта добавлял Dis при условии что в начале эффекта он был удален.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, не проще. Тк получится что следущая бутылка ломку не уберет на время действия, а если и уберет то с шансом 50. Тут у меня уже все просчитано. Так что нет идей как избавиться от Utility.Wait?
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
YikxX, вполне вероятно. У них там все натуральное, качественное. Не то что у нас химия одна.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, о благодарю. То что надо. 75 процентов скрипта написано осталось разбавить его рандомами на доп эффекты и прочими нежданчиками. С этим справлюсь сам. Заодно и знаю теперь как работает переменная.
Добавлено (21.05.2013, 00:04) --------------------------------------------- так все скрипт скомпилировал, но остался еще один небольшой вопрос о чем я забыл. Хотелось бы еще сделать так чтобы пока скрипт не закончился... ну в общем пока действие эффекта не кончилось принятие еще одной бутылки, то есть повтор эффекта вел к смерти персонажа. Ну смерть то прописать дело не хитрое, а вот условие повтора хотелось бы подсказку получить.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, да я бы и сам рад так сделать но есть две причины на первый вариант. 1. Скрипт идеально работает только пока он один. То есть повторение может...нет оно концепции не нарушит но очень некрасиво может добавить Dis по рандому. Хотя он по этому самому рандому должен появляться лишь раз в жизни. Потом только по возврату 2. В скайриме в отличие от той же облы действие идентичных зелий не складывается вместе. Сколько бы бутылок со скумой не выпил а положительные эффекты будут как от одной. Тупо нет смысла пить вторую нет пока не отпустило. Потому надо убивать гг.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, да я никуда и не спешу. Буду пробовать разное, насчет пункта 1. Не так все просто я укажу что может быть эффект только один. Но ведь он добавляется и пропадает до финиша а за это время новое применение сможет добавить Dis чего мне крайне нежелательно.
Добавлено (21.05.2013, 15:16) --------------------------------------------- так же насчет эффектов делать их слагаемыми я не хочу. Выпей бутылку водки и выпел вторую...кайфа больше то не словишь. Одинаково, да еще и стошнит. Так же и тут, предел удовольствия достигается одной дозой. Насчет людей. Один раз сдохнут, загрузятся и больше не будут передозов творить. С другой стороны я согласен что неплохо бы предел смерти сделать не 2 а 3. Но надо это чем то обусловить. Но только не эффектами. Смысл в принятии второй пока действует первая.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №896
| Тема: Вопросы по скриптам Papyrus
написано: 21 мая 2013, 13:04
| Отредактировано: PaukSama - 21 мая 2013, 13:12
он это Dis а финиш это эфект финиш финал скрипта. охх ну что поделаешь раз уж ты постарался и написал этот блок на дополнительные бутылки то не будем упрямиться так и сделаем. Может быть пусть тогда не повреждение здоровья а еще размытие экрана вторая будет докидывать. У меня сейчас эффект старт дает это размытие а эффект финиш убирает. Можно сделать чтобы от первой этого небыло оно все же мешает играть, особенно зависимому от скумы. А если есть желание посмотреть "мультик" то вторая бутылка. Щас буду собирать все в одно целое посмотрим что из этого выйдет.
Добавлено (21.05.2013, 17:04) --------------------------------------------- Вот набросал такое. Но где то в нем ошибка типа mismatched input 'elseif' expecting ENDEVENT. Не могу понять вроде все верно, где я накосячил.
Scriptname SkoomaDrug extends activemagiceffect
imageSpaceModifier property Pery auto Idle property Start auto Idle property Stop auto Spell Property Dis Auto Bool Property bDone auto GlobalVariable Property aaaaGlobal auto
event onEffectStart(actor akTarget, actor akCaster) Game.Getplayer().playidle(Stop) Utility.Wait(0.1) if Game.Getplayer().GetSitState() == 0 Game.Getplayer().playidle(Start) endif
if (Utility.RandomInt() <= 50) akCaster.AddSpell (Dis) endif
if Game.GetPlayer().HasSpell(Dis) akCaster.RemoveSpell (Dis) bDone = true endif EndEvent
event onEffectFinish(actor akTarget, actor akCaster) if akTarget == game.GetPlayer() imageSpaceModifier.removeCrossFade(2.0) endif if bDone == true akCaster.AddSpell (Dis) endif aaaaGlobal.SetValue(aaaaGlobal.getValue() - 1) EndEvent
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, эх так и знал что где то endif не там. Искал искал а от их количества глаза разбегаются. Вот еще что if akTarget == game.GetPlayer() Utility.Wait(5) Pery.applyCrossFade(2.0) эта фигня работает на второй бутылке но ее может и не произойти если ее не выпить но в конце эффекта происходит if akTarget == game.GetPlayer() imageSpaceModifier.removeCrossFade(2.0) endif без всяких условий на то что оно вообще до этого сработало. Но тут по факту я так понимаю происходит возврат к дефолтному экрану, и ничего страшного не произойдет если оно сработает, даже если экран не изменялся. На деле просто это действие не будет видимо в игре так ведь?
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Изменение репутации для пользователя PaukSama
PaukSamaOffline
Сообщение №898
| Тема: Бункер модмейкеров
написано: 21 мая 2013, 14:24
| Отредактировано: PaukSama - 21 мая 2013, 14:24
Hecktor, странный он какой то. Лапы у него с траками расставлены и подвижны как у шагающего робота. Первый раз вижу такое на таком механизме движения. Сложно представить даже как он двигается, а в особенности разворачивается. Механизмы поворота ног да я вижу они есть, и даже если учитывать что сейчас он так встал чтобы быть более устойчивым... ехать он может лишь держа траки паралельно друг другу, небольшая погрешность на угол поворота одной ноги и уже будет буксовать или даже ломаться если на скорости такое произойдет. Разве что упор на безупречность механизма, типа все по микрометру сделано... но все равно как то не очень логично. Ноги было бы лучше на мой взгляд.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
AleksTirex, да действительно. Я сейчас продумывал свой мод. Но не учитывал что на персонажа могут действовать и помимо скумы разные экраны, которые будут так же очищены этим скриптом. Pery.apply(1.0) как я понимаю 1.0 это время появления экрана. Ну то есть он не резко изменяется, а в течении секунды, плавно. Pery.remove() удаляет свойство экрана но в данный момент резко и моментально?
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!
Hecktor, С колесами проще, у траков зацеп с поверхностью гораздо более жесткий и четкость механизма тут более чем важна, так скажем колесо развернутое против движения еще проскользит мало по малу и позволит двигаться, ну а гусеничный просто застопорит ход и может сломаться или оторвать конечность, ну да фиг с ним, это я предположил недостатки трака перед обычной ногой робота. Теперь плюсы, обрати внимание на место соединения лапы с корпусом. Там виден вроде бы шарик, а это означает - шарнирный механизм(если конечно я правильно вижу и там действительно шарик), то есть лапа не только может двигаться влево\вправо, но и подниматься вверх и опускаться вниз, что например может способствовать мягкому въезду в гору(даже на большой скорости он в нее влетит свободно), а так же легкому спуску без падения, ударов корпуса и возможного переворачивания. Так же меньше шансов оторвать ногу в случае повреждения или дорожных условий.
Отними у меня апельсин - и я тебя убью Съешь мой апельсин - и я тебя убью Подари мне апельсин - и... я тебя убью Мне не нужен никто, лишь мой апельсин А тот кто не пойман - не ассасин!