promotional bannermobile promotional banner

FW Paint

Client first mod, paint block gradients and 3D-noise fills from your inventory.
Back to Files

fw-paint-neoforge-2.0.0-beta.1.jar

File namefw-paint-neoforge-2.0.0-beta.1.jar
Uploader
faxwangfaxwang
Uploaded
Jul 26, 2026
Downloads
15
Size
235.8 KB
Mod Loaders
NeoForge
File ID
8511531
Type
R
Release
Supported game versions
  • 26.2

Curse Maven Snippet

NeoForge

implementation "curse.maven:fw-paint-1594231:8511531"

Learn more about Curse Maven

What's new

FW Paint v2.0.0-beta.1

The palette release (beta). The Gradient and Noise Paint tabs are gone — in their place, Palettes: named, saved block ramps you build once and reuse for both gradient and noise painting. This is a beta of a fundamentally new model; the full design lives in docs/v2-palette-spec.md.

Targets (unchanged): Minecraft 26.2 · Fabric Loader 0.19.3+ · Fabric API for 26.2 (Fabric jar only) · Java 25.

Palettes

  • The new Palette tab lists every saved palette — name + segment sprites per row, one row expandable into a full settings summary. Use / Edit / Delete (with confirmation) above the list; missing-block palettes get a red border and list exactly what's missing.
  • Palettes persist in their own config/fw-paint-palettes.json. Saving activates the palette; a new cycle-palette keybind (default B) steps through them in-game, and the HUD shows the active palette's condensed sprites + name.

The editor

  • Two live previews up top — the gradient cylinder and the noise cube side by side, each expandable; both respond to Variation / Chaos / Step length. Name row with unique-name save (Untitled (n) fallback) and a separator; the whole page scrolls.
  • Columns: grouped settings left ("Gradient & noise" / "Noise only"), the colour-sorted source list middle (double-click or drag to add; right-click bans a block from Auto picks), the segment strip right with labels on its right (tight packing that never leaves the strip, marquee for long names).
  • Strip interactions: drag segments to reorder (only the swapping pair moves), drag sideways out to remove, pointed stop handles resize shares (Curve → Custom), arrow keys / Delete on the selected segment, move/resize mouse cursors, an insertion caret when dragging blocks in.
  • Order and Curve are icon buttons (palette/sun + asc/desc arrow; the curve drawn as its own line; "C" for Custom) rendered from live state; they disable with too few segments, with hover hints saying why.
  • Help is a small circled-? per control — hover or click for a popup describing what the control is currently set to; nothing yellow is permanently plastered on the screen.

Automatic segments

  • The crosshatched wildcards Auto colour / Auto brightness resolve to exactly one deterministic block each at paint time: start-of-strip reads the block you started on, end-of-strip scans to an end marker or first solid block — and when there's nothing to find, they pick the opposite of the start (lightest↔darkest for brightness, furthest colour by Oklab for colour) so the ramp still spans. Middle autos interpolate between neighbours.
  • In the editor the crosshatch is tinted with representative colours (blends between neighbouring statics; a stable rainbow / shade ramp for all-Auto strips) — display only, and visible on the strip, previews, palette list, HUD, and quick controls.
  • Right-click blocks in the editor's list to exclude them from Auto resolution (saved on the palette).

Painting behaviour

  • Sizing modes replace Max steps: Min blocks, Fill space, Set steps.
  • Marker anchoring, single/face/3D, region fills, and gradient memory all still work — memory also resets when you switch or edit palettes, and clicking a finished gradient starts a fresh one on top instead of doing nothing.
  • Honest ramps: running out of a palette block stops the paint with '<palette>': out of X — no silent substitutions. Missing blocks at press time refuse to paint (or skip, via the new Settings toggle). 3D paints must end in a real block (Auto at the start is fine).

The rest of the screen

  • New Paint tab — the hotkey's landing page: buttons mirroring the HUD for paint type, placement mode, and the active palette (shows the solid selection state while Solid is active). The per-tab Use buttons are gone.
  • Solid tab redesigned: left-click selects (again clears), right-click excludes; a big centred preview of the selected block (a large ? when the mode picks at click time); editor-style list.
  • All tabs sit on a subtle dark page underlay; brighter headings/hints throughout.

Retired (v1 → v2)

  • The Gradient/Noise tabs, [S]/[E]/✓/✗ assign buttons, required/excluded lists, Pick mode, the From: Markers toggle, Pixel %, and the top-%/diff gradient modes. Explicit segments + Automatic wildcards + the Order toggle cover these more directly.
  • No config migration: v1 gradient settings are ignored. First run starts with no palettes and the mod guides you — the HUD points at the K screen, and with no tool assigned the screen opens straight on Settings.

Fixes along the way

  • The Automatic crosshatch is a texture asset (the per-pixel version dragged the UI down).
  • Common's assets (lang, sprites) are now visible in the Fabric dev runtime, not just shipped jars.

Beta notes

Please report anything odd in the editor interactions (drag-reorder, drag-out removal, stop handles) and Automatic resolution choices — this is the release's riskiest ground.

This mod has no related projects