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

Ресурсная модель игры: ресурсы

заг-заг (c) ~~World of~~ Warcraft.

заг-заг (c) World of Warcraft.

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

Первую попытку описать игру с ресурсной точки зрения я сделал на Хабре в посте время, деньги и фан в ММО, после чего немного расширил её при описания следующего фронтира геймдизайна.

Теперь пора потихоньку вдаваться в детали. Начну, как видно из названия, с самих ресурсов.

Под ресурсом в данном случае можно понимать всё, что может быть потрачено или получено: время, деньги, эмоции, навыки, любой внутриигровой счётчик.

Воспринимайте этот текст как интересное интеллектуальное упражнение. Агитировать за использование ресурсной модели в реальных проектах я пока не готов.

Далее

Меняю email рассылку на канал telegram

Примерно год назад сделал email рассылку постов блога. Эксперимент не удался. Подписываются только боты. Живых подписчиков набралось всего пара человек.

Поэтому решил сменить рассылку на telegram канал @tiendil_org_ru.

Напоминаю, что RSS у блога тоже есть.

О книге «Люди как боги»

Обложка книги «Люди как боги»

Последние года два часто встречал, по разным поводам, советы прочитать эту трилогию Сергея Снегова (не путать с одноимённым рассказом Герберта Уэллса). Произведение оказалось интересным, но не оправдало надежд. За прошедшие с конца 60-ых годы оно потеряло глубину, если имело её когда-то. Теперь это просто не самая скучная сказка о космосе.

То, что произведение откровенно утопическое, нисколько не оправдывает его простоту плоскость. Описывать утопии можно по-разному. Я давно не перечитывал произведения Лема, но по-моему у него светлое будущее человечества удавалось изобразить лучше.

Далее

Julia — это Python++?

Логотип Julia

Давно хотел посмотреть на Julia, так как встречал его (её?) упоминание в очень разных и не всегда относящихся напрямую к программированию местах. Пока изучил только документацию и ничего серьёзного на нём не писал (это будет следующим шагом), но уже хочется сказать пару слов. В соответствии с собственными заветами :-D

Изначально я планировал сделать что-то вроде сводной таблицы «плюсы и минусы Julia», но по прочтении документации передумал.

Во-первых, язык достаточно самобытен, имеет множество мелких нюансов, эффекты которых проявляются только эмерджентно, а копировать всю документацию сюда я не планирую.

Во-вторых, такие таблицы уже есть.

Поэтому я ограничусь личными впечатлениями и пересказом его идеологии, как я её вижу.

Далее

Модная типизация в Python

Разработчики пришивают типы к Python.

Разработчики пришивают типы к Python.

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

Не могу сказать что я разделяю оптимизм по поводу продвинутой типизации в Python. Наоборот, считаю, что это как попытка пришить змее ноги — забавно, но вряд ли удобно. Но раз куча людей тратит на это время, надо быть в курсе.

В этот раз я:

  • Посмотрел что из себя представляет mypy и чем может быть полезно (мало чем).
  • Посмотрел чем можно автоматически сгенерировать аннотации типов (ничего рабочего нет).
  • Подумал о том, как правильно использовать проверку типов в Python, раз их так форсят.
  • Нашёл библиотеку, реализующую идеологически верный подход.

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

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

Далее