Перейти к содержанию

SlowPoke

Сердце Хаоса
  • Постов

    316
  • Зарегистрирован

  • Посещение

Весь контент SlowPoke

  1. R-Zero, а ты заменял существующие SoundGen'ы скампов? Или добавлял новые и вставлял их им в группы анимации?
  2. Сдается мне часть постов нужно переносить в тему по классификации лора. Обращу внимание на одну занятную проблему. Вот вроде как большинство согласно с тем что в Морре должны быть крылья королевы. При этом нас даже не очень интересует кто же эта королева летучих мышей, почему о ней нет ни слова в лоре и т.д. Достаточно того, что объект есть в файлах игры. А теперь представьте на секунду что этой секиры не было бы в файлах. Что если бы был некий мод, добавляющий этот самый топор, возможно даже разъясняющий личность этой королевы. Хороший продуманный мод, например связанный с квестами вампиров. Как много людей из нас решило бы, что это лорно? Были бы претензии, что королева летучих мышей высосана из пальца, что топор не соответствует стилистике игры и так далее. Но стоит тому же самому топору оказаться в файлах игры - мы готовы закинуть его хоть в хижину к Фарготу и назвать это лором. Любой чих беседы мы готовы оправдывать с тем же рвением, с каким предъявлять требования к модов того же или более высокого качества и наполнения за авторством игроков. И это, честно говоря, напрягает. Мы связаны в творчестве по рукам и ногам, в то время как беседа может в любой момент устроить новый реткон, который мы с радостью проглотим. Все-таки это не очень здоровая политика.
  3. Это скорее на некромантию. Чтобы можно было делать тела и скелеты на которые нужно накладывать заклинания не кричурами, а активаторами с нужной анимацией. Да и в квестах может всяких пригодиться.
  4. Скрипт не обязательно, достаточно запроса в консоли.
  5. Слушай, это же отличная тема. А GetSpellEffects определяет наложенность заклинания на активатор?
  6. Да, как и в оригинале. С чем это может быть связано? GetItemCount показывает правильное значение и, насколько я понимаю, если убирать предметы из инвентаря игрока, пока он открыт, то подобных багов нет. Если еще и команда "Взять все" ведет себя так как надо, то создается впечатление, что проблема в отображении предметов, которых в контейнере уже нет и взятии их по клику мышки.
  7. Нашел забавный баг в оригинале, интересно присутствует ли он в OpenMW. Что произойдет если удалить из контейнера предмет при помощи RemoveItem, пока этот контейнер открыт?
  8. Спасибо. Само собой это не финальная версия. Я подумаю на счет новых сложных зелий, которые можно будет приготовить, используя перегонный куб. Ну и яды, конечно же. Для них хотелось бы отдельной алхимической аппаратуры, а то реторта и так уже перегружена, да и мне кажется, что процесс их производства должен быть отличен от зелий. Буду благодарен, если кто-то посоветует соответствующий ресурс. Также в скором времени выпущу в качестве дополнительного плагина прокат оборудования в Гильдии Магов. Пока же предлагаю всем заинтересованным играть с новой системой. Вполне допускаю что мог где-то напутать с рецептами зелий или эффектами ингредиентов, так что тестирование будет очень кстати.
  9. Обновление, а в общем-то даже и релиз. Кроме всего уже описанного несколько изменены условия для использования аппаратуры: простейшую аппаратуру стало использовать легче, в то время как более продвинутую - труднее. Параметры качества аппаратуры отображают сложность - это то самое значение, которое вычитается при подсчете алхимического успеха. Более того, если значение вашего навыка алхимии и/или интеллекта меньше значения качества используемой аппаратуры, то разность будет дополнительно вычитаться.
  10. Это повод объяснить покупателю, что он не найдет ничего лучше вот этого эксклюзивного стального меча и продать его по цене двемерика, предварительно спрятав еще пять штук таких "эксклюзивных" стальных мечей, а двемерик предложить тому, кого сталью не удивишь. Цель торговца продать весь товар, а не только редкую двемерскую вещицу, которую и так все равно купят, в отличии от железа и стали, которые, хотя это может быть не очевидно, являются его основным источником дохода. По этой причине когда мы приходим на рынок нам сперва пытаются впихнуть дешевку. Поэтому продавцам дают премии за продажу неликвида. Поэтому в ресторанах лучшие места оставляют не представителям среднего класса, только что получившим зарплату, а богачам. Ладно, я последний раз пройдусь по этой стороне вопроса, потому что мы уже явно ходим по кругу. Давайте подумаем, что вообще происходит, когда мы нажимаем кнопку "Торговать"? Между торговцем и покупателем идет общение, "игра торговли". Покупатель спрашивает, что ему могут предложить, торговец называет цену. Покупатель может располагать к себе или отталкивать, может вызывать доверие или казаться подозрительным. Все это происходит за кадром, мы видим только открывающееся меню и возможность менять цены, но это происходит и зависит от навыка торговли и характеристики привлекательности. Торговец не может открыть консоль и проверить способности покупателя, он не знает, насколько только что зашедший %PCName умеет торговаться или сколько у него денег в карманах. Но он понимает это по косвенным признакам: тому как покупатель себя держит, в каких выражениях говорит, насколько он приятен. В соответствии с этим торговец и будет действовать: будет пытаться создавать впечатление дефицита или предъявит самые лучшие товары. Возможно он даже захочет продать даже что-то, что вообще было не для продажи. Вспомним так же, что торговля двемерскими артефактами и эбонитом вообще-то не очень легальна. Предлагать подобные товары первому встречному не самая лучшая идея, разве что этот первый встречный окажется крайне к себе располагающим и вызывающим доверие. А теперь я все-таки обращу внимание на главный момент. Какие еще есть варианты, которые позволят сделать торговлю более востребованным навыком? Как мы еще можем способствовать ролевому отыгрышу в данном плане? Разбирающийся в торговле должен быть богат, уметь использовать это богатство и обладать лучшими вещами, которые можно достать за деньги. Как это еще можно реализовать на игровом движке? Было бы неплохо, если бы за возможность подкупа отвечало не красноречие, а торговля. Можно было бы прописать всяких интересных взаимодействий, типа подкупа стражи и инвестиций в магазины. Но пока этого не сделать. Главная причина предложенной зависимости содержимого сундуков от навыка торговли, не в том, что она максимально логична, как оказалось она многим кажется контринтуитивной, хотя и вполне соответствует механизмам рыночной экономики, но в том что это единственный доступный способ создать игровую механику, которая не перекладывала основной принцип игры торговли: "понравилась хорошая вещь - покупай", целиком на игрока, которая бы поощряла игрока за то что он потратил один навык своего класса на торговлю, а не на что-то более полезное.
  11. Хмм. На сколько я понимаю, проблемы оригинального Морроувинда с производительностью связаны во многом с жестким ограничением на максимальное количество используемой оперативной памяти. Разве в OpenMW его тоже прописали? Я понимаю, что поддержку параллельных вычислений могли пока еще не завезти, но почему не было значительного прироста производительности просто за счет доступа к большим ресурсам?
  12. К красноречию и так уже слишком много всего привязано и еще больше можно привязать. Можно, например, временно понижать навык торговли продавца после удачного оскорбления (игрок убеждает нпс, что его товар - дешевка) или после крупного подкупа (инвестиция в магазин). Нужно оставить что-то и на участь торговли как таковой, а иначе она получится кастрированной и скайримское решение слить два социальных навыка в один окажется единственным выходом из ситуации. Можно сойтись на том что должны влиять навык торговли, в меньшей степени привлекательность (основная характеристика) и еще в меньшей - удача (которая должна влиять на все). Но если мы будем пытаться привязать сюда еще больше факторов: известность, ранги в гильдиях и все в том же духе - получится каша. Дурной пример из практики СХ - разрушение городов. Оно зависит от массы условий, скрипты высчитывают "среднее по больнице" и в итоге пол острова оказывается разнесено и даже толком не объяснить игроку, что же он сделал не так. Да, действия игрока оказывают влияние, но какие именно? - непонятно. Условия должны быть максимально прозрачными. В начале мы расставляем конкретные сундуки по торговцам, ориентируясь на их экономическое положение и профиль работы. Остальное должно зависеть от игрока. Во-первых, пассивно от его навыка и характеристик, связанных с соответствующей деятельностью, в данном случае от привлекательности, удачи и торговли, это отражается в том что все торговцы в целом будут продавать больше товара по меньшим ценам. Во-вторых, от его активных действий, таких как выполнение конкретных квестов, улучшающих/ухудшающих положение отдельных торговцев, увеличивающих/уменьшающих распространенность некого товара в регионе и т. д. И если для первого отлично подойдет унифицированная механика уже расстановленных по сундукам левельных предметов с подменой зависимости от уровня на зависимость от торговли, привлекательности, удачи, то для второго нужно добавлять/удалять левельные списки из конкретных сундуков. Обе механики отлично взаимодополняют друг друга, по-моему это оптимальный вариант. Осталось составить список квестов, прохождение которых, оказывает влияние на экономическую ситуацию в Морроувинде.
  13. О том и речь зависимость от уровня штука искусственная, в то время как зависимость от навыков более гибкая и осмысленная. Уровень прокачается в любом случае, а вот некоторые навыки игрок может так и сохранить на начальных значениях, особенно, если способствовать этому замедлением их развития. Можно просто облегчить игроку жизнь, а можно облегчить жизнь при определенных условиях, поощряя прокачку тех или иных навыков и определенные стратегии. В этом как бы суть ролевой системы. Торговец заинтересован продать больше, когда цена выше, покупатель купить больше, когда цена ниже. Высокий навык торговли игрока позволяет ему добиваться того, что игроку и выгодно, то есть купить больше и дешевле. Что не логично-то? Ты никогда не слышал о ситуациях, когда продавцы создают видимость дефицита, что позволяет им закручивать цены? Неопытный покупатель ведется на разводку и покупает один единственный серебряный меч по высокой цене. А знающий толк в экономике сможет убедить продавца, что никто у него мечи по такой цене не купит, что им красная цена 50% от заявленной, но он уж так и быть скупит всю партию. Торговец может держать какой-то товар "для своих", но опытный гг может убедить его продать товар именно ему. Понятное дело что самому торговцу не выгодно иметь дело с опытным покупателем. Но так же и врагам не выгодно нападать на закаленного в боях воина или могущественного мага. Потому что бартер. Когда у торговцев ограничен запас золота, но много дорогого товара, можно сбыть по номиналу какую-нибудь даэдрическую вакидзаси обменивая ее на кучу товара, а потом распродавая его. Теперь я понял суть претензий. Само собой неуклюжие использование автолевелинга - зло. Мы все насмотрелись на него в Обливионе и Скайриме и потому имеем к нему весьма предвзятое отношение. Я ни в коем случае его не отстаиваю. Все должны делаться по уму. Кузнец в призрачных вратах, который делает стеклянные доспехи и должен продавать эти доспехи с самого начала, а какие-нибудь редоранские кузнецы, которые даже не могут позволить себе магазин, не должны вдруг полностью избавляться от низкоуровневых доспехов и научиться изготавливать полные эбонитовые комплекты. Пример того что я хочу получить: Сундук кузнеца с железным оружием. Там лежит 5 штук левельных предметов формата random_iron_weapon. На низком навыке торговли шанс респауна каждого из предметов (например) 10%, при более высоком 15% и т.д. При высоких навыках торговли у некоторых торговцев будут с небольшой вероятностью появляться редкие ценные предметы. Не будет мозолящей глаза несуразности, но с повышением навыка торговли игрока и в результате некоторых квестов будет постепенно увеличиваться ассортимент товаров без каких то несуразностей вроде полного исчезновения железной брони из продажи и замена ее двемериком.
  14. Тут проблема единообразия механики. Не обязательно быть вором, чтобы активировать контейнер. Можно же просто залезть в него, сгенерировать в нем шмот по своему уровню, а потом купить шмотки, которые в противном случае были бы недоступны. Или так. Высокоуровневый домушник, но без развитой торговли, пришел обчистить магазин, если он просто залезет в сундуки то найдет там хороший товар, но если сперва побеседует с торговцем и посмотрит что на продажу - плохой. А так у нас будет еще одна причина, по которой воровским классам полезен навык торговли, как можешь заметить у вора, барда и шпиона она в главных/важных навыках, да и вообще относится к навыкам "воровского" типа. Тут два момента. С одной стороны - чисто игротехнический. Ассортимент торговца имеет прямое отношение к тому, насколько легко игроку обогащаться. Именно это и должно регулироваться навыком торговли. При респауне раз в месяц у торговцев реально будут кончаться разные необходимые игроку товары, вроде тех же стрел и молотков, что окажет соответствующее влияние на механику. И развитие навыка торговли даст игроку ощутимое преимущество над игроками торговлю не развивающими. С другой стороны в этом есть логика. Навык торговли игрока позволяет убедить торговцев достать из закромов редкие товары и продать их именно ему, или же убедить продать больше товаров чем торговец планировал. Вспомним как работает рыночная экономика. Торговец заинтересован продать тем больше товара, чем больше цена. Покупатель - напротив, хочет покупать больше товара, когда цена меньше. Навык торговли отражает способность игрока заключать выгодные ему сделки, то есть покупать больше товара по меньшей цене. Ванильная механика делает переменной только цену . Мы же можем еще и модифицировать количество товара, доступного для продажи. Это отличная и правильная идея и ее можно прекрасно совместить с зависимостью ассортимента от торговых способностей игрока: выполнение квестов добавляет в сундук новый левельный предмет, а сама зависимость берется не от уровня игрока, а от его навыка торговли.
  15. Тогда нужно запускать скрипт и по активации контейнера, если игрок попробует залезть в него раньше, чем поговорит с торговцем. В СХ использовались такие проверки для начала активной фазы мейнквеста и выглядело это не очень. Всегда можно найти более подходящие триггеры для событий. Уровень - искусственная игротехническая характеристика. Как сторонний персонаж может определить ее? Можно понять, когда человек/мер перед тобой отличается силой или интеллектом, когда он компетентен в той или иной области, когда он знаменит. Для всего этого есть отдельные функции, их и имеет смысл использовать, когда речь идет о выдаче квестов. А в глобальных скриптах обычно имеет смысл делать return по MenuMode.
  16. Эх, жаль, что все-таки обновляются только те предметы, которые мы забрали, хотя если работает ремув левельных предметов, можно будет потом организовать полное обновление товаров раз в месяц. Впрочем, это уже вкусовщина, изначальная цель достигнута и это хорошо. Да, это значительно лучше подставных сундуков. Но будет ли это работать? Товары же генерируются при заходе в ячейку, а не при обращении к продавцу. Или же все-таки при первом обращении к контейнеру? Требует проверки. Если не сработает, попробовать включить это в скрипт на сундуках, тоже может быть косяк, так как скрипты могут обрабатываться после действий движка, таких как заполнение левельных сундуков. Тогда остается вариант со скриптом на дверях торговцев.
  17. А на сколько сложно будет прикрутить ее к тем же топорам? Чтобы бы у нас могли быть варвары-топорометатели?
  18. Эл, ты знаешь, я сам большой любитель гигантских скриптов. В Контейнерной Алхимии суммарное количество строк наверняка уже перевалило за десять тысяч. Но когда есть возможность делать проще, добиваясь тех же или схожих результатов, используя уже готовую механику игрового движка - лучше делать проще. Спорный момент на счет того должны ли товары просто пополняться или заменяться. На мой вкус регулярное исчезновение некупленных товаров - хорошая и реалистичная идея, ведь торговцы не только покупают, но и продают товар. Конкретно в твоей реализации сейчас есть ряд слабых мест. Игрок, знающий, как она работает, может просто входить и выходить к одному торговцу, обновляя товар, с другой стороны честный игрок, купивший стрелы у оружейника зайдя к нему спустя пару месяцев, скорее всего не увидит ни одной новой. Это можно исправить, усложнив систему, введя зависимость от времени и т. д. Но мне кажется, что малоосмысленно тратить время, если идея с левельными предметами окажется рабочей.
  19. Попробуй ситуацию, когда в сундуке лежат несколько левельных предметов и мы покупаем только один из них. Заменятся ли оба к началу месяца?
  20. Помню давно на СХшном форуме было обсуждение на счет метательных топоров. Тогда тема закрылась на том, что нет возможности заставить их крутиться, а без этого будет совсем странно. Всегда приятно, когда "невозможное" становится возможным. Отличная работа. Какова реализация? За счет анимации на моделях?
  21. При скупке всего товара? Или достаточно купить что-то одно? Боюсь что не поможет, но то же самое я и про Ressurect говорил и вот как оно вышло, так что нужно проверить.
  22. Серьезно? Resurrect работает на контейнерах? О АЛЬМСИВИ, как же меня радует, когда дыра в реализации одной механики может быть компенсирована дырой в реализации другой. Новый набор получается независимо от того брали что-то из сундука или нет?
  23. Забавно, что если заменять файлы в КС при помощи Search and Replace, флаги собственности сохраняются, даже если заменять объекты разных типов. Обнаружил это когда заменял алхимическую аппаратуру на контейнеры. Но с PlaceAtMe так не работает, к сожалению.
  24. Слишком хорошо, чтобы быть правдой. Проверить стоит, но я бы не рассчитывал на успех. Мой вариант с убийством и возрождением нпс торговца по прежнему актуален, впрочем. Вообще все больше и больше хочется поговорить с командой MCP. То что левельные итемы генерятся всего один раз, это явная недоработка. Есть несколько способов разной степени извращенности. Для начала воспользуйся нацеленным скриптом. Создаешь переменную GlobalVar = 0 и глобальный скрипт формата: Begin MoveMe if (GlobalVar == 2 ) PositionCell Старая Локация Set GlobalVar to 0 StopScript MoveMe elseif (GlobalVar == 0) PositionCell Новая локация Set GlobalVar to 1 endif End Зайдя в игру, в консоли кликаешь на сундук и прописываешь StartScript MoveMe. Когда нужно будет вернуть сундук пишешь Set GlobalVar to 2.
×
×
  • Создать...