PvP-AI 是我於 1990 年編寫的一款 8 位元遊戲的重製版。原版僅留下一些繪圖和手寫筆記作為痕跡。當時,為了在 8 位元平台上運行,我耗盡了所有記憶體和 CPU 資源,才勉強實現了最簡單動畫和背景下的每秒 4 影格。可惜的是,在我完成時,1990 年的經濟衰退開始影響許多產業,包括個人電腦,因此這款遊戲並未有後續發展。

幾年前,David Murray 的 YouTube 頻道 The8BitGuy 引起了我的注意,特別是他介紹的 Commander X16 retro-computer。檢視其規格後,我意識到它或許能夠運行新一代的 PvP-AI。

結果證明,模擬器表現相當不錯,幾乎能達到每秒 8.6 影格,並且擁有更多細節和更佳的 AI!這裡有一段遊戲實際運行的影片。然而,在實際硬體上……由於 VERA 模組存在線條繪製問題,某些類型的線條無法正確渲染,導致必須改用較慢的方法。最終在硬體上的表現僅為每秒 4 影格。

如果您想嘗試,可以從我的 Google Drive 下載檔案。我建議使用 x16-emulator,特別是 R49 版本來運行它。更多細節可在我的 GitHub EXPLORE 儲存庫中找到,標題為 CX16 v2 – AI Demo (a.k.a. PvP-AI)。

值得注意的是,遊戲玩法有一些獨特之處,使其與典型的 8 位元「射擊遊戲」有所區別:

這款遊戲非常適合「替代策略」,這是在與 AI 整合時可能會遇到的情況——這也引導我們進入了……

受到其他讓大型語言模型(LLM)與 8 位元系統互動的嘗試啟發,特別是 ChatGPT vs Atari 2600 Video Chess,我希望能探索 LLM 如何成功與一個簡單的遊戲互動。

與那些要求 LLM 直接解析視覺或音訊輸出的方法不同,我的方法使用了我稱之為「智慧感官」的技術。這些是結構化的、基於文字的遊戲世界表示,能夠抽象化繁重的感知任務。這讓 LLM 能夠花費更少的時間來解讀原始數據,而將更多時間用於它擅長的領域:推理狀態和規劃行動。

為此,我進行了以下調整以使遊戲與 LLM 相容:

與其他研究人員一樣,我使用 ChatGPT API(模型 gpt-4o)作為 LLM,因為它提供了強大的推理能力、穩定的結構化輸出以及可負擔的每次調用價格。我對 PHP 最為熟悉,因此我使用它作為連接 LLM 與遊戲的介面層。最後缺失的一環是實現 PHP 與模擬器之間的雙向通訊:

經過對模擬器現有功能的調查後,我能夠利用一個新的功能,目前該功能是一個正在審核中的合併請求,這完成了「鏈條」:

在啟用按需螢幕截圖並移除音效和其他非必要元素後,我擁有了一個可供研究的工作平台。出於預算考量,我還做了一項最終調整:我選擇每隔一幀調用一次 API,而不是每一幀都調用。

作為我研究的一部分,我錄製了一系列三場連續的「ChatGPT vs PvP-AI」遊戲,並在遊戲之間保留了持續的筆記。這些記錄提供了從實驗到 LLM 發展出致勝策略的有趣歷程。

關於 LLM 介面和技術設置的更多詳細資訊,請參閱我的 GitHub EXPLORE 儲存庫,標題為 CX16 v3 – LLM vs PvP-AI。

鑑於令人鼓舞的結果,對於未來的研究,我正在探索更先進的「智慧感官」,例如視覺、聽覺和平衡感。