Find tutorials, documentation, and resources for creating and using TheoTown plugins.
c
cesareborgia94
Reactions:
Post
by cesareborgia94 » 07 Oct 2018, 03:02
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.
CommanderABab
AB Reactions:
Posts: 11269 Joined: 07 Jun 2016, 19:12
Plugins: Showcase Store
Version: Beta
Plugin Creator
Platform
Post
by CommanderABab » 07 Oct 2018, 04:39
.
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:
Post
by cesareborgia94 » 07 Oct 2018, 08:25
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?
Lobby
Inhabitant of a Supercluster Reactions:
Posts: 3759 Joined: 26 Oct 2008, 10:34
Plugins: Showcase Store
Post
by Lobby » 07 Oct 2018, 09:14
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).
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
Post
by FranchuFranchu » 07 Oct 2018, 17:12
So no plugin texture space problems?
Did you know you can't blink while smiling :) ?
c
cesareborgia94
Reactions:
Post
by cesareborgia94 » 07 Oct 2018, 19:10
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...
Lobby
Inhabitant of a Supercluster Reactions:
Posts: 3759 Joined: 26 Oct 2008, 10:34
Plugins: Showcase Store
Post
by Lobby » 07 Oct 2018, 20:02
@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:
Post
by cesareborgia94 » 07 Oct 2018, 20:36
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.