免责声明:本人没有任何游戏开发的经验。这是一篇较长的故事。本人在itch上受到了强烈的反馈,导致6周的抑郁。但是,我决定完成这个游戏并将其发售,感谢这个社区。在分享我的旅程的同时,请忽略与AI相关的质疑!

没有引擎。没有艺术家。没有团队。不要做任何借口。

2025年11月20日,下午7点,我创建了一个名为StarVoxel Defender的仓库。隔夜,游戏就拥有了随机箱子、升级商店、触摸控制、音效、持久保存以及在Xcode Cloud中构建iOS的功能。

四个月后?一个完全发布的跨平台防御塔游戏。10种敌人。6种武器。7种进展系统。62个成就。AI生成艺术。Firebase分析。

CI/CD管道推送到TestFlight和Google Play。Game Center和Play Games集成。

21,400行TypeScript代码。76个AI生成的图片。211个提交。零雇佣的承包商。一个人。

让我带你了解这一切是如何工作的。

�備

讓我們先把這個過程說明在前面:

Claude Code(@anthropic)——我的主要編程夥伴。我負責實現、偵錯、重構、引擎移植。工作馬達。

OpenAI Codex——無人駐留來源為程式碼評審、遊戲設計探索、發布準備和——關鍵性——藝術。由CUIgen skill建構的每個視覺資產都生成了遊戲。每個sprite。每張圖標。每個商店截图。每個爆炸。

自己運行在React 19 + TypeScript + Vite作為外殼、PixiJS 8 + bitecs GPU加速2D渲染的實體組件系統、Capacitor 8為原生iOS/Android包裝、Firebase為分析和遙控配置,以及GitHub Actions為CI/CD。

沒有UNITY。沒有Unreal。沒有資源商店。只有Web技術和AI代理。

第一天:24小時內從零到TestFlight

我以npm create vite和與Claude Code的會議開始。這就是全部。

在幾個小時內:運行防御塔核心的工作版本——敵人生成和武器鎖定。隨機箱子生成並降低回報。多點觸摸控制。空間音頻。持久的遊戲狀態。 Capacitor已經配置為iOS用戶端程序。

隔天,我們開始檢視遊戲平衡和加在這個版本中的新特性。

為什麼這麼快?AI處理了腳本,讓您能夠專注於設計決策。我這樣說過:“增加隨機箱子系統,使其以降低回報的方式掉落”;Claude Code就完成了它——數學層、UI、持久層、音效連接器等一切。

這些代碼不是廢棄的代碼。從第一天起,這些都是產業品質的TypeScript代碼。

第42日:提交

2025年12月2日。一天,我發現這個工作流程與我之前的任何事情根本不同了。

我有28個開的GitHub問題——錯誤報告。平衡投訴。功能要求。質量改進。通常這些在正常工作程序中會花上至少一周的時間。

42個提交。28個問題被解決。一個日子。

調查進度重設計。巨塔鎖定優先級邏輯。光子束和水母彈武器重構。緊縮數值格式化。任務持久性錯誤。每個修正都是單獨提交的,並且有合適的問題參考。

然而,這根本不是主要故事。正確的故事是AI消除了背景切換的成本。我從任務持久性錯誤跳轉到巨塔鎖定優先級邏輯到經濟重新平衡。通常,我需要從一個任務跳轉到另一個任務中,並且需要重新設置心理模型。Claude Code在這個過程中已經處理我所有的代碼。我需要做的就是決定將事情做好。

五個引擎在130天內

這個故事沒有AI的話,無論如何都不可能。 我經歷了五種不同的渲染方法:

2025年11月——Canvas 2D。原始的實現。四個堆疊畫布以背景、實體、效果和UI佈局。它在iOS上很好。 Android性能嗎?疼痛。

2026年1月2日——Defold。我們將整個遊戲自動移植到Defold原生遊戲引擎。理論是原生渲染將解決Android性能問題。它並沒有讓複雜性重疊物化。

2026年1月15日——Phaser 3。將遊戲移植到Phaser 3。遇到了碰撞偵測和可見性問題而難以修復。

2026年2月9日——自定义WebGLBatch渲染器。建立自定义GPU加速2D渲染器。性能更好,但维护自定义WebGL管道是所有人的头痛。

2026年3月6日——PixiJS 8 + bitecs ECS。最终架构。这就是最终版本。

每種引擎移植都需要幾周或幾個月的時間。但是,使用AI進行程式碼翻譯,許多嘗試只需要幾天就完成了。錯誤的成本大大降低了,什麼是最佳化方案的實驗就變得有道理了。

这实际上是一個非常重要的区别。传统开发不能承受这种探索。 AI辅助开发可以。

藝術:沒有艺术家

整個視覺資產在StarVoxel Defender中都是透過OpenAI的imagegen能力透過Codex CLI建立的。總共76個圖像。讓我們闡明如何使用的管道因為這裡有許多趣味。

Track 1:直接生成

Node.js腳本調用API並提供一個精心炮製的指令。關鍵性?請求的資產上必須打著實體的綠色背景(#00FF00)——把傳統的綠畫屏技術應用於AI生成的資產中。AI模型無法處理透徹的背景,只能從實體的綠色背景可靠地處理。

每個指令都以一致的視覺風格前綴:

“像素藝術,16位回憶,清晰的像素邊緣,大空間主題,輻射光效,遊戲級的資產”

然後資產的細節描述:

“正確的 hex色碼以方幣的顏色進行塗裝。” “設計的描述。” “大小參數”

確切到讓重新生成資產的時候產生與整個遊戲一致的視覺的程度。後製處理完全自動:

  • 透過容差Alpha融合去除綠圖塊。
  • 自動裁剪找出非透徹空間的框架。
  • 最鄰近的縮放保留像素藝術的清晰度在精確的遊戲尺寸(2x的Retina)。

Fight Track:Combat Sprite Sheets

更加複雜。不過更棒。圖像生成工具用來生成套件照片,套件照片包含多個動畫方格——每個敵人和武器都有4個框架,方框有不同的表情。

“每個對象的sprite包”文件詳述了每個樣本在源素材中的座標處理。這個信息通過一種更好的“顏色遮罩”算法(比簡單的色彩掩模更強大)將其中一個sprite孤立,重新組合成水平方塊形狀的sprite圖片。對對象的尺寸進行標準化。

這需要人力調校。需要人查看每個AI生成的方塊,看確定每個方框是正確的。人在迴路中的類型。當這個框架看起來不合適時,這種人腦功能仍然有效。

第三種:商店發佈宣傳

最具創新的項目——6個螢幕的螢幕畫面和18張截图。程式自動組合AI生成的背景和真實遊戲素材,產生對應類型的螢幕截图。

聲音:機械生成

這裡有個趣味。有聲音是機械生成的,有些使用的是 Web Audio API。16個不同類型生成聲音。機器槍的聲音因發射速度有所不同的。位置聲音的方式變化。機械生成能夠精確控制時間和變化。這樣就能做到超越預生成的声音。