
Искам да приготвя готова версия за Project Cars и използвам скриптовете на един руснак. Играта я подкарах в Playonlinux и съм извел всички необходими файлове за самостоятелния пакет, но има една малка особеност. Играта тръгва само когато се добави -dx9 в командата:
Код: Избери всички
wine pCARS.exe -dx9
Ето го и скрипта:
http://dox.bg/files/dw?a=7f2bbfc4ad
Ето го и в суров вариант:
Код: Избери всички
#!/bin/bash
### Wine standalone script
### Version 1.3.5
### Created by Kron
### Latest version - https://yadi.sk/d/IrofgqFSqHsPu
# Forbid root rights
if [ ! "$ROOT" ] && [ "$EUID" == "0" ]
then
echo "##########################################################################"
echo "НЕ ЗАПУСКАЙТЕ НИКАКИЕ СКРИПТЫ ЧЕРЕЗ КОМАНДУ sudo ИЛИ ОТ ПОЛЬЗОВАТЕЛЯ root!"
echo "##########################################################################"
exit
fi
## Variables
# User
export USER="$(id -u -n)"
# Directory
export SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
export DIR="$(dirname "$SCRIPT")"
export RHOME="$HOME"
export HOME="$DIR/home"
# Wine binaries
export USESYSWINE="no"
export WINETRICKS="$DIR/winetricks"
if [ "$USESYSWINE" == "yes" ]
then if [ -f "$DIR/syswine" ]
then source "$DIR/syswine"
fi
if [ ! -f "$WINE" ]
then if [ -f "/usr/bin/wine" ]
then export WINE="/usr/bin/wine"
export REGEDIT="/usr/bin/regedit"
elif [ -f "/usr/bin/wine-development" ]
then export WINE="/usr/bin/wine-development"
export REGEDIT="/usr/bin/regedit-development"
elif [ -f "/usr/local/bin/wine" ]
then export WINE="/usr/local/bin/wine"
export REGEDIT="/usr/local/bin/regedit"
fi
if [ "$WINE" ]
then rm -f "$DIR/syswine"
echo "export WINE='$WINE'" >> "$DIR/syswine"
echo "export REGEDIT='$REGEDIT'" >> "$DIR/syswine"
fi
fi
elif [ -f "$DIR/syswine" ]
then rm "$DIR/syswine"
fi
if [ ! "$WINE" ]
then export WINE="$DIR/wine/bin/wine"
export REGEDIT="$DIR/wine/bin/regedit"
fi
# Wine
export WINEPREFIX="$DIR/prefix"
#######################
export WINEDEBUG="-all"
#######################
export WINE_VER="$("$WINE" --version)"
export WINEDLLOVERRIDES="mscoree,mshtml="
export UPDATEPREFIX="yes"
################
export CSMT="on"
################
# Game
############################################
export GAME_NAME="Project Cars Game of the Year Edition"
export GAME_VER="11.0.0.0.1235"
export EXE="pCARS.exe"
export GAME_FOLDER="$WINEPREFIX/drive_c/Games/Project Cars Game of the Year Edition/"
#############################################
# Screen
####################
export WINDOWED="no"
export RESOLUTION="800x600"
export FIXRES="no"
##################
# Sound
####################
export USEALSA="yes"
####################
# Cores
export CORES="$(getconf _NPROCESSORS_ONLN)"
## Actions
# Exit if the files do not exist
if [ ! -f "$WINE" ] || [ ! -f "$WINETRICKS" ] || [ ! -d "$GAME_FOLDER" ]
then clear
echo "Отсутствуют(ет):"
echo
if [ ! -f "$WINE" ]
then echo "$WINE"
fi
if [ ! -f "$WINETRICKS" ]
then echo "$WINETRICKS"
fi
if [ ! -d "$GAME_FOLDER" ]
then echo "$GAME_FOLDER"
fi
exit
fi
# Create a home directory
if [ "$HOME" == "$DIR/home" ] && [ ! -d "$HOME" ]
then mkdir "$HOME"
fi
# Copy pulse config
if [ "$HOME" == "$DIR/home" ]
then if [ ! -d "$HOME/.config" ]
then mkdir -p "$HOME/.config"
fi
if [ ! -d "$HOME/.pulse" ]
then cp -R "$RHOME/.pulse" "$HOME"
fi
if [ ! -d "$HOME/.config/pulse" ]
then cp -R "$RHOME/.config/pulse" "$HOME/.config"
fi
fi
# Update prefix
if [ "$UPDATEPREFIX" == "yes" ]
then if [ ! -d "$WINEPREFIX/drive_c/users/$USER" ]
then "$DIR/wine/bin/wineboot" -u
# Disable d3d10 and d3d11
"$WINETRICKS" d3d10=disabled d3d11=disabled
# Disable GStreamer
"$WINETRICKS" winegstreamer=disabled
fi
fi
# Turn sound
if [ "$USEALSA" == "yes" ] && [ ! -f "$DIR/alsa" ]
then "$WINETRICKS" sound=alsa
echo > "$DIR/alsa"
rm -f "$DIR/pulse"
elif [ "$USEALSA" == "no" ] && [ ! -f "$DIR/pulse" ]
then "$WINETRICKS" sound=pulse
echo > "$DIR/pulse"
rm -f "$DIR/alsa"
fi
# Disable CSMT on 1-core CPU
if [ "$CORES" == "1" ]
then export CSMT="off"
fi
# Disable CSMT on non-Staging Wine
if [ "$CSMT" == "on" ] && [[ ! "$WINE_VER" == *"Staging"* ]]
then export CSMT="off"
fi
# Enable/Disable CSMT
if [ -f "$DIR/wine/share/wine/csmt.reg" ] && [ -f "$DIR/wine/share/wine/non-csmt.reg" ]
then if [ -f "$DIR/csmt_on" ] && [ "$CSMT" == "off" ]
then "$REGEDIT" "$DIR/wine/share/wine/non-csmt.reg"
rm "$DIR/csmt_on"
elif [ ! -f "$DIR/csmt_on" ] && [ "$CSMT" == "on" ]
then "$REGEDIT" "$DIR/wine/share/wine/csmt.reg"
echo > "$DIR/csmt_on"
fi
fi
# Get native screen resolution
if [ "$FIXRES" == "yes" ]
then if [ "$WINDOWED" == "no" ] && [ ! "$1" == "-sw" ] && [ -f "/usr/bin/xrandr" ]
then export RESOLUTION="$(xrandr -q | awk -F'current' -F',' 'NR==1 {gsub("( |current)","");print $2}')"
else export FIXRES="no"
fi
fi
# Info output
clear
echo "$WINE_VER"
echo "csmt: $CSMT"
echo "###############################"
echo "game: $GAME_NAME"
echo "version: $GAME_VER"
echo "###############################"
echo "home: $HOME"
echo
# Start game
cd "$GAME_FOLDER"
if [ "$WINDOWED" == "yes" ] || [ "$1" == "-sw" ]
then "$WINE" explorer /desktop=Game,$RESOLUTION "$EXE"
else "$WINE" "$EXE"
fi
# Restore screen resolution
if [ "$FIXRES" == "yes" ]
then "/usr/bin/xrandr" -s "$RESOLUTION"
fi
Код: Избери всички
export EXE="pCARS.exe -dx9"



