大家好啊,這裏是一個想做遊戲但是由於沒什麼做遊戲的經歷導致沒有公司願意要我去實習只能一個人蹲在寢室裏做遊戲的苦逼大學生,目前距離上一次更新已經過了差不多一個月了,雖然在開發日記上鴿了點,但是系統我還是在認真寫的,今天就和大傢伙說說這一個月以來的開發進度。
現在已經開發了三個月左右了(沒想到居然這麼長時間沒做整理),其實我一直在嘗試很多新的東西,比如換用Poe平臺來寫代碼,因爲目前的Claude封號比較嚴重,幾乎是開一個號就封一個號,導致原先的賬號幾乎用不了了,所以我也一直在尋找Claude的替代品,包括測試了Gemini 2.5以及Poe平臺等,重新置辦了一條可以規避Claude的工作流。
除此之外,由於這一個月以來的開發內容非常龐雜,而且中途有很多卡頓的地方,導致我有時候紅溫得厲害,加上做的系統也越來越大,所以寫開發日誌就沒那麼簡單了,還是蠻費時間的。(我記得我上次說要做地圖設計了來着,但是看起來還得再推遲一段時間2333)
目前的開發進度以及項目進展中遇到的困難:
1.揹包系統究極Plus+很多雜項的問題修復
(1)揹包系統超突破
在上一次日誌當中,我們已經完成了角色揹包的基本所有功能,但當時的效果顯然不是我想要的,實在是有點醜得難以直視
第六週的比較殘念的揹包系統,像是用水泥做的
所以在揹包系統完成之後,我們的首要任務其實是儘量讓目前的UI變得更好看一些,至少需要讓AI幫助我們寫一個UI框架,用於接管現有的揹包繪製窗口,這樣就算AI沒辦法自己做出好看的UI,我們也可以親自用手繪的方式去繪製UI。
不過由於RPGMAKER並不是一個在UI上有很強的可視化編程功能的引擎,所以如果到時候真的要一點一點畫+對其UI,其實會非常麻煩,所以我打算直接讓AI幫我生成一版更加強大的UI看看效果。
當時的揹包系統插件集合
我有信心讓AI直接幫助我們生成UI的關鍵在於我們曾經做好的系統結構,由於我們採用了分模塊分功能的方式來編寫插件,所以實際上最主要的功能區塊和窗口繪製區塊實際上都是由單一的核心插件來管理的,所以讓AI讀取窗口繪製方式時,我們只需要把核心的插件交給它們就可以了,比如上面提供的這麼多插件,實際上需要AI瞭解的主要功能系統就只有R4B_Core以及R4B_CharCard_Window這兩個插件,這給後續修改AI的UI美化插件提供了很多便利。
目前的揹包UI效果,和原本的UI圖差距還是挺大的
從結果來看,AI生成的效果其實還是非常不錯的,當然這絕對不是第一次就可以生成這樣的效果,其實中間起碼讓AI重新寫了五六遍才達到這個效果的一半樣子,但是我當時沒有把失敗案例記錄下來,所以就只給你們一張最後已經完工的效果圖作爲演示,不過就根據這個的測試結果,我可以說對於各個AI有了更深的體會:
1.Claude最擅長寫UI和美化,但是很容易出錯。實際上,幾乎所有能看的UI效果都是有Claude3.7本體給出的,其他AI給出的效果簡直慘不忍睹,尤其是Cursor,雖然其有Claude Max的加持,但是實際結果看下來Cursor的Claude好像就完全不懂該怎麼做UI一樣,做出來的效果很單薄。Cursor反而在修復Claude給出的UI插件的問題上發揮的還可以,因此我後續採用的方針都是先讓Claude出一個比較精緻的UI插件,然後讓Cursor去修復錯誤。如果後續結果不太滿意,那麼讓Claude重新再寫一個即可。
2.讓AI寫UI美化插件一定要注意優化和調整問題,Claude雖然寫得一手好UI,但是它的問題在於很多時候控制不住自己的手,老是喜歡在後面加一些有的沒的,我理解不這麼幹就寫不出複雜的UI,但是有時候它的效果會一言難盡,比如導致遊戲根本進不去,揹包非常卡頓或者某個光暈效果大得嚇人,所以很多時候需要你不停地人爲干預。
我的體會就是開頭一定要把要求寫得詳細一些,包括要預渲染和緩存貼圖,同時在主題上只需要給AI一個比較寬泛的主題,比如賽博朋克之類的,AI就可以發揮了,如果實在不行可以讓ChatGPT幫我們生成一個UI效果圖,然後讓Claude去參考,總之就是儘量不要把AI的行爲框的太細,給AI一些自由創作的空間,它才能寫得更好。
ChatGPT的UI預覽圖
不僅如此,AI寫完美化插件之後,還需要檢查一下UI的效果好不好,因爲Claude也經常會產出一些廢掉的插件,有些時候這些大型美化插件會有3000到4000行代碼之多,出錯的概率是很高的,我一般會選擇讓Cursor修復兩到三遍,如果即便是這樣還出錯,那就直接讓Claude重寫算了,如果最後發現UI效果不太滿意,建議也直接讓Claude重寫,因爲讓Claude改一個大型UI插件的細節是比較困難的,不好把控。
3.讓AI多提供一些自定義參數。這個其實是非常關鍵的一步,AI其實完全不知道你的UI是怎麼拜訪的,它很有可能會把放在頂上的UI挪到最下面,這個時侯如果你想要通過口述指導AI去改正這個問題,真的又麻煩又費力,不如直接讓它把這個UI的位置變爲自定義參數,這樣你就可以直接自己去調整UI位置,這個不僅僅是位置之類的,包括顏色、大小,最好都要讓AI寫的時候先提前設計好,這樣就算AI腦袋抽了把UI放歪了,你還能自己去修復。
非常詳細的自定義參數設置
當然這個UI效果差不多花了我整整三天時間才調教出來,包括讓AI修改,增加自定義顏色之類的,中間真的遇到不少問題,不過好的地方在於我們在通過Claude生成出一版真正還不錯的UI之後,後續去美化角色卡片以及分頁欄的位置就比較方便了,因爲最主要的UI的繪製方式已經定了下來,所以後續編寫其他細節的UI沒有遇到太多的問題。
分頁欄
角色卡片框
(2)一些雜項問題的修復
在製作揹包的時候,我們還遇到了不少小問題,比如角色卡片的心電圖效果會不停地疊加且不會清理,結果導致遊戲只要運行十幾分鍾就一定會自動崩潰等問題,加上插件模塊相互依賴,改起來很麻煩,必須一個一個謹慎地修復,花了我非常多的時間,這一個月幾乎有半個月都在修BUG,但這個過程並沒有特別多的技巧,就是把問題提供給AI,然後讓AI去幫助你修復這些問題。
在這個方面,Cursor(Claude模式)和Gemini我都覺得挺不錯的,Cursor最好的地方在於不需要你自己去編輯代碼,由於我後來發現Cursor每個月的Claude3.7慢速調用居然是不限次數的,所以用它來修復插件也比較頻繁,但它的缺點在於很意識流,不一定真能找出引發問題的代碼部分,所以很多時候它都比較喜歡寫一些預防和檢測的方針來防止問題發生,這不是一個很好的解決方案,畢竟問題代碼仍然擺在那裏。
Gemini的好處在於它比較理性,邏輯很強,梳理代碼結構比Claude要清晰,Claude很可能就看一眼,反正它的深度思考邏輯鏈裏從來不會真的把代碼都看一遍,但是Gemini的思考鏈裏是真的把代碼都過了一遍才輸出的,這讓我感到很意外,所以如果遇到Cursor寫個半天都解決不好的問題,最好自己上+Gemini輔助,一點一點找到問題的關鍵點會更快一些。
2.戰鬥系統大增強
由於通過不斷地調教AI,我們終於獲得了一個還算不錯的角色揹包系統,此時我覺得是時候去完善下一個遊戲的核心部分了,就是遊戲的戰鬥環節,由於我們之前一直在製作角色揹包系統,所以從實質上來講,我們目前的戰鬥系統還是一個非常普通的RPGMAKER回合制戰鬥,雖然我們使用了VisuStella的戰鬥核心插件,但這些插件基本上都是對於原有系統的補強,並沒有起到真正的異化,所以戰鬥看起來蠻平庸的。
基於我們製作的遊戲的參考對象——《恐懼與飢餓系列》來看,我們仍然會採用RPGMAKER原始的回合制戰鬥方法來設計戰鬥,但是在這個基礎上對於原版的系統做一些革新和增強。
《恐懼與飢餓》的戰鬥效果
我最後選擇改進的效果有三個部分:
1.戰鬥臨場感——加強戰鬥攝像頭的效果,包括打擊感、鏡頭感。給RPGMAKER的場景效果增加攝像頭的感覺,讓地圖場景和怪物看起來更加立體,給玩家帶來更強的壓力
2.精簡UI,我在原先的測試過程中,一直覺得系統默認的UI效果很擋視野,在恐怖生存遊戲當中,過多的UI會削弱玩家對怪物的感知,所以我希望隱藏原先的UI,製作一個和揹包系統一樣精簡的UI效果,讓整個場景看起來不會太臃腫。
3.戰鬥策略性,除了畫面、UI上要進行革新之外,最重要的玩法部分也需要強化,我在這裏參考了暗黑地牢的壓力值系統以及最近新出的33號特遣隊的UI效果,新構思出了一個以角色本能爲基礎的戰鬥系統(在這裏不會細講)
確定完我們需要更新的部分,接下來其實就是一步步寫代碼了,但是首先我比較喜歡先把這些要求交給ChatGPT進行整理,因爲這三個部分要分爲增強戰鬥系統的三大功能模塊,所以最好提前整理清楚需求,再交給Claude寫
ChatGPT按照我的要求構思出的UI草稿
當我們把需求都整理好了之後,是時候把需求交給Claude了,還是和編寫揹包系統時一樣,由於Claude在代碼編寫上是老大哥,所以先讓它負責一個系統的核心模塊的編寫,然後再讓Cursor去對局部進行修改和增強。
目前的戰鬥增強插件系統
目前的UI(小人還是系統默認的樣子)
這塊部分是上兩週的成果,同樣在這個過程中我們經歷了多次的修改重構,其中我遇到最複雜的問題就是怪物貼圖閃爍的BUG。
這個BUG會導致怪物死亡之後,其原本的貼圖還會在原地不停地閃現,本來這一點我們是直接通過檢測+實時清除去解決的,但是這樣會導致一個非常麻煩的問題——怪物死亡動畫消失了,由於怪物死亡之後就會被立刻清除,這導致怪物死亡的動畫完全不見了,結果就是看起來非常僵硬,怪物被擊殺後像是直接消失了一樣,雖然讓Cursor去重新寫一個死亡動畫效果,但是問題在於我們的遊戲有連鎖死亡機制等非常複雜的死亡效果,
這些效果如果交由RMMZ原系統去實現並不難,但是如果要通過自制的死亡動畫去實現,那簡直難到家了。那兩週我因爲這個問題紅溫了好幾次。如何要在革新了原有的戰鬥系統的情況下保留敵人死亡的效果呢?我也不清楚,只能一步一步根據自己的猜測去測試。
這時候問題又來了,由於我們的編寫方式是分模塊一步一步寫的,最後就像壘磚塊一樣,一步一步壘高,而我們發現這個問題的時候,整個系統已經完成一大半了,而最主要的核心繫統嵌套了好幾層,沒有辦法,想要從根源解決問題,我們就必須先回到核心系統,把後續的所有功能先取消了,然後一步一步進行測試,看看問題在什麼地方。好在我們的模塊比較清晰,雖然中途Cursor一直在犯毛病,但是我們最後還是成功把問題發生的地方都修復乾淨了,這種感覺就像是我以前玩老滾5的時候裝MOD出問題瞭然後不得不一個一個去排查一樣。所以系統最好不要留到最後再修改。
最後的實機演示部分+後續的計劃和自言自語:
對於演示感興趣的可以看看我B站的視頻。
第八週進度演示:
第九周(目前)進度演示:
後續的計劃:
目前經過三個月的鋪墊,我們的遊戲核心部分算是真正地大功告成了,雖然比預計的要晚了一個月左右,但是我們已經盡力把目前的遊戲系統做到完善了,基底打得比較紮實。後續進行內容製作也會更加放心,我接下來就會開始關卡製作以及怪物製作,就是後續美術部分會相當花功夫。可能會畫斷手咯。
最後我要留一些自言自語的環節,只能說世事變化得太快,趕上經濟下行的時代,我其實原本對於遊戲製作沒有很多的實感,但是這次手操三個月給我帶來了很多思考,當然,其實我還是很害怕的,因爲我製作的是恐怖遊戲+生存遊戲,這樣的遊戲品類很小衆,加上現在大環境不好,我這樣做多半就是在自討苦喫,不如早點去遊戲二三線廠打工謀求生計。最近小高老師的負債問題也讓我很受震撼,我以前一直是彈丸論破的粉絲,覺得像小高和剛這樣日本比較知名的製作人,遊戲至少能有出路,有人玩,沒想到連他老人家現在都要親自拉下臉來到處進行古法宣傳了,非常感慨,很多時候我會反思自己到底在做些什麼,爲了什麼要做遊戲,但是我真的不敢給自己答案,因爲害怕自己不配得到那個答案,我本身也不是什麼天才,記性也不大好,未來也不一定真的會在遊戲行業留下自己的名字,那麼我做這些事的意義在哪裏呢?好吧,咱不胡思亂想了,我希望我的作品最後能有個結果,不論好壞,也算是我大學對遊戲理解的總結吧。
更多遊戲資訊請關註:電玩幫遊戲資訊專區
電玩幫圖文攻略 www.vgover.com