Procedurally generating game content with the use of L-Systems

Modern-day game projects rely on teams of highly skilled, multidisciplinary teams, which include story writers and graphic designers. These projects also present a number of problems during development, such as issues relating to the budget, quality of the game and scheduling [1]. Bearing in mind the resulting pressure that game developers generally experience, this project seeks to contribute towards alleviating some of this pressure.

The proposed solution is largely based on the application of procedural content generation (PCG) through L-systems. PCG is a technique used to generate game content algorithmically, rather than generating this content manually. L-Systems were introduced by Aristid Lindenmayer as a method of simulating the growth of multicellular organisms, such as plants. Its applications have been extended to other areas, including game-content generation, in view of the string rewriting nature of L-Systems.

The approach chosen for this project was to develop a two-dimensional rogue-like dungeon game that utilises L-Systems as a framework to generate the level design of the dungeon in the game, creating a main path and a number of branching paths. The main path would lead to a boss room, which is the only way to finish the game. However, the branching paths may offer power-ups that would benefit the player throughout the game. The rooms in either path option would need to be generated such that every room would be accessible through at least one other room. The rooms of the main path should be connected to one another meaning that, should they choose to, players could ignore the sub-paths generated by the algorithm, and head straight to the boss room.

Figure 1. String-rewriting nature of L-Systems [3]
Figure 2. A tree generated in Unity3D using L-Systems [2]

References/Bibliography

1. F. Petrillo, M. Pimenta, F. Trindade, and C. Dietrich, “What went wrong? A survey of problems in game development,” Comput. Entertain., vol. 7, no. 1, pp. 1–22, Feb. 2009, doi: 10.1145/1486508.1486521.
2. P. Fornander, “Game Mechanics Integrated with a Lindenmayer System,” Blekinge Institute of Technology, 2013
3. “Enhancing Computational Thinking with Spreadsheet and Fractal Geometry: Part 4 Plant Growth modelling and Space Filling Curves” – Scientific Figure on ResearchGate. Available from: https://www.researchgate.net/figure/Rule-Interpretation-of-Bracketed-L-System-With-a-use-of-the-rule-we-obtain-an-order-of_fig11_258652653

Student: Miguel Vella
Course: B.Sc. IT (Hons.) Computing and Business
Supervisor: Dr Clyde Meli
Co-supervisor: Dr Michel Camilleri