Mods / Joy of Painting

Tags: #Furniture
Author: Moby_
Side: Both
Created: May 29th 2023 at 12:52 PM
Last modified: Feb 21st at 7:40 PM
Downloads: 15031
Follow Unfollow 246

Latest release (for outdated Vintage Story v1.20.1 - v1.20.4):
joyofpainting-1.4.1.zip  1-click install


If you find a bug, have a suggestion or want to talk, feel free to join my Discord server!

 

The second installment in the "Joy of..." series adds a new decorative block: the Painting!
Unlike vanilla paintings, this one is customizable.

The recipe for the painting is in the handbook. You will need 4 planks (any wood), 1 square-stitch linen and 4x0.5L of any dye (the handbook make it look like you need 4 times the same dye, you don't. You can mix them)

Once you have a painting, hold it in your hand and type the command:

.loadpainting [painting file name]

Since 1.4.0, it's also possible to load an image from an URL (note that this feature is still experimental and might not work all the time):

.loadpainting [painting URL, ending with an image file format (.png, .jpg...)]

It's also possible since 1.4.0 to rename a painting with the /renamepainting [painting name] command.

The painting file should be an image (bitmap, jpeg, png...) with a resolution of 32x in your VintagestoryData/Paintings folder. The name that you will input in the command can't have any spaces, and you should not add the file extension at the end of the name, it will be added automatically (so if you write it, it will look for a paintingname.bmp.bmp for instance)
The great part is that only you need to have the file: it's then uploaded to the server so everyone can see it!

Oh, also, you can place paintings on the floor and on ceilings!

 

Please note: painting synchronization might take a short time after you loaded the painting. The painting might still not be loaded if you place it immediatly afterwards depending on server lag. Once it's placed though, if it works, it won't change.

Also, as of 1.4.0, paintings don't render immediatly in your hotbar, even when successfully loaded. You need to move them in your inventory (or drop them to the ground) to update the in-inventory rendering.

 

Making paintings

If you want to touch up an image for a painting, you can use Paint.NET (Windows only), it's what I use, it's pretty simple to understand and MUCH better than MS Paint.

You can resize the image with image -> resize (check "keep proportions" and force the smallest dimension to a multiple of 32), then crop it with Image -> canvas size (or something) to make sure that both dimensions are multiples of 32.

You can then split it into 32x32 squares with the rectangle selection tool, copy it, create a new image, paste it, then File -> Save as..., enter the name and under it select "Bitmap" (or jpg, png, tiff... since 1.4.0)

 

For search referencing, the mod id is jopainting
More search referencing stuff, people might search for pixel art chiseling chiselling chisel

Version For Game version Downloads Release date Changelog Download 1-click mod install*
v1.4.1 4175 Feb 21st at 7:40 PM Show joyofpainting-1.4.1.zip 1-click install
v1.4.0 6561 Jan 18th 2024 at 2:01 PM Show joyofpainting-1.4.0.zip 1-click install
v1.3.1 340 Dec 11th 2023 at 10:22 AM Show joyofpainting-1.3.1.zip 1-click install
v1.3.2 658 Dec 12th 2023 at 9:20 AM Show jopainting_1.3.2.zip 1-click install
v1.3.0 1301 Jun 7th 2023 at 2:17 PM Show joyofpainting-1.3.0.zip 1-click install
v1.3.0-pre.5 352 May 31st 2023 at 9:36 AM Show jopainting-1.3.0-pre.5.zip 1-click install
v1.3.0-pre.4 212 May 31st 2023 at 9:12 AM Show joyofpainting-1.3.0-pre.4.zip 1-click install
v1.3.0-pre.3 206 May 31st 2023 at 9:00 AM Show joyofpainting-1.3.0-pre.3.zip 1-click install
v1.3.0-pre.2 215 May 31st 2023 at 8:55 AM Show joyofpainting-1.3.0-pre.2.zip 1-click install
v1.3.0-pre.1 185 May 31st 2023 at 8:37 AM Show joyofpainting-1.3.0-pre.1.zip 1-click install
v1.2.0 210 May 30th 2023 at 3:22 PM Show jopainting-1.2.0.zip 1-click install
v1.1.0 203 May 30th 2023 at 2:22 PM Show jopainting-1.1.0.zip 1-click install
v1.0.0 198 May 30th 2023 at 10:39 AM Show jopainting-1.0.0.zip 1-click install
v0.1.0 215 May 29th 2023 at 1:03 PM Show joyofpainting-0.1.0.zip 1-click install

20 Comments (oldest first | newest first)

💬 DrKlinger, Apr 21st at 11:54 PM

For anyone who wants an easy way to tile larger images on their computer (with imagemagick installed), run:

convert filename -crop 32x32 +adjoin name%02d.bmp

💬 DUCATISLO, Mar 26th at 8:27 PM

can you make a video guide on this too?

💬 tomandoawa, Mar 6th at 4:18 PM

Is there any way to make the paintings have a higher resolution? I want to use a screenshot of our base seen from the map as a painting

💬 Moby_ , Mar 1st at 7:45 PM

BoardingBulb It should be, but I haven't tested it in multiplayer in 1.20.

Sometimes paintings have to be broken then replaced to properly update, maybe that could fix it?

💬 BoardingBulb, Mar 1st at 6:46 PM

is it mp compatable? ive put it in my server and my friend set the command, can see it in there hot bar, but cannot see it when they put it down

💬 Moby_ , Mar 1st at 1:42 PM

BoardingBulb I just made multiple small paintings that assemble into a big painting, splitting the image in an image editing software

💬 BoardingBulb, Mar 1st at 1:47 AM

How do you make the bigger painting? ive made the small square one, is there a way to combine multiple together to make a big painting?

💬 Moby_ , Feb 21st at 10:35 PM

Sylvi I don't have any donation thingy because I'm currently unemployed and in my country, when you're unemployed and make money, that money gets partially deducted from the money I get from unemployment funds, so any money given to me would go almost 100% to the government (which is not really worth it xD)

Since you're not the first to ask about that, I'll probably set something up once I find a new job (hopefully a couple months from now)

💬 Sylvi, Feb 21st at 10:08 PM

Awsome to see this back, can't wait for your other mods to be ready for 1.20 <3

Do you have any kind of tip jar like a kofi?

💬 Moby_ , Feb 21st at 8:15 PM

Prime727 done :D

💬 Prime727, Jan 30th at 3:07 AM

Any plans for a 1.20 update?

💬 Teewi, Dec 9th 2024 at 5:33 PM

Hey! I've been experimenting with this and was wondering if there is any way to up the brightness on the paintings at all? They come out quite dark in game for some reason even if the artwork itself is particularly bright.

💬 RikeiR, Jan 11th 2024 at 6:20 AM

At v1.19.0-rc.6

The game crashes when I install this mod and search for "P" in the handbook.

I look forward to upgrading this mod.

💬 Moby_ , Aug 17th 2023 at 8:22 AM

Accensus Yeah, it's incompatible with .NET 7, since Photographic Memories isn't either I'm guessing that it has to do with the image loading libraries, I'll update it in the following days (along with trying to add Craluminium's update, which makes the mod significantly more user-friendly)

💬 Accensus, Aug 10th 2023 at 3:33 PM

Doesn't seem like it's working on 1.18.8. The client-main.txt log in VintagestoryData/Logs provides the necessary information. I'm not pasting the whole thing here, but it can easily be replicated by just launching the game.

Gist of it is this:
10.8.2023 18:07:48 [Error] [jopainting] Exception thrown when attempting to retrieve all types of the assembly jopainting, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types.
Method 'GetPixel' in type 'jopainting.PaintingBitmap' from assembly 'jopainting, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' does not have an implementation.

💬 BavarianViking, Aug 5th 2023 at 9:59 AM

How to make paintings with 32x64 or 64x32 or longer?

There are several in other mods...

 

💬 DanaCraluminum, Jun 9th 2023 at 7:09 AM

Next update will bring a lot of new features and fixes

💬 Maelstrom, Jun 2nd 2023 at 8:23 PM

Ooooooo..  Now I can add all my Cthulhu and Lovecraftian images in game.  😍

💬 ElectroNikkel, May 30th 2023 at 9:43 PM

Craluminum, I think the same.

💬 DanaCraluminum, May 29th 2023 at 1:14 PM

Criminally underrated mod

 (edit comment delete)