Touhou

From ArchWiki

Touhou Project is the name of a series of danmaku games (also known as "bullet-hell shooters")

Bullet-hell shooters is a genre of 2D shooters based on really complex patterns, which are beautiful and interesting to look at, and impiles great difficulty, memorizing patterns and fast player reaction.

Touhou Project games are one of the most popular of this genre because, among other things, the in-game world is a giant universe, the music (at least the WAVs in the full version) is spectacular, and, if you have been on the internet for a while, you might stumble upon its curious fanbase, which has produced videos, music, manga (japanese comics) and even unofficial games.

Despite the difficulty, they can be very addicting games.

Installation

PC-98 games can be played using Linux-native X Neko Project II emulator (xnp2AUR).

The following packages only depend on Wine to run (and Timidity++ to play MIDI music). A python engine is under development to remove the wine dependency. They install the free trial versions. You can easily replace the trials with the full game if you have it.

These games have been packaged for your convenience:

We need help packaging more Touhou games for the AUR. This is a list of games that have free, downloadable trial editions to build off of:

  • Touhou 7.5: Immaterial and Missing Power
  • Touhou 9: Phantasmagoria of Flower View
  • Touhou 10: Mountain of Faith
  • Touhou 10.5: Scarlet Weather Rhapsody
  • Touhou 11: Subterranean Animism
  • Touhou 12: Undefined Fantastic Object
  • Touhou 13: Ten Desires
  • Touhou 13.5: Hopeless Masquerade.
  • Touhou 14: Double Dealing Character
  • Touhou 14.5: Urban Legend in Limbo
  • Touhou 15: Legacy of Lunatic Kingdom
  • Touhou 15.5: Antinomy of Common Flowers
  • Touhou 16: Hidden Star in Four Seasons
  • Touhou 17: Wily Beast and Weakest Creature
  • Touhou 18: Unconnected Marketeers

Python Engine

Linkmauve has made an experimental python engine to make the games more portable. It is definitely not stable, and is more of an outline for an engine than an actual one, but it is interesting nonetheless. See packages pytouhou-hgAUR and th06-demo-dataAUR.

Extra Info

Installing the full version

If you have the full version of either Imperishable Night or Perfect Cherry Blossom, you can place them in your home folder, or you can place them in the overlay so that they will work in the liveCD and also get installed to disk.

Note: .th08 is Imperishable Night's wineprefix folder, and .th07 is Perfect Cherry Blossom's.
  1. Find the folder with the Touhou game files.
  2. Set your file manager to see hidden files/folders. (in Cherimoya's Dolphin file manager, just press Alt+. (the period key))
  3. Go to your "Home" folder and find the folders .th08 and/or .th07.
  4. Paste your game files right over the shortcuts in either .th08 or .th07
  5. Start your games normally. They will use the full version.

MIDI Music

If you are using the trial edition, they only include MIDI files. To play them, you will also need to install timidity++ along with some soundfonts (freepats-general-midi).

Now add the following lines to the Timidity++ configuration file:

/etc/timidity++/timidity.cfg
dir /usr/share/timidity/freepats
source /etc/timidity++/freepats/freepats.cfg

Remember to start the timidity.service user unit before playing.

Audio in Windows-era games

If you find that you have no audio in any of the Windows era or later games (Touhou 6 and later), make sure to install lib32-alsa-lib and lib32-alsa-plugins, and recheck your configuration in winecfg. In addition, set the audio in-game to "WAV" mode.


Steam version

You can find games available on Steam from this list.

thcrap

The Touhou Community Reliant Automatic Patcher (thcrap) is mainly developed to facilitate self-updating, multilingual translation of the Touhou Project games on Touhou Patch Center, but can theoretically be used for just about any other patch for these games, without going through that site.

  • Download your purchased game from Steam.
  • Download thcrap from here, and extract to a directory /path/to/thcrap.
If you installed Flatpak version of Steam, extract to ~/.var/app/com.valvesoftware.Steam/data/thcrap, this makes thcrap-steam-proton-wrapper setup easier later.
  • Create config/games.js inside the directory with:
/path/to/thcrap/config/games.js
{
  "th10": "Z:/home/username/.local/share/Steam/steamapps/common/th10/th10.exe",
  "th10_custom": "Z:/home/username/.local/share/Steam/steamapps/common/th10/custom.exe"
}
Note: Do not forget comma at the end of each entry except the last one.
We use TH10 Mountain of Faith as an example. Replace /home/username/.local/share/Steam/steamapps/common with your Steam game directory.
If Steam is installed from the steam package, the default game directory is /home/username/.local/share/Steam/steamapps/common/.
If you installed Flatpak version of Steam, the default game directory is /home/username/.var/app/com.valvesoftware.Steam/data/Steam/steamapps/common/.
The Z: is how wine locate files on Linux.
  • Add /path/to/thcrap/thcrap.exe to your Steam library. Then run thcrap.exe from Steam. If it doesn't run, try different proton version.
  • During the installation you choose your language patch. Here using default english pack in this guide. Then it will ask you game location, since we already added the game in games.js, just click next. Then, it asks for shortcuts. We don't create any shortcuts here, since we will add the patch to Steam launch command.
  • Install thcrap-steam-proton-wrapper-gitAUR or com.valvesoftware.Steam.Utility.thcrap_steam_proton_wrapper from flathub if using Flatpak.
  • Change your Touhou game launch options. Go to your Steam Library > game_name > Settings icon > Properties. Edit LAUNCH OPTIONS under GENERAL settings to:
thcrap_proton -c en.js -- %command%

You can find all installed language under /path/to/thcrap/config/.

  • Now when you launch the game through Steam it will launch thcrap, then thcrap will update the patch and launch the game. It's recommended you uncheck the Keep the updater running in background in thcrap setting, so Steam could properly shutdown the game when you quit.

vpatch

Note: Vsync Patches (vpatch) only works for the executable file from original disk. You need an .exe file from original disk, not the steam version. See this for purchasing guide.

Vsync patch reduces input delay (game responds more quickly when a button is pressed).

  • Download the patch from touhouwiki, and extrat it to /path/to/Touhou_VsyncPatch/.
  • Go to vpatch_rev7 directory, then copy vpatch.exe, vpatch.ini and vpatch_th10.dll to the game directory ~/.local/share/Steam/steamapps/common/th10/.
  • Open vpatch.ini in the game directory with your favorite text editor. We are going to change windows size. For TH10 the default window is very small. First, set enabled = 1 under [Window] section. If using 4K display, set Width = 2667 and Height = 2000. If using 1080p display set Width = 1280 and Height = 960. Based on this tutorial. To fix the Th10 Marisa B 3.xx power bug, add BugFixTh10Power3 = 1 to [Option] section.
  • Make a backup of original Steam executable. Copy ~/.local/share/Steam/steamapps/common/th10/th10.exe to ~/Touhou/th10.exe.steam. This is for convenience, you can always recover it using verify local data in Steam.
  • Replace the ~/.local/share/Steam/steamapps/common/th10/th10.exe with the one you legally obtained from original disk.
  • Change the Steam game launch option to
thcrap_proton -v -c en.js -- %command%
the -v flag let Steam runs vpatch.exe.

See also