Ресурсы по математике для гейм-дизайнера
Математика играет важную роль в гейм-дизайне, особенно если вы занимаетесь балансом. В этой заметке будет обзорный тур по ресурсам, которые могут помочь как в работе, так и на собеседовании. Большинство задач, связанных с игровым балансом, опираются на теорию вероятностей и математическую статистику, поэтому основной упор в материалах сделан именно на эти области.
Game Development
Начнём с книг, которые имеют прямо отношение к разработке игр. В них не так много математики, написаны они просто, и имеют самое прямое отношение к гейм-дизайну.
- Игровой Баланс (Ian Schreiber) — единственная книга [известная мне], полностью посвященная балансу: транзитивность, кривые стоимости, системы рейтинга и многие другие умные слова отлично раскрываются на её страницах. Для закрепления знаний используются упражнения. Более того, последняя часть книги полностью посвящена таблицам — крайне важному инструменту гейм-дизайнеров.
Более подробно про книгу.
- Virtual Economies: Design and Analysis (Vili Lehdonvirta & Edward Castronova) — книга с углублением в тему экономики с примерами из EVE Online. Автор лично работал над EVE, а также является профессор экономической социологии и цифровых социальных исследований в Оксфордском институте. К сожалению, в книге больше воды, чем в первой, но, тем не менее, интересные идеи и концепции можно найти.
- Игра в цифры (Василий Сабиров) — книга не про гейм-дизайн, а аналитику, но аналитика и баланс всегда идут рука об руку, ведь без неё практически невозможно узнать, а работает ли ваш теоретический баланс в реальной среде и как правильно скорректировать его на основе данных. Data-driven [-oriented] подход — наше всё.
Неплохая выжимка.
Научно-популярная литература
К сожалению (или счастью), баланс строится на математических моделях, а они, как следует из термина, на математике. Многие не любят читать учебники по ней и разбираться в её тонкостях. На помощь здесь приходит научпоп. Он не уходит в глубины доказательств, но при этом даёт необходимые базовые знания.
- Серия «Образовательная Манга» — коллекция про статистику, тервер, машинное обучение и всё-всё. В каждой из них есть уникальный сюжет, который проводит нас через весь материал. Вдобавок есть упражнения и выкладки с доказательствами для особо интересующихся читателей. В моих заметках частенько можно встретить вырезки из данной серии.
- Математика с дурацкими рисунками и Математический анализ в безумном мире (Орлин Бен) — две книги, которые описывают концепции из школьной алгебры и начала матанализа с «дурацкими рисунками» [хотя я считаю их прекрасными]. Знание матанализа совершенно не обязательно для хорошего дизайнера, но иногда понимание производной помогает для анализа функции, а интеграла для сложных расчетов (которые, впрочем, вероятно можно выполнить и другими способами).
- Игра случая (Джозеф Мазур) — когда-нибудь слышали задачу о печатающей обезьяне? В ней спрашивается: сможет ли обезьяна (если дать ей сколько угодно времени), нажимающая случайным образом на кнопки клавиатуры компьютера, написать первую строку из сонета Шекспира? Книга расскажет о нескольких подобных увлекательных задачах в виде историй. Они, в свою очередь, затрагивают закон больших чисел, теорию скрытых переменных и закон действительно больших чисел — эти знания вам точно пригодятся в работе.
- Статистика и котики (Владимир Савельев) — справочник по статистике с простыми примерами. Как мне кажется, данный материал не стоит читать как учебник, потому что всё очень поверхностно и бегло. Никаких упражнений и доказательств, голые факты.
- Как лгать при помощи статистики (Дарелл Хафа) — классическая книга, которая учит критически подходить к статистическим данным и их интерпретации. Несмотря на провокационное название, она показывает, как данные могут быть представлены так, чтобы вводить в заблуждение или формировать определённый нарратив. Для гейм-дизайнеров это особенно полезно: вы сможете корректно показывать игрокам информацию [причём определение корректности каждый может определить для себя сам], а также правильно интерпретировать аналитические данные, избегая ошибок в работе с игровыми метриками.
Обзор всей книги.
Портал в Data Science
Коллегам, занимающимся Data Science, тоже часто приходится опираться на статистику, так почему бы не почитать то, что читают они?
- Доверительное АB тестирование (Кохави Р., Тан Д., Сюй Я.) — гейм-дизайнерам часто приходится работать с A/B тестами: проводить эксперименты, следить за их корректностью и делать выводы. Культура A/B тестирования достаточно сложна, и, чтобы избежать базовых ошибок, стоит ознакомиться с этой книгой. Она поможет лучше понять, как правильно сетапить эксперименты, интерпретировать результаты и учитывать все нюансы.
- Практическая статистика для специалистов Data Science (Питер Брюс, Эндрю Брюс, Питер Гедек) — эта книга станет отличным пособием для тех, кто хочет глубже разобраться в основах статистики, необходимых для работы с данными, но не уходить в дебри. Авторы наглядно объясняют ключевые концепции на базовом уровне: от анализа данных и визуализации до проверки гипотез и машинного обучения.
- Заставьте данные говорить (Алексей Колокольников) — гейм-дизайнерам нередко приходится визуализировать данные, будь то для внутреннего анализа, общения с коллегами или демонстрации игрокам. Эта книга поможет научиться строить понятные, информативные и эффектные графики, избегая визуального "шума".
Учебники
Если вы хотите хардкора, то можно обратиться к настоящим учебникам. Если первые главы будут понятны большинству, то для оставшихся необходимы начальные знания математического анализа. Личные рекомендации:
- Письменный Д.Т., Конспект лекций по теории вероятностей и математической статике.
- Гмурман В.Е, Теория вероятностей и математическая статистика.
- В. Феллер, Введение в теорию вероятностей и ее приложение в двух томах.
Все учебники похожи по базовому содержанию и структуре, но "сок" отличается, так, например, Гмурман значимую часть книге посвящает проверке статистических гипотез.
Многие также рекомендуют Вентцель E.С., но по моему мнению, данный учебник написан более сложным языком, чем другие.
Онлайн
В эпоху интернета было бы глупо не воспользоваться его дарами.
- Математика в геймдизайне от dev2dev — онлайн курс, который покрывает необходимый минимум.
- GDC — самая большая конференция разработчиков видеоигр в мире. Море полезного контента, в частности по балансу и экономике. Мои любимые доклады:
- Slay the Spire: Metric Driven Design and Balance
- Changing the Time Between Shots for the Sniper Rifle from 0.5 to 0.7 Seconds for Halo 3
- Balancing the Economy for Albion Online
- Machinations — веб-инструмент для симуляции игровых систем, но у разработчиков есть ютуб канал. На нём периодически проводятся вебинары с приглашенными гостями, например, с Шрайбером про 4X and Abstraction in Game Design. На семинарах не стоит надеяться увидеть или услышать идеальную формулу баланса, но на них определенно можно найти новые подходы к дизайну или концепции.
Задачники
Пришло время готовиться к собеседованию. Где же это делать?
- Открытые тестовые. Таких можно найти очень много, например, вот тут.
- Dungeons of Probability — небольшая игра, в которой надо решать простые задачки на теорвер.
- Мостеллер Ф., 50 занимательных вероятностных задач с решениями — сборник задач на тервер. Говорят, что если прорешать все задачи из сборника, то любое тестовое покажется пустышкой. На самом деле почти так и есть, потому что идей решения задач на теорию вероятностей с дискретными случайными величинами не так уж и много, а другие дают редко.
Заодно можно открыть любой из учебников и прорешать задачки оттуда. Обычно они интереснее тех, что дают на тестовых (по очевидным причинам).
Заключение
Надеюсь, вы нашли в этой заметке что-то полезное для себя и вдохновились укрепить свои знания в математике. Однако важно помнить, что математика не ограничивается только теорией вероятностей и математической статистикой. Стоит обратить внимание и на другие её разделы, такие как:
- Математический анализ — чтобы разобраться в дифференциальном и интегральном исчислении, что может быть полезным при анализе сложных игровых экономик.
- Линейная алгебра — для работы с системами линейных уравнений и понимания таких фундаментальных понятий, как векторы, матрицы и операторы.
- Дискретная математика — для более глубокого погружения в комбинаторику, например, изучение чисел Каталана, Стирлинга, Белла и других концепций может значительно упростить решение некоторых задач.
Разумеется, изучать всё это стоит только в том объёме, который соответствует вашим потребностям. Более того, без многих из этих знаний можно прекрасно обойтись в работе, но с ними — и интереснее, и местами легче.