ネット対戦の手引き

Last-modified: 2022-06-10 (金) 10:10:28

注意

萃夢想のネット対戦は非公式のツールを使用しています。
何か問題が発生したとしても、製作元である黄昏フロンティア様への問い合わせをしないでください。
ツールの導入によって特に大きな問題は起こらないはずですが、原則全て自己責任となります。

準備

  • 萃夢想のバージョンをv1.11にする。
     パッチは黄昏フロンティア公式サイトからダウンロード可能。
     http://www.tasofro.net/touhou/download.html
     
  • 全キャラ使用可能にする。
     ストーリーモードを霊夢・魔理沙・妖夢の内から1人、咲夜・パチュリーの内から1人でStage6までノーコンティニューで進めてクリアするのが最速。
     Stage7はコンティニューしても問題ない。
     難易度は不問。
     「全キャラ使用可能=美鈴が使用可能」と覚えておけばよい。
     

RollCasterのダウンロード

  • RollCaster(ネット対戦用ツール)のダウンロード。
    現バージョンのRollCasterは、
    下記URLのページの「rollCaster-150104a-test.zip」よりダウンロードできる。
    ※互換性があるので最新版を使う必要はないが、地味に機能が追加されている場合があるため最新のものを使うことを推奨。
    2015-3-8現在、「rollCaster-150104a-test.zip」が最新。
    http://njm4558.run.buttobi.net/

安定版はこちら
http://mauve.sandwich.net/iamp/rollcaster-120221-jp.zip

 
ネット対戦ツールとしてのRollCasterの独自の仕組みについてはこちらより。

Rollcasterのインストール

  • 先程ダウンロードしたファイルの中の、「exe」フォルダ内のもの全てを東方萃夢想のフォルダ(th075.exeの有るフォルダ)へコピーする。
    • 東方萃夢想/palette/
    • 東方萃夢想/RollCaster.exe
    • 東方萃夢想/RollCasterGUI.exe
    • 東方萃夢想/config_rollcaster.ini
    • 東方萃夢想/info.ini
    • 東方萃夢想/fake_d3d8.dll
    • 東方萃夢想/state.dll
      このようなフォルダ構造になれば良い。
詳細な説明

これはデフォルトの場所(C:\Program Files (x86)\東方萃夢想\)に萃夢想をインストールした場合です
スタート.jpg
▲スタートメニューを開いてコンピュータを開く
 
Cドラ.jpg
▲ローカルディスクCを開く
 
pro.jpg
▲Program Files(x86)を開く
 
03.jpg
▲東方萃夢想を開く
 
004.jpg
▲先程ダウンロードしたexeフォルダの中身をコピー&ペースト
 ここのRollCaster.exeをダブルクリックするとRollCasterが起動します。
 デスクトップなど、自分の分かりやすいところにRollCaster.exeのショートカットを作っておくと便利。

 

  • キーコンフィグは1P側のみ設定すればよい。
     
    以上がネット対戦に最低限必要な準備である。
     
    • 場合によってはポート開放が必要になる(Port:UDP7500)。
    • セキュリティソフトやファイアーウォールを使用している場合、Rollでの通信を許可するか、セキュリティソフトやファイアウォール自体を無効にする必要がある。
    • ファイル名(特にth075.exe)を変えると起動しなくなるので、絶対に変えないように。

RollCasterの設定について

  • config_rollcaster.iniをメモ帳で開くことで諸々の環境設定ができる。
  • 「onoff = 1」等の表記は0がOFFで1がONを意味している。
  • 細かい設定についてはconfig_rollcaster.ini内の文章を参照。
  • RollCasterを開いている状態では設定が反映されないので、設定を変えたらRollCasterを一旦閉じ、再起動する必要がある。
  • config_rollcaster.ini等のファイルが「読み取り専用属性」になっていると設定を変えられないので注意。また、OSによってはProgramFiles中のファイルをいじれない事があるので、その場合は例えばデスクトップ等、他の場所に萃夢想のフォルダを移動させると良い。

接続サウンドについて

対戦募集中に接続があった場合に音を鳴らすことができる。


手順

  1. 適当な音声ファイル(wav形式)を用意して、ファイル名を「sound.wav」に変える。
    効果音だろうが音楽だろうがなんでもいいけど、最後まで再生されてしまうので短めの物を推奨。
  2. RollCaster.exeと同じフォルダにsound.wavを入れる。
  3. config_rollcaster.iniの[SOUND]の所を下記のようにwave=1にする。
    初期設定では既にwave=1になっているので変更しなくていい。
    ; ================================================= 接続サウンド
    [SOUND]
    ;観戦開始時や接続があったとき、同じフォルダにsound.wavがあったら鳴らすかどうか
    wave = 1
  4. これで対戦募集中に接続があるとsound.wavが再生されるはず(音量とかは変えられない)

ネット対戦までの流れ

 

RollCasterの操作方法

RollCasterは原則としてキーボードのみでの操作である。

Input >_

となっている所に数字を入力してEnterキーを押す事で操作する。
ちなみに、間違って入力してしまった場合、0を入力するとメニュー画面に戻れます。
(Delay入力時は例外で再測定を行います)

メニュー画面の場合

<Menu>
Escape key will take you back to here.
0 : Exit
1 : Wait for access
2 : Try access to UDP.7500
3 : Try access to specific Port
4 : Broadcast
5 : Get Information
6 : Try access ( Tough )
7 : Standby
8 : Test myPort
9 : vs th075Booster (always on)

10 : vs Practice Dummy
11 : Instant Lobby

Input >

この時、「1 : Wait for access(アクセスを待つ)」を選びたいのなら、「1を入力してEnterキーを押す」操作をすればよい。

 

対戦に必要な操作

まず、ネット対戦をする上で、相手と通信を確立しなければいけない訳だが、
その際に接続される側をホスト、接続する側をクライアントと言う。
ホストかクライアントかで何をするか変わってくるので、場合分けをして説明する。
なお、ホストもクライアントも共通して、
RollCasterが自動的に萃夢想を起動してくれるので、事前に萃夢想を起動する必要はない。

ホストの場合

  • ホスト側はポート開放を行う必要がある。
  • IPはグローバルIPアドレス(以下IP)を用いる。自分のIPが分からない場合、「グローバルIP」等でウェブ検索をして調べる。
     
  1. Casterを起動する。
  2. 「1 : Wait for access」を選択。
  3. 相手にIPを伝える。
  4. 相手の接続を待つ。
  5. 「Now Waiting for access.」と表示されれば接続を待っている状態である。
  6. 接続に成功したらDelay入力へ。
  7. 自動的に萃夢想が起動し、キャラクターセレクト画面へ進めれば成功。

クライアントの場合

  • クライアントは特に設定をする必要はない。
      
  • ホストのポートが7500の場合
  1. 「2 : Try access to UDP.7500」を選択。
  2. 相手のIPを伝えてもらう。
  3. 「Input Target IP >」と表示されるので、相手のIPを入力。
  4. 接続に成功したらDelay入力へ。
  5. 自動的に萃夢想が起動し、キャラクターセレクト画面へ進めれば成功。
     
  • ホストのポートが7500以外の場合
  1. 「3 : Try access to specific Port」を選択。
  2. 相手のポート番号を伝えてもらう。
  3. 「Input Target Port >」と表示されるので、相手のポート番号を入力。
  4. 相手のIPを伝えてもらう。
  5. 「Input Target IP >」と表示されるので、相手のIPを入力。
  6. 接続に成功したらDelay入力へ。
  7. 自動的に萃夢想が起動し、キャラクターセレクト画面へ進めれば成功。
  • 失敗した場合にはTIMEOUTと表示される。

Delay入力について

接続に成功すると、Delay入力を行う。
この時、1Pか2Pかでやる事が変わる。
なお、初期設定では1Pと2Pはランダムに決まるが、Casterの設定を変えれば指定できる。
Delayが何かについては用語集参照。
→用語集(Delay)

1Pの場合
 
(DelayTime[ms]の値を**.*と表す。)

<Delay>
About **.*[ms] delay exist in a round.
( DelayTime[ms] = 16[ms] x Input )
Input >

上記のように表示されるので、「About **.*[ms]」の**.*に該当する数字を16で割った数(整数)を入力する。
少数以下を切り上げるか切り下げるか四捨五入するかは人の好みで変わるので、自分の回線スペックと相談しよう。
ただし、いずれにせよ、この値は2以上を入力する事を推奨する。
例えば、About 24.4[ms]と表示された場合、24.4÷16=1.525で、2を下回っているため、少数以下を切り上げて2と入力。
ちなみに、0を入力するとDelayTime[ms]を再計測できる。
 
2Pの場合

<Delay>
Now waiting for buffer margin value.

と表示される。
1Pの人がDelay入力をすればいいので、特に何もやらなくてよい。

対戦を終了する

  • キャラクターセレクト画面でパッドのBボタンを押す。
  • キャラクターセレクト画面でキーボードのEscボタンを押す。
    のいずれかを推奨する。
     
  • 萃夢想を終了させる。
  • Casterを終了させる。
  • 回線が切れる。
    でも対戦は終了するが、推奨しない。

観戦する場合

対戦中の相手に対して、クライアントと同じ手順で接続する。
(註:この段階までは、接続待ちの相手と対戦する時と手順が同じため、接続待ちのホストに対して観戦しようとすると対戦が始まってしまう。
よって相手が対戦中か調べてから観戦する事を勧める。)
接続に成功すると(*****をキャラクター名、###を対戦が始まってからの経過時間として、)

<Target Condition>
Mode : Root (in test)
***** vs ***** ( ###sec)
Decide within 10sec.
0 : Stop
1 : Continue
Input >

のように表示されるので「 1 : Continue」を選択する。

相手の状態を調べる

メニュー画面で「 5 : Get Information」を選択。

Input Target Port >

と表示されるので7500と入力。

Input Target IP >

続いて上記のように表示されるので、相手のIPを入力。

中継

  • データを丸ごと中継するのが fakeCaster
    中継役はfakeCaster開いて待つだけ。ポート変えて複数立ち上げればその数だけ中継することができます。
    中継役にいつもどおり凸すれば二人そろった時点で自動的に対戦開始する。
     
  • 相手のIPとポートの情報をもらったらあとは中継せず直接通信するのが 7:Standby
    海外ではリレーと言われているみたい。
    ○リレーの方法
    1.リレー役がCasterを立ち上げる。
    2.クラ専の2人が、7を入力しEnter
    3.クラ専の2人が、ポート番号(大体は7500)を入力してEnter
    4.クラ専の2人が、中継役のIPを入力してEnter
  • Standbyの仕様
    リレー役はCasterが立ち上がってさえいれば(メニュー画面だろうが対戦中だろうが待ち中だろうが)、リレーサーバ機能を果たすことができる。
    リレー役に7で凸すれば二人そろった時点で自動的に対戦開始する。
    タイムアウトしたらルータの関係でリレーでは対戦不可。
    対戦が始まったらリレー役には接続していないので、リレー役はCasterを落としてもOK。
    おおよそのイメージ

    もう少しまともな画像をおいおい作成します。。

    • クラ専がホストできない図
      relay01.jpg
    • クラ専がホストへと通信する際の図
      relay02.jpg
    • 7 : Standbyで接続が成功する場合の図
      relay03.jpg

Caster小ネタ

  • 対戦中にキーボードの数字キーを押すとDelay値を変更できる。これは自分のディレイのみの変更で対戦相手のディレイは変更されないので気兼ねなく変更できる。
  • キャラセレ画面でキーボードの]キーを押すと「今何戦目か」がCasterに表示される。(何戦終了したのかではないので注意。)
  • 墓地(昼)・時計台(昼)・幻想郷が選択できないのはCasterの仕様。
  • キャラセレ画面でキーボードの[キーを押すと使用不可能ステージの制限が解除される。
  • ステージ選択時にランダムセレクトからD→Aボタンとずらし押しすると稀に使用不可能ステージが選択できる。(詳細な条件は不明)
  • 観戦されると「Debug:Observer*」と表示される(*=何人目の観戦者かを示す値)。これは、何人が観戦しているかではなく、何人が観戦に来たかを表現しているので、1人が複数回観戦に来ても*の値は増加する。また、Casterの設定をいじると非表示にできる。
  • 使用不可能ステージが存在する理由は「一部の射撃が見づらいから」が主。
  • 他にUDPの7500ポートを使っているツールがあると(多重起動したときなど)「BindError」と表示される。
  • ネット対戦と直接関係は無いが、スクリーンセーバーや自動電源OFF機能は必ず切っておく事。Windowsの自動更新やウィルスソフトの定期スキャン開始にも注意。
  • Casterで萃夢想を立ち上げる前に萃夢想が既に起動していた場合、Casterは見つけた萃夢想を一度閉じてから再度自分用に立ち上げなおす。
    萃夢想は同じフォルダのものでなければ多重起動できるので(多分)、待ち中にプラクティスをしたいときなどは、萃夢想フォルダをコピーして違うフォルダのほうのを立ち上げておくと比較的エラーが出にくい筈。
  • 観戦中に'['及び']'キーを押すと会話シーンスキップの有効・無効が切り替えられる。
  • 観戦で接続できないとき、その対戦を観戦している人に接続することでも観戦できる。対戦中のクライアント側のポートが開いているとき、その人に接続して観戦もできる。
  • RollCasterに付属しているfaked3d8.dllを萃夢想フォルダに入れてd3d8.dllにリネームすると、萃夢想のウィンドウサイズを変更できるようになる。(おそらくReplayExに付属していたもの)

上手く繋がらない時は

  • 「charInit() failed.」と表示された場合。
    →コントローラーがささっていない。
  • キャラセレクト画面までいくが、相手が美鈴側へ動かすと挙動がおかしくなる。
    →全キャラ使用可能になっていない。
  • 萃夢想は起動するがキャラセレクト画面まで進まない。
    →OS毎に必要な設定ができていない。
    参考:OSがVistaもしくは7の場合に必要な設定
  • 「th075 start failed.」と表示された場合。
    →萃夢想のフォルダ内にCasterが存在しない、もしくはth075.exeのファイル名を変更してしまっている。
  • 「TIMEOUT ( Access )」と表示された場合。
    →ホスト側のポートが解放されていない可能性が高いので、その旨を相手に伝えてあげましょう。
  • 「TIMEOUT ( Root )」と表示された場合。
    →他の人とほぼ同時に接続しようとした時、先を越されると表示される。(ディレイ入力中の人に接続したときも同様)
  • 「TIMEOUT? ( Access )」と表示された場合。
    →ホスト側がCasterは起動しているが接続を待っていないと表示される。

RollCasterの仕組み

概要

ネット対戦に付きものである入力ラグを、巻戻しによって隠す機能を搭載している。
 
詳しい動作原理は割愛するが、簡単に言うと、
「相手の入力データが届いていない場合、とりあえず仮の入力で相手のキャラを操作しておいて、実際の入力とズレが生じた場合に巻き戻して修正後早送りして同期を取る。」
である。

 
理論上、ネット対戦につきまとう入力のラグを無くす事ができるが、
上記の原理が原因で、たまに「クラッシュした音がしたのにクラッシュしてなかった」等、
巻き戻りによって挙動がおかしくなる事もあるので注意。
 
 
ちなみに、
自動リプレイ保存、プラクティスダミー、カラーパレット変更可能 ポート開放のチェック
など、全体的な機能も旧Caster(th075Caster)からパワーアップしている。

プラクティスダミー

CPUに詳細な設定をしてプラクティスが可能。
とはいえ、普通の対戦モードなので、与えたダメージが回復してくれない。
よってF5を押す等しないとプラクティスモードのようにはならない。
詳しくはファンクションキーの機能

詳しい使い方
  1. Random guard crushes
    ランダムでクラッシュ技を使ってくる。
    妖夢のB流転斬など、クラッシュする必殺技も含まれる。
  1. Repeat selectable move
    特定の動きを
  2. Jump, Repeat selectable move
  3. Any normal/command normal/guard crush/graze attack
    攻撃してくる。
    通常技、特殊技、クラッシュ技(22系)、ダッシュ攻撃。
    カウンターヒットからのコンボ練習に。
  4. Move randomly
    ランダムに動く。
  5. Move and do selectable move randomly
    ランダムに動いたり行動したりする。
  6. Jump
    ジャンプ。
  7. Random Guard (with 5)
    ガード方向ランダム(ガードしない事もある)。
  8. Random Guard (without 5)
    ガード方向ランダム。
  9. Standing guard
    立ガード。
  10. Crouching guard
    しゃがみガード。
  11. Jumping guard
    空中ガード。
  12. One+hit guard
    最初の1ヒットだけガードしない。
    コンボが途切れるとガード。
  13. Do nothing
    何もしない。
  • Teching and misc
    相手の細かい行動を設定できる。
    air tech = 受け身。ground tech = 移動起き上がり。
    on hit = ヒット後。on wakeup = 起き上がり後 = リバーサル。
    React と付いているもので相手の行動を設定できる。
    複数を使いたいのなら、その数字を足し算した数を入力。
    例:前受け身+ガード方向ランダムにしたいのなら 2+12 = 14なので14と入力。
  • Timing for action
    相手の行動の間隔。
    Every n seconds n秒毎。
    Randomly (n-ms) n秒からm秒の範囲でランダム。
    ASAP 最速で。

カラーパレットの変更

RollCaster同士の対戦で互いにカラーパレットを変更できる。
この変更は相手にも見える。
なお、1Pカラーを使って相手キャラと同じ色にしたり、極端に見にくい色を使ったりなど、
マナー違反になりそうな行為は避けて頂きたい。

  • 準備
    RollCaster内に同梱されているPaletteフォルダ内にカラーパレットのファイルを入れる。
    この際、ファイルの名前は「キャラ名-数字.pal」となるようにする。(例:reimu-1.pal)
  • 選び方
    キャラクターセレクト時、方向キー+AorDボタンで選択するとカラーパレットの変更が適用される。
    各種ボタンは「キャラ名-数字.pal」の数字部分と下記のように対応。
    • 1 = ↑+A
    • 2 = ↑+D
    • 3 = ↓+A
    • 4 = ↓+D
      (例:reimu-1.palを選ぶ時は、霊夢を選ぶ時に上を押しながらAボタンを押す。)

カラーパレットを自分で編集したいならツール類参照。

その他小ネタ

  • プレイヤー名を登録する事によってRoll同士で対戦した時に相手に自分の名前を表示させる事ができる。
    細かい設定はconfig_rollcaster.iniで。
    その場合は「;name = 」の;を消しておくように。
  • 既に萃夢想を起動している状態で募集してても問題なく募集できるので、トレーニングモード等をしつつ募集する事が可能。
    (この機能については通常のCasterでも可能)
  • Roll側で推奨delayが1にされる事があるが、1だと微妙に安定しないので2にした方がよい。
  • ポート開放のチェックはRollCaster.exeを起動して「8 : Test myPort」を選択
    Input Address [mizuumi.net] >
    と表示されるのでfgc.shib.liveと入力してEnterキーを押す
    <Report>
    Port : OK ( UDP.7500 received signal )
    となればポート開放されていると分かる。
  • config_rollcaster.iniの設定(抜粋)
    RollCaster本体に付属しているconfig_rollcaster.iniをメモ帳等で開いて編集すると色々と便利な機能が使える。
    ここでは、その一部を説明しよう。
    • 巻き戻し機能を切りたいなら
      [ROLLBACK]
      ; 巻き戻し手法を使用するかどうか
      enable = 0
      と設定
    • 対戦結果を表示させたい場合
      ;結果表示設定
      ; 0 - 表示しない
      ; 1 - 萃夢想終了時に勝敗を表示する
      ; 2 - 1戦毎にキャラクター、選択したスペカ、勝敗を表示する.
      ; キャラ選択画面で]キーを押すと順に切り替わる
      roundShow = 2
;対戦1回ごとに結果をsessionlog.txtに出力するかどうか
;書式はroundShow=2にしたときと同じ
sessionLog = 1

等と設定

  • 自動リプレイ保存の機能も設定可能
    「リプレイの追加機能」という項にある
    ;対戦終了時リプレイをオートセーブするかどうか
    ;キャラクター選択画面で-で有効、=で無効化
    autoSave = 1
    と設定する事で自動リプレイ保存がオンになる。
    replayFilenameFormat = %D%t %A(%5) - %B(%6) (%ms)
    の項をいじればリプレイファイルの名前の付け方を変えられる。

対戦場所

対戦場所についてをご覧ください。