-
Notifications
You must be signed in to change notification settings - Fork 129
Tweaks
Tweaks, similar to loaders and launch options, are settings that can improve performance, compatibility, or can add new features.
Tweaks are defined with JSON (.json
) files under the tweaks/
directory in GameHub's configuration directory, e.g. $HOME/.config/com.github.tkashkin.gamehub/tweaks
.
The following bullets are tweaks that are included in GameHub:
- Feral GameMode — apply temporary optimizations to the game process and OS
- Radeon ACO Vulkan Compiler — use a hardware-based shader compiler on AMD GPUs, improves loading times with DXVK and native Vulkan games
- Wine/Proton specific tweaks — used to improve compatibility with some Windows games
GameHub will load custom tweaks from data directories listed in Settings. Tweaks can be overridden by new tweaks with the same id
.
The following tweaks are additional tweaks done by the community. The JSON files will be located under the tweaks/
directory. Everything between and including "{
" and "}
" will have to be pasted in the JSON files.
Original issue: https://github.com/tkashkin/GameHub/issues/380
File name: vkbasalt.json
{
"id": "vkbasalt",
"name": "vkBasalt",
"description": "Vulkan post processing layer to enhance the visual graphics of games",
"url": "https://github.com/DadSchoorse/vkBasalt",
"env": {
"ENABLE_VKBASALT": "1"
}
}
Original issue: https://github.com/tkashkin/GameHub/issues/371
File name: mangohud.json
{
"id": "mangohud",
"name": "MangoHud",
"description": "A modification of the Mesa Vulkan overlay. Including GUI improvements, temperature reporting, and logging capabilities",
"url": "https://github.com/flightlessmango/MangoHud",
"command": "mangohud ${command}"
}
Tweaks are defined as JSON files.
Root of JSON file can either be an object (for a single tweak) or an array of objects (for multiple tweaks in a file).
Property | Type | Required | Default | Description |
---|---|---|---|---|
id |
string | optional | "file" "file[i]" |
Tweak's internal name. Tweaks with higher priority will replace tweaks with the same id file - tweak's filename i - tweak's index if file contains multiple tweaks |
name |
string | optional | id |
Tweak's display name |
description |
string | optional | Tweak's description | |
url |
string | optional | URL of the tweak/documentation/etc. Shown in UI as a clickable button | |
applicable_to |
object | optional | Tweak will only be used for games that match specified conditions | |
applicable_to.platforms |
string[] | optional | Restrict to games from specific platform (windows , linux , macos ) |
|
applicable_to.compat |
string[] | optional | Restrict to games using specific compatibility layers (wine , proton , ...) |
|
command |
string | optional | Command to execute, uses ${command} as a placeholder for the game executable and other tweaks |
|
env |
object | optional | Environment variables |