Arin, Самые правильные варианты: 1. Прицепить на новую дверь такой же скрипт, какой висит на алиасе старой двери (но не будет стрелки). 2. Использовать старую дверь и для нового дома. 3. Если делаешь мод только для себя, ввести в консоли completeallobjectives housepurchase и забить.
Менее правильные варианты: 1. Написать скриптик, который будет выполняться при подключении твоего мода и заполнять алиас новой дверью. (вызовет проблемы в случае отключения твоего мода)
Вот... Объяснять не буду потому что ты все-равно никогда не читаешь
Не, нельзя... И ты вообще как-то слишком свободно интерпретируешь ивенты и функции... В описании ивента OnSpellCast сказано "Этот ивент вызывается, когда данный объект колдует заклинание". То есть, если бы твой посох валялся на земле и сам начал что-то колдовать, вот тогда сработал бы ивент. И, конечно, без akActor.
Не знаю. От себя могу только сказать, что в данном случае бояться скрипта не нужно... На ванильном файрболле тоже есть скрипт и никто от этого не умер. Вернее, умер, конечно, но только те, кто надо... Если что-то получше придет в голову, обязательно напишу.
ElefanD, если сделать тот простой скрипт, о котором я подумал с самого начала, то всё будет ништяк, но с одной проблемой... Урон в процентах пришлось бы задавать в магическом эффекте, а не через магнитуду в заклинании. То есть, если нужны заклинания с разным уроном, то и магические эффекты пришлось бы создавать разные. Не очень круто...
Лучше было бы сделать один универсальный эффект, а проценты чтоб задавались из заклинания через магнитуду... Но это немного сложнее... Надо тестить...
Возможно, было бы лучше сделать через магический эффект без скрипта. Его можно накладывать и снимать когда нужно. И что самое важное, он сам снимется, если пользователь отключит мод. А если скриптом изменить ActorValue и отключить мод, то оно таким навсегда и останется...
А вообще, противоположность DamageAv - это RestoreAV(String asValueName, Float afAmount)
Серана тоже не ванильную систему спутничества использует... Забыл сказать. У неё другой алиас в другом квесте.
Можно либо настроиться на какую-то конкретную систему управления спутниками (как DialogueFollower) , либо на несколько конкретных (ванильную+Серана), либо попытаться сделать что-то, работающее с любым спутником из любого мода.
Для последнего нужен какой-то критерий (conditions), по которому можно отличить спутника от других NPC. Не так-то просто, учитывая разнообразие модов и того, как они работают. Может, GetPlayerTeammate, но наверняка найдется мод, в котором компаньон не является Teammate...
И еще, конечно, можно решить все проблемы, редактируя ванильные записи и моды... В любой мод можно добавить фичу, чтоб он сообщал твоему моду, кто в данный момент является спутником... Но я обычно стараюсь избежать такого...
А если модель не увеличивать, а просто выбросить в мир, и отойти на то же расстояние? Пропадает или нет?
Я когда-то делал мод, который позволял бы перемещать любые объекты в доме и добавлять новые... Заметил, что добавленные мною объекты (id начинается с ff), если от них отходить, становятся прозрачными намного раньше, чем те, что поставлены в CK. Зависело от настроек графики игры... Одна и та же алхимическая лаборатория с той же моделью была видна очень издалека, если поставлена в CK, но быстро пропадала, если была установлена скриптом... Хотя, скорее всего, с твоей проблемой связи никакой нету.
Gedrial, можешь дать примеры объектов, которые пропадают, и которые не пропадают? Их ID в CreationKit. Если ты действительно найдешь два ванильных объекта, которые, будучи поставленными в мир без генерации ЛОДов, пропадают на разном расстоянии от игрока, я почти уверен, что смогу разобраться, в чем дело.
EquipItem действительно создает новый предмет, если такого нету в инвентаре... Если это не устраивает, можно перед EquipItem сделать проверку на наличие предмета в инвентаре. Тогда он наденется только если есть...
При уровне агрессивности 2 (Very Aggressive) NPC как-раз и будет мочить всех не-союзников. А союзников можно добавлять через фракцию.
Но, возможно, будет лучше поставить гладиаторам уровень агрессивности 1 (Aggressive)... При этом уровне они набрасываются только на врагов. Потом создать две фракции: Команда1 и Команда2 враждебные друг к другу. И перед началом боя распределять NPC по этим командам. Тогда они будут сражаться между собой, но не нападут, скажем, на судью или зрителей.
Уф, бред какой-то... Ну, во-первых, и твой объект, и станция исчезают на одинаковом расстоянии. Я же просил объект, который не исчезает... Расстояние это зависит от ползунка "Object Fade" в настройках игры. Если его потянуть на максимум, то можно разгуливать по всему твоему огромному объекту и он будет виден. Если в настройках статика поставить галочку "Never Fades", то тоже будет виден, не зависимо от настроек.
Но это не интересно... Интересно, что есть таки объекты, которые не исчезают. К примеру я взял Landscape\Bridges\Bridge01.nif Переименовал его, сделал из него собственный статик - не исчезает... Начал работать. Удалил из двух объектов (из этого моста и твоего мегакуба) всё лишнее: коллизии, лишние куски, текстуры, цвета вершин... В итоге осталось два совсем небольших и простых нифика. В каждом остался только один NiTriShape. Куб пропадает, мост (то, что от него осталось) - не пропадает... Я все цифры и параметры проверил и сравнил. Всё одинаково, кроме формы, - цифра в цифру. И вот теперь я смотрю на эти два почти одинаковых НИФа и, блин, не понимаю, почему один до сих пор пропадает на расстоянии 2200 от игрока, а второй - не пропадает... Бред какой-то... В CK я объекты создавал тоже абсолютно одинаково.
Добавлено (04 Сентября 2015, 19:26) --------------------------------------------- Вроде, нашел таки разницу... Но уже завтра буду разбираться, откуда она взялась...
Теперь ясно, что расстояние исчезновение зависит от размера объекта. Вот ставлю твой куб Original.nif - исчезает на расстоянии около 3000. Хорошо... Увеличиваю вдвое и ставлю Originalx2.nif - исчезает на расстоянии около 6000. Логично... Увеличиваю в 4 раза - исчезает на расстоянии 12000. Да, тут есть закономерность. Увеличиваю в 16 раз - исчезает на расстояние около 8000. Что за бред? Увеличиваю в 50 раз - исчезает на расстоянии меньше 3000. Раньше, чем Original.nif. Какого хрена?
Добавлено (05 Сентября 2015, 10:56) --------------------------------------------- BluePalace (какой-то дворец) и увеличенный в 16 раз куб имеют приблизительно одинаковый размер (CK показывает). И они исчезают на одинаковом расстоянии (если без ЛОДов). А куб, увеличенный всего в 4 раза, виден намного дольше, хотя его размер и меньше.
Такое впечатление, что после какого-то определенного размера расстояние видимости перестает повышаться и начинает падать... Вряд ли я еще накопаю по этой теме, извиняйте.
В принципе, был еще другой вариант оформления гардероба. Без телепортации куда-то и без манекенов. Игрок что-то делает и ему появляется менюшка: какой комплект изменять. При выборе комплекта для изменения, он может открываться как сундук. Не знаю, какой вариант я бы выбрал...
Это для смены одежды в зависимости от температуры? Может, лучше, почешем репы и попробуем придумать другой вариант, без триггеров? Хотя это, конечно, не моё дело.
Сам смотри... Хотя я не предлагал какой-то конкретный вариант, а предложил пораскинуть мозгами...
Добавлено (07 Сентября 2015, 12:52) --------------------------------------------- Самый простой вариант - это, конечно, расчет температуры по широте (координате Y в данном случае), высоте (координате Z) и времени суток. Понадобится только простая формулка и четыре значения для каждого мира. Значение, возвращаемое формулой, будет постоянно изменяться: поднялся немного на гору - температура упала, продвинулся на юг - температура поднялась, наступила ночь - температура упала. Недостаток такого способа в существовании всяких "аномальных" зон. Например, горячих источников. Формула, конечно, не сможет учесть, что Довакин стоит по колено в горячей воде с которой валит горячий пар.
Еще вариант - это создать список всех холодных зон. Под "зоной" может подразумеваться Cell или Location. При смене зоны (ивент), скрипт проверят, находится ли новая зона с списке "холодных". К сожалению, Cell'ов слишком много, чтоб вручную добавлять все холодные в список, а Location'ов может оказаться слишком мало и они могут оказаться слишком большими. Это надо проверить.
Следующий вариант - условно разделить весь на мир на любое количество квадратов (но поменьше, чем количетсов Cell'ов). Текущий квадрат игрока можно вычислять по координатам. Ну и, опять же, составить список "холодных" квадратов. Это точно не луший вариант.
И еще два самых сложных и продвинутых варианта... Первый - это расстановка "холодных" и "теплых" зон, которые будут задаваться координатами центра и радиусом.
Такой способ позволяет, например, указать целое владение как холодное всего одной точкой. Но выделить в нем "теплый" участок с каким-нибудь жерлом вулкана.
А самый крутой и продвинутый способ - это, конечно, интерполяция значений температуры. Весь мир пришлось бы обставить точками с известной средней температурой. Чем точек больше, тем точнее результат интерполяции. Тогда алгоритм сможет высчитать температуру для любого места в мире с учетом любых аномальных зон и чего-угодно. Без понятия, сколько времени займет выполнение интерполяции, если её портировать на папирус. Возможно, долго.... Хотя я заметил, что математические функции выполняются в папирусе вполне таки быстро. Не так долго, как методы на ObjectReference итп.
Напоследок самый тупой способ из пришедших в голову. Смысл в поиске вокруг Довакина каких-то объектов, характерных для холодной местности: заснеженных камней, сугробов итп. Бред, конечно, но тоже можно реализовать с помощью перезапускаемого квеста.
Наверное, он в алиасе какого-то квеста и на алиасе стоит галочка неубиваемости. Можно замочить скриптовой командой KillEssential() или убрать из алиаса.