
Dataified Paintings
(Superceded by "More-Canvases v2") Create data-driven paintings, in compliance with the vanilla variant system.
About this Mod
Note of archival:
Although not datapack-driven, More Canvases v2 achieves similar results, and is infinitely easier to maintain. The "placeholder" feature has a more stable equivalent in No Kebab
Dataified Paintings
Vanilla compliant, datapack-driven custom paintings.
Unlike other data-driven mods, this one does not implement its own variant system, but fully re-use the vanilla one. This was made with the intent to be compatible with Invariable Paintings, but neither is required to work with the other.
Multiplayer is not supported at the moment.
Word of caution
The mod is sufficiently stable for long play sessions, but touches a lot of delicate mechanics. I'm releasing it as an Alpha until I'm confident I have ironed out all the fatal edge cases.
Most of the heavy lifting is done during datapack reloads. They happen when using the /reload command, but also when joining a world, or creating a new one. If something ever goes wrong, it will probably be at one of these moments.
Joining worlds should be safe enough, but manually reloading in an already loaded world is a lot more sensitive.
Features
Pack format
New variants are defined in separate json files, which simply contains a width and height properties, measured in block. The variant id is automatically derived from the file's basename and namespace.
{
"width": 3,
"height": 2
}
Variant files are located in /data/<namespace>/paintings/. Textures and title/author are provided the same way as for the vanilla paintings. Don't forget to add your paintings to the "placeable" tag, otherwise they will only be obtainable through commands.
In principle, textures and language files would need to be provided separately in a resource pack. But you can use Embedded Assets to merge the resource pack into the datapack.
(The official mod page has yet to port it to a compatible version of minecraft, but I have an up-to-date fork here on github, waiting to be merged.)
The combined pack structure would look something like this:
./
├─ pack.mcmeta
├─ assets
│ └─ <namespace>
│ ├─ lang
│ │ └─ en_us.json
│ └─ textures
│ └─ painting
│ ├─ <title1>.png
│ └─ <title2>.png
└─ data
├─ minecraft
│ └─ tags
│ └─ painting_variant
│ └─ placeable.json
└─ <namespace>
└─ paintings
├─ <title1>.json
└─ <title2>.json
Missing Variants
In vanilla minecraft, a painting bearing an unknown variant id is reversed to the "Kebab" variant.
With Dataified Paintings, a placeholder 1x1 variant will be created, and the paintings will never loose its variant id. This gives you the leisure to make mistakes while developping datapacks, so a broken one will not result in your already existing paintings to transformed.
This applies to both placed paintings, and painting items.
Be mindful however that increasing an existing variant's size may still result in already placed paintings to be dropped from their wall, should they no longer fit.
Available Versions
How to Install Dataified Paintings on Your Server
Order Server
Order a Minecraft Java server with at least 3 GB RAM (4 GB recommended).
Set fabric Loader
In the panel under "Egg", select the fabric loader and matching Minecraft version (1.20.1).
Install Mod
Open the mod browser in the dashboard and search for "Dataified Paintings". Click "Install" – done! Alternatively, upload the .jar via SFTP to the /mods folder.
Compatibility
Mod Loaders
Minecraft Versions
1.20.1, 1.20, 1.19.4
Server-side
✓ RequiredRecommended RAM
4 GB(min. 3 GB)Frequently Asked Questions
Dataified Paintings server crashes on startup – what to do?
Most common cause: wrong fabric version or insufficient RAM. Check the server log (latest.log) for "OutOfMemoryError" or "Mixin" errors. With Mado Hosting: ensure at least 3 GB RAM is allocated and the loader matches the mod version (1.20.1). You can switch loaders with one click in the panel.
Is Dataified Paintings compatible with fabric?
Dataified Paintings officially supports fabric for Minecraft 1.20.1, 1.20, 1.19.4. The Mado dashboard automatically detects incompatible loader combinations.
Server lagging with Dataified Paintings – how to optimize performance?
Recommended RAM: 4 GB (per 8 players). Use /spark profiler to check if Dataified Paintings consumes the most tick time. Common fixes: reduce server view-distance to 8-10, install "performant" or "starlight" as supplementary mods on Forge. With Mado Hosting, your server runs on NVMe SSDs with dedicated CPU cores for minimal latency.
Similar Mods
Rent Modded Server
Install Dataified Paintings with just one click on your server.