Skip to content

sam2332/Rimworld-BrushTool

Repository files navigation

Quick Paint Terrain Brush Dev Tool

A comprehensive terrain painting toolkit for RimWorld map designers and developers. This mod provides advanced terrain painting tools including circular brushes, spray paint functionality, edge blending, line drawing, rectangle tools, and flood fill capabilities for creating natural, varied terrain patterns.

Features Overview

🎨 Circular Brushes - Full Coverage Terrain Painting

  • Seven brush sizes: Single cell, radius 1, 2, 4, 8, 16, and 32
  • Perfect circular coverage with radius-based positioning
  • Paint-while-dragging functionality for continuous painting
  • Visual preview with circular outline and cell highlights

🌿 Spray Paint Tools - Natural Terrain Variation

  • Light Spray Paint (5%): Ultra-sparse coverage for subtle terrain hints
  • Medium Spray Paint (10%): Medium sparse coverage for natural terrain mixing
  • Heavy Spray Paint (20%): Dense coverage for strong terrain variation
  • Randomized application creates realistic, organic terrain patterns
  • All radius sizes supported: Single cell through radius 32 for each intensity level

🌅 Edge Blender Tools - Intelligent Terrain Transitions

  • Smart boundary detection automatically finds terrain edges
  • Three blend strengths: Light (10%), Medium (30%), Heavy (60%)
  • Multiple radius options: 1, 2, 4, and 8 for different transition sizes
  • Contextual blending creates smooth, natural terrain transitions

📏 Line Tools - Precision Terrain Drawing

  • Two-click interface: Set start point, then end point to draw straight lines
  • All terrain types supported with dedicated menu per terrain
  • Perfect straight lines using Bresenham line algorithm
  • Visual preview shows line path before confirming

Rectangle Tools - Geometric Terrain Areas

  • Filled Rectangles: Complete area coverage for rooms, courtyards, and foundations
  • Border-Only Rectangles: Perimeter-only coverage for walls, fences, and outlines
  • Two-click interface: Set opposite corners to define rectangle area
  • Visual preview distinguishes between filled and border modes
  • All terrain types supported for both filled and border variants

🪣 Fill Tools - Flood Fill Connected Areas

  • Smart flood fill changes all connected cells of the same terrain type
  • Performance limited to 10,000 cells to prevent lag
  • Preview system shows affected areas under 500 cells
  • All terrain types supported for complete area transformation

Menu Structure

The mod organizes all tools under "Terrain Painter" in the Debug Menu:

Terrain Painter
├── Brushes
│   ├── Single cell → [All terrain types]
│   ├── Radius 1 → [All terrain types]
│   ├── Radius 2 → [All terrain types]
│   ├── Radius 4 → [All terrain types]
│   ├── Radius 8 → [All terrain types]
│   ├── Radius 16 → [All terrain types]
│   └── Radius 32 → [All terrain types]
├── Spray Paint
│   ├── Light Spray (5%)
│   │   ├── Single cell → [All terrain types]
│   │   ├── Radius 1 → [All terrain types]
│   │   └── [...] → [All terrain types]
│   ├── Medium Spray (10%)
│   │   ├── Single cell → [All terrain types]
│   │   └── [...] → [All terrain types]
│   └── Heavy Spray (20%)
│       ├── Single cell → [All terrain types]
│       └── [...] → [All terrain types]
├── Edge Blender Tools
│   ├── Light Blend (10%) → Radius 1, 2, 4, 8
│   ├── Medium Blend (30%) → Radius 1, 2, 4, 8
│   └── Heavy Blend (60%) → Radius 1, 2, 4, 8
├── Line Tools → [All terrain types]
├── Fill Tools → [All terrain types]
├── Rectangle Tools
│   ├── Filled Rectangles → [All terrain types]
│   └── Border Only Rectangles → [All terrain types]
└── Undo Tools
    ├── Undo Last Action
    └── Clear Undo History

Usage Guide

Getting Started

  1. Enable Development Mode in RimWorld options
  2. Open Debug Menu (F12 or debug icon)
  3. Search for "Terrain Painter" in the actions list
  4. Choose your tool type from the hierarchical menu

Using Brush and Spray Tools

  1. Navigate to Brushes or any Spray Paint category
  2. Select brush radius (Single cell to Radius 32)
  3. Choose terrain type from the submenu
  4. Click and drag on the map to paint terrain
  5. Right-click to cancel the active tool

Using Edge Blender Tools

  1. Navigate to Edge Blender Tools
  2. Select blend strength (Light, Medium, or Heavy)
  3. Choose radius (1, 2, 4, or 8)
  4. Click on terrain edges to automatically blend transitions
  5. The tool intelligently detects boundaries and creates smooth transitions

Using Line Tools

  1. Navigate to Line Tools
  2. Select terrain type from the menu
  3. Click first point on the map to set line start
  4. Click second point to set line end and draw the terrain line
  5. Right-click to cancel before setting the second point

Using Rectangle Tools

  1. Navigate to Rectangle Tools
  2. Choose rectangle type:
    • Filled Rectangles for complete area coverage
    • Border Only Rectangles for perimeter-only placement
  3. Select terrain type from the submenu
  4. Click first corner on the map to set rectangle start
  5. Click opposite corner to define the rectangle and apply terrain
  6. Right-click to cancel before setting the second corner

Using Fill Tools

  1. Navigate to Fill Tools
  2. Select terrain type you want to fill with
  3. Click on any terrain area to flood fill all connected cells of the same type
  4. Limited to 10,000 cells for performance (preview shown for areas under 500 cells)

Tips & Best Practices

  • Spray tools create more natural, varied terrain than solid brushes
  • Edge blenders work best on existing terrain boundaries for smooth transitions
  • Line tools are perfect for roads, rivers, or geometric terrain features
  • Rectangle tools excel at creating rooms, foundations, walls, and geometric areas
  • Fill tools excel at replacing large uniform areas quickly
  • Combine tools for complex terrain design (e.g., brush base terrain, spray variations, blend edges)
  • Use smaller brushes for detail work, larger for broad coverage
  • Preview systems help visualize changes before applying
  • Filled rectangles are ideal for floors, courtyards, and area coverage
  • Border rectangles are perfect for walls, fences, and outlines

Technical Features

  • Circular brush mathematics for perfect radius-based coverage
  • Optimized rendering with visual previews and highlighting
  • Smart flood fill algorithms with performance safeguards
  • Hierarchical menu system for organized tool access
  • Paint-while-dragging for smooth, continuous coverage
  • No external dependencies - uses only base RimWorld systems
  • Compatible with all terrain types defined in the game

Installation

  1. Subscribe on Steam Workshop or download from GitHub
  2. Enable in mod manager (no dependencies required)
  3. Restart RimWorld to ensure proper loading
  4. Enable Development Mode in options to access debug menu
  5. Find "Terrain Painter" in the debug actions list

Compatibility

  • RimWorld 1.6 fully supported
  • No known conflicts with other mods
  • Development mode required for access to tools
  • Works with modded terrains automatically

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published