一個瀏覽器里的極簡游戲,要求你在30秒內連續做出反應——每6秒鐘,屏幕上會跳出一句詩意的短句,可能是正午陽光的咒語,也可能是午夜暗影的低語。你要做的是,在倒計時結束前瞬間判定它的“光明或黑暗”屬性,然后拖拽或者撥動一個能量核心,讓它對準正確的象限。這么刺激的節奏,你受得了嗎?
這就是“Solstice Sync”,一個為六月至日主題游戲Jam提交的作品。它的規則相當直白:屏幕正中有一個可以旋轉的同步核心,左邊是刺眼的金色光暈,右邊是沉靜的靛藍暗域。系統每6秒推給你的,并非干巴巴的判斷題,而是一句從Gemini 2.5 Flash模型實時生成的詩行——比如“陽光燒穿了整個午后的寂靜”,或者“影子拉長成夜的第一聲嘆息”。你必須把核心扭到對應的一方,每次成功都會累積同步分數,而如果猶豫哪怕一秒,后面連續到來的提示就可能讓你徹底亂掉陣腳。
![]()
這種“每6秒一個全新謎面”的機制,本質上把玩家的注意力撕成了兩條線:一條盯著右上角每秒跳動的倒計時,另一條則要快速理解剛剛出現的那句AI文本。為了讓這兩條線不打架,開發者用React 19的useRef鉤子,精準地拆開了兩個獨立的計時循環——一個負責每秒刷新的倒計時渲染,另一個負責6秒一次的內容輪換。結果就是,當新的提示彈出時,倒計時依然穩穩地走字,不會因為UI重繪而產生延遲或者抖動。你看到的每一秒跳動和每一次謎語刷新,都像是兩個完全同步的鐘表在協同運轉。
但AI并不總是靠得住——尤其是在瀏覽器里直接調用遠端API時,CORS攔截、網絡抖動、接口限流都可能讓實時生成的提示瞬間消失。這個項目顯然考慮了這一點。代碼里埋了一個包含16條預寫謎語的回退數組,全部圍繞光與暗的意象手工編排。一旦檢測到Gemini的請求被阻止,引擎會立刻在catch塊里拉起本地數組,隨機抽出一條繼續游戲,玩家幾乎感覺不到切換。這意味著無論你是在本地開發環境、公共Github Pages,還是在網絡受限的會議中心,游戲都能100%跑通,絕不會出現“等著AI回答,結果倒計時走完了”的尷尬。
這種彈性設計其實折射出一個挺現實的產品思路:當生成式AI成為交互內容的核心構件,你必須有“離線也能玩”的方案兜底。Solstice Sync沒有讓Gemini變成唯一的依賴,而是把它當成錦上添花的動態敘述者——網絡順暢時,AI就是那個出口成章的天體詩人,同一道“光明”提示可能給出二十種不同版本;而一旦失聯,本地謎語立刻補位,照樣能交付完整的游戲體驗。這讓整個作品的測試成本極低,也避免了評審時因為網絡問題被扣分。
UI設計上,它完全走了一條暗色終端路線。背景用#0F172A和#1E293B這兩種藍灰色塊鋪開,信息區域被切成方形面板,配上霓虹綠的指示燈和顫抖的光暈效果,看起來就像某個用來監控恒星活動的黑客工具。同步核心本身做成了粗糙的發光圓環,旋轉時拖尾的殘影會讓整塊界面透出一股90年代Cyberpunk街機的味道。這種刻意簡陋的視覺,反而把玩家的注意力推向了游戲最核心的張力——讀詩,然后快速抉擇。
把Gemini 2.5 Flash當“游戲里的詩人”,這個用法相當輕巧。在本地運行時,模塊直接調用@google/genai SDK,用零樣本提示讓模型生成詩意的“光/暗”陳述,不依賴任何硬編碼文本庫。相當于每一局游戲的內容,都是AI現場編出來的。同一個玩家連玩三次,可能第一次遇到“宇宙融化在光的洪流里”,第二次則是“黑夜折斷了最后一道光線”,永遠不會重樣。這背后其實是在驗證一個小眾但值得關注的方向:我們是不是可以把大語言模型,直接當成游戲關卡里的實時臺詞生成器?
當然,Gemini在這里的角色還不是“智能NPC”那種深度參與,更像一個受控的旁白——它只是在固定的時機,向玩家拋出一句需要分類的詩。但這種模式足以打破傳統謎題游戲里“玩三次就背熟所有題目”的咒語。當謎面的源頭變得無窮無盡,重復可玩性就被拉到了一個全新的維度。而且因為不需要提前準備大量題庫,開發者的工作量也大幅降低,只需要設計好規則、對齊邏輯和視覺反饋,內容部分完全交給AI去即興發揮。
從技術實現看,整個前端直接跑在React 19上,用Vite打包,能享受到極快的模塊熱替換和編譯速度。狀態流轉全部靠useState和useEffect,沒有引入外部狀態庫。得分計算、倒計時、同步判斷這些核心邏輯,都被收斂在幾個干凈的自定義hooks里,讀起來像一篇短小的技術散文。而那些“1秒心跳”和“6秒輪換”耦合的細節,因為用了ref,代碼里甚至看不到明顯的定時器嵌套,只看到兩個相互獨立的節拍器通過ref悄悄握手。這種寫法對性能
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.