其實這個話題我在很早以前便想寫了,但由於拖延症直到現在才動筆...
如果不知道0x10c是啥的話...可以自行百度/谷歌一下,它是Notch計劃製作的一個太空沙盒遊戲,後來因為各種原因被宣布擱置了...
從0x10c正式被宣布凍結(8月13日)到現在已經有11個月了,它的社區經歷了震驚、恐慌、憤怒和絕望後,終於歸於死寂,從它的論壇的回復記錄來看,幾乎所有的板塊都已經荒廢了.
然而,仍有一個板塊不時有人回復 - Community Creations板塊,許多對0x10c的死亡不甘心的大犇扛起了"太空編程沙盒"的大旗,當然不是向Notch要源代碼然後接手開發,而是從零開始,製作0x10c的同人作品.
本文介紹的是跟0x10c比較貼近的幾個同人作:
- Trillek
- Exoverse
- Megastage
- Trillek2D
- Comatose - 1990
從此開始,百億光年
↓
一定意義上的"官方"同人
Trillek
Trillek是個在13年8月時發起的項目,目標是用C++寫一個開源(應該也是免費的)、跨平台的仿0x10c遊戲,當然,也少不了DCPU.(順便一提,雖然它的項目啟動和0x10c的正式凍結時間非常貼近,但我覺得Trillek不是為了給0x10c補刀/給Notch抽臉的...)
項目主頁:http://trillek.org/
Github地址:https://github.com/trillek-team
Trillek相當根紅苗正,甚至還獲得過Notch的"精神支持"(...),然而它的進度並非十分理想,在去年年底和今年年初相繼放出兩個半里程碑版本後,項目一度陷入假死,直到最近才宣布準備放出里程碑3.你可以從這裡下載到里程碑2.5,但是相信我,相當的瞎眼...
進入遊戲後旁邊的電腦,咦...白屏了.
隔壁的電腦可以正常運作,加載的程序可以自行設定,具體參考TR3200 README.
機庫和遠方的"星球"...
最後就是外景,然後沒了...
技術
Trillek使用的是Sigma引擎,一個由adam - Trillek的主程 - 開發的跨平台遊戲引擎,由C++寫成,圖形接口使用OpenGL,物理引擎使用Bullet.
Trillek有一支規模不錯的來自開源社區的開發團隊,即使是在經過精簡後,它仍擁有至少5名核心程序員,然而,和大多數開源遊戲相似的是,它缺乏美工.不過,考慮到遊戲的開發程度,現階段不需要美工也是正常的.
程序
與其他作品不同,Trillek沒有強制要求一款特定的CPU,它定義了一個Trillek虛擬計算機規範(Trillek Virtual Computer Specifications),該規範描述了Trillek中的統一硬件規格,包括數據的格式,虛擬計算機的架構,設備驅動的編號等等.幾個值得注意的指標包括:
- 小端序
- 可以有32kb的ROM
- 最大1152kb內存(128kb主內存+1024kb擴展內存)
- 最多一個CPU,頻率被限制在1000KHz,500KHz,200KHz和100KHz這4個檔次.
- 最多32個硬件.(不包括CPU)
- 主板包括(以下不計入硬件):
256B的NVROM.
可編程的間斷計時器
時鐘
隨機數發生器
蜂鳴器
對於CPU,目前Trillek有2個CPU規範,DCPU-16N和TR3200.
DCPU-16N是經過修改後的DCPU,它和DCPU都是16位的,主要區別包括:
- 內存總線,支持擴展內存.
- 高速乘法器和高速除法器(其實就是為程序員們開了兩個圖省事的後門...)
- 循環移位器(又是開掛的東西...)
- 理論上仍支持訪問65535個硬件,但實際上Trillek的計算機最多只有32個硬件...
而TR3200(全稱Trillek Risc cpu 32 00)則是一個高大上的32位CPU,它擁有11個通用寄存器,乘法/求商寄存器,位操作寄存器等高大上的黑科技.你可以在這裡運行一個在線模擬器.
==============================================================================
逝去的幻想
Exoverse
與風風火火的Trillek相比,Exoverse雖然是和Trillek同一時期啟動的,但它的發展卻顯得格外坎坷,首先我要說的是,這個項目已經被無限期凍結了.
項目主頁:http://www.exoversegame.com/ (無內容)
跟Trillek強大的隊伍相比,Exoverse從始至終只有3名開發者,而且我還不知道其中有幾個是程序員."現"階段它是閉源的,有一位開發者表示它今後有可能開源,但0x10c和Trillek社區普遍認為它會是個閉源的商業遊戲.
Exoverse由mjn - 一個號稱跑了40年DnD團,桌面和電子遊戲閱曆數十載的職業軟件開發者 - 發起.當0x10c尚未掛掉的時候,他便在社區成立了Interstellar Design Corp(簡稱IDC)作為一個0x10c公會.當Notch宣布0x10c擱置後,他帶着2個小夥伴去開發Exoverse了.
Exoverse始終沒有發布過成品,也似乎沒有遊戲截圖,開發者曾錄製過幾段解說視頻,從視頻中可以看出,遊戲已經具有一定的完成度,顯然是使用JME開發.
此外,Exoverse還曾和Trillek有過一些競爭,起因似乎是有小白在Trillek的論壇上稱Exoverse為"盲目的模仿者"(Copy Cat...hehe),發帖者的原帖被砍了,但兩個遊戲的開發組在回帖中的爭吵卻留了下來.半個月後,在Trillek發布里程碑1時,mjn又跑去就"Trillek用C++"一事以跨平台為由噴了一通,並聲稱幾周後Exoverse將發布第一個Demo,而結果我們也知道,Exoverse直到無限期凍結時仍連個屁都沒憋出來.另外,我也覺得mjn用跨平台為理由噴Trillek有點屬於"沒事找事"...首先Sigma本身就是為跨平台而設計的,其次他認為為每個平台都準備一個客戶端很沒有便攜性,但我可不認為會有人把遊戲裝在U盤上,在裝有不同操作系統的電腦上拷來拷去...如果真要找個理由噴Trillek用C++的話...那我認為使用C++而不是C#/Java會增加開發的難度和工作量.由於JIT的存在,C/C++對C#/Java的優勢只剩下內存使用效率,而大部分開發者都是想new就new,想malloc就malloc...咳咳...況且,如果遊戲做不出來的話,語言的優勢再大也是白搭...
技術
顯然遊戲是使用Java編寫,採用JME引擎,圖形接口使用OpenGL.
曾經開發者在Exoverse的官博上發過不少有意思的內容,可惜現在都被刪掉了...艹.
程序
Exoverse的電腦是Virtual 8086 Computer,看上去它使用的彙編語言也應該是8086彙編了.
除此之外...沒有更多的信息了.
==============================================================================
一人之力
Megastage
"我們仍然眷顧着天堂,
即使我們應游弋在群星間"
前兩個項目都是團隊合作的產物,但即使是這樣,一個勉勉強強才開發出勉強能看的雛形,另一個則直接關門跑路了,但Megastage卻是出自一個人之手,而且已經有些樣子了,真是狠抽前兩組人的臉...
項目主頁:無...就把github頁當主業吧
Github地址:https://github.com/orlof/megastage
Megastage由orlof在13年的12月發起,作者將其稱為"一個使用DCPU,能夠建造太空船的多人太空歌劇",他稱"Trillek開發進度太慢,Exoverse又不使用DCPU",於是決定自己開發一個類0x10c遊戲.
雖然Megastage開發時間比前兩者短,參與人數也是最少的(獨自一人...),但其完成度卻比前兩者要高.你可以在這裡下載到已經構建好的二進制文件.
解壓好遊戲後,Windows下運行full.bat就能啟動遊戲了.如果啟動不了的話,就編輯它,刪掉:
set JAVA_HOME="%~dp0jre7"
啟動器.
進入遊戲後,玩家位於一個飛船上,前頭有一台電腦終端.
遙望隔壁的飛船
謎の甜甜圈...好吧,要發揮點科幻精神,應該是傳感器什麼的.
木塊...其實是對應XYZ三個方向的螺旋儀.
遠處的恆星.
然後就該研究研究電腦怎麼用了,左鍵點擊屏幕就能控制.
各種軌道信息...但都沒有輸入正確的數據源.
看起來遊戲採用了牛頓力學,沒法像FL那樣做各種極限機動了呢...
飛船鍵位綁定界面,忘了/不知道如何操作的可以看一眼.
硬件界面,只能連接8個硬件嗎 ;w;
飛船確實可以開的,這完成度...足以讓Trillke汗顏啊.
和隔壁的船撞了一下,一陣火花後就爆炸了...
點了一下後面的"抽屜"(其實是磁碟機),發現居然可以給電腦換程序,那個Admira是什麼?原來作者曾為DCPU寫過一個Admiral-16語言,採用解釋執行.這個似乎是一個Admiral的Shell.
遊戲里還可以為飛船建造/拆除磚塊,這不科學的引擎...
還有更不科學的...激光炮?
遊戲里遠遠還能望見2個行星,但我沒試過飛過去...看world.xml里的數據,估計即使是星球距離玩家最近的情況下(星體也是遵循牛頓力學,在繞恆星轉動的),也有50000格的距離...目測玩家的飛船最快也就5格每秒...而且能不能追上還是個問題.
另外遊戲支持聯機,但第一個玩家進去後記得要把飛船開走,因為似乎每個玩家進入遊戲時都會在固定位置出生並獲得一個飛船,兩個玩家同時進遊戲的話他們的船就瞬間卡爆了.
技術
Megastage用Java寫成,採用JME引擎,圖形接口使用OpenGL.物理引擎使用JBullet.
使用Java而不是C/C++的另一個優勢又體現出來了,就是有很多現成的庫可以使用...包括遊戲的磚塊系統都是使用Cubes庫的.
程序
Megastage使用的就是DCPU-16,也就是之前我一直說的DCPU.
==============================================================================
平面的逗比
Trillek2D
第一次看到它時我愣了一下,以為是Trillek出了同人作,或者是製作組覺得壓力太大了,換成2D來做.後來發現是一個完全無關的人做的遊戲,僅僅只是名字借了Trillek...哦對了,這個項目已經死了.
項目主頁:無
就在0x10c被宣布無限期擱置後不久,一個傢伙啟動了自己的項目,決定寫一個使用DCPU的2D動作遊戲.3個月後他發布了他的成果.你可以從這裡下載到遊戲.
遊戲主菜單...
這個...洛克人嗎.
遊戲還有Bug,站在門上關門會被卡出地圖.
遊戲內的計算機,只有一個文字界面.
2樓謎の雷達.
還有一個更加意義不明的裝置.
遊戲倒是可以建造房間...不過沒什麼意思.
技術
Trillek2D用C#寫成,遊戲框架使用XNA,圖形接口使用DirectX.
程序
也是使用DCPU-16.
==============================================================================
文明的餘輝
Comatose - 1990
當冬眠倉事故在公眾中激起軒然大波後,Nya Elektriska公司很快便沒落了,但其他公司仍沒有忘記計算機的巨大潛力,在經過他們不懈的開發和改進後,1989年,就在Nya Elektriska破產後不久,DCPU-32被發布了.它被宣傳為下一代的計算機,並且號稱100%安全 - 儘管仍與16位的冬眠艙不兼容.在這個DCPU-32橫行的亂世,你可以選擇成為一個無名的黑客,或者成為下一個Nya Elektriska公司.
時間到了1990年.在災難發生後的兩年間.全世界的第一世界政府都在竭力聚集他們的權力維持穩定,暴民和劫掠者擊垮了脆弱的警察和政府武裝,許多大城市淪為了鬼城.
被建造用於源源不斷地發送移民的24個太空港全部採用核反應堆來供能,這種危險的設備在近些年間十分流行,不光是空間站,所有的太空船也都使用它來驅動.當騷亂持續數月乃至數年之後,暴民們開始組成民間武裝,擁有了有組織地襲擊的能力.大多數軟弱的政府只能勉強壓制那些民兵,而沒有能力徹底摧毀他們.到了90年代中葉,超過一半的太空港被民兵攻擊.由於缺乏適當的控制,大多數核反應堆都很快融解了,14個被攻佔的太空港中只有2個在民兵的控制下扔保持運作,其餘的都變成了核廢墟.剩下的10座仍被政府控制的太空港被嚴密地防護着.曾經的世界上最強大的國家將他們僅剩的力量集中於此,建立了固若金湯的防線.
雖然世界上大部分人的生活都被戲劇性地改變了,那些沒有被野心勃勃的民兵瞄上的城市卻倖存了下來,那裡的居民也得以盡量地恢復正常的生活.平民們學會了如何在政府與民兵的零星衝突中求生,並與雙方保持着平衡的關係.
政府雖已疲憊不堪,但離被擊垮仍尚早,況且在舊世界的斷壁殘垣中,新的文明即將浴火重生.
翻譯完了背景設定後,我有兩個感受,一個是我又tm想到東方夢神歸了,另一個是要麼我4級掛定了,要麼作者不是英語國家的人...
Comatose - 1990(以下簡稱Comatose)是一個使用Html5+Js編寫的網頁遊戲,然而它仍處於非常早期的開發階段,而且至今仍無成品,並且我感覺它已經被棄坑了...
項目主頁:無
因為這個遊戲既沒有成品,也沒有視頻或截圖,所以我完全無法介紹...大家就想象一個"能在大多數現代瀏覽器上玩的0x10c"吧...
技術
Comatose使用Html5和JavaScript編寫,圖形應該是Html5的Canvas或WebGL,我猜的...
程序
Comatose使用DCPU-32,一個32位版的DCPU,這裡也有個模擬器(勉強算是個成品?),裡面也包含了規範和文檔.
==============================================================================
於是,5個和0x10c血緣比較近的同人遊戲便介紹完了,其中最看好的我覺得還是Trillek,其次是Megastage,其餘的?都已經停更了...
然而,這些遊戲(包括0x10c)都無一例外地陷入一個怪圈:遊戲的真正遊戲性是什麼?
或許Notch是意識到這個問題,所以才棄坑的,這個遊戲能供玩家玩什麼?一台彙編計算機?只有極客才會玩吧.一個真實比例的太空?恐怕只有太空迷才會在浩瀚的宇宙中一邊與牛頓力學做對抗,一邊尋找如蚊子般大小的敵人.
不光是0x10c,任何擁有真實比例的太空以及可進入的行星大氣層的遊戲,都必然面對一個問題,就是玩家玩什麼,目前我見過唯一一個處理好這個問題的是Rodina,它通過合理地規劃玩家飛船的飛行速度,以及星球的尺寸,讓玩家得以即流暢地索敵-接敵-交戰,又能快速地在星球間穿梭.遺憾的是,這個遊戲仍處在早期開發中,並且它並非是開放性沙盒,而是一個線性劇情的遊戲.(雖然遊戲也提供了沙盒模式和和平模式,允許玩家無限制地隨意穿梭在Zorica星系中)
嘛,想說的就這麼多了,滾去對UU擼管去咯
建議增加一個插件。Google Fonts acceleration 經過實測加速80%以上 另:左側數據不準確。還有。。。一起把Forge教程這個坑填完吧。。雖然我的水平也不怎麼地。。。
裝上了...話說左側數據是啥.
80%。。。。。。但感覺快好多。。。之前慢的原因的wp要從googleapi上拉取字體。這不是作死行為么。。對了還有。。話說乃用的代碼高亮插件是什麼?
SyntaxHighlighter Evolved