На программистских форумах постоянно появляются люди с темой следующего содержания: "Я вот решил сделать собственную игру. (Далее идет описание какой-то сырой, непродуманной и абсолютно не оригинальной идеи). Опыта программирования у меня нету. Опыта моделирования, дизайна, озвучивания, придумывания сюжета - тоже нету. Помогите! Дайте гайд!".
Но если кто-то и дает ссылку на гайды по, скажем, Unity, с++ и 3dsmax, то почему-то только оскорбления в ответ и получает...
Кажется, неправильные пути текстур не мешают объекту отображаться в CK. Отображается без текстур, конечно, но все-таки не восклицательным знаком. Потому, как уже сказали, хорошо бы проверить, существуют ли все нужные ноды. И правильная ли прописана версия в заголовке нифа.
Красивой переменной "время респавна" там действительно нету, но, подредактировав скрипт, можно её добавить. Для каждого типа руды отдельно или одну на все.
MemoriaVetusta, Arin, а респавн вроде бы происходит у всего одновременно. Урожай созревает, рудные жилы восстанавливаются, неуникальные персонажи возрождаются, незащищённые сундуки респавнятся. А вот на них уже можно повесить скрипт с принудительным респавном. Так я сделал сундук, содержимое которого респавнится раз в сутки:
Ага... Но на всех жилах и так есть скрипт. Достаточно немного его подредактировать. В данном случае, я бы добавил переменную со временем последней выработки и проверку в ивент OnCellAttach. Когда игрок заходит в Cell, скрипт проверяет, прошло ли какое-то время с момента выработки жили, и, если прошло, сбрасывает её.
claw84, если спросишь моё мнение, я бы вообще по другому пути пошел. Зачем лезть в мод Ариссы и что-то там ломать... Проще сделать* новый независимый мод, чтоб компаньонка носила то, что ей даешь в игре. Захочешь нарядить Ариссу в Lady Huntress - пожалуйста. Захочешь, чтоб гуляла по поместью в нижнем белье - тоже пожалуйста. Можно пойти дальше и сделать автосмену комплекта в зависимости от локации или во время сна.
*Можно не делать, а взять готовый. Но раз вопрос в мастерской...
Добавлено (09 Июля 2014, 15:04) ---------------------------------------------
Цитата MemoriaVetusta
Хотя, поразмыслив (секунд 10), пришел к выводу, что так оно и есть. Вот так всегда: сперва пишу, потом уже думаю, а что же я написал smile2 .
Этот Папирус только запутывает людей, если они до него не программировали... Было бы круто, если бы ты немного с каким-то нормальным объектно-ориентированным языком поработал: python, c++ или что-угодно. Это я без всякого злого умысла.
То ли Specular, то ли Specularity... Где-то в ноде шейдера. Не известно, экспортируется ли это из 3dsmax. Если экспортируется, можно в самом максе настраивать. А если нет, то в нифскоп.
У меня 3dsmax нету, но мне сдается, что такие параметры как specular, alpha, emit итп должны легко в нем настраиваться, а потом нормально экспортироваться в ниф... Ну а что бы помешало автору плагина добавить пару строчек для экспорта и этих настроек шейдера?
Не знаете как в книге менять картинки? И возможно ли это в принципе?Открыл книгу один раз - одна картинка. Сделал кое какие действия и снова открыл - другая картинка. Подменять одну книгу другой нельзя.
Точно можно... Но понадобится квест и книга должна быть в его алиасе... Надеюсь, разберешься. А то я постоянно пишу гайды, а люди пугаются сложностей и забивают на проблему.
Допустим, есть три картинки: pic01.png; pic02.png; pic03.png. И нужно их менять в книге при каких-то условиях.
Шаг 1. Создать глобальную переменную PicToShow
Шаг 2. В книгу добавляется текст такого типа: <img src='img://Textures/Interface/Books/XXX/pic0<Global=PicToShow>.png' height='451' width='296'> Суть в том, чтоб одну цифру в адресе картинки заменить на <Global=PicToShow>
Шаг 3. Книга должна оказаться в алиасе активного квеста. У алиаса должна стоять галочка "Uses stored text".
Шаг 4. У квеста в список "Text display globals" нужно добавить твою переменную PicToShow
Шаг 5. Установка нужной картинки производится скриптом: PicToShow.SetValue(1) MyQuest.UpdateCurrentInstanceGlobal(PicToShow)
Подскажите по звуковым маркерам. Нужно чтоб звуки сверчков были только по ночам, а птицы с утра и до вечера. Это только с помощью скриптов сделать можно?
Там же есть Conditions... Взять даже один из стандартных SD - AMBrBirdsForestFall1MorningB01. И на нем два условия: время > 5.50; время < 11.00
Если просто активировать заклинание, ни в кого не целясь и не попадая снарядом Projectile в актеров, конечно же, ничего не произойдет, и не должно происходить.
Ага... Только когда эффект накладывается на какого-то актора, создается копия скрипта и вызывается ивент EffectStart. Если ни в кого не попасть, то и скрипта нету. А если это был взрыв и задел сразу 10 NPC, то будет 10 экземпляров скрипта и в каждом вызовется EffectStart.
Возможно, в твоем сообщении нужно поменять местами два словосочетания...
Так же из этого выплывает, что сделать заклинание, которое будет срабатывать на неживые предметы, чуть посложнее. Хотя и можно :-Р
anton, MemoriaVetusta, нужно правильно поставить вопрос: Почему персонаж вытягивает руку, когда поддерживает заклинание типа "Оберег"? Оно ведь тоже Conc Self.
Не уникальная, да? Тогда не знаю. Можно попробовать ивент OnEquipped на книге. Он, вроде, вызывается раньше, чем OnRead. Может, и успеет сунуться в алиас. SomeRefAlias.ForceRefTo(Self) SomeQuest.Update...Global(...)
Еще можно попробовать накладывать нужную картинку при помощи VisualEffect, как это сделано в древних свитках: http://i.piccy.info/i9....t12.jpg 75%, что будет работать хорошо в конце, но пришлось бы повозиться.
По-моему, вы из мухи слона сделали... Ну нафигарьте один эффект архетипа Dual Value Modifier: на OneHandedPowerMod и на TwoHandedPowerMod. Или спелл с двумя эффектами PeakValueModifier. Или изспользовать поле Perk to Apply. А в перке прописать, для какого оружия увиличивается урон. Не ясно, зачем там скрипты.
Всем привет, вопрос тупой но все же: как увеличить урон у когтей каджитов?
Новичковский, а не тупой... В таких ничего плохого нету. У котяр есть заклинание с постоянным эффектом, которое увеличивает урон от безоружных атак. Самый простой способ - открыть это заклинание (RaceKhajiitClaws) и изменить Magnitude. Ну и есть еще пол дюжины способов, которые могут быть актуальными для разных ситуаций.
Добавлено (14 Июля 2014, 23:54) --------------------------------------------- Что-то я не подумал о том, что подключение мода не вызовет обновление уже наложенного эффекта на игроке. Можно его вручную переналожить из консоли: player.removespell aa01e player.addspell aa01e
Еще можно сделать усиливающий когти перк. Или просто поменять Actor Value UnarmedDamage. Скриптом или через консоль. В любом случае, тут никакой проблемы и сложности нету...
Даже если кто-то захочет сделать, чтоб когти затуплялись со временем и их нужно было точить о камень, то всё-равно никаких проблем
Если перевести скрипт на человеческий язык, то там написано: "Выдать игроку тот предмет, который находится в алиасе JarlWeapon квеста." Но что же находится в этом алиасе? Смотрим...
В момент старта квеста создается предмет типа FavorRewardEnchAxeBest в инвентаре у Балгруфа. И имя этого предмета заменяется на текст из Message FavorJarlAxeName.
Остается непонятным только то, что это за FavorRewardEnchAxeBest... Ищем... Оказывается, это LeveledItem, напичканный разными топорами и уровнями, с которого они могут попасться.
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №204
| Тема: Вопросы по моделированию
написано: 16 июля 2014, 12:44
| Отредактировано: Dsion - 16 июля 2014, 12:49
Жаль, что на скриншоте не видно содержимое bhkCompressedMeshShapeData... Там должно быть видно количество материалов, их список, количество кусков. И не видно, есть ли ссылка на Collision Object в корневом ноде...
bhkCompressedMeshShapeData Но лично я вряд ли чем-то в этом помогу. Всё, что мне приходит в голову это: 1. Убедиться, что Template для ChunkMerge взять из ванильного меша именно интерьера. 2. Убедиться, что меш коллизии выглядит приблизительно так же, как меши коллизии ванильных интерьеров. Включая нормали итп.
Ребят, работал кто с BowSpeedBonus в маг.эффектах? Подскажите как он работает
А чего там подсказывать-то? 1.0 - время не замедляется во время использования зума на луке 0.5 - время замедляется вдвое (как с перком) 0.0 - время останавливается
привет! Помогите, пожалуйста... Как прикрепить кровать к своему персонажу (гг)?
Типа, чтоб она летала за главным героем и он в любой момент мог на ней поспать? Хорошая идея. Во всяком случае, в реальности я бы от такой кровати не отказался... Не об этом спрашиваешь, да?( Нужно просто, чтоб герой считался владельцем кровати и мог на ней спать..? Можно через консоль... Выбрать кровать и набрать setownership player И в CK можно задавать владельца. Конкретного персонажа или фракцию.
Еще владелец локации, вроде как, владеет и всеми предметами в ней.
Мне сразу бросилось в глаза, что для всего объекта коллизии был задан неправильный материал. То есть, вместо id одного из скайримских материалов, были какие-то левые цифры. И еще заметил обычные NiNode там, где в ванильных нифах располагаются BSFadeNode. Не уверен, что это имеет значение... Но вот отсутствие материала коллизии точно было критической проблемой.
можете кто нибудь подсказать - как при создании компаньона сделать так что бы он нанимался за деньги , а еще лучше за черный камень душ ?можно ли сделать так что бы созданный нпс был сначала враждебным для гг и кинулся с мечом на него , и если гг победит его - то этого нпс можно было нанять как компаньона ?
Ну есть квест DialogueFavorGeneric. Если какой-то NPC находится во фракции PotentialFollowerFaction, отношения с ним не хуже единицы и у игрока нету другого спутника, появляется возможность позвать этого NPC с собой. Когда говоришь ему "Следуй за мной", выполняется следующий код:
Код
(pDialogueFollower as DialogueFollowerScript).SetFollower(akspeaker)
pDialogueFollower заполняется квестом DialogueFollower. Именно эта функция делает NPC спутником.
Если хочешь, чтоб какой-то NPC нанимался за камень душ, можно сделать вот так: Создать свой квест. В квесте создать топик "Пора поработать. Держи свой камень." На топике такие условия: - это должен быть именно твой NPC - у игрока должен быть хоть один камень душ - не должно быть другого спутника ну и еще что-то там по желанию...
И выбор этого топика в диалоге должен выполнять такой код:
Код
Game.GetPlayer().RemoveItem(SomeItem, 1) (pDialogueFollower as DialogueFollowerScript).SetFollower(akspeaker)
Не просто делаем NPC спутником, а еще и отбираем камень.
Есть и много других вариантов...
Чтоб NPC перестал набрасываться на главного героя, когда гг его первый раз победит, скорее всего, придется приделать скрипт к этому NPC. Но скрипт очень простой. Даже не буду писать.