Игра / в разработке
Crypto Tower
Онлайн-тайкун для детей 8–14 лет: ставишь майнинг-машины в своём доме, собираешь монеты и продаёшь их на общей бирже, где курс один для всего сервера.
- Играть
- Яндекс Игрыскоро
Как играют
Восемь игроков делят один остров: в центре площадь с биржей, по кругу участки с домами. Каждый строит свою ферму, но все торгуют на одном рынке и видят друг друга.
- Подходишь к машине, забираешь намайненные монеты
- Продаёшь на бирже сейчас или ждёшь, пока курс вырастет
- Покупаешь новые машины и расставляешь их по сетке
- Достраиваешь этажи, собираешь коллекцию, перерождаешься с бонусом


Биржа одна на весь сервер
Курс шести монет считает сервер, и он одинаков во всех комнатах. В его основе две волны, часовая и тринадцатиминутная, плюс шум. Поверх них случаются пампы (рост в 2–3 раза на пару минут, с анонсом за минуту) и обвалы. Игроки ловят момент для продажи все одновременно.
курс = база × (1 + 0.3 · волна) × событие
Раз в 15–25 минут на остров приходит погода: снегопад, гроза или лунная ночь. Машины начинают добывать редкие монеты, которые выпадают только в онлайне.

Сервер решает всё
Клиент не считает ни одной монеты, он только отправляет намерения: «собрать», «продать», «купить». Экономика, курс, покупки и сохранения живут на сервере, поэтому подкрутить баланс в браузере нельзя.
- Покупки идемпотентны. Повторный запрос с тем же токеном не начислит алмазы дважды.
- Детский чат. Всем доступны готовые фразы, свободный текст — только после входа. Серверный фильтр режет мат, ссылки, телефоны и личные данные. Есть жалобы, автомут и бан.
- Честная монетизация. Никаких покупок со случайным результатом, реклама показывается только после явного действия игрока.
- Деплой в Docker. Игра, PostgreSQL, nginx с TLS, скрипты бэкапа и восстановления.
Мир собран кодом
Дома, машины и декор не рисуются вручную: их строит Python-генератор по описанию, он же раскладывает палитру со свечением и сразу рендерит иконки для интерфейса. Звук устроен так же: 64 эффекта и 6 музыкальных петель синтезированы на numpy, без единого сэмпла.
Баланс проверяется симуляцией: 200 прогонов модели игрока показывают, сколько времени уходит на каждый этаж и первое перерождение. Из неё же генерируются каталоги машин и монет для сервера.

В цифрах
- 200
- ботов в 25 комнатах держит одно ядро процессора, загрузка около 14%
- ~1 мс
- медианный ответ сервера на действие игрока под нагрузкой
- 271
- автотест на серверную логику: экономику, биржу, покупки, чат
- 0,85 КБ/с
- трафик на одного игрока, комфортно и для мобильного интернета
Нагрузочный тест на локальном стенде
- 12 машин в 6 тирах
- 25 монет
- 5 этажей
- 3 погоды
- 4 мутации
- 4 буста
- 10 скинов
- 64 звука
Нужна игра, бот или сервис? Опишите задачу, отвечу в течение дня.