Dethrace adalah upaya untuk mempelajari cara kerja game mengemudi/kekacauan Carmageddon tahun 1997 di belakang layar dan membangunnya kembali agar dapat berjalan secara native pada sistem modern.
(Ikuti kami di Discord atau Twitter untuk mendapatkan pemberitahuan pembaruan!)
Simbol debug Watcom untuk build internal sebelumnya ditemukan bernama DETHRSC.SYM
pada rilis CD ekspansi Carmageddon Splat Pack. Sayangnya simbol-simbol tersebut tidak cocok dengan executable yang dirilis, artinya simbol-simbol tersebut menarik tetapi tidak segera dapat digunakan untuk merekayasa balik permainan.
Ini adalah apa yang tampak dari debugger Watcom - nama semua metode ada tetapi lokasi kode yang mereka tunjuk adalah sampah:
CrayzKirk dari komunitas Carmageddon mengambilnya dan melakukan banyak pekerjaan melelahkan secara manual mencocokkan banyak fungsi dan struktur data di DOS yang dapat dieksekusi dengan simbol debugging.
Kami perlahan-lahan mengganti kode Majelis asli dengan kode C yang setara, fungsi demi fungsi.
Tidak, setidaknya menurutku tidak. File asli menurut dump simbol disimpan di c:DETHRACE
, dan file simbol disebut DETHSRC.SYM
. Mungkin mereka menghapus "a" agar kompatibel dengan nama file 8.3?
Dethrace tidak dikirimkan dengan konten apa pun. Anda memerlukan akses ke data dari game aslinya. Jika Anda tidak memiliki CD asli maka Anda dapat membeli Carmageddon dari GoG.com.
dethrace
juga mendukung berbagai demo freeware:
Dethrace memiliki ketergantungan pada SDL2. Cara termudah untuk menginstal SDL adalah melalui manajer paket favorit Anda.
OSX:
brew install SDL2
Linux:
apt-get install libsdl2-dev
Arahkan Dethrace ke direktori instalasi Carmageddon:
export DETHRACE_ROOT_DIR=/path/to/carmageddon
Dethrace menggunakan submodul git, jadi kita harus menariknya setelah klon awal:
git clone https://github.com/dethrace-labs/dethrace
cd dethrace
git submodule update --init --recursive
Dethrace menggunakan cmake untuk menghasilkan file build.
Untuk menghasilkan file build (umumnya hanya diperlukan satu kali):
mkdir build
cd build
cmake ..
Setelah cmake membuat file build untuk platform Anda, jalankan file build. Misalnya:
make
Pertama, Anda memerlukan salinan konten game Carmageddon. Ekstrak file zip jika perlu.
Dethrace diharapkan ditempatkan di folder Carmageddon tingkat atas. Anda tahu Anda memiliki folder yang tepat ketika Anda melihat CARMA.EXE
asli di sana. Jika Anda menggunakan Windows, Anda juga harus menempatkan SDL2.dll
di folder yang sama.
Dethrace mendukung konvensi audio cd GOG. Jika ada folder MUSIC
di folder Carmageddon yang berisi file Track02.ogg
, Track03.ogg
dll, maka Dethrace akan menggunakan file tersebut sebagai pengganti fungsi audio CD asli.
Dari awal hingga rilis
Dethrace dirilis ke Domain Publik. Dokumentasi dan fungsi yang disediakan oleh Dethrace hanya dapat digunakan dengan aset yang disediakan oleh kepemilikan Carmageddon.
Kode sumber dalam repositori ini hanya untuk penggunaan non-komersial. Jika Anda menggunakan kode sumber, Anda tidak boleh membebankan biaya kepada orang lain untuk mengaksesnya atau karya turunannya.
Dethrace dan pengelolanya sama sekali tidak terkait atau didukung oleh SCi, Stainless Software, atau THQ Nordic.