Fork me on GitHub

Community

在 Twitter 上追蹤 @notch@0x10cc

你也可以追蹤本站的幕後藏鏡人 @Mayeu :)

關於本站

這個網頁是非官方的 faq,與 Notch 或 Mojang 並無任何關連。

每一個問答後面都會有我找到相關訊息的連結。

最後請注意,這裡的問答都只能代表專案的「目前狀態」(甚至還沒進 alpha),隨時都可能有變化。

翻譯此網頁

其他語言: de / en / fr / nl / pt-BR / zh-TW

歡迎你協助更正訊息或增加翻譯。 github

最新的 10 項問答

0x10c 會跟 X 系列一樣硬派嗎?

不確定

這顆 CPU 有 LLVM back-end 嗎?

我個人有寫個組譯器給自己用。這東西有些毛病,不過我用的很開心。有些人已經開始動手做 LLVM back-end 了,你可以在 github 上看到他們的進度。

如果我沒弄錯,DCPU 沒有 [SP+literal] 指令? :(

目前沒有

Will you be keeping the polycounts around the same as back then or will that be one area you take liberty with?

只要看起來是 low-poly 風格我就滿意了。

坦白說...Elite II 看起來滿醜的。

現在看是很醜,不過以當年來說可是超華麗。

我在 80 年代中期的 BBCB 電腦上玩過 Elite,遊戲會有 3D 線框模式嗎?

我正在考慮要加入線框模式 ;)

你給無貼圖遊戲範例是 Frontier - Elite II,但這款遊戲在行星跟船艦表面有用上貼圖阿(雖然是低解析度的)

是的,行星表面有用一些貼圖,不過我打算用*更多的多邊型*來處理這個問題。

所以不會有 stripes 或是船艦塗樣了?船舷也不會有船名!? :O

當然會有船名跟船艦圖樣,但是都是多邊型。

但是你的虛擬螢幕要用到貼圖吧。

是的,而且可能還會有某些特效用到。不過大體上看起來會是無貼圖的風格。

這是視覺風格的決策還是技術決策?

視覺風格,我想抓住那種「這是我們在 80 年代想像的未來世界風」的感覺。此外,Frontier: Elite II 也是這樣。

遊戲

0x10c 是怎樣的遊戲?

0x10c 是一款 Elite-like 的太空模擬遊戲。遊戲中你能夠戰鬥,貿易,打劫,採礦....等等。

背景故事是?

在一個太空競賽沒有停止的平行世界中,太空旅行在企業與有錢人中開始流行起來。

在 1988 年,一款新的人工睡眠艙問世了。他能與當代熱門的 16-bit 電腦相容。很不幸的是,人工睡眠艙的控制使用 big endian,而 DCPU-16 個規範則使用 little endian。這造成一連串驅動程式的錯誤,原本預定執行 0x0000 0000 0000 0001 年的人工睡眠會持續 0x0001 0000 0000 0000 年之久。

現在是西元 281 474 976 712 644 年,而我們的太空迷航者醒來時看到的是個瀕臨滅亡的宇宙。遠方的銀河都因為強大的紅位移(red shift)而消失,星座也已變了樣,巨大黑洞佔據了銀河系。

遊戲中我能做什麼?

價格是?

價格還沒決定,應該會有單人遊戲模式。而線上連線模式會有月費,因為就算你在離線的狀況下還是繼續在模擬船上電腦的執行。

啥?要月費?但但但未來是免月費也能玩的時代阿!

「免費玩」是個幌子

幹嘛這麼早公布要收月費 :'( 我想留在一切都不用錢的夢世界裡面 :'(

早點讓利空出盡

會有 Minecraft 那樣的 alphy 階段嗎?

Logo圖案是?

用目前的試做遊戲引擎在遊戲中繪製出來的。

有可能架設自己的 0x10c 伺服器嗎?還是只有一台巨大的中央主伺服器?

還不知道!

能夠設計建造自己的船艦嗎?

可以

我跟我朋友能夠搭乘同一艘船嗎?

可以

這款遊戲適合作為教育用途嗎?

我希望

遊戲中會有不同種族嗎?如果有的話,他們能夠「親密接觸」嗎?

嗯...從演化的角度來說,不太可能。

有考慮到船艦的工程部分嗎?像是維修船殼引擎等等。機械維護會不會很難上手?

希望有。而為了遊戲性的考量,會有一小段時間你能用大力膠帶修理任何東西。

遊戲會有行星表面的部份嗎?

遊戲會有行星表面的部份。

#0x10c 會支援 unicode 嗎?

會,但 DCPU 不支援。

解釋一下「免費玩是個幌子」的意思嗎?

Y從名字就是個幌子,遊戲開發者其實賺了更多錢,雖然號稱是免費玩。

遊戲中的死亡機制是?

遊戲中死亡表示你(和你的船)會立即重生。量子永生!你會活在一個完全相同的平行宇宙中,而不是完全沒有死過。

0x10c 會跟 X 系列一樣硬派嗎?

不確定

畫面

這款遊戲會是船艦內第一人稱,或是畫面可以縮放到船艦外?

船艦內第一人稱。

畫面風格是?像是 EVE 那樣的寫實風格嗎?

畫面會很簡單,非常簡單。遊戲不會有貼圖,你會看到硬板板的多邊型加上現代的打光效果,但沒有貼圖(只有很少的例外)

所以沒有漂亮的星星跟行星嗎? :(

星星跟行星很漂亮

這是視覺風格的決策還是技術決策?

視覺風格,我想抓住那種「這是我們在 80 年代想像的未來世界風」的感覺。此外,Frontier: Elite II 也是這樣。

但是你的虛擬螢幕要用到貼圖吧。

是的,而且可能還會有某些特效用到。不過大體上看起來會是無貼圖的風格。

所以不會有 stripes 或是船艦塗樣了?船舷也不會有船名!? :O

當然會有船名跟船艦圖樣,但是都是多邊型。

你給無貼圖遊戲範例是 Frontier - Elite II,但這款遊戲在行星跟船艦表面有用上貼圖阿(雖然是低解析度的)

是的,行星表面有用一些貼圖,不過我打算用*更多的多邊型*來處理這個問題。

我在 80 年代中期的 BBCB 電腦上玩過 Elite,遊戲會有 3D 線框模式嗎?

我正在考慮要加入線框模式 ;)

坦白說...Elite II 看起來滿醜的。

現在看是很醜,不過以當年來說可是超華麗。

Will you be keeping the polycounts around the same as back then or will that be one area you take liberty with?

只要看起來是 low-poly 風格我就滿意了。

電腦

船上的電腦系統大概會是怎樣?

遊戲中會完整的模擬船上的電腦,執行功能完整的組合語言。詳細規範在此

關於 CPU?

CPU 叫做 DCPU-16,是一顆 16-bit 的處理器。

聽起來好宅,一般人類(不會寫 code 的那種)能夠享受這款遊戲嗎?

我是這麼希望的 :)

玩家能夠使用別人的程式嗎?

遊戲中只有 DCPU-16 這顆 CPU 嗎?

目前是這樣沒錯。

你要如何阻擋病毒程式?

我不會擋,玩家得自己想辦法。

遊戲中模擬的電腦會扮演吃重的角色嗎?沒那麼會寫程式的人能夠玩嗎?

一但遊戲中有程式可用了,玩家就能把他們的遊戲中電腦當成一般電腦用。

DCPU 能夠控制通訊嗎?想像一下 DCPU 分散式處理,P2P,或中央網路,遙控船隻,電子戰...等等

就是這樣!

一艘船會有一顆以上的 CPU 嗎?

是的,一艘船有三顆 CPU 應該是個合理的數量。

0x10c 裡面會用哪種軟碟片?

目標是 1.44 MB 的三吋半軟碟。

電腦的能力

CPU 速度是?

目前目標是 100 khz。

我能用你的 16-bit 處理器做一個能追蹤 IP 的 GUI 程式嗎?

可以的!

CPU 在遊戲中能夠透過某種網路彼此串聯嗎?

會有能做高階 coding 的 OS 出來嗎?

大家得自己想辦法寫 ;)

玩家有可能寫出能影響其他玩家船隻的惡意程式嗎??

可以的,這是功能正常完整的電腦。

遊戲裡面,程式要如何載入到 DCPU-16 的記憶體中?

首先要有人寫出 loader ;) 遊戲裡面會有軟碟片或 radio array。

有考慮做遊戲內的程式賣場系統嗎?

當然。玩家也可以自己搞一套。

我能用船上電腦在採礦時玩毀滅戰士嗎?

嗯,或多或少,可以。

宇宙,遊戲難度,遊戲內物理等等

我們會看到即時預算的光學物理嗎?這可是硬科幻遊戲必備的。

如果你指的是黑洞造成的重力透鏡,我希望有。如果跟遊戲的視覺風格能搭的話。

我是指光線從某艘船艦上面反射,到船艦上的偵測器偵測到的延遲時間。

我會為了遊戲性讓步,我說的硬科學不包含那些不直覺的部分,而不是完全理論正確的。

所以硬度等級是?2?3?10?

看你是用哪種等級。以這種來說大概在 4 左右。

是不是切掉引擎就會在太空中飄,或是繞著行星轉

計畫是這樣

0x10c 會有像是重力,相對論的計算,行星生態圈...之類的東西嗎?

重力有的,而為了遊戲性我*可能*不會讓時間是相對性的。生態圈...也許...大部分的生物都會死。

確認一下,「無縫行星降落」是指從太空中降落到行星表面而不會看到載入中畫面?

技術含量高的東東

為什麼沒有 interrupt?我有漏掉什麼嗎?

我不喜歡 interrupt!改用小巧可愛的 message queue 吧。

有 compiler 能用了嗎

沒有

對於要執行多個 cycle 的指令來說,能夠安全的認定指令直到最後一個 cycle 才會修改計算值嗎?

為了模擬的效率,數值其實是在計算 cycle 數之前就被修改了。

有 I/O 的 spec 嗎?

還沒做到那裏,也許會像是 memory mapped message queue 這樣的感覺。

指令集裡面沒有進位加法(ADD with Carry)... 或者,如果是自動做到這點,那應該要區分 'ADD' 與 'ADC'?

進位會儲存在 O 暫存器(overflow)裡面,你必須自己把進位加上,像是 ADD <dest>, O

模擬器如果碰到像是 "x: set pc, x" 的指令,他會無限迴圈還是偵測到問題然後停止執行?

無限迴圈。模擬器不會試著去處理這類問題 ;)

CPU 有管線設計嗎?

沒有。為了提昇模擬速度得有所犧牲。

O 在做 DIV x, 0 5 之後會是等於是 /0x10000 或更大的數字嗎?我猜是 x (/0x10000) 或是 0 (/無限大).

0

0x10c 文件說 DCPU-16 是 little endian,但你的放出的規範卻說是 big endian.

唔,這下糗了 :D

dcpu-16 的啟動程序是?暫存器的數值會是固定值嗎?你好像是在暗示說 sp 會是 0xffff...

SP 一開始是 0. 第一個 PUSH 是 --SP,也就會變成 0xFFFF。其他東西一開始都是 0。

DCPU-16 指定了每個 OP 需要的 cycle,這是表示沒辦法最佳化直譯器嗎?

你可以自己做一個,不過遊戲中的會跟著 cycle 數跑。

如果我沒弄錯,DCPU 沒有 [SP+literal] 指令? :(

目前沒有

這顆 CPU 有 LLVM back-end 嗎?

我個人有寫個組譯器給自己用。這東西有些毛病,不過我用的很開心。有些人已經開始動手做 LLVM back-end 了,你可以在 github 上看到他們的進度。