Прежде чем задавать вопрос - посмотрите в >> КАРТОТЕКЕ << Возможно, там уже есть готовый ответ.
Тема предназначена для общих вопросов. Прежде, чем тут что-то написать, посмотрите другие темы этого раздела. Вполне возможно, что они больше соответствуют тематике вашего вопроса.
... в том числе и квестовых. Люблю, знаете ли, раздавать квестовые предметы неписям или раскладывать их по ящикам.
Да, конечно, идея нуждается в доработке в части, отвечающей именно за трансформацию лута. Найденное в карманах можно обрабатывать по-разному в зависимости от того, помечен ли предмет как квестовый, в зависимости от его типа (еда, патроны и т.п.), в зависмости от веса, стоимости... То есть я по существу свёл изначальную задачу к моменту, когда осталось только рассортировать кучку лута и что-то с ней сделать - но тут уж пусть автор идеи решает, что именно должно быть исполнено.
Изменение репутации для пользователя Spalny_Vagon
Spalny_VagonOffline
Сообщение №1082
написано: 1 марта 2012, 15:07
| Отредактировано: Spalny_Vagon - 1 марта 2012, 15:08
но тут уж пусть автор идеи решает, что именно должно быть исполнено.
Ну да. Вы изобрели карманный атомный реактор. А сшить для него штаны с карманами нужного размера - это уже наша проблема. Особенно мне нравится та часть "реактора", которая будет сортировать лут по стоимости. Но и та, которая будет отделять квестовые котлеты от неквестовых мух, тоже хороша. Сказать по правде, вопросы о том, как уменьшить лут или как увеличить лут, вызывают у меня сключительно только зевоту. Слишком много? Не бери. Не можешь не брать? К врачу. Слишком мало? Учись стрелять. Ваша идея, господин Ipatow, конечно неплохая, но я боюсь, что для ее воплощения придется составлять гигантские списки исключений из правил, что по объему работы будет равносильно банальному пересмотру всего лута как такового. В конце концов, death item не так уже и много, за пару часов можно перелопатьить их все. Однажды мне захотелось поэкспериментировать на темы военных трофеев, в результате появился квест, в котором ГГ с группой захвата зачищал базу противника. Как только погибал последний защитник базы, группа начинала шмонать трупы и ящики. Оказалось очень эффективно, если будешь мешкать - хрен что после них найдешь. Вот вам идея для моего "сканера": После каждой перестрелки на шум появляются пара бомжей, которые очень быстро шмонают трупы. Мародеры нейтральны ко всем существующим сторонам, появляются никоткуда, набив карманы разбегаются в разные стороны. Убьешь бомжа - теряешь карму. Дешево и сердито. Кроме того, пакет поиска лута можно добавлять всем актерам-статистам без исключения. Игрок в состоянии combat - массовка начинает пакет find.
====================== Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294 Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
Изменение репутации для пользователя KAIN48
KAIN48Offline
Сообщение №1083
написано: 1 марта 2012, 17:42
| Отредактировано: KAIN48 - 1 марта 2012, 17:45
После каждой перестрелки на шум появляются пара бомжей, которые очень быстро шмонают трупы.
Spalny_Vagon, Мне очень понравилось! Только я бы сделал три пары бомжей, что бы они (пара бомжей) сами подошли к игроку и напросились в сборщики трофеев. Первая на таком условии: - Мы берём всё, а раз в день выплачиваем тебе 100 монет, чего тебе руки пачкать и по трупам шарить - купишь всё в магазине, как белый человек. Небоись мы профессионалы в деле шмона. И имеем репутации. Вот рекомендации...... Вторая - 300 монет А третья - 500 монет. Игрок выбирает для себя уровень сложности. Пусть они время от времени, в зависимости от количества убитых проговариваю рандомно фразы - Маловато будет, О об этой вещи я давно мечтал, А ну положи туда где взял, мы на работе, нам пить нельзя, Ты иди мы соберём тут всё и догоним.... и тп. Ну и ещё чего нибудь для "живости". Только вот как быть с квестовыми предметами, записками, голодисками? То же раз в день отдавать или сразу? Типа - этого нам не надо, да и не купит никто. Забирай себе. И опять же как отделять квестовые от простых. Одежду на них менять - сначала с оборванцев, дальше лучше, а в конце на костюм ТенПени - такие бомжи с рюкзаками и корзинками во фраках, и с грязными лицами! В общем интересно можно сделать, если такого ещё нет. Да и даже если есть! Пока.
Мне бы хоть ненадолго, в любое время, кроме 90-х. Чтобы конфета была с ладошку, чтобы, упав с велосипеда, коленку разбить, чтобы на первое свидание сходить...
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №1085
написано: 1 марта 2012, 23:23
| Отредактировано: Ipatow - 1 марта 2012, 23:26
Особенно мне нравится та часть "реактора", которая будет сортировать лут по стоимости. Но и та, которая будет отделять квестовые котлеты от неквестовых мух, тоже хороша.
GetItemValue и IsQuestItem не более сложны в использовании, чем GetWeight. Поскольку это (в частнoсти) объекты мода, который ещё не написан, придётся именно анализировать каждый объект в луте - ну а что ещё-то делать, если мы не хотим делать мод, несовместимый со всем, создаваемым после него?...
Простите, IsQuestКто? FOSE - не моя епархия, мне просто интересно.
IsQuestItemreturns 1 if the object or calling reference is a quest item Из популярного функция используется, например, в FWE...
Я понимаю нелюбовь/недоверие к скрипт экстендерам, дурного в том нет. Но беда тут такая, что без расширенного набора функций в условиях, когда рядом с нашим модом загружены неизвестные моды, работать можно только вслепую. Скажем, стандартной функцией видим, что у ГГ в карманах триста фунтов груза. Проверяем стандартные объекты - нет таких в кармане. Ну ладно для ГГ, тот сам разберётся, что у него в инвентаре происходит. А когда то же самое с NPC, который нахватал пулёмётов из очередного вепон-пака, и теперь еле ноги волочит? Ему бы выкинуть лишнее, но как выкинешь, если FormID этого барахла никто не знает, а сканировать карманы без дополнительных функций нечем?... Только RemoveAllItems в какой-нибудь ящик и возвращать в карман известные предметы - но что ещё мы выплеснем таким способом и как это аукнется?.. Там ведь может оказаться какая-нибудь кислородная подушка, наличие которой в кармане скрипт этого NPC мониторит, и без кислороду пациента убивает через три минуты.
если скрипт экстендеры - это круто, почему их Беседка не использует?
Несколько причин. Во-первых, им не надо думать о совместимости с чужими модами. Потому как если есть несовместимость между модом от фана и модом (то есть DLC) от Беседки, то это мод несовместим, а не продукт Беседки (даже если DLC появился после мода - вспоминается Broken Steel и нестандартная раса ГГ). Во-вторых, им не нужны отдельные расширители набора функций, они при необходимости изменяют сам стандартный набор. Примерно та же логика, как почему Беседка не использует Merged Patch...
Изменение репутации для пользователя Galko
GalkoOffline
Сообщение №1090
написано: 2 марта 2012, 18:22
| Отредактировано: Galko - 2 марта 2012, 18:23
Черт, у меня одной сайт глючит? Второй раз отправляю сообщение и хоть бы что...
Spalny_Vagon и Ipatow, маэстры, пока вы оба тут...
Не подскажете, как сделать адын маленький вещь. Суть такова: есть интерьер, а в нем вход и выход. Игрок заходит через вход, проходит насквозь помещение и на выходе стоит терминал (без пароля), запирающий выходную дверь. Отпирает терминалом дверь - выходит наружу, в Мохаве. Мне нужно, чтобы эту дверь снаружи нельзя было открыть раньше времени ( кодом Unlock, а то развелось, панимашш, любителей)). То есть, если игрок, шляясь по пустыне, случайно нашел эту выходную дверь - он не смог бы ее открыть никаким способом, пока не получит задание. PS. Если бы у двери был ключ - я б как-нибудь и что-нибудь придумала. А без ключа - что-то и растерялась
Добавлено (02.03.2012, 22:22) --------------------------------------------- Оппа, еще вспомнила А как сделать, чтобы месседж о задании не появлялся, когда ГГ находится в определенном месте Мохаве? Точнее - когда ГГ в Гудспрингсе. А то этот городок уже не выдерживает натиска старта модов.
А мой вариант не подошёл? Я вроде тебе в личку отправлял? У меня тоже сайт два дня глючит.
За сим прощаюсь, Олег.
Мне бы хоть ненадолго, в любое время, кроме 90-х. Чтобы конфета была с ладошку, чтобы, упав с велосипеда, коленку разбить, чтобы на первое свидание сходить...
Изменение репутации для пользователя Ipatow
IpatowOffline
Сообщение №1092
написано: 2 марта 2012, 18:56
| Отредактировано: Ipatow - 2 марта 2012, 18:57
как сделать, чтобы месседж о задании не появлялся, когда ГГ находится в определенном месте Мохаве? Точнее - когда ГГ в Гудспрингсе. А то этот городок уже не выдерживает натиска старта модов.
Отложить старт квеста можно.. как угодно. Проверять текущую локацию, проверять дату, левел ГГ, считать количество убитых баранов...
Изменение репутации для пользователя Galko
GalkoOffline
Сообщение №1093
написано: 2 марта 2012, 19:08
| Отредактировано: Galko - 2 марта 2012, 19:12
Ipatow, Агаааа... То есть, я дизейблю настоящую дверь (в Мохаве) и енейблиться она только с терминала изнутри. А в Мохаве ставлю в это же место вторую, но "ложную" дверь, ведущую в никуда. Назначаю ей несуществующий в реальности ключ, который ГГ негде найти и на все попытки прохода будет появляться надпись с требованием ключа. А как обойти использование Unlock на двери с ключом - мне уже разъяснили.
Цитата Ipatow
Проверять текущую локацию
а какая команда? getInCell и IsPlayerInRegion не срабатывает. В первом случае скрипт не компилируется (нет такой ячейки Гудспрингс) а во втором случае - просто не срабатывает Я проверяла - все равно сообщение появляется, когда ГГ в городе.
чтобы эту дверь снаружи нельзя было открыть раньше времени (
1-й способ. Проходя через интерьер, нужно каким-либо способом отметить это событие, лучше всего стадией квеста. А на наружную дверь повесить скрипт:
Code
ref myRef begin onactivate set myRef to getactionref if getstage [квест] == [номер стадии] activate else if myRef == player show message [вам сюда еще рано] endif endif end
Ни один на свете зверь не ворвется в эту дверь. 2-й способ. Наружную дверь закрыть на ключ, ключ выбросить, двери присвоить какое-нибудь Ref-имя. Терминал, я так понял, стандартный. Создать на его базе новый терминал. В результ-скрипте перед строчкой myLink activate добавить: [дверьRef].unlock Через такую дверь можно будет проникнуть только с помощью консоли.
====================== Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294 Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
getInCell и IsPlayerInRegion не срабатывает. В первом случае скрипт не компилируется (нет такой ячейки Гудспрингс) а во втором случае - просто не срабатывает
Вариант больдозера - дать этой ячейке имя, и тогда заработает GetInCell... Вариант иезуита - IF (Player.GetDistance GoodspringsArrivalMarker) < 10000 - ну то есть использовать любой объект, у коготого EditorID уже есть.
Изменение репутации для пользователя Spalny_Vagon
Spalny_VagonOffline
Сообщение №1098
написано: 3 марта 2012, 07:05
| Отредактировано: Spalny_Vagon - 3 марта 2012, 07:06
Вариант больдозера - дать этой ячейке имя, и тогда заработает GetInCell... Вариант иезуита -...
Зачем начинать квест в Гудспринсе сегодня, если его можно начать где-угодно завтра? Задержка по времени делается в квестовом скрипте.
Code
scn myQuesTimePauseScript float timer short TimeToAdventure begin gamemode if TimeToAdventure == 0 set timer to gamedayspassed set timer to timer + 1 set TimeToAdventure to 1 elseif TimeToAdventure == 1 if TimeToAdventure <= gamedayspassed setstage [myQuest] [first stage] set TimeToAdventure to -1 endif endif end
====================== Мод "Нью-Йорк" на русском: https://modgames.net/load/fallout3/addon/new-york-bolshoe-yabloko/34-1-0-1294 Мод "Нью-Йорк" на английском: https://modgames.net/load/fallout3/kvesty/the-big-apple/23-1-0-19771
Изменение репутации для пользователя Wolfdale
WolfdaleOffline
Сообщение №1099
написано: 3 марта 2012, 12:14
| Отредактировано: Wolfdale - 3 марта 2012, 12:22
Ребята, помогите - в ГЭККе, когда создаю мир и начинаю размещать в нем объекты, то на некотором расстоянии от земли появляется туман, через который ничего не видно. В чем может быть проблема и как от нее избавиться?
то на некотором расстоянии от земли появляется туман,
Я так думаю, что это вода, а не туман. Как с этим бороться Galko выше вроде говорила.
За сим прощаюсь, Олег.
Мне бы хоть ненадолго, в любое время, кроме 90-х. Чтобы конфета была с ладошку, чтобы, упав с велосипеда, коленку разбить, чтобы на первое свидание сходить...
А "внутренности" дома мне как изменить, не скажешь?
А вот "внутренностей" данного дома, как таковых не существует и менять там нечего. Внутренний интерьер нужно создавать самому. Как делать интерьеры - есть статья тут, на сайте, в разделе обучающих статей или на РуморВики (по ссылке, которую я дала в теме "Картотека ответов по ГЕКК - FAQ" Или вот - статья от Imperator3 (кстати, где он?)
А если игрок не будет начинать новую игру при установке мода, а продолжит старую?
То, что я говорил о проверке даты - и то же самое в профиль прямо готовым скриптом показал Вагон - и так и этак видно, что игра начата давно (если это так), значит, можно стартовать квест. Ничем принципиальным не отличается от задержки старта при нахождении в GS... Любой из этих способов обойдёт залповый запуск всех возможных квестов, и все они примерно равноценны. Не в точности - скажем, если в GS квест не стартует, а при установке мода на 50 левеле ГГ почему-то оказался там, то квест и не стартует сразу.. При проверке на дату, левел или ещё какие бывают признаки не первого дня игры - запуск квеста случится немедленно после установки мода. Как будто это желательное поведение.
Ipatow, Хех.. как все сложно В-общем - обошлась командой IsPlayerInRegion. У меня, оказывается, в скрипте была ошибка. Вместо оператора И стоял оператор ИЛИ. Поэтому квест запускался в Гудспрингсе.
Добавлено (04.03.2012, 14:26) --------------------------------------------- А вообще-то - зря я столько шуму подняла, даже неловко Нет, чтобы сначала подумать... Короче: не стала лепить отдельные скрипты, а просто разместила "ложные" дублирующие двери, никуда не ведущие. А настоящие просто заенейблила в результ-скрипте стадии квеста.
Ваше счастье, что я не ваше счастье
Изменение репутации для пользователя Чак
Чак
Сообщение №1107
написано: 4 марта 2012, 15:06
| Отредактировано: Чак - 4 марта 2012, 16:01
Хотелось бы еще узнать, как убрать с определенной местности убрать мелкую траву? А то просто дом поставил, а она из стен торчит.Не красиво смотрится.
Чак, Никак.. Траву убратьневозможно,потому как она не есть определенный объект,а рисуется в зависимости отнастроек мира
Добавлено (04.03.2012, 20:03) --------------------------------------------- прошу прощения за слитноенаписание слов - пишу с чужогокомпа, а там клава убитая
Чак, Поясню насчет травы... Хоть в ГЕКК и есть такие , типа, отдельные объекты, как Grass (Трава) но тем не менее... Вся трава, которая есть на пустоши, в редакторе не отображается. Просто, когда создаешь ландшафт, то в настройках мира (вроде бы) указываешь, что в данном кусочке местности будет использоваться такая-то и такая-то трава ( и указываешь тот тип равы, который создан и подходит по параметрам для данной местности). Редактор это все проглатывает и молча соглашается. Ты рисуешь на местности ландшафт ( покрытие земли определенной текстурой) а уж потом, в игре, считываются эти данные и на их основе на местности распределяется вся травка (не анаша), в зависимости от того, как была "раскрашена" поверхность земли. Что касается отдельных кустиков травы, которые есть на местности и видны в окне рендера - то это обычные объекты, которые можно передвигать обычным образом. Закавыка в том, что в этот объект (Трава) сложно попасть мышкой, чтобы выделить, поскольку он, просто говоря, "полупрозрачен" и чтоб его выделить - нужно исхитриться попасть мышом точно в центр объекта. Если это удалось - то такую траву запросто можно передвинуть в другое место (если она мешает своим присутствием другим объектам)