Steam (日本語)

From ArchWiki
Revision as of 09:53, 15 November 2012 by Kusakata (Talk | contribs)

Jump to: navigation, search
概要 help replacing me
SteamはValve Softwareによるコンテンツ配信システムです。Source Engineで作られたゲーム(Half-Life 2, Counter-Strikeなど)をプレイするためのプラットフォームとして知られています。今日では多くのデベロッパからゲームが提供されています。
関連項目
Wine

project Wiki pageApplication Databaseのページにより多くの情報があります。

ネイティブクライアント

Note: 現在ではベータ版が一部の人に提供されています。Arch Linuxは公式にはサポートされていません
Note: いくつかのゲームは追加の依存パッケージが必要です。
Note: Steamクライアントは32ビットアプリケーションなので、もし純粋な64ビット環境のインストールをする際には、pacmanのMultilibを有効にする必要があります。またmultilibライブラリのためにmultilib-develのインストールをしてください。

community/multilibからsteamをインストールできます。

プライベートベータ版ではまだできませんが、steamのURL steam://open/games からも起動できます。ウェブブラウザか、端末からurlを起動できます。

フィックス/バグ/エラーメッセージ

Steamはベータ版でありArch Linuxはサポートされていません。正確に動かすにはユーザー側でいくつかの修正が必要になります。いくつかのゲームでは依存が見つからない可能性もあります。ゲームが起動に失敗した(ほとんどの場合エラーメッセージを出力しません)時は、ゲームに必要なライブラリ全てがインストールされているか確認してください(下のリストは未完成です)。

Mouse Cursor Overwritten

Steamは起動時にX11 Cursor themeを上書きします。Gnomeや他のWM/DMではカーソルテーマを設定しないという問題があります。マウスカーソルテーマを設定して上書きできます。

この問題を解決するには、rootになって/usr/share/icons/default/index.themeに次のように加えて下さい(必要なら/usr/share/icons/defaultディレクトリを作ります):

/usr/share/icons/default/index.theme
[Icon Theme]
Inherits=Adwaita

Note: "Adwaita"の代わりに、他のカーソルテーマを選べます(Humanなど)。 もしくは、AURからgnome-cursors-fixAURをインストールすることでも修正できます。

他のWM/DMを使っている場合、カーソルテーマを設定する他の方法が必要かもしれません。

Steam起動後、カーソルが明後日の方向に動くときの解決方法はxsetroot -cursor_name left_ptrです(the awesomewm wikiより)。

And Yet It Moves

Dependencies
Compatibility

ゲームの起動が失敗し、次のメッセージを残す場合、

 readlink: extra operand ‘Yet’
 Try 'readlink --help' for more information.

テキストエディタで~/.steam/root/SteamApps/common/And Yet It Moves/AndYetItMovesSteam.shを開き、

 ayim_dir="$(dirname "$(readlink -f ${BASH_SOURCE[0]})")"

 ayim_dir="$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")"

に変えてください。

Superbrothers: Sword & Sworcery EP

Dependencies

Team Fortress 2

Dependencies

Amnesia: The Dark Descent

Dependencies

Serious Sam 3: BFE

Dependencies

Steel Storm: Burning Retribution

トラブルシューティング
起動後ブラックアウトする

デフォルトでは、ゲームの起動は1024x768解像度のフルスクリーンモードで行われますが、これに対応していないデバイスがあります。 (例えばSamsung Series9ラップトップ with intel hd4000 video)。 ウィンドウモードで起動することで対処してください。

Steamのゲームプロパティを開き、Generalタブの"Set launch options..."を選び、"-window"と入力します。

これでゲーム中で解像度を変更できます。

No English fonts

Intelのビデオカードを使っている場合、DriConfでS3TCを無効にしてください。

WineでSteamを動かす

公式レポジトリからwineをインストールしこのページに描いてある指示に従って下さい。

必要なマイクロソフトフォントttf-microsoft-tahomaAURttf-ms-fontsAURAURwinetricks-svnAURからインストールします。

Note: Windowsディスクにアクセスできる場合、代わりにttf-win7-fontsAURをインストールするといいかもしれません。

すでにWine環境(~/.wine)があるのならば、それを削除して新しい環境を作ることで問題を避けるべきです(新しい環境に保持したいファイルを移動することもできます)。

インストール

Steamインストーラをsteampowered.comからダウンロードして起動します。.exeファイルではないのでmsiexecで起動してください:

$ msiexec /i SteamInstall.msi

Steamを起動

x86環境:

$ wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe

x86_64環境:

$ wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe

もしくは、これでも可能です:

$ wine "C:\\Program Files\\Steam\\steam.exe" 

エイリアスを作ってsteamを簡単に起動できるようにして(そしてそれをシェルのrcファイルに記述する)もよいかもしれません、例えば:

alias steam='wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe >/dev/null 2>&1 &'
Note: bumblebeeでnvidiaのカードを使っている場合、このコマンドで設定が必要ですoptirun

Tips

パフォーマンス向上

シェルのrcファイルに次のように記述することでwineのデバッグ出力を無効にできます:

export WINEDEBUG=-all

もしくはsteamエイリアスに付け加えることでsteamだけ無効化:

alias steam='WINEDEBUG=-all wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe >/dev/null 2>&1 &'

また、Sourceのゲームはページプールメモリ量によってオーディオが異なり、WINEはデフォルトでは値を設定しません。設定するには:

wine reg add "HKLM\\System\\CurrentControlSet\\Control\\Session Manager\\Memory Management\\" /v PagedPoolSize /t REG_DWORD /d 402653184 /f

アプリケーション起動オプション

"Properties"の"Set Launch Options"から設定します。例えば:

-console -dxlevel 90 -width 1280 -height 1024
  • console

アプリケーションの設定を変更できるアプリケーション内コンソールを有効にします。

  • dxlevel

アプリケーションのDirextXのレベルを設定します、例えば90はDirectX バージョン 9.0です。クラッシュを防ぐためビデオカードにあったDirectXのバージョンを使って下さい。公式Valve Software Wiki http://developer.valvesoftware.com/wiki/DirectX_Versions に詳しく書かれています。

  • width and height

スクリーン解像度を設定します。アプリケーションからグラフィック設定が保存されず、起動毎にデフォルトの解像度に戻ることがあります。 全ての起動オプションのリストは http://developer.valvesoftware.com/wiki/Launch_options を参照してください。

すでにインストール済みの Steam を利用する

Windowsとドライブを共有していて、どこかにSteamをインストールしている場合、Steamディレクトリから~/.wine/drive_c/Program Files/Steam/へシンボリックリンクを作成できます。 However, be sure to do all the previous steps in this wiki. Confirm Steam launches and logs into your account, then do this:

cd ~/.wine/drive_c/Program\ Files/ 
mv Steam/ Steam.backup/   (or you can just delete the directory)
ln -s /mnt/windows_partition/Program\ Files/Steam/
Note: If you have trouble starting Steam after symlinking the entire Steam folder, try linking only the steamapps subdirectory in your existing wine steam folder instead.

Running Steam in a second X Server

Assuming you are using the script above to start Steam, make a new script, called x.steam.sh. You should run this when you want to start Steam in a new X server, and steam.sh if you want Steam to start in the current X server.

If due to misconfiguration a black screen is shown, you could always close down the second X server by pressing Template:Keypress + Template:Keypress + Template:Keypress.

#!/bin/bash 

DISPLAY=:1.0

xinit $HOME/steam.sh $* -- :1

Now you can use Template:Keypress + Template:Keypress + Template:Keypress to get to your first X server with your normal desktop, and Template:Keypress + Template:Keypress + Template:Keypress to go back to your game.

Because the second X server is only running the game and the first X server with all your programs is backgrounded, performance should increase. In addition, it is much more convenient to switch X servers while in game to access other resources, rather than having to exit the game completely or Template:Keypress-Template:Keypress out. Finally, it is useful for when Steam or WINE goes haywire and leaves a bunch of processes in memory after Steam crashes. Simply Template:Keypress + Template:Keypress + Template:Keypress on the second X server to kill that X and all processes on that desktop will terminate as well.

If you get errors that look like "Xlib: connection to ":1.0" refused by server" when starting the second X: You will need to adjust your X permissions.

If you lose the ability to use the keyboard while using Steam: This is an odd bug that does not happen with other games. A solution is to use a WM in the second X as well. Thankfully, you do not need to run a large WM. Openbox and icewm have been confirmed to fix this bug (evilwm, pekwm, lwm do not work), but the icewm taskbar shows up on the bottom of the game, thus it's recommended to use Openbox. Install openbox from the official repositories, then add openbox & to the top of your steam.sh file. Note you can run other programs (ex. Teamspeak &) or set X settings (ex. xset, xmodmap) before the WINE call as well.

Steam Links in Firefox, Chrome, Etc

To make steam:// urls in your browser connect with steam in wine, there are several things you can do. One involves making steam url-handler keys in gconf, another involves making protocol files for kde, others involve tinkering with desktop files or the Local State file for chromium. These seem to only work in firefox or under certain desktop configurations. One way to do it that works more globally is using mimeo, a tool made by Xyne (an Arch TU) which follows. For another working and less invasive (but firefox-only) way, see the first post here .

  • Make /usr/bin/steam with your favorite editor and paste:
#!/bin/sh
#
# Steam wrapper script
#
exec wine "c:\\program files\\steam\\steam.exe" "$@"
  • Make it executable.
# chmod +x /usr/bin/steam
  • Make $HOME/.config/mimeo.conf with your favorite editor and paste:
/usr/bin/steam %u
  ^steam://
  • Lastly, open /usr/bin/xdg-open in your favorite editor. Go to the detectDE() section and change it to look as follows:
detectDE()
{
    #if [ x"$KDE_FULL_SESSION" = x"true" ]; then DE=kde;
    #elif [ x"$GNOME_DESKTOP_SESSION_ID" != x"" ]; then DE=gnome;
    #elif `dbus-send --print-reply --dest=org.freedesktop.DBus /org/freedesktop/DBus org.freedesktop.DBus.GetNameOwner string:org.gnome.SessionManager > /dev/null 2>&1` ; then DE=gnome;
    #elif xprop -root _DT_SAVE_MODE 2> /dev/null | grep ' = \"xfce4\"$' >/dev/null 2>&1; then DE=xfce;
    #elif [ x"$DESKTOP_SESSION" == x"LXDE" ]; then DE=lxde;
    #else DE=""
    #fi
    DE=""
}
  • Restart the browser and you should be good to go. In chromium, you cannot enter a steam:// link in the url box like you can with firefox. The forum link above has a steam://open/friends link to try if needed.
Note: If you have any problems with file associations after doing this, simply revert to regular xdg-utils and undo your changes to /usr/bin/xdg-open.
Note: Those on other distributions that stumble upon this page, see the link above for firefox specific instructions. No easy way to get it working on Chromium on other distros exists.

文字が表示されない問題

もしsteamを起動した時、文字が表示されない場合、-no-dwriteパラメータをつけてsteamを起動してください。詳しくはこの問題についてのスレッドを見て下さい。

wine ~/.wine/drive_c/Program\ Files\ \(x86\)/Steam/Steam.exe -no-dwrite