PEMBUATAN GAME

Seperti yang telah saya janjikan pada penulisan artikel yang pertama yang berjudul GAME DEVELOPER, pada penulisan kali ini kita akan membahas bagaimana sih membuat game itu???

Oke deh, sebelum kita masuk ke pembahasan utama kita nanti, coba anda ambil dulu segelas kopi atau teh beserta cemilan satu toples agar kamu lebih santai ketika membaca penjelasan dari saya ini. Bagi yang suka merokok, boleh juga sambil menghisap beberapa batang rokok favorit anda, asalkan jangan anda jadikan cemilan juga tu rokok, yang ada ntar malah tersedak sama tembakaunya lagi :p. (panjang banget ya basa-basinya :D).

Seperti yang telah saya tulis di artikel pertama tentang pengertian game. Game adalah sebuah software yang sebernarnya memiliki tujuan utama untuk mengisi aktivitas jika kita membutuhkan banyak hiburan agar kita tidak mengalami stress dalam menghadapi kehidupan yang keras pada zaman ini.

Bisa dibilang, kalo membuat game itu sama dengan membuat program biasa. Sudah banyak bahasa pemrograman yang dapat digunakan untuk membuat game sperti C/C++ , JAVA, Python, Php, dll. Tergantung bahasa mana yang kita miliki dan kuasai asalakan anda-anda semua punya niat dan tekad yang sangat kuat agar bisa mewujudkannya.

Penjelasan kali ini akan lebih menekankan pada konsep dari pembuatan game itu sendiri. Langkah pertama jika kita ingin membuat game adalah dengan mengumpulkan semua niat dan tekad pada diri kita agar nantinya game yang kita akan buat bisa rampung. mengurangi rasa sombong yang amat sangat yang menjadi khas dari pemula seperti kita. Mengapa rasa sombong itu harus dikurangi? Salah satu alasannya adalah untuk mengurangi atau bahkan meniadakan penyakit kronis yang hinggap di diri tiap-tiap pemula tanpa terkecuali saya juga masuk didalamnya, yaitu: ambisi berlebihan. Ambisi berlebihan yang menjadi khas dari serang nubitol. Maklum, kita sebagai pemula pasti belum tahu betapa sulitnya membuat game.

Nah, pada paragraf ini saya ingin kita bersama menyadari betapa sulitnya membuat game yang kompleks dan tidak asal berhayal. Saya ingin kita mengurangi ambisi ini, ambisi yang seringkali berupa “aku ingin membuat game seperti anu”. Ambisi inilah hambatan terbesar para pemula (otodidak maupun akademisi). Makanya sejak awal saya ingin kita sadar dan tidak buruburu ingin membuat game yang besar/raksasa dahulu. Kita akan memulai dari game yang benar-benar kecil, jelek, atau kalau perlu buruk seburuk-buruknya.

Membuat sebuah game adalah proses yang panjang dan kompleks. Seperti yang saya katakan diatas, pembuatan game tidak jauh beda dengan pembuatan program perangkat lunak pada umumnya. Ada sesi merancang, membuat flowchart, menulis source code, menguji program, debugging, mengompile,lalu mendistribusikan kepada khalayak umum. Perbedaannya adalah game memiliki banyak objek unik yang sangat kompleks di luar teknis pemrograman itu sendiri. Artinya, suatu game tidak hanya melibatkan penciptaan source code program saja, melainkan objek lain seperti animasi, musik, kecerdasan buatan (AI),SFX, citra 2D dan 3D, alur cerita, hukum ekonomi, dan lain sebagainya.

Sederhananya sih proses pembuatan game dapat dijabarkan seperti ini :
1. Merancang/designing.
2. Mewujudkan rancangan.
3. Memprogram/mengcompile.

Penjelasan di atas itu belumlah menjelaskan bagaimana cara pembuatan game secara utuh di seluruh dunia. Namun karena di sini kita akan belajar tentang bagaimana cara game dibuat, maka saya buat agar menjadi lebih simple dan mudah dimengerti.

Biasanya pembuatan game dimulai dari tahap designing atau disebut juga tahap perancangan. Jadi, apa aja sih yang dilakukan pada tahap-tahap pembuatan game itu??? Berikut sedikit tentang penjelasannya.

Perancangan game

Merancang suatu game bukanlah suatu hal yang gampang. Untuk merancang suatu game yang sangat “CANGGIH” pastinya dibutuhkan waktu yang amat sangat lama. Itulah alasannya mengapa seorang game designer membutuhkan waktu yang bisa jadi bertahun-tahun hanya untuk mengumpulkan ide dari suatu game yang akan dibuat nantinya. Dalam mendesain/merancang game, seorang designer (atau satu team designer) mengumpulkan ide-ide terlebih dahulu selama beberapa waktu. Ide yang dimaksud adalah :
1. seperti apa game itu nantinya,
2. bisa dimainkan oleh berapa orang,
3. genrenya apa,
4. memakai sistem skor atau tidak,
5. karakterkarakternya (termasuk sketsa/gambarnya plus biodata juga),
6. aturan-aturan permainan (HP/MP/FP/LP/lainnya),
7. cerita dalam game (ini bisa saja menjadi novel jika diterbitkan sendiri😀 ),
8. berapa level karakter,
9. perilaku karakter pada tiaptiap level,
10. equipment/peralatan karakter (pedang, pistol, palu, parang, panah, sekop, helm, pakaian/zirah, tato, bom, senjata mesin, bazoka, dsb.),
11. lingkungan tempat karakter beraksi (termasuk dunia, peta, jalan raya, bangunan, dsb.),
12. kendaraan (mobil, kereta, pesawat, kapal, papan luncur, sepeda motor, dsb.),
13. tipe akhir permainan (closedended atau openended),
14. engine yang akan digunakan,
15. sistem pencahayaan (HDRI atau tidak),
16. hukum ekonomi ( misalnya perbedaan kurs mata uang dalam game, contohnya ada di RF Online),
17. AI,
18. dan sebagainya.

Tapi saran saya, karena kita baru saja akan belajar tentang pembuatan suatu game. Lebih baik tidak usah membuat game dengan kopleksitas yang sangat tinggi, cukup mengambil beberapa poin utama saja dari contoh diatas tadi agar ketika kita belajar tidak keteteran sendiri nantinya.

Mewujudkan rancangan

Mewujudkan rancangan merupakan kelanjutan dari perancangan suatu game. Di bagian ini, semua kru bekerja. Seniman visual atau disebut juga artist (dalam hal ini bisa 2D atau 3D) memvisualisasikan karakterkarakter, lingkungan, item khusus dan bermacam material/tekstur, atau juga poster. Tidak lupa, mereka juga bertugas membuatkan animasinya (2D, 3D, bahkan animasi tekstur). Perangkat lunak yang biasanya digunakan oleh seorang artist seperti Blender, 3D Studio Max, Maya, Milkshape, Cinema4D, dkk. untuk membuat model dan animasi 3D. Untuk 2D, mereka biasanya memakai Photoshop, CorelDRAW, TextureMaker, dkk. dalam membuat karakter 2D dan material/tekstur.

Apakah selalu visual? Tidak. Pernahkah Anda memainkan game tanpa suara? Bagaimana rasanya? Terkadang tidak nikmat memainkan game tanpa suara. Suara, saat ini adalah komoditi dan kebutuhan tersendiri dari suatu game. Suara apa saja, sih? Oho, cukup kompleks. Suara di sini bisa dalam bentuk SFX, dialog, atau musik. Ada musik latar belakang (biasanya disebut background music/BGM), musik khusus (saya bilang khusus untuk menyebut yang seperti di Guitar Heroes atau Ayodance), sound
effects/SFX/efek suara, dan percakapan karakter di dalam game (ini jelas perlu casting). Tidak menutup kemungkinan suarasuara jenis lain yang tidfak termasuk di sini karena ketidaktahuan saya.

Apa itu SFX? Jika Anda mendengar suara tring dari pedang, dor dari senjata, bum dari ledakan, brum dari mobil, byur dari air, crot dari tubuh disayat, dsb. ketika Anda memainkan game, maka Anda sebetulnya mendengarkan SFX. SFX adalah efek suara yang direkam dari dunia aslinya dan dimasukkan ke dalam game. Jadi, suarasuara pedang yang Anda dengar di dalam game sebetulnya adalah suara pedang asli yang direkam kemudian dimasukkan ke dalam game. Nah, sudah paham? Dewasa ini, SFX tidak melulu diambil/direkam dari dunia nyata. SFX bisa dihasilkan menggunakan perangkat lunak (semisal Audacity, LMMS, Wavosaur, atau FruityLoops). Pilihan kedua ini sebetulnya lebih murah asalkan sumber daya manusianya memadai.

BGM adalah musik yang mengiringi Anda tiap kali Anda memainkan Super Mario Bros, Contra Force, RF Online, Ragnarok Online, Cabal Online, atau lainnya. Musik ini biasanya dimainkan sejak awal permainan sampai game over. Suatu game biasanya memiliki banyak BGM, sesuai suasana yang dialami karakter atau yang dibawakan oleh game. Misalnya, untuk petualangan maka musiknya gembira dan bertempo cepat. Sedangkan untuk suasana horor musiknya suram dan bertempo lambat, dan sebagainya. Seringkali, suara karakter asli dibutuhkan, baik dalam percakapan ataupun monolog. Karena itu, diperlukan pengambilan suara (casting) dari orang betulan, sama seperti film animasi. Jika Anda sering memainkan Call Of Duty atau Civilization, Anda akan sering menemui percakapan antartokoh (bukan teks, tetapi suara asli). Ini tentunya akan menambah kernyataan (realita) game Anda jika memang nantinya karakter didesain untuk berbicara.

Programing

Memprogram adalah bagian tersendiri yang tidak ditentukan sebelum atau sesudah tahap lainnya. Bisa saja tahap ini dikerjakan berbarengan dengan lainnya. Sambil seniman visual membuat model karakter, si programer menulis source code untuk physicnya. Atau bisa juga ditambahkan pada akhir proses, yaitu membuatkan cheat. Apa saja yang diprogram? Banyak sekali. Jika desainnya mengharuskan memakai engine sendiri, maka si programer harus membangun engine dari nol. Bisa engine secara keseluruhan engine untuk fisika (physic), engine untuk suara 3D, engine untuk AI, dsb. Nantinya akan ada banyak source code yang harus ditulis oleh programer selain engine. Semisal mengode GUInya, event, menggarap sistem pencahayaan, menggarap mode multiplayer, menggarap jaringan/sistem online, mempersatukan artwork dari semua bagian lain (visual+audio+konsep+dll.), dan banyak lagi. Sungguh, bagi saya programer adalah bagian yang sangat sulit. Selain harus bisa berkomunikasi lancar dengan bagian lain, harus menguasai betul bidangnya. Kalau yang dibuat adalah game 3D bergenre Action atau FPS, maka biasanya yang harus dikuasai adalah fisika newtonian, matematika (aljabar dkk.), psikologi (ini untuk bikin AI), dan tentu bahasa pemrograman. Bahasa pemrograman yang termahsyur untuk pembuatan game skala besar adalah C++. Sekadar catatan, semua itu tidak harus dikuasai oleh satu orang programer. Bisa saja dalam tim pengembang game, ada lebih dari satu programer (katakanlah, ada tim dalam tim). Seseorang bertugas memprogram efek air, seseorang bagian fisika, seseorang bagian engine, seseorang bagian AI, dan seseorang sebagai lead programmer yang memimpin semuanya. Pembagian kerja seperti ini sudah sangat lumrah dalam dunia pembuatan game dewasa ini. Jadi wajar saja jika dalam satu tim, divisi programer diisi oleh banyak orang.

Selesai juga tulisan artikel saya yang ke dua ini tentang game development : cara pembuatan game. Pada tulisan selanjutnya yang ketiga saya akan membahas tetang pengklasifikasian suatu game. Bagi yang mau tau jenis-jenis game yang ada sekarang ini, jangan terlewatkan yak….
Cekidot aja tulisan saya yang berjudulkan pengklasifikasian game berikutnya oke….
Stay close brotha and sista…..!!!!

referensi :

Membuat Game Sendiri