Хаос и эффект бабочки - новая фича в игре
Наверняка вы слышали про эффект бабочки. В рассказе Бредбери + фильм такой есть + это термин в науке. Когда незначительные изменения в начальных условиях (в прошлом, например) приводят к большим и непредсказуемым последствиям.
Алгоритм генерации в моей игре создает очень разные карты и здания. Каждый запуск - уникальная игра. И тут несколько человек предложило сделать фичу: поделиться картой по коду. Если сгенерировались прикольные здания и хочется сыграть еще раз или чтобы сыграли другие люди, то просто сохрани спецкод. При запуске игры его можно ввести, и создастся в точности та карта.
А как упаковать здоровенную карту с многоэтажными зданиями и кучей разных объектов в один, желательно короткий код? Тут и проявляется эффект бабочки.
Алгоритм конструирования (5к строчек на C#) якобы случайный, но на самом деле реализуется детерминированный хаос. Вроде все задано точно по алгоритмам, но возникает хаос из-за того, что алгоритм чувствителен к малейшим изменениям начальных условий.
Бабочкой в моем случае и будет такой спецкод, который определяет начальные условия генерации карты. Стоит только дунуть, поменять хотя бы один жалкий бит, и алгоритм создаст совершенно другие здания и объекты. Такой код называют Seed.
Сделал эту фичу в игре и залил новую версию демки в Steam. Мне, например, понравилась карта, где второй этаж с ускоряющими дорожками создался над дорогой. Можно ездить по дорожкам и смотреть на машинки снизу. Код этой карты:
61.A9.9E.02.52
Теперь каждый, кто введет этот код может побегать там же, где и я. Прикольно? Если вам понравился стиль игры, то заходите на страничку в Steam-е, чтобы добавить в желаемое и сыграть в бесплатную демку.