Using images in json (base 64 encoding)

Find tutorials, documentation, and resources for creating and using TheoTown plugins.
Previous topicNext topic
c
cesareborgia94
Reactions:

Using images in json (base 64 encoding)

Post by cesareborgia94 »

Hello,
In the recent update (520), there was a new addition to json which is adding images to json using base64 encoding.

The question I would like to ask is:
1. What does adding images to json mean? What functionality could we use it in plugins?

2. How does the code work? What is the example of adding images to json will do?

I hope Lobby and other experienced plugin makers could explain this. It may be complex stuff but I still want to know what does it do.
User avatar
CommanderABab
AB
Reactions:
Posts: 11269
Joined: 07 Jun 2016, 19:12
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Using images in json (base 64 encoding)

Post by CommanderABab »

.
Lobby wrote: 1. Use a website like https://www.freeformatter.com/base64-encoder.html to encode an image file to base64
2. insert the base64 string into the bmp tag.


Code: Select all

[  {
    "id":"$sloth00",
    "type":"terrain",
    "width":1,
    "height":1,
    "frames":[{"bmp":"/9j/4AAQSkZJRgABAQEAYABgAAD/4QBmRXhpZgAATU0AKgAAAAgABAEaAAUAAAABAAAAPgEbAAUAAAABAAAARgEoAAMAAAABAAIAAAExAAIAAAAQAAAATgAAAAAAAABgAAAAAQAAAGAAAAABcGFpbnQubmV0IDQuMS4xAP/bAEMAGhITFxMQGhcVFx0bGh8nQConIyMnTzg8L0BdUmJhXFJaWWd0lH5nbYxvWVqBr4KMmZ6mp6ZkfLbDtKHBlKOmn//bAEMBGx0dJyInTCoqTJ9qWmqfn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn5+fn//AABEIABoAGgMBIgACEQEDEQH/xAAfAAABBQEBAQEBAQAAAAAAAAAAAQIDBAUGBwgJCgv/xAC1EAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGRoQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+fr/xAAfAQADAQEBAQEBAQEBAAAAAAAAAQIDBAUGBwgJCgv/xAC1EQACAQIEBAMEBwUEBAABAncAAQIDEQQFITEGEkFRB2FxEyIygQgUQpGhscEJIzNS8BVictEKFiQ04SXxFxgZGiYnKCkqNTY3ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqCg4SFhoeIiYqSk5SVlpeYmZqio6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2dri4+Tl5ufo6ery8/T19vf4+fr/2gAMAwEAAhEDEQA/AOgeUKuFILdAPeqc+oImI5GAcEZxVK6vhDcZlBO7nAwcVRvblZ1aZCwCgfKR1zx+FK4I2WLFA64dQc467eKyzNIxJ2gZ5xxWbCbnIaF3wR/CcZHpV0xuSTlPz/8Ar0mVYvXsG9Mj7/QEDGKpNbziFyyEqfvYHXofy/wrXPShPv0hIxVLFRFAdoU45HJHrT/spP8Ayyz75/8ArUWygahKABgMcD061IWOTyfzoaHc/9k="}]
  }]
Screenshot_20181007-001513.jpg
You do not have the required permissions to view the files attached to this post.
my avatar:
c
cesareborgia94
Reactions:

Re: Using images in json (base 64 encoding)

Post by cesareborgia94 »

Thank you Lobby and Commander for teaching me the basics of using images in json using base 64 encoding.

Although why do plugin creators could use base64 for images? Is it for security?
User avatar
Lobby
Inhabitant of a Supercluster
Reactions:
Posts: 3759
Joined: 26 Oct 2008, 10:34
Plugins: Showcase Store

Re: Using images in json (base 64 encoding)

Post by Lobby »

Base64 is just an encoding, not an encryption :)
The feature here is to be able to create plugins that only consist of a single json file that contains all the images in textual representation (that's what base64 is about).
User avatar
FranchuFranchu
Inhabitant of a Country
Reactions:
Posts: 797
Joined: 27 May 2017, 22:07
Location: Freezing in Argentina
Plugins: Showcase Store
Version: Beta

Plugin Creator

Platform

Re: Using images in json (base 64 encoding)

Post by FranchuFranchu »

So no plugin texture space problems?
Did you know you can't blink while smiling :) ?
c
cesareborgia94
Reactions:

Re: Using images in json (base 64 encoding)

Post by cesareborgia94 »

It is quite a nice feature, so you still make a plugin texture and it is contained in the encoding... I may use it for my future plugins :)

But I need to experiment first...
User avatar
Lobby
Inhabitant of a Supercluster
Reactions:
Posts: 3759
Joined: 26 Oct 2008, 10:34
Plugins: Showcase Store

Re: Using images in json (base 64 encoding)

Post by Lobby »

@FranchuFranchu unfortunately not, there's no magic involved. The game does nothing else than getting the image out of the json and putting it into the plugin texture, like with any other image, too.

It's indeed more a neat feature than new functionality.
c
cesareborgia94
Reactions:

Re: Using images in json (base 64 encoding)

Post by cesareborgia94 »

So this is an example of the usage of base 64 encoding using my res building. This is just a test to see it works...
Lut_Gholein_18-10-08_04.28.13.png
Download test base 64 plugin here:
newbase64.json
If it works, I may use it for future plugin creations. It is quite convenient that you only need to post the json code only without images added in a zip file.
You do not have the required permissions to view the files attached to this post.
Previous topicNext topic