AleksTirex, я попробовал сменить расу ГГ на "дракона". Но при этом дракон смог только ходить по земле (притом только вперёд/назад). Заставить его полетать у меня не получилось.
Я изучил скрипты мода "Flyable Dragon Races 3_0_2 BURNING SKIES Full Version". В нём как раз используется подмена расы, но полёт реализован всё равно через скрипты. Все анимации запускаются вручную, в зависимости от нажатой кнопки. А движение происходит с помощью TranslateTo() к заданному маркеру, или подставляется под ноги фэйковая плоскость.
Выходит простой подменой расы не получить возможности полетать ... ?
AleksTirex, кажется я нашёл то, что нужно: <CLICK> (эти сейвы всё таки сохранились в архивах, на дугом винте )
Цитата AleksTirex
ГГ тоже может пользоваться пакетами
с пакетами ни разу не игрался, даже не знаю чего начинать спрашивать , пойду разбираться что там и как...
.....................
* Итак, выходит чтобы запустить пакет надо его добавить НПС (или ГГ): Если НПС изначально известен, то можно это сделать в СК для актёра в закладке "AI packages". Если неизвестен или это ГГ, то как ? (ни в "Actor" ни в "Package" нету таких функций)
* Далее, надо запустить пакет в заданное время: Делаем скрипт на вещь, при одевании которой раса ГГ меняется на Дракона. Далее делаем проверку на нажатие нужной кнопки, если нажата, то включаем пакет "Orbit". Как мы его включаем ? (ни в "Actor" ни в "Package" нету таких функций) Просто запустить "SetPlayerAIDriven()" и пакет начнёт выполнятся ?
AleksTirex, попробовал, но всё что сделал дракон так это только развернулся вдоль оси У и потерял управление. (при отключении эффекта - управление возвращалось)
Может я чего то не понял ? Глянь пожалуйста мои настройки:
AleksTirex, исправил, но всё равно ничего не добился, кроме того, что управление вообще перестало возвращаться назад к ГГ (в качестве цели у меня в форм-листе именно Хмаркер и стоит)
Добавил вывод сообщений на экран о состоянии алиасов, пакета и квеста. То по ним получается, что всё работает. _Anton_QuestForFly.IsActive() = TRUE _Anton_QuestForFly.IsRunning() = TRUE _Anton_QuestForFly.GetStage() = 20 (так и надо) _Anton_ReferenceAlias_PlayerForFly.GetActorReference() != None _Anton_ReferenceAlias_MarkerToFly.GetReference() != None Player.GetCurrentPackage() = _Anton_PackageOrbit
Т.е. квест запускается, его состояния меняются, цели правильно выводятся на экран. Оба референса заполняются и на ГГ появляется заданный пакет. Но после SetPlayerAIDriven() ничего не происходит ( функция "Player.EvaluatePackage()" тоже не помогает) А после "SetPlayerAIDriven(False)" управление больше не возвращается к ГГ, и со временем включается дкфолтная камера, вращающаяся вокруг ГГ и это состояние не сбивается ни нажатием на кнопки ни движениями мышки.
Чего то явно не хватает, но чего - понятия не имею. Пакет ведь на ГГ, так почему он не работает ?
Добавлено (15 Апреля 2014, 00:17) --------------------------------------------- Провёл ещё один опыт. Сделал целью не ГГ а заданного НПС. НПС телепортировался к ГГ, ему менялась раса на дракона, после чего он взлетал и начинал курсировать вокруг заданной точки. Причём если двигать маркер в процессе полёта - ничего не меняется. Управлять таким образом не выходит. И когда НПС в полёте, нельзя взять над ним управление консольной командой "ТС". Камера хоть и цепляется к НПС-Дракону, но ни мышка ни кнопки на движение не влияют. А если выполнить "ТС" до взлёта, то НПС-Драконом можно ходить, но он уже не взлетит, пока не вернуть ему управление, выполнив эту же команду ещё раз. Вот такие дела
Сделал я интерьер, добавил пару лампочек и заметил такой глюк. Если смотреть на пол под определённым углом, то свет рисуется нормально. Но если повернуть немного камеру, то на одной из плит пола свет пропадает. Вот скриншоты: ____нормально_______________________пропал Подскажите пожалуйста, где источник проблемы ?
DarkVetal, РЕДМЕНЪ, спасибо ! оказалось, что хоть источники света и без тени, но больше пяти-шести одну плоскость освещать не должно. Убрал лишние и всё нормализовалось.
Цитата AleksTirex
Есть простой способ добавления спеллов и предметов без скриптов:
Вот блин, ну вот так всегда ! А я был уверен, что через квест можно только скриптом спелл повесить (хотя совсем недавно именно так цеплял АИ-пакеты, но паралели с заклинанием не провёл ). Я когда то это делал, причём скрипт делал двойной, на алиасе и на самом квесте на событие загрузки сейва, как советовали для надёжности. Так в памяти и осталось.
Но мне кажется я нашёл решение ещё лучше ! У меня будут добавлены 2 рецепта, по которым в казанке можно сварить два муто-зелья. Одно - вызывает крылья, а другое - убирает. Получится и лорно, и эффектно, и со смыслом, и не надо думать каким образом потом заклинание снимать. А главное "идеальность" мода не пострадает !
******************** Вот правда не нашёл ещё как сделать собственную ветку для этих рецептов, чтобы они в "Разное" не попадали...
Ещё вопросик: какой параметр в ИНИ файле настроек игры определяет дальность реального света (не ЛОД-ы источников, а именно реального)
AleksTirex, спасибо. Дело в том, что я так и предположил, написал простенький вывод сообщения в скрипте, а компилятор меня отругал. Но сейчас попробовал снова, и ошибок уже не было. Чудеса, очередной раз подтверждающие, что ночью надо спать, а не коды писать ! :) Нет, всё таки это сейчас я ошибся - не компилируется скрипт ! Вот как он выглядит:
Код
Scriptname _Anton_ADW_GlidingPerk extends Perk
Debug.Notification("Current movement speed: " + Game.GetPlayer().GetAnimationVariableFloat("Speed"))
AleksTirex, точно, я не нашёл в игре ни одного перкового скрипта, в котором не использовались бы фрагменты.
Но в окошке перка скрипт не пишется, только через кнопку <добавить>. (при этом сам скрипт компилируется без ошибок) В квестах я такие скрипты делал (для стадий квеста), там именно в самом окошке он пишется и компилируется, и всё работает. Но добавляя такой "фрагментный" скрипт в Перк, я в игре ничего не получаю. Бегаю, хватаюсь за всякие вещи, но сообщений нету.
AleksTirex, я еле допёр как оно должно работать !!!
Когда ты написал, что я не там скрипт вставляю и про Entry Point = Activate я всё понял ! И всё это время я пытался скомпилировать тот фрагмент. И несмотря ни на что, он таки скомпилировался. (там нельзя было обычным копи-пастом делать, там оказыватся копипастить надо только внутренность функции)
Но ...... всё равно ничего в игре не пишется Продолжу завтра, может условия другие поставлю...
AleksTirex, Ррр, тем кто придумал такой способ добавления скрипта в Перк надо руки по отрывать, по самую шею !
Я в общем потратил более пяти часов !!! только на то, чтобы добиться работоспособности этого простенького скрипта (час потратил только на то, чтобы догадаться не копировать в то окошко весь скрипт, а только три строчки самой функции)
Если не делать точь в точь как ты написал, скрипт не привязывается. (при этом ошибок не пишет, чудесно компилируется, просто - не работает в игре и всё)
Чтобы определить, что не работает именно скрипт, а не условия например (как мне казалось), пришлось кучу экспериментов поставить. А это каждый раз запусти игру, загрузи сейв, добавь крылья, активируй, побегай по локации, подёргай кого то, и т.п. ... и всё это время, время, КУЧА времени ! Я уже забыл, зачем мне всё это было нужно !!
****************************************************************************************** А теперь, когда меня попустило, хочу ещё вопросик задать - есть ли способ поменять игровую переменную "fJumpHeightMin" без скрипта (например как в перке, где некоторые параметры можно умножать на число) ?
AleksTirex, скрипт тоже хорошая штука, просто я в последнее время открыл для себя столько новых способов сделать что то без него. Это и Перки со своими условиями, и Алиасы и Маг-эффекты. Всё это позволяет обойтись возможностями самого движка, что не только очень радует, но и расширяет совместимость, да и некоторой стабильности тоже добавляется (ведь мод получается проще). Ну в общем нравится мне и всё тут А абилку я обязательно попробую, хотя если скрипт использовать, можно и просто в нужном маг-эффекте при вызове это сделать...
И попутно ещё вопросик: * есть маг-эффект длящийся 10 дней, запускается зельем, при этом добавляя ГГ заклинание переключатель (ну и крылья тоже ). * есть маг-эффект длящийся 1 сек, запускается другим зельем (убирая крылья, по кейворду (без скрипта), подменяя пустым маг-эффектом и исчезая по времени). -> Как правильно сделать это заклинание переключатель, между этими 2-мя маг-эффектами, чтобы кастуя один и то же спелл Крылья то появлялись, то исчезали ?
Я попробовал условия в самом спелле прописать, типа есть кейворд - значит при касте срабатывает удаляющий маг-эффект. Если нет кейворда - другой маг-эффект вызывает крылья. Но не работает это как надо. Хотя тип спелла FireAndForget, оба маг-эффекта пытаются выполнится одновременно. Как я их не ограничивал, и по времени и по глобальной переменной. Как только стартует маг-эффект крыльев, на ГГ появляется кейворд и тут же срабатывает снятие крыльев. Вот такая штука непонятная.
AleksTirex, что есть то есть. Про абилки сейчас подумаю, может быть красивее получится...
Т.к. сейчас я сделал по другому: добавил глобальную переменную-ключ и маг-эффект-счётчик. Считает он сколько раз игрок кастанул заклинание. (считает конечно скриптом) А в свойствах спелла-переключателя (которое добавляется к ГГ при выпивании зелья) стоят три маг эффекта: - первый, одевает крылья, увеличивает высоту прыжка, убирает урон от падения (если глобалка==0) - второй, снимает крылья, и уменьшает высоту прыжка, включает урон от падения (если глобалка==1), и переводит глобалку в =2 - третий, при каждом касте спела увеличивает глобалку на 1, а когда глобалка >=2, сбрасывает её в 0 (снимать маг-эффект крыльев конечно не обязательно, они отпадают сами, когда глобалка становиться >0, но там ещё скрипт выполнить надо, так что не помешает)
Вот так вот я заморочился, чтобы сделать спелл-переключатель.
Есть вопросик по поводу создания карты высот для своего мира. Как вообще сейчас это делается ? Я нашёл туториал на Тиариуме и пробовал по нему делать: - сделал картинку из градации серых цветов 4096х4096 - уменьшил интенсивность цвета на ~30% - сохранил как BMP и как RAW (и 8 бит и 24 бит) - запустил "TesAnnwyn" и получил ESP (через Wrye Bash сделал из него ESM) - запустил "Oscape в2.06 бета", получил лоды - запустил "LodFileGenerator" и получил Лод-файл
Проблема в том, что при 8 битном исходнике мир получается не таким как на картинке. Если генерить ESP из 24 битной картинки, результат вообще ужасен (одни разрывы). В туториале написано, что изображение должно быть 16 бит (на все три цвета, ну т.е. на пиксель) , но я не смог получить его ни в Фотошопе, ни с помощью конвертеров изображений.
Кому то вообще удавалось сгенерить свой мир ? Как вы это сделали ?
@perture, так я тоже пробовал, но сохранял в RAW или BMP, т.к. "TesAnnwyn" не понимает других форматов. Результат при этом был похож на правду, только не совсем. Когда я через "Oscape" из ESP извлёк RAW картинку мира, то она была как бы "усечённая" по глубине света. И в игре мир был построен именно по этой усечённой модели. Пример: (так должно быть) _______________(так получается в игре)
Hellraiser2, интенсивности вроде хватает, но я попробую. (а ESM я делал только для "Oscape" для генерации Лодов)
@perture, Фотошоп при экспорте в RAW не даёт выбрать битность, только IBM PC. Само изображение имеет свойства: Grayscale и битность 16. Но всё равно ерунда выходит. На ровном месте споткнулся. Не знаю даже куда думать.
Hellraiser2, у меня похожим образом цвет/битность обрезаются.
ПС: проверяю результат через просмотрщик Irfanview. У него есть плагин, позволяющий открывать RAW как захочется.
@perture, спасибо за такой подробный ответ ! я по тому же самому мануалу делаю (только ключ масштаба -s не использую и для высоты воды -h ставлю 0) Irfanview дейсвительно не умеет смотреть RAW 16 bit Grayscale, только цветной может. Поэтому теперь я для просмотра RAW сразу Oscape использую.
Но сколько я не пыхчу, ничего не выходит. Что то получается только с BMP 8 bit, а с RAW 16 ни в какую. Какие я только программы и конвертеры не использую, всё равно мой 16 бит grayscale преобразуется Tesannwyn в какую то кашу.
И что самое поразительное, все вы пишете что в Фотошопе при экспорте RAW есть выбор 16 бит, но у меня его нет. Ладно, взял я GIMP, в Инете пишут что он работает с RAW и 16 бит можно поставить, и что ты думаешь - нет в нём ни экспорта RAW ни возможности выставить битность (в инструкциях есть скриншоты, там видно где оно должно быть, но у меня такого в меню нет).
Это просто какой то заговор !
Уже руками в свой RAW залез, байты посчитал, поэкспериментировал, всё правильно у него внутри. 2 байта на пиксель (от 0 до 65535 для оттенков серого) (сначала младший байт, потом старший), размер файла 4096*4096*2 = 33554432 МБ. Всё как надо, а Tesannwyn фигню всякую генерит.
Using a height scale factor of: 1.000000. Using a height offset value of: 0. Standardizing RAW file to 4096x4096 (16-bit) Reading file: 001.raw (dimensions 4096x4096, bit-rate 16)
Now Assembling Optimized CELL groups ...
Some gradient overflows/underflows have been caught and blocked: Total Overflows: 3838995 Total Underflows: -3853927
Highest point is 32566 THU (260528 Game Units) = 3712.524000 metres [Cell (-46,-64)] Lowest point is -32707 THU (-261656 Game Units) = -3728.598000 metres [Cell (-46,-64)]
Total number of cells imported: 16384
Finished! The imported ESP is called tesannwyn.esp and is 128 cells by 128 cells.
Да, вот RAW из перегенерированного ESP (без ключа -r) который видит Oscape: Скачать (забыл этот ключ убрать, пока с BMP игрался)
@perture, вот оно как, ... , я считал, что яркость надо приглушать процентов на 30, а оказывается там почти чёрное изображение должно быть ... Зачем тогда эти 16 бит, от них же толку никакого И в высоте 3712.0000 метров не видел ничего экстремального ... с BMP файлами у меня высота получалась в районе 15 метров, но я считал это неправильным. Значит по настоящему высоких гор мне не сделать.
Но работоспособный ландшафт я всё таки сегодня попробую создать !
@perture, нет, всё таки не в яркости дело, сделал вот такой тёмный рисунок, а ошибок-Overflows всё равно куча (хотя максимальная высота и снизилась до ~500м).
Что то не так с RAW. Но как его "не так" сделать можно я не знаю...
Хочу уточнить решение по обходу одного бага/особенности движка Скайрима.
Проблема: Вызываю объект (активатор), и двигаю его скриптом функцией TranslateTo() на 100000 единиц. Когда объект выходит за пределы области загруженных ячеек игры (~20000 единиц), он пропадает (его 3Д модель выгружается из игры).
Решение, про которое я слышал: Периодически вызывать для объекта функцию MoveToNode(), чтобы она обновляла для движка реальное положение объекта.
Мне интересно, может есть ещё какие то варианты решений ?
Я сделал магический эффект с параметрами "концентрация" + "на цель" (как в заклинании "Искра"/"Пламя"). Подцепил на него скрипт на события OnEffectStart() и OnEffectStop(). Но в игре скрипт не запускается. Хотя эффекты работают и молния бьёт по земле. Если поменять параметры на "концентрация" + "на себя", то скрипт начинает работать.
Вопрос: почему так происходит и как заставить скрипт работать ?
MemoriaVetusta, точно, это я тут ошибся. А в скрипте ничего нет, кроме Debug.Notification("[Balloon] Test1"). Вся штука в том, что скрипт то работает, но только если сменить параметры маг.эффекта на "на себя". А как заставить работать с параметром "на цель" непонятно. У меня этих "на цель" в СК 3 штуки, по описанию вроде как надо использовать или 1й или 3й. И у обоих происходит запуск маг.эффекта, виден удар молнии, но скрипт не стартует. А меняешь параметр - работает. Вот такая загадка.
Dsion, MemoriaVetusta, начинаю понимать, "на цель" вызывает скрипт, только при попадании в НПС, ... , а мне как раз и не надо ни в кого попадать.
Вообще, на сколько я понял, "на цель" имеет три типа: по Projectile, моментально и только по НПС и без Projectile, по статикам без Projectile. Я пытался использовать именно третий тип, спец-эффекты при этом выполняются, но скрипт не срабатывает.
Два слова, чего я хочу добиться: Пока кастуется моё заклинание, должен работать скрипт, меняющий переменные в зависимости от того куда смотрит ГГ. Как только мы прекращаем каст, переменные передаются на выполнение другому скрипту.
Можно конечно оставить тип "на себя"; но мне хотелось, чтобы анимация ГГ была с вытянутой рукой перёд, как бы указывая направление. А это есть только в типе "на цель".
MemoriaVetusta, так ведь у заклинания нет поля для скрипта, а если повесить его на маг-эффект, то он не вызовется, пока не попадёшь им по НПС. Или я чего то не понял ...?