Tool Unity VarManager for VAM(Virt-a-mate)

feelfar

New Member
Feb 28, 2020
13
30
This tool is referenced from VAR Organizer v0.6.0 + GUI.
Implemented the installation, uninstallation and cleanup of VAR files, the batch hiding and adding favorites of Scenes, looks, etc.

The most basic function :
Organize all var files into one directory as a repository, then two operations
Install = create a symbolic link to the var files in the vam install\AddonPackages
Uninstall = Remove the symbolic link from the vam installation\AddonPackages




varm1.png
varm2.png
 
Last edited:

bolango

Newbie
Nov 3, 2019
29
12
This is awesome, thank you!

FYI, this post was hard to find for some reason, I saw your previous post about getting the version approved, the way I found this, I had to go through your post history.
 

feelfar

New Member
Feb 28, 2020
13
30
hi,a new version has been released, try updating it,you just need to overwrite the exe file
 

ThaHellHound

Member
May 6, 2020
131
195
hi,a new version has been released, try updating it,you just need to overwrite the exe file
Hi, I am using the latest version v1.0.1.0 and it keeps giving me more errors than the older version related to the progress bar which in code keeps counting above 100.
error.jpg error2.jpg error3.jpg
 

ThaHellHound

Member
May 6, 2020
131
195
Sorry, just did not publish success, please re-view
Ok I will check after writing this message. I think I found out why the flood of popups happened it appears when there is a Data Error Cyclic Redundancy Check the progressbar code keeps counting passed the max limit. Not everyone will get this Data Error Cyclic Redundancy Check error. You receive this error if your files have data corruption, for example because of damage to the hard disk or a faulty torrent can even cause it. In my case it is files corrupted by a torrent.
 

A2M

New Member
May 23, 2021
3
1
Did a fresh install as I saw v1.0.1.1 was out - having an issue running though - been sitting on "Tidy Vars..." for about an hour.
 

CaseyP

New Member
Oct 1, 2019
13
10
feelfar Thank you so much for this!


First, a question: Why does varManager move .vars to custom directories, but leaves the respective .var.depend.txt behind? Doesn't VaM need those?

And second, some feature requests, if I may?
  1. Support for multiple "var repositories" (on different drives) - My var collection is too big for my fastest drive (shiny new 980 Evo Pro 1Tb), so I'd like to have smth like an "fast access repository " (on the Nvme drive) and a "slower acces repository" (on the slower sata-drives). And, ofc, an option to move .vars (and categories?) from one repository to another would be nice.
    You don't have permission to view the spoiler content. Log in or register now.

  2. More categories to sort resources into (beyond scene, looks, hair etc), or at least divide the scenes-category into "static scenes/looks" and "dynamic scenes". The reason is that many looks creators still distribute their looks as parts of presentation scenes (ie .json -files). I'd like to keep track of those (long-term, I plan to convert them to .vap presets).

    (Examples for useful categories below)

  3. User-customizable categories, if that's feasible.
Suggestions for examples of useful additional categories (+possible criteria for a potential autosort-algorithm):
  • Plugins:
    Criteria for automated sorting; A .var is automatically sorted into the "plugins" category/folder if it does not contain files in the save/scenes folder tree
    andif it does contain:

    a) only .cs files (and a .cslist file)
    b) .cs files (and a .cslist file) and also other files, but only in the custom folder- tree.

    Additionally, an option to sort a .var into the "plugins" category manually (for packages that do not satisfy the criteria - eg the VamX-plugin contains scene files in the save/scene/ folder tree)

  • Morphpacks: A .var that only contains files in the custom/atom/Person/morphs folderpath will be automatically assigned to the "morphpacks" category/folder. Again: Option to manually assign a .var.

  • Texturepacks: A .var that only contains files in the custom/atom/Person/Textures folderpath AND ALSO optionally possibly skin-presets will be automatically assigned to the "texturepacks" category/folder.

  • Static scenes/looks: Manual option to sort scenes (.json-files with person atoms) into "static scenes/looks" category. No automatic sorting (at least I can't think of criteria that an automatic sorting algorithm could use that would reliably distinguish between "static" presentation scenes and dynamic scenes)
 
Last edited:

feelfar

New Member
Feb 28, 2020
13
30
feelfar Thank you so much for this!


First, a question: Why does varManager move .vars to custom directories, but leaves the respective .var.depend.txt behind? Doesn't VaM need those?

And second, some feature requests, if I may?
  1. Support for multiple "var repositories" (on different drives) - My var collection is too big for my fastest drive (shiny new 980 Evo Pro 1Tb), so I'd like to have smth like an "fast access repository " (on the Nvme drive) and a "slower acces
Forgive my poor English.
This tool analyzes the depends by reading the meta.json file in the var package, and VaM seems to do the same thing.
I'm not sure what the usage of var.depend.txt is, other than to offer depends links.

Multiple file repositories feel difficult to implement through the tool, but there is a way to do it by creating symlinks to other repository files in the main repository.

1、Move some directories and var files to the new directory as you wish, it is recommended that the subdirectory names do not change
2, copy the following text to notepad and modify it, save it as a bat file
Code:
@ECHO ON
REM : Sub-repository, modify by your path
SET "SubRepos=E:\vars"
REM : Main var files repository, modify by your path
SET "VarTidied=F:\VaM\Vars\___VarTidied___"

SETLOCAL ENABLEDELAYEDEXPANSION
FOR /R "%SubRepos%" %%A IN ("*") DO (
  SET oDir=%%~DPA
  SET oFile=%%~A
  SET dDir=!oDir:%SubRepos%=%VarTidied%!
  SET dFile=!oFile:%SubRepos%=%VarTidied%!
  IF NOT EXIST "!dDir!" MD "!dDir!"
  IF NOT EXIST "!dFile!" MKLINK "!dFile!" "!oFile!"
  )

PAUSE
EXIT
3, run the batch file as administrator, the batch process to achieve similar directory synchronization function, except that the file using symlink.
4、If the symlink file is changed compared to the original file path before, please open the tool to run UpDb.

I'll look at the other requirements and implement them if I'm able to
 
  • Like
Reactions: CaseyP

Alfor18

Member
Oct 17, 2021
117
46
Thanks you for the tool, is very useful, any plans for future additions?, like CaseyP said split the scenes between static and dynamic would be ideal
 
Last edited:

The_Butcher

Newbie
Aug 28, 2018
70
165
Awesome tool! Could you give us choice to allow leaving specific var symlinks in root of AddonPackages folder? There are some plugin vars that are written finding the vars in the root and not in subfolders. adamant5.realtime_lipsync.1 has a DLL file written to look only in root. When left in subfolders, sometimes model rigging gets broken and hard reset only way to fix.
 

Dick_Bachman

New Member
Jul 17, 2020
10
4
Sweeeeet. Much appreciated. Shit was really starting to get out of hand. I really don't understand why they make it so easy to install var's and simultaneously make it impossible to delete them without breaking half your scenes.
 

dnking21

New Member
Dec 11, 2021
12
4
This tool is great,
But when I first started using it, I was afraid for a while,
Worried that my var disappeared in the install directory...
(It really worries me when the mdb file is missing)

Maybe when you press "UPD_DB" to move the file,
A warning message can appear first to let the user know that the file will be moved,
Avoid panic~
 

args48

Newbie
Jun 12, 2020
63
179
This tool is incredible, but I suggest using it on a test installation first so you understand how it all works. Also run as administrator or you'll get errors. I feel like this would get more attention if it was advertised in more places.

Suggestions:
A way to search for files inside all VARs.
Make windows remember size and location on relaunch.
Show how many dependencies a VAR has in the UI.
If you are missing a dependency, don't install dependencies of that dependency.

EDIT: I found a bug. When uninstalling .vars it says dependencies will also be removed but they are not. When installing they are automatically installed as intended.
 
Last edited:

kretos

Member
Jun 30, 2017
281
70
There should be A BIG WARNING THAT THIS THING MOVES ALL VARS INTO CUSTOM DIRECTORIES!!!!!!!!!

What the fuck? I've just lost all connection with pictures and text files...

I don't care about division by creators, I care about plugins, looks, scenes. I care about descriptions how to use plugin. I care about picture of look. I can see the creator in file name.

I've tried to run your batch file:
1. my structure:

Code:
Mods
  Scenes
     scene1.var
     scene2.var
  Looks
     look1.var
     look2.var
2. created directory outside of Mods names Mods_VarTided

3. run batch
a) SubRepos => Mods
b) VarTidied => Mods_VarTided

4. as a result there a copy of Mods with all subfolders and symlinks to all files (ie. Scenes\scene1.var etc)

5. my config:
a) varspath => Mods_VarTided
b) vampath => VAM install directory

6. started program - no vars from Mods_VarTided are moved nor visible. There are logs, example:



2022-04-06 23:56:57.115 [ERROR] K:\GamesX\VAM\Mods_VarTided\Textures\ZRSX.Texture_library.3.var is a symlink,Please check and process it appropriately
 
Last edited:

rensr

New Member
Nov 26, 2020
4
14
i run the version v1.0.2.3 ,then it show an error like this 1650247090638.png
ok it doesnt work for me .then my AddonPackages is empty.
wtf...
after a moment i found the vars in ___addonpacksswitch ___.
its not a joke,but i hate that.
i never use this tools in future.
 
  • Haha
Reactions: Blessuall