# PCG Analysis in Ultima Ratio Regum
> [!INFO] Parameter Design Analysis
> **Student**: Nikita Stulikov
> **Teacher**: Eric McQuiggan
> **Game**: [Ultima Ratio Regum](https://www.markrjohnsongames.com/games/ultima-ratio-regum/) (V 0.10.4)
> **Developer**: Mark R Johnson
>
> *October 2025*
## Introduction
Mark Johnson defines his project Ultima Ratio Regum (URR) as a "qualitative" procedural generation game, that is a "procedural generation concerned with producing the richly detailed cultural and social elements of game worlds – such as religious practices, interpersonal norms, and aesthetic preferences – as opposed to more traditional quantitative PCG which is concerned with the creation of dungeons, landscapes and so forth" (Jonson M. 2016). He considers a turn towards qualitative PCG as part of a broader shift from narrative to world-building in game design. In Johnson’s view, qualitative PCG can integrate more deeply into gameplay and adapt to particular play styles. URR is an effort to contribute to this dynamic via an attempt to create procedural languages, religions, and other sophisticated cultural elements. These will allow the generation of "procedural riddles, with meaningfully encrypted text, decipherable answers, and generated triggers that register when the player has actually done the thing the text of the riddle tells the player to do" (Johnson, 2024).
## Methodologies & Elements
URR uses a **tile-based** methodology combined with a **template-driven** methodology and **pseudo-random generators**. The generation of the game world happens linearly and irreversibly, from high-level to lower-level components. Lower-level game component are dependant on higher-level generators. They can read the output of higher-level generators and use it in making their decisions ("**Chains of meaning**") I.e. unfettered world map > locations influenced by local environment > cultural elements influenced by location > items referring to cultural and geographical conditions > languages and dialogue systems pull from all these elements. To avoid absurd combinations, Johnson introduces hand-picked **constrains** for lower-level components.
| Element | Methodology | Description | Illustration |
| ---------- | ----------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- |
| World map | Tile-based + Randomization | Each new playthrough happens in a new generated world-map of 250×250 tiles, where each of these tiles itself breaks into 200×200 tile spaces the player can traverse. Over 2.5 million tiles total.<br><br>The map generation is unfettered | ![[ATTACHMENTS/REFS/UltimaRatioRegum/WorldMap.png]] |
| Chunks | Tile-based + Template-driven + Randomization | The game uses pre-built chunks. The rules for connecting them vary in accordance with tile-placement rules. The pseudo-random number generator helps ensure variety. Next generators in the chain (see culture) add further detail. | ![[ATTACHMENTS/REFS/UltimaRatioRegum/Town_Larchmystery.png]]<br>![[ATTACHMENTS/REFS/UltimaRatioRegum/GameSpace.png]] |
| Cultures | Tile-based + Template-driven + Chains of meaning + Constrains + Randomization | Each world map has 18 countries. Each has a unique configuration of cultural elements (for details, see Player Agency section). Holistically, each culture of the country is defined by its tiles' position (hot climate, the proximity of water, etc.) Then a pseudo-random generator helps to decide a template for the culture. Constrains prevent the generation of absurd cultures (e.g. monk culture with no religion). Further detail is added through item generators (see below) | ![[ATTACHMENTS/REFS/UltimaRatioRegum/NomadicBurial.png]] |
| Items | Template-driven + Chains of meaning + Constrains + Randomization | -> Each item type (shields, cloth, buildings, etc.) have a hand-crafted template. Each has its own rules on the layout, size, shape, etc., and key features.<br><br>-> Key features (e.g., a crest on a shield) might have their own generators influenced by the parent-object.<br><br>-> Each item template (parent or child) gets influenced by higher-level generators. E.g., "Crests and cultural symbols and even the designs of furniture such as vases and chairs may refer to local flora or fauna", or dominant religion and military policy beliefs in the country. These cultural elements are generated in the previous (Culture) generator.<br><br>(Thompson, 2021) | ![[ATTACHMENTS/REFS/UltimaRatioRegum/Cloths.png]] |
| | | -> When specific options for items are selected, this prevents using some options, and enables others. E.g., graphics on a crest could carry "specific traits, such as the types of properties used in the language of the family motto or what the family perceives as their strength and virtues". But it wouldn't use the features associated with another family when it's already selected<br><br>(Thompson, 2021) | ![[ATTACHMENTS/REFS/UltimaRatioRegum/Keys.png]] |
| Characters | Template-driven + Chains of meaning + Constrains + Randomization | As with items, characters' appearance is determined by the "chains of meaning", i.e. higher-level generators. E.g., tattoos on the characters' faces are determined by religions, justice policies, and other cultural elements generated in the Culture step. | ![[ATTACHMENTS/REFS/UltimaRatioRegum/Faces.png]] |
| Languages | Syllable-based + Chains of meaning + Constrains + Randomization | Each culture has its own dialect of English with unique nouns which is achieved through a syllable-based generation. "Syllables are first created by lumping sets of letters together, and then names are crafted by multiple syllables stitched together. These names can be used for locations, objects and even people. The naming conventions can vary with each culture, given their stitch syllables in pairs or triplets" (Thompson, 2021)<br><br>For each culture, specific expressions (e.g. greetings) are generated. Based on a template, cultures have different manners of speech (wordy, or flowery, or direct, etc.) | ![[ATTACHMENTS/REFS/UltimaRatioRegum/Chat.png]] |
### Pipeline Methodologies
**Tackling 10k oats problem**
- The **chain of meaning** ensures that generators read the output of higher-level generators and, using this output in their own creative process, produce deep systemic relations between layers of content.
**Tackling conflicts between generators**
- Linear and irreversible design of generators. Once the generator is done, Johnson doesn't rebuild or refactor it.
- Careful consideration and hand-picked constrains for generators help to avoid logical incoherencies (e.g., theocracy that propagates the pluralism of beliefs).
## Player Agency
At the current release version (V 0.10.4), the player has a very limited impact on PCG. They can only decide on the initial spawn point. The player can input their cultural preference, and the game will spawn their avatar at a city that has the best match with their input. Therefore, the **granularity** of the player's choice is absent. Available cultural options to choose the spawn point are:
(1) Leadership
(2) Religion
(3) Foreign Policy
(4) Trade Policy
(5) Military Policy
(6) Cultural Character
(7) Intellectual Character
(8) Justice Policy
![[ATTACHMENTS/Justice.png]]
## Suggestions
Possibly because the game is still in development, there is not yet a feature that allows players to directly influence the procedural generation systems. The following suggestions outline potential ways to expand player agency.
- The player could be given the option to regulate the level of contrast between cultures. For example, with a high-contrast setting, some cultures might be distinctly pacifistic while others lean toward militarism. While this may reduce the realism of the game world, it could also lead to peculiar emergent dynamics. Some players could engage with the systems thoughtfully, others could toy with them, and still produce interesting results.
- With procedurally generated puzzles, players might be allowed to adjust their difficulty. Johnson notes that in URR, it’s not possible to look up puzzle solutions online. This is both a strength and a potential limitation of the gameplay experience, as it can lead to frustration if a player becomes stuck.
- One of the game’s core appeals lies in its emergent cultural systems. Introducing an element of natural simulation could make this complexity even more captivating. For instance, if the world included procedurally generated epidemics, different cultures might respond to them in distinct ways. Such disasters could leave traces in cultural histories, artefacts, and languages. A collective trauma could further enrich the dramatic tension of the world’s story.
## Resources
- Johnson M. (2016) *Generation Next, Part 4: Procedural Generation's Future*. Rock, Paper, Shotgun. [URL](https://www.rockpapershotgun.com/the-future-of-procedural-generation)
- Thompson T., interviewing Johnson M. (2021) *The 10-Year Journey of Ultima Ratio Regum: The Culture Generating Roguelike*. Gamasutra. [URL](https://www.gamedeveloper.com/design/the-10-year-journey-of-ultima-ratio-regum-the-culture-generating-roguelike?utm_source=chatgpt.com), [YouTube version](https://www.youtube.com/watch?v=giIIoIKntnw&t=970s)
- Johnson M. (2024) *URR* (Reddit Pos). [URL](https://www.reddit.com/r/roguelikedev/comments/1aepg8p/2024_in_roguelikedev_ultima_ratio_regum/)
- [URR Official Page](https://www.markrjohnsongames.com/games/ultima-ratio-regum/)
- [Rock, Paper, Shotgun on URR](https://www.rockpapershotgun.com/interview-ultima-ratio-regum-a-generated-4x-roguelike)