Архив за 27 июня 2019 - 4

Генерируем тайловые уровни и прячем квадраты от игрока - 1

Генерация уровней в Unexplored 2

Мы очень гордимся генератором уровней игры Unexplored 2, это программа, отвечающая всем современным требованиям. В посте я расскажу о том, как создаются уровни игры.

Нам не пришлось заново изобретать велосипед. В Unexplored 1 мы уже создали техники, которые сильно повлияли на успех первой игры. Unexplored 2 просто продолжила начатое. Фундамент нашей технологии состоит из двух частей: мы применяем многоэтапную генерацию, которая почти имитирует процесс, очень похожий на работу живого дизайнера уровней. Поверх него мы используем технику под названием "циклическая генерация подземелий", которая гораздо лучше справляется с генерацией естественно выглядящих уровней, чем большинство стандартных приложений генеративного создания контента. В этом посте я расскажу о первом аспекте. Адаптация циклической генерации подземелий к Unexplored 2 будет темой будущего поста.

Имитация «человеческого» дизайна уровней

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

image Привет, Хаброжители! Эта книга подойдет для любого разработчика, который хочет разобраться в потоковой обработке. Понимание распределенного программирования поможет лучше изучить Kafka и Kafka Streams. Было бы неплохо знать и сам фреймворк Kafka, но это не обязательно: я расскажу вам все, что нужно. Опытные разработчики Kafka, как и новички, благодаря этой книге освоят создание интересных приложений для потоковой обработки с помощью библиотеки Kafka Streams. Java-разработчики среднего и высокого уровня, уже привычные к таким понятиям, как сериализация, научатся применять свои навыки для создания приложений Kafka Streams. Исходный код книги написан на Java 8 и существенно использует синтаксис лямбда-выражений Java 8, так что умение работать с лямбда-функциями (даже на другом языке программирования) вам пригодится.
Читать полностью »

Передовая экипировка солдата «Сотник» появится в 2025 году

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

Фотографии Ростех / Антон Тушин

Проект носит название «Сотник». Предполагается, что эта передовая экипировка придёт на смену «Ратнику», но на вооружение российских солдат она придёт не ранее середины следующего десятилетия (2025 год).

Читать полностью »

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

Мутационное тестирование: тестируем тесты - 1

Написание тестов должно вселять в нас уверенность в корректной работе кода. Часто мы оперируем степень покрытости кода, и когда достигаем 100 %, то можем сказать, что решение корректное. Уверены в этом? Быть может, есть инструмент, который даст более точную обратную связь?
Читать полностью »

Чиновники и партнеры Facebook сомневаются в криптовалюте Libra - 1

На прошлой неделе Facebook заявил, что 27 компаний стали партнерами криптовалюты Libra, в том числе такие известные предприятия, как Visa, Mastercard и Uber. Тем не менее, некоторые из компаний-партнеров осторожно подходят к Libra. Они подписали соглашения с Facebook на относительно свободных условиях, которые не обязывают их использовать или продвигать цифровой токен, и могут легко отступить в случае проблем, пишет газета New York Times.

Как утверждают в NYT, компании не решаются слишком тесно связываться с Libra из-за проблем Facebook с регуляторами по всему миру, шаткой репутации компании в отношении конфиденциальности и неопределенности с законным статусом криптовалют.
Читать полностью »

Двухфакторная аутентификация на сайте с использованием USB-токена. Теперь и для Linux - 1

В одной из наших предыдущих статей мы рассказывали про важность двухфакторной аутентификации на корпоративных порталах компаний. В прошлый раз мы продемонстрировали, как настроить безопасную аутентификацию в web-сервере IIS.

В комментариях нас просили написать инструкцию для самых распространенных web-серверов под Linux — nginx и Apache.

Вы просили — мы написали.
Читать полностью »

Redmi K20 против Samsung Galaxy A70 и A50: сравнение камер

Samsung Galaxy A70 оснащен тройной задней камерой с модулями 32, 5 и 8 мегапикселей и фронтальной 32-мегапиксельной камерой. Galaxy A50 же использует тройную заднюю камеру с модулями 25, 5 и 8 Мп и фронтальную камеру с разрешением 25 Мп. Смартфон Redmi K20 оснащен тройной задней камерой с модулями 48, 13 и 8 Мп и 20-мегапиксельной селфи-камерой.

Ролик, посвященный тесту, был опубликован на YouTube-канале Zeibiz.

Читать полностью »

На международном форуме Positive Hack Days 2019 впервые проходил конкурс IDS Bypass. Участникам надо было исследовать сегмент сети из пяти узлов, дальше либо эксплуатировать уязвимость сервиса, либо выполнить заданное условие (например, послать определенный HTTP-ответ) и таким образом добыть флаг. Найти эксплойт было легко, но задачу усложняла IDS: система стояла между участниками и узлами и проверяла каждый сетевой пакет. Атакующие видели на дашборде, если сигнатура блокировала их соединение. Ниже я расскажу подробно о самих заданиях и разберу их решение.

Разбор конкурса IDS Bypass на Positive Hack Days 9 - 1Читать полностью »

Компания Sony работает над консолью PlayStation следующего поколения, которая выйдет только осенью следующего года. Новинка пока даже не получила коммерческого названия (PlayStation 5 она пока называется условно), но в Сети уже неоднократно появлялись подробности о ней. На сей раз сейчас надежный источник раскрыл, насколько эти модели различаются по производительности.


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js