遊戯王TCGのシミュレータである、遊戯王Automatic Dueling Systemのネットワーク対戦を拡張するDLLを作成しました。
この遊戯王ADSでネットワーク対戦を行う場合、本来であれば、Hamachiなどの仮想VPNを利用するか、グローバルIPを公開して接続を待つ必要があります。
しかし、このサービスを利用すれば、少しだけ簡単にネットワーク対戦を行うことができます。
では実際に導入方法について解説していきます。
更新履歴
- [2012/7/25 18:30] グローバルIPを直接表示するのは危険なので、少し安全な形式へ変更
- [2012/7/25 18:30] 対戦部屋作成時に、自動でサイトに登録するように変更
導入方法
まず下記のリンクからDDRAW.DLLのラッパファイルをダウンロードします。
上記のファイルをダウンロードして展開すると、"ddraw.dll"というファイルがあるので、これを"gframe.exe"と同じ場所にコピーします。
このDLLは、"yugioh-ads.appspot.com"に接続する際にHTTPを利用するため、HTTPプロクシを利用した環境では動作しません。
また、現段階ではポート番号の変更も行えません。7911番ポートを利用してください。
使用方法(部屋立て・サーバ側)
通常通り、"gframe.exe"からゲームを開始し、対戦部屋を作成してください。
YugiohADS
作成が完了すると上記ページに、自分のノードアドレス(@***********)が追加されます。
後はクライアント側が接続してくるのを待つだけです。
対戦部屋を作成してから、ユーザが15分以内に接続してしてこない場合は、リストから自動で削除されてしまうので再度部屋を立て直す必要があります。
サーバ側になる時に注意しなければならないのが、7911番ポートが開放されているかどうかという点です。
開放されていないと外部からの接続を受けることができないので注意してください。またファイヤーウォールなどによって接続が弾かれてしまうので、適宜設定が必要です。
使用方法(クライアント側)
YugiohADS
クライアント側は、上記ページから接続したいノードアドレスをコピーしておきます。
次に、"gframe.exe"を起動してデュエル画面の"ユーザIP"の部分にコピーしたノードアドレスを貼り付けます。この時、右クリックが使えないので、Ctrl+Vで貼り付けてください。
ポート番号は"7911"のままにしておいてください。
あとは、"部屋に入る"をクリックすると自動的にサーバに接続されます。この時エラーが発生する場合は、サイトがダウンしているか、相手のポート解放がうまく行われていない可能性があります。
最後に
このサービスのバグや、改善案などありましたらコメントを下さい。
ADS本体の質問は、受け付けません。気づき次第削除します。