feat:1、创建项目

This commit is contained in:
2026-06-25 15:22:28 +08:00
commit c05a65cdc3
6577 changed files with 1168287 additions and 0 deletions
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e1ba9cbb79288e94d8bdcf7da3e81a3d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,160 @@
#if UNITY_EDITOR
// System
using System;
using System.Linq;
// Unity
using UnityEditor;
using UnityEditor.Build;
using UnityEditor.Build.Reporting;
using UnityEditor.UnityLinker;
namespace OPS.Obfuscator
{
public class BuildPostProcessor : IPreprocessBuildWithReport, IFilterBuildAssemblies, IPostBuildPlayerScriptDLLs, IUnityLinkerProcessor, IPostprocessBuildWithReport
{
// Defines if an Obfuscation Process took place.
private static bool hasObfuscated = false;
public int callbackOrder
{
get { return int.MaxValue; }
}
private static OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings PrepareEditorSettings()
{
OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings var_EditorSettings = new Editor.Settings.Unity.Editor.EditorSettings();
return var_EditorSettings;
}
private static OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings PrepareBuildSettings(BuildReport _Report)
{
OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings var_BuildSettings = new Editor.Settings.Unity.Build.BuildSettings();
var_BuildSettings.IsDevelopmentBuild = UnityEditor.EditorUserBuildSettings.development;
var_BuildSettings.BuildTarget = UnityEditor.EditorUserBuildSettings.activeBuildTarget;
var_BuildSettings.BuildTargetGroup = UnityEditor.EditorUserBuildSettings.selectedBuildTargetGroup;
var_BuildSettings.UnityBuildReport = _Report;
var_BuildSettings.IsIL2CPPBuild = PlayerSettings.GetScriptingBackend(UnityEditor.EditorUserBuildSettings.selectedBuildTargetGroup) == ScriptingImplementation.IL2CPP;
var_BuildSettings.Compression = (OPS.Editor.Settings.Unity.Build.CompressionType) typeof(UnityEditor.EditorUserBuildSettings).GetMethod("GetCompressionType", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Static).Invoke(null, new object[] { UnityEditor.EditorUserBuildSettings.selectedBuildTargetGroup });
var_BuildSettings.BuildIntoProject = (UnityEditor.EditorUserBuildSettings.activeBuildTarget == BuildTarget.StandaloneOSX && UnityEditor.EditorUserBuildSettings.GetPlatformSettings("OSXUniversal", "CreateXcodeProject").Equals("true"))
|| (UnityEditor.EditorUserBuildSettings.activeBuildTarget == BuildTarget.StandaloneWindows && UnityEditor.EditorUserBuildSettings.GetPlatformSettings("Standalone", "CreateSolution").Equals("true"))
|| (UnityEditor.EditorUserBuildSettings.activeBuildTarget == BuildTarget.StandaloneWindows64 && UnityEditor.EditorUserBuildSettings.GetPlatformSettings("Standalone", "CreateSolution").Equals("true"))
|| (UnityEditor.EditorUserBuildSettings.activeBuildTarget == BuildTarget.StandaloneLinux64 && UnityEditor.EditorUserBuildSettings.GetPlatformSettings("Standalone", "CreateSolution").Equals("true"));
return var_BuildSettings;
}
public void OnPreprocessBuild(BuildReport _Report)
{
// Settings
OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings var_EditorSettings = PrepareEditorSettings();
OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings var_BuildSettings = PrepareBuildSettings(_Report);
// Init
OPS.Obfuscator.Editor.Obfuscator.Init();
hasObfuscated = false;
try
{
// Pre Build
OPS.Obfuscator.Editor.Obfuscator.Singleton.PreBuild(var_EditorSettings, var_BuildSettings);
}
catch (Exception e)
{
UnityEngine.Debug.LogError("[OPS] Error: " + e.ToString());
}
}
public string[] OnFilterAssemblies(BuildOptions _BuildOptions, string[] _Assemblies)
{
// Return all assemblies - Filtered with build.
return _Assemblies;
}
public void OnPostBuildPlayerScriptDLLs(BuildReport _Report)
{
if (!hasObfuscated)
{
if (BuildPipeline.isBuildingPlayer && !EditorApplication.isPlayingOrWillChangePlaymode)
{
try
{
UnityEditor.EditorApplication.LockReloadAssemblies();
// Settings
OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings var_EditorSettings = PrepareEditorSettings();
OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings var_BuildSettings = PrepareBuildSettings(_Report);
// Obfuscate
OPS.Obfuscator.Editor.Obfuscator.Singleton.PostAssemblyBuild(var_EditorSettings, var_BuildSettings);
hasObfuscated = true;
}
catch (Exception e)
{
UnityEngine.Debug.LogError("[OPS] Error: " + e.ToString());
}
finally
{
UnityEditor.EditorApplication.UnlockReloadAssemblies();
}
}
}
}
public string GenerateAdditionalLinkXmlFile(BuildReport _Report, UnityLinkerBuildPipelineData _Data)
{
if (hasObfuscated)
{
try
{
// Settings
OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings var_EditorSettings = PrepareEditorSettings();
OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings var_BuildSettings = PrepareBuildSettings(_Report);
// Post Build
OPS.Obfuscator.Editor.Obfuscator.Singleton.PostAssetsBuild(var_EditorSettings, var_BuildSettings);
}
catch (Exception e)
{
UnityEngine.Debug.LogError("[OPS] Error: " + e.ToString());
}
}
return null;
}
#if UNITY_2021_2_OR_NEWER
#else
public void OnBeforeRun(BuildReport report, UnityLinkerBuildPipelineData data)
{
}
public void OnAfterRun(BuildReport report, UnityLinkerBuildPipelineData data)
{
}
#endif
public void OnPostprocessBuild(BuildReport _Report)
{
if (hasObfuscated)
{
try
{
// Settings
OPS.Obfuscator.Editor.Settings.Unity.Editor.EditorSettings var_EditorSettings = PrepareEditorSettings();
OPS.Obfuscator.Editor.Settings.Unity.Build.BuildSettings var_BuildSettings = PrepareBuildSettings(_Report);
// Post Build
OPS.Obfuscator.Editor.Obfuscator.Singleton.PostBuild(var_EditorSettings, var_BuildSettings);
}
catch (Exception e)
{
UnityEngine.Debug.LogError("[OPS] Error: " + e.ToString());
}
}
}
}
}
#endif
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 8aec23db4be1430438c95a78a445aa1d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 181958f1115b5fd49b9c0b2f21c7ebe7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ca66e293bb6a02c4b85146ca15ef7cce
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: fb5e7efc0efd7a24d9e748598b5661b2
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cec9420b6262f2145b211ccff79f2591
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 728 B

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 1c6fe518b5e14c44384b26572862ee84
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 6943f5005adf7c346b8bcac39313efc3
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 778 B

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 1771d3bf0f5f7b544adcaa3a8187a441
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 768 B

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 2acc86080e50a4c4fb214822fb3c78de
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: be300c27d06febf4096ce69b9a9ab093
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: b11b18443dcf17740aec9c975a220078
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 9a0c4af005d9e33448bb48209a517c03
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 576754af4a64b094e9945718b40ed102
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a786fd08c7929044fbc7efe839599401
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: e402403a0e03bd74d8ba5247fbc1b7ab
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: b03b58a093cb8af4ca5c4dd28cf2d18b
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 1b44bef6bf68d73498411c2490271b29
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: ec63a5261f4706849b1e56ee45cb4c26
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 KiB

@@ -0,0 +1,142 @@
fileFormatVersion: 2
guid: 6b5db65de89fd0e459af6cecf8bd0eb4
TextureImporter:
internalIDToNameTable: []
externalObjects: {}
serializedVersion: 11
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 2
aniso: -1
mipBias: -100
wrapU: 1
wrapV: 1
wrapW: -1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 1
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 1
platformSettings:
- serializedVersion: 3
buildTarget: DefaultTexturePlatform
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Standalone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Windows Store Apps
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: iPhone
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
- serializedVersion: 3
buildTarget: Android
maxTextureSize: 8192
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 2
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 1
spriteSheet:
serializedVersion: 2
sprites: []
outline: []
physicsShape: []
bones: []
spriteID: 5e97eb03825dee720800000000000000
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spritePackingTag:
pSDRemoveMatte: 0
pSDShowRemoveMatteOption: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: b14f89bcb9366764a9fee6052a9cef8e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,33 @@
fileFormatVersion: 2
guid: 7659c1310a9f4104db46f60832c4b135
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 1
settings:
DefaultValueInitialized: true
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 89fa34c427ed28343bf3d3873a3aef8c
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c56a673e18a2d9f44a7251e58222e020
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3c00e8a4f178e7a41a1e18abfa04512a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 004ccbc56f1fe475ebce1138715c5a49
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 9bb52c615f7a0994093bfc9235bcf645
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,313 @@
[Info][OPS.OBF][Setup] Active Editor Platform: WindowsEditorPlatform
[Info][OPS.OBF][Setup] Active Build Platform: DefaultBuildPlatform
[Info][OPS.OBF][Setup] Load Project
[Debug][OPS.OBF][Setup] Load DataContainer
[Debug][OPS.OBF][Setup] Load Obfuscator Settings
[Debug][OPS.OBF][Setup] Load Pipeline Components
[Debug][OPS.OBF][Setup] Found Components (3):
- Analyse Unity Animation Methods ()
- Analyse Unity Event Component (Analyse Unity Components for UnityEvents. Skip the attached method names.)
- Analyse MonoScript ()
[Debug][OPS.OBF][Setup] Load Pipeline
[Debug][OPS.OBF][Setup] Load Asset Cache
[Debug][OPS.OBF][Setup] Found Extensions (9):
- .fbx
- .dae
- .3ds
- .dxf
- .obj
- .skp
- .anim
- .controller
- .prefab
[Info][OPS.OBF][OnPreBuild] Process component Analyse Unity Animation Methods
[Info][OPS.OBF][OnPreBuild] Process component Analyse Unity Event Component
[Info][OPS.OBF][OnPreBuild] Process component Analyse MonoScript
[Info][OPS.OBF][OnAnalyse_Assets] Process component Analyse Unity Animation Methods
[Debug][OPS.OBF][OnAnalyse_Assets] Found methods in animation file at path 'Packages/com.unity.timeline/Editor/StyleSheets/res/HumanoidDefault.anim' (0):
[Info][OPS.OBF][OnProcess_Assets] Process component Analyse Unity Animation Methods
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Iterate components in loaded build scene Assets/Scenes/SampleScene.unity.
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Found 2 Root GameObjects in Scene Assets/Scenes/SampleScene.unity
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Found 5 Components in Scene Assets/Scenes/SampleScene.unity
[Info][OPS.OBF][OnAnalyse_Component_Scenes] Process component Analyse Unity Event Component
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Find unity event methods in component 'Main Camera' of type 'UnityEngine.Transform'.
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Find unity event methods in component 'Main Camera' of type 'UnityEngine.Camera'.
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Find unity event methods in component 'Main Camera' of type 'UnityEngine.AudioListener'.
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Find unity event methods in component 'Directional Light' of type 'UnityEngine.Transform'.
[Debug][OPS.OBF][OnAnalyse_Component_Scenes] Find unity event methods in component 'Directional Light' of type 'UnityEngine.Light'.
[Info][OPS.OBF][OnAnalyse_Component_Scenes] Process component Analyse MonoScript
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Found '0' Prefabs.
[Info][OPS.OBF][OnAnalyse_Component_Prefabs] Unload Project
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Unload Asset Cache
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Unload Pipeline
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Unload Pipeline Components
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Unload Obfuscator Settings
[Debug][OPS.OBF][OnAnalyse_Component_Prefabs] Unload DataContainer
[Info][OPS.OBF][OnAnalyse_Component_Prefabs] Finished PreBuild!
[Info][OPS.OBF][Setup] Active Editor Platform: WindowsEditorPlatform
[Info][OPS.OBF][Setup] Active Build Platform: DefaultBuildPlatform
[Info][OPS.OBF][Setup] Start 'PostAssemblyBuild' process.
[Info][OPS.OBF][Setup] Load
[Debug][OPS.OBF][Setup] Load DataContainer
[Debug][OPS.OBF][Setup] Load ObfuscatorSettings
[Debug][OPS.OBF][Setup] Load Components
[Debug][OPS.OBF][Setup] Found Components (26):
- Assembly - Settings (Manage obfuscateable assemblies and their dependencies.)
- Unity Animation Methods - Compatibility (Manages the obfuscation of inspector set animation methods.)
- Unity Event Methods - Compatibility (Manages the obfuscation of inspector set unity event methods.)
- String Reflection and Coroutine - Compatibility (Manage the obfuscation of members called through strings.)
- Logging - Settings (Manage here the obfuscation logging.)
- Namespace - Settings (Manage the obfuscation of namespaces and their class content.)
- Class - Obfuscation (Activate and manage the obfuscation of classes and their content.)
- Type Cache Replacement (Replaces the types and namespace in the assemblies cache.)
- MonoBehaviour - Class - Obfuscation (Manages the MonoBehaviour Subclass obfuscation.)
- ScriptableObject - Class - Obfuscation (Manages the ScriptableObject Subclass obfuscation.)
- Playable - Class - Obfuscation (Manages the Playable Subclass obfuscation.)
- Method - Obfuscation (Activate and manage the obfuscation of methods.)
- Parameter - Obfuscation (Manage the obfuscation of parameter.)
- Field - Obfuscation (Activate and manage the obfuscation of fields.)
- Property - Obfuscation (Activate and manage the obfuscation of properties.)
- Event - Obfuscation (Activate and manage the obfuscation of events.)
- Attribute - Settings (Manage here obfuscator attributes or custom attributes.)
- Renaming - Settings (Manage here the renaming settings.)
- Add Random Code (Activate to add random code to your classes.)
- Method ControlFlow (Obfuscate the methods control flow. (Beta, and requires .Net >= 5 or .Net Standard >= 2.1))
- String - Obfuscation (Activate the obfuscation of strings.)
- Suppress ILDasm (Add the SuppressIldasmAttribute to prevent ILDasm (Debugging) usage.)
- Tampering - Protection (Protection against assembly manipulation. (Beta))
- Not Obfuscate Cause (Adds a do not obfuscate cause attribute to the members.)
- Remove Obfuscator References (Removes OPS.Obfuscator.Attributes in the build.)
- Addressable - Obfuscation (Manages the obfuscation of Addressables.)
[Debug][OPS.OBF][Setup] Found Compatibility Components (11):
- .Net Framework - Compatibility (Controls the Obfuscator compatibility to the .Net / Mono Framework.)
- Unity - Compatibility (Controls the Obfuscator compatibility to Unity.)
- Obfuscator - Compatibility (Controls the Obfuscator own components)
- Chartboost - Compatibility (Controls the Obfuscator compatibility to Chartboost.)
- Meta - Compatibility (Controls the Obfuscator compatibility to Meta Sdks.)
- Google - Compatibility (Controls the Obfuscator compatibility to Google Sdks.)
- JSON - Compatibility (Controls the Obfuscator compatibility to Json.)
- Photon - Compatibility (Controls the Obfuscator compatibility to Photon Sdks.)
- PlayMaker - Compatibility (Controls the Obfuscator compatibility to PlayMaker Sdks.)
- PlayFab - Compatibility (Controls the Obfuscator compatibility to PlayFab Sdks.)
- Realms - Compatibility (Controls the Obfuscator compatibility to MongoDb Realms Sdk.)
[Debug][OPS.OBF][Setup] Load Pipeline
[Warning][OPS.OBF][Setup] There is no assembly: Assembly-CSharp.dll
[Warning][OPS.OBF][Setup] There is no assembly: Assembly-CSharp-firstpass.dll
[Debug][OPS.OBF][Setup] Found to obfuscate assemblies (0):
[Debug][OPS.OBF][Setup] Found helper assemblies (1):
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Temp\StagingArea\Data\Managed\OPS.Obfuscator.dll
[Debug][OPS.OBF][Setup] Found dependency directories (21):
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\MonoBleedingEdge\lib\mono\unityjit-win32
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\Managed\UnityEngine
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\Managed
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\MonoBleedingEdge\lib\mono\unityjit-win32\Facades
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\PlaybackEngines\WindowsStandaloneSupport
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Library\ScriptAssemblies
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Editor\Plugins\System
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Library\PackageCache\com.unity.collab-proxy@2.0.7\Lib\Editor\PlasticSCM
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Plugins\Json
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Editor\Plugins\Mono.Cecil
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Obfuscator\Editor\Plugins
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Editor\Plugins\GUPS.Assets.Editor
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Library\PackageCache\com.unity.ext.nunit@1.0.6\net35\unity-custom
- D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Assets\OPS\Editor\Plugins\GUPS.Compression
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\PlaybackEngines\WindowsStandaloneSupport\Variations\mono\Managed
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\NetStandard\ref\2.1.0
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\NetStandard\compat\2.1.0\shims\netstandard
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\NetStandard\Extensions\2.0.0
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Data\NetStandard\compat\2.1.0\shims\netfx
- Assets\OPS\Plugins\Json
- C:\Program Files\Unity\Hub\Editor\2021.3.30f1\Editor\Managed
[Debug][OPS.OBF][Setup] Load Assembly Resolver
[Info][OPS.OBF][Setup] Prepare Assemblies
[Info][OPS.OBF][Setup] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][Setup] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][Setup] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][Setup] Process component Namespace - Settings
[Info][OPS.OBF][Setup] Process component Class - Obfuscation
[Info][OPS.OBF][Setup] Process component Type Cache Replacement
[Info][OPS.OBF][Setup] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][Setup] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][Setup] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][Setup] Process component Method - Obfuscation
[Info][OPS.OBF][Setup] Process component Parameter - Obfuscation
[Info][OPS.OBF][Setup] Process component Field - Obfuscation
[Info][OPS.OBF][Setup] Process component Property - Obfuscation
[Info][OPS.OBF][Setup] Process component Event - Obfuscation
[Info][OPS.OBF][Setup] Process component Attribute - Settings
[Info][OPS.OBF][Setup] Process component Add Random Code
[Info][OPS.OBF][Setup] Process component Method ControlFlow
[Info][OPS.OBF][Setup] Process component String - Obfuscation
[Info][OPS.OBF][Setup] Process component Suppress ILDasm
[Info][OPS.OBF][Setup] Process component Tampering - Protection
[Info][OPS.OBF][Setup] Process component Not Obfuscate Cause
[Info][OPS.OBF][Setup] Process component Remove Obfuscator References
[Info][OPS.OBF][Setup] Load Assemblies
[Debug][OPS.OBF][Setup] Load Cache
[Debug][OPS.OBF][Setup] Load RenameManager
[Warning][OPS.OBF][Setup] Failed to load Charset: . Using default! Exception: System.ArgumentException: Must specify valid information for parsing in the string.
at System.Enum+EnumResult.SetFailure (System.Enum+ParseFailureKind failure, System.String failureMessageID, System.Object failureMessageFormatArgument) [0x00023] in <9d9536d9127f4a489d989c7a566aee1c>:0
at System.Enum.TryParseEnum (System.Type enumType, System.String value, System.Boolean ignoreCase, System.Enum+EnumResult& parseResult) [0x00077] in <9d9536d9127f4a489d989c7a566aee1c>:0
at System.Enum.Parse (System.Type enumType, System.String value, System.Boolean ignoreCase) [0x00010] in <9d9536d9127f4a489d989c7a566aee1c>:0
at System.Enum.Parse (System.Type enumType, System.String value) [0x00000] in <9d9536d9127f4a489d989c7a566aee1c>:0
at OPS.Obfuscator.Editor.Project.PostAssemblyBuild.Pipeline.Component.Optional.RenamingComponent.OnPrePipelineProcess (OPS.Editor.Project.Step.IStepInput _StepInput) [0x00027] in D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Source\OPS.Obfuscator.Editor\OPS.Obfuscator.Editor.Standard\Obfuscation\Project\PostAssemblyBuild\Pipeline\Component\Optional\Renaming\RenamingComponent.cs:200
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Type Cache Replacement
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Parameter - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Attribute - Settings
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Add Random Code
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Method ControlFlow
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component String - Obfuscation
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Suppress ILDasm
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Tampering - Protection
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Not Obfuscate Cause
[Info][OPS.OBF][OnAnalyse_Assemblies] Process component Remove Obfuscator References
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Type Cache Replacement
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Parameter - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Attribute - Settings
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Add Random Code
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Method ControlFlow
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component String - Obfuscation
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Suppress ILDasm
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Tampering - Protection
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Not Obfuscate Cause
[Info][OPS.OBF][OnPostAnalyse_Assemblies] Process component Remove Obfuscator References
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnFindMemberNames_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Type Cache Replacement
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Parameter - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Attribute - Settings
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Add Random Code
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Method ControlFlow
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component String - Obfuscation
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Suppress ILDasm
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Tampering - Protection
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Not Obfuscate Cause
[Info][OPS.OBF][OnObfuscate_Assemblies] Process component Remove Obfuscator References
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Type Cache Replacement
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Parameter - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Attribute - Settings
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Add Random Code
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Method ControlFlow
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component String - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Suppress ILDasm
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Tampering - Protection
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Not Obfuscate Cause
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Remove Obfuscator References
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Save Assemblies
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Post process Assemblies
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Unity Animation Methods - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Unity Event Methods - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component String Reflection and Coroutine - Compatibility
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Namespace - Settings
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Type Cache Replacement
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component MonoBehaviour - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component ScriptableObject - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Playable - Class - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Method - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Parameter - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Field - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Property - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Event - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Attribute - Settings
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Add Random Code
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Method ControlFlow
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component String - Obfuscation
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Suppress ILDasm
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Tampering - Protection
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Not Obfuscate Cause
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Process component Remove Obfuscator References
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Unload
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload RenameManager
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload Cache
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload Assemblies
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Unloaded assembly successfully: D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Temp\StagingArea\Data\Managed\OPS.Obfuscator.dll
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload Assembly Resolver
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Unloaded successfully the AssemblyResolver.
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload Pipeline
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload Components
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload ObfuscatorSettings
[Debug][OPS.OBF][OnPostObfuscate_Assemblies] Unload DataContainer
[Info][OPS.OBF][OnPostObfuscate_Assemblies] Finished PostAssemblyBuild!
[Info][OPS.OBF][Setup] Active Editor Platform: WindowsEditorPlatform
[Info][OPS.OBF][Setup] Active Build Platform: DefaultBuildPlatform
[Info][OPS.OBF][Setup] Start 'PostBuild' process.
[Info][OPS.OBF][Setup] Load Project
[Debug][OPS.OBF][Setup] Load DataContainer
[Debug][OPS.OBF][Setup] Load Obfuscator Settings
[Debug][OPS.OBF][Setup] Load Pipeline Components
[Debug][OPS.OBF][Setup] Found Components (1):
- Post Process Unity MonoBehaviour Assets (Post Process Unity MonoBehaviour Assets)
[Debug][OPS.OBF][Setup] Load Pipeline
[Warning][OPS.OBF][Setup] No MonoBehaviour obfuscation mapping found. The globalgamemanagers.assets file will not be obfuscated.
[Info][OPS.OBF][OnPostBuild] Process component Post Process Unity MonoBehaviour Assets
[Info][OPS.OBF][OnPostBuild] Assets are not bundled. Obfuscating globalgamemanagers.assets file.
[Info][OPS.OBF][OnPostBuild] Obfuscating globalgamemanagers.assets file 'D:\Tim\UnityAssets\GUPS.Obfuscator\Version_5\Unity\Obfuscator_2021.3_Pro\Builds\Windows\Obfuscator_2018.1_Data\globalgamemanagers.assets'.
[Debug][OPS.OBF][OnPostBuild] Obfuscated '0' MonoScripts in assets file 'globalgamemanagers.assets'.
[Info][OPS.OBF][OnPostBuild] Unload Project
[Debug][OPS.OBF][OnPostBuild] Unload Pipeline
[Debug][OPS.OBF][OnPostBuild] Unload Pipeline Components
[Debug][OPS.OBF][OnPostBuild] Unload Obfuscator Settings
[Debug][OPS.OBF][OnPostBuild] Unload DataContainer
[Info][OPS.OBF][OnPostBuild] Finished PostBuild!
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 62b20948fe3cb9f4fade15782dd03c0d
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
File diff suppressed because it is too large Load Diff
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: d01044d99dfd645248912010168a2bd3
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4ff2b3851e0ffa34a8840c3e337b0b69
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,13 @@
{
"name": "OPS.Obfuscator",
"references": [],
"includePlatforms": [],
"excludePlatforms": [],
"allowUnsafeCode": false,
"overrideReferences": false,
"precompiledReferences": [],
"autoReferenced": true,
"defineConstraints": [],
"versionDefines": [],
"noEngineReferences": false
}
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 941d6d2e4fdb0f641835be01a9c65a5e
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 04199ca3d6e37b846951c3a80b44f995
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: fee8e205405f1674a948e6d8858f3c47
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 353a87661048dd548811d875a954cb75
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: d197b847597087c4eb2a5d31b4a3877c
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,17 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Add this to a Class, so the whole class with all its content will not get obfuscated!
/// But still its Method Bodys (String Obfuscation, Random Code generation ...)
/// To not obfuscate Method Bodys too, add an additional Attribute: DoNotObfuscateMethodBodyAttribute to the classes or the specific methods.
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface | AttributeTargets.Struct)]
public class DoNotObfuscateClassAttribute : System.Attribute
{
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: c57f8020ec9f8c244b39c8ae1326fc82
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#if Obfuscator_Free
#else
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Add this to an Class, to disallow fake code adding! Or to disallow using the class to create new fake classes basing on it!
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface | AttributeTargets.Struct)]
public class DoNotUseClassForFakeCodeAttribute : System.Attribute
{
}
}
#endif
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: add9ce7df6d7f534a95222608f1ac409
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,15 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Add this to an Class, Field, Method, whatever and its name will not get renamed (obfuscated)!
/// </summary>
[AttributeUsage(AttributeTargets.All)]
public class DoNotRenameAttribute : System.Attribute
{
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 20c4ce63a255567458c516686f9b8439
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 4975cbfd7b05e9043ad530144a532440
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
#if Obfuscator_Free
#else
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Add this to an Class to skip obfuscation of all Method Bodys, or to an specific Method to skip its Method Body.
/// String Obfuscation, Random Code generation, ... are part of the Method Body obfuscation.
/// </summary>
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class DoNotObfuscateMethodBodyAttribute : System.Attribute
{
}
}
#endif
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 76ccffd06dea11145860f0ce89a0db43
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,21 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Do not use! Gets attached to not obfuscated members in developments builds.
/// </summary>
[AttributeUsage(AttributeTargets.All)]
public class NotObfuscatedCauseAttribute : System.Attribute
{
#pragma warning disable
public NotObfuscatedCauseAttribute(String _Cause)
{
}
#pragma warning restore
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: d8f2bf2f57658db4a86eb4394f3f5cdb
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,23 @@
// System
using System;
namespace OPS.Obfuscator.Attribute
{
/// <summary>
/// Add this to class members to obfuscate them anyway with a new name '_ObfuscateTo', although the settings did not allow to.
/// If you set the parameter '_ObfuscateTo' to null or an empty string, the member will be obfuscated with a random name.
/// For example if you do not want to obfuscate all public methods beside some specific.
/// </summary>
[AttributeUsage(AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Field | AttributeTargets.Property | AttributeTargets.Event)]
public class ObfuscateAnywayAttribute : System.Attribute
{
#pragma warning disable
private String obfuscateTo;
public ObfuscateAnywayAttribute(String _ObfuscateTo)
{
this.obfuscateTo = _ObfuscateTo;
}
#pragma warning restore
}
}
@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 104a299d29615f043bcbc655e7f451e7
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
+86
View File
@@ -0,0 +1,86 @@
**NOTE: Check out the online docs for the latest version plus images: https://docs.guardingpearsoftware.com/manual/Obfuscator/Description.html**
# How To Start
This guide will walk you through the process of installing, configuring, and utilizing the Obfuscator to strengthen your game's code. You will be able to make your code significantly more resistant to reverse engineering, replication, and unauthorized modification.
## Step 1 - Get & Install Obfuscator
The very first step is to get either [Obfuscator Free](https://assetstore.unity.com/packages/slug/89420), [Obfuscator Pro](https://assetstore.unity.com/packages/slug/89589) or [Obfuscator Source](https://assetstore.unity.com/packages/slug/210262) from the Unity Asset Store. Then download it into your current project.
The main difference between these 3 versions are that the Free version does not support MonoBehavior class and, in general, namespace obfuscation. The security functions are also not available. The Pro version contains all functions. While the source version additionally contains the source code of the obfuscator itself.
The Obfuscator project structure 'Assets/OPS/Obfuscator' will look like the following.
You find the following directories and files in the root directory of Obfuscator:
- **Editor:** Contains all resources and sources for the editor.
- **Logs:** The default location for log files.
- **Plugins:** Contains platform specific plugins.
- **Settings:** Stores the Obfuscator setting files.
- **License.pdf:** The license applying to the usage of the Obfuscator.
- **ReadMe.md:** A readme file that contains the same content as this page, but locally.
- **VersionHistory.md:** This file contains a detailed record of all the changes made in each version of the asset.
## Step 2 - Integration
GuardingPearSoftware's Obfuscator is designed for seamless integration, requiring no complex setup simply plug it in and it works! Activated, it automatically obfuscates your code during every build, safeguarding your game without adding any extra burden to your workflow.
**Build in Editor.** You can simply build our game in the editor and the obfuscator will automatically run within the build pipeline to protect your game.
**Build with CI/CD.** Custom build scripts or CI/CD are also supported.
```cs
using UnityEditor;
using System.Diagnostics;
public class ScriptBatch
{
[MenuItem("MyTools/Windows Build With Postprocess")]
public static void BuildGame ()
{
// Get filename.
string path = EditorUtility.SaveFolderPanel("Choose Location of Built Game", "", "");
string[] levels = new string[] {"Assets/Scene1.unity", "Assets/Scene2.unity"};
// Build player.
BuildPipeline.BuildPlayer(levels, path + "/BuiltGame.exe", BuildTarget.StandaloneWindows, BuildOptions.None);
// Copy a file from the project folder to the build folder, alongside the built game.
FileUtil.CopyFileOrDirectory("Assets/Templates/Readme.txt", path + "Readme.txt");
// Run the game (Process class from System.Diagnostics).
Process proc = new Process();
proc.StartInfo.FileName = path + "/BuiltGame.exe";
proc.Start();
}
}
```
To run automatically inside the Unity build pipeline, the Obfuscator uses multiple hooks. These are the following:
- **IPreprocessBuildWithReport:** A interface used to receive a callback before the Player build is started. During this phase, the Obfuscator performs an analysis of the assets.
- **IFilterBuildAssemblies:** A interface used to receive a callback to filter assemblies away from the build. During this phase, the Obfuscator removes the reference to itself in release builds.
- **IPostBuildPlayerScriptDLLs:** A interface used to receive a callback just after the player scripts have been compiled. During this phase, the Obfuscator performs the actual obfuscation.
- **IUnityLinkerProcessor:** A interface used to receive a callback related to the running of UnityLinker. During this phase, the Obfuscator ensures the compatibility to IL2CPP.
- **IPostprocessBuildWithReport:** A interface used to receive a callback after the build is complete. During this phase, the Obfuscator obfuscates assets that got not obfuscated in prior.
The hooks can be found in the *BuildPostProcessor.cs* file at *Assets/OPS/Obfuscator/Editor*. If you use custom hooks or use assets that use pipeline hooks, have a look at the *callbackOrder* and make sure the Obfuscator runs last.
```cs
public int callbackOrder
{
get { return int.MaxValue; }
}
```
## Step 3 - Setup Settings
Obfuscator has a centralized configuration which applies to the obfuscation pipeline. You can find it at *OPS -> Obfuscator -> Settings*.
The obfuscation settings separate into 4 topics:
- **Obfuscation:** General settings for code obfuscation. This includes specifications for which assemblies are to be obfuscated, as well as detailed instructions for the obfuscation of their respective classes and members.
- **Security:** Contains advanced security settings, like 'String Obfuscation', 'Random Code Generation', etc.
- **Compatibility:** Certain third-party assets require specific configurations to ensure compatibility with obfuscation, owing to the unique way Unity operates.
- **Optional:** Contains optional integration settings. For example 'Custom Obfuscation Pattern', 'Logging', 'Name Mapping', etc.
> [!NOTE]
> In most instances, the default settings provide the best optimization for the majority of games and applications.
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e8423732347427d46a5d89490e3b8a10
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+31
View File
@@ -0,0 +1,31 @@
**Special Offer: Write a review for Obfuscator Pro and write an email to guardingpearsoftware@gmail.com and win 1 of 10 copies of Obfuscator Source!**
== Description ==
GuardingPearSoftwares Obfuscator was developed to increase your software
and game security, especially for applications built with Unity.
Its main objective is to conceal your own proprietary source code, and
third party compiled dotNet assemblies as well. We support all known platforms,
whether standalone or embedded.
== How To ==
The Obfuscator runs, when activated (is the default), automatically at
build time. Directly after Unity generates the build target specific
assemblies (*.dll), generated at Library\ScriptAssemblies, the Obfuscator
applies to them.
== Settings ==
The Obfuscator comes with a "Settings" window allowing to specify exactly and
user friendly which assemblies should be obfuscated and what features should apply
to them. You can find it in the Unity Editor Menu OPS->Obfuscator->Settings.
== Error Stack Trace ==
To still be able to debug or understand obfuscated error logs, the Obfuscator
comes with a "Error Stack Trace" window. Here you can load a mapping file (you
have to activate it in the settings) and enter a obfuscated stack trace.
Pressing "Deobfuscate" the obfuscator will try to deobfuscate the stack trace.
You can find it in the Unity Editor Menu OPS->Obfuscator->Error Stack Trace.
+7
View File
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 2a1cfcea59628aa4baade5adf1cc35f1
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 43e6327b1153107489c577b93c54e738
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
@@ -0,0 +1,642 @@
{
"ComponentSettings_Array" : [
{
"Settings_Name" : "Default_Compatibility_Component_DotNet",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Unity",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Obfuscator",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Chartboost",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Chartboost",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Facebook_Sdk",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Google_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Google",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Json_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Json",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Photon_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Photon",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_PlayMaker_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_PlayMaker",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Assembly",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Assembly_AssemblyCSharp",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Assembly_AssemblyCSharpFirstPass",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Assembly_In_Assets_AssemblyDefinitionFiles",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Assembly_In_Packages_AssemblyDefinitionFiles",
"Value" : "False",
"Values" : null
},
{
"Type" : "Array_String",
"Key" : "Obfuscate_Assembly_Additional_Assembly_Array",
"Value" : null,
"Values" : [
"RgfCDfHLhn9WSDK.dll"
]
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Find_Unity_Animation_MethodReferences",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Animation_Methods",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Animation_Methods_In_Models",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Animation_Methods_In_AnimationClips",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Animation_Methods_In_AnimatorControllers",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Find_Unity_Gui_MethodReferences",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Gui_Methods",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_String_Reflection_And_Coroutine",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_String_Reflection_And_Coroutine",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Logging",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Namespace",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Namespaces",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Skip_Namespace_ViceVersa",
"Value" : "False",
"Values" : null
},
{
"Type" : "Array_String",
"Key" : "Skip_Namespace_Array",
"Value" : null,
"Values" : [
"IgnoreOPS",
"RgfCDfHLhn9WSDK",
"BigoAds",
"KwaiAds",
"AD",
"AppsFlyerSDK"
]
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Class",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Classes",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Internal",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Private",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Protected",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Public",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Abstract",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Generic",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_MonoBehaviour",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_MonoBehaviour_Not_Obfuscatable",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_MonoBehaviour_Extern",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_MonoBehaviour_Not_Obfuscatable_Extern",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_ScriptableObject",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Playable",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Struct",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Enum",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Serializable",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Method",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Methods",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Method_Internal",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Method_Private",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Method_Protected",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Method_Public",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Parameter",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Method_Parameter",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Class_Parameter",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Field",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Fields",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Internal",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Private",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Protected",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Public",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Enums",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Field_Struct",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Property",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Properties",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Property_Internal",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Property_Private",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Property_Protected",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Property_Public",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Event",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Obfuscate_Events",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Event_Internal",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Event_Private",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Event_Protected",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Obfuscate_Event_Public",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Custom_Attributes",
"SettingElement_Array" : [
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Renaming",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Load_Mapping",
"Value" : "False",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Save_Mapping",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Add_Random_Code",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Add_Random_Code",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Method_ControlFlow",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Method_ControlFlow",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_String",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_String_Obfuscation",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Assembly_Suppress_ILDasm",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Assembly_Suppress_ILDasm",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_AntiTampering",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_AntiTampering_Protection",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Obfuscation_Component_Find_Unity_Event_MethodReferences",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Unity_Event_Methods",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Unity_Event_Methods_In_Scenes",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Enable_Try_Find_Inspector_Unity_Event_Methods_In_Prefabs",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_PlayFab_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_PlayFab",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Meta",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Meta_Assemblies",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Skip_Facebook_Assemblies",
"Value" : "True",
"Values" : null
},
{
"Type" : "Bool",
"Key" : "Skip_Oculus_Assemblies",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_Realms_Sdk",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Skip_Realms",
"Value" : "True",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Addressable_Component_Class",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Enable_Try_Obfuscate_Addressables",
"Value" : "False",
"Values" : null
}
]
},
{
"Settings_Name" : "Default_Compatibility_Component_PixelCrushers",
"SettingElement_Array" : [
]
}
],
"Version" : "5.6.0",
"SettingElement_Array" : [
{
"Type" : "Bool",
"Key" : "Global_Enable_Obfuscation",
"Value" : "False",
"Values" : null
}
]
}
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 63e6e37d4cefc5044b30db70602f1f2d
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+446
View File
@@ -0,0 +1,446 @@
# Version History:
## 5.6.0: Big Assets - Update
Features:
- [Feature-2025-5] Added settings tp customize obfuscation of delegates [thanks David].
- [Feature-2025-4] The 'Add random code' security component now has a setting that can be used to force the generation of random codes for classes where this would otherwise be skipped.
- [Feature-2025-3] Support of PixelCrushers assets (Dialogue System & Quest Machine) [thanks Marcus].
Bug Fixes:
- [Bug-2025-3] Patching assets or resources exceeding 2 GB triggered an overflow exception [thanks Joon].
## 5.5.0: Enums & Structs - Update
Features:
- [Feature-2025-2] Obfuscation of enum and struct class fields can now be customized to meet specific needs. The field settings have been extended to include dedicated settings for fields in enums and structs.
- [Feature-2025-1] Obfuscation of enum and struct classes can now be customized to meet specific needs. The class settings have been extended to include dedicated settings for enums and structs.
Improvements:
- [Imprv-2025-1] The Obfuscate Anyway attribute now includes support for structs. Additionally, it allows for random obfuscation names when the passed name field is left empty or null.
Bug Fixes:
- [Bug-2025-1] Fixed an issue where internal classes were only obfuscated when obfuscation of private classes was enabled, but not when obfuscation of internal classes was enabled. This has been corrected and internal classes are now obfuscated correctly. Notably, nested internal classes were correctly recognized and handled during this process.
## 5.4.1: Internal - Update
- Improvement: Some internal optimizations to make the Obuscator more robust.
## 5.4.0: Mapping - Update
- Feature: The obfuscation mapping can now be loaded from a web endpoint (Get) and saved at a web endpoint (Post).
- Improvement: If an obfuscation mapping could not be saved in the location specified by the user, it is saved in the obfuscator temp directory 'Assets\OPS\Obfuscator\Temp' [thanks David].
## 5.3.2: data.unity3d - Hotfix 2
- Fix: Error while obfuscating data.unity3d file '.../data.unity3d': Value cannot be null. Parameter name: _Assembly [thanks David].
- Compatibility: Most compatibility components can now be manually activated or deactivated. Default is activated.
## 5.3.1: data.unity3d - Hotfix
- Fix: Error while obfuscating data.unity3d file : Unable to read beyond the end of the stream [thanks Josh].
## 5.3.0: iOS - Update
- Improvement: Unity animation compatibility - You can now customize where animation callbacks should be automatically searched (models, animation clips, animator controllers).
- Improvement: Unity event compatibility - You can now customize where event callbacks should be automatically searched (scenes, prefabs).
- Fix: iOS build - MonoBehaviours were not obfuscated correctly in Unity 2022+ iOS builds. Resulting in MonoBehaviours failed to be resolved while runtime.
## 5.2.0: Addressable - Update
As this is a major update, it is recommended to remove the current OPS directory, make a backup copy of the Obfuscator settings file and download the new version.
- Feature: Lz4 / Lz4HC - The Obfuscator now supports obfuscation of builds that use compression with Lz4 and Lz4HC. This does not affect your workflow, but only improves the obfuscation of MonoBehaviours, which previously required a workaround.
- Feature: Addressables - A popular Unity asset to address assets from different locations. Obfuscator now supports obfuscation of addressable bundles using the JSON catalog. To activate obfuscation of Addressables activate it under the 'Compatibility' tab [thanks Dmitriy].
- Improvement: Memory usage - Obfuscator estimates the compatibility of assets for obfuscation. This included model or texture files. These were not disposed of correctly after loading, leading to potential memory issues.
- Fix: XCode - Obfuscator failed when creating XCode projects. This has been fixed [thanks Misha].
## 5.1.7: Burst - Update
- Fix: Obfuscated strings compiled by 'Burst' throw an exception that they cannot call managed code in a native environment. Therefore, strings in 'BurstCompile' jobs are now skipped from obfuscation. They are automatically safe due to their native environment [thanks Curtis].
- Fix: There was a rare case in which a type could not be resolved correctly. This caused an exception when building the Unity project. This is now fixed and even if a type still cannot be resolved, a warning is now displayed and the type is skipped from the obfuscation [thanks Cameron].
## 5.1.6: MongoDB Realm - Update
- Compatibility: Made the Obfuscator compatible with 'MongoDB Realm' [thanks Hector].
-> Classed that inherite from Realms.IAsymmetricObject, Realms.IEmbeddedObject, Realms.IRealmObject and read/store data in the storage can be skipped from obfuscation to preserve the data integrity.
- Improvement: The random code generation no longer will create random code in classes that are skipped from obfuscation. This often lead to unexpected problems, as these classes were skipped by the user for a specific reason.
## 5.1.5:
- Fix: When disabling obfuscating for serializeable classes, serializeable fields still got obfuscated [thanks Eric].
- Compatibility: Fixed a compatibility issue with Zenject [thanks Dmitriy].
## 5.1.4:
- Fix: The obfuscation pipline did not check correctly for a development build. So "NotObfuscatedCauseAttribute" were not added to development builds.
- Fix: When obfuscating "older" .Net-Framework assemblies that had native pdb symbols, those symbols could not be rewritten, causing a failed build. The new default for these are portable pdf symbols (which makes even more sense for unity).
- Compatibility: Fixed a compatibility issue with StateMachineBehaviours when obfuscating ScriptableObjects.
## 5.1.3:
- Compatibility: .NetStandard - Obfuscator 2021 and 2022 now use .NetStandard 2.0 and 2023 and onwards use .NetStandard 2.1.
- QoL: The log writer now checks for invalid file locations.
## 5.1.2:
- Fix: Bee compiler could not resolve 'OPS.Obfuscator.Editor'.
## 5.1.1:
- Fix: Compatibility with Unity 2023.1 and onwards by switching the obfuscator build to .NetStandard 2.1.
- Add: Support of Meta SDKs - Facebook and Oculus
- Add: Support of Microsoft Playfab.
## 5.1.0:
- Add: OnRectTransformDimensionsChange will now be skipped from obfuscation for MonoBehaviours.
- Update: The UI / GUI compatibility addon was changed to an Unity-Event addon. Mostly UI / GUI or similiar methods are based on UnityEvent.
When activated (by default it is activated), all methods attached to these events will be skipped.
## 5.0.5:
- Fix: Compatibility fix for the Universal Render Pipeline (URP).
## 5.0.4:
- Fix: Json serialization for public fields - Class requires Serializable Attribute.
- Fix: Dependency fix at release build.
## 5.0.3:
- Fix: OPS.Obfuscator.dll assembly was loaded as to obfuscate assembly. Is now a helper assembly.
## 5.0.2:
- Fix: Reference bug to OPS.Obfuscator.dll.
## 5.0.1:
- Improved Gui/Animation method recognition.
- Obfuscator UI improvement.
- OPS.Obfuscator.dll is now an AssemblyDefinitionFile.
- Fix: Removed OPS.Obfuscator.dll from release builds.
## 5.0
== Obfuscator 5.0 Introduction ==
The Obfuscator 5.0 version optimizes the MonoBehaviour protection and brings the obfuscation through
new features on a new level. By introducing ControlFlow Obfuscation, method bodies will be scrambled
and transformed into a nearly human unreadable form. An also new feature is the AntiTampering Obfuscation.
This feature builds a system of micro-checks to prevent modification and keeps hacker away.
----------------------------------------
4.0.6:
- Fix: Building Addressable Assets will no longer trigger the obfuscator and a so failed build.
- Add: You can now enter a custom log directory, instead of a file path only. In this directory, the log will be seperated by platform.
4.0.5:
- Fix: ArgumentException: ... Type .. has no scope?
4.0.4:
- Fix: On Analyse Scenes / Components - MissingMethodException.
- Fix: Enum wont be obfuscated if 'Obfuscate Serializable Classes' is deactivated.
4.0.3
- Fix: While processing pre build pipeline: System.MissingMethodException
4.0.2
- Fix: InvalidCastException while analysing assemblies.
- Fix: Yaml failed deserialization while analysing assets.
4.0.1
- Add: EventTrigger inspector method will now be recognized too.
4.0
== Obfuscator 4.0 Introduction ==
The Obfuscator 4.0 version is a bottom up new implemented Obfuscator, to increase the performance, security and
compatibility to Unity 2018+ versions. For you the process keeps the same. The Obfuscator still automatically applies
the obfuscation at build time. The Setting and Error-Stack-Track windows got a face lifting to be more intuitive and easier
to use. The settings and rename-mapping are now stored in a Json serialized file. This means for you,
because of the modification and the extension of the settings, you have to readjust the settings in the settings window.
It is not necessary to change the rename-mapping files. They will still be normally interpreted. But new rename-mappings
will be stored in the new Json format.
Most important obfuscation changes:
- You have more options to decide which assemblies you want to obfuscate.
- The string obfuscation is now way more advanced. (Pro only)
- The obfuscation of MonoBehaviour/ScriptableObject/Playable subclasses is way more advanced too. (Pro only)
- Also inspector set values / methods are now even better recognized.
----------------------------------------
3.9.10
- Add: Support of System.Reflection.ObfuscationAttribute
3.9.9
- Fix: Obfuscation of Indexer Properties with custom names.
- Add: Support of AppodealAds.
3.9.8
- Fix: Could not resolve abc/xyz (Enums in Nested Classes)
- Fix: Obfuscation of Indexer Properties
- New: Added 'OPS.Obfuscator.Attribute.ObfuscateAnyway', allows to obfuscate class members even if they should be skipped.
3.9.7
- Fix: "Could not copy Temp/xyz to Library/xyz"
- Fix: Button background in Settings Gui.
3.9.6
- Update: Compatibility Update for next Obfuscator Version 4.0
- Fix: Fix for Playable classes
3.9.5
- Fix: Obfuscation of UWP/Windows Store applications may fail if some dependency is missing.
- Fix: A NullReferenceException might occur when obfuscating multiple assemblies.
- Update: You can now manually activate/deactivate the obfuscation of 'Assembly-CSharp.dll'
and 'Assembly-CSharp-firstpass.dll'. (Do not forget to activate the obfuscation of those
through the belonging settings, in the Obfuscator Settings General Tab, after updating!!)
- Update: Third party assembly Mono.Cecil got an update.
- Pro: Removed: Removed the 'OPS.ObfuscatorAssets.dll' assembly located in the
'OPS\Obfuscator.Pro\Editor\Plugins' directory, it is now part of the 'OPS.Obfuscator.Editor.dll'
assembly. (Depending on the used Unity Editor, you have to remove the assembly
'OPS.ObfuscatorAssets.dll' manually after updating!!)
3.9.4
- Pro: Fix: Unity obfuscation had a small artifact causing build errors, fixed that.
- Fix: NullPointer Exception in the Assembly analysation phase. (sorry for that!)
- New: Unity Editor before version 5.6 are now theoretically supported (but not tested yet!)
- Change: Public Field and Public Method Obfuscation are now part of the free version again.
3.9.3
- New: In the obfuscator settings (general tab) you can now add additional assembly references, if the obfuscator has a problem resolving those.
3.9.2
- Fix: Whole obfuscation breaks if one assembly was not found.
- Pro: Fix: Unity class obfuscation fixes.
- New: Unity Linux Editor support.
3.9.1
- Fix: Assembly resolving fix.
3.9:
- Pro: Fix: Unity class (monobehaviour/scriptableobject) name obfuscation is active again for unity builds later than 2018.2!
Not in the same way as before, but still very effective!
- Fix: Virtual/Abstract Properties got not obfuscated correctly.
- Pro: Improvement: String obfuscation.
- New: Suppress Debug through Visual Studio.
3.8
- Pro: Fix: Test AssemblyDefinition Files got obfuscated too, causing an error.
- Fix: Properties did get obfuscated correctly (virtual/abstract properties still have the bug, but a fix is on the way.)
- Add: Support for unity 2019.2 beta and 2019.3 alpha.
- Add: You can now obfuscate serializeable field.
- Add: Notification inside development builds, showing you why something got not obfuscated.
- Pro: Currently deprecated: Unreadability for decompilers is no longer working, the trick got worked around by decompilers. (But working on a new way.)
3.7
- Change: Renamed OPS.Obfuscator assembly to OPS.Obfuscator.Editor
- Add: Added a assembly called OPS.Obfuscator containing the obfuscator attributes.
Fixes that you could not use Obfuscator Attributes inside AssemblyDefinition Files.
3.6.1
- New: Now you can log in a custom file. Go to the Obfuscator Window->Advanced->Logging.
3.6
- Fix + Improvement: Various minor fixes and improvement to increase the obfuscation performance.
- Fix: WSA/UWP obfuscation build error.
- Change: Obfuscator Windows are now located at OPS->Obfuscator->... instead of Window->...
3.5.5
- Fix: Obfuscation sometimes wont run on first build.
- Fix: Obfuscation of generic nested classes in generic classes.
- Pro: Improvement: Improvement of String obfuscation/encryption.
3.5.4
- Pro: Fix: Old reference to OPS.RSA.
3.5.3
- Pro: Fix: Obfuscator_UnityObject_RenamingTable.obf still exists.
- Pro: Change: String encryption is now a symmetric encryption instead of a asymmetric encryption. The power needy asymmetric decryption could cause hickups.
3.5.2
- Fix: Seperated obfuscation of enum fields/values from obfuscation of class fields.
3.5.1
- Adjustment: Removed usage of custom fonts. May correlate with a editor font bug while using NGUI.
3.5
- Fix: Property and Event Obfuscation might cause unknown Type in mscorlib errors.
- Add: Better controlability of obfuscation for string based invokes. Added a setting at Advanced -> Reflection and Coroutines,
to activate/deactivate obfuscation of members matching string. (Activate if you use for example Type.GetField([Name]) or StartCoroutine([Name]))
- Add: Obfuscation setting of internal members.
- Change: The obfuscation of internal members is now seperated from the private members.
- Update: Updated Mono.Cecil to 0.10.3.
3.4.1
- Update: Updated Mono.Cecil to 0.10 to fix the out of memory bug.
3.4
- Fix: Obfuscation for Reflection and Unity Coroutines
- Fix: Obfuscation of Internal members.
- Change: Private setting controls now the obfuscation of private and internal members.
- Change: Public field and method obfuscation is now only available in Obfuscator Pro.
3.3
- Bug fix: Mac OS X support
- Bug fix: Automatically finding of Gui/Animation/... methods
- Change: Logging - The logs filename depends now one the buildtarget and not the date anymore
- Pro: Change: You can now add additional assemblies by it full path
3.2
- Bug fix: Parameter renaming
- Bug fix: Namespace and unity classes renaming
- Bug fix: Nested classes renaming
- Bug fix: Attribute renaming
3.1
- New: StackTrace unobfuscator: You can find it at Unity->Window->Obfuscator StackTrace.
- Bug fix: Obfuscation of Class/Method using RuntimeInitializeOnLoadMethodAttribute
- Some adjustments for property and event obfuscation
- Various small bugfixes
3.0
Obfuscator got reimplemented to improve the obfuscation process
to optimize your security. Because of this, there is a plenty
amount of new feature included:
- Pro: New: Assembly Definition File obfuscation
- Pro: New: External Assembly obfuscation
- New: Obfuscate Serializeable classes/fields
- New: Save/Load renaming mapping
- Many Bugfixes and improvements
- Logs are now stored inside the Obfuscator folder.
- Attributes have moved to OPS.Obfuscator.Attribute
- Pro: The Obfuscator Code is still unprotected inside the .dll. But moved to a assembly because of the massive amount of new code.
INFO: Please remove your old Obfuscator installation(but you can keep your settings file)!
2.9
- Next to the build game, there will be a file called: MyGame_ObfuscatorRenaming.txt
containing the obfuscated name and the real name. Useful for reading the stack trace of build games.
- Improvement: Finding gui / unityevent methods
- Bug fix: Namespace collidation of 'System.IO.Path' for some users
- Bug fix: Namespaces in the ignore list shared the same value with the do not rename attribute list
- Pro: Bug fix: String obfuscation and namespace vice versa ignoring
- Pro: Improvement: String obfuscation speed and process of encryption
2.81
- First fixing of MonoBehaviour class name obfuscation in Unity 2018.2
- Obfuscator performance update
- Improved intercompatibility with AssetProtection
- Beta: Unity Methods Obfuscation ( like Awake, Start, Update, ... )
INFO: Important to know: Still not all MonoBehaviour class names get obfuscated in Unity 2018.2.x. But research is in progress.
2.8
- Some Gui adjustments
- Beta: Unity Methods Obfuscation
2.7.1
- RSA Encryption Upgrade
INFO: Unity 2018.2.x seems to have a bug with Obfuscation of MonoBehaviour class names. Please use a prior verion until this got fixed.
2.7
- Some Gui adjustments
- Some adjustments with IL2CPP builds
- Pro: Adjustments with the 'make assembly unreadable' feature
2.6
- Compatibility with PlayMaker
- Some adjustments for PS4 and XboxOne build
- Some logging adjustments
- Pro only: Some adjustments for jenkins builds
2.55
- Resolving Fix for abstract classes.
- Compatibility with Anti Cheat
2.54
- Fix for an error while loading assets.
- Fix for a bug happening while resolving class hierarchies.
- Pro only: Fix for the string obfuscation causing: 'Cannot perform dot operator' or 'expected ;'
2.53
Hotfix for UWP
- WinRt assmembly gets now resolved too.
- Fixes Bug: Could not resolve Nested Type XYZ.
- Some adjustments with obfuscation of generic classes.
2.52
Hotfix for IL2CPP and UWP
- Fixed obfuscation error of nested generic methods in generic classes.
- Streamwriter fix for UWP
- Some IL2CPP adjustments
2.51
Hotfix for IL2CPP
- Fixed obfuscation error of nested classes in generic classes.
- Fixed bug, while building with IL2CPP: Field/Method is not definied/found.
- Pro only: Some fixes for random code creation.
2.5
- Important! The folder structure changed. The Obfuscator files will now be found in the folder OPS!
- Fix for a possible Nullpointer exception in the BuildPostProcessor.
- Added to all scripts, using an unityeditor, an #define to prevent possible resource.asset errors.
- Renaming fix for IEnumeration methods.
- Added a new setting, under the Advanced settings, to define custom attributes to behave like DoNotRename.
- Pro only: Some fixes for random code creation.
- Some gui adjustments
2.4
- IBM Watson SDK compatibility
- New method to find GUI methods
- New user Gui
- Warning fix for old build platforms
- Bug fix: Vice Versa settings wont get saved
- Bug fix: Sometimes base classes wont get obfuscated, but inherited classes get obfuscated
2.31
- Needs now at least Unity 5.6.1 (Because of IL2cpp)
- Javascript/Unityscript obfuscation is no longer supported, because of the Unity Asset Store Guidelines.
2.3
- Now with IL2CPP obfuscation!
- New Readme.
- Some Gui fixes.
- Error fix trough random code containing methods with try/catch
2.2
Animation Update:
- Find automatically animation event method option.
- Fixed some problems with animation itself.
- Fixed some problems with inheritance.
- Added more Unity messages to skip.
2.11
=> IMPORTANT UPDATE!
- Fixed Problem with Generic Addon!
- Fixed Problem with classes sharing the same name!
2.1
- Beta: Xbox 360/One and Playstation 3/4
- Option for obfuscation of Abstract and Generic Unity classes
- Some minor fixes
=> Close Obfuscator Window before update!
2.0
- Now, after dll compile Obfuscation. Not post project build Obfuscation.
-> If you notice any problems switch back to obfuscator version 1.37.
-> Auto GUI finder now will only find methods from the first scene.
- New Enum Obfuscation option
- Now with better progress bar
- Some bugfixes
1.37
- Dynamic DLL fix
- Some Adjustment with Attributes
1.36
- Saving Settings in 'Settings.txt', but Android Settings. (To protect passwords)
- Error Code 1 and 10 fix are now automatic fallbacks.
- Fixed a bug when calling zipalign on an Android apk and Unity has not enough rights. (An GAME_Obfuscated.apk gets now created)
1.35
- Error Code 1 auto fix adjusted and optimized!
- Namespace obfuscation vice versa option.
- Serialization Bug Fix (#5)
- Some intern optimizations
1.34
- Fixed Bug: Finding GUI methods containing characters like 'P' or '0'. (#4)
- Adjusted Obfuscation for Serializable classes and fields.
- Some intern optimizations
1.33
- Auto scan for GUI methods (No longer need of DoNotRename on GUI methods)
- Find paths for Android sign process
- Added new GUI Elements to activate Error Code 1 and 10 auto fix.
- Adjusted UnityScript Attributes
1.32
- Performance Improvement
- Fix for Android Sign / Zip Bug
- New Message for Inheritance Problems between Obfuscated and not
Obfuscated classes
- New Attribute(Class/Method) that make the obfuscator ignore MethodBodies obfuscation
1.31
- Switching from AES String Obfuscation to custom RSA String Obfuscation to allow Metro (Windows Universal/…) platform support.
- Metro (Windows Universal/…) platform support.
- Fixed Bug Store in Ram (#2)
- Fixed Bug Code E9 (#3)
1.3
- Added Facebook Platform support
- Added WebGL Platform support
- Demo has not to get removed anymore
1.22
- Fixed 'Adding Random Code' bug #1
- Upgraded to Mono.Cecil 0.96
- Fixed some errors in the Readme
1.21 Switched from Unity 5.6.0 to 5.1.0
1.2 Fixed Bug on Mac. And added IPhone support!
1.11 Android Sign Process
1.1 Added Android Build
1.01 Several BugFixes.
1.0 First official release of Obfuscator Free and Pro.
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 59236a09063df164bba6c3630aa3fa24
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+398
View File
@@ -0,0 +1,398 @@
Version History:
5.1.7: Burst - Update
- Fix: Obfuscated strings compiled by 'Burst' throw an exception that they cannot call managed code in a native environment. Therefore, strings in 'BurstCompile' jobs are now skipped from obfuscation. They are automatically safe due to their native environment [thanks Curtis].
- Fix: There was a rare case in which a type could not be resolved correctly. This caused an exception when building the Unity project. This is now fixed and even if a type still cannot be resolved, a warning is now displayed and the type is skipped from the obfuscation [thanks Cameron].
5.1.6: MongoDB Realm - Update
- Compatibility: Made the Obfuscator compatible with 'MongoDB Realm' [thanks Hector].
-> Classed that inherite from Realms.IAsymmetricObject, Realms.IEmbeddedObject, Realms.IRealmObject and read/store data in the storage can be skipped from obfuscation to preserve the data integrity.
- Improvement: The random code generation no longer will create random code in classes that are skipped from obfuscation. This often lead to unexpected problems, as these classes were skipped by the user for a specific reason.
5.1.5:
- Fix: When disabling obfuscating for serializeable classes, serializeable fields still got obfuscated [thanks Eric].
- Compatibility: Fixed a compatibility issue with Zenject [thanks Dmitriy].
5.1.4:
- Fix: The obfuscation pipline did not check correctly for a development build. So "NotObfuscatedCauseAttribute" were not added to development builds.
- Fix: When obfuscating "older" .Net-Framework assemblies that had native pdb symbols, those symbols could not be rewritten, causing a failed build. The new default for these are portable pdf symbols (which makes even more sense for unity).
- Compatibility: Fixed a compatibility issue with StateMachineBehaviours when obfuscating ScriptableObjects.
5.1.3:
- Compatibility: .NetStandard - Obfuscator 2021 and 2022 now use .NetStandard 2.0 and 2023 and onwards use .NetStandard 2.1.
- QoL: The log writer now checks for invalid file locations.
5.1.2:
- Fix: Bee compiler could not resolve 'OPS.Obfuscator.Editor'.
5.1.1:
- Fix: Compatibility with Unity 2023.1 and onwards by switching the obfuscator build to .NetStandard 2.1.
- Add: Support of Meta SDKs - Facebook and Oculus
- Add: Support of Microsoft Playfab.
5.1.0:
- Add: OnRectTransformDimensionsChange will now be skipped from obfuscation for MonoBehaviours.
- Update: The UI / GUI compatibility addon was changed to an Unity-Event addon. Mostly UI / GUI or similiar methods are based on UnityEvent.
When activated (by default it is activated), all methods attached to these events will be skipped.
5.0.5:
- Fix: Compatibility fix for the Universal Render Pipeline (URP).
5.0.4:
- Fix: Json serialization for public fields - Class requires Serializable Attribute.
- Fix: Dependency fix at release build.
5.0.3:
- Fix: OPS.Obfuscator.dll assembly was loaded as to obfuscate assembly. Is now a helper assembly.
5.0.2:
- Fix: Reference bug to OPS.Obfuscator.dll.
5.0.1:
- Improved Gui/Animation method recognition.
- Obfuscator UI improvement.
- OPS.Obfuscator.dll is now an AssemblyDefinitionFile.
- Fix: Removed OPS.Obfuscator.dll from release builds.
5.0
== Obfuscator 5.0 Introduction ==
The Obfuscator 5.0 version optimizes the MonoBehaviour protection and brings the obfuscation through
new features on a new level. By introducing ControlFlow Obfuscation, method bodies will be scrambled
and transformed into a nearly human unreadable form. An also new feature is the AntiTampering Obfuscation.
This feature builds a system of micro-checks to prevent modification and keeps hacker away.
4.0.6:
- Fix: Building Addressable Assets will no longer trigger the obfuscator and a so failed build.
- Add: You can now enter a custom log directory, instead of a file path only. In this directory, the log will be seperated by platform.
4.0.5:
- Fix: ArgumentException: ... Type .. has no scope?
4.0.4:
- Fix: On Analyse Scenes / Components - MissingMethodException.
- Fix: Enum wont be obfuscated if 'Obfuscate Serializable Classes' is deactivated.
4.0.3
- Fix: While processing pre build pipeline: System.MissingMethodException
4.0.2
- Fix: InvalidCastException while analysing assemblies.
- Fix: Yaml failed deserialization while analysing assets.
4.0.1
- Add: EventTrigger inspector method will now be recognized too.
4.0
== Obfuscator 4.0 Introduction ==
The Obfuscator 4.0 version is a bottom up new implemented Obfuscator, to increase the performance, security and
compatibility to Unity 2018+ versions. For you the process keeps the same. The Obfuscator still automatically applies
the obfuscation at build time. The Setting and Error-Stack-Track windows got a face lifting to be more intuitive and easier
to use. The settings and rename-mapping are now stored in a Json serialized file. This means for you,
because of the modification and the extension of the settings, you have to readjust the settings in the settings window.
It is not necessary to change the rename-mapping files. They will still be normally interpreted. But new rename-mappings
will be stored in the new Json format.
Most important obfuscation changes:
- You have more options to decide which assemblies you want to obfuscate.
- The string obfuscation is now way more advanced. (Pro only)
- The obfuscation of MonoBehaviour/ScriptableObject/Playable subclasses is way more advanced too. (Pro only)
- Also inspector set values / methods are now even better recognized.
----------------------------------------
3.9.10
- Add: Support of System.Reflection.ObfuscationAttribute
3.9.9
- Fix: Obfuscation of Indexer Properties with custom names.
- Add: Support of AppodealAds.
3.9.8
- Fix: Could not resolve abc/xyz (Enums in Nested Classes)
- Fix: Obfuscation of Indexer Properties
- New: Added 'OPS.Obfuscator.Attribute.ObfuscateAnyway', allows to obfuscate class members even if they should be skipped.
3.9.7
- Fix: "Could not copy Temp/xyz to Library/xyz"
- Fix: Button background in Settings Gui.
3.9.6
- Update: Compatibility Update for next Obfuscator Version 4.0
- Fix: Fix for Playable classes
3.9.5
- Fix: Obfuscation of UWP/Windows Store applications may fail if some dependency is missing.
- Fix: A NullReferenceException might occur when obfuscating multiple assemblies.
- Update: You can now manually activate/deactivate the obfuscation of 'Assembly-CSharp.dll'
and 'Assembly-CSharp-firstpass.dll'. (Do not forget to activate the obfuscation of those
through the belonging settings, in the Obfuscator Settings General Tab, after updating!!)
- Update: Third party assembly Mono.Cecil got an update.
- Pro: Removed: Removed the 'OPS.ObfuscatorAssets.dll' assembly located in the
'OPS\Obfuscator.Pro\Editor\Plugins' directory, it is now part of the 'OPS.Obfuscator.Editor.dll'
assembly. (Depending on the used Unity Editor, you have to remove the assembly
'OPS.ObfuscatorAssets.dll' manually after updating!!)
3.9.4
- Pro: Fix: Unity obfuscation had a small artifact causing build errors, fixed that.
- Fix: NullPointer Exception in the Assembly analysation phase. (sorry for that!)
- New: Unity Editor before version 5.6 are now theoretically supported (but not tested yet!)
- Change: Public Field and Public Method Obfuscation are now part of the free version again.
3.9.3
- New: In the obfuscator settings (general tab) you can now add additional assembly references, if the obfuscator has a problem resolving those.
3.9.2
- Fix: Whole obfuscation breaks if one assembly was not found.
- Pro: Fix: Unity class obfuscation fixes.
- New: Unity Linux Editor support.
3.9.1
- Fix: Assembly resolving fix.
3.9:
- Pro: Fix: Unity class (monobehaviour/scriptableobject) name obfuscation is active again for unity builds later than 2018.2!
Not in the same way as before, but still very effective!
- Fix: Virtual/Abstract Properties got not obfuscated correctly.
- Pro: Improvement: String obfuscation.
- New: Suppress Debug through Visual Studio.
3.8
- Pro: Fix: Test AssemblyDefinition Files got obfuscated too, causing an error.
- Fix: Properties did get obfuscated correctly (virtual/abstract properties still have the bug, but a fix is on the way.)
- Add: Support for unity 2019.2 beta and 2019.3 alpha.
- Add: You can now obfuscate serializeable field.
- Add: Notification inside development builds, showing you why something got not obfuscated.
- Pro: Currently deprecated: Unreadability for decompilers is no longer working, the trick got worked around by decompilers. (But working on a new way.)
3.7
- Change: Renamed OPS.Obfuscator assembly to OPS.Obfuscator.Editor
- Add: Added a assembly called OPS.Obfuscator containing the obfuscator attributes.
Fixes that you could not use Obfuscator Attributes inside AssemblyDefinition Files.
3.6.1
- New: Now you can log in a custom file. Go to the Obfuscator Window->Advanced->Logging.
3.6
- Fix + Improvement: Various minor fixes and improvement to increase the obfuscation performance.
- Fix: WSA/UWP obfuscation build error.
- Change: Obfuscator Windows are now located at OPS->Obfuscator->... instead of Window->...
3.5.5
- Fix: Obfuscation sometimes wont run on first build.
- Fix: Obfuscation of generic nested classes in generic classes.
- Pro: Improvement: Improvement of String obfuscation/encryption.
3.5.4
- Pro: Fix: Old reference to OPS.RSA.
3.5.3
- Pro: Fix: Obfuscator_UnityObject_RenamingTable.obf still exists.
- Pro: Change: String encryption is now a symmetric encryption instead of a asymmetric encryption. The power needy asymmetric decryption could cause hickups.
3.5.2
- Fix: Seperated obfuscation of enum fields/values from obfuscation of class fields.
3.5.1
- Adjustment: Removed usage of custom fonts. May correlate with a editor font bug while using NGUI.
3.5
- Fix: Property and Event Obfuscation might cause unknown Type in mscorlib errors.
- Add: Better controlability of obfuscation for string based invokes. Added a setting at Advanced -> Reflection and Coroutines,
to activate/deactivate obfuscation of members matching string. (Activate if you use for example Type.GetField([Name]) or StartCoroutine([Name]))
- Add: Obfuscation setting of internal members.
- Change: The obfuscation of internal members is now seperated from the private members.
- Update: Updated Mono.Cecil to 0.10.3.
3.4.1
- Update: Updated Mono.Cecil to 0.10 to fix the out of memory bug.
3.4
- Fix: Obfuscation for Reflection and Unity Coroutines
- Fix: Obfuscation of Internal members.
- Change: Private setting controls now the obfuscation of private and internal members.
- Change: Public field and method obfuscation is now only available in Obfuscator Pro.
3.3
- Bug fix: Mac OS X support
- Bug fix: Automatically finding of Gui/Animation/... methods
- Change: Logging - The logs filename depends now one the buildtarget and not the date anymore
- Pro: Change: You can now add additional assemblies by it full path
3.2
- Bug fix: Parameter renaming
- Bug fix: Namespace and unity classes renaming
- Bug fix: Nested classes renaming
- Bug fix: Attribute renaming
3.1
- New: StackTrace unobfuscator: You can find it at Unity->Window->Obfuscator StackTrace.
- Bug fix: Obfuscation of Class/Method using RuntimeInitializeOnLoadMethodAttribute
- Some adjustments for property and event obfuscation
- Various small bugfixes
3.0
Obfuscator got reimplemented to improve the obfuscation process
to optimize your security. Because of this, there is a plenty
amount of new feature included:
- Pro: New: Assembly Definition File obfuscation
- Pro: New: External Assembly obfuscation
- New: Obfuscate Serializeable classes/fields
- New: Save/Load renaming mapping
- Many Bugfixes and improvements
- Logs are now stored inside the Obfuscator folder.
- Attributes have moved to OPS.Obfuscator.Attribute
- Pro: The Obfuscator Code is still unprotected inside the .dll. But moved to a assembly because of the massive amount of new code.
INFO: Please remove your old Obfuscator installation(but you can keep your settings file)!
2.9
- Next to the build game, there will be a file called: MyGame_ObfuscatorRenaming.txt
containing the obfuscated name and the real name. Useful for reading the stack trace of build games.
- Improvement: Finding gui / unityevent methods
- Bug fix: Namespace collidation of 'System.IO.Path' for some users
- Bug fix: Namespaces in the ignore list shared the same value with the do not rename attribute list
- Pro: Bug fix: String obfuscation and namespace vice versa ignoring
- Pro: Improvement: String obfuscation speed and process of encryption
2.81
- First fixing of MonoBehaviour class name obfuscation in Unity 2018.2
- Obfuscator performance update
- Improved intercompatibility with AssetProtection
- Beta: Unity Methods Obfuscation ( like Awake, Start, Update, ... )
INFO: Important to know: Still not all MonoBehaviour class names get obfuscated in Unity 2018.2.x. But research is in progress.
2.8
- Some Gui adjustments
- Beta: Unity Methods Obfuscation
2.7.1
- RSA Encryption Upgrade
INFO: Unity 2018.2.x seems to have a bug with Obfuscation of MonoBehaviour class names. Please use a prior verion until this got fixed.
2.7
- Some Gui adjustments
- Some adjustments with IL2CPP builds
- Pro: Adjustments with the 'make assembly unreadable' feature
2.6
- Compatibility with PlayMaker
- Some adjustments for PS4 and XboxOne build
- Some logging adjustments
- Pro only: Some adjustments for jenkins builds
2.55
- Resolving Fix for abstract classes.
- Compatibility with Anti Cheat
2.54
- Fix for an error while loading assets.
- Fix for a bug happening while resolving class hierarchies.
- Pro only: Fix for the string obfuscation causing: 'Cannot perform dot operator' or 'expected ;'
2.53
Hotfix for UWP
- WinRt assmembly gets now resolved too.
- Fixes Bug: Could not resolve Nested Type XYZ.
- Some adjustments with obfuscation of generic classes.
2.52
Hotfix for IL2CPP and UWP
- Fixed obfuscation error of nested generic methods in generic classes.
- Streamwriter fix for UWP
- Some IL2CPP adjustments
2.51
Hotfix for IL2CPP
- Fixed obfuscation error of nested classes in generic classes.
- Fixed bug, while building with IL2CPP: Field/Method is not definied/found.
- Pro only: Some fixes for random code creation.
2.5
- Important! The folder structure changed. The Obfuscator files will now be found in the folder OPS!
- Fix for a possible Nullpointer exception in the BuildPostProcessor.
- Added to all scripts, using an unityeditor, an #define to prevent possible resource.asset errors.
- Renaming fix for IEnumeration methods.
- Added a new setting, under the Advanced settings, to define custom attributes to behave like DoNotRename.
- Pro only: Some fixes for random code creation.
- Some gui adjustments
2.4
- IBM Watson SDK compatibility
- New method to find GUI methods
- New user Gui
- Warning fix for old build platforms
- Bug fix: Vice Versa settings wont get saved
- Bug fix: Sometimes base classes wont get obfuscated, but inherited classes get obfuscated
2.31
- Needs now at least Unity 5.6.1 (Because of IL2cpp)
- Javascript/Unityscript obfuscation is no longer supported, because of the Unity Asset Store Guidelines.
2.3
- Now with IL2CPP obfuscation!
- New Readme.
- Some Gui fixes.
- Error fix trough random code containing methods with try/catch
2.2
Animation Update:
- Find automatically animation event method option.
- Fixed some problems with animation itself.
- Fixed some problems with inheritance.
- Added more Unity messages to skip.
2.11
=> IMPORTANT UPDATE!
- Fixed Problem with Generic Addon!
- Fixed Problem with classes sharing the same name!
2.1
- Beta: Xbox 360/One and Playstation 3/4
- Option for obfuscation of Abstract and Generic Unity classes
- Some minor fixes
=> Close Obfuscator Window before update!
2.0
- Now, after dll compile Obfuscation. Not post project build Obfuscation.
-> If you notice any problems switch back to obfuscator version 1.37.
-> Auto GUI finder now will only find methods from the first scene.
- New Enum Obfuscation option
- Now with better progress bar
- Some bugfixes
1.37
- Dynamic DLL fix
- Some Adjustment with Attributes
1.36
- Saving Settings in 'Settings.txt', but Android Settings. (To protect passwords)
- Error Code 1 and 10 fix are now automatic fallbacks.
- Fixed a bug when calling zipalign on an Android apk and Unity has not enough rights. (An GAME_Obfuscated.apk gets now created)
1.35
- Error Code 1 auto fix adjusted and optimized!
- Namespace obfuscation vice versa option.
- Serialization Bug Fix (#5)
- Some intern optimizations
1.34
- Fixed Bug: Finding GUI methods containing characters like 'P' or '0'. (#4)
- Adjusted Obfuscation for Serializable classes and fields.
- Some intern optimizations
1.33
- Auto scan for GUI methods (No longer need of DoNotRename on GUI methods)
- Find paths for Android sign process
- Added new GUI Elements to activate Error Code 1 and 10 auto fix.
- Adjusted UnityScript Attributes
1.32
- Performance Improvement
- Fix for Android Sign / Zip Bug
- New Message for Inheritance Problems between Obfuscated and not
Obfuscated classes
- New Attribute(Class/Method) that make the obfuscator ignore MethodBodies obfuscation
1.31
- Switching from AES String Obfuscation to custom RSA String Obfuscation to allow Metro (Windows Universal/…) platform support.
- Metro (Windows Universal/…) platform support.
- Fixed Bug Store in Ram (#2)
- Fixed Bug Code E9 (#3)
1.3
- Added Facebook Platform support
- Added WebGL Platform support
- Demo has not to get removed anymore
1.22
- Fixed 'Adding Random Code' bug #1
- Upgraded to Mono.Cecil 0.96
- Fixed some errors in the Readme
1.21 Switched from Unity 5.6.0 to 5.1.0
1.2 Fixed Bug on Mac. And added IPhone support!
1.11 Android Sign Process
1.1 Added Android Build
1.01 Several BugFixes.
1.0 First official release of Obfuscator Free and Pro.
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: eb79f19acab2cfb40ae933d2a383e289
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant: