Среда, 13 Ноября 2024, 12:13

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 2
  • 1
  • 2
  • »
Расчет пенальти к урону от брони
lentinantДата: Среда, 25 Декабря 2013, 22:16 | Сообщение # 1
ленивый программист
Сейчас нет на сайте
Размышляю над организацией нанесения урона в ролевой игре. Дабы игра не была полностью примитивной, решил добавить показатель брони, однако, не могу подобрать хороший алгоритм подсчета пенальти к урону.

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

Хотелось бы услышать мнения других.


Когда-то тут будут ссылки на крутые проекты. Или нет.
IvanKorobkoДата: Среда, 25 Декабря 2013, 22:20 | Сообщение # 2
IK Studio
Сейчас нет на сайте
Тоже ломал голову над сим вопросом(да и не только - по рпг системе в целом...)

Потом наткнулся на ютубе на настольные ролевые игры от Братца Ву, где мне открылись глаза на то, ткуда эти системы вообще пошли и где можно слямзить некоторые расчеты smile


EfimovMaxДата: Среда, 25 Декабря 2013, 22:25 | Сообщение # 3
заслуженный участник
Сейчас нет на сайте
Сам думал над этим.
Пришёл к выводу, что лучше делать процентами. Наносят нам урон в 100 поинтов, наша броня - 10 поинтов. Получаем дамаг 90.
Цитата lentinant ()
это будет означать слишком высокий темп роста защиты на ранних порах

Это дело баланса.


Текущий проект: The Experiment ☭

Выпущенные проекты Steam:
Princess.Loot.Pixel.Again
Princess.Loot.Pixel.Again x2
Dungetris
lentinantДата: Четверг, 26 Декабря 2013, 12:15 | Сообщение # 4
ленивый программист
Сейчас нет на сайте
В общем, в меру того, что система экипировки в игре не особо РПГ-щная (у персонажа будет только оружие, возможно, щит, и набор собираемых артефактов), да и числа вряд ли будут переваливать за сотню (хп 30-40 на макс уровнях, урон - около 10), думаю, можно все же оставить простой вычет урона, однако, сделать ограниченный набор предметов с увеличением брони.

Когда-то тут будут ссылки на крутые проекты. Или нет.
JHawkДата: Четверг, 26 Декабря 2013, 13:23 | Сообщение # 5
めゃくちゃちゃ
Сейчас нет на сайте
Формула такая
Код
Damag =  AlphaDamag - (AlphaDamage/Armor)*1.9

Применялась мною в нескольких работах. О Дисбалансе можно говорить только если числа будут реально высоки.
BarbatosДата: Четверг, 26 Декабря 2013, 13:43 | Сообщение # 6
3D-моделлер/Руководитель
Сейчас нет на сайте
lentinant,
Мне больше такой алгоритм по душе.
100 брони - поглощает 25% урона, а 200 брони поглощает 40%, 300 брони поглощает 65% и уменьшается.

Сопротивление уменьшает входящий урон на некий процент, который считается по формуле (1-100/(def+100))*100%, где def - это количество брони.
Так, например, если по вам ударяет герой со 100 единицами физического урона, то при 0 брони вы потеряете 100 здоровья, при 100 единицах брони 50 здоровья, а при 200 брони потери составят только 33 хп.


Его остатки и на хлеб не намазать. Мой тебе совет Пабло - относись к жизни как к веселухе, но непродолжительной. @Эш
TheAceДата: Четверг, 26 Декабря 2013, 14:00 | Сообщение # 7
Pain is Pleasure
Сейчас нет на сайте
Мне больше всего нравится такой вариант - если урон меньше, чем броня, то он не наносится вовсе. Если больше - наносится целиком.

The End [3D][TPS]
EfimovMaxДата: Четверг, 26 Декабря 2013, 14:20 | Сообщение # 8
заслуженный участник
Сейчас нет на сайте
Цитата TheAce ()
Мне больше всего нравится такой вариант - если урон меньше, чем броня, то он не наносится вовсе. Если больше - наносится целиком.

Странная система, если честно.


Текущий проект: The Experiment ☭

Выпущенные проекты Steam:
Princess.Loot.Pixel.Again
Princess.Loot.Pixel.Again x2
Dungetris
TheAceДата: Четверг, 26 Декабря 2013, 14:23 | Сообщение # 9
Pain is Pleasure
Сейчас нет на сайте
EfimovMax, у меня не РПГ, а сетевой шутан, но по-моему - система вполне приличная.
Упор изначально был на то, что более-менее нормальная броня делает игрока абсолютно неуязвимым против народа с дробовиками и пушками с большой скорострельностью, но не даст никакого спасения против снайперов и пулеметчиков.


The End [3D][TPS]
EfimovMaxДата: Четверг, 26 Декабря 2013, 14:28 | Сообщение # 10
заслуженный участник
Сейчас нет на сайте
Цитата TheAce ()
у меня не РПГ, а сетевой шутан

А, я думал про РПГ smile В шутеры не играю, поэтому ничего сказать не могу. Но для РПГ такая система точно не подойдёт wink


Текущий проект: The Experiment ☭

Выпущенные проекты Steam:
Princess.Loot.Pixel.Again
Princess.Loot.Pixel.Again x2
Dungetris
lentinantДата: Четверг, 26 Декабря 2013, 18:14 | Сообщение # 11
ленивый программист
Сейчас нет на сайте
Цитата TheAce ()
Мне больше всего нравится такой вариант - если урон меньше, чем броня, то он не наносится вовсе. Если больше - наносится целиком.

Думаю, у любого игрока должна быть хотя бы какая-то возможность убить другого игрока, хоть в РПГ, хоть в шутане.
Цитата JHawk ()
Damag =  AlphaDamag - (AlphaDamage/Armor)*1.9

Забавно, что это не исключает случаи отрицательного урона))
Цитата Barbatos ()
Так, например, если по вам ударяет герой со 100 единицами физического урона, то при 0 брони вы потеряете 100 здоровья, при 100 единицах брони 50 здоровья, а при 200 брони потери составят только 33 хп.

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


Когда-то тут будут ссылки на крутые проекты. Или нет.
BarbatosДата: Четверг, 26 Декабря 2013, 19:36 | Сообщение # 12
3D-моделлер/Руководитель
Сейчас нет на сайте
lentinant,
Разница между 1.00 и 100?


Его остатки и на хлеб не намазать. Мой тебе совет Пабло - относись к жизни как к веселухе, но непродолжительной. @Эш
lentinantДата: Суббота, 28 Декабря 2013, 00:40 | Сообщение # 13
ленивый программист
Сейчас нет на сайте
Barbatos, разница межу 10 и 1. И то, 10 - одно из самых высоких чисел урона, которые будут в игре.

Когда-то тут будут ссылки на крутые проекты. Или нет.
АрамисДата: Понедельник, 06 Января 2014, 16:53 | Сообщение # 14
был не раз
Сейчас нет на сайте
Цитата
Размышляю над организацией нанесения урона в ролевой игре

Почему бы просто не: "дамаг = атака/броня"? Основной критерий будет выполняться во всех случаях, когда броня > 1, зато цифры будут интуитивно понятны игрокам


KirchДата: Вторник, 04 Февраля 2014, 14:40 | Сообщение # 15
частый гость
Сейчас нет на сайте
Цитата Barbatos ()
Мне больше такой алгоритм по душе.

Немного дополню, что имел в виду комрад.
Во первых стоит покурить такую вещь, как эффективное ХП(ЛоЛ, ВоВ, Дьябло 2 - легко гуглится). Мы обычно делаем так:
Умножитель урона=100/(100+Броня) ,если Броня>=0
Умножитель урона =2-100/(100-Броня) ,если Броня<0
,
если вводиш пенетрейт, то просто отнимай его от показателя брони у цели. Вместо 100 можно подставлять любое число, в зависимости от порядка показателя брони, экипировки, которую ты хочешь давать игрокам, в данном примере ты увеличишь эффективное хп ровно в 2 раза, если нацепишь на себя 100 брони. Эта формула используется для линейного увеличения эффективного ХП, типа каждая еденица брони прибавляет одинаковое количество хп. Но броня нужна в основном тогда, когда тебе нужно балансить например эффективность отхила(бронированную, но худую цель легче отлечить - то есть эффективность хила повышается при лечении танка вточенного не на хп). Если вопрос кого нить интересует более детально, то могу поискать нормальных статей или поконсультировать лично. Коль не справлюсь сам - подключу нашего гейм-дизайнера=)


Сообщение отредактировал Kirch - Вторник, 04 Февраля 2014, 14:56
ShinganДата: Среда, 05 Февраля 2014, 22:14 | Сообщение # 16
был не раз
Сейчас нет на сайте
Всё довольно просто. Каждая единица броди даёт некий % снижения урона. Задача заключается в том, чтоб каждая единица брони дабавляла одинаковый % к выживаемости персонажа.

Примитивны пример:
1 броня = 10% резиста
2 брони = 19% резиста (+9)
3 брони = 27.1% резиста (+8.1)
и т. д.

Таким образом, каждая единица брони увеличивает выживаемость персонажа на 10%, но резист никогда не достигнет 100%. Не бойтесь большого прироста брони в начале, поймите что броня всё-го лишь увеличивает еНР (effective health point).
OpenGOOДата: Четверг, 06 Февраля 2014, 00:22 | Сообщение # 17
почти ветеран
Сейчас нет на сайте
Можно формулу из вартюна взять.

Средний урон = (атака - защита) /2

Урон плавает между 90% и 110% среднего урона

Минимальный урон 10% от атаки.


Мои проекты:
- Свободный и открытый клон World Of Goo
- TrueEngine2D (2D игровой фреймворк основанный на FreeBASIC)

[GameMaker: Studio v1.4.9999]
berilДата: Четверг, 06 Февраля 2014, 02:32 | Сообщение # 18
Я не ленивый, я — энергосберегающий
Сейчас нет на сайте
Самый простая формула
A * (B\Q)
Где А - показатель защиты доспеха
B - навык владения доспехами
Q - коэффициент

Если надо в процентах, то примерно такая формула (из диаблы формула)
[Броня/(Броня+УМ*50)]*100
УМ - уровень нападающего на вас монстра

Советую обратить еще внимание на формулы из Kings of Bounty




Накодил? Убери за собой!
Инвентарь в Unity(UI)
Инвентарь в Unity(GUI)
castielblackДата: Четверг, 06 Февраля 2014, 02:51 | Сообщение # 19
почетный гость
Сейчас нет на сайте
Вот тут крутая статья. ( Тут вообще статьи великолепные )

Знания : C#, Lua, C++, Unity, Dreemchest, DirectX 11
Выпущенные проекты : BuildAndRun, Match 3 Cubes
ShinganДата: Четверг, 06 Февраля 2014, 04:21 | Сообщение # 20
был не раз
Сейчас нет на сайте
Люди, вы когда формулы пишете, то вы думаете над тем, какие последствия в балансе это повлечёт, или вы просто пишете "о, в игре Х была крутая формула, бери её". Сначала вы должны определиться с тем, ЧТО такое в балансном плане броня.
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг