Back into a Unity project

Github Image 0.3.0.1 Release of AssetRipper

AssetRipper is a tool for extracting assets from serialized files (CAB-*, *.assets, .sharedAssets, etc.) and assets bundles (.unity3d, *.bundle, etc.) and converting them into the native Unity engine format.

We can use AssetRipper's simple GUI application to convert VTOL VR back into a useable Unity Project. This page will cover the sets on how to do that.

Preparing your game folder

Before you can begin converting game files using Asset Ripper, you need to prepare your game folder by performing the following steps:

  1. Temporarily move the VTOLVR_ModLoader folder out of the game folder. This will prevent Asset Ripper from attempting to extract any files from this folder.

Moved the VTOLVR_ModLoader folder out of the games files

  1. Move any downloaded .mp3 files that you have inside the "RadioMusic" folder to a different location outside of the game's folder.

Here is what the default folder looks like.

Default Radio Music Folder

  1. Temporarily move "doorstop_config.ini" and "winhttp.dll" out of the game folder.

After completing these steps, you should verify your game files on Steam to ensure that you have a clean slate to work with.

Verify files button

Downloading AssetRipper

v0.3.0.1 Release of AssetRipper

To use Asset Ripper, you first need to download and install the software by following these steps:

  1. Download the latest release of Asset Ripper from the project's GitHub page.

Download for windows 64

  1. Extract the contents of the downloaded .zip file into a new folder on your computer.

How it should look when installed

  1. Launch AssetRipper.exe to start the program.

Converting Game files

Once you have prepared your game folder and downloaded Asset Ripper, you can begin converting game files using the following steps:

  1. Change the C# version to "C# 9" in Asset Ripper's settings.
  2. Ensure that "Script Content Level" is set to "Level 2" in Asset Ripper's settings.

Image of windows created by asset ripper

  1. Drag the entire "VTOL VR" folder into Asset Ripper.

Dragging the VTOL VR Folder into AssetRipper

  1. Wait for AssetRipper to finish loading the game's assets, then export all files by selecting Export > Export All Files from the menu.

Export button

  1. Choose a new folder for the exported files to be saved in.
  2. After the export has completed, delete the "AuxiliaryFiles" folder that Asset Ripper created.
  3. Move the contents of the "ExportedProject" folder into the root folder you chose in step 5.
  4. Delete the "LightingDataAsset" folder located in the "Assets" folder of the exported project.
  5. Delete all the folders inside of "Assets > Scripts", except for Assembly-CSharp, BDLearningBot, and VTBitConverter.
  6. Delete the Assembly-CSharp-firstpass folder located in the "Plugins" folder of the exported project.

Opening and fixing the errors

AssetRipper displays the version of Unity that the game uses, along with a download link for that specific version.

Where the unity version is displayed

Click on the link to open the download page, and then click the 'Install with Unity Hub' button to automatically download and install the correct version of Unity.

Unity website with the mouse over the download link

[!NOTE] The first time you open it will take the longest. Once you've opened it once, future times will be much quicker.

  1. Open the exported project in Unity. If the "Enter in safe mode" prompt appears, select "Ignore".
  2. In Unity's Edit > Project Settings > Player menu, change "Api Compatibility Level*" to ".NET 4.x" and "Active Input Handeling*" to "Both". Press "Apply" to save the changes and restart Unity.

Changing project settings in unity

  1. After Unity has restarted, delete the "Hidden_UIElements_EditorUIE" shader located in the "Shader" folder of the exported project.
  2. Open the Unity Package Manager. If the manager appears purple, close and reopen it.
  3. Install XR Plugin Management and TextMeshPro using the Package Manager.
  4. Copy the following DLLs from the "VTOLVR_Data > Managed" folder and paste them into the "Plugins" folder of the exported project:
    • Assembly-CSharp-firstpass.dll
    • CsvHelper.dll
    • Facepunch.Steamworks.Win64.dll
    • FlatBuffers.dll
    • HttpAuth.dll
    • K4os.Compression.LZ4.dll
    • MP3Sharp.dll
    • NAudio.dll
    • Oculus.LipSync.dll
    • Oculus.Platform.dll
    • Oculus.VR.dll
    • Rewired_Core.dll
    • Rewired_Windows.dll
    • SteamVR.dll
    • System.Buffers.dll
    • System.ComponentModel.Composition.dll
    • System.Memory.dll
    • System.Runtime.CompilerServices.Unsafe.dll
    • Unity.XR.Oculus.dll
    • Unity.XR.OpenVR.dll
    • Valve.Newtonsoft.Json.dll
  5. Restart Unity
  6. Got to "Edit > Project Settings > XR Plug-in Management" and check "Open XR"

Selecting OpenXR in the project settings

  1. Clear the console and you should have a few manual code changes to do.

[!WARNING] It is highly recommended that you make a back of this exported folders incase you change something and want to remember how it was like in the default game files.