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 |
|
| Internet | Authorized users SPbPU |
|
| Internet | Anonymous |
|
Access count: 0
Last 30 days: 0