于Linux运行
基本上,由於東方系列遊戲被設計為運行 Windows 為主,所以在 Linux 上運行可能會非常艱難。不過 Linux 是有辦法運行東方的:通常是透過一種稱之為 Wine 的程序:它可以模擬 Windows 遊戲,應用程式等。
於 Linux 運行東方是要看機會的,不過還是有可能。以下將展示如何運用 Wine 運行東方。
開始以前,可能需要會一些 Shell 的語法,這個網站算是不錯的說明。
安裝
原則上Wine 的官網已經提供主流的 Linux 作業系統下載了。
使用 Wine
Wine 主要是放在一個隱藏目錄在你的主文件夾:.wine。 which contains a full representation of a Windows folder hierarchy and miscellaneous library and system files。.wine 主要是放在你的主文件夾 (~/.wine). 裡面是另一個文件夾稱為 drive_c,就是你的 C: 槽。如果你瀏覽這個文件夾裡面(〜/.wine/ drive_c),你很可能會快地識別它的內容從一個標準的Windows安裝。
一般來說,你的 Linux 發行版本會自行把 Windows 分配到 Wine 的可執行文件內,所以一般來說,雙擊 Windows可執行文件應該就行了。但如果沒有,你就必須使用終端機來啟動 Wine。這會讓東方正常運行,只是速度比較慢。無論如何,下面我們將示範這個程序,請把資料夾路徑代換成你安裝 Wine 的路徑:
~ $ ls .wine/drive_c/Program\ Files/RandomProgram config.ini libjpeg.dll program.exe readme.txt ~ $ cd .wine/drive_c/Program\ Files/RandomProgram ~/.wine/drive_c/Program Files/RandomProgram $ wine program.exe
而這應該會開啟你的程序。
運行東方
運行東方作法同樣,你可能需要指定你的語言環境,才能以日文來援引 Wine 並開始你的遊戲。以下是英文版作者如何安裝並運行雙重劇透:
~ $ ls .wine/drive_c/Program\ Files/上海アリス幻樂団/ダブルスポイラー custom.exe readme.txt th125.exe unins000.dat omake.txt th125.dat thbgm.dat unins000.exe ~ $ cd .wine/drive_c/Program\ Files/上海アリス幻樂団/ダブルスポイラー ~/.wine/drive_c/Program Files/上海アリス幻樂団/ダブルスポイラー $ LANG="ja_JP.UTF-8" wine th125.exe
LANG="ja_JP.UTF-8" 會讓 Wine 運行於日本語、或是其他想運行的語言(例如en_US.UTF-8, en_GB.UTF-8...)。然後,有可能出現嚴重的亂碼,雖然只可能在標題列看到。此外,你應該運行英日文語言環境下的補丁:此時有英語補丁的可執行文件才可以運行在默認的語言環境。
Using native Windows DLLs
This is pretty much no longer necessary for Touhou games, but it's a way to fix certain missing functionality in Wine you may find with other programs. Basically, Windows has a lot of available system interface DLLs, and it's a huge order to 100% duplicate all that functionality in Wine. While the Wine developers are constantly at work improving the coverage of the Windows' API, there's still lots of missing gaps here and there. One way to temporarily fix a partially-functioning DLL is to replace it with the original file from a Windows install. Here's the steps to do so; we'll use "d3dx9_36.dll" as an example. Also note, I have a 32-bit Vista installation mounted at /mnt/vista32.
First off, to copy the file. Wine's Windows folder is in .wine/drive_c/windows.
~ $ cp /mnt/vista32/Windows/System32/d3dx9_36.dll .wine/drive_c/windows/system32/
This might be all you need for the new DLL to work. To make sure programs see it, we'll configure it within Wine. Wine has a configuration utility called winecfg, run it from your terminal and you'll see this:
Click the Libraries tab:
Under "New override for library", type d3dx9_36, and click Add and Apply:
Now you can click OK to exit the utility, or peruse around the other tabs and settings. One issue with loading native Windows DLLs, they may require original low-level Windows DLLs (i.e. ntdll.dll) that Wine is emulating, and might not work. These are the core DLLs that Wine is emulating and cannot be replaced with native Windows DLLs, else you'll break your Wine folder.
PC-98
T98Next 與 Anex86 都可以在 Wine 之下正常運行。另外,如果你有2P的 PoDD 以及一個手柄,這個設定 也可以在 Wine 之下正常運行。
Gotchas, Troubleshooting
One issue I've seen is with joysticks. If you plug in your joystick while your Touhou game is running, it probably won't notice it. Make sure it's plugged in and working before running your Touhou game.
Installing English patches has been known to cause otherwise troublesome games to start working better.
For SWR and HSTS, see here (SWR/HSTS Wiki).
The Wine developers are constantly adding and fixing functionality, so while things are still iffy with Touhou games they're definitely improving. See below for a list of the current Touhou bugs on the Wine Bugzilla.
Outside the official games...
Touhou doujin games are also hit-or-miss. Danmakufu doesn't work at all. Age of Ethanols is a .NET game, so it should run natively in Mono, but in my trials in getting it to run I've discovered it's coded in part C#, part C++, so it won't work without installing .NET and whatnot from within Wine.
Touhou Games in the Wine AppDB (appdb.winehq.org)
[ EoSD] [ PCB] [ IaMP] [ IN] [ PoFV] [ StB] [ MoF] [ SWR] [ SA] [ UFO] [ HSTS] [ DS] [ FW]
Wine 錯誤報告 (bugs.winehq.org)
13297 (EoSD - FW) Missing D3DXCreateTextureFromFileA in d3dx9_36.dll: Now Implemented
13490 (SWR, Patchcon) Nvidia video driver FPU bug, improper rounding causing game crash: Rough Patches Available
15146 (MoF, SA) Bad Text Part 1, Mishandled rgb444 Depth Conversion: Rough Patches Available
13554 (IaMP) Broken config.exe, DLL dependencies not properly imported
18232 (SA, UFO) Huge framerate drop when OffscreenRenderingMode=fbo (Intel i945 graphics chips)
18394 (PoFV) Patching to 1.50a breaks game, problems with dpnet.dll
18440 (SWR) Menu/Game select crashes, problems with GetGlyphOutline in d3dx9_33.dll
19106 (MoF) Improperly rendered backgrounds
24206 (HSTS) Ending network game causes hangup
421 (EoSD - FW) Bad Text Part 2, DIB Engine Implementation: Long-term Problem, Highly Experimental Patch Available
使用 VMWare 運行
Another alternative that works very well is to use Parallels Desktop to run the games.
Parallels Desktop version 5.0 runs the main series games very well: All of the Windows danmaku games except for PCB and the demo for Ten Desires run without slowdown on a MacBook Pro. PCB appears to suffer from slowdown for unknown reasons. Ten Desires has significant lag (10% or more) at the present time.
It is important to run the games in full screen, and it is better to use the zoom function to bring the game screen to full screen, at least on a MacBook Pro. Running the games in windowed mode often results in slowdown, and the computer appears to have real difficulties in displaying 640x480 natively (the games will run at 30fps). You can run them in 720x480 just fine, though.
Activate the zoom function through the "Trackpad" pane in System Preferences, and zoom in by putting the mouse in the middle of the screen and holding control and scrolling up with two fingers.
The fighting games (SWR and Soku) have no slowdown during matches, but DO have a serious delay while loading for the match (close to a minute). It has been suggested, but not yet confirmed, that placing the games on the virtual C: drive, rather than on the OSX desktop or other location in OSX, may clear this out; Parallels treats the Mac's hard drive as a network drive, which may slow access. Netplay has yet to be tested for either the fighters or for PoFV.
If your SWR/Soku display looks strange when run in fullscreen (usually, a bar at the bottom and right of the screen that displays the desktop), set the game to run in Windowed mode, exit out, and restart the game. Then change it back to fullscreen in the menu.
The PC-98 games can be run through anex86 without difficulty (so yes, emulation within emulation). There is a PC-98 emulator for OSX, but it has not been updated for several years and does not appear to accept the Touhou games.
The following fan games have been confirmed to run fine under Parallels Desktop 5 using Windows XP on a MacBook Pro:
- Megamari
- Patchcon
- Genius of Sappheiros
- Koumajou Densetsu Scarlet Symphony (both games)
The following do NOT run under Parallels 5, have severe slowdown, or suffer from fatal glitches, although in some cases this may be due to the graphics card (apparently, some of the fan games don't communicate properly with NVIDIA cards.):
- Super Marisa World (runs at 30FPS)
- Mountain of Faith Phantasm (runs at 30FPS)
- Sengou Gensokyo (cannot input commands during battle, otherwise 100%)
- Touhou Labyrinth (either will not display, or overwhelming glitches)
- Touhou Soccer 2 (no display)
For unknown reasons, VMWare Fusion will not run the Touhou games properly
The games have not yet been tested with Parallels Desktop 6. Stay tuned for information.