晚上,王秋陽回到公寓的工作間之後,馬上開始投入到Hack綠色兵團的工作中。今天是星期五,明天后天正好休息,王秋陽可以利用這段時間盡快的完成這項工作。
因為星期一,學校就結束了假期,正式上課了。把準備工作做好,之後的事情就相對容易許多。因此對於Hack這款遊戲,王秋陽已經打了腹稿。
他現在要做的,就是把綠色兵團的源代碼抄錄出來,寫好Hack的劇本。
王秋陽並不對遊戲內容作大幅度的刪改,更不會破壞遊戲本身的玩賞性。他要做的只有兩件事,一是增加遊戲畫面的發色數,讓視覺描述更具體。
而在這之前,王秋陽要完成遊戲卷軸的編寫。因為這款遊戲是在磁碟機上開發的,采用的是翻頁描述,不同於卡帶上的橫版通關。當然這難不倒王秋陽。
王秋陽原本就Hack過這款遊戲,對於FC的卷軸設定也有相當的了解。FC的卷軸並非是完整的一大片,為了節約容量,它真正顯示的卷軸隻存在於屏幕背景而已。
遊戲能夠移動的角色由Sprite(精靈)構成。當玩家操控的角色移動到需要切換背景的位置時,背景的切換有兩種模式。
一是直接變更場景,也就是過關模式。這一點勿須修改,磁碟機的每一個場景都是自動切換。王秋陽只需要把這些切換點標注下來,無論是小關還是大關,保留原有數據即可。
而第二種,就是任天堂獨有的滾屏技術。滾屏分為橫向和縱向兩種,當然也包括斜向滾屏,比如由開發的打灰機遊戲B計劃。
滾屏能夠在遊戲角色移動到指令區域時,屏幕頂端提前寫入兩行背景,取代尾端寫出的兩行背景。彼此交替之下,造成背景在不斷前進的錯覺。
某些盜版卡帶沒有注意到這個設定,所以人物在前進的時候背景並沒有移動,給人一種原地踏步的感覺。因為實際上,遊戲人物真的就是在原地踏步。
而綠色兵團這款遊戲,是橫版通關遊戲,Hack到卡帶之上需要左右滾屏。當然有些關卡也包括上下滾屏。所以磁碟機上的部分背景需要重新調配一下位置。
FC卡帶屏幕分為四個圖層,最底層是背景底頁。之後是背景頁,共有四幅,可供隨時切換。再上面一層就是卡通頁,是Sprite構成的角色活動圖層。最頂層是背景前頁,它能夠遮擋住所有圖層。
王秋陽將磁碟機上的背景一一標注,分門別類。如此一來,就可以解決卷軸的設定,這款遊戲如果燒錄到卡帶上基本上就是卡帶版的綠色兵團。
當然這只是開始,下面要做的才是重頭戲。王秋陽要給遊戲增加色號了。
傳統的FC遊戲,因為發色數太低,遊戲畫面的描述能力往往達不到預定要求。人物形象過於抽象,背景圖案更是給人一種簡陋,甚至荒涼的感覺。
因此王秋陽果斷先給人物增加了幾種色號。首先用接近黑色勾邊的深灰階00色號,在必要的位置取代黑色勾邊,達到柔光效果。
然後,再用給人物的膚色,衣著分別增加一款漸近色。比如1P的衣服是藍色,就增加一款淺藍,在細微的地方描述。這樣人物的形象就能夠多一點立體的感覺。
2P的衣服是綠色,就增加一款淺綠。同時1P的皮膚漸進色較淺,用的38色號,2P的皮膚漸進色較深,用的36色號。如此1P和2P的形象就鮮明,
獨立了許多。 角色完成,王秋陽用去了五種色號。接下來,就是增加背景描述,理論上能夠新增的色號只剩下六種。但實際上也能夠從剛才使用的五種色號中選取合適的來使用。
這是一項大工程,不光要懂得匯編制圖,還需要有一定的繪畫能力。比如天空,房屋,基地,道具,用哪一種色號增加勾邊,哪一種色號作為漸進色,不能亂堆。
背景增色完成之後,就是為反派角色進行潤色。同樣以每個角色增加三個色號,用於勾邊,漸近,炫染。這些色號將從新增的十一個色號中酌情選取。
最後,就是為其他附加內容進行炫染。比如顯示遊戲狀態的字母,數字,提示一類。同樣給字母增加勾邊,漸近,然後加上打底,讓字母更加明晰,立體。
完成這些工作之後,已經到了凌晨四點。
王秋陽小睡了幾個小時,天亮之後很快恢復了精神,開始下一階段的工作。
之前做的,隻算是劇本。接下來才是工作的重點,就是把劇本製作成可以燒錄到ROM之中的chr文件。在這個過程中,可能很多地方要做出相當的改動。
FC遊戲的畫面構成,有相當的限制。
首先因為機能有限,它不能像電腦那樣隨心所欲的顯示已知色號。6502匯編對於畫面的構成,采用的是cell匯編方法,稱為細胞色號匯編。
匯編時先以網格將頁面劃分,能夠看出它是256X240像素,稱之為像解度。
屏幕則被分割成32X30,一共九百六十個cell(細胞),其中每個pixel(像素)用2bit來儲存色彩,這樣每一個cell可顯示四種顏色。
如今王秋陽釋放出了十一種顏色,但一個pixel依然只能用2bit來儲存色彩。這就是說同屏發色量達到了二十四色,但同掃描線依然只能使用十三色。
這就是一個考驗匯編者邏輯能力的時刻了。如何在這樣的限制下盡可能的將劇本表現出來,不是匯編命令記得熟練就行,它更需要對遊戲畫面理解的天賦。
王秋陽明顯是具備這種天賦的,他的劇本在網絡線下,絕大多數都符合這個規則。剩下不符合規則的,也只需要稍適修改,而且並不影響畫面的整體效果。
保證了二十四色同顯,然後確定了每一條橫,縱掃描線上的發色量又不超過十三。接下來,就是細化到每一條掃描的cell之上,對它們再做精細的分類。
綠色兵團的ROM-chr容量只有60KB,很多cell都是重複使用的,比如王秋陽正在繪製的這片鐵絲網背景。它其實是由許多相同的cell拚接而形成。
王秋陽要盡可能,將能夠重複使用的cell修改出來,而且在總體上不能影響畫面。比如底部的邊界,其實是頂部邊界的倒影。右邊的邊界,其實是左邊邊界的鏡像。
FC的製作人,需要節省每一個字節的容量。