作者extemjin (extemjin)
看板C_Chat
標題[閒聊] 為啥win XP後就沒有太空彈珠台,原來是
時間Thu Aug 27 22:46:02 2026
原來是32位元轉64位元碰撞盒浮點數溢位的問題
現在看這問題某種程度算計算機常識
科技考古:為什麼 Windows Vista 後就沒有立體彈珠台了?資深工程師親曝移植內幕
https://www.techbang.com/posts/132605-why-windows-3d-pinball-disappeared-64-bit
回味下載點,這是修正BUG後的版本
z=右擋片 .=搖機台 /=左擋片 空白鍵=發射 F3=開始遊戲
https://www.groovypost.com/howto/windows-7-3d-pinball-space-cadet-game/
微軟在 Windows 2000 與 Windows XP 時代預裝的經典內建遊戲《立體彈珠台》(3D
Pinball: Space Cadet),是無數電腦玩家在沒有網路時期的童年回憶,但該遊戲自
Windows Vista 起便徹底從系統中消失。外界多年來普遍猜測是版權到期或法律授權問
題。
然而,微軟資深工程師 Raymond Chen 日前親自揭曉真相:遊戲消失的原因並非法律糾紛
,而是在開發 64 位元 Windows XP 時,遭遇了極為詭異的Bug,加上原始外部程式碼缺
乏註解,團隊在時程壓力下只能無奈放棄移植。
64位元移植爆發Bug,彈珠直接穿透發射器墜入虛空
根據科技媒體 Windows Latest 報導,微軟工程團隊在開發 64 位元 Windows XP(
Windows XP 64-bit Edition)期間,必須將數百萬行 32 位元架構的底層程式碼全面移
植至 64 位元環境。當移植進度推進至《立體彈珠台》時,卻爆發了一個難以理解的嚴重
錯誤:遊戲開始運作後,金屬彈珠雖然能正常掉入發射軌道,但在發射瞬間卻會直接穿透
彈簧裝置,甚至穿過整個球桌底部邊界直接掉出螢幕外,導致整款遊戲完全無法正常遊玩
。
Raymond Chen 與團隊同仁隨即著手嘗試修復這個嚴重的穿透錯誤,但排查過程卻陷入巨
大困境。這款遊戲的原始程式碼是由外部第三方公司撰寫,微軟內部根本沒有任何工程師
真正理解其底層運作機制。
更棘手的是,送交給微軟的程式碼檔案絕大多數完全沒有撰寫任何註解(Comments),工
程師甚至在數萬行程式碼中找不到負責處理彈珠碰撞偵測(Collision Detection)的核
心函式,也無法弄清究竟是哪一段浮點數捨入誤差(Floating-point Rounding Error)
造成物理引擎在 64 位元環境下崩潰。
科技考古:為什麼 Windows Vista 後就沒有立體彈珠台了?資深工程師親曝移植內幕
面對迫在眉睫的 64 位元 Windows XP 專案發布死線,微軟開發團隊當時手頭上仍有數百
萬行涉及系統核心穩定度與驅動相容性的重大程式碼等待移植。
Chen 指出,團隊實在無法僅為了一款休閒小遊戲,耗費數名頂尖資深工程師數天甚至數
週的時間,去大海撈針逆向工程外部無註解程式碼。在權衡專案整體交付風險與研發資源
配置後,Raymond Chen 最終只能做出艱難決定,正式將《立體彈珠台》從 64 位元版本
及後續的 Windows Vista 作業系統中剔除。
事實上,Raymond Chen 本人對於《立體彈珠台》的退役也深感惋惜與不捨。
他在回顧這段歷史時透露,自己過去在研究這款遊戲時,曾發現原始版本並未設置任何幀
率限制(Uncapped Frame Rate),導致在現代高效能硬體環境下,GPU 與 CPU 會瘋狂運
算、每秒渲染高達 100 萬幀(1,000,000 FPS),進而使處理器時刻處於 100% 滿載的高
溫過熱狀態。
當時,他特別為該遊戲手動加入了 120 FPS 的幀率上限鎖定,成功讓 CPU 佔用率直接從
100% 驟降至 1%,大幅提升了在後續系統中的運作效率,可惜該作最終仍因 64 位元物
理引擎難題劃下句點。
30年老玩家心中的不敗神作
《立體彈珠台》最早於 1995 年正式發行,由 Cinematronics 操刀開發、知名遊戲大廠
Maxis 發行,其完整商業版本《Full Tilt! Pinball》一共收錄了 3 張各具特色的彈珠
地圖(包含太空軍校生 Space Cadet、海盜尋寶 Skulduggery 與巨龍要塞 Dragon's
Keep)。微軟隨後取得了人氣最高的「太空軍校生」單一關卡授權,並將其作為亮點功能
包裝進 Windows 95 的 Microsoft Plus! 擴充包內,隨後更一路成為 Windows NT 4.0、
Windows 2000、Windows ME 與 Windows XP 的標準內建遊戲。
儘管隨著作業系統全面跨入 64 位元時代,這款陪伴全球數億辦公族與學生度過斷網時光
的經典神作走入歷史,但其獨特的音效、炫目的光影與巧妙的任務晉級機制,至今依然是
許多玩家心中無可取代的科技鄉愁與時代印記。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.36.233.14 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/C_Chat/M.1787841965.A.6A5.html
推 tonyxfg: 其實如果微軟不要了的話,把遊戲公開程式碼,應該最遲一 08/27 22:49
→ tonyxfg: 個月內就有熱心民眾將bug修掉了 08/27 22:49
推 mc3308321: 這遊戲有破關或是完成任務之類的嗎? 08/27 22:51
→ spfy: 最後一段有提到 Win裡面的只是一套完整遊戲的單一關卡授權 08/27 22:52
→ spfy: 版權不在微軟手上吧 08/27 22:53
→ ainamk: 微軟只有移植那一關到windows系統裡的授權 不能亂搞XD 08/27 22:58
→ lazioliz: 重寫一個不就好了有那麼難嗎 08/27 23:01
就說了微軟沒有原始碼,因為那是第三方公司的
※ 編輯: extemjin (114.36.233.14 臺灣), 08/27/2026 23:03:24
→ ainamk: 是沒有那麼難只是微軟不想幹XD 08/27 23:03
推 levelesin: 為啥不請第三方搞,比自己工程師硬幹省錢吧 08/27 23:04
→ spfy: xp 64bit也是超級雷的版本 它們那時候應該很多坑吧 08/27 23:04
→ spfy: 應該沒時間搞這個 後來可能直接放棄了 08/27 23:04
→ ainamk: 講白一點這個做了也不會讓你多買幾套windows 何苦呢 08/27 23:08
推 S2357828: 阿他們現在好像挺閒的 不能重弄一個嗎? 08/27 23:22
推 abccbaandy: 就不想花錢啊,想也知道,屎山代碼沒ai根本沒人想碰 08/27 23:55
推 miyazakisun2: 沒有註解的狗屎程式 就讓他死去吧 08/28 00:03
推 kusotoripeko: 希望有天重見天日,話說版權誰的 08/28 00:22
推 Oswyn: 原廠多半有註解版本 但拿掉了 不想給下遊 08/28 00:48