Playing Final Fantasy XIV (FFXIV) on Linux using Wine

There’s a pretty neat Reddit thread about this issue, but I don’t want to use Gallium so I just made a simple script to install it for me. Since it took a bit of experimenting to get it work (In the end it was all about the wine version, and not many other prerequisites were needed) I’m posting it in case others find it useful. Note that the last line is how you start the game later, so just make a start script or a desktop shortcut to start it afterwards.

Distro: Ubuntu 18.04 (x64)

if ! [ -x "$(command -v wine)" ]; then
	echo "Installing latest wine"
	#Update all repos
	sudo apt-get update
 
	#Enable 32bit (If you're on 64bit)
	sudo dpkg --add-architecture i386

	#Add wine repo
	wget -nc https://dl.winehq.org/wine-builds/Release.key
	sudo apt-key add Release.key
	sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/
 
	#Install wine-stable (3.0.1)
	sudo apt-get update
	sudo apt-get install --install-recommends winehq-stable
fi

echo "Installing latest winetricks"
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
sudo mv winetricks /usr/bin

echo "Creating FFXIV Wine prefix"
mkdir ~/.ffxiv
cd ~/.ffxiv

echo "Downloading FFXIV setup file"
wget http://gdl.square-enix.com/ffxiv/inst/ffxivsetup.exe

echo "Installing required files with winetricks"
WINEARCH=win32 WINEPREFIX=~/.ffxiv winetricks -q corefonts allfonts tahoma #ie8 wininet winhttp wmp9 wmp10 xinput ie8_kb2936068 devenum quartz hosts win7

echo "Installing game client"
WINEARCH=win32 WINEPREFIX=~/.ffxiv wine ffxivsetup.exe

echo "Starting game client. Please login and install the game"
cd "drive_c/Program Files/SquareEnix/FINAL FANTASY XIV - A Realm Reborn/boot"
WINEARCH=win32 WINEPREFIX=~/.ffxiv wine ffxivboot.exe

 

Playing visual novels on Linux using Wine

So I play a lot of visual novels these days. One problem is that most of them are only released on Windows, and I don’t use Windows. So for that I use Wine. Below is a simple script to setup Steam with Wine so that you can play the visual novels available through Steam. Make sure you check the visual novel on steam before you use this solution however, since some of them do have Linux support and can be run via the Steam Linux client.

Distro: Ubuntu 18.04 (x64)

if ! [ -x "$(command -v wine)" ]; then
	echo "Installing latest wine"
	#Update all repos
	sudo apt-get update

	#Enable 32bit (If you're on 64bit)
	sudo dpkg --add-architecture i386

	#Add wine repo
	wget -nc https://dl.winehq.org/wine-builds/Release.key
	sudo apt-key add Release.key
	sudo apt-add-repository https://dl.winehq.org/wine-builds/ubuntu/

	#Install wine-stable (3.0.1)
	sudo apt-get update
	sudo apt-get install --install-recommends winehq-stable
fi

#Install latest winetricks
echo "Installing latest winetricks"
wget  https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks
chmod +x winetricks
sudo mv winetricks /usr/bin

echo "Installing Steam and various"
mkdir -p ~/.wine-apps/steam
WINEARCH=win32 WINEPREFIX=~/.wine-apps/steam/ winetricks tahoma corefonts ie8 allfonts steam

echo "Login to steam and install the Visual Novel"

 

Also, if you need a desktop icon for the Steam client, you can put it in the file /usr/share/applications/steam-windows.desktop (Remember to replace USER with your username).

[Desktop Entry]
Name=Steam
Exec=env WINEPREFIX="/home/USER/.wine-apps/steam" wine "/home/USER/.wine-apps/steam/drive_c/Program Files/Steam/Steam.exe" -no-cef-sandbox
Type=Application
StartupNotify=true
Path=/home/USER/.wine-apps/steam/dosdevices/c:/Program Files/Steam
Icon=BAC4_steam.0
StartupWMClass=steam.exe
Name[en_US]=Steam - Windows

 

For other visual novels not on Steam, I just create a folder called “Games” under “/home/USER/.wine-apps/steam/dosdevices/c:/Program Files/” and put them there. Then you can add another shortcut to that specific game like below.

[Desktop Entry]
Name=VisualNovel
Exec=env WINEPREFIX="/home/USER/.wine-apps/steam" wine "/home/USER/.wine-apps/steam/drive_c/Program Files/Games/VN/VisualNovel.exe"
Type=Application
StartupNotify=true
Path=/home/USER/.wine-apps/steam/dosdevices/c:/Program Files/Games
Icon=/path/to/icon/file
StartupWMClass=VisualNovel.exe
Name[en_US]=VisualNovel

For steam download issue: https://www.reddit.com/r/wine_gaming/comments/8r0gh6/steam_in_winedevel_content_servers_unreachable/

Also, some visual novels outside of Steam may run into all sorts of problems. You can install a separate Wine prefix for that and do individual settings for such games. The following worked for me for one game that crashed when going into full screen. Generally I try to stick with the ones on Steam as I keep having the most luck with them using Wine. Sometimes they simply aren’t available though.

mkdir -p ~/.wine-apps/vn
WINEARCH=win32 WINEPREFIX=~/.wine-apps/vn/ winetricks tahoma corefonts ie8 allfonts d3dx9_36 wmp9 quartz ddr=gdi win7

#Start game
env WINEPREFIX="/home/USER/.wine-apps/vn" wine "/home/USER/.wine-apps/vn/drive_c/Program Files/Games/vn/vn.exe"

 

Installing EiskaltDC++ 2.2.10 on Ubuntu 18.04

Nothing really special, I just keep forgetting which packages I need (And it’s bothersome to keep going through the list of requirements). So here’s a quick guide/script of how to download and compile it. Mostly for myself, but I thought maybe someone else could make use of it.

sudo apt-get -y build-dep eiskaltdcpp-qt eiskaltdcpp eiskaltdcpp-cli eiskaltdcpp-common libeiskaltdcpp-devlibeiskaltdcpp-dev

sudo apt-get -y install libqt5core5a qt5-default qttools5-dev-tools qtmultimedia5-dev libbz2-dev libssl1.0-dev libidn11-dev libboost1.65-dev libaspell-dev libre2-dev libminiupnpc-dev lua5.1 liblua5.1-dev liblua50-dev libboost-system1.65-dev qml-module-qtquick2 libdee-qt5-dev qtscript5-dev qtdeclarative5-dev libqt4-dev libqt4-declarative

git clone https://github.com/eiskaltdcpp/eiskaltdcpp.git

cd eiskaltdcpp/

mkdir builddir && cd builddir

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr -DUSE_QT=ON -DUSE_GTK=ON -DUSE_JS=ON -DUSE_ASPELL=ON -DUSE_QT_QML=ON -DUSE_QT_SQLITE=ON -DLUA_SCRIPT=ON -DWITH_LUASCRIPTS=ON -DWITH_SOUNDS=ON -DPERL_REGEX=ON -DNO_UI_DAEMON=ON -DJSONRPC_DAEMON=ON -DUSE_CLI_JSONRPC=ON -DUSE_MINIUPNP=ON -DLOCAL_MINIUPNP=ON ..

make

sudo make install

‘make install’ will create a desktop file for you, so you should be able to reach it from whatever menu system you’re using, and add it to favorites/create a shortcut. I know there are some stuff that could be improved, but meh. If anyone feels like pointing them out, then feel free to do so 🙂

Stranger – Chapter 8 – My face is on fire, and my bottle lids are missing

A few nights ago Stranger suddenly woke up to the fact that our face was on fire. Obviously this requires immediate action. Luckily, I always keep a bottle of water next to my bed (I need to drink a lot during the night due to all the other weird activities Stranger is up to). So acting quickly, stranger removes the lid and pours the water over my face. Of course when you get water on your face, you normally wake up; which I did. Sitting there, quite confused and wet, I realized that sleeping in the now very wet bed would be difficult for the remainder of the night.

Not much sleep was had that night.

As a side note, the lids of my water bottles and medicine bottles, have all gone missing during the same night. This is nothing I can recall from the “Stranger records”, and I haven’t found them yet.

Well, at least we’re not on fire anymore.