Эссе о разработке игр, мышлении и книгах

GraphQL & Python

Как и собирался, полез разбираться с GraphQL.

Смотрел на него в контексте Python, поэтому возможны искажения — технология родилась, как и многое сейчас, в мире JavaScript — референсная реализация на этом языке сделана.

Далее

Значимость события в ММО

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

Далее

Python Hypothesis

Давно хотел посмотреть на hypothesis — генератор фикстур для тестов. Сделал это пока в очередной раз колупал типы в Python.

Hypothesis позволяет описывать генераторы входных данных для тестов и запускать тесты сразу на всех сочетаниях данных. В случае ошибки библиотека попробует локализовать её в наиболее простом наборе данных, чтобы было проще понять проблему и воспроизвести ей. Генераторы для базовых типов идут в комплекте, поэтому деление на ноль она ловит хорошо :-)

Если кратко, то мне понравилось, рекомендую, буду использовать, но не всегда. Подробнее под катом.

Далее

Боты и твинки в играх

ММО игра, если в ней не заниматься ботами и твинками. (с) [Rick and Morty](https://en.wikipedia.org/wiki/Mr._Meeseeks)

ММО игра, если в ней не заниматься ботами и твинками. (с) Rick and Morty

Вопрос взаимодействия многопользовательских игр с этими явлениями интересует меня давно, в том числе и в контексте Сказки. Но сформировать чёткую позицию я так и не удосужился — ограничивался парой эвристик, которые облегчали жизнь. К сожалению, на эвристиках не всегда можно далеко уехать, поэтому пришло время эту позицию сформировать.

Предлагать идеальное решение не буду — сильно сомневаюсь в его принципиальной возможности. Вместо этого попробую выделить направления взаимодействия с проблемой.

Поскольку область большая и непроработанная, описывать направления буду разными способами: часть — высокоуровневыми соображениями, часть — декомпозицией на частные случаи. Где смогу, буду приводить примеры, но будут и места с вопросами и догадками. Сосредотачиваться на конкретном жанре также не буду — поговорим о многопользовательских играх во всём их разнообразии.

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

Итоговый текст захватил куда больший кусок предметной области, чем я планировал. Фактически, текст можно переименовать в «направления работы с негативным игровым опытом на примере взаимодействия с ботами и твинками». Поэтому эссе может быть интересно прочитать, даже если конкретно боты и твинки вам не интересны.

И будьте осторожны, очень много букв.

Далее

Как я знакомлюсь с историей

История — наука во многом субъективная — каждый трактует её как хочет. Поэтому я стараюсь избегать исторических книг от историков. Особенно от современных. Особенно жизнеописаний. Особенно научно-популярных.

Однако, история — штука интересная и полезная для формирования более-менее объективной картины мира. Либо набиваешь шишки на личном опыте, который ограничен временем жизни и источниками информации, либо изучаешь историю. Можно ещё копать в сторону психологии, антропологии и смежных дисциплин, но там свои нюансы.

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

Когда человек пишет что-то, он, обычно, хочет повлиять на своих современников. Максимум, на ближайших потомков. Поэтому, через 100, 200, 1000 лет после автора, становится намного легче вычленять суть из его текстов:

  • Совершенно точно автор не пытается залезть именно в ваш мозг.
  • Мир сильно изменился и многие авторские искажения видны на контрасте.
  • Контекст, в котором жил автор, известен не хуже, чем современная повестка, а часто — лучше. Это упрощает понимание мыслей и поступков автора.
  • Вклад автора в развитие цивилизации, его место в истории, если не определены точно, то по крайней мере под них размечена область на его полотне.
  • Часто известно зачем именно автор писал свои тексты.

Конечно, не всегда получается придерживаться этого принципа.

Например, книга Изобретение науки явно под него не попадает, но в её случае альтернативного подхода к изучению темы быть не может — исключение, подтверждающее правило.

В остальном же, читать явно пропагандистские Записки Цезаря или наполовину технический судовой журнал Джеймса Кука, о котором будет следующий пост, в плане восприятия информации на много легче, чем книги наших современников. Вы могли обратить внимание, что в их обзорах я периодически жалуюсь на проскальзывание повестки со слабым обоснованием.