- Unity 2020.3.17f1 - Loads the project for viewing.
- Asset Ripper - Rips the game's assets.
- Download and install the above tools.
- In Asset Ripper, open your Dinkum installation folder and export all files to an empty folder.
- Once exporting is complete, open Unity 2020.3.17f1 and load the "ExportedProject" folder created by Asset Ripper.
- If prompted to enable "Safe Mode", choose "Ignore".
- Once fully loaded, open the "Assets\Monoscript" folder in the project explorer, and delete the "Unity.Input System" folder.
- At the top of Unity's interface, open
Window -> Package Manager
.- Near the top left of the window that opens, make sure "Packages" is set to "Unity Registry".
- Click refresh at the bottom.
- Select and install the "Input System"
- Select and remove the "TextMeshPro" and "Timeline" packages.
- Close and re-open Unity to fix some reference errors. (Ignore safe mode)
- Make sure the console is visible on the bottom left of the Unity interface, and fix the following errors in order:
- Double click on an error to have that file open in your IDE.
- Use the given line# inside the parenthesis for reference.
- Save each file and return to Unity after each change to allow errors to update.
- Remove lines of code containing "002Ector" that are causing errors. (x2)
- Remove the TextMeshPro function that is causing an error. (5 lines, starting with [SpecialName])
- Remove "{IsReadOnly]" lines of code that are causing errors. (x5)
- More errors will appear as you do this, keep scrolling through them and removing the IsReadOnlyAttribute ones.
- There are many methods where "public override" needs to be changed to "protected override".
- You can do this quickly using regex find and replace through your IDE.
- In Visual Studio, for example:
- From the start page, Open a local folder
- Choose the ExportedProject folder
- Press Ctrl-Shift-F to open the Find and Replace window
- Choose Replace in Files tab
- In the Find field, type:
(public) (override \w+ (?:Serialize|Deserialize)SyncVars)
- In the Replace field, type:
protected $2
- Tick the "Use regular expressions" checkbox
- Click the "Replace All" button (Mine found 72 occurrences that got replaced.)
- Click Ok, close the Find and Replace window, and save all files.
- When told there is an API update required, choose "I made a backup. Go ahead!"
- Wait for a moment for it to process.
- The next error is "The operation overflows...", in the GetHashCode method.
- This can be fixed by wrapping the multiplication inside unchecked:
return (unchecked(237921948 * -1521134295) + ...
- This can be fixed by wrapping the multiplication inside unchecked:
- Allow Unity to finish updating the API, and loading the rest of the assets.
- Go to
File -> Open Scene
and open scene1.unity