dracblaustudio-assets

Procedural Paths Generator — Documentation

Overview

Requirements

Quick Start

  1. Open the Demo scene and enter play time.
  2. Click the top left button to create a new map. Click multiple times and see how they change.
  3. Experiment with the parameters in the ProceduralMapGenerator component (more on that later).
  4. When you like a configuration, create a Map SO and copy the parameters used.
  5. Drag the Map prefab from the demo into your project, or recreate your own prefab following the demo structure.

Demo Breakdown

The demo contains two key pieces: 1) Map prefab. A single prefab that groups everything the generator needs:

2) UI Buttons Buttons wired to call Generate and Reset at runtime. You can call the same public methods from your own UI or game flow.

Tools & Features

1. ProceduralMapsGenerator

Generates a random map from parameters. Two modes:

General Parameters:

Map Parameters (overrides when not using Map SO):

Map Difficulty Filter (optional):

Enable Should Filter Map Difficulty to keep only maps within a difficulty range computed by a heuristic. The current implementation estimates difficulty based on path proximity, tower coverage, and overlap. You can extend CalculateMapDifficulty() to fit your game. -Min / Max Diff Metrics — Target difficulty range.

2. MapSO (Map ScriptableObject)

This is how you can store data about map’s creation blueprints. Pre-define the following:

3. MapTilesPathSO

Stores tiles used per path shape/type, for example:

4. ObstaclesManager

A singleton that spawns obstacles/decoration around the generated paths. Called by ProceduralMapsGenerator; tweak amounts here.

5. MapCleaner

Provides ResetMap() to remove all generated tiles, nodes, and obstacles.

6. Other Utils Codes

Helper functions used by ProceduralMapsGenerator; kept separate for clarity.

This package works great with

Support

Email dracblaustudio@gmail.com with: