AoE1, 2, 3決定版が完全オフラインLAN対戦に対応!激アツ環境構築を今すぐ実現
引用元:https://news.ycombinator.com/item?id=43562860
AoE好きのHacker News民なら、0 A.D.もハマるかもね。無料だし面白いけど、自分が戦略マスターだと思ってると打ちのめされるかもよ。https://play0ad.com/
0adマジで好きだけど、ユニットが増えると途端に重くなるのが難点なんだよなー。
0 A.D.のAlpha 27では、一部のユーザーでパフォーマンスが低下してるらしい。Vulkan対応とかで改善された人もいるみたいだけど。原因はSpidermonkeyの変更っぽい。詳しくはhttps://gitea.wildfiregames.com/0ad/0ad/issues/7714を見てね。ユニットが多いと重くなるのは、シングルスレッドだからマルチコアCPUを活かせてないせいかも。改善には労力がいるから、まだ誰も手をつけてないみたい。もし0 A.D.が好きなら、Open Sourceだし貢献歓迎だよ!
個人的にはそんな経験ないなー(10年くらいプレイしてる)。古いハードだとキツいのかもね。大規模チーム戦でユニット同士がぶつかり合うとラグるけど、それはネットワークの問題かも。
ゲーム開発者じゃないから気になるんだけど、こういうゲームって決定論的なの?もしそうなら、大量のユニットを移動させて攻撃するってサーバーに送れば、結果はサーバーで計算できる?なんでネットワークの問題が起きるんだろ?
この記事はマジもんのクラシック。「28.8kbpsで1500人の射手を動かす:Age of Empiresのネットワークプログラミング」 https://www.gamedeveloper.com/programming/1500-archers-on-a-…
オリジナルはこちら:https://web.archive.org/web/20180719170411/https://www.gamas…
>ゲーム内の各ユニットの状態を渡すのではなく、各マシンで全く同じシミュレーションを実行し、ユーザーが同時に発行した同一のコマンドセットを渡すことを想定していました。PCは基本的に最高の戦争映画の伝統の中でゲームウォッチを同期させ、プレイヤーがコマンドを発行できるようにし、まったく同じように同時に実行し、同一のゲームを実行していました。”
それ、バグがあると「sync error」って出て、3時間プレイしたデータが消えるっていう最悪の事態になるんだよね。
Factorioで同じことが起きたときは、ゲームが一時停止して、サーバー役のプレイヤーがゲームを保存して他のプレイヤーに送信、みんながそれをロードして再開するんだ。最高に
ナイス
な体験ではないけど、「今日はもう遊べません、さようなら!」よりはマシ。
RA2/YRでも同じ。対戦相手がトレーナーとか不正IFSを使ったらゲームが終わる。ロビーがIRCd上で動いてたのは良かったな。Dreamforge IRCdのサーバーパスワードは「supersecret」だったし。
多くのRTSゲーム(全部じゃないけど)は、ロックスステップ同期っていうネットワーク方式を使ってる。これはゲームプレイが決定論的である必要があるけど、欠点もある。その一つが、誰か一人がラグると、
全員
ラグるってこと。AoE 1と2はこれを使ってて、3もそうだと思う。
Beyond All Reasonだと、Spring/Recoilエンジンが最終的に「アクションウィンドウを閉じる」みたいになるらしいよ。誰か一人がめっちゃラグいと、そのラウンドのアクションが送信されなくて、他のプレイヤーは続行するんだって。俺も経験あって、終盤でPCがリアルタイムでシミュレーションできなくなって、ユニット操作できなくなったけど、他の人は普通にプレイしてた。チャットはできるから、チームメイトに自分の軍隊操作頼めるのは便利だね。
リプレイが無料でついてくるのは良いことだね。
デメリットもあるよ。シミュレーションを実行しないとゲームの状態を復元できないことが多いし、巻き戻しもできないことが多い。リプレイで一瞬見逃したら、全部見直さなきゃいけないんだ。
それってどんなネットワーキングでも同じじゃない?
決定論的かもしれないけど、ゲームの種類について勘違いしてるかもね。
0ADとかAoEみたいなRTSゲームでは、単に一つの巨大なユニットを攻撃に送って結果を待つんじゃなくて、数十もの個々のユニットを敵ユニットの近くに送り込むんだ。そして、「戦闘」がリアルタイムで進行して、プレイヤーがユニットをマイクロマネジメントして結果に影響を与えることができる。サーバーはプレイヤーの思考プロセスをシミュレートできないから、サーバー上でシミュレートすることはできないんだ。
AoE2の戦いはマイクロマネジメントが全てだよね。相手のトレビュシェットの攻撃に対して、最後の瞬間に大量のゴミユニットを分割してマイクロショットを打つことで、全てが変わるんだ。
ちょっと古いけど、ユニットごとのマイクロ戦術がたくさんあるよ:
>https://youtu.be/hjUgisPD_C4?si=F-UvzDOTsWRZhZSq”
俺も同じだよ。ゲームするときは最新のWindows 10 PC (Ryzen 5600x, RTX 3070Ti)を使ってる。Linuxの方がパフォーマンスが良いのかな。
え、これまだ開発されてるんだ? Heavengamesのフォーラムのスレッドから生まれたのを覚えてるよ…
1月に大きなリリースがあったばかりだよ!
8人マルチプレイはプレイできない。
ラグがあるから、逆に作戦を練る時間が増えるって考えれば良くね? AoEみたいなゲームが未来でも遊べるようにするのは最高だね。サーバーが止められたせいで機能が失われるのは悲しい。 AOE2のオンライン対戦にめちゃくちゃ時間を使った身としては、AOE2 DEが進化してるのは本当に嬉しい。文明の数が50以上になったり、グラフィックが向上したり、ゲームプレイも改善されてるし。オープンソースコミュニティのおかげで、こんな発展があるなんてマジですごい。 意味ないかもね。友達と「ランダム文明」でやると、いつもバイキングになるんだよね。海がないマップなのに。 バイキングは優秀な弓の文明だよ。テクノロジー全開放だし、無料の手押し車はトップレベルの経済ブースト。 パラディンにボコボコにされて、対抗手段がほとんどなかった記憶が蘇る…。 固有ユニットじゃないパラディンに対抗できるのは、重装ハルバード、重装らくだ、大量のArbalesterだけ。モンクは少数なら有効だけど、終盤で大量に生産されると、ハルバードとラクダを同数くらい用意しないと止められない。 Arbalesterもパラディンにはボコボコにされるよ。壁の後ろとか、パラディンの攻撃範囲が狭くなる場所に誘導できない限り。 広い場所でも、十分な数のArbalesterがいれば互角に戦えると思う。エチオピアのArbalesterは25%早く攻撃できるし。一体ずつパラディンを集中攻撃するように指示すれば、パラディンを一撃で倒せるし、攻撃面積は数に応じて増加する。ハルバード連打より手間はかかるけどね。 そうだね、相当なマイクロが必要だね。 あの Viking Pikemen ってやつ、HPめっちゃ多いんだよね。 次のリリース後、分割される文明の候補として有力だね。どうなるか楽しみだ。 Vikings はマジで最強の文明だよ。Berserks は一番好きなユニットの一つ。今どうなってるか知らないけど、昔は Paladins と攻撃力で完全に匹敵してたんだぜ。 もし AoE が Nintendo の所有だったら…想像してみて! これって Supreme Commander でもあったよね。 マジかよ。どんな変更を加えたの?クラシックゲームだと、その線引きって難しいんじゃないかな。 主にバランスとクオリティ・オブ・ライフだね。UI が特に大幅に改善されたよ。AI 対戦相手も良くなったし、いくつかの新しいユニットも追加されて、バランスが改善されたんだ。 これって法律で義務化されるべきだと思うわ。製品を使うのに必要なサービスを提供してる?素晴らしい。もしそのサービスの提供を停止して製品が動作しなくなったり一部しか動作しなくなったりする場合、実装とドキュメントを公開する義務を負うべきだよね。 AoE2 は 1997 年のゲームエンジンをベースに 1999 年にリリースされたんだけど、2025 年の春には新しい大型 DLC がリリースされる予定だよ (Definitive Edition 版)。Sandy Petersen は誇りに思うべきだね。 俺たちが子供の頃、00 年代に LAN で AoE2 のセッションやってたんだけど、3 回に 1 回くらいの割合で 2~3 時間プレイした後、クラッシュしてたのを覚えてるわ。 みんなで「タートル戦法」やってたから、ゲームが終わらないことなんてザラだったよね。 それって子供のMonopolyみたいじゃん。でも、それが楽しいんだよね! わかるー。俺らもタートル戦法よくやってたわ!最初は攻撃禁止の協定結んで、鉄壁都市を築き上げて、資源が尽きるまで耐えて、最後に城10個と兵舎と厩舎からユニットを量産して総攻撃! 共有してくれてありがとう、マジですごい。 SteamはゲームにDRMを必須にしてないってことを指摘するのは重要だと思う。SteamのDRMですら必須じゃないんだよ。ゲームの開発者とかパブリッシャー次第なんだよね。Steamにあるゲームの多くはDRMフリーで、ファイルをバックアップしてSteamなしでプレイできる。 これってAoEにも当てはまるの?昔はあんまりやらなかったんだけど、ちゃんとやってみたいんだよね。でも、メンテナンスの問題があるかもしれないのに、DRM付きの古いゲームを買う気にはなれないな。 AoEは自分で確認してないな。DRMが心配なら、Steam DRMを使ってるゲームは、ゲームに付属してるSteam DLLをエミュレートするDLLに置き換えるだけで簡単にクラックできるよ。 買ってからクラック版をダウンロードすればいいじゃん。 俺も基本的にはそうしてたよ。AoEをCDで何回か買って、Steamでもまた買った。最初はISOイメージで仮想ドライブ使って、後でクラック版を使った。 指摘してくれてありがとう。AoEは多分そうじゃないよね? たぶん、マルチプレイのゲームだから、チーター対策したいんじゃないかな。 Steam の DRM はチーター対策には全然なってないよ。 AGPL ライセンスで利用規約ってどういうこと? それってライセンスで禁止されてる「さらなる制限」じゃないの? 訴訟対策みたいなもんでしょ。 意味がないなら、それはただの訴訟対策だよ。 CYA は “Cover Your Ass” の略だよ。 これはすごい。 このリポジトリのどこかにあるんだろうけど、俺には無理だ… AoE2 DE って、主に P2P でマルチプレイしてるの? マッチメイキングだけリージョナルサーバー使ってて、ゲームロジックは全部クライアント側で動いてるってこと? マップハックがあることとか、誰か1人がラグるとみんなラグくなるってことからそう思ってるんだけど、AoE のフォーラムだと意見が分かれるんだよね。 もし読んでなかったら、オリジナルのネットコードに関する素晴らしい論文があるよ:https://zoo.cs.yale.edu/classes/cs538/readings/papers/terran… AFAIK、DE版はp2pじゃなくてサーバーベースらしいよ。クライアントとサーバーが全部ロックステップで世界をシミュレートして、状態の完全なコピーを持ってるんだって。だからmap hackができるんだね。Paxosみたいなのはいらないみたい。もしどこかのマシンがミスったらゲームがdesyncして止まるけど、セーブポイントから復元できることが多いらしいよ。 プロのトーナメントだと、サーバーは2人のプレイヤーの間に位置するように選ばれるんだって。例えば、ブラジル対中国の試合はEUサーバーでプレイされるかもしれないね。ってことは、サーバーはクライアント間の中心的な情報源として使われていて、すべてのゲームデータがサーバーを通過し、計算はすべてクライアント側で行われているんじゃないかな。 それは昔の話だよ。DE版はネットワークが弱いプレイヤーだけラグるみたい(一人のプレイヤーのCPUパフォーマンスの低下は、すべてのプレイヤーに影響するけど)。 AoE2がチェスみたいに長く続いてほしいな。本当に“完璧”なゲームの一つだよ。 チェスは2年ぶりにプレイしてもルールが変わってないけど、AoE2はそうじゃないんだよね。そこが問題。 本当にそうだよね。しかも、どんどん改善されてるし。Definitive EditionはAoE3とか4よりも投資されてるんじゃないかな。 最近、ほぼ同じことを考えてたんだ。最高のゲームはずっと残ってほしいよね。楽しいゲームなら、バランスの問題とか、バグじゃない機能とかもそのままにしておけると思う。でも、netcodeのバグみたいな、純粋にマイナスなものは難しいよね。Idがソースを公開してくれて本当に感謝してる。AoE2でも同じことが起こるのを願ってるよ。 確かに素晴らしいゲームだよね。ランダム性とか、ターン制じゃないこととか、マルチプレイがあることも、チェスと比べて面白い点だよね。でもチェスはルールが1000倍シンプルで、変わらないし、APMが高くなくても競技的にプレイできるし。 AoE2が今年PS5で発売されるらしいよ。 これのwebサーバーの部分がいまいちわからないんだけど。AoEマルチプレイのマッチメイキングとか、ゲームブロードキャストのことかな? これ気になるよねー。routesファイル読んだの楽しかったよ! LANでゲーム自体は動くけど、LANプレイにネットが必要なのって2つ理由があるよね。 初代Age of Empiresにも同じようなのないのかな?Battle.NetにはDiablo 2からWarcraft 3までをカバーするPVPGNがあるけど、AoEの類似品は見つからないんだよね。 昔、仮想LANソフト使ってLAN対戦したことあるよ。みんなで同じソフト入れて、ゲーム内で繋がった。「Hamachi」だったかな? Vooblyってサイト見てみるといいかも。オリジナルのゲームやってる人が結構いるみたい。パッチ当てられたバージョンが多いみたいだけど。 初代はオフラインLANプレイできたと思うよ。友達にモデムで電話かけて繋いで対戦したの覚えてる。ネット接続なしで。 昔はLANプレイの他に「インターネット」って選択肢があった気がする。ポートフォワーディング設定して、友達に電話でIPアドレス教えて入力してもらってたなー。 去年の12月にLANパーティーで試したけど、うまくいかなかったんだよね。次のLANパーティーでまた試してみるよ。開発頑張って! 公式のLANサポートじゃなくて、これを使う理由って何?俺は飛行機の中で完全にネットなしで動かしたいんだよね。LANにネット接続が必要なのってマジ悲しい。 参加者全員がゲームの正規版を持ってるわけじゃないんだよね。俺は買う価値あると思ってるけど、一回きりのLANパーティーのために人に無理やり買わせたくないし。 最近インターネットでLANゲームやるなら何がいいかな?もっとコメントを表示(1)
それはさておき、このゲームが生き続けてるのは本当に素晴らしいことだ。
MS がこんなにオープンなコミュニティの成長を許すなんて、ちょっとした驚きだよね。MS ってゲームコミュニティの育成が下手だってことで有名じゃん。
2001年に MS が ES を買収した後、MS は厳しい IP 強制の役割を担って、例えば MFO の人々をターゲットにしたんだ。
DBD_Jinx が MS にアカウントを奪われた話は伝説だよね。DBD_Jinx は MS の商標をライセンスなしで使用した著作権侵害で ZONE アカウントを停止され、_IamJinx として再出発することになったんだ。
彼は何をしたかって?
MFO で、初期のゲームを有利に進めるためのアカデミー・トレーニングを宣伝したんだ。そこでは、マイクロマネジメント、ゲームプランニング、戦略、偵察に関するアドバイスを提供してた。
アメリカの 2000+ Zone Rating のやつらと一緒に、AoE を使ってちょっとした稼ぎを始めたんだよ。
MS の当時の過剰反応ったらなかったよね。
それが今や Red Bull Wololo だよ!2001年とは比べ物にならないくらいワクワクする!
僕は昔ながらの AoE 2 が好きなんだ。これからもこの調子で続いてほしいな。
_CN
会社が閉鎖してサーバーが停止したんだけど、幸運なことに誰かがマッチメイキングサーバーを実装してくれたんだ。
今でもコミュニティは活発で成長を続けてて、ゲームの開発まで続けて、オリジナルを遥かに超えてるんだ。
それは Forged Alliance Forever って呼ばれてるよ。
ある意味、その方が良かったんだよね。誰も負けなくて済むし、みんな自分が勝ってると思ってたから。もっとコメントを表示(2)
Steamは便利だし、SteamOSの開発も評価してるけど、ロックインが心配なんだよね。こういうプロジェクトは、購入したものをより自分のものにするのに役立つからluskanerは俺にとってヒーローだ。
今はSteam版しか使ってないけどね。世界中の友達と簡単にマルチプレイできるし。あと、Steamで手に入るAoEのリメイク版にある追加機能もマジで気に入ってる。
いつか昔のAoEのバージョンがオープンソース化されるといいなー。そうなったら最高だ。
Wikipedia によると、>“個人が批判とか法的責任とか、仕事関係とか官僚的な文脈での不都合な結果から自分を守るためにやる行為”らしいよ。
引用元:https://en.wikipedia.org/wiki/Cover_your_ass
AoE3 の API に関する公開ドキュメントってあるのかな?それとも全部リバースエンジニアリングで作ったのかな。そういうドキュメントについて質問してる人は見たことあるけど、実際にあるのを見たことないな。
Definitive Edition で設計が大幅に変更されて P2P じゃなくなってるとは思えないけど、確かな情報は何もないんだ。もっとコメントを表示(3)
https://github.com/luskaner/ageLANServer/blob/main/server/in…
1.ゲームがマルチプレイサービスに繋がること。
2.LAN設定の調整サーバー。
これは2をカバーしてるんだね。1はSteamを騙して接続してると思わせる必要があるから、もっと大変そう。
Hamachiはまだあるみたいだけど、できればオープンソースがいいな。
Tailscaleは残念ながらマルチキャストに対応してないんだよね。多分ほとんどのゲームがLAN探索にマルチキャスト使ってると思うから。
ZeroTierとかどうかな?