Description
THIS IS THE PORTING OF THE JOY OF PAINTING MOD, FROM FABRIC TO NEOFORGE. THE OWNER OF THE ORIGINAL MOD IS xerca0, ALL THE CREDITS BELONGS TO HIM. I ported the mod and made a chage to help server performance, transorming the paintings into blocks, to prevent lag.
Description
This mod lets you craft a blank canvas and a palette, with which you can paint your own pictures and hang them on a wall like the vanilla paintings. Let your creativity roam free or paint memes and experience the joy of painting.
https://www.youtube.com/watch?v=8DOCnBgk3a0
I invite everyone to look ath the ORIGINAL MOD for the complete description.
What's New in This Port
This is a NeoForge 1.21.1 port of the original (Fabric) mod, with a major architectural rework and a set of survival-focused features on top. Everything new is off or non-invasive by default, so it won't disturb existing worlds unless you opt in.
Major Change: Paintings Are Now Blocks
The single most important difference from the original: paintings are no longer entities — they are real blocks (backed by a block entity), and larger canvases occupy multiple blocks.
Why it matters:
- Much better performance and server stability — worlds filled with paintings no longer spawn crowds of hanging entities.
- Paintings place, align and break like vanilla blocks, no longer overlapping walls or each other.
- More reliable rendering and placement (fixing entity-related offset, reverse-placement and chunk-load glitches).
New Features
- Paint costs dye (optional) — the palette can store a separate paint charge for each of the 16 basic colours. Refill a colour by crafting the palette with its matching dye (orange dye refills only orange, etc.). Painting consumes charge from the colours used; mixed/custom colours are estimated against your available basic colours and consume them proportionally. The palette tooltip shows the paint left per colour. Disabled by default, fully configurable, and never active in Creative.
- Paintings in world generation — palettes and easels can be found in village cartographer houses, and large canvases in woodland mansions.
- Villager & wandering trader trades — cartographers sell canvases and easels for emeralds; the wandering trader offers palettes.
- Advancements — a proper progression branch: craft a palette → get a canvas → set up an easel.
- Protected (waxed) paintings — wax a signed painting with a honeycomb to lock it so it can no longer be edited, ideal for preserving finished artwork on shared servers.
- Alternative palette recipe — the palette can also be crafted from wooden slabs.
- Server configuration — a per-world
xercapaint-server.tomllets admins toggle the paint-cost system, gate the/paintimportcommand behind operator permissions, and enable/disable the new trades.
Changes vs. the Original Mod
- Paintings converted from entities to blocks (see above) — the core rework of this version.
- Ported to NeoForge 1.21.1 (the upstream mod is Fabric).
- Crafting reworked — updated and cleaned-up recipes for the paint items.
- Placement fixes carried by the port: correct painting offset, no more clipping into walls or other paintings, and fixed reverse-placement on an empty easel.
- Crafting dyes onto a palette now preserves its existing data (custom colours and paint charges) instead of resetting it.
Fixes Made During the Port
- Fixed a dedicated-server crash caused by client-only packet handlers being loaded on the server.
- Fixed a crash on world creation/entry caused by reading configuration before it was loaded.
- Fixed loot incorrectly dropping from every block due to a wrong loot-table condition; drops are now restricted to their intended chests.
DISCORD
If you need any more info about this mod or the Tharidia Project join the discord HERE.


