11 Commits

Author SHA1 Message Date
f072378617 Bump version 2022-04-09 10:53:28 -06:00
d6376ff9fa Prepare for shaders location change in 3.17 2022-04-09 10:51:29 -06:00
28051a135a Bump version 2022-03-18 17:28:43 -04:00
44b1332782 Add new dxvk source 2022-03-18 17:27:16 -04:00
10c5438189 Update swap message 2022-03-02 17:27:17 -05:00
57df0a8dd9 Look for swap in preflight check 2022-03-02 11:56:59 -05:00
f67c76be2e Bump version 2022-02-17 13:26:30 -05:00
d9d58702d1 Add DXVK_ASYNC environment variable instructions 2022-02-17 13:25:21 -05:00
3d6e4cc367 Change libglesv2 to builtin 2022-02-15 15:21:45 -05:00
3932fd2754 Update README.md 2022-02-12 14:00:49 -05:00
314a1ff5ea Update README.md 2022-02-12 14:00:19 -05:00
3 changed files with 59 additions and 11 deletions

View File

@ -63,8 +63,9 @@ Keybinds are backed up to *$XDG_CONFIG_HOME/starcitizen-lug/keybinds/*
## Installation: ## Installation:
From Source: From Source:
1. Download it! 1. Download it! https://github.com/starcitizen-lug/lug-helper/releases
2. Run it! 2. Extract it!
3. Run it!
Arch Linux: https://aur.archlinux.org/packages/lug-helper/ Arch Linux: https://aur.archlinux.org/packages/lug-helper/

View File

@ -102,6 +102,9 @@ install_path="drive_c/Program Files/Roberts Space Industries/$sc_base_dir"
live_dir="LIVE" live_dir="LIVE"
ptu_dir="PTU" ptu_dir="PTU"
# AppData directory
appdata_path="drive_c/users?/appdata?/something/local/idontknow/starcitizen"
# Remaining directory paths are set at the end of the getdirs() function # Remaining directory paths are set at the end of the getdirs() function
######## Runners ########################################################### ######## Runners ###########################################################
@ -132,6 +135,7 @@ dxvk_dir="$data_dir/lutris/runtime/dxvk"
dxvk_sources=( dxvk_sources=(
"Sporif Async" "https://api.github.com/repos/Sporif/dxvk-async/releases" "Sporif Async" "https://api.github.com/repos/Sporif/dxvk-async/releases"
"/dev/null" "https://api.github.com/repos/gort818/dxvk/releases" "/dev/null" "https://api.github.com/repos/gort818/dxvk/releases"
"gnusenpai" "https://api.github.com/repos/gnusenpai/dxvk/releases"
) )
# Set a maximum number of versions to display from each download url # Set a maximum number of versions to display from each download url
@ -169,7 +173,7 @@ lug_wiki="https://github.com/starcitizen-lug/information-howtos/wiki"
# Github repo and script version info # Github repo and script version info
repo="starcitizen-lug/lug-helper" repo="starcitizen-lug/lug-helper"
releases_url="https://github.com/$repo/releases" releases_url="https://github.com/$repo/releases"
current_version="v1.17" current_version="v1.20"
############################################################################ ############################################################################
############################################################################ ############################################################################
@ -524,7 +528,7 @@ getdirs() {
# The location within the USER directory to which the game exports keybinds # The location within the USER directory to which the game exports keybinds
keybinds_dir="$user_dir/Controls/Mappings" keybinds_dir="$user_dir/Controls/Mappings"
# Shaders directory # Shaders directory
shaders_dir="$user_dir/shaders" shaders_dir="$wine_prefix/$appdata_path/shaders"
# dxvk cache file # dxvk cache file
dxvk_cache="$game_path/$live_or_ptu/StarCitizen.dxvk-cache" dxvk_cache="$game_path/$live_or_ptu/StarCitizen.dxvk-cache"
# Where to store backed up keybinds # Where to store backed up keybinds
@ -775,6 +779,15 @@ avx_check() {
fi fi
} }
# Check if swap is set up
swap_check() {
if cat /proc/swaps | grep -vq "Filename"; then
preflight_pass+=("You have swap space configured.")
else
preflight_fail+=("You don't appear to have swap space configured.\nWe recommend configuring an 8-16 GB swap file.")
fi
}
# Check that the system is optimized for Star Citizen # Check that the system is optimized for Star Citizen
preflight_check() { preflight_check() {
# Initialize variables # Initialize variables
@ -789,6 +802,7 @@ preflight_check() {
# Call the optimization functions to perform the checks # Call the optimization functions to perform the checks
wine_check wine_check
memory_check memory_check
swap_check
avx_check avx_check
mapcount_check mapcount_check
filelimit_check filelimit_check
@ -902,6 +916,7 @@ lutris_restart() {
# Perform post-download actions, display messages or instructions # Perform post-download actions, display messages or instructions
# Expects the variables message_heading, post_download_msg_text, # Expects the variables message_heading, post_download_msg_text,
# post_download_msg_italics, and downloaded_item_name # post_download_msg_italics, and downloaded_item_name
# Optional: post_download_msg_more_info and post_download_msg_link
post_download() { post_download() {
# Check if lutris needs to be restarted after making changes # Check if lutris needs to be restarted after making changes
lutris_restart lutris_restart
@ -909,12 +924,30 @@ post_download() {
if [ "$display_post_download_msg" = "true" ]; then if [ "$display_post_download_msg" = "true" ]; then
message_heading="Download Complete" message_heading="Download Complete"
# Format some variables for zenity
if [ "$use_zenity" -eq 1 ]; then if [ "$use_zenity" -eq 1 ]; then
message_heading="<b>$message_heading</b>" message_heading="<b>$message_heading</b>"
post_download_msg_italics="<i>$post_download_msg_italics</i>" post_download_msg_italics="<i>$post_download_msg_italics</i>"
# If we have a link to provide, format it as well
if [ -n "$post_download_msg_link" ]; then
post_download_msg_link="<a href='$post_download_msg_link'>$post_download_msg_link</a>"
fi fi
message info "$message_heading\n\n$post_download_msg_text\n$post_download_msg_italics\n\n$downloaded_item_name"
fi fi
# Add newlines to the optional variables if set
if [ -n "$post_download_msg_more_info" ]; then
post_download_msg_more_info="\n\n$post_download_msg_more_info"
fi
if [ -n "$post_download_msg_link" ]; then
post_download_msg_link="\n$post_download_msg_link"
fi
# Display the info
message info "$message_heading\n\n$post_download_msg_text\n$post_download_msg_italics\n\n$downloaded_item_name$post_download_msg_more_info$post_download_msg_link"
fi
# Reset
display_post_download_msg="false" display_post_download_msg="false"
} }
@ -1001,6 +1034,9 @@ download_install() {
*.tar.xz) *.tar.xz)
download_name="$(basename "$download_file" .tar.xz)" download_name="$(basename "$download_file" .tar.xz)"
;; ;;
*.tar.zst)
download_name="$(basename "$download_file" .tar.zst)"
;;
*) *)
debug_print exit "Unknown archive filetype in download_install function. Aborting." debug_print exit "Unknown archive filetype in download_install function. Aborting."
;; ;;
@ -1203,6 +1239,9 @@ download_select_install() {
*.tar.xz) *.tar.xz)
download_name="$(basename "${download_versions[i]}" .tar.xz)" download_name="$(basename "${download_versions[i]}" .tar.xz)"
;; ;;
*.tar.zst)
download_name="$(basename "${download_versions[i]}" .tar.zst)"
;;
*) *)
debug_print exit "Unknown archive filetype in download_select_install function. Aborting." debug_print exit "Unknown archive filetype in download_select_install function. Aborting."
;; ;;
@ -1334,9 +1373,13 @@ runner_manage() {
# A header is automatically displayed that reads: Download Complete # A header is automatically displayed that reads: Download Complete
# msg_text is displayed below the header # msg_text is displayed below the header
# msg_italics is displayed below that in italics when zenity is in use # msg_italics is displayed below that in italics when zenity is in use
# Lastly, the downloaded directory name is automatically displayed # Then, the downloaded directory name is automatically displayed
# Optional variables post_download_msg_more_info and
# post_download_msg_link will be displayed if set
post_download_msg_text="Select the following runner in Lutris from the dropdown menu under:" post_download_msg_text="Select the following runner in Lutris from the dropdown menu under:"
post_download_msg_italics="Configure->Runner Options->Wine version" post_download_msg_italics="Configure->Runner Options->Wine version"
post_download_msg_more_info=""
post_download_msg_link=""
# Call the download_manage function with the above configuration # Call the download_manage function with the above configuration
# The argument passed to the function is used for special handling # The argument passed to the function is used for special handling
@ -1357,7 +1400,7 @@ dxvk_manage() {
# Configure the text displayed in the menus # Configure the text displayed in the menus
download_menu_heading="Lutris DXVK Versions" download_menu_heading="Lutris DXVK Versions"
download_menu_description="The DXVK versions below may help improve game performance" download_menu_description="The DXVK versions below may help reduce stuttering"
download_menu_height="140" download_menu_height="140"
# Set the post download instructions # Set the post download instructions
@ -1365,9 +1408,13 @@ dxvk_manage() {
# A header is automatically displayed that reads: Download Complete # A header is automatically displayed that reads: Download Complete
# msg_text is displayed below the header # msg_text is displayed below the header
# msg_italics is displayed below that in italics when zenity is in use # msg_italics is displayed below that in italics when zenity is in use
# Lastly, the downloaded directory name is automatically displayed # Then, the downloaded directory name is automatically displayed
# Optional variables post_download_msg_more_info and
# post_download_msg_link will be displayed if set
post_download_msg_text="Type the following DXVK name into your Lutris settings under:" post_download_msg_text="Type the following DXVK name into your Lutris settings under:"
post_download_msg_italics="Configure->Runner Options->DXVK version" post_download_msg_italics="Configure->Runner Options->DXVK version"
post_download_msg_more_info="See our wiki for instructions on setting the DXVK_ASYNC environment variable in Lutris:"
post_download_msg_link="https://github.com/starcitizen-lug/information-howtos/wiki/Performance-Tuning#dxvk-async"
# Call the download_manage function with the above configuration # Call the download_manage function with the above configuration
# The argument passed to the function is used for special handling # The argument passed to the function is used for special handling

View File

@ -81,11 +81,11 @@
"esync": true, "esync": true,
"overrides": { "overrides": {
"nvapi,nvapi64": "disabled", "nvapi,nvapi64": "disabled",
"libglesv2": "disabled" "libglesv2": "builtin"
} }
} }
}, },
"content": "files:\n- client: https://install.robertsspaceindustries.com/star-citizen/RSI-Setup-1.5.5.exe\ngame:\n arch: win64\n args: null\n exe: drive_c/Program Files/Roberts Space Industries/RSI Launcher/RSI Launcher.exe\n prefix: $GAMEDIR\ninstaller:\n- task:\n arch: win64\n description: Creating Wine prefix\n name: create_prefix\n prefix: $GAMEDIR\n- task:\n app: --force arial vcrun2019 win10\n arch: win64\n description: Installing dlls\n name: winetricks\n prefix: $GAMEDIR\n- task:\n arch: win64\n args: /S\n description: Installing client\n executable: client\n name: wineexec\n prefix: $GAMEDIR\nsystem:\n env:\n DXVK_HUD: '0'\n __GL_SHADER_DISK_CACHE: 1\n __GL_SHADER_DISK_CACHE_SIZE: '1073741824'\n __GL_THREADED_OPTIMIZATIONS: '1'\nwine:\n dxvk: true\n esync: true\n overrides:\n nvapi,nvapi64: disabled\n libglesv2: disabled\n" "content": "files:\n- client: https://install.robertsspaceindustries.com/star-citizen/RSI-Setup-1.5.5.exe\ngame:\n arch: win64\n args: null\n exe: drive_c/Program Files/Roberts Space Industries/RSI Launcher/RSI Launcher.exe\n prefix: $GAMEDIR\ninstaller:\n- task:\n arch: win64\n description: Creating Wine prefix\n name: create_prefix\n prefix: $GAMEDIR\n- task:\n app: --force arial vcrun2019 win10\n arch: win64\n description: Installing dlls\n name: winetricks\n prefix: $GAMEDIR\n- task:\n arch: win64\n args: /S\n description: Installing client\n executable: client\n name: wineexec\n prefix: $GAMEDIR\nsystem:\n env:\n DXVK_HUD: '0'\n __GL_SHADER_DISK_CACHE: 1\n __GL_SHADER_DISK_CACHE_SIZE: '1073741824'\n __GL_THREADED_OPTIMIZATIONS: '1'\nwine:\n dxvk: true\n esync: true\n overrides:\n nvapi,nvapi64: disabled\n libglesv2: builtin\n"
} }
] ]
} }