EdMSL Опубликовано 25 января, 2017 Опубликовано 25 января, 2017 25.01.2017 07:52:53, katkat74 сказал(-а):Нормально он генерирует Поясню немного, почему у меня такие опасения. Как известно, в игре часто встречаются летающие объекты (камни, деревья). Соответственно, чтобы это вылечить, нужно их опускать вручную до нужной глубины. Глубина для каждого объекта своя. Поэтому я и думаю, что ожидать от генерации хорошего результата не стоит и много придется править самому. Я, конечно, проверю это все. По крайней мере попытаюсь.
katkat74 Опубликовано 25 января, 2017 Опубликовано 25 января, 2017 25.01.2017 08:45:08, Ed101 сказал(-а): Поясню немного, почему у меня такие опасения. Как известно, в игре часто встречаются летающие объекты (камни, деревья). Соответственно, чтобы это вылечить, нужно их опускать вручную до нужной глубины. Глубина для каждого объекта своя. Поэтому я и думаю, что ожидать от генерации хорошего результата не стоит и много придется править самому. Я, конечно, проверю это все. По крайней мере попытаюсь. Много ли таких объектов? Я за все время своей дружбы с обливионом только один камень видела. В этих регионах настроено, какой объект на сколько может быть погружён в землю, насколько наклонен в сторону и на каком уклоне может расти, а также варианты его размера, промежуток высоты на котором он встречается и т.д. Под крупными объектами этот генератор рисует особые текстуры земли и накладывает затемнение на ландшафт имитируя тени. Да вы замаетесь даже на маленьком участке все это воссоздать в ручную. Очень много параметров, если создавать регион с нуля то это очень сложно. А уже готовый бери и генерируй, ничего сложного и результат отличный ни чем от лесов и полей ванильной игры не отличается. Конечно если вам нужно будет расставить там домики и провести дороги то все эти сгенерированные объекты с нужных мест нужно будет удалить и текстуры земли изменить.. но ломать - не строить :) Сейчас озадачилась созданием региона из собственных моделей, вот это уже мозголомка.. ниче не понимаю, туториалов нет :)
EdMSL Опубликовано 25 января, 2017 Опубликовано 25 января, 2017 (изменено) 25.01.2017 09:31:31, katkat74 сказал(-а):Да вы замаетесь даже на маленьком участке все это воссоздать в ручную Вот и я задолбался слегка, поэтому стал искать пути упрощения. Но, боюсь, генератор не сделает мне такой лес: Еще вот мне подсказали использовать Object palette, но вот беда, не работает в ней функция Sink, которая отвечает за высоту размещения объектов. А так бы с ней вообще было бы идеально. Может кто сталкивался с такой бедой? Изменено 25 января, 2017 пользователем Ed101
katkat74 Опубликовано 25 января, 2017 Опубликовано 25 января, 2017 25.01.2017 15:35:31, Ed101 сказал(-а):Object palette Не пользовалась, интересно стало. А у вас есть какая нибудь информация по этой функции? Ну кроме того что я могу сохранять свои наборы и видеть объект :)
EdMSL Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 (изменено) 25.01.2017 16:51:26, katkat74 сказал(-а):А у вас есть какая нибудь информация по этой функции? Вот для Creation Kit видео, но в CS все аналогично работает. Проверьте, работает ли у вас функция Sink, очень мне интересно. Изменено 26 января, 2017 пользователем Ed101 1
katkat74 Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 02:59:35, Ed101 сказал(-а): Вот для Creation Kit видео, но в CS все аналогично работает. Проверьте, работает ли у вас функция Sink, очень мне интересно. Спасибо огромное! А я уже все кнопки перепробовала! Вечером протестирую sink
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 24.01.2017 20:07:43, Takirell сказал(-а):Не в курсе - есть ли где-то видео урок на эту тему? http://tesall.ru/videos/view-379-construction-set-9-redaktirovanie-landshafta/ Это не то? 22.01.2017 15:58:12, Takirell сказал(-а):Palette Object Это где? я что-то не нашла.. :olen: 25.01.2017 16:51:26, katkat74 сказал(-а):Не пользовалась, интересно стало. +1
katkat74 Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 09:07:07, Laion сказал(-а):Это не то? Не.. совсем не то. 26.01.2017 09:07:07, Laion сказал(-а):Palette Objec Это новая функция в меню КСЕ
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 а, экстендер.. В обычном-то нету. Ясно. А то я помню, как муторно руками рассаживать кустики с цвЯточками.
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 у меня тоже вопрос есть. :blush2: Созданной копии игрока можно добавить диалоги? Я присвоила ref-переменной копию, скриптом добавляю ей топик - не реагирует. Сделала "костыль" в виде добавляемого в инвентарь копии предмета и проверки его наличия в инвентаре в топике - «молчит, зараза...» (c). Вернее, не совсем молчит, слухи-то генерирует, но не больше. Ни приветствие, ни топик не желает говорить.
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 (изменено) 26.01.2017 09:27:32, Laion сказал(-а): у меня тоже вопрос есть. :blush2: Созданной копии игрока можно добавить диалоги? Я присвоила ref-переменной копию, скриптом добавляю ей топик - не реагирует. Сделала "костыль" в виде добавляемого в инвентарь копии предмета и проверки его наличия в инвентаре в топике - «молчит, зараза...» (c). Вернее, не совсем молчит, слухи-то генерирует, но не больше. Ни приветствие, ни топик не желает говорить. Вы все верно сделали, положив специальный итем(Токен) в инвентарь к клону. Однако, необходимо создать доп. квест, а в нем и топики с проверкой на предмет. Квест должен работать всегда и\или включаться после того, как будет создан клон. Кстати в этот же квест стоит добавить GREETING, в который необходимо внести проверки на наличие итема. Ах да! Приоритет квеста обязательно выставить 100, в противном случае игра будет скипать подобные изменения. Примерно так это выглядит: Спойлер Изменено 26 января, 2017 пользователем Takirell 1 Ничто не истинно, все потрачено
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 10:03:18, Takirell сказал(-а): Однако, необходимо создать доп. квест, а в нем и топики с проверкой на предмет. Квест должен работать всегда и\или включаться после того, как будет создан клон. Кстати в этот же квест стоит добавить GREETING, в который необходимо внести проверки на наличие итема. О, спасибо! Что-то про доп.квест я не подумала :) И еще один вопрос, можно? :girl_blush2: Имеется два триггера. Один при активации переносит во вновь созданную локацию, второй - "выносит" обратно. Первый работает без проблем. Второй - при вхождении в зону триггера начинается "дрожжание", зависание, и в итоге - выносит из игры совсем. Сначала у меня был один скрипт на оба тргиггера, с использованием переменной из скрипта переменных, то есть, после срабатывания триггера в первый раз скриптовой переменной присваивалась 1 и срабатывал перенос к маркеру, назовем его Ref1, далее был return и проверка с начала. Если значение скриптовой переменной == 1, то перенос происходит уже к маркеру Ref2, а переменной присваивается значение 2. Первый триггер срабатывал, - второй - нет. Изменила скрипт, разделила на два отдельных. Каждому триггеру присвоила свой, который при активации должен переносить к определенному маркеру. Все осталось так же - первый срабатывает, второй - нет. Убрала второй триггер, поставила скрипт на дверь. ПРи активации двери скрипт срабатывает, перенося к требуемому маркеру. Почему не работает триггер?
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 (изменено) 26.01.2017 10:17:20, Laion сказал(-а): О, спасибо! Что-то про доп.квест я не подумала :) И еще один вопрос, можно? :girl_blush2: Имеется два триггера. Один при активации переносит во вновь созданную локацию, второй - "выносит" обратно. Первый работает без проблем. Второй - при вхождении в зону триггера начинается "дрожжание", зависание, и в итоге - выносит из игры совсем. Сначала у меня был один скрипт на оба тргиггера, с использованием переменной из скрипта переменных, то есть, после срабатывания триггера в первый раз скриптовой переменной присваивалась 1 и срабатывал перенос к маркеру, назовем его Ref1, далее был return и проверка с начала. Если значение скриптовой переменной == 1, то перенос происходит уже к маркеру Ref2, а переменной присваивается значение 2. Первый триггер срабатывал, - второй - нет. Изменила скрипт, разделила на два отдельных. Каждому триггеру присвоила свой, который при активации должен переносить к определенному маркеру. Все осталось так же - первый срабатывает, второй - нет. Убрала второй триггер, поставила скрипт на дверь. ПРи активации двери скрипт срабатывает, перенося к требуемому маркеру. Почему не работает триггер? Блок OnTrigger срабатывает не единожды, как написано в OSFM, а каждый фрейм. От того Вас так и колбасит. Необходимы доп. условия + проверки на расстояние между триггером и игроком, дабы сбрасывать переменные на первоначальные значения. Если переносите игрока через MoveTo - помните, что данная функция работает точно также, как и Return. Это действует только на игроке. На сколько я понимаю, Вы хотите сделать вход-выход, как в пещерах Скайрима? Без дверей? Изменено 26 января, 2017 пользователем Takirell Ничто не истинно, все потрачено
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 Return я добавила уже после того, как просто с MoveTo было то же самое - пыталась найти причину зависания. 26.01.2017 10:19:32, Takirell сказал(-а):вход-выход, как в пещерах Скайрима? Без дверей? Примерно так, да.
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 10:23:30, Laion сказал(-а): Return я добавила уже после того, как просто с MoveTo было то же самое - пыталась найти причину зависания. Примерно так, да. Пожалуйста, потерпите до вечера, у меня есть готовый скрипт-триггер на этот случай. Скину потом сюда, как освобожусь. Заодно и поясню некоторые моменты, если, конечно, они Вам будут нужны. 1 Ничто не истинно, все потрачено
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 10:19:32, Takirell сказал(-а):Блок OnTrigger срабатывает не единожды, как написано в OSFM, а каждый фрейм. я не знала этого. :shok: А сами переводчики учебника знают, интересно?
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 10:37:36, Laion сказал(-а): я не знала этого. :shok: А сами переводчики учебника знают, интересно? Ну, если говорить точнее, он срабатывает каждый фрейм ровно до тех пор, пока персонаж находиться в триггере. Вряд ли знают, да и им уже все равно, ибо последняя дата правок была в далеком 2008 году. Итак, я вернулся. Пока бродил по городу, в голову пришло "копье" в виде мысли относительно Вашей задумки, и заключается она в следующем. Можно, конечно, изощряться с триггерами и т.д, а можно сделать иначе. 1). Создаем дверь (можно даже невидимую, выбрав меш null.nif. Вешаем на неё скрипт с проверкой на дистанцию (где-то 256 юнитов - достаточно). После чего размещаем в мире (куда-нибудь под текстуры, если дверь "видимая"), даем RefID и ставим Persistent Reference. Далее в скрипте будет что-то типа того: Short GetIn Begin GameMode if GetInSameCell PlayerRef != 1 Return Endif if GetDistance PlayerRef <= 256 && GetIn == 0 Let GetIt := 1 Elseif GetDistance PlayerRef <= 256 && GetIn != 0 Activate PlayerRef, 1 Let GetIn := 0 Endif End В этом методе работоспособность не проверял. Маркера дверей (желтые такие), расставлять чуть дальше от самих дверей (дабы не покрывать радиус действия скрипта). 2). Как я и говорил, присылаю образцы скриптов: Скрипт на вход: Short SUS Short Button Short Index Ref OutMarker Ref InMarker Begin OnTrigger PlayerRef if SUS < 1 Let OutMarker := xmoutref Let InMarker := xminref Let SUS := 1 MessageBox "Вы видите перед собой небольшую расщелину в камнях. Вероятнее всего, она куда-то вас приведет. Вы хотите пролезть между камнями?" "Да", "Нет" Endif End Begin GameMode if GetDistance PlayerRef > 500 && SUS == 1 Let SUS := 0 Endifif SUS == 1 Let Index := 1 Endifif Index == 1 Let Button := GetButtonPressed Let Index := 2 Endifif Button == 0 && Index == 2 && SUS == 1 PlayerRef.MoveToMarker InMarker Let Index := 3 return Elseif Button == 1 && Index == 2 && SUS == 1 PlayerRef.MoveToMarker OutMarker Let Index := 3 return Endif End Скрипт на выход: Short SUS Short Button Short Index Ref OutMarker Ref InMarker Begin OnTrigger PlayerRef if SUS < 1 Let OutMarker := xmoutref Let InMarker := xminref Let SUS := 1 MessageBox "Выйти из пещеры?" "Да", "Нет" Endif End Begin GameMode if GetDistance PlayerRef > 500 && SUS == 1 Let SUS := 0 Endifif SUS == 1 Let Index := 1 Endifif Index == 1 Let Button := GetButtonPressed Let Index := 2 Endifif Button == 0 && Index == 2 && SUS == 1 PlayerRef.MoveToMarker OutMarker Let Index := 3 Return Elseif Button == 1 && Index == 2 && SUS == 1 PlayerRef.MoveToMarker InMarker Let Index := 3 Return Endif End Скрипт принадлежит юзеру под ником "Sobakapppoe", а я его лишь немного доработал. 1 Ничто не истинно, все потрачено
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 Интересно.. :good2: Но тогда ведь появится значок двери?
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 14:56:10, Laion сказал(-а): Интересно.. :good2: Но тогда ведь появится значок двери? Вы можете поставить флажок "Hidden" в опциях самой двери, все равно придется создавать новую. 1 Ничто не истинно, все потрачено
Takirell Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 14:59:08, Laion сказал(-а): спасибо, попробую :) Всегда рад помочь. Перечитайте пожалуйста мой первый пост на эту тему (где я привел пример нового скрипта с дверью), я отредактировал его и добавил скрипты по Вашей просьбе, на триггеры. 1 Ничто не истинно, все потрачено
Laion Опубликовано 26 января, 2017 Опубликовано 26 января, 2017 26.01.2017 14:49:45, Takirell сказал(-а):Скрипт принадлежит юзеру под ником "Sobakapppoe" не мой, я его лишь немного доработал. Спасибо)) и Гарику тоже)) 1
EdMSL Опубликовано 28 января, 2017 Опубликовано 28 января, 2017 26.01.2017 06:30:28, katkat74 сказал(-а):Вечером протестирую sink Ну как, удалось протестировать функцию?
katkat74 Опубликовано 28 января, 2017 Опубликовано 28 января, 2017 28.01.2017 04:40:05, Ed101 сказал(-а): Ну как, удалось протестировать функцию? Чертовщина какая то. При первой пробе все вроде работало, можно было утопить объект, менялся угол и размер. А потом как отрезало. Я еще тут двум людям порекомендовала.. спрошу как у них
Рекомендуемые сообщения
Для публикации сообщений создайте учётную запись или авторизуйтесь
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!
Регистрация нового пользователяВойти
Уже есть аккаунт? Войти в систему.
Войти