banner
Rating
Voted0

UnityExplorer

1
Mod version:1
Game version:all
The mod has been successfully tested for the absence of viruses
1649.29K16.67K

Report mod

  • image
modalImage

About This Mod

UnityExplorer.

🔍 In-game user interface for learning, debugging and modifying Unity games. ✔️ Supports most versions of Unity from 5.2 to 2021+ (IL2CPP and Mono).


GitHub


Manual Installation

BepInEx:


UnityExplorer.BIE.[version].dll and UniverseLib.[version].dll and place them in BepInExplugins.

MelonLoader:


Take UnityExplorer.ML.[version].dll and place it in the Mods folder created by MelonLoader.

UniverseLib.[version].dll and place it in the UserLibs/ folder created by MelonLoader.

Functions

Object Explorer

The Scene Explorer tab allows you to monitor the active scene, DontDestroyOnLoad object, and HideAndDontSave object.

The "HideAndDontSave" scene contains objects with this flag, as well as assets and resources that are not present in any scene but function similarly.

Scene Loader makes it easy to load scenes into an assembly (may not work in Unity 5.X games).

Use the Find Objects tab to search for Unity objects (including game objects, components, and so on), singletons, and static C# classes.

Use UnityObject Search to search for objects that derive from UnityEngine.Object.

The singleton search looks for classes with the typical field "Instance" and checks the current value. This can lead to unexpected behavior in some IL2CPP games. The Property Accessor is called because it cannot distinguish between real and field properties.

Inspectors

Use the Inspector to display detailed information about objects of any type, change their values, and check C# classes using static reflection.


The GameObject (tab prefix [G]) is used to inspect GameObject, view and modify their transformations and components.

Edit any input field in the inspector (except read-only fields) and click Enter to apply the changes. You can also change the parent of GameObject by changing its path. Click Escape to cancel editing.

Note: When viewing GameObject on the canvas, the RectTransform link may overlap transformation controls.

For everything else, use the Reflection inspector (the prefixes of the [R] and [S] tabs).

Automatic updating is not enabled by default, and you must click Apply for the changes to take effect.

Click ▼ to expand specific values, such as strings, enumerations, lists, dictionaries, and some structures.

Use the filters at the top to quickly find the item you're looking for.

For Texture2D, Image, Sprite, and Material objects, you can use the View Texture button at the top of the inspector to view the texture and save it to a PNG file.

AudioClip objects have a Show Player button that opens the audio player widget; clips loaded in DecompressOnLoad mode also have a button to save to a .wav file.

C# Console

The C# console uses Mono.CSharp.Evaluator to define temporary classes and execute REPL code on the fly.

You can run the script automatically at startup by naming it startup.cs and placing it in the sinai-dev-UnityExplorerScripts folder (this folder is created where the DLL files are located).

For more information, see the Help pull-down menu on the C# Console menu.

Hook manager.

The Hooks panel allows you to connect methods for debugging at the touch of a button.

Enter any class and select the desired method from the menu.

The "Edit Hook Source" button allows editing the source code of generated hooks. The available method names are Prefix (returns bool or void), Postfix, Finalizer (returns Exception or void), and Transpiler (returns IEnumerable<HarmonyLib.CodeInstruction>). You can also define multiple patches.

Mouse Inspection.

Use the Inspect with Mouse pop-up menu in the Inspector panel to inspect objects with the mouse.

World Use Physics. Find Colliders with Raycasters

UI: Searching for UI objects using GraphicRaycasters

Free Camera

UnityExplorer provides a basic free camera that you can control with your keyboard and mouse.

Unlike all other UnityExplorer features, Freecam is available even when the UnityExplorer menu is hidden.

It supports the use of the game's main camera or any other special camera.

For more instructions and details, see the Freecam panel.

Clipboard.

The Clipboard panel allows you to display and delete (reset to NULL) existing pasted values.

You can copy values from any element of the Reflection inspector, from Enumerable or Dictionary, and from any destination on the Inspector tab.

You can insert values into any member of the Reflection inspector.

You can insert values when using non-parsable arguments in method/function evaluations.

The C# console has the Copy(obj) and Paste() helper methods to access the clipboard.

Settings.

You can change the settings in the Settings tab of the menu or directly from the configuration file.

BepInEx: BepInEx Settings.

MelonLoader: UserDataMelonPreferences.cfg.

Standalone {DLL_location}}sinai-dev-UnityExplorerconfig.cfg

Configuration.

Settings can be changed in the Options tab in the menu or directly from the configuration file.

Acknowledgements

ManlyMarco for Runtime Unity Editor [license], the RUE ScriptEvaluator REPL console was used as the basis for the UnityExplorer C# console.

denikson (aka Horse) [unlicensed] for mcs-unity, used as a reference to Mono.CSharp for the C# console.

sinai-dev: Create this mod. I'm just reloading it into this community.

Similar Mods/Addons

Game Version *

all (Noop-UnityExplorer-4.8.2.zip)