ProSewers icon

ProSewers -----

Procedural Underground Sewer or caves Generator




ProSewers Documentation
Complete Admin Guide / Guía completa de administración

Paper 1.21.x • Java 21 • English & Spanish



[hr]

1. Overview

ProSewers is a procedural sewer generation plugin for Minecraft Paper servers.

It allows administrators to create sewer nodes on the surface of a city and connect them underground. The plugin automatically generates large walkable tunnels, access shafts, manholes, underground chambers, water canals, pipes, leaks, dirty walls and decorative details.

The main goal is to create playable underground areas for roleplay servers.

Players can use these sewers for:
  • Police chases
  • Escapes
  • Secret routes
  • Criminal hideouts
  • Rat-infested areas
  • Maintenance worker roleplay
  • Exploration
  • Events

[hr]

2. Requirements

  • Server software: Paper
  • Minecraft version: 1.21.1
  • Java version: Java 21
  • Dependencies: None
  • Recommended: Use WorldEdit or backups before generating large city networks

[hr]

3. Installation

  1. Download the plugin JAR.
  2. Place it inside your server's /plugins folder.
  3. Start or restart the server.
  4. The plugin will create its folder:
    Code (Text):
    plugins/ProSewers/
  5. Edit the configuration:
    Code (Text):
    plugins/ProSewers/config.yml
  6. Reload the plugin:
    Code (Text):
    /prosewers reload

[hr]

4. Files

The plugin uses these files:

Code (Text):
plugins/ProSewers/config.yml
plugins/ProSewers/nodes.yml
plugins/ProSewers/messages_es.yml
plugins/ProSewers/messages_en.yml
config.yml
Main configuration file. Controls generation, materials, depth, tunnel size, pipes, lighting, history and language.

nodes.yml
Stores all sewer nodes and their connections.

messages_es.yml
Spanish messages.

messages_en.yml
English messages.

[hr]

5. Basic Concept

A sewer network is made of nodes.

A node is created on the surface, usually on a road, sidewalk, street corner or city point.

Each node stores:
  • World
  • Surface X, Y, Z
  • Depth
  • Generated sewer Y position
  • Connections to other nodes

The underground sewer position is calculated like this:

Code (Text):
Sewer Y = Surface Y - Depth
Default depth:

Code (Text):
30 blocks
Example:

Code (Text):
Surface Y: 75
Depth: 30
Sewer Y: 45
This means the manhole is on the surface, but the sewer chamber is generated 30 blocks below it.

[hr]

6. First Steps

Create a node where you are standing:

Code (Text):
/prosewers node create central_avenue
Create another node:

Code (Text):
/prosewers node create police_station
Connect both nodes and generate the tunnel:

Code (Text):
/prosewers connect central_avenue police_station true
Teleport to the underground sewer of a node:

Code (Text):
/prosewers node tp central_avenue sewer
Teleport to the surface position of a node:

Code (Text):
/prosewers node tp central_avenue surface
[hr]

7. Commands

General Commands

Code (Text):
/prosewers help
Shows the command list.

Code (Text):
/prosewers reload
Reloads the configuration and language files.

Code (Text):
/prosewers undo
Reverts the last generation action.

Code (Text):
/prosewers redo
Restores the last undone generation action.

[hr]

Node Commands

Code (Text):
/prosewers node create <id> [depth]
Creates a sewer node at your current location.

Example:

Code (Text):
/prosewers node create main_street
With custom depth:

Code (Text):
/prosewers node create main_street 35
Code (Text):
/prosewers node delete <id>
Deletes a node from storage.

Example:

Code (Text):
/prosewers node delete main_street
Code (Text):
/prosewers node list [page]
Lists all created nodes.

Example:

Code (Text):
/prosewers node list
/prosewers node list 2
Code (Text):
/prosewers node info <id>
Shows detailed information about a node.

Example:

Code (Text):
/prosewers node info main_street
Code (Text):
/prosewers node tp <id> [surface|sewer]
Teleports you to a node.

Examples:

Code (Text):
/prosewers node tp main_street
/prosewers node tp main_street surface
/prosewers node tp main_street sewer
Code (Text):
/prosewers node setdepth <id> <depth>
Changes the depth of an existing node.

Example:

Code (Text):
/prosewers node setdepth main_street 30
[hr]

Connection Commands

Code (Text):
/prosewers connect <nodeA> <nodeB> [generate]
Connects two nodes.

Example without generation:

Code (Text):
/prosewers connect main_street city_hall
Example with generation:

Code (Text):
/prosewers connect main_street city_hall true
Code (Text):
/prosewers disconnect <nodeA> <nodeB>
Removes a connection between two nodes.

Example:

Code (Text):
/prosewers disconnect main_street city_hall
Code (Text):
/prosewers auto <nodeId> [range]
Automatically connects a node to nearby nodes within the configured or provided range.

Example:

Code (Text):
/prosewers auto main_street 80
[hr]

Generation Commands

Code (Text):
/prosewers generate node <id>
Generates the underground chamber, manhole and access shaft for a node.

Example:

Code (Text):
/prosewers generate node main_street
Code (Text):
/prosewers generate link <nodeA> <nodeB>
Generates the tunnel between two connected nodes.

Example:

Code (Text):
/prosewers generate link main_street city_hall
Code (Text):
/prosewers generate all
Generates all nodes and all existing connections.

[hr]

8. Permissions

Code (Text):
prosewers.admin
Gives access to every ProSewers command.

Recommended for:
  • Owners
  • Administrators
  • Builders
  • Developers

[hr]

9. Default Configuration Example

Code (Text):
settings:
language: es
default-depth: 30
max-connections-per-node: 4
auto-save: true
batch-size: 900
ticks-between-batches: 1

generation:
tunnel:
width: 9
height: 7
floor-thickness: 1
ceiling-thickness: 1
wall-thickness: 1
central-water-channel: true
water-channel-width: 3
side-walkway-width: 2
min-light-spacing: 9
supports-every: 7
side-hiding-spots: true
hiding-spot-chance: 0.12

node-room:
radius: 6
height: 7
make-intersection-room: true

access-shaft:
enabled: true
manhole-material: IRON_TRAPDOOR
shaft-width: 3
ladder-material: LADDER

slopes:
enabled: true
max-step-height: 1
landing-every: 12
generate-transition-rooms: true

palette:
floor:
- DEEPSLATE_BRICKS
- CRACKED_DEEPSLATE_BRICKS
- DEEPSLATE_TILES
- TUFF_BRICKS
- MOSSY_STONE_BRICKS
walls:
- DEEPSLATE_BRICKS
- CRACKED_DEEPSLATE_BRICKS
- MOSSY_COBBLESTONE
- COBBLESTONE
- TUFF_BRICKS
ceiling:
- DEEPSLATE_TILES
- CRACKED_DEEPSLATE_TILES
- DEEPSLATE_BRICKS
dirty:
- MUD
- GRAVEL
- COARSE_DIRT
- ROOTED_DIRT

pipes:
enabled: true
side-pipes: true
pipe-material: COPPER_BLOCK
aged-pipe-material: EXPOSED_COPPER
grate-material: IRON_BARS
water-leaks: true
water-leak-chance: 0.18
pipe-every: 10

history:
enabled: true
max-actions: 20
[hr]

10. Generation Details

Large Tunnels

By default, tunnels are large enough for roleplay movement.

They include:
  • Side walkways
  • Central water canal
  • High ceiling
  • Decorated walls
  • Support columns
  • Lighting
  • Pipes
  • Dirty details

Node Chambers

Each node creates an underground chamber below the surface point.

These chambers are useful as:
  • Intersections
  • Meeting points
  • Escape points
  • Combat areas
  • Maintenance rooms
  • Mob encounter areas

Pipes and Water Leaks

The plugin can generate side pipes connected to the sewer walls.

These pipes simulate:
  • Drainage systems
  • Water coming from buildings
  • Broken city pipes
  • Dirty underground infrastructure

Some pipes can leak water into the sewer.

Slopes and Height Differences

Nodes can be created at different surface heights.

Example:

Code (Text):
Node A surface Y: 75
Node B surface Y: 90
With default depth 30:

Code (Text):
Node A sewer Y: 45
Node B sewer Y: 60
The plugin creates a tunnel path that can go up and down to connect both sewer levels.

This prevents broken connections when the city terrain has different heights.

[hr]

11. Recommended Workflow

  1. Walk through your city streets.
  2. Create one node at each important road point.
  3. Use short and clear node IDs.
  4. Connect nearby nodes first.
  5. Generate one link and inspect it.
  6. Adjust tunnel width, height and materials if needed.
  7. Use /prosewers undo if a generation does not look good.
  8. Generate the rest of the network.

Example city workflow:

Code (Text):
/prosewers node create spawn_road
/prosewers node create police_station
/prosewers node create hospital
/prosewers node create metro_entrance
/prosewers node create industrial_zone

/prosewers connect spawn_road police_station true
/prosewers connect police_station hospital true
/prosewers connect hospital metro_entrance true
/prosewers connect metro_entrance industrial_zone true
[hr]

12. Undo and Redo

ProSewers stores generated block changes in memory.

Use:

Code (Text):
/prosewers undo
To revert the latest generation.

Use:

Code (Text):
/prosewers redo
To restore it.

This is useful when:
  • A tunnel generated too close to another build.
  • You want to test a different width or height.
  • A connection was generated in the wrong area.
  • You want to preview different styles.

Important: Undo/redo history is stored in memory and may reset after a server restart.

[hr]

13. Performance Tips

For large cities, avoid generating everything at once until your configuration is final.

Recommended:
  • Generate one node first.
  • Generate one connection first.
  • Inspect the result.
  • Use backups before generating a full network.
  • Keep batch size reasonable.
  • Use /prosewers generate all only after testing.

Recommended batch settings:

Code (Text):
batch-size: 900
ticks-between-batches: 1
If your server has lag, lower the batch size:

Code (Text):
batch-size: 400
ticks-between-batches: 2
[hr]

14. Spanish Guide / Guía en Español

ProSewers permite crear redes de alcantarillado subterráneas para ciudades modernas de roleplay.

El sistema funciona creando nodos en la superficie. Cada nodo se proyecta hacia abajo según la profundidad configurada. Por defecto, la alcantarilla se genera 30 bloques debajo de la superficie.

Code (Text):
Y de alcantarilla = Y de superficie - profundidad
Ejemplo:

Code (Text):
Superficie Y: 80
Profundidad: 30
Alcantarilla Y: 50
Luego puedes conectar nodos para generar túneles subterráneos.

[hr]

Comandos principales en español

Crear un nodo:

Code (Text):
/prosewers node create avenida_principal
Crear un nodo con profundidad personalizada:

Code (Text):
/prosewers node create avenida_principal 35
Conectar dos nodos y generar el túnel:

Code (Text):
/prosewers connect avenida_principal hospital true
Teletransportarse a la alcantarilla:

Code (Text):
/prosewers node tp avenida_principal sewer
Teletransportarse a la superficie:

Code (Text):
/prosewers node tp avenida_principal surface
Generar una conexión:

Code (Text):
/prosewers generate link avenida_principal hospital
Generar todo:

Code (Text):
/prosewers generate all
Deshacer la última generación:

Code (Text):
/prosewers undo
Rehacer la última generación:

Code (Text):
/prosewers redo
[hr]

Ideas para roleplay

Puedes usar las alcantarillas para:

  • Rutas de escape de criminales.
  • Persecuciones policiales bajo la ciudad.
  • Zonas infestadas de ratas.
  • Misiones de mantenimiento.
  • Bases ocultas.
  • Entradas secretas.
  • Eventos de terror.
  • Túneles abandonados.
  • Zonas de contrabando.
  • Accesos ocultos a edificios.

[hr]

15. Troubleshooting

The tunnel generated too small.

Increase:

Code (Text):
generation.tunnel.width
generation.tunnel.height
The tunnel generated too deep or too high.

Change:

Code (Text):
settings.default-depth
Or set a custom depth per node:

Code (Text):
/prosewers node setdepth <id> <depth>
The generation caused unwanted terrain damage.

Use:

Code (Text):
/prosewers undo
I changed config but nothing changed.

Use:

Code (Text):
/prosewers reload
Then generate again.

Old config does not include new options.

Stop your server, rename the old config and restart:

Code (Text):
plugins/ProSewers/config.yml
The plugin will generate a fresh configuration.

[hr]

16. Final Notes

ProSewers is designed for builders and roleplay administrators who want their city to feel alive above and below ground.

Use it to create a hidden underground layer full of routes, danger, secrets and opportunities for player stories.


Your city has streets. Now it has sewers too.



Support:

https://discord.com/invite/HeMT8p7UCy


━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


Support

Need help installing, configuring?

Join our Discord Support Server

Resource Information
Author:
----------
Total Downloads: 3
First Release: Jun 9, 2026
Last Update: Jun 9, 2026
Category: ---------------
All-Time Rating:
0 ratings
Find more info at discord.gg...
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings