スターズ4X用カスタムバーチャルマシン

2026/09/19 0:01

スターズ4X用カスタムバーチャルマシン

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

「Stars!」という愛される 1995 年製の 4X 戦略ゲーム(当初は 16 ビット Windows 3.1 向けに設計)の保存において最も重要な進展は、"Stars!VM"というカスタムソリューションのリリースであり、このソフトウェアを現代システム上でネイティブに実行することを可能にします。アーキテクチャ互換性の問題とコピープロテクションの問題に対応するため、Stars!VM は 80286 エミュレーターを埋め込み、ポインタのマッピング、構造体の marshal、DOS インタラプトのサービス、OS レベルのブリッジを通じたセキュリティチェックの回避を含む Win16 から Win32 のブリッジを組み合わせています。このプロジェクトは GitHub 上で単一のスタンドアロン EXE ファイル(32 ビットビルドには SSE2 が要求)として配布しており、ネイティブなオーディオサポートと調整可能なスクリーンスケールを提供することで、複雑な仮想マシンや手動セットアップの必要をなくしています。

パフォーマンスはターゲットされた技術的最適化により大幅に向上しました:ホットなルーチン(例:L'Ecuyer MCG PRNG)を C として書き直し、新しい 80286 インストラクションに変換することで約 2 倍のスピードアップを実現し、I/O バッファリングにより Win32 の読み書きオーバーヘッドをターン生成時間の約 5% から改善し、レスポンシブネスを向上させました。エミュレータは Microsoft の

WaveMix.dll
インターフェースをネイティブに実装することで外部 DLL に依存せず動作し、オリジナルのアートアセット(約 3MB)をカスタム LZ ベースのアルゴリズムで圧縮して 32 ビットバージョンのサイズを約 1.5MB に削減しています。エミュレーション精度を確保するために、実装は JIT ホスト実行との比較を通じてインストラクションを検証する差分ファッザーを使用しています。また、キー再使用によるコピープロテクションペナルティを防ぐために固定シリアルコードとハードウェアシグネチャの注入がデフォルトであり、具体的な例として CLONEMUM、CROSSNUT、EGGSWAIN、GHOSTKIN が挙げられます。監視は Model Context Protocol(MCP)を通じてサポートされています。このアプローチは、過時化されたプロセッサアーキテクチャ、暗号化の壁、バイナリ互換性に関する障壁を克服することで、陳腐化したソフトウェアの保存において価値ある先例を設定します。

本文

1995 年名作「スターズ!」を現代 Windows で快適にプレイできる新プロジェクト『Stars!VM』発表

2026 年 9 月 17 日、nullprogram.com より、1995 年の 4X シミュレーション戦略ゲーム**「スターズ!(Stars!)」**を現代的な環境で遊ぶための新プロジェクトが発表されました。

📌 プロジェクト概要

  • 対象ゲーム: 1995 年発売の 16 ビット版 Windows 3.1 アプリ。「Explore, Expand, Exploit, Exterminate」の 4X メカニクスを備える。
  • 従来の課題:
    • x64 Windows では 16 ビットアプリを実行できず、レトロなハードウェアやOTVDmDOSBox(Wine と組み合わせる場合あり)が必要だった。
    • 近年ではプレイが極めて困難になっていた。
  • 「スターズ!VM」の仕組み:
    • カスタム実装の80286 エミュレーターと、Win16 から Win32 をつなぐブリッジを内蔵。
    • ネイティブな Win32 アプリとして動作するため、見た目や挙動は当初そのままに保たれる。
    • 現代風ファイルダイアログの採用および4K スケーリングに対応し、快適性を向上。
    • 実行ファイル内にオリジナルゲームを埋め込み、本物との区別がつかないレベルで忠実に再現。

💾 インストールと互換性

  • 入手方法: GitHub の署名済みリリースから圧縮されたオリジナルゲームを単一 EXE ファイルでダウンロード(インストール不要)。
  • 提供されるビルド:
    • 32 ビット版(SSE2 サポート)
    • 64 ビット版(特にメリットなしのため推奨されない)
    • ※ほぼすべての環境(16 ビット Windows のみ除く)で動作。
  • 利点:
    • OS を介したブリッジにより、安定性向上、タスクバー連携、DOS インタープトの適切な処理を実現。
    • オリジナルの 32 ビット版 Windows 起動よりも安定でセキュリティも高い。

🔌 実装の詳細・技術的アプローチ

エミュレーションと検証

  • アーキテクチャ対応: x86 / x86-64 のみサポート。
  • 浮動小数点演算: x87 ハードウェアを直接利用し、ソフトウェア側での処理を避けることでシンプル・高速・高精度を実現。
  • 正しさの検証: 差分型ファッザ(Fuzzer)を使用。ランダムな命令生成とホスト上の JIT 実行結果を比較し、エラーを検出。

ブリッジと制御

  • Win16→Win32 接続: 16 ビットハンドルをホストハンドルに対応付け、構造体レイアウト調整、データ転送を実装。
  • MCP(Model Context Protocol)連携:
    • AI エージェントが UI の DOM 構築過程を監視・操作可能。
    • イベントポンプへの合成イベント注入で UI を制御。
    • ゲストメモリの読み書きも可能。
    • Opus 5AI が MCP を通じて完全なゲームプレイを達成し、新たな「スターズ!ベンチ」の基礎となった。

パフォーマンス最適化(ターン生成速度向上)

  • ボトルネック特定: 「ターン生成」(計算処理)が主要な遅延要因。
  • リバースエンジニアリング: Fable 5.1 を用いて熱い共通ルーチン(例:L'Ecuyer MCG ランダム数発生器)を特定し、C で再実装・マッピング。
  • 結果: ターン生成速度がほぼ約 2 倍に向上。JIT の性能を手に入れつつ、複雑さを排除した実装。

I/O 処理の効率化

  • オリジナルゲームは多数の小規模な読み書き命令を直接発行しており、Win32 で処理するとターン生成時間の**約 5%**を消費(現代ではさらに悪化のリスク)。
  • 解決策: エミュレーターが I/O をバッファリングし、I/O 呼び出しの非同期化を実現。

サウンドとアセットの圧縮

  • サウンド: WaveMix.dll のインターフェースをネイティブ実装し、DLL 読み込み不要化(リリース版にも埋め込み済み)。
  • 容量削減:
    • オリジナル EXE は未圧縮アセットで約3MB
    • 「スターズ!VM」では特別設計のLZ ベース圧縮アルゴリズムを採用。
    • リリース版サイズは**元の約半分(約 1.5MB)**に抑えられ、オリジナルとの区別がつかない。

🔐 コピー保護とシリアルコード

  • 従来の制限:
    • 英数字 8 文字のシリアルコード入力必須(コピー保護)。
    • チェック失敗時のペナルティ:
      • 1 回目警告音
      • 2 回目「簒奪者」として判定され、ゲームが損傷する(例: "あなたの国民があなたが簒奪者だと疑っている")。
    • PBEM(ネット対戦)ではハードウェアシグネチャーが保存されるため、マシン違いで同じコードを使うと全員ペナルティ受ける。
  • 新機能:
    • 初回実行時に固定シリアルコードを自動注入
    • コマンドラインオプション
      --prompt-serial
      で無効化可能。
    • VM は固定ハードウェアシグネチャーを発行するため、ユーザー全員が「同じマシン」に見える→キー再利用ペナルティなし
  • 趣味の逸脱: チェック突破により面白いコードを見つけた(例:
    CLONEMUM
    ,
    CROSSNUT
    ,
    EGGSWAIN
    ,
    GHOSTKIN
    など)。

🚀 無限の可能性:フックとモディファイ

  • ゲーム内に適切な場所にフックを追加すれば、簡単なモディファイが可能になる。
  • ただし著者はエンジニア志向であり、むしろモッドラーではないという姿勢。
  • プロジェクトは週末開発ながら驚異的な成果を収め、ゲームの再活性化だけでなく、**「自分の意に任せるプレイ体験」**を実現した。

💡 遊び方とリソース

  • 検索キーワード:
    stars 4x
    または公式サイトでの詳細参照。
  • 関連リソース:
    • ゲーム内チュートリアル(包括的)
    • ウィキ、公式戦略ガイド
    • AutoHost(メールによるプレイサービス)
  • ビルドツール: ソースコードから自分でビルドしたい方は**
    w64devkit
    **が最適(必要な環境全て含まれる)。
  • ゲーム本体:
    stars27jrc3.zip
    に含まれる。

「かつて興味を持たれた方もいらっしゃるかと思いますが、今まさにプレイする絶好の機会です。」
当時の検索エンジンが存在せず、より魅力的なタイトルになっただろうと著者が語るこの名作は、現代技術によって再び蘇り、さらに快適に体験できる時代に生まれ変わりました。

同じ日のほかのニュース

一覧に戻る →

2026/09/21 2:38

サムスン電子は、HBM4 と HBM4E ドラムの生産量を 2 倍超と予測されています。

## Japanese Translation: サムスン電子は、高付加価値な HBM4 メモリ製品(第 6 世代および来期の第 7 世代バリエーション)へのシフトを強化し、高度な 6nm 技術を用いた量産が既に開始されています。総年間生産量は今年にほぼ 40% 増加して約 25 万ウェハと予測される一方、次年度には HBM4E の生産を加速させることで、特定の HBM4 製品への生産量を倍以上に増やす計画です。この積極的な拡張は、主にガラスキャリアの供給が大幅に増加することに依存しており、これは高層スタック(12 レア層以上)の重要なサポート層となります。ガラスキャリアの供給量は今年 2 万枚/月から、来期には 5 万枚/月へと増加します。結果として、HBM4 ファミリーがサムスンの総メモリ出荷量に占める割合は、現在約 40% から次年度には 80% に上昇する見込みです。この成長を持続するには、ウェーファーの歪み制御を maîtriser し、外注洗浄オペレーションのスケーリングを行うことが不可欠であり、これらがサムスンの将来のメモリビジネスにおいてサプライチェーンの調整と技術的な精度が極めて重要であることを示しています。

2026/09/21 0:18

広告収集機能により、ChatGPT は他のウェブサイトでのあなたの行動を知るようになりました

## Japanese Translation: **改善されたサマリー:** OpenAI の広告収集システムが、第三者の広告主サイトにわたるユーザーの閲覧活動と ChatGPT のアイデンティティを秘密裡に結びつけることを示す最も重要な発見は、`__obi` という専用のクッキーを利用している点にあります。この仕組みは、ChatGPT 上でアカウントのアイデンティティをバインドした JWT を生成し、標準的な広告ピクセルを通じてサイト間へ送信することで機能します。これにより、ユーザーがログインしていなくても、OpenAI はユーザーの行動をプロファイルできます。「__obi」はセキュリティ設定によりほとんどのブラウザでブロックされていますが、Android の Chrome などサポートされているブラウザでは、その独自の構成(`SameSite=None`、「HttpOnly」、特定のドメインスコーピング)によってこれらの保護を回避することが可能です。その結果、広告主はターゲティングのためにユーザーのアイデンティティに直接アクセスでき、明示的なマーケティング同意なしにスクレイピングによって収集されたフォームやページテキストから医療歴や債務の詳細など機密データを露見するリスクが生じます。公開された問い合わせを受けて OpenAI はこの問題を確認し内部審査を開始しましたが、Intelligent Tracking Prevention により iOS/Safari ではこの仕組みが機能しないため、限界が存在します。

2026/09/21 0:16

海賊フェイスがLLMモデルの削除を阻止した

## Japanese Translation: Pirate Face は、主権を持つ人工知能のための分散型かつ検閲耐性のあるインフラストラクチャを提供することで、AI アクセスを革新します。Hugging Face のオープンモデルは、グローバルピアツーピアスウォームと組み込まれたウェブシードを使用して鏡映されており、ユーザーが単一の障害点を依存する必要がないことを保証しています。モデルの完全性は、公式 Hugging Face SHA-256 ハッシュに対するチェックサム検証を通じて保証され、HTTPS リンクがダウンした場合、トラフィックは耐性の高い P2P ネットワークを介して自動的にルート付けされ、モデルは"Rescued"とマークされます。 基本的なブラウジングおよびダウンロードにはアカウントは不要ですが、貢献を追跡し、将来の利益を主張し、なりすましを防ぐ(検証済みクリエイターバッジを通じて)ために、検証済みハンドルは不可欠です。独自のモデルを追加するには、ピア専用マグネット、ピンされたリビジョン、ファイルチェックサム、そしてライセンス証拠(MIT、Apache-2.0、または Kimi-K3 の例外)を提出する必要があります。 導入はシームレスです:既存のパイプラインは `$export HF_ENDPOINT=https://pirateface.co` を設定することで瞬時に統合でき、Hugging Face やスウォームを自動的にルート付けします。ユーザーが現在、直接の公開のために Hugging Face にコピーを保持しておく必要がある一方で、独立した公開機能は将来計画されています。参加にはポイント(例:ウェルカムポイント、紹介ポイント、救助されたモデルごとに最初の検証済みハンドルにクレジットされる 25 ポイント)が付与され、アクティブな参加者向けのフリーコンピューティングクレジットや独占モデルリリースなど、今後の機能も予定されています。最終的に、Pirate Face はホスティングのシャットダウンや外部の規制に関わらず、オープンモデルへの継続的なアクセスを保証します。