Use a decompiler to look at an approximation of the game's C# code.
This guide has not been written yet! If you know how to do this, add it!
Use additional tools to inspect properties and values while the game is running.
This example talks about fixing an imported prefab ripped from the game using info in Unity Explorer.
Install Unity Explorer and relaunch the game
Open the "Object Explorer" window from the newly added top bar
Switch to "Object Search" mode and type MinecartEntity
into the "Name contains:" search box, then press Search
Find the entry "MinecartEntity" (UnityEngine.GameObject)
and double click it
In the "Components" column you can see a list of script components on the prefab. The default sorting order should be exactly the same as the sorting order of the scripts in the Unity editor.
Use NG Tools Missing Script Recovery to fix as many Perfect Matches as you can, then use the entries in the Components column to specify what the rest of the scripts are.
Bring base-game assets into your editor for quick reference.
First, run Asset Ripper to export assets from the game.
Next, time to import them into your editor. Close the Unity editor first to keep it from wasting time hot refreshing as stuff is still being imported.
Go to the <export folder>\ExportedProject\Assets\
folder and copy only the following folders into your SDK project's assets folder. Copying anything not listed here risks bricking it.
AnimationClip
AnimatorController
AnimatorOverrideController
Font
Material
MonoBehaviour
PrefabInstance
Scenes
Shader
Sprite
Texture2D
TODO what in the Resources directory is safe to bring in?
Reopen the Unity editor to allow it to rebuild its records, which will take a while.
You will probably want to access the Prefabs you have imported. However, on prefabs, all scripts will be broken. Use the NG Tools Missing Script Recovery to restore them. Follow this guide to install it and use it:
You'll also have to use Unity Explorer to inspect the prefabs in-game to figure out what things are when Missing Script Recovery doesn't have enough context to work.
This section covers how to look at how content built into the base game was implemented. Use this knowledge to build your own content, understand where to hook the code to implement new behaviors, etc.