diff --git a/data_from_portwine/changelog b/data_from_portwine/changelog
index de61b225..8bddb5dd 100755
--- a/data_from_portwine/changelog
+++ b/data_from_portwine/changelog
@@ -1,11 +1,21 @@
 История изменений и дальнейшие планы:
 -----------------------------------------
 В планах: 
+* добавить inxi в runtime и его вывод с аргументом -G в log
+* добавить cs_block при запуске порта
 * добавить проверку количества db файлов на один exe
-* добавить GUI для выбора версии WINE из интернета 
 * добавить комментарии описывающие функционал скриптов и db файлов
 * заниматься только развитием проекта за счет вашей подписки на https://boosty.to/portwine-linux.ru
 -----------------------------------------
+###Scripts version 2019###
+* добавлена автоустановка League of Legends (Ура=) 
+* добавлена поддержка DLSS (требуется включение в EDIT_DB параметра PW_USE_NVAPI_AND_DLSS)
+* добавлена функция автоматического удаления старых версий контейнеров (libs_vXX)
+* значительная переработка условий в скриптах
+* убрана задержка при перезапуске порта
+* добавлен GUI для выбора версии PROTON_GE c github
+PS: За помощь в создании автоустановки LoL, отдельное спасибо Dezert1r!
+
 ###Scripts version 2018###
 * обновлен PROTON_GE до версии 6.19-2 включая DXVK и VKD3D
 * добавлено разделение версий MONO и GECKO для разных версий PROTON
diff --git a/data_from_portwine/img/gui/lol.png b/data_from_portwine/img/gui/lol.png
new file mode 100644
index 00000000..c501326c
Binary files /dev/null and b/data_from_portwine/img/gui/lol.png differ
diff --git a/data_from_portwine/scripts/functions_helper b/data_from_portwine/scripts/functions_helper
index c12f1694..f053edf8 100755
--- a/data_from_portwine/scripts/functions_helper
+++ b/data_from_portwine/scripts/functions_helper
@@ -67,13 +67,12 @@ try_force_link_file () {
 }
 
 check_symlink () {
-    if [ ! -z `file "$1" | grep "symbolic link to" | grep -v "broken"` ] ; then
-        `file "$1"`
+    CHK_SYMLINK_FILE=`file "$1"`
+    if [ ! -z `echo "$CHK_SYMLINK_FILE" | grep -v "broken" | grep "symbolic link to" | awk '{print $1}'` ] ; then
         return 0
-    elif [ ! -z `file "$1" | grep "broken symbolic link to"` ] ; then
-        `file "$1"`
-        print_info "remove broken symlink: $1"
-        rm -fr "$1"
+    elif [ ! -z `echo "$CHK_SYMLINK_FILE" | grep "broken symbolic link to" | awk '{print $1}'` ] ; then
+        print_error "remove broken symlink: $CHK_SYMLINK_FILE"
+        rm -fr "$CHK_SYMLINK_FILE"
         return 1
     else
         return 1
@@ -92,8 +91,8 @@ try_force_link_dir () {
 
 try_download () {
     set -o pipefail
-    wget -c -t 1 -T 20 "$1" --output-document="$2" 2>&1 | \
-    sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \
+    wget -c -t 5 -T 2 "$1" --output-document="$2" 2>&1 | \
+    tr '\r' '\n' | sed -u 's/.* \([0-9]\+%\)\ \+\([0-9,.]\+.\) \(.*\)/\1\n#Downloading at \1\/, \2\/s, ETA \3/; s/^20[0-9][0-9].*/#Done./' | \
     zenity --progress --percentage=0 --title="Download $(basename $1)" --text=Starting... --auto-close --auto-kill --width=500 --height=90
     [ "${PIPESTATUS[0]}" != 0 ] && print_error "failed to download $1. Scipping." && return 1 || return 0
 }
@@ -159,7 +158,7 @@ pw_mangohud_check () {
 }
 
 pw_vkbasalt_check () {
-    if [ ! -z "${ENABLE_VKBASALT}" ] && [ "${ENABLE_VKBASALT}" == 1 ] ; then
+    if [[ ! -z "${ENABLE_VKBASALT}" && "${ENABLE_VKBASALT}" == 1 ]] ; then
         if [ -z "${PW_VKBASALT_EFFECTS}" ] ; then
             export PW_VKBASALT_EFFECTS="FakeHDR:cas" 
         fi
@@ -252,13 +251,20 @@ init_wine_ver () {
     else export PATH="${WINEDIR}/bin"
     fi
 
-    if [ -d "${WINEDIR}/files" ] ; then
+    if [[ -d "${WINEDIR}/files" && ! -d "${WINEDIR}/dist" ]] ; then
         chmod -R 755 "${WINEDIR}"
         for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^files$//g" | sed -e "s/^version$//g"` ; do 
             rm -fr "${WINEDIR}/$clear_dist_files"
         done
         mv -f "${WINEDIR}/files"/* "${WINEDIR}/"
         rm -fr "${WINEDIR}/files"
+    elif [[ ! -d "${WINEDIR}/files" && -d "${WINEDIR}/dist" ]] ; then
+            chmod -R 755 "${WINEDIR}"
+        for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^dist$//g" | sed -e "s/^version$//g"` ; do 
+            rm -fr "${WINEDIR}/$clear_dist_files"
+        done
+        mv -f "${WINEDIR}/dist"/* "${WINEDIR}/"
+        rm -fr "${WINEDIR}/dist"
     elif [ -f "${WINEDIR}/proton_dist.tar" ] ; then
         unpack_tar "${WINEDIR}/proton_dist.tar" "${WINEDIR}/"
         for clear_dist_files in `ls "${WINEDIR}" | sed -e "s/^bin$//g" | sed -e "s/^lib$//g" | sed -e "s/^lib64$//g" | sed -e "s/^share$//g" | sed -e "s/^version$//g"` ; do 
@@ -277,7 +283,7 @@ init_wine_ver () {
         if [ ! -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ] ; then
             try_remove_dir "${WINEDIR}/share/wine/${mono_gecko_chk}"
             try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/
-        elif [ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ] && [ ! `check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}"` ] ; then  
+        elif ! check_symlink "${WINEDIR}/share/wine/${mono_gecko_chk}" && [[ -d "${WINEDIR}/share/wine/${mono_gecko_chk}" ]]  ; then  
             cp -fr "${WINEDIR}/share/wine/${mono_gecko_chk}" "${PORT_WINE_TMP_PATH}"
             rm -fr "${WINEDIR}/share/wine/${mono_gecko_chk}"
             try_force_link_dir "${PORT_WINE_TMP_PATH}/${mono_gecko_chk}" "${WINEDIR}"/share/wine/
@@ -314,9 +320,14 @@ pw_stop_progress_bar () {
 }
 
 pw_download_libs () {
-    if [ ! -e "${PW_WINELIB}/runtime/bin/yad" ] || [ ! -e "${PW_WINELIB}/runtime/lib/p7zip/7z" ] \
-    || [ ! -e "${PW_WINELIB}/runtime/bin/vkcube" ] || [ ! -e "${PW_WINELIB}/runtime/bin/xterm" ] || \
-    [ -e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ] ; then
+    if [ ! -z "`ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER}`" ] ; then
+        for RM_LIBS in `ls ${PORT_WINE_TMP_PATH} | grep libs_v | grep -v libs${PW_LIBS_VER}`
+        do try_remove_dir "${PORT_WINE_TMP_PATH}/${RM_LIBS}"
+        done
+    fi
+    if [[ ! -e "${PW_WINELIB}/runtime/bin/yad" || ! -e "${PW_WINELIB}/runtime/lib/p7zip/7z" \
+    || ! -e "${PW_WINELIB}/runtime/bin/vkcube" || ! -e "${PW_WINELIB}/runtime/bin/xterm" || \
+    -e "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ]] ; then
         print_info "Download and install libraries..."
         if try_download "https://github.com/Castro-Fidel/PortWINE/releases/download/libs${PW_LIBS_VER}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" ; then
             if unpack_tar_xz "${PORT_WINE_TMP_PATH}/libs${PW_LIBS_VER}.tar.xz" "${PORT_WINE_TMP_PATH}/" ; then
@@ -404,7 +415,7 @@ update_winetricks () {
     print_info "Version winetricks on server: ${W_TRX_EXT_VER}"
     W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')"
     print_info "Version winetricks in port: ${W_TRX_INT_VER}"
-    if [ ! -f "${PORT_WINE_TMP_PATH}/winetricks" ] && [ ! -z "$W_TRX_EXT_VER" ] || [ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" ] && [ ! -z "$W_TRX_EXT_VER" ]; then
+    if [[ ! -f "${PORT_WINE_TMP_PATH}/winetricks" && ! -z "$W_TRX_EXT_VER" ]] || [[ "$W_TRX_INT_VER" != "$W_TRX_EXT_VER" && ! -z "$W_TRX_EXT_VER" ]]; then
         if try_download "${W_TRX_URL}" "${PORT_WINE_TMP_PATH}/winetricks_new" ; then
             mv -f "${PORT_WINE_TMP_PATH}/winetricks_new" "${PORT_WINE_TMP_PATH}/winetricks"
             W_TRX_INT_VER="$(cat "${PORT_WINE_TMP_PATH}/winetricks" | grep -i 'WINETRICKS_VERSION=' | sed 's/WINETRICKS_VERSION=//')" && print_info "Winetricks version in port has been updated (${W_TRX_INT_VER})" 
@@ -461,6 +472,7 @@ stop_portwine () {
     if [  ! -z "`ls "${WINEPREFIX}"/drive_c/ | grep -m 1 ".tmp"`" ] ; then
         rm -f "${WINEPREFIX}"/drive_c/*.tmp
     fi
+    exit 0
 }
 
 pw_tray_icon () {
@@ -475,6 +487,7 @@ pw_tray_icon () {
             then kill -s SIGUSR1 "`pgrep -a yad_new | grep "\-\-notification" | awk '{print $1}'`"
             fi
             kill -9 `pgrep -a start.sh | awk '/PortWINE/ && /PortProton/' | awk '{print $1}'`
+            exit 0
         }
         export -f tray_icon_click_exit
 
@@ -518,7 +531,7 @@ pw_port_update () {
             export port_current_ver=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep PORT_NEXT_VERSION | awk -F "=" '{print $2}'`
             print_info "Port version in github = ${port_current_ver}"
             print_info "Port version local = ${port_install_ver}"
-            if  [ ! -z "${port_current_ver}" ] && [ "${port_current_ver}" -gt "${port_install_ver}" ] ; then
+            if  [[ ! -z "${port_current_ver}" && "${port_current_ver}" -gt "${port_install_ver}" ]] ; then
                 xsd=`zenity --title  "${port_upd1}" --text "${port_upd2}" --list --radiolist --height=240 --column="${inst_set}" --column "${port_upd3}" \
                 TRUE "${port_upd4}" \
                 FALSE "${port_upd5}" \
@@ -575,7 +588,7 @@ pw_port_update () {
             export scripts_current_ver=`cat "${PORT_WINE_TMP_PATH}/curent_var_ver" | grep SCRIPTS_NEXT_VERSION | awk -F "=" '{print $2}'`
             print_info "Scripts version in github = ${scripts_current_ver}"
             print_info "Scripts version local = ${scripts_install_ver}"
-            if [ ! -z "${scripts_current_ver}" ] && [ "${scripts_current_ver}" -gt "${scripts_install_ver}" ] ; then
+            if [[ ! -z "${scripts_current_ver}" && "${scripts_current_ver}" -gt "${scripts_install_ver}" ]] ; then
                 xcsd=`zenity --title  "${scripts_upd1}" --text "${scripts_upd2}" --list --radiolist --height=240 --column="${inst_set}" --column "${scripts_upd3}" \
                 TRUE "${scripts_upd4}" \
                 FALSE "${scripts_upd5}" \
@@ -617,7 +630,7 @@ pw_kill_autostart () {
     else
         sleep 10
         while true ; do
-            if  [ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" ] && [ ! -z "`pgrep wrap | head -n 1`" ]; then
+            if  [[ -z "`ps aux | grep -m 1 "$1" | grep -v grep | awk '{print $2}'`" && ! -z "`pgrep wrap | head -n 1`" ]] ; then
                 echo -e "PID "$1" not found"
                 sleep 1
             else
@@ -662,7 +675,7 @@ pw_gui_for_edit_db () {
     --columns=4 --form --separator=" " --borders=10 --center  ${ADD_CHK_BOX_EDIT_DB} \
     --button="CANCEL":1 --button="OPEN DB FILE":150 --button="SAVE CHANGES":0 `
     YAD_STATUS="$?"
-    if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0
+    if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0
     elif [ "$YAD_STATUS" == "150" ] ; then
         xdg-open "${PORTWINE_DB_FILE}" &
         exit 0
@@ -681,9 +694,9 @@ pw_gui_for_edit_db () {
     }
     edit_db_field_read $@
     edit_db_from_gui $@
-    PW_DB_TMP=`cat "${PORTWINE_DB_FILE}"`
-    echo "${PW_DB_TMP}" | awk '! a[$0]++' > "${PORTWINE_DB_FILE}"
-    unset PW_DB_TMP
+    # PW_DB_TMP=`cat "${PORTWINE_DB_FILE}"`
+    # echo "${PW_DB_TMP}" | awk '! a[$0]++' > "${PORTWINE_DB_FILE}"
+    # unset PW_DB_TMP
     return 0
 }
 
@@ -734,3 +747,48 @@ pw_check_and_download_wine () {
         fi
     fi
 }
+
+gui_proton_downloader () {
+    set -o pipefail
+    export PROTON_GE_GIT=($(curl -s "https://api.github.com/repos/GloriousEggroll/proton-ge-custom/releases" | grep "browser_download_url.*\.tar\.gz" | cut -d \" -f 4))
+    [ "${PIPESTATUS[0]}" != 0 ] && exit 1
+    try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"
+    for PGEGIT in ${PROTON_GE_GIT[@]} ; do
+        echo ${PGEGIT} | awk -F/ '{print $NF}' | sed 's/.tar.gz//' >> "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"
+    done
+    sed -i '/Proton-6.5-GE-2/,$d' "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"
+    sed -i '/github-action/d' "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"
+    for INSTALLING_VERSION_IN_DIST in `ls "${PORT_WINE_PATH}/data/dist/"` ; do 
+        sed -i "/${INSTALLING_VERSION_IN_DIST}/Id" "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git" 
+    done
+    VERSION_PROTON_GIT=`yad --list --cheklist --separator="" --listen --width=400 --height=600 --center --borders=15 \
+    --column "Select WINE for download:" --title "Download..." < "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"`
+    if [ "${PIPESTATUS[0]}" != 0 ]; then
+        /bin/bash -c ${pw_full_command_line[*]} &
+        exit 0
+    fi
+    try_remove_file "${PORT_WINE_TMP_PATH}/tmp_proton_ge_git"
+
+    for PGEGIT2 in ${PROTON_GE_GIT[@]} ; do
+        if [ ! -z `echo ${PGEGIT2} | grep "$VERSION_PROTON_GIT"` ] ; then
+            export URL_VERSION_PROTON_GIT="${PGEGIT2}"
+        fi
+    done
+
+    print_info "Download and install ${VERSION_PROTON_GIT}..."
+    if try_download "${URL_VERSION_PROTON_GIT}" "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" ; then
+        if unpack_tar_gz "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz" "${PORT_WINE_PATH}/data/dist/" ; then
+            try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz"
+        else
+            try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_PROTON_GIT}.tar.gz"
+            try_remove_dir "${PORT_WINE_PATH}/data/dist/${VERSION_PROTON_GIT}"
+
+            zenity_error_download && gui_proton_downloader
+        fi
+    else
+        zenity_error_download && gui_proton_downloader
+    fi
+    /bin/bash -c ${pw_full_command_line[*]} &
+    exit 0
+}
+export -f gui_proton_downloader
diff --git a/data_from_portwine/scripts/portwine_db/ACIII b/data_from_portwine/scripts/portwine_db/ACIII
index 35bb5cf5..fa729d96 100755
--- a/data_from_portwine/scripts/portwine_db/ACIII
+++ b/data_from_portwine/scripts/portwine_db/ACIII
@@ -17,7 +17,7 @@ export WINEDLLOVERRIDES="xinput1_3,d3dcompiler_43=n,b"
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/Anno4 b/data_from_portwine/scripts/portwine_db/Anno4
new file mode 100644
index 00000000..a11ef62b
--- /dev/null
+++ b/data_from_portwine/scripts/portwine_db/Anno4
@@ -0,0 +1,41 @@
+#!/bin/bash
+#Author: xuser
+#Anno4.exe
+#Rating=1-5
+#####################examples###########################
+export PW_COMMENT_DB="If after the first launch you see a black screen,\njust restart the game."
+##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
+##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks) 
+##export WINEDLLOVERRIDES="blabla=n,b"
+##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
+export PW_WINE_USE=PROTON_GE
+export PW_VULKAN_USE=dxvk
+##export PW_DXR_ON=1
+##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
+##export PW_USE_NVAPI_AND_DLSS=0
+##export PW_OLD_GL_STRING=1
+##export PW_HIDE_NVIDIA_GPU=1
+##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
+##export PW_VIRTUAL_DESKTOP=1
+##export VKD3D_CONFIG=force_bindless_texel_buffer,multi_queue
+export ENABLE_VKBASALT=1
+export PW_VKBASALT_EFFECTS="cas"        # Use Reshade in others games (dx9-12 to vulkan only)
+export PW_VKBASALT_FFX_CAS="0.6"                 # FidelityFX Contrast Adaptive Sharpening (min 0 - max 1)
+##export PW_NO_FSYNC=1                            # Do not use futex-based in-process synchronization primitives. (Automatically disabled on systems with no FUTEX_WAIT_MULTIPLE support.
+##export PW_NO_ESYNC=0                            # Do not use eventfd-based in-process synchronization primitives
+##export PW_USE_GSTREAMER=1                       # 0 - disabled use winegstreamer 
+##export PULSE_LATENCY_MSEC=60                    # Fix crackling audio in games
+##export PW_NO_WRITE_WATCH=1                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
+##export PW_HEAP_DELAY_FREE=1
+##export PW_WINE_ALLOW_XIM=1                      # Disable XIM support until libx11 >= 1.7 is widespread
+##export WINEARCH=win32                           # defaut = win64
+##export WINEPREFIX=
+##export PW_WINEDBG_DISABLE=1                     # Disabled WINEDBG
+##export PW_USE_TERMINAL=1                        # Force run in terminal
+##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI
+##export PATH_TO_GAME=
+add_in_start_portwine () {
+    if [ -d "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/" ] ; then
+        sed -i 's/<DirectXVersion>0<\/DirectXVersion>/<DirectXVersion>9<\/DirectXVersion>/' "${WINEPREFIX}/drive_c/users/steamuser/AppData/Roaming/Ubisoft/Anno1404/Config/Engine.ini"
+    fi
+}
diff --git a/data_from_portwine/scripts/portwine_db/AnomalyLauncher b/data_from_portwine/scripts/portwine_db/AnomalyLauncher
index 123ed85b..23336d00 100644
--- a/data_from_portwine/scripts/portwine_db/AnomalyLauncher
+++ b/data_from_portwine/scripts/portwine_db/AnomalyLauncher
@@ -12,7 +12,7 @@ export PW_WINE_USE=proton_ge
 export PW_VULKAN_USE=dxvk
 export PW_DXR_ON=0
 export PW_VULKAN_NO_ASYNC=0
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 export PW_OLD_GL_STRING=0
 export PW_HIDE_NVIDIA_GPU=0
 export PW_FORCE_USE_VSYNC=0
diff --git a/data_from_portwine/scripts/portwine_db/Arthur b/data_from_portwine/scripts/portwine_db/Arthur
index b57effdd..a12dea75 100755
--- a/data_from_portwine/scripts/portwine_db/Arthur
+++ b/data_from_portwine/scripts/portwine_db/Arthur
@@ -15,7 +15,7 @@ export PW_VULKAN_USE=dxvk
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher
index 8e46a116..178922be 100755
--- a/data_from_portwine/scripts/portwine_db/Battle.net_Launcher
+++ b/data_from_portwine/scripts/portwine_db/Battle.net_Launcher
@@ -12,7 +12,7 @@ export LAUNCH_PARAMETERS=""
 export WINEDLLOVERRIDES="locationapi="
 export PW_DLL_INSTALL="vcrun2019 d3dx11_42 d3dx11_43"
 export PW_WINDOWS_VER=10
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 
 add_in_start_portwine () {
     rm -fr "${PORT_WINE_PATH}/data/pfx/drive_c/ProgramData/Agent/data"
diff --git a/data_from_portwine/scripts/portwine_db/Biomutant b/data_from_portwine/scripts/portwine_db/Biomutant
index 5cda9fe0..a17178a4 100755
--- a/data_from_portwine/scripts/portwine_db/Biomutant
+++ b/data_from_portwine/scripts/portwine_db/Biomutant
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="vcrun2019"               # Install DDL in port prefix (us
 ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Control_DX11 b/data_from_portwine/scripts/portwine_db/Control_DX11
index 3193429e..135e849d 100755
--- a/data_from_portwine/scripts/portwine_db/Control_DX11
+++ b/data_from_portwine/scripts/portwine_db/Control_DX11
@@ -17,7 +17,7 @@ export PW_DLL_INSTALL="physx"
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Control_DX12 b/data_from_portwine/scripts/portwine_db/Control_DX12
index e58e1f96..44fe36eb 100755
--- a/data_from_portwine/scripts/portwine_db/Control_DX12
+++ b/data_from_portwine/scripts/portwine_db/Control_DX12
@@ -17,7 +17,7 @@ export WINEDLLOVERRIDES="d3d12,d3d_rmdwin10_f,renderer_rmdwin10_f,app_rmdwin10_f
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Cyberpunk2077 b/data_from_portwine/scripts/portwine_db/Cyberpunk2077
index b7adf528..77860e6c 100755
--- a/data_from_portwine/scripts/portwine_db/Cyberpunk2077
+++ b/data_from_portwine/scripts/portwine_db/Cyberpunk2077
@@ -13,7 +13,7 @@ export WINEDLLOVERRIDES="Crash*,REDEngineErrorReporter.exe="
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=1
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/DOOM Eternal b/data_from_portwine/scripts/portwine_db/DOOM Eternal
index a78d3863..237039c3 100755
--- a/data_from_portwine/scripts/portwine_db/DOOM Eternal	
+++ b/data_from_portwine/scripts/portwine_db/DOOM Eternal	
@@ -11,7 +11,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio
 #export PW_VULKAN_NO_ASYNC=1
 #export PW_USE_TERMINAL=1
 #export PW_OLD_GL_STRING=0
-#export PW_USE_NVAPI=0
+#export PW_USE_NVAPI_AND_DLSS=0
 #export PW_VKD3D_FEATURE_LEVEL=0
 #export PW_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 #export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/DaysGone b/data_from_portwine/scripts/portwine_db/DaysGone
index aa241e98..9984fad9 100755
--- a/data_from_portwine/scripts/portwine_db/DaysGone
+++ b/data_from_portwine/scripts/portwine_db/DaysGone
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="vcrun2019"               # Install DDL in port prefix (us
 ##export LAUNCH_PARAMETERS="('"+com_skipIntroVideo 1"' '"+com_skipSignInManager 1"')"                # Additional launch options
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Diablo_II b/data_from_portwine/scripts/portwine_db/Diablo_II
index d0ab9279..74e35fb1 100755
--- a/data_from_portwine/scripts/portwine_db/Diablo_II
+++ b/data_from_portwine/scripts/portwine_db/Diablo_II
@@ -14,7 +14,7 @@ export PW_VULKAN_USE=0
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/FL64 b/data_from_portwine/scripts/portwine_db/FL64
index efeede32..36f86091 100755
--- a/data_from_portwine/scripts/portwine_db/FL64
+++ b/data_from_portwine/scripts/portwine_db/FL64
@@ -15,7 +15,7 @@ export WINEDLLOVERRIDES="FLEngine,FLEngine_x64=n"
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=0
 ##export PW_HIDE_NVIDIA_GPU=0
 ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Far Cry 1 b/data_from_portwine/scripts/portwine_db/Far Cry 1
index 3159b098..6bfcba4f 100755
--- a/data_from_portwine/scripts/portwine_db/Far Cry 1	
+++ b/data_from_portwine/scripts/portwine_db/Far Cry 1	
@@ -11,7 +11,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio
 export PW_DXVK_ASYNC=0
 #export PW_USE_TERMINAL=0
 export PW_OLD_GL_STRING=1
-#export PW_USE_NVAPI=0
+#export PW_USE_NVAPI_AND_DLSS=0
 #export PW_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 #export PW_HIDE_NVIDIA_GPU=0
 #export PW_FORCE_USE_VSYNC=2         # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/FarLoneSails b/data_from_portwine/scripts/portwine_db/FarLoneSails
index a0530e08..bb2f7186 100755
--- a/data_from_portwine/scripts/portwine_db/FarLoneSails
+++ b/data_from_portwine/scripts/portwine_db/FarLoneSails
@@ -14,7 +14,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11 b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11
index a93fc765..880c4305 100755
--- a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11
+++ b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d11
@@ -15,7 +15,7 @@ export PW_DLL_INSTALL="d3dx11_42 d3dx11_43"
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9 b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9
index a8553f39..06930868 100755
--- a/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9
+++ b/data_from_portwine/scripts/portwine_db/Far_Cry_3_d3d9
@@ -15,7 +15,7 @@ export PW_VULKAN_USE=0
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Far_Cry_4 b/data_from_portwine/scripts/portwine_db/Far_Cry_4
index 6a1feb2e..b2227491 100755
--- a/data_from_portwine/scripts/portwine_db/Far_Cry_4
+++ b/data_from_portwine/scripts/portwine_db/Far_Cry_4
@@ -13,7 +13,7 @@ export PW_DLL_INSTALL="d3dcompiler_43 d3dcompiler_47"               # Install DD
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/HITMAN3 b/data_from_portwine/scripts/portwine_db/HITMAN3
index d024edaf..f0feb389 100755
--- a/data_from_portwine/scripts/portwine_db/HITMAN3
+++ b/data_from_portwine/scripts/portwine_db/HITMAN3
@@ -7,4 +7,4 @@ export PW_VULKAN_USE=vkd3d
 export LAUNCH_PARAMETERS=""
 export PW_DXGI_FROM_DXVK=1
 #export MANGOHUD=1
-#export PW_USE_NVAPI=0            # for nvidia gpu
+#export PW_USE_NVAPI_AND_DLSS=0            # for nvidia gpu
diff --git a/data_from_portwine/scripts/portwine_db/Hades b/data_from_portwine/scripts/portwine_db/Hades
index e5c6bce2..affc3271 100755
--- a/data_from_portwine/scripts/portwine_db/Hades
+++ b/data_from_portwine/scripts/portwine_db/Hades
@@ -12,7 +12,7 @@ export PW_VULKAN_USE=dxvk #dxvk or vkd3d
 #export PW_VULKAN_NO_ASYNC=1
 #export PW_USE_TERMINAL=0
 #export PW_OLD_GL_STRING=0
-#export PW_USE_NVAPI=0
+#export PW_USE_NVAPI_AND_DLSS=0
 #export PW_VKD3D_FEATURE_LEVEL=0
 #export PW_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 #export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/LOF2 b/data_from_portwine/scripts/portwine_db/LOF2
index 64c6cdf6..475f6a36 100755
--- a/data_from_portwine/scripts/portwine_db/LOF2
+++ b/data_from_portwine/scripts/portwine_db/LOF2
@@ -14,7 +14,7 @@ export PW_VULKAN_USE=dxvk
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/League of Legends b/data_from_portwine/scripts/portwine_db/League of Legends
index 92511094..b827cb89 100755
--- a/data_from_portwine/scripts/portwine_db/League of Legends	
+++ b/data_from_portwine/scripts/portwine_db/League of Legends	
@@ -3,19 +3,24 @@
 #LeagueClient.exe
 #RiotClientServices.exe
 #Install League of Legends ru.exe
+#Install League of Legends nu.exe
 #Install League of Legends euw.exe
+#live.na.exe
 #Rating=1-5
 #####################examples###########################
-export PW_COMMENT_DB="Check openssl in your system!"
+export TEXT_OPSSL=""
+[[ -z `which openssl` ]] && export TEXT_OPSSL="Install openssl in your system!!!\n"
+export PW_COMMENT_DB="${TEXT_OPSSL}Dwnload and start League of Legend can take a long time"
 ##export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
 ##export PW_DLL_INSTALL="vcrun2017"               # Install DDL in port prefix (used winetricks)
 ##export WINEDLLOVERRIDES="blabla=n,b"
 export LAUNCH_PARAMETERS=("--launch-product=league_of_legends" "--launch-patchline=live")                # Additional launch options
-export PW_WINE_USE=PROTON_GE
+export PW_WINE_USE=WINE_LOL_GE_6.16-2
 export PW_VULKAN_USE=dxvk
+export PW_MUST_HAVE_DLL=""
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
@@ -39,12 +44,13 @@ export PW_GECKO_VER="2.47.2"
 ##export PW_GUI_DISABLED_CS=1                     # 1 = disabled GUI
 
 check_port_for_lol () {
+    pw_start_progress_bar_block "Download and start League of Legend. Please wait. It can take a long time!"
     process=LeagueClientUx.exe
-    uxpid=$(timeout 2m /bin/bash -c "until pidof ${process}; do sleep 1; done")
-    if [ ! -n $uxpid ]; then
-        echo "Could not find process ${process}"
-        exit 1
-    fi
+    while [[ -z `pidof ${process}` ]] ; do
+        echo "PID ${process} not found"
+        sleep 1
+    done
+    uxpid=`pidof ${process}`
     echo "LeagueClientUx pid: ${uxpid}"
     port=$(xargs -0 < /proc/${uxpid}/cmdline | sed -n 's/.*--app-port=\([[:digit:]]*\).*/\1/p')
     if [ ! -n $port ]; then
@@ -53,11 +59,12 @@ check_port_for_lol () {
     fi
     echo "Waiting for port ${port}"
     kill -STOP ${uxpid}
-    timeout 5m /bin/bash -c "
-    until openssl s_client -connect :${port} <<< Q > /dev/null 2>&1; do
+    timeout 200m /bin/bash -c "
+    until openssl s_client -connect :${port} <<< Q > /dev/null 2>&1 ; do
     sleep 1
     done"
     kill -CONT ${uxpid}
+    pw_stop_progress_bar
 }
 
 add_in_start_portwine () {
diff --git a/data_from_portwine/scripts/portwine_db/LostEmber b/data_from_portwine/scripts/portwine_db/LostEmber
index b304bed9..5ccb2e80 100755
--- a/data_from_portwine/scripts/portwine_db/LostEmber
+++ b/data_from_portwine/scripts/portwine_db/LostEmber
@@ -15,7 +15,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/MassEffect b/data_from_portwine/scripts/portwine_db/MassEffect
index 56aafaaf..ca8dc5f6 100755
--- a/data_from_portwine/scripts/portwine_db/MassEffect
+++ b/data_from_portwine/scripts/portwine_db/MassEffect
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/MassEffect2 b/data_from_portwine/scripts/portwine_db/MassEffect2
index 3d350339..455f6054 100755
--- a/data_from_portwine/scripts/portwine_db/MassEffect2
+++ b/data_from_portwine/scripts/portwine_db/MassEffect2
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"                  # Install DDL in port prefi
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/MikuMikuDance b/data_from_portwine/scripts/portwine_db/MikuMikuDance
index 276cd866..26ad6c9e 100755
--- a/data_from_portwine/scripts/portwine_db/MikuMikuDance
+++ b/data_from_portwine/scripts/portwine_db/MikuMikuDance
@@ -11,7 +11,7 @@
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run b/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run
index 98fc3365..74eeea59 100755
--- a/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run
+++ b/data_from_portwine/scripts/portwine_db/Need_For_Speed_The_Run
@@ -15,7 +15,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/NovaRO b/data_from_portwine/scripts/portwine_db/NovaRO
index 3860bd10..65c7f0c1 100755
--- a/data_from_portwine/scripts/portwine_db/NovaRO
+++ b/data_from_portwine/scripts/portwine_db/NovaRO
@@ -17,7 +17,7 @@ export PW_DLL_INSTALL="d3dcompiler_42 d3dcompiler_43 d3dx9"
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Origin b/data_from_portwine/scripts/portwine_db/Origin
index 0266ee0b..e58bbdba 100755
--- a/data_from_portwine/scripts/portwine_db/Origin
+++ b/data_from_portwine/scripts/portwine_db/Origin
@@ -15,7 +15,7 @@ export PW_DLL_INSTALL="vcrun2010 vcrun2012 vcrun2017 d3dcompiler_43 d3dcompiler_
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=0
 ##export PW_HIDE_NVIDIA_GPU=0
 ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/SR2_pc b/data_from_portwine/scripts/portwine_db/SR2_pc
index 7ba28499..0b75d7cf 100755
--- a/data_from_portwine/scripts/portwine_db/SR2_pc
+++ b/data_from_portwine/scripts/portwine_db/SR2_pc
@@ -10,7 +10,7 @@
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Sam3 b/data_from_portwine/scripts/portwine_db/Sam3
index 8b1379de..a72716de 100755
--- a/data_from_portwine/scripts/portwine_db/Sam3
+++ b/data_from_portwine/scripts/portwine_db/Sam3
@@ -16,7 +16,7 @@ export PULSE_LATENCY_MSEC=150
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/Sirus Launcher b/data_from_portwine/scripts/portwine_db/Sirus Launcher
index b4ebfbac..53f270ad 100755
--- a/data_from_portwine/scripts/portwine_db/Sirus Launcher	
+++ b/data_from_portwine/scripts/portwine_db/Sirus Launcher	
@@ -15,7 +15,7 @@ export PW_WINDOWS_VER=7                      # Set windows version 10, 7 or XP
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/StarCraft b/data_from_portwine/scripts/portwine_db/StarCraft
index 6bc538fd..552c1894 100755
--- a/data_from_portwine/scripts/portwine_db/StarCraft
+++ b/data_from_portwine/scripts/portwine_db/StarCraft
@@ -15,7 +15,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/Suite b/data_from_portwine/scripts/portwine_db/Suite
index cd610901..b39dedb3 100755
--- a/data_from_portwine/scripts/portwine_db/Suite
+++ b/data_from_portwine/scripts/portwine_db/Suite
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="corefonts"        # Install DDL in port prefix (used wine
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/Torchlight b/data_from_portwine/scripts/portwine_db/Torchlight
index 9d38c7de..c90f9167 100755
--- a/data_from_portwine/scripts/portwine_db/Torchlight
+++ b/data_from_portwine/scripts/portwine_db/Torchlight
@@ -18,7 +18,7 @@ export PW_VKBASALT_FFX_CAS="1"
 ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/UNDERTALE b/data_from_portwine/scripts/portwine_db/UNDERTALE
index edccefc1..d9c6f168 100644
--- a/data_from_portwine/scripts/portwine_db/UNDERTALE
+++ b/data_from_portwine/scripts/portwine_db/UNDERTALE
@@ -15,7 +15,7 @@ export PW_VULKAN_USE=dxvk
 ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/UbisoftConnect b/data_from_portwine/scripts/portwine_db/UbisoftConnect
index 041ce6fe..0c8df1ab 100755
--- a/data_from_portwine/scripts/portwine_db/UbisoftConnect
+++ b/data_from_portwine/scripts/portwine_db/UbisoftConnect
@@ -16,7 +16,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/WarGame3 b/data_from_portwine/scripts/portwine_db/WarGame3
index 2ec49415..fab7cce1 100755
--- a/data_from_portwine/scripts/portwine_db/WarGame3
+++ b/data_from_portwine/scripts/portwine_db/WarGame3
@@ -15,7 +15,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/alanwake b/data_from_portwine/scripts/portwine_db/alanwake
index f6ce6483..67bf26c1 100755
--- a/data_from_portwine/scripts/portwine_db/alanwake
+++ b/data_from_portwine/scripts/portwine_db/alanwake
@@ -13,7 +13,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/arizona-starter b/data_from_portwine/scripts/portwine_db/arizona-starter
index d91a0511..3d137589 100755
--- a/data_from_portwine/scripts/portwine_db/arizona-starter
+++ b/data_from_portwine/scripts/portwine_db/arizona-starter
@@ -14,7 +14,7 @@
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/default b/data_from_portwine/scripts/portwine_db/default
index c4688799..0333868d 100755
--- a/data_from_portwine/scripts/portwine_db/default
+++ b/data_from_portwine/scripts/portwine_db/default
@@ -13,8 +13,9 @@
 ##export PW_WINE_USE=PROTON_GE                    # PROTON_STEAM or PROTON_GE
 ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
+##export PW_DLSS_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/dontstarve b/data_from_portwine/scripts/portwine_db/dontstarve
index bac5f99b..232856a3 100755
--- a/data_from_portwine/scripts/portwine_db/dontstarve
+++ b/data_from_portwine/scripts/portwine_db/dontstarve
@@ -15,7 +15,7 @@ export PW_DLL_INSTALL="d3dx9 d3dcompiler_43"        # Install DDL in port prefix
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11 b/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11
index 1c44a5eb..d21e8494 100644
--- a/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11
+++ b/data_from_portwine/scripts/portwine_db/fc3_blooddragon_d3d11
@@ -12,7 +12,7 @@ export PW_WINE_USE=PROTON_GE
 export PW_VULKAN_USE=dxvk
 export PW_DXR_ON=0
 export PW_VULKAN_NO_ASYNC=0
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 export PW_OLD_GL_STRING=0
 export PW_HIDE_NVIDIA_GPU=0
 export PW_FORCE_USE_VSYNC=0
diff --git a/data_from_portwine/scripts/portwine_db/ghost b/data_from_portwine/scripts/portwine_db/ghost
index 16748f9c..2e33b9c2 100644
--- a/data_from_portwine/scripts/portwine_db/ghost
+++ b/data_from_portwine/scripts/portwine_db/ghost
@@ -14,7 +14,7 @@ export PW_WINE_USE=proton_ge
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/iw3sp b/data_from_portwine/scripts/portwine_db/iw3sp
index a6049f9b..54f65316 100755
--- a/data_from_portwine/scripts/portwine_db/iw3sp
+++ b/data_from_portwine/scripts/portwine_db/iw3sp
@@ -20,7 +20,7 @@
 ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/iw4sp b/data_from_portwine/scripts/portwine_db/iw4sp
index 99b36ebc..125c3079 100755
--- a/data_from_portwine/scripts/portwine_db/iw4sp
+++ b/data_from_portwine/scripts/portwine_db/iw4sp
@@ -20,7 +20,7 @@
 ##export PW_VKD3D_VER=2.2
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=0
 ##export PW_HIDE_NVIDIA_GPU=0
 ##export PW_FORCE_USE_VSYNC=2                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/risen-1 b/data_from_portwine/scripts/portwine_db/risen-1
index 574a66df..c1cd9305 100755
--- a/data_from_portwine/scripts/portwine_db/risen-1
+++ b/data_from_portwine/scripts/portwine_db/risen-1
@@ -12,7 +12,7 @@ export PW_DLL_INSTALL="physx d3dx9"        # Install DDL in port prefix (used wi
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/s1_sp64_ship b/data_from_portwine/scripts/portwine_db/s1_sp64_ship
index 85b5c60c..2c951174 100755
--- a/data_from_portwine/scripts/portwine_db/s1_sp64_ship
+++ b/data_from_portwine/scripts/portwine_db/s1_sp64_ship
@@ -20,7 +20,7 @@
 ##export PW_DXVK_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/setup b/data_from_portwine/scripts/portwine_db/setup
index ceec3bc9..1e2a7d8f 100755
--- a/data_from_portwine/scripts/portwine_db/setup
+++ b/data_from_portwine/scripts/portwine_db/setup
@@ -16,7 +16,7 @@ export PW_NO_ESYNC=1        # Do not use eventfd-based in-process synchronizatio
 #export PW_VULKAN_NO_ASYNC=1
 #export PW_USE_TERMINAL=0
 #export PW_OLD_GL_STRING=0
-#export PW_USE_NVAPI=0
+#export PW_USE_NVAPI_AND_DLSS=0
 #export PW_VKD3D_FEATURE_LEVEL=0
 export PW_NO_WRITE_WATCH=0          # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 #export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/portwine_db/sprally2 b/data_from_portwine/scripts/portwine_db/sprally2
index 5d0d4619..0ebbb188 100644
--- a/data_from_portwine/scripts/portwine_db/sprally2
+++ b/data_from_portwine/scripts/portwine_db/sprally2
@@ -16,7 +16,7 @@ export PW_OLD_GL_STRING=1
 ##export PW_VULKAN_USE=vkd3d                      # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/trine b/data_from_portwine/scripts/portwine_db/trine
index 819fbdb1..3d2c7b46 100755
--- a/data_from_portwine/scripts/portwine_db/trine
+++ b/data_from_portwine/scripts/portwine_db/trine
@@ -11,7 +11,7 @@ export PW_DLL_INSTALL="physx"               # Install DDL in port prefix (used w
 ##export PW_VULKAN_USE=dxvk                       # dxvk, vkd3d or 0 for OpenGL
 ##export PW_DXR_ON=1
 ##export PW_VULKAN_NO_ASYNC=1                     # Disabled ASYNC for VULKAN
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_OLD_GL_STRING=1
 ##export PW_HIDE_NVIDIA_GPU=1
 ##export PW_FORCE_USE_VSYNC=0                     # Vsync: 0-FORCE_OFF, 1-FORCE_ON, 2-BY_DEFAULT
diff --git a/data_from_portwine/scripts/portwine_db/wgc b/data_from_portwine/scripts/portwine_db/wgc
index c25160f7..9096f554 100755
--- a/data_from_portwine/scripts/portwine_db/wgc
+++ b/data_from_portwine/scripts/portwine_db/wgc
@@ -9,7 +9,7 @@ export PW_COMMENT_DB="Wargaming Game Center"
 export LAUNCH_PARAMETERS="--disable-gpu"            # Additional launch options
 #export PW_USE_TERMINAL=1
 export PW_WINDOWS_VER=10                        # Set windows version 10, 7 or XP
-#export PW_USE_NVAPI=0
+#export PW_USE_NVAPI_AND_DLSS=0
 export WINEDLLOVERRIDES="ucrtbase,xaudio2_7,xaudio2_8=n,b"
 export PW_DLL_INSTALL="lucida vcrun2019"     # Install DDL in port prefix (used winetricks)
 ##export PW_GUI_DISABLED_CS=1
diff --git a/data_from_portwine/scripts/portwine_db/witcher3 b/data_from_portwine/scripts/portwine_db/witcher3
index de0e61e3..407a46a7 100755
--- a/data_from_portwine/scripts/portwine_db/witcher3
+++ b/data_from_portwine/scripts/portwine_db/witcher3
@@ -33,5 +33,5 @@ export PW_WINEDBG_DISABLE=0
 export PW_USE_TERMINAL=0
 ##ADD_IN_START_PORTWINE () { commands ; }
 export PW_WINE_USE=PROTON_GE
-export PW_USE_NVAPI=0
+export PW_USE_NVAPI_AND_DLSS=0
 export PW_GUI_DISABLED_CS=0
diff --git a/data_from_portwine/scripts/portwine_db/wotblitz b/data_from_portwine/scripts/portwine_db/wotblitz
index cfbd888e..add44ab3 100755
--- a/data_from_portwine/scripts/portwine_db/wotblitz
+++ b/data_from_portwine/scripts/portwine_db/wotblitz
@@ -15,7 +15,7 @@ export PW_DLL_INSTALL="vcrun2013 vcrun2017 dotnet472"
 ##export PW_VULKAN_NO_ASYNC=1                       # Disabled ASYNC for VULKAN
 ##export PW_USE_TERMINAL=0                        # Force run in terminal
 ##export PW_OLD_GL_STRING=0
-##export PW_USE_NVAPI=0
+##export PW_USE_NVAPI_AND_DLSS=0
 ##export PW_VKD3D_FEATURE_LEVEL=0
 ##export PW_NO_WRITE_WATCH=0                      # Disable support for memory write watches in ntdll. This is a very dangerous hack and should only be applied if you have verified that the game can operate without write watches. This improves performance for some very specific games (e.g. CoreRT-based games).
 ##export PW_HIDE_NVIDIA_GPU=0
diff --git a/data_from_portwine/scripts/pw_autoinstall/PW_LOL b/data_from_portwine/scripts/pw_autoinstall/PW_LOL
new file mode 100644
index 00000000..f4c7e563
--- /dev/null
+++ b/data_from_portwine/scripts/pw_autoinstall/PW_LOL
@@ -0,0 +1,38 @@
+#!/bin/bash
+# Author: Castro-Fidel (PortWINE-Linux.ru)
+########################################################################
+export LAUNCH_PARAMETERS=("/q" )
+export PW_AUTOINSTALL_EXE="${WINEPREFIX}/drive_c/live.na.exe"
+export LAUNCH_PARAMETERS=("--launch-product=league_of_legends" "--launch-patchline=live")
+export VERSION_WINE_FOR_LOL="WINE_LOL_GE_6.16-2"
+export PW_MUST_HAVE_DLL=""
+if [ ! -d "${PORT_WINE_PATH}/data/dist/${VERSION_WINE_FOR_LOL}" ] ; then
+    if try_download "https://github.com/Castro-Fidel/wine_builds/releases/download/WINE_LOL_GE_6.16-2/${VERSION_WINE_FOR_LOL}.tar.xz" \
+    "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" ; then
+        if unpack_tar_xz "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz" "${PORT_WINE_PATH}/data/dist/" ; then
+            try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz"
+            UNPACK_STATUS=0
+        else
+            try_remove_file "${PORT_WINE_PATH}/data/tmp/${VERSION_WINE_FOR_LOL}.tar.xz"
+            try_remove_dir "${PORT_WINE_PATH}/data/dist/${VERSION_WINE_FOR_LOL}"
+        fi
+    fi
+    [[ "${UNPACK_STATUS}" != 0 ]] && exit 1
+fi
+export PW_WINE_USE=WINE_LOL_GE_6.16-2
+export PW_VULKAN_USE=dxvk
+start_portwine
+if try_download "https://lol.secure.dyn.riotcdn.net/channels/public/x/installer/current/live.na.exe" "${PW_AUTOINSTALL_EXE}"
+then
+    pw_start_progress_bar_block "Installing League of Legends. Please wait..."
+    zenity --info --width=500 --text "You must click the install button without changing the settings!"   
+    pw_kill_autostart RiotClientServices.exe &
+    pw_run "${PW_AUTOINSTALL_EXE}" 
+    portwine_exe="$WINEPREFIX/drive_c/Riot Games/Riot Client/RiotClientServices.exe"
+    try_remove_file "${PW_AUTOINSTALL_EXE}"
+    kill_portwine
+    pw_stop_progress_bar
+    export PORTWINE_CREATE_SHORTCUT_NAME="League of Legend"
+    portwine_create_shortcut
+fi
+stop_portwine
diff --git a/data_from_portwine/scripts/runlib b/data_from_portwine/scripts/runlib
index ef12043f..ff22a3e8 100755
--- a/data_from_portwine/scripts/runlib
+++ b/data_from_portwine/scripts/runlib
@@ -10,8 +10,12 @@ echo '
 █────████─█─█───█───█─█──███─█──█─███
 
 '
-[ $(id -u) = 0 ] && echo "Do not run this script as root!" && zenity --error --text "Do not run this script as root!" && exit 1
-if [ "${s_install}" != "1" ] && [ ! -x "`which "zenity" 2>/dev/null`" ];then
+if [ $(id -u) = 0 ] ; then
+    echo "Do not run this script as root!"
+    zenity --error --text "Do not run this script as root!"
+    exit 1
+fi
+if [[ "${s_install}" != "1" && ! -x "`which "zenity" 2>/dev/null`" ]] ; then
     echo "You will need to install: zenity, and restart the port."
     xdg-open "http://portwine-linux.ru/portwine-faq/" > /dev/null 2>&1 & exit 0
 fi
@@ -38,7 +42,7 @@ start_portwine () {
 
     if [ "${PW_USE_GSTREAMER}" = 1 ] ; then 
         export GST_PLUGIN_SYSTEM_PATH_1_0="${WINEDIR}/lib64/gstreamer-1.0:${WINEDIR}/lib/gstreamer-1.0"
-        export GST_DEBUG="WARNING:0"
+        export GST_DEBUG="*:0"
         export WINE_GST_REGISTRY_DIR="${PORT_WINE_TMP_PATH}"
         export MEDIACONV_AUDIO_DUMP_FILE="${PORT_WINE_TMP_PATH}"/audio.foz
         export MEDIACONV_AUDIO_TRANSCODED_FILE="${PORT_WINE_TMP_PATH}"/transcoded_audio.foz
@@ -55,7 +59,7 @@ start_portwine () {
         echo "RUNTIME is disabled"
     else
         export PW_AND_RUNTIME_LIBRARY_PATH="/overrides/lib/x86_64-linux-gnu/:/overrides/lib/x86_64-linux-gnu/aliases/:/overrides/lib/i386-linux-gnu/:/overrides/lib/i386-linux-gnu/aliases/:"
-        if [ ! -z "${PW_SANDBOX_HOME_PATH}" ] && [ -d "${PW_SANDBOX_HOME_PATH}" ]; then
+        if [[ ! -z "${PW_SANDBOX_HOME_PATH}" && -d "${PW_SANDBOX_HOME_PATH}" ]]; then
             export pw_runtime="${PW_WINELIB}/pressure-vessel/bin/pressure-vessel-unruntime \
             --unshare-home \
             --home="${PW_SANDBOX_HOME_PATH}" \
@@ -91,10 +95,13 @@ start_portwine () {
         if [ ! -f "${PW_WINELIB}/runtime/etc/os-release" ]
         then try_force_link_file "${PW_WINELIB}/runtime/lib/os-release" "${PW_WINELIB}/runtime/etc/os-release"
         fi
+        if [ ! -d "${PW_WINELIB}/runtime/share/nvidia" ]
+        then create_new_dir "${PW_WINELIB}/runtime/share/nvidia"
+        fi
         echo "RUNTIME is enabled"
     fi
 
-    if [ ! -z "${PW_LOG}" ] && [ "${PW_LOG}" != 0 ] ; then
+    if [[ ! -z "${PW_LOG}" && "${PW_LOG}" != 0 ]] ; then
         export WINEDEBUG="fixme-all,err+loaddll,err+dll,err+file,err+reg"
         export DXVK_LOG_LEVEL="info"
         export VKD3D_DEBUG="warn"
@@ -109,33 +116,33 @@ start_portwine () {
     #default wine-mono override for FNA games
     export WINE_MONO_OVERRIDES="Microsoft.Xna.Framework.*,Gac=n"
 
-    if [ ! -z "${PW_NO_ESYNC}" ] && [ "${PW_NO_ESYNC}" != 0 ]
+    if [[ ! -z "${PW_NO_ESYNC}" && "${PW_NO_ESYNC}" != 0 ]]
     then export WINEESYNC="0"
     else export WINEESYNC="1"
     fi
-    if [ ! -z "${PW_NO_FSYNC}" ] && [ "${PW_NO_FSYNC}" != 0 ] ; then
+    if [[ ! -z "${PW_NO_FSYNC}" && "${PW_NO_FSYNC}" != 0 ]] ; then
         export WINEFSYNC="0"
         export WINEFSYNC_FUTEX2="0"
     else
         export WINEFSYNC="1"
         export WINEFSYNC_FUTEX2="1"
     fi
-    if [ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" ] && [ "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ]
+    if [[ ! -z "${PW_FORCE_LARGE_ADDRESS_AWARE}" && "${PW_FORCE_LARGE_ADDRESS_AWARE}" != 0 ]]
     then export WINE_LARGE_ADDRESS_AWARE="1"
     else export WINE_LARGE_ADDRESS_AWARE="0"
     fi
-    if [ ! -z "${PW_OLD_GL_STRING}" ] && [ "${PW_OLD_GL_STRING}" != 0 ] ; then
+    if [[ ! -z "${PW_OLD_GL_STRING}" && "${PW_OLD_GL_STRING}" != 0 ]] ; then
         export MESA_EXTENSION_MAX_YEAR="2003" #mesa override
         export __GL_ExtensionStringVersion="17700" #nvidia override
     fi
-    if [ ! -z "${PW_NO_WRITE_WATCH}" ] && [ "${PW_NO_WRITE_WATCH}" != 0 ] ; then
+    if [[ ! -z "${PW_NO_WRITE_WATCH}" && "${PW_NO_WRITE_WATCH}" != 0 ]] ; then
         export WINE_DISABLE_WRITE_WATCH="1"
     fi
-    if [ ! -z "${PW_VULKAN_NO_ASYNC}" ] && [ "${PW_VULKAN_NO_ASYNC}" != 0 ] ; then
+    if [[ ! -z "${PW_VULKAN_NO_ASYNC}" && "${PW_VULKAN_NO_ASYNC}" != 0 ]] ; then
         export RADV_DEBUG="llvm"
         var_vkd3d_config_update single_queue
     fi
-    if [ ! -z "${PW_USE_NVAPI}" ] && [ "${PW_USE_NVAPI}" == 1 ] && [ -d "${WINEDIR}/lib/wine/nvapi/" ]
+    if [[ ! -z "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" && "${PW_USE_NVAPI_AND_DLSS_AND_DLSS}" == 1 && -d "${WINEDIR}/lib/wine/nvapi/" ]]
     then
         if [ "${WINEARCH}" != "win32" ] ; then
             try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
@@ -144,24 +151,28 @@ start_portwine () {
             try_copy_file "${WINEDIR}/lib/wine/nvapi/nvapi.dll" "${WINEPREFIX}/drive_c/windows/system32/"
         fi
         var_winedlloverride_update "nvapi,nvapi64=n;nvcuda=b"
+        if [[ ! -f "${WINEPREFIX}/drive_c/windows/system32/nvngx.dll" || ! -f "${WINEPREFIX}/drive_c/windows/system32/_nvngx.dll" ]] ; then
+            try_copy_file `find /usr/* -type f -name "nvngx.dll" 2>/dev/null | awk '{print $1}'` "${WINEPREFIX}/drive_c/windows/system32/"
+            try_copy_file `find /usr/* -type f -name "_nvngx.dll" 2>/dev/null | awk '{print $1}'` "${WINEPREFIX}/drive_c/windows/system32/"       
+        fi
     else
         var_winedlloverride_update "nvapi,nvapi64="
     fi
-    if [ ! -z "${PW_WINEDBG_DISABLE}" ] && [ "${PW_WINEDBG_DISABLE}" != 0 ] ; then
+    if [[ ! -z "${PW_WINEDBG_DISABLE}" && "${PW_WINEDBG_DISABLE}" != 0 ]] ; then
         var_winedlloverride_update "winedbg.exe="
     fi
-    if [ ! -z "${PW_HIDE_NVIDIA_GPU}" ] && [ "${PW_HIDE_NVIDIA_GPU}" != 0 ] ; then
+    if [[ ! -z "${PW_HIDE_NVIDIA_GPU}" && "${PW_HIDE_NVIDIA_GPU}" != 0 ]] ; then
         export WINE_HIDE_NVIDIA_GPU="1"
     fi
-    if [ ! -z "${PW_HEAP_DELAY_FREE}" ] && [ "${PW_HEAP_DELAY_FREE}" != 0 ]
+    if [[ ! -z "${PW_HEAP_DELAY_FREE}" && "${PW_HEAP_DELAY_FREE}" != 0 ]]
     then export WINE_HEAP_DELAY_FREE="1"
     else export WINE_HEAP_DELAY_FREE="0"
     fi
-    if [ ! -z "${PW_WINE_ALLOW_XIM}" ] && [ "${PW_WINE_ALLOW_XIM}" != 0 ]
+    if [[ ! -z "${PW_WINE_ALLOW_XIM}" && "${PW_WINE_ALLOW_XIM}" != 0 ]]
     then export WINE_ALLOW_XIM="1"
     else export WINE_ALLOW_XIM="0"
     fi
-    if [ ! -z "${PW_DXR_ON}" ] && [ "${PW_DXR_ON}" != 0 ] ; then
+    if [[ ! -z "${PW_DXR_ON}" && "${PW_DXR_ON}" != 0 ]] ; then
         var_vkd3d_config_update dxr
     fi
     export optirun_on=""
@@ -170,7 +181,7 @@ start_portwine () {
     if [ -x "`which optimus-manager 2>/dev/null`" ]; then
         export check_optimus_manager=`optimus-manager --status | grep Current | cut -f 2 -d':' | sed -e 's/^[[:space:]]*//'`
     fi
-    if [ ! -z "${PW_NVIDIA}" ] && [ "${check_optimus_manager}" != "intel" ]; then
+    if [[ ! -z "${PW_NVIDIA}" && "${check_optimus_manager}" != "intel" ]]; then
         if [ "${check_optimus_manager}" = "nvidia" ]; then
             export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/nvidia_icd.json
         elif [ -x "`which primusrun 2>/dev/null`" ]; then
@@ -205,13 +216,13 @@ start_portwine () {
         killall xneur
         export int_xneur=1
     fi
-    if [ ! -z "${PW_XKBD_RU_HACK}" ] && [ "${PW_XKBD_RU_HACK}" == 1 ]; then
+    if [[ ! -z "${PW_XKBD_RU_HACK}" && "${PW_XKBD_RU_HACK}" == 1 ]] ; then
         export PW_XKBD="$(setxkbmap -query | grep -w ru | awk '{print($2)}')"
         if [ ! -z ${PW_XKBD} ]; then
             setxkbmap us,ru
         fi
     fi
-    if [ -x "`which "gamemoderun" 2>/dev/null`" ] && [ "$PW_USE_GAMEMODE" = "1" ]; then
+    if [[ -x "`which "gamemoderun" 2>/dev/null`" && "$PW_USE_GAMEMODE" = "1" ]] ; then
         export PW_GAMEMODERUN=1
         echo "Gamemod will be launched."
     else
@@ -219,9 +230,7 @@ start_portwine () {
         echo "Gamemod is not installed or disabled in vars script: PW_USE_GAMEMODE=$PW_USE_GAMEMODE"
     fi
     #init_pfx
-    if [ ! -d "${WINEPREFIX}" ] || [ ! -d "${WINEPREFIX}"/drive_c/windows ] || \
-       [ ! -d "${WINEPREFIX}/dosdevices" ] || [ ! -f "${WINEPREFIX}"/userdef.reg ] || \
-       [ ! -f "${WINEPREFIX}"/system.reg ] || [ ! -f "${WINEPREFIX}"/user.reg ]
+    if [[ ! -d "${WINEPREFIX}" || ! -d "${WINEPREFIX}"/drive_c/windows || ! -d "${WINEPREFIX}/dosdevices" || ! -f "${WINEPREFIX}"/userdef.reg || ! -f "${WINEPREFIX}"/system.reg || ! -f "${WINEPREFIX}"/user.reg ]]
     then
         pw_clear_pfx
         create_new_dir "${WINEPREFIX}"
@@ -278,6 +287,7 @@ start_portwine () {
         try_copy_file "${WINEDIR}/lib/wine/dxvk/dxvk_config.dll" "${WINEPREFIX}/drive_c/windows/system32/"
     fi
     if [ "${PW_VULKAN_USE}" = "0" ] ; then
+        echo "Use OpenGL"
         export MESA_GLSL_CACHE_DIR="${PORT_WINE_TMP_PATH}"
         export __GLX_VENDOR_LIBRARY_NAME=nvidia
         export GL_YIELD="NOTHING"
@@ -296,8 +306,8 @@ start_portwine () {
             fi
         done
         var_winedlloverride_update "d3d11,d3d10,d3d10core,d3d10_1,d3d9,dxgi=b;d3d12="
-        echo "Use OpenGL"
     elif [ "${PW_VULKAN_USE}" = "vkd3d" ] ; then
+        echo "Use VKD3D-PROTON only (DX12 to vulkan)"
         echo "Try copy native VKD3D files"
         for wine_vkd3d_dll in d3d12 libvkd3d-proton-utils-3 ; do
             if [ "${WINEARCH}" != "win32" ] ; then
@@ -306,22 +316,17 @@ start_portwine () {
             else
                 try_copy_file "${WINEDIR}/lib/wine/vkd3d-proton/${wine_vkd3d_dll}.dll" "${WINEPREFIX}/drive_c/windows/system32/"
             fi
-            var_winedlloverride_update "${wine_vkd3d_dll}=n"
-            create_new_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache"
-            export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache"
-            export __GL_SHADER_DISK_CACHE=1
-            export __GL_SHADER_DISK_CACHE_SIZE=1000000000
         done
-        var_winedlloverride_update "dxgi=b"
+        var_winedlloverride_update "d3d12=n;dxgi=b"
         if [ "${WINEARCH}" != "win32" ] ; then
             try_copy_file "${WINEDIR}/lib/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/syswow64/"
             try_copy_file "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/"
         else
             try_copy_file "${WINEDIR}/lib64/vkd3d/libvkd3d-shader-1.dll" "${WINEPREFIX}/drive_c/windows/system32/"
         fi        
-        echo "Use VKD3D-PROTON only (DX12 to vulkan)"
     else
         export CP_DXVK_FILES="d3d11 d3d10 d3d10core d3d10_1 d3d9 dxgi"
+        echo "Use DXVK"
         echo "Try copy native DXVK files"
         for wine_dxvk_dll in ${CP_DXVK_FILES} ; do
             if [ "${WINEARCH}" != "win32" ] ; then
@@ -332,13 +337,15 @@ start_portwine () {
             fi
             var_winedlloverride_update "${wine_dxvk_dll}=n"
         done
-        create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache"
-        export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache
-        export DXVK_STATE_CACHE=1
-        export __GL_DXVK_OPTIMIZATIONS=1
-        var_winedlloverride_update "d3d12,libvkd3d-proton-utils-3="
-        echo "Use DXVK"
     fi
+    create_new_dir "${PORT_WINE_TMP_PATH}/dxvk_cache"
+    export DXVK_STATE_CACHE_PATH="${PORT_WINE_TMP_PATH}"/dxvk_cache
+    export DXVK_STATE_CACHE=1
+    export __GL_DXVK_OPTIMIZATIONS=1
+    create_new_dir "${PORT_WINE_TMP_PATH}/gl_shader_cache"
+    export __GL_SHADER_DISK_CACHE_PATH="${PORT_WINE_TMP_PATH}/gl_shader_cache"
+    export __GL_SHADER_DISK_CACHE=1
+    export __GL_SHADER_DISK_CACHE_SIZE=1000000000
     pw_other_fixes
     #run_winetricks_from_db
     update_winetricks
@@ -353,7 +360,7 @@ start_portwine () {
             touch "${WINEPREFIX}/winetricks.log"
         fi
         for need_install_dll_to_pfx in ${PW_DLL_INSTALL} ; do
-            if [ "${need_install_dll_to_pfx}" == "vcrun2015" ] || [ "${need_install_dll_to_pfx}" == "vcrun2017" ] ; then
+            if [[ "${need_install_dll_to_pfx}" == "vcrun2015" || "${need_install_dll_to_pfx}" == "vcrun2017" ]] ; then
                 need_install_dll_to_pfx="vcrun2019"
                 sed -i '/vcrun2015/d' "${WINEPREFIX}/winetricks.log"
                 sed -i '/vcrun2017/d' "${WINEPREFIX}/winetricks.log"
@@ -380,7 +387,8 @@ start_portwine () {
                 init_wine_ver
                 cabextract_fix
             fi
-            ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${PORT_WINE_TMP_PATH}/winetricks" -q -f ${PW_DLL_NEED_INSTALL}
+            ${pw_runtime} xterm -e env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
+            "${PORT_WINE_TMP_PATH}/winetricks" -q -f ${PW_DLL_NEED_INSTALL}
             if [ "${PW_WINE_VER_FROM_DB}" != "PROTON_STEAM" ] ; then
                 /bin/bash -c ${pw_full_command_line[*]} &
                 exit 0
@@ -389,14 +397,15 @@ start_portwine () {
         pw_start_progress_bar_cs "Start ${portname}... Please wait..."
     fi
     if [[ -z `cat "${WINEPREFIX}/system.reg" | grep "Windows $PW_WINDOWS_VER"` ]] ; then
-        if [ ! -z "${PW_WINDOWS_VER}" ] && [ `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ] ; then
+        if [[ ! -z "${PW_WINDOWS_VER}" && `echo "$PW_WINDOWS_VER" | sed 's/.*/\L&/'` == "xp" ]] ; then
             if [ "${WINEARCH}" != "win32" ] ; then
                 export PW_WINDOWS_VER="xp64"
             else
                 export PW_WINDOWS_VER="xp"
             fi
         fi
-        ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'`
+        ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
+        "${WINELOADER}" winecfg -v `echo "win${PW_WINDOWS_VER}" | sed 's/.*/\L&/'`
         echo "Set to win${PW_WINDOWS_VER}"
         wait_wineserver
     fi
@@ -417,14 +426,16 @@ pw_run () {
     print_var "WINEDIR" "WINEARCH" "WINEPREFIX" "WINEDLLOVERRIDES" "PATH_TO_GAME" "PW_WINE_USE" "PW_VULKAN_USE" "VKD3D_CONFIG" "LD_LIBRARY_PATH" "PATH"
     if [ "${PW_LOG}" == 1 ] ; then
         export PW_LOG_TO_FILE="${PORT_WINE_PATH}/${portname}.log"
-        if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then
-            ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
+        if [[ ! -z "${PW_GAMEMODERUN}" && "${PW_GAMEMODERUN}" != 0 ]] ; then
+            ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
+            ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
         else
-            ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
+            ${optirun_on} ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
+            ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]} &>>"${PW_LOG_TO_FILE}"
         fi
     else
         [ "${PW_USE_TERMINAL}" != "1" ] && export PW_TERM=""
-        if [ ! -z "${PW_GAMEMODERUN}" ] && [ "${PW_GAMEMODERUN}" != 0 ] ; then
+        if [[ ! -z "${PW_GAMEMODERUN}" && "${PW_GAMEMODERUN}" != 0 ]] ; then
             $PW_TERM ${optirun_on} gamemoderun ${pw_runtime} env LD_LIBRARY_PATH="${PW_AND_RUNTIME_LIBRARY_PATH}${LD_LIBRARY_PATH}" \
             ${RUN_MANGOHUD} "${WINELOADER}" "$@" ${LAUNCH_PARAMETERS[*]}
         else
@@ -435,9 +446,14 @@ pw_run () {
 }
 
 ###MAIN###
-[ $(id -u) -eq 0 ] && echo "Do not run the script from the superuser!" && zenity --error --text "Do not run the script from the superuser!" 2> /dev/null  && exit 1
+if [ $(id -u) -eq 0 ] ; then
+    echo "Do not run the script from the superuser!"
+    zenity --error --text "Do not run the script from the superuser!" 2> /dev/null  
+    exit 1
+fi
 unset MANGOHUD MANGOHUD_DLSYM PW_NO_ESYNC PW_NO_FSYNC PW_VULKAN_USE WINEDLLOVERRIDES PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS
 unset PW_CHECK_AUTOINSTAL PW_VKBASALT_EFFECTS PW_VKBASALT_FFX_CAS PORTWINE_DB PORTWINE_DB_FILE PW_DISABLED_CREAT_DB PW_YAD_SET
+unset CHK_SYMLINK_FILE
 export portname=PortProton
 
 cd "$(dirname "`readlink -f "$0"`")" && export PORT_SCRIPTS_PATH="$(pwd)"
diff --git a/data_from_portwine/scripts/start.sh b/data_from_portwine/scripts/start.sh
index e5c86ab0..53841777 100755
--- a/data_from_portwine/scripts/start.sh
+++ b/data_from_portwine/scripts/start.sh
@@ -11,12 +11,12 @@ portwine_launch () {
     start_portwine
     PORTWINE_MSI=`basename "${portwine_exe}" | grep .msi`
     PORTWINE_BAT=`basename "${portwine_exe}" | grep .bat`
-    if [ ! -z "${PW_VIRTUAL_DESKTOP}" ] && [ "${PW_VIRTUAL_DESKTOP}" == "1" ] ; then
+    if [[ ! -z "${PW_VIRTUAL_DESKTOP}" && "${PW_VIRTUAL_DESKTOP}" == "1" ]] ; then
         pw_screen_resolution=`xrandr --current | grep "*" | awk '{print $1;}' | head -1`
         pw_run explorer "/desktop=portwine,${pw_screen_resolution}" "$portwine_exe"
     elif [ ! -z "${PORTWINE_MSI}" ]; then
         pw_run msiexec /i "$portwine_exe"
-    elif [ ! -z "${PORTWINE_BAT}" ] || [ ! -z "${portwine_exe}" ]; then
+    elif [[ ! -z "${PORTWINE_BAT}" || ! -z "${portwine_exe}" ]] ; then
         pw_run ${WINE_WIN_START} "$portwine_exe"
     else
         pw_run explorer
@@ -200,9 +200,9 @@ pw_winetricks () {
 }
 
 pw_edit_db () {
-    pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI \
+    pw_gui_for_edit_db ENABLE_VKBASALT PW_NO_ESYNC PW_NO_FSYNC PW_DXR_ON PW_VULKAN_NO_ASYNC PW_USE_NVAPI_AND_DLSS \
     PW_OLD_GL_STRING PW_HIDE_NVIDIA_GPU PW_FORCE_USE_VSYNC PW_VIRTUAL_DESKTOP PW_WINEDBG_DISABLE PW_USE_TERMINAL \
-    PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS PW_USE_GSTREAMER 
+    PW_WINE_ALLOW_XIM PW_HEAP_DELAY_FREE PW_NO_WRITE_WATCH PW_GUI_DISABLED_CS PW_USE_GSTREAMER
     if [ "$?" == 0 ] ; then
         /bin/bash -c ${pw_full_command_line[*]} &
         exit 0
@@ -239,7 +239,7 @@ done
 if [ ! -z "${PORTWINE_DB_FILE}" ] ; then
     export YAD_EDIT_DB="--button=EDIT  DB!!${loc_edit_db} ${PORTWINE_DB}:118"
     [ -z "${PW_COMMENT_DB}" ] && PW_COMMENT_DB="PortWINE database file for "\"${PORTWINE_DB}"\" was found."
-    if [ -z "${PW_VULKAN_USE}" ] || [ -z "${PW_WINE_USE}" ] ; then
+    if [[ -z "${PW_VULKAN_USE}" || -z "${PW_WINE_USE}" ]] ; then
         unset PW_GUI_DISABLED_CS
         [ -z "${PW_VULKAN_USE}" ] && export PW_VULKAN_USE=dxvk
         [ -z "${PW_WINE_USE}" ] && export PW_WINE_USE=PROTON_STEAM
@@ -262,9 +262,9 @@ else
     unset PW_GUI_DISABLED_CS
 fi
 if [ ! -z "${portwine_exe}" ]; then
-    if [ -z "${PW_GUI_DISABLED_CS}" ] || [ "${PW_GUI_DISABLED_CS}" = 0 ] ; then
+    if [[ -z "${PW_GUI_DISABLED_CS}" || "${PW_GUI_DISABLED_CS}" = 0 ]] ; then
         OUTPUT_START=$("${pw_yad}" --text-align=center --text "$PW_COMMENT_DB" --wrap-width=150 --borders=15 --form --center  \
-        --title "$portname"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \
+        --title "${portname}-${install_ver} (${scripts_install_ver})"  --image "$PW_GUI_ICON_PATH/port_proton.png" --separator=";" \
         --window-icon="$PW_GUI_ICON_PATH/port_proton.png" \
         --field="Run with :CB" "${PW_DEFAULT_VULKAN_USE}" \
         --field="Run with :CB" "${PW_DEFAULT_WINE_USE}" \
@@ -274,7 +274,7 @@ if [ ! -z "${portwine_exe}" ]; then
         --button='DEBUG'!!"${loc_debug}":102 \
         --button='LAUNCH'!!"${loc_launch}":106 )
         export PW_YAD_SET="$?"
-        if [ "$PW_YAD_SET" == "1" ] || [ "$PW_YAD_SET" == "252" ] ; then exit 0 ; fi
+        if [[ "$PW_YAD_SET" == "1" || "$PW_YAD_SET" == "252" ]] ; then exit 0 ; fi
         export VULKAN_MOD=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $1}' | awk '{print $1}'`
         export PW_WINE_VER=`echo "${OUTPUT_START}" | grep \;\; | awk -F";" '{print $2}' | awk '{print $1}'`
     elif [ ! -z "${PORTWINE_DB_FILE}" ]; then
@@ -347,6 +347,7 @@ else
     --field="   OSU"!"$PW_GUI_ICON_PATH/osu.png":"BTN" '@bash -c "button_click PW_OSU"' \
     --field="   Glyph Client"!"$PW_GUI_ICON_PATH/glyph.png":"BTN" '@bash -c "button_click  PW_GLYPH"' \
     --field="   Ankama Launcher"!"$PW_GUI_ICON_PATH/ankama.png":"BTN" '@bash -c "button_click PW_ANKAMA"' \
+    --field="   League of Legends"!"$PW_GUI_ICON_PATH/lol.png":"BTN" '@bash -c "button_click PW_LOL"' \
     --field="   Gameforge Client"!"$PW_GUI_ICON_PATH/gameforge.png":"BTN" '@bash -c "button_click  PW_GAMEFORGE"' & \
 
     "${pw_yad}" --plug=${KEY} --tabnum=1 --columns=3 --form --separator=";" \
@@ -359,16 +360,16 @@ else
     --field=":LBL" "" \
     --field='WINEFILE'!!"${loc_winefile}":"BTN" '@bash -c "button_click WINEFILE"' \
     --field='WINECMD'!!"${loc_winecmd}":"BTN" '@bash -c "button_click WINECMD"' \
-    --field="${portname}-${install_ver} (${scripts_install_ver})"!!"":"FBTN" '@bash -c "open_changelog"' \
+    --field="GET  OTHER  WINE"!!"":"FBTN" '@bash -c "button_click gui_proton_downloader"' \
     --field=":LBL" "" \
     --field='WINEREG'!!"${loc_winereg}":"BTN" '@bash -c "button_click WINEREG"' \
     --field='WINETRICKS'!!"${loc_winetricks}":"BTN" '@bash -c "button_click WINETRICKS"' &> "${PORT_WINE_TMP_PATH}/tmp_yad_form_vulkan" & \
 
     "${pw_yad}" --key=$KEY --notebook --borders=10 --width=1000 --height=168 --no-buttons --text-align=center \
-    --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "$portname" --separator=";" \
+    --window-icon="$PW_GUI_ICON_PATH/port_proton.png" --title "${portname}-${install_ver} (${scripts_install_ver})" --separator=";" \
     --tab-pos=right --tab="PORT_PROTON" --tab="AUTOINSTALL" --tab="    SETTINGS" --center
     YAD_STATUS="$?"
-    if [ "$YAD_STATUS" == "1" ] || [ "$YAD_STATUS" == "252" ] ; then exit 0 ; fi
+    if [[ "$YAD_STATUS" == "1" || "$YAD_STATUS" == "252" ]] ; then exit 0 ; fi
 
     if [ -f "${PORT_WINE_TMP_PATH}/tmp_yad_form" ] ; then
         export PW_YAD_SET=`cat "${PORT_WINE_TMP_PATH}/tmp_yad_form" | head -n 1 | awk '{print $1}'`
@@ -420,6 +421,7 @@ case "$PW_YAD_SET" in
     gui_open_var) gui_open_var ;;
     gui_wine_uninstaller) gui_wine_uninstaller ;;
     gui_rm_portproton) gui_rm_portproton ;;
+    gui_proton_downloader) gui_proton_downloader ;;
     *) pw_autoinstall_from_db ;;
 esac
 
diff --git a/data_from_portwine/scripts/var b/data_from_portwine/scripts/var
index f8ba92e9..26bf2a6d 100755
--- a/data_from_portwine/scripts/var
+++ b/data_from_portwine/scripts/var
@@ -1,6 +1,6 @@
 #!/bin/bash
 #Author: Castro-Fidel (PortWINE-Linux.ru)
-#SCRIPTS_NEXT_VERSION=2018
+#SCRIPTS_NEXT_VERSION=2019
 #PORT_NEXT_VERSION=97
 ########################################################################
 export PW_MANGOHUD=1