Details

Title Разработка видеоигры с применением процедурной генерации уровней и вариаций ландшафта: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения» = Development of a video game using procedural level generation and landscape variations
Creators Дейниченко Алексей Сергеевич
Scientific adviser Леонтьева Татьяна Владимировна
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint Санкт-Петербург, 2026
Collection Выпускные квалификационные работы ; Общая коллекция
Subjects процедурная генерация ; roguelike ; godot ; gdscript ; рекурсивное размещение ; уровни подземелий ; procedural generation ; recursive room placement ; dungeon levels
Document type Bachelor graduation qualification work
Language Russian
Level of education Bachelor
Speciality code (FGOS) 09.03.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
DOI 10.18720/SPBPU/3/2026/vr/vr26-692
Rights Доступ по паролю из сети Интернет (чтение)
Additionally New arrival
Record key ru\spstu\vkr\40073
Record create date 4/20/2026

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Group Anonymous
Network Internet

Данная работа посвящена созданию прототипа roguelike видеоигры с алгоритмом рекурсивного размещения комнат на сетке 7×7 для генерации связных уровней подземелий. Реализована система автоматического создания топологии уровня с гарантированной связностью графа комнат и вариативным наполнением сценами, врагами и предметами. Задачи, которые решались в ходе исследования: 1. Анализ существующих подходов к процедурной генерации уровней в roguelike играх (Dungeon Crawl, Binding of Isaac, Hades). 2. Разработка алгоритма рекурсивного размещения комнат (Recursive Room Placement) с вероятностным ветвлением (p⊥=0.2) и временной сложностью O(M²). 3. Реализация системы на движке Godot 4.6 с использованием GDScript. 4. Создание игровой механики: боевой системы, системы здоровья, миникарты и переходов между комнатами через сигналы Godot. Работа выполнена с использованием игрового движка Godot 4.6, языка программирования GDScript и системы сигналов для слабосвязанной архитектуры. Разработан прототип с 12–15 комнатами на уровень, генерируемый за <100мс. Алгоритм обеспечивает связность (все комнаты доступны), контролируемую сложность (враги активируются по глубине уровня) и визуальное разнообразие (библиотека из 5+ сцен комнат). В результате создана полностью рабочая roguelike игра с процедурной генерацией, протестированная на совместимость с целевыми платформами. Алгоритм демонстрирует баланс между простотой реализации и разнообразием уровней, превосходя модульные подходы по структурной связности и графовые методы по скорости выполнения. Для достижения результатов использовались Godot Engine 4.6, GDScript, Aseprite, Sonnis и Git для версионности.

The given work is devoted to creating a roguelike video game prototype with a recursive room placement algorithm on a 7×7 grid for generating connected dungeon levels. A system for automatic level topology creation with guaranteed room graph connectivity and variable scene, enemy, and item population has been implemented. The research set the following goals: 1. Analysis of existing procedural level generation approaches in roguelike games (Dungeon Crawl, Binding of Isaac, Hades). 2. Development of Recursive Room Placement algorithm with probabilistic branching (p⊥=0.2) and time complexity O(M²). 3. Implementation of the system in Godot 4.6 using GDScript. 4. Creation of gameplay mechanics: combat system, health system, minimap, and room transitions via Godot signals. The work was carried out using Godot 4 game engine, GDScript programming language, and Godot signals system for loosely-coupled architecture. A prototype with 12–15 rooms per level was developed, generated in <100 ms. The algorithm ensures connectivity (all rooms accessible), controlled difficulty (enemies activate by level depth), and visual variety (library of 5+ room scenes). As a result, a fully functional roguelike game with procedural generation was created and tested for compatibility with target platforms. The algorithm demonstrates a balance between implementation simplicity and level diversity, surpassing modular approaches in structural connectivity and graph methods in execution speed. The following information technologies were used in development: Godot Engine 4.6, GDScript, Aseprite, Sonnis and Git for version control.

Network User group Action
ILC SPbPU Local Network All
Read
Internet Authorized users SPbPU
Read
Internet Anonymous

Access count: 0 
Last 30 days: 0

Detailed usage statistics