Вся подборка по рогаликам Предыдущая часть: В предыдущей части я рассматривал команды обновления между клиентом и сервером, но чтобы их по-настоящему сделать, нужно чтобы было что обновлять. То есть надо построить уровень. Я также упоминал на подготовительных этапах, что в Пироге предполагаются тематические уровни, дизайн которых будет существенно отличаться, а так как они процедурно генерируемые, то должны отличаться и алгоритмы, которые их генерируют. Начать я решил с чего попроще, а именно стандартного алгоритма Rogue. Он генерирует 3*3 прямоугольные комнаты, чьи размеры и пропорции выбираются случайно, а также некоторые комнаты могут отсутствовать. Между комнатами строятся коридоры. Я заглянул в исходный код Rogue, чтобы убедиться, что не упускаю что-то важное, а также проверить, насколько мои предположения об алгоритме расходятся с реальностью. Сами комнаты действительно генерируются как случайные прямоугольники, при этом есть карта уровня, которая покрывает весь алфавитно-цифрово