Player's Guide - Gothic-UnZENity-Project/Gothic-UnZENity GitHub Wiki

Gothic UnZENity Logo left of text 'Player's Guide'

Table of Contents

Setup

Note

Download latest UnZENity version at:
Release

Before you can start playing, you will need to set up your installation of UnZENity. This page assumes that you have already installed UnZENity on your target device (e.g. a Quest 2) using Unity, the Andoid APK or the Windows installer.

Supported Platforms

Platform Architecture Comment
PC Windows x64
Pico 4 Android x64
Quest 2 Android x64

Installing the Game Assets

To comply with the Gothic Modding License, the project does not contain any of the original Gothic game assets. Because of that, you will have to provide the Gothic game data yourself. This process differs between different devices so make sure to choose the right instructions from the sections below. It is assumed that you have a working installation of Gothic on your PC; GOG, Steam or CD installations should all work interchangeably.


Platform: PCVR

Windows logo

When playing on PC, all you will need to do is point UnZENity to your Gothic 1 installation directory. This can be done by setting the path in the GameSettings. This needs to be done before starting the game.

Note

The default installation path for the Steam version of Gothic is automatically used, if you don't provide something different. It's location is C:\Program Files (x86)\Steam\steamapps\common\Gothic.

Note

If you want to alter the location of Gothic installation, please make sure you escape your path with double backslashes. e.g. C:\\MyGames\\Gothic

Information on where the GameSettings.json is located and more about the other settings can be found in the GameSettings section.


Platform: Quest and Pico

Pico logo
Meta logo

To get the Gothic assets onto your headset you have to copy them to the UnZENity data directory on your headset: /sdcard/Android/data/com.GothicUnZENity/files/Gothic1/. Make sure that the Gothic1's game files are in their own subfolder (files/Gothic1).

Note

Start the game once to let it create the folder structures automatically for you. Hit play and stop the game once, then copy your Gothic1 files into these folders afterwards.

After copy of your Gothic1 game files, the folders should look something like the following.

/sdcard/Android/data/com.GothicUnZENity
|-- files
|---- GameSettings.json (Automatically created during first game start. It's values can be altered.)
|---- Gothic-UnZENity.log.txt (Re-created during every game start. Useful for troubleshootings.)
|---- Gothic1 (Your stored game files to run UnZENity)
|------ Data
|------ Saves
|------ system
|------ _work
|------ [...]
|---- Gothic2 (Will be supported later...)
|------ [...]

To copy your game files onto your device you can use adb (or SideQuest). To access your headset's files you have to enable the Developer Mode in your headset's settings.

Note

The following assumes you have adb installed, the Developer Mode enabled and your headset connected to your PC - if not, see below

To install adb search in your preferred search engine for how to install adb on <windows/linux>.

For enabling the Developer Mode, just search for how to enable developer mode on <quest 2/pico 4>.

To connect your headset, use a USB Type-C cable.

Firstly, check if your headset can be reached from your PC with adb devices. This should list at least one device; if it shows more than one, make sure to specify your headset in the following commands with adb -s <ID> ....

If your headset is correctly connected, use adb push <Path to your Gothic dir>/* /sdcard/Android/data/com.GothicUnZENityProject.GothicUnZENity/files/.

You can confirm the correct file structure by listing it with adb shell ls /sdcard/Android/data/com.GothicUnZENityProject.GothicUnZENity/files/.

Convert video files

Gothic video examplelogo

Note

This video section is optional. If you don't convert videos, they'll be skipped.

Gothic uses Bink video files. To use videos within Gothic-UnZENity, you need to convert them to .mp4 files.

  1. Download ffmpeg.exe (via https://www.ffmpeg.org/download.html#build-windows)
  2. Place it inside GOTHIC_INSTALL_DIR/_work/DATA/videos/
  3. Execute the following command to convert each file: ./ffmpeg.exe -i VIDEONAME.bik -color_primaries bt709 -color_trc bt709 -colorspace bt709 -color_range pc -vcodec libx264 -profile:v baseline VIDEONAME.mp4 -y
  4. If you play on Pico/Quest, copy the .mp4 files onto the device

Note

You can also copy&paste the following Powershell script into your videos folder, which will convert all videos at once.

convert-all.ps1
try
{
	$processOptions = @{
		FilePath = "ffmpeg"
		WorkingDirectory = "."
		NoNewWindow = $true
		Wait = $true
	}

	$bikFiles = Get-ChildItem -Path "./" -Filter "*.bik"
	foreach($bikFile in $bikFiles)
	{
		Write-Output "Running conversion for: $bikFile"
		$baseName = $bikFile.Basename
		Start-Process @processOptions -ArgumentList @("-i", $bikFile, "-color_primaries", "bt709", "-color_trc", "bt709", "-colorspace", "bt709", "-color_range", "pc", "-vcodec", "libx264", "-profile:v", "baseline", "$baseName.mp4", "-y")
	}
}
catch
{
	  write-warning $_
}
Read-Host -Prompt "Please check if there's any error or if you see all the *.mp4 files. If correct, just copy&paste these video files into your game directory..."

Speech To Text

UnZENity supports an optional SpeechToText mode. It can be activated by pressing both HandGrips while the dialog choice menu is opened. You will see a red record icon on the right top corner of the dialog menu indicating the recording. Once the buttons are released, a small magnifier indicates the GenAI/LLM is transforming your voice into text to auto-select the menu option.

HINT: If you do not! want GenAI features, ignore the steps below. If you don't place the local LLM on your system, it is deactivated and can't be used.

HINT: If activated, The used AI model runs locally only! Data stays on your device alone.

How to activate:

  1. Go to UnZENity release page and select the one with .sentis files stored: https://github.com/Gothic-UnZENity-Project/Gothic-UnZENity/releases
  2. Download SpeechToText.zip with the following files:
  3. vocab.json
  4. decoder_model.sentis
  5. decoder_with_past_model.sentis
  6. encoder_model.sentis
  7. logmel_spectogram.sentis
  8. Place it inside StreamingAssets/SpeechToText folder (PCVR) or files/SpeechToText/* (Android)

Once the game is started, you need to define your Microphone for recordings (Menu -> Settings -> VR Immersion -> Microphone) and allow usage of Microphone itself when prompted (Android).
Microphone setting for SpeechToText

Checking if everything's set up correct: a.) Check if the recording button is visible when you press the controller buttons. b.) Change LogLevel to "Message" and look out for a message like "Whisper initialized".

SpeechToText active icon

WARNING:
There are two known pitfalls:

  1. SpeechToText is transformed on GPU. (e.g.) Quest2 is known to cause stutter when recording voice and transforming your input. It's best experienced with PCVR due to the dedicated GPU.
  2. Unity's Microphone API can cause some delays when recording starts or ends. This is unrelated to GPU/CPU limitations and may vary based on device and Microphone driver.

Links:
HuggingFace

Configuration

The GameSettings.json file can be used to modify some of UnZENity's settings.

Setting Location Required Default Description
GothicIPath GameSettings.json No - PCVR: C:\Program Files (x86)\Steam\steamapps\common\Gothic
- Android (Pico4/Quest2): /sdcard/Android/data/com.GothicUnZENity/files/Gothic1
(PCVR only) UnZENity requires a full Gothic1 installation/file-dump at runtime. Name its location here (Windows users: Escape the backslash with \\).
This setting gets ignored on Android (e.g. Pico 4/Quest 2).
LogLevel GameSettings.json No Warning Defines the level of logging that will be saved. Values are: Debug/Warning/Error/Exception.

Where to find the GameSettings.json:

  • PCVR: Location is inside download/installation directory: .\GVR_Data\StreamingAssets\GameSettings.json
  • Mobile VR (Quest2/Pico4): After starting the game for the first time (and/or the file doesn't exist), it will create the GameSettings.json file at /sdcard/Android/data/com.GothicUnZENity/files/GameSettings.json

Supported ini settings

The following settings are supported by Gothic-UnZENity and will be recognized when changed.

Gothic.ini

[PERFORMANCE]
sightValue=14

[GAME]
subTitles=1
playLogoVideos=1

[SOUND]
musicVolume=1
musicEnabled=1

[INTERNAL]
playerInstanceName=PC_HERO

[SKY_OUTDOOR]
zDayColor0=116 89 75
zDayColor1=80 90 80
zDayColor2=120 140 180
zDayColor3=120 140 180

There are also settings added and supported by UnZENity alone

[UNZENITY_VR_ACCESSIBILITY]
sitStand=3
; ... VR height adjustments: 0=sitting, 1=standing 3=player height without adjustments
moveDirection=0
; ... VR Movement direction based on Camera (0), LeftController (1), or RightController (2)
rotationType=1
; ... VR rotation options: 0=Smooth, 1=Snap
snapRotationAmount=0
; ... Values are between 0=5° and 8=45°
smoothRotationSpeed=0.5
; ... VR Smooth Rotation speed between 0=5 and 1=95 (Don't ask me what the number is. It's an internal one from our VR Controls Package ;-)
smoothSpectator=0
; ...  Spectator rotation smoothing for PCVR recordings: 0=off, 3=high smoothing

[UNZENITY_VR_IMMERSION]
microphone=0
; ... Selected microphone for SpeechToText feature in VR. 0=off, 1...n=activated Microphone on your device.

GothicGame.ini

n/a

Logging

Where to find the log files?

  • PCVR: Location directory for the logging file: %USERPROFILE%\AppData\LocalLow\GothicUnZENityProject\GothicUnZENity\Gothic-UnZENity.log.txt
  • Mobile VR (Quest2/Pico4): Location directory for the logging file:/sdcard/Android/data/com.GothicUnZENity/files/Gothic-UnZENity.log.txt

Controls

Current controls can be viewed inside Gothic menu (main menu and ingame Menu). Look out for the UnZENity logo and click on it. It will show you the control scheme for your device.

⚠️ **GitHub.com Fallback** ⚠️