Фибоначчи против всех!
Итак, совсем недавно я написал свой первый пост об использовании Фибоначчи в гейм-дизайне. Напоминаю, в том посте я использовал последовательность Фибоначчи для построения простой экономической модели игры.
Два комментария к нему стали настолько популярны (исходили множество раз от разных людей), что я решил написать пост-дополнение.
Опять же, постараюсь кратко и по делу.
Чем использование Фибоначчи отличается от геометрической (арифметической) прогрессий?
Это, пожалуй, самый популярный вопрос о прошлом посте. Его я слышал от каждого второго, с кем его обсуждал. Вопрос действительно любопытный.
Давайте будем разбираться!
Вкратце упомяну про те последовательности, которые я рассмотрю.
Фибоначчи — это последовательность чисел, каждый член которой равен сумме двух предыдущих (0,1,1,2,3,5,8…).
В арифметической прогрессии каждый член, начиная со второго, равен предыдущему, сложенному с постоянным для этой последовательности числом d. Число d называется разностью прогрессии. (0,2,4,6,8…при d=2).
В геометрической прогрессии каждое последующее число, начиная со второго, получается из предыдущего умножением его на определённое число q — знаменатель прогрессии. (1,3,9,27…при q=3).
Я набросал 6 вариантов различных последовательностей. Много чисел, знаю. Но не парьтесь, вникать в них совсем необязательно. Они здесь исключительно ради чистоты данных.
Уточню, что в случае с Фибоначчи и геометрической прогрессии с модификатором 0.7 каждый член последовательности дополнительно умножается на модификатор. По аналогии с тем, как я рассчитывал Вознаграждение 2 в прошлом посте. Чтобы избавиться от дробных долей, эти последовательности округлены вверх.
Визуализируем:
Бросив даже беглый взгляд на табличку и графики, я могу сделать следующие наблюдения:
- Арифметические прогрессии в начале растут быстро, но с каждым шагом все безнадежнее отстают.
- Геометрические прогрессии стремительно улетают в космичекое пространство с упорством качественно построенной в Kerbal Space Program ракеты.
- Фибоначчи ведут себя аналогично геометрическим, но с менее космическими скоростями.
Арифметические прогрессии прямолинейные и скучные, но могут неплохо подойти для математических моделей повреждений/хитпоинтов.
Геометрические последовательности и Фибоначчи имеют чертовски похожие графики. Оба этих варианта отлично подойдут для экономических мат.моделей или, например, моделей очков опыта / уровня персонажа.
Они весьма удобны для построения более комфортного и неторопливого потребления контента на высоких уровнях игры. При использовании Фибоначчи или геометрической последовательности в мат.модели опыта прогресс игрока замедляется ближе к концу игры, и игрок просто не успевает заскучать от собственной мощи.
Известный прецедент подобной проблемы — настольная ролевая игра DnD, редакция 3.5. Ближе к последнему 20му уровню персонажа игроки становились фактически неуязвимы. Они могли летать, проходить сквозь стены и уничтожать целые страны своими заклинаниями.
Понятно, что придумать интересное и бросающее вызов приключение для таких полубогов было чертовски сложно, поэтому в правилах прописывали, что как только персонаж достигает последнего уровня, он “уходит на пенсию” и игрок должен создать нового.
Это породило забавный мета-гейм — игроки не хотели расставаться со своими любимыми персонажами так быстро, поэтому примерно в середине игры брали вторые классы, что существенно замедляло прокачку.
Вы же можете добиться подобного эффекта с помощью математики — для большего удобства ваших игроков.
Лично мне больше нравится Фибоначчи по нескольким причинам:
- Растет более плавно, чем геометрическая. Период невысоких значений дольше, чем у геометрической, да и в последствии более высокие значения набираются гораздо медленнее. Это позволяет использовать Фибоначчи большее количество “шагов” мат.модели без перенастройки.
- Более гибка и менее прозрачна для игрока при работе с модификаторами. В целом более интересная (хотя это имхо, конечно).
- Ее название круто звучит — что дает вам +10 к офигенности. Само собой, некоторые коллеги что-то заподозрят. Но вы не сдавайтесь — сохраняйте невозмутимую мину.
Берите пример с Венди!
Впрочем, не стоит себя ограничивать каким-то одним типом — всегда исходите из своих целей, вдохновения и интуиции. Микс из различных подходов в одной модели может дать неожиданно крутой результат.
В следующем посте я постараюсь осветить второй популярный комментарий — построение кривой сложности с учетом нашей экономической мат.модели из первого поста.
Спасибо за внимание!
7 комментариев
Андрей Твердоступ
Непонятно, как в Фибоначчи с модификатором 0.7 мы получили значение 6. Перед 6 идут значение 3 и 4.
(3+4) * 0,7 = 4,9 округляем 5.
Что происходит в геометрической с модификатором 0.7 тоже непонятно, не могу вручную посчитать, какое вычисление происходит под капотом? Не знаю какой знаменатель прогрессии.
Спасибо за ответ =)
Уведомление:
Уведомление:
Уведомление:
Уведомление:
Уведомление:
Уведомление: