This tools aims to create an avatar ready for encryption with KannaProtecc, for people who use VRCFury. KannaProtecc WILL encrypt all your models even without this tool, but won't obfuscate toggles and full controllers, or reparent objects to non-humanoid bones with armature links. So this tool is aimed at people who want more compatibility between VRCFury and KannaProtecc, although it's not complicated to use, just requires a bit of manual labor. For simple things like the GogGoLoco prefab, or simple toggles like a Marker, you might just use KannaProtecc as-is, and VRCF will handle things post-encryption.
This tool uses the Harmony library to hook into Unity's API and redirect all calls to AddObjectToAsset to create new assets instead of sub-assets, which are not really compatible with KannaProtecc. It also renames these assets to prevent conflicts between assets with the same name in different controllers, and renames controllers to their layer name, and some other stuff I think.
This tool was made because I don't have the time nor the energy to maintain a fork or make a PR of VRCFury.
But you're probably not here to hear me rumble nonsense garbage so let's start !
Make sure to read EVERYTHING before asking for help !
- Ensure VRCFury is installed through VCC. Not sure if it will be detected otherwise.
- Ensure KannaProtecc is installed as well. That's... the whole point of it after all !
- Download this repository and extract it into your Assets folder.
- Select your avatar in your scene and setup KannaProtecc on it (do not encrypt yet ! just set it up.).
- You'll have to manually add the animator layers you don't want to be obfuscated, excluding them by name won't work. (they might be automatically added in the future). If using a locomotion controller like GoGoLoco, at least add 'Base' and 'Sitting'.
- Go to Tools -> VRCFury -> KannaProtecc -> Build avatar and wait until it finishes building
- A new object will be created called 'VRCF clone'. You can Protecc it now !
Under certain circumstances, some parameters will not be copied to the expression parameters, so if you get any errors like these :
Select your Proteccted avatar, then go to Tools -> VRCFury -> KannaProtecc -> Fix Missing Parameters and the issue should be fixed !
If the menus don't show up and you get an error similar to this :
It means another project already uses Harmony. In other words, simply delete 0Harmony.dll
and 0Harmony.xml
in the VRCFPatcher folder and the issue should be gone.