Changing my patches from Vult free to Vult paid (a little 2.0 trick)

Recently bought the Vult modules. Loaded up some old patches which had the free versions and wanted to replace them with their paid equivalents but didn’t want to bother doing them one by one (how many Tangents in YOUR patches?). Doing something en masse would be better.

An earlier thread discusses (going the other way) that it is just a matter of replacing “VultModules” with “VultModulesFree” in the .vcv file. But this takes a bit more work in 2.0 because the .vcv file is not in plain text format.

But this seems to work well:

zstd -dc V2patch.vcv | sed ‘s/\x0//g’ | sed ‘1 s/^.*$/{/’ | sed ‘s/VultModulesFree/VultModules/g’> V2patch-json.vcv

This decompresses the V2 vcv file, removes nulls, removes the first line and re-adds the initial { character (those header (?) characters don’t seem necessary for this purpose), and changes VultModulesFree to VultModules. The resultant file stays in plain text JSON format (which can be helpful for other reasons) and should load fine in V2.

YMMV, it works for me.


Cool. Probably worth noting that zstd and sed aren’t standard/installed on all operating systems.

1 Like


On msys64-minGW 64, I had to change the single quotes - maybe it’s just Discourse.

zstd -dc V2patch.vcv | sed 's/\x0//g' | sed '1 s/^.*$/{/' | sed 's/VultModulesFree/VultModules/g'> V2patch-json.vcv

Thanks for that omission, yes. Not standard on Windows unless one installs cygwin, etc (although could do something similar in Powershell after downloading zstandard.)

As I understand it, Vult modules should swap automatically between free and paid in v2. (paid will be used if free not available and vice versa). This is a new feature of v2 and its something that needs to be arranged with VCV. We’ve done the same for ShapeMaster.

This also means if you have the paid Vult plugins, you don’t need to subscribe to the free anymore so no doubling up in the browser.

Ug, yeah, not sure why those single quotes got pasted into the post like that, thanks for taking note!

a bash code block

Steve - thanks for pointing that out. I didn’t realize that as it appears that you have to first remove the free plugins, otherwise they will load even though the paid ones are available.

Ah well, a fun exercise and still useful for other reasons.

Yep - it’s essentially a module fallback “If this module isn’t available, then use this other module instead”. So it does mean you need to remove free for it to work - but then a lot of people were saying it would be better if you could remove free if you had paid so as not to have two versions of many Vult modules.

It also means you can use your paid versions in your patches and not worry that you won’t be able to share them with people who only have the free version (for those modules that exist in both at least)

By the way, if it isn’t obvious, leaving out the last piece - changing the Vult modules - can be used to give you a plain text json file that can (unless you change the patch) be loaded in V1 (needs version change which can be done in the sed script). Indeed I did the exercise in the first place because I overwrote a V1 patch by accident and wanted to see if I could easily retrieve it from a V2 .vcv rather than grabbing a backup.

I still keep a V1 install for patches that can’t be migrated to V2 due to missing modules.

Hi, thought i ask here: Whats the difference between the free and payed “Vult” modules ?

( just bought them myself 2 days ago / anyway new to VCV2 )

Most of the modules are the same. The paid has a few additional ones like Flame, and some - like Tangents - have selector switches that are disabled in the free collection. (I like the Tangent options)

Thanks @zwayne