/EsskaAV3Obfuscator

Esska AV3Obfuscator allows you to obfuscate your VRChat avatar.

Primary LanguageC#MIT LicenseMIT

IMPORTANT: V2.0: Installation method has changed! Please read the "Installation" section below.

Esska AV3Obfuscator

This software allows you to obfuscate your VRChat avatar.

grafik

What is obfuscation?

Obfuscation means, remove all human readable content and replace it by something random. In case of AV3Obfuscator, all strings or filenames will be obfuscated. Someone which steals your avatar, has still access to your assets (e.g. meshes, materials and textures). But if your avatar is obfuscated, it will be more complicated to work with your data. Someone which want see the content of your game object, sees only garbage.

grafik

AV3Obfuscator does not encrypt any of your data. But you can combinate avatar encryption together with obfuscation.

What will be obfuscated?

Following data will be obfuscated by default:

  • Entire transform hierarchy
  • Controllers
  • Avatar (of animator component)
  • Avatar masks
  • Animation clips

Optional, following data can be obfuscated:

  • Layers, state machines, states, blend trees
  • VRC expression parameters + menus
  • Parameters (except of reserved VRC parameters)
  • Meshes
  • Blend shapes
  • Materials
  • Textures
  • Audio clips

What will not be obfuscated?

Currently, shaders will not be obfuscated. Additional animators below the hierarchy are not supported.

Installation

Add the package to VRChat Creator Companion: https://ess-ka.github.io/EsskaPackageListing

After the package was added, click on the "Project" tab in the Creator Companion and select "Manage Project" on your project. Then choose the package in the list and install it.

Usage

Add the AV3Obfuscator component to your root avatar game object. Choose the options described below and run the obfuscation. If you upload the avatar for the first time, you have to transfer the avatar ID to your original file.

IMPORTANT: If your avatar was not obfuscated before, delete it from VRChat servers first! If you dont do that, your not obfuscated version can still be accessed over the VRChat servers. Someone who want see the content could simply download an older version of it.

Preserve MMD

If you enable this checkbox, the name of the "Body" transform and all Blend Shapes on it will not be obfuscated. This ensures that MMD still works.

Layers, State Machines, States, Blend Trees

grafik

Obfuscates layers, state machines, states and blend trees of any used controller.

VRC Expressions + Menus

grafik

Obfuscates VRC expression parameters, menu and submenus.

Parameters

grafik

Obfuscates the selected parameters used by any controller, state, state behaviour, blend tree, transition or used by any VRC expression menu. Reserved VRC parameters cannot be obfuscated.

GTAvaCrypt Parameters

If you use GTAvaCrypt (V1 or V2), you can run obfuscation after encryption, but you should unselect the parameters related to GTAvaCrypt.

OSC Parameters

If you use OSC driven parameters (e.g. VRCFT FaceTracking), you should unselect these parameters.

Meshes

grafik

Obfuscates meshes of any mesh filter, skinned mesh renderer, particle system or particle system renderer.

Blend Shapes

grafik

Obfuscates blend shapes of any used mesh. This will break face animations in MMD dances. If you want prevent that, set the "Preserve MMD" checkbox on top.

Materials

grafik

Obfuscates materials of any mesh renderer, skinned mesh renderer, particle system renderer or animation clip.

Textures

grafik

Obfuscates textures of any used material, render textures used by any camera or icons used in VRC menus.

Audio Clips

grafik

Obfuscates audio clips of any audio source.

Obfuscate

grafik

This starts the obfuscation. Your avatar game object will be copied and all obfuscated data will be stored in the Assets/Obfuscated folder. Depending on amount of files, this process may take some time. Errors will be shown in console window.

Clear Obfuscated Data

grafik

Removes the obfuscated game object and the obfuscated data in the Assets/Obfuscated folder.