ClassiCube 是一個自訂的 Minecraft Classic 相容客戶端,用 C 從頭開始寫作。
重要的
ClassiCube 不以任何方式隸屬於 Mojang AB、Minecraft 或 Microsoft(或受其支援)。
ClassiCube 並不是試圖複製現代 Minecraft。
它永遠不會支援生存、Minecraft 帳戶或現代 Minecraft 伺服器。
ClassiCube 旨在複製 2009 年 Minecraft Classic 用戶端,同時提供可選增強功能以改善遊戲玩法。 ClassiCube 可以在許多系統上運行,包括桌面、Web、行動設備,甚至一些控制台。
您可以在此處下載 ClassiCube ,並在此處下載最新版本。
ClassiCube嚴格遵循無塵室逆向工程方法,力求複製原始的 Minecraft Classic 體驗。
如果您有興趣記錄或驗證原始 Minecraft Classic 的行為,請透過 ClassiCube Discord 聯繫
最初,您需要執行 ClassiCube.exe 從 minecraft.net 和 classiccube.net 下載所需的資源。
只需在啟動啟動器時出現的對話方塊選單中按一下「確定」即可。
注意:在 VirtualBox 中運行時,請停用滑鼠集成,否則遊戲中的相機將無法正常工作。
單人遊戲模式運行ClassiCube.exe,然後點選主選單中的單人遊戲。
多人遊戲模式運行 ClassiCube.exe。如果您有 ClassiCube 帳戶,則可以連接到 LAN/本機託管伺服器和 classicube.net 伺服器。
卡在 OpenGL 1.1 上的最常見原因是 GPU 驅動程式無法運作 - 因此,如果可能,您應該嘗試安裝或更新 GPU 驅動程式。
否則:
-DCC_BUILD_GL11
,以便編譯的遊戲支援OpenGL 1.1。ClassiCube 運作於:
libcurl
和libopenal
並且也運行在:
libcurl
和libopenal
libexecinfo
、 curl
和openal-soft
軟體包(可以從這裡下載)libexecinfo
、 curl
和openal-soft
軟體包(可以從這裡下載)libexecinfo
、 curl
和openal
包curl
和openal
包openal
套件(如果你有 GitHub 帳戶,可以從這裡下載)curl
和openal
包SDL2
注意:以下說明會使用平台建議的預設值自動編譯 ClassiCube。
如果您(不建議)想要覆寫預設值(例如在 Windows 上編譯 OpenGL 版本),請參閱此處以了解詳細資訊。
如果您收到The Windows SDK version 5.1 was not found
編譯錯誤,請參閱此處以了解如何修復
cl.exe *.c /link user32.lib gdi32.lib winmm.lib dbghelp.lib shell32.lib comdlg32.lib /out:ClassiCube.exe
假設您使用 https://sourceforge.net/projects/mingw-w64/ 中的安裝程式:
gcc -fno-math-errno *.c -o ClassiCube.exe -mwindows -lwinmm
假設您使用 https://osdn.net/projects/mingw/ 中的安裝程式:
gcc -fno-math-errno *.c -o ClassiCube.exe -mwindows -lwinmm
設定TCC:
tcc-0.9.27-win64-bin.zip
winapi-full-for-0.9.27.zip
winapi
資料夾和_mingw_dxhelper.h
從winapi-full-for-0.9.27.zip
複製到 TCC 的include
資料夾中使用 TCC 編譯:
ExtMath.c
中,將fabsf
改為fabs
, sqrtf
改為sqrt
tcc.exe -o ClassiCube.exe *.c -lwinmm -lgdi32 -luser32 -lcomdlg32 -lshell32
tcc.exe
的完整路徑,而不僅僅是tcc.exe
) libx11-dev
、 libxi-dev
和libgl1-mesa-dev
軟體包make linux
或cc -fno-math-errno src/*.c -o ClassiCube -rdynamic -lpthread -lX11 -lXi -lGL -ldl
gcc-mingw-w64
軟體包)i686-w64-mingw32-gcc -fno-math-errno src/*.c -o ClassiCube.exe -mwindows -lwinmm
gcc-mingw-w64
軟體包)x86_64-w64-mingw32-gcc -fno-math-errno src/*.c -o ClassiCube.exe -mwindows -lwinmm
儘管常規的 Linux 編譯標誌可以正常工作,但要充分利用硬體:
gcc -fno-math-errno src/*.c -o ClassiCube -DCC_BUILD_RPI -rdynamic -lpthread -lX11 -lXi -lEGL -lGLESv2 -ldl
make darwin
或cc -fno-math-errno src/*.c src/*.m -o ClassiCube -framework Cocoa -framework OpenGL -framework IOKit -lobjc
misc/macOS/CCMAC.xcodeproj
項目注意:如果您要分發修改版本,請將套件 ID 從com.classicube.android.client
更改為其他內容- 否則 Android 用戶將無法在其設備上同時安裝 ClassiCube 和您的修改版本安卓設備
在 Android Studio 中開啟android
資料夾(TODO 解釋更詳細)
在 android 資料夾中執行gradlew
(TODO 解釋更詳細)
iOS 版本會有問題,因為它不完整且僅在 iOS 模擬器中進行了測試
注意:如果您要分發修改版本,請將捆綁包 ID 從com.classicube.ios.client
更改為其他內容- 否則 iOS 用戶將無法在其設備上同時安裝 ClassiCube 和您的修改版本iOS設備
misc/ios/CCIOS.xcodeproj
項目 xcodebuild -sdk iphoneos -configuration Debug
(TODO 解釋更詳細)
make web
或emcc src/*.c -s ALLOW_MEMORY_GROWTH=1 -s TOTAL_STACK=1Mb --js-library interop_web.js
產生的 javascript 檔案存在一些問題。請參閱此處以了解如何修復
有關如何將網絡客戶端整合到網站的詳細信息,請參閱此處
所有控制台連接埠都需要具有自製程式開發經驗的人員的幫助 - 如果您有興趣,請透過 ClassiCube Discord 聯繫。
運行make switch
。你需要 libnx 和 mesa
注意:強烈建議您從此處安裝預先編譯的 devkitpro 軟體包 - 您需要switch-dev
群組和switch-mesa switch-glm
軟體包)
運行make wiiu
。你需要吳
注意:強烈建議您從此處安裝預先編譯的 devkitpro 軟體包 - 您需要wiiu-dev
組)
運行make 3ds
。你需要 libctru
注意:強烈建議您從這裡安裝預先編譯的 devkitpro 軟體包 - 您需要3ds-dev
組)
運行make wii
。你需要 libogc
注意:強烈建議您從此處安裝預編譯的 devkitpro 軟體包 - 您需要wii-dev
組)
運行make gamecube
。你需要 libogc
注意:強烈建議您從這裡安裝預先編譯的 devkitpro 軟體包 - 您需要gamecube-dev
組)
運行make ds
。你需要 BlocksDS
運行make n64
。你需要 libdragon 的 opengl 分支
運行make vita
。你需要 vitasdk
運行make psp
。你需要 pspsdk
注意:建議您從此處安裝預先編譯的 pspsdk 版本
運行make ps3
。您需要 PSL1GHT
運行make ps2
。你需要ps2sdk
運行make ps1
。您需要 PSn00bSDK
運行make 360
。你需要 libxenon
運行make xbox
。你需要nxdk
運行make dreamcast
。你需要 KallistiOS
運行make saturn
。你需要 libyaul
libxi
、 libexecinfo
、 curl
和openal-soft
軟體包make freebsd
或cc src/*.c -o ClassiCube -I /usr/local/include -L /usr/local/lib -lm -lpthread -lX11 -lXi -lGL -lexecinfo
libexecinfo
、 curl
和openal
包make opensd
或cc src/*.c -o ClassiCube -I /usr/X11R6/include -I /usr/local/include -L /usr/X11R6/lib -L /usr/local/lib -lm -lpthread -lX11 -lXi -lGL -lexecinfo
libexecinfo
、 curl
和openal-soft
軟體包make netbsd
或cc src/*.c -o ClassiCube -I /usr/X11R7/include -I /usr/pkg/include -L /usr/X11R7/lib -L /usr/pkg/lib -lpthread -lX11 -lXi -lGL -lexecinfo
libxi
、 libexecinfo
、 curl
和openal-soft
軟體包make dragonfly
或cc src/*.c -o ClassiCube -I /usr/local/include -L /usr/local/lib -lm -lpthread -lX11 -lXi -lGL -lexecinfo
make sunos
或gcc -fno-math-errno src/*.c -o ClassiCube -lsocket -lX11 -lXi -lGL
gcc
、 haiku_devel
、 openal_devel
軟體包make haiku
或cc -fno-math-errno src/*.c src/*.cpp -o ClassiCube -lGL -lnetwork -lstdc++ -lbe -lgame -ltracker
make beos
或cc -fno-math-errno src/*.c src/*.cpp -o ClassiCube -lGL -lbe -lgame -ltracker
make irix
或make serenityos
或cc src/*.c -o ClassiCube -lgl -lSDL2
make macclassic_68k
(適用於 M68k 版本)make macclassic_ppc
(用於 PPC 建置)PowerPC 版本通常會表現得更好
您必須編寫必要的程式碼。您應該閱讀 doc 資料夾中的portability.md
。
.h 檔案中的函數和變數大部分都有文件記錄。
有關 ClassiCube 原始碼的更多資訊(例如樣式)可以在 doc 和 Misc 資料夾中找到。
修正了使用 musl 或舊 glibc 作為 C 標準函式庫時的編譯錯誤
按退出鍵(加入世界後)或暫停鍵切換到暫停選單。
暫停選單 -> 選項 -> 控制列出了客戶端使用的所有組合鍵。
請注意,將「vsync」切換為開啟將最大限度地減少 CPU 使用率,而關閉將最大限度地提高區塊載入速度。
按 F 循環查看距離。較短的視距可以提高性能。
如果伺服器停用了駭客攻擊,則飛行和速度等組合鍵將無法運作。
若要查看內建指令的列表,請鍵入/client
。
若要查看給定內建指令的協助,請鍵入/client help <command name>
。
ClassiCube 使用來自 Freesound.org 的聲音
完整的學分列在 doc/sound-credits.md 中