nonunknown / godot-browser

A Browser specific for godot
MIT License
3 stars 0 forks source link

Use Case: Testing and Installing Godot Addons #1

Open Zacksly opened 2 years ago

Zacksly commented 2 years ago

@nonunknown A .tscn file downloaded from the web could be used as a delivery method for addon content. By packing in all the required data in the scene to show off the addon and adding a button inside that scene that installs the addon. People would then have an easy way to test an addon in their project before adding it permanently.

For example, a simple script could be installed by copying the script text used in the test scene and saving it to a new file under addons in the local project, a more complicated addon could be downloaded from whatever server it's hosted on and unzipped into the addon folder.

I'm not sure if there's a way to pack all resource types to make it more versatile, but do I know of one project that has a custom file format that does allow the packing of all resources into a custom filetype. I've never looked at the source code, but maybe the idea could be modified to pack all the data into a regular .tscn file as a json array or something.

Here's the project in question. https://github.com/TwistedTwigleg/DSCN_Plugin

nonunknown commented 2 years ago

the DSCN thing is HUGE! But I dont know if I got the idea, since the addons tab can do that! what would be the advantage compared to asset-lib?

Zacksly commented 2 years ago

The advantage is the fact you can use it interactably before committing to install all the separate files into your personal project. As far as I'm aware there's no way to test an AssetLib package natively without hitting "Install." By having the demo/installer scene file, you don't have to deal with installing multiple files into you project just to test it. It also has a benefit over online HTML demos because you would be able to easily interact with export variables, source code, and such to play around with it in order to see if it'll fit your needs. I'll admit it's not a huge benefit, but it would be convenient for quick showoffs of code. The way I'm thinking of it is as like a containerized addon testing environment.