League-of-Foundry-Developers/scene-packer

[FEATURE] pack images

scooper4711 opened this issue · 2 comments

Is your feature request related to a problem? Please describe.
When preparing compendiums from a world that has grown over time (offloading no longer active content), it's difficult to chase down every image and update it to a directory under the module.

Describe the solution you'd like
A macro that iterates through a selected compendium, finds any images referenced which are outside of the module directory and moves the image file to the module directory, and updates the image reference. If the same image is referenced twice, it is moved the first time and subsequent references are updated to the new location.
It's an acceptable solution to require that the init.js script state the directory to be used for journals, actors, items, and roll tables.
It's also an acceptable solution to require that the init.js script specify the attribute of an actor and item to parse, looking for images.

Describe alternatives you've considered
Manually chasing down every image, or letting the images linger in the world directory to be lost over time.

sneat commented

That’s a lovely suggestion. I’m currently focussing my major development on a large Moultinette integration though so won’t consider this for a little while.

In the mean time, consider looking at https://github.com/nathan-sain/foundry-world-tools as an external tool to do what you are after. It supports deduplication as well as pulling assets all into a single place.

Seems to me that this is the responsibility of the module creator, not automation. It is up to the module creator to have a bit of foresight and ensure that all of their assets are placed into the module correctly in the first place, then linking to those assets in their world, rather than expecting automation to figure out where to put the assets and moving stuff around.