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

Идеи для OpenMW


CemKey

Рекомендуемые сообщения

1 Нельзя сделать у ядов что-то типа заряда зачарованного оружия? Т.е. слабые яды (при не высоком навыке алхимии со слабыми эффектами) могли бы срабатывать 1-2 раза при попадании, концентрированные яды до 5-10 ударов.

2 Планируется реализация?

3 Лучше бы не при ударе, а при попадании. 

Второй вариант  наверное удобней для пользователя, но менее интересный в геймплее. 

Ещё мысли по ядам: 

1 Думаю это будет сложно в реализации, но в то же время более реалистично... В процессе игры нам встречаются разные противники, одни в тряпье, другие в доспехах. При попадании по противнику мы по сути кромсаем его доспех, яд как бы не должен травить вражину. Возможны попадания в сочленения доспехов. Возможна привязка шанса срабатывания яда к экипировке атакуемого?  И 100% срабатывание при критической атаке со спины?

2 Возможно сделать снижение урона от яда при нанесении на дробящее оружие? При порезе яд попадает в кровь, дробящее оружие наносит немного другие повреждения. Если будет реализация с типами урона в зависимости от замаха оружия, то лучше привязать к типу урона. Укол - глубокое проникновение яда, порез - менее глубокое, удар - минимальное. 

3 Что делать с защитой от ядов? У нас имеются зелья, расовые способности с иммунитетом к ядам, но сейчас яды по сути являются магическими субстанциями с различными эффектами. Сопротивления не действуют. 

1. Где хранить, как рассчитывать? Я хотел использовать оригинальную механику для зелий, а не костылить новую.

2. Для второго варианта будет функция по экипировке ядов в бою, в зависимости от сопротивляемостей цели, аналогично как для заклинаний.

Первый вариант более запутанный, скорее всего будет второй.

3. Яд срабатывает при попадании, но для метательного оружия он расходуется при запуске снаряда, хотя тоже применяется при попадании.

 

По поводу "еще мыслей":

Сопротивления от ядов действуют как для обычных зелий - с учетом сопротивляемостей жертвы и ее силы воли.

Касательно любого вопроса с пометкой "возможно ли":

1. Возможно, вопрос в трудоемкости.

2. Zini категорически не принимает новые механики и изменение старых, так что любые изменения только для личного пользования.

Изменения в ИИ и в интерфейсе принимаются более охотно.

 

Сейчас у меня яды новые механики-то вообще не используют - все формулы оригинальные. Просто игрок вместо того, чтобы жрать яды, экипирует их и применяет к противнику при попадании (или запуске снаряда).

Вот и вся фича. Две трети кода - это доработка интерфейса.

Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 112
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

1. Где хранить, как рассчитывать? Я хотел использовать оригинальную механику для зелий, а не костылить новую.

2. Для второго варианта будет функция по экипировке ядов в бою, в зависимости от сопротивляемостей цели, аналогично как для заклинаний.

Первый вариант более запутанный, скорее всего будет второй.

3. Яд срабатывает при попадании, но для метательного оружия он расходуется при запуске снаряда, хотя тоже применяется при попадании.

 

По поводу "еще мыслей":

Сопротивления от ядов действуют как для обычных зелий - с учетом сопротивляемостей жертвы и ее силы воли.

Касательно любого вопроса с пометкой "возможно ли":

1. Возможно, вопрос в трудоемкости.

2. Zini категорически не принимает новые механики и изменение старых, так что любые изменения только для личного пользования.

Изменения в ИИ и в интерфейсе принимаются более охотно.

 

Сейчас у меня яды новые механики-то вообще не используют - все формулы оригинальные. Просто игрок вместо того, чтобы жрать яды, экипирует их и применяет к противнику при попадании (или запуске снаряда).

Вот и вся фича. Две трети кода - это доработка интерфейса.

1 А где хранятся другие данные по оружию? Ну имеется же у нас расчет силы зелий в зависимости от навыка и используемого оборудования. Понятно. Ну это опять сталкиваемся с ограничениями?

2 Т.е. они его просто в слот будут экипировать и он будет срабатывать?

3 Это нормально.

по поводу "По поводу "еще мыслей":"

1 Что на данном этапе менее трудоемко, ну и наиболее оправдано? В каких направлениях  мысли мыслить? Возможна работа с формулами использующими гмст? 

2 Честно говоря не знаю кто такой zini, только догадываюсь. Для себя писать не интересно, возможно же выпустить что-то реально годное с обновленными геймплейными системами( я так понимаю, что загвоздка останется в том, что с новой версией опенморки придется всё переделывать?). 

Ссылка на комментарий
Поделиться на другие сайты

Да, примерно так я и понял. Но у нас зачарования всегда применяются, и яды по идее должны себя вести аналогично.

В общем-то, логически это не обязательно - зачарования они на то и магические, что бы всегда работать, а вот яд на клинке - штука довольно ненадежная, если только оружие не специально под доставку яда сконструированно. Можно вообще разным типам оружия разные шансы отравленного удара сделать - стрелам-кинжалам повыше, мечам средне, дробящим, как справедливо замечено. пониже.
Ссылка на комментарий
Поделиться на другие сайты

1 А где хранятся другие данные по оружию? Ну имеется же у нас расчет силы зелий в зависимости от навыка и используемого оборудования. Понятно. Ну это опять сталкиваемся с ограничениями?

2 Т.е. они его просто в слот будут экипировать и он будет срабатывать?

3 Это нормально.

по поводу "По поводу "еще мыслей":"

1 Что на данном этапе менее трудоемко, ну и наиболее оправдано? В каких направлениях  мысли мыслить? Возможна работа с формулами использующими гмст? 

2 Честно говоря не знаю кто такой zini, только догадываюсь. Для себя писать не интересно, возможно же выпустить что-то реально годное с обновленными геймплейными системами( я так понимаю, что загвоздка останется в том, что с новой версией опенморки придется всё переделывать?). 

1. Да можно использовать поле "Состояние" для зелий, но в результате опять получается возня со стопками (одинаковые предметы с разной прочностью не стакаются).

Также нужно серьезно ослаблять яды, чтобы делать их многоразовыми, т.е. отвязывать их формулу крафта от формулы зелий, одной правкой GMST здесь уже не обойтись.

2. Да.

По поводу "по поводу "По поводу "еще мыслей":"

1. Не понял вопроса. Здесь конкретно про яды или про разработку OpenMW вообще?

2. Геймплейные фишки надо настраивать и балансировать. Для этого нужен полнофункциональный редактор, в который можно будет колонки добавлять, новые GMST и т.д. В идеале, еще формулы можно в Lua-скрипты вынести. Но сейчас редактор не допилен, поэтому новые механики надо зашивать в код, а вся настройка - через один многострадальный текстовый конфиг.

Zini - глава проекта OpenMW и ему принадлежит решающее право голоса, какая фича попадет в основную ветку (и будет доступна всем), а какая нет.

Из геймплейных фишек я уже добавлял застревание стрел в объектах, нормальные колчаны и ножны, и теперь яды, фейс-контроль ничего не прошло.

Если запилить свой форк, то сложность его обновления растет пропорционально количеству кода, который он затрагивает, причем обычно нелинейно.

Фактически, затраты времени на поддержание патчей актуальными могут превысить затраты времени собственно на их разработку.

Поэтому я стараюсь затрагивать настолько мало кода, насколько это возможно.

 

Можно вообще разным типам оружия разные шансы отравленного удара сделать - стрелам-кинжалам повыше, мечам средне, дробящим, как справедливо замечено. пониже.

Да скорее всего, примерно так и получится. Это проще, чем кулдаун.

Высокий шанс у мелкого метательного оружия и коротких клинков, средний у стрел, болтов, длинных клинков, копий и топоров, низкий у дробящего оружия.

Что-то типа 30/20/10%? С другой стороны, у коротких клинков и метательного оружия скорость атаки большая, у дробящего оружия - низкая, т.е. там и так яды реже срабатывать будут.

Как вариант, шанс не трогать, но применять яд всегда при скрытной атаке с помощью коротких клинков и мелкого метательного оружия.

Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

К стати под каждую эту фичу надо отдельный билд собирать? Как я понял.

Ссылка на комментарий
Поделиться на другие сайты

К стати под каждую эту фичу надо отдельный билд собирать? Как я понял.

Или объединять их в одну ветку, устраняя конфликты между этими фичами.

Еще одна причина для "меняй не больше кода, чем нужно".

Ссылка на комментарий
Поделиться на другие сайты

Подскажи какие инструменты есть, чтоб делать такие штуки, я тоже так хочу.

Вот кстати. Ты же отличный скриптер, что есть задатки программиста. Так что учись и будешь мега сборки делать.

Ссылка на комментарий
Поделиться на другие сайты

Вот кстати. Ты же отличный скриптер, что есть задатки программиста. Так что учись и будешь мега сборки делать.

:molodec: Ну учусь потихоньку, смотрю мануалы по С++, желательно чтоб помог кто-то знающий на начальном хотя бы этапе. В сущности начальный этап заключается в освоении самой среды программирования. Надо для начала научиться исходники опенморки открывать.  :tomato:  

Ссылка на комментарий
Поделиться на другие сайты

:molodec: Ну учусь потихоньку, смотрю мануалы по С++, желательно чтоб помог кто-то знающий на начальном хотя бы этапе. В сущности начальный этап заключается в освоении самой среды программирования. Надо для начала научиться исходники опенморки открывать.  :tomato:  

Кстати да - akortunov, выложи пожалуйста небольшой мануал :)

 

Ну, хотя бы с чего начать - чем открывать, какой средой разработки пользуешься ты (я вот Visual Studio Code ;) ), где вообще брать эти исходники, куда смотреть, чего нажимать, куда вертеть - глядишь, откроешь клуб анонимных 30-летних C++-шников :)

Ссылка на комментарий
Поделиться на другие сайты

Кстати да - akortunov, выложи пожалуйста небольшой мануал :)

 

Ну, хотя бы с чего начать - чем открывать, какой средой разработки пользуешься ты (я вот Visual Studio Code ;) ), где вообще брать эти исходники, куда смотреть, чего нажимать, куда вертеть - глядишь, откроешь клуб анонимных 30-летних C++-шников :)

Я пользуюсь QtCreator'ом в качестве среды разработки, GDB в качестве отладчика и GCC в качестве компилятора С++.

Под Windows, наверное, проще Visual Studio пользоваться - там есть и свой отладчик, и свой компилятор С++.

По поводу развертывания рабочей среды, я мало чего могу добавить к этому гайду. Кто-нибудь из местных осилил сборку под винду?

Вот технические консультации по архитектуре проекта - это пожалуйста, но там небольшим гайдом не обойдешься. Тут надо что-то типа "Morrowind Scripting for Dummies" делать, но на это много времени надо.

Ссылка на комментарий
Поделиться на другие сайты

Кто-нибудь из местных осилил сборку под винду?

Блииин! Я вспомнил про твою просьбу :(

 

 

Если будешь тестить, можешь заодно короткое оружие на этой сборке OpenMW проверить? Если все нормально, то изменения из этой сборки можно включить в основную ветку, и твой мод будет совместим с OpenMW.

 

Вот заодно и протестирую ;)

 

За краткий мини-гайд спасибо!

Ссылка на комментарий
Поделиться на другие сайты

Блииин! Я вспомнил про твою просьбу :(

 

Вот заодно и протестирую ;)

Уже немного поздно - изменения ушли в основную ветку, никто вроде пока не жаловался.

Для тестирования можно скачать крайнюю "ночную" сборку (ссылка есть в шапке темы "Мечты сбываются").

Теоретически, короткое оружие там должно работать.

Ссылка на комментарий
Поделиться на другие сайты

В копилку идей:

- Добавить расход усталости при натянутой тетиве лука. В данный момент, усталость тратится (и то минимально) лишь при отпускании тетивы.

Ссылка на комментарий
Поделиться на другие сайты

В копилку идей:

- Добавить расход усталости при натянутой тетиве лука. В данный момент, усталость тратится (и то минимально) лишь при отпускании тетивы.

Раз уж на то пошло, то и арбалетам при зарядке.

Ссылка на комментарий
Поделиться на другие сайты

Раз уж на то пошло, то и арбалетам при зарядке.

Да, верно.

Причем хорошо бы связать расход усталости с уроном лука\арбалета. Мощное оружие тяжелее натянуть.

 

Ещё добавлю:

- Сейчас стрела летит прямо в точку прицела, вне зависимости от Меткости, которая лишь задает шанс урона при попадании. Хорошо бы сделать радиус разлета стрел и связать его c Меткостью.

Ссылка на комментарий
Поделиться на другие сайты

 

Ещё добавлю:

- Сейчас стрела летит прямо в точку прицела, вне зависимости от Меткости, которая лишь задает шанс урона при попадании. Хорошо бы сделать радиус разлета стрел и связать его c Меткостью.

А попадание разве стопроцентное из лука и арбалета? 

 

Да и вообще можно у всего оружия и ближнего тоже, чтоб силы с началом замаха тратились. 

Ссылка на комментарий
Поделиться на другие сайты

А попадание разве стопроцентное из лука и арбалета? 

 

Да и вообще можно у всего оружия и ближнего тоже, чтоб силы с началом замаха тратились. 

Сейчас зависит от Меткости. Но выглядит странно - стрела чётко летит вражине в лоб, но почему-то не попадает. Условности, да, но не так же грубо...

Лучше и реалистичнее было бы сделать стопроцентное попадание при "попадании" снаряда, а уровень Меткости показывать разлетом боеприпасов.

 

С рукопашкой то же самое - даже неумеха должен попасть дубиной по здоровому грязекрабу, но вот эффективность попадания должна зависить от навыков.

 

Оружие ближнего боя обычно не настолько тяжелое, чтобы устать от замаха. Вот момент удара требует усилий :)

Изменено пользователем Broken von Skull
Ссылка на комментарий
Поделиться на другие сайты

Уже поднималась эта тема. Перетряхивать игровую механику на уровне движка сейчас бессмысленно:

1. До 1.0 никто это мержить не будет, т.к. OpenMW должен воспроизводить оригинальную механику по умолчанию.  Добавлять опции на каждый чих - тоже гиблое дело.

2. После 1.0 проще перенести механику в LUA-скрипты и все правки делать в виде модов, а не в виде своего форка движка.

Особенно это касается текущей морровиндовской боевки, по поводу которой у всех куча предложений, как ее переделать.

Короче, можно начинать капать на мозг NullCascade, чтобы он потихоньку реализовал фишки MWSE2 для OpenMW.

 

Если же есть желание пропатчить OpenMW, то лучше заняться ИИ, интерфейсом и редактором (особенно редактором).

Изменено пользователем akortunov
Ссылка на комментарий
Поделиться на другие сайты

Согласен. Это скорее вишлист пост-1.0 :)

Кстати, по поводу Lua, уже пришли к согласию по его использованию? А то помнится, что Zini хотел пилить что-то своё.

 

Еще пожелание:

- Автосейв при выходе из Канцелярии после генерации персонажа и получения первого квеста. А то бывает грохнут поначалу - приходится всё заново начинать, если не сохранился.

Изменено пользователем Broken von Skull
Ссылка на комментарий
Поделиться на другие сайты

Кстати, по поводу Lua, уже пришли к согласию по его использованию? А то помнится, что Zini хотел пилить что-то своё.

Пришли. Сошлись на том, что достоинства перевешивают недостатки:

1. TES3MP и MWSE2 используют Lua, так что модерам надо будет только один язык учить.

2. Lua - один из самых быстрых скриптовых языков, и специально предназначен для встраивания в другие программы (для него проще сделать песочницу)

3. Lua довольно популярен и частенько используется именно для скриптования игр, и модеру будет легче найти примеры.

Из недостатков приводят в основном то, что он не особо эстетичен, как что периодически всплывают комментарии "а сделайте лучше JavaScript/Rust/AngelScript".

Также отдельный вопрос с автоматизацией редактора - там вроде в планах Python есть (непонятно, зачем).

 

Еще пожелание:

- Автосейв при выходе из Канцелярии после генерации персонажа и получения первого квеста. А то бывает грохнут поначалу - приходится всё заново начинать, если не сохранился.

А момент выхода из канцелярии разве движком ловится, а не скриптами? Разве что скриптовую команду для автосейва добавить.

Ссылка на комментарий
Поделиться на другие сайты

А момент выхода из канцелярии разве движком ловится, а не скриптами? Разве что скриптовую команду для автосейва добавить.

При выходе из канцелярии меняют переменную ChargenState. В игре нельзя сохраняться [через меню], если она не равна -1.

Ссылка на комментарий
Поделиться на другие сайты

Пришли. Сошлись на том, что достоинства перевешивают недостатки:

1. TES3MP и MWSE2 используют Lua, так что модерам надо будет только один язык учить.

2. Lua - один из самых быстрых скриптовых языков, и специально предназначен для встраивания в другие программы (для него проще сделать песочницу)

3. Lua довольно популярен и частенько используется именно для скриптования игр, и модеру будет легче найти примеры.

Из недостатков приводят в основном то, что он не особо эстетичен, как что периодически всплывают комментарии "а сделайте лучше JavaScript/Rust/AngelScript".

Также отдельный вопрос с автоматизацией редактора - там вроде в планах Python есть (непонятно, зачем).

 

А момент выхода из канцелярии разве движком ловится, а не скриптами? Разве что скриптовую команду для автосейва добавить.

 

Круто, а то я боялся, что начнется перетягивание одеяла...

 

Ловится скриптами, но вызвать автосейв оттуда никак нельзя.

 

Ещё в копилку:

- Вкладка "Магия" в инвентаре выдает все предметы с зачарованием (доспехи, оружие, свитки) плюс зелья, напитки, ингредиенты. Хорошо бы добавить еще вкладку "Алхимия", которая будет отвечать за зелья, напитки, ингредиенты. Можно конечно поступить как в Скайриме - добавить вкладки "Зелья", "Свитки", "Ингредиенты", но возможно это избыточно.

Свитки почему-то показываются и в "Магии", и в "Разном".

Изменено пользователем Broken von Skull
Ссылка на комментарий
Поделиться на другие сайты

В копилку идей:

- Добавить расход усталости при натянутой тетиве лука. В данный момент, усталость тратится (и то минимально) лишь при отпускании тетивы.

А если усталось на нуле? Или не на нуле, но на полное натяжение не хватает?
Ссылка на комментарий
Поделиться на другие сайты

А если усталось на нуле? Или не на нуле, но на полное натяжение не хватает?

Пока можно оставить то же поведение, как и с оружием ближнего боя. Бить\стрелять можно, но усталость на нуле.

Если развивать мысль, то тут конечно нужны штрафы, что-то типа замедления атаки, и это должно распространяться на всё оружие. Но это уже уводит к переделке всей боевой системы.

Ссылка на комментарий
Поделиться на другие сайты

А если усталось на нуле? Или не на нуле, но на полное натяжение не хватает?

Два варианта, либо тетиву отпускает, либо снимается натяжение, т.е. переход в состояния до натягивания тетивы. С арбалетами - запрет перезарядки при недостатке сил.

Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...