Lawlzee-ProceduralStages icon

ProceduralStages

Adds dynamically generated stages to Risk of Rain 2. Now featuring a new terrain type: tunnel caves!

Last updated 2 weeks ago
Total downloads 25276
Total rating 23 
Categories Mods Maps Client-side Server-side
Dependency string Lawlzee-ProceduralStages-1.10.0
Dependants 2 other packages depend on this package

This mod requires the following mods to function

bbepis-BepInExPack-5.4.2108 icon
bbepis-BepInExPack

Unified BepInEx all-in-one modding pack - plugin framework, detour library

Preferred version: 5.4.2108
RiskofThunder-HookGenPatcher-1.2.3 icon
RiskofThunder-HookGenPatcher

MMHOOK generation at runtime.

Preferred version: 1.2.3
Rune580-Risk_Of_Options-2.7.0 icon
Rune580-Risk_Of_Options

A convenient API for adding BepInEx ConfigEntry's to a option menu

Preferred version: 2.7.0
RiskofThunder-R2API_Language-1.0.1 icon
RiskofThunder-R2API_Language

API for modifying the language localisation of the game

Preferred version: 1.0.1

README

Procedural Stages

Procedural Stages replaces conventional static terrains with procedurally generated environments, offering a fresh and varied experience with each stage while striving to maintain the familiar feel of vanilla stages.

Changelog

Features

  • Diverse Terrain Types: Explore islands, open caves, and tunnel caves, each dynamically generated for a fresh adventure.
  • Balanced Gameplay: Despite the procedural generation, the stages are balanced to feel like vanilla stages.
  • Multiplayer Support: Enjoy the procedural adventure with friends.
  • Integration with Simulacrum: Seamlessly compatible with Simulacrum.
  • Adaptive Map Size: The map dynamically adjusts in size based on the stage number.
  • Dynamic Map Themes: Experience different visual themes with every stage.
  • Stage-Specific Interactables: Encounter stage-specific elements such as pressure plates, timed security chests, legendary chests, and the stage 4 alloy vulture nests.
  • Random Decoration Placement: Discover unique environments with randomly placed decorations.
  • Randomized Enemy Pool: Experience a dynamically curated assortment of enemies.
  • Varied Music Selection: Immerse yourself in randomly selected music tracks.
  • Support for 'Judgement' Mod: Compatible with the Judgement mod.

Terrain types

Island stages

Image3 Image4 Image6

Open caves stages

Image5 Image2 Image1

Tunnel caves stages

Image5 Image2 Image1

More screenshots are available here.

Videos

Below are several videos that demonstrate the mod in action:

Configuration

You can edit the configuration in Settings > Mod Options > ProceduralStages. All configurations can be adjusted at any time, even in the middle of a run. In multiplayer, the host's configuration is used.

| Category | Name | Default value | Description | |---------------|----------------------|------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | | Configuration | Infinite map scaling | Disabled | If enabled, the stage size scaling will not be reset every loop. Exercise caution when utilizing this feature, as it may lead to increased map generation time and a decrease in framerate. | | Stage [1,5] | <Terrain type> map spawn rate | See table below | Specifies the percentage of maps that will be generated with the <Terrain type> for stage 1. If the total percentage for stage X is less than 100%, normal stages may also spawn. If the total percentage for stage X is 0%, only normal stages will spawn.| | Debug | Stage seed | | Specifies the stage seed. If left blank, a random seed will be used. |

Here are the default spawn rates for all terrain types:

Stage Open Caves Tunnel Caves Islands
Stage 1 40% 40% 20%
Stage 2 40% 20% 40%
Stage 3 30% 60% 10%
Stage 4 20% 10% 70%
Stage 5 20% 40% 40%

Report an issue

If you encounter any issues, feel free to reach out to me on Discord (@Lawlzee) or create a GitHub issue. Please include your log file; it is really useful for troubleshooting.

Credits stuff

Stage number Interactable credits Monster credit
1 225 150
2 300 180
3 375 210
4 425 240
5 500 270

Todo list

  • Fix the bug where the player sometime gets stuck in the drop pod.
  • Add biomes/map types (snow, grass, desert, etc)
  • Add props clustering
  • Add floating island map?
  • Replace special stages with procedural maps (Gilded Coast, Void Fields, Void Locus)
  • Improve compatibility with Ro2API.DirectorAPI
  • Randomize more terrain settings
  • Create a random DccsPool instead of reusing the DccsPools from the game
  • Replace the moon with a procedurally generated stage
  • Randomize stage names
  • Address the issue of getting stuck in holes in the map.
  • Enhance stage creation performance.
  • Enhance the uniqueness of stages.

Algorithms used

This section includes the algorithms utilized for implementing procedural terrain generation. If you are not a programmer, feel free to skip this section.