BAB 2
TINJAUAN PUSTAKA
2.1
Teori Umum Mengenai Interaktif Multimedia
Teori umum software engineering berisikan pokok teori yang menjadi pedoman dalam skripsi ini.
2.1.1
Multimedia
Menurut Vaughan (2010, p1) multimedia adalah kombinasi dari teks, gambar, suara, animasi dan video yang dimanipulasi secara digital atau disampaikan melalui komputer atau disampaikan melalui peralatan elektronik. Multimedia menjadi multimedia interaktif apabila pengguna diberikan kewenangan untuk mengontrol suatu elemen sesuai keinginan pengguna. Interaktif multimedia menjadi hypermedia ketika elemen-elemennya saling berhubungan sehingga memungkinkan pengguna untuk melakukan navigasi. 5 elemen utama dari multimedia:
1. Teks Teks yang umum kita temukan ada pada buku. Tiap kata yang dipaparkan memiliki arti tersendiri dan dibentuk sesuai dengan keinginan penulisnya. Vaughan (2010, p20) menjelaskan bahwa teks dapat memiliki berbagai makna bahkan pada satu kata saja, pada saat bekerja dengan teks, penting untuk memperhatikan keakuratan dan konsistensi
pada
kata-kata
spesifik
yang
digunakan.
Pada
multimedia, kata-kata ini akan muncul pada judul, menu, dan bantuan navigasi sebagaimana juga pada konten narasi.
2. Gambar Memiliki lebih dari satu informasi pada satu gambar yang 5
6 disajikan dalam satu layar kerja. Penyampaian informasi adalah penting dan sepatutnya dilakukan kecocokan informasi dengan apa yang ingin disampaikan. Pada multimedia gambar yang disajikan pada layar komputer merupakan pemberi pesan kepada pengguna dan juga koneksi utama dengan konten yang disajikan (Vaughan, 2010, p68). Ada 2 jenis gambar, yaitu :
a.
Bitmaps Menurut
Vaughan
(2010,
p71),
sebuah
bit
merupakan hal yang paling sederhana dalam dunia digital, digit elektronik baik berupa on atau off, hitam atau putih, atau benar (1) atau salah (0). Ini direferensikan menjadi binary, semenjak hanya 2 pilihan yang berlaku. Sebuah peta adalah matriks 2 dimensi dari bit-bit. Maka bitmap adalah matriks sederhana dari titik-titik yang membuat bentuk sebuah gambar dan ditampilkan dalam layar komputer atau dicetak.
b.
Vector Menurut Vaughan (2010, p80), sebuah vector merupakan sebuah garis yang mendeskripsikan lokasi dari 2 titik akhir. Menggambar vector menggunakan Cartesian coordinates dimana sepasang angka dideskripsikan dengan sebuah titik di dalam ruang 2 dimensi sebagai titik temu antara garis vertikal dan horizontal (axis x dan y). Selalu dideretkan dengan susunan x,y. Dalam ruang 3 dimensi kedalaman dideskripsikan dengan menambahkan axis z dengan urutan (x,y, dan z).
3. Suara Menurut Vaughan (2010, p104), suara adalah getaran diudara yang masuk ke gendang telinga berupa gelombang yang mirip dengan gelombang yang diciptakan dari kerikil yang dilemparkan ke
7 kolam yang diam, gelombang ini menimbulkan perubahan tekanan atau getaran pada gendang telinga. Vaughan (2010, p124,125) memberikan gambaran besar untuk penggunaan suara dalam multimedia : 1. Menentukan format suara yang cocok untuk multimedia dan bagaimana sarana menyampaikannya. 2. Menentukan kemampuan pemakaian ulang pada sistem dan pengguna. 3. Tentukan macam suara yang diinginkan seperti background music, special soud effect, dan spoken dialog. Tentukan dimana suara tersebut dimainkan dalam alur projek. Masukkan petunjuk suara dalam stortyboard. 4. Tentukan pemakaian suara, apakah menggunakan digital audio atau data MIDI. 5. Mendapatkan sumber dengan membuat dari awal atau membeli hak ciptanya. 6. Mengubah suara agar cocok untuk projek. 7. Memastikan suara agar dengan tepat sinkron dengan projek. Ini mungkin melibatkan tahap 1-4 sampai singkron.
4. Animasi Menurut
Vaughan
(2010,
p140),
animasi
merupakan
menggerakan hal yang statis menjadi bergeak, transisi antar gambar bergerak dengan kecepatan tertentu sehingga membuat ilusi gerak. Animasi dalam komputer memiliki beberapa jenis (Vaughan, 2011, p142-143): a. 2D animation Contoh animasi 2D tulisan yang berkedip, warna yang berubah-ubah, atau perubahan tombol saat ditunjuk. Dengan
adanya
kompleksitas
jalur
animasi
animasi
tersebut
dan dan
menambahkan memberikan
pergerakan serta mengubah letak dengan kecepatan tertentu. Mengkombinasikan perubahan dalam gambar dapat memberikan animasi jalan dengan cara mengubah
8 posisi, mengubah ukuran dapat memberikan efek persepsi jarak 3D.
b. 3D animation Piranti lunak dapat menciptakan dunia virtual dalam 3 dimensi, dan gerakannya dikalkulasikan dalam 3 garis axis (x,y, dan z), sehingga memungkinkan gambar itu bergerak ke depan, belakang, samping, atas dan bawah, atau memungkinkan pengguna berkeliling dan merubah pandangannya dari segala sudut.
5. Video Digital video adalah bagian multimedia yang paling menarik, dan juga alat yang sangat berguna bagi para pengguna komputer untuk lebih mendekati dunia nyata. Video juga merupakan metode sempurna untuk menyampaikan isi dari multimedia kepada penonton televisi. Namun video membutuhkan performa yang tinggi dari komputer atau alat elektronik dan juga kapasitas memory yang besar.
2.1.2
Interaksi Manusia dan Komputer
Galitz (2007, p4) pengguna interface adalah bagian dari piranti lunak komputer dimana
pengguna dapat melihat, mendengar, menyentuh,
bicara, atau memahami piranti tersebut. Pengguna interface mempunyai 2 bagian penting; input dan output. Input adalah bagaimana seseorang berkomunikasi untuk memberikan keinginannya kepada komputer. Beberapa alat untuk melakukan input antara lain keyboard, mouse, trackball, one’s finger (layar sentuh), dan one’s spoken (perintah suara). Output adalah bagaimana komputer mengolah hasil dari komputasi dan kebutuhan pengguna. Sekarang ini, output paling umum ditampilkan pada tampilan layar, diikuti dengan mekanisme yang menguntungkan orang dengan auditory capabilities; suara dan bunyi. Penggunaan indra manusia seperti bau dan touch output dalam rancangan interface belum secara dalam terjelajahi. Desain interface yang baik akan menghasilkan gabungan antara input
9 dan output yang akan memuaskan needs, capabilities, dan limitations dari pengguna dalam cara yang palik efektif. Interface yang paling baik adalah yang tidak diketahui, dan juga yang membuat pengguna berpusat pada informasi bukan cara dari mekanisme untuk menampilkan informasi dan melakukannya. Shneiderman (2004, p74) mencetuskan aturan yang berfokus terhadap perancangan antarmuka, yaitu “eight golden rules” yang dapat diaplikasikan kedalam berbagai rancangan sistem interaktif. Delapan aturan emas tersebut:
1.
Pertahankan konsistensi (strive for consistency) Penggunaan berupa warna, tata letak, tipe tulisan, dan hal lainnya diperlukan serta terminologi yang identik pada perintah, menu juga bantuan.
2.
Penuhi Universabilitas(cater for universability) Pahami perbedaan dari pengguna. Bagaimana pengguna dari pemula hingga yang ahli. Penambahan fitur bagi pemula dan kemudahan akses bagi para ahli.
3.
Berikan umpan balik yang informatif (offer informative feedback) Umpan balik diharapkan ada pada tiap ada interaksi pengguna dengan sistem. Tiap hal kecil dan sering dilakukan umpan balik bisa berbentuk sederhana, apabila interaksi besar yang dilakukan oleh pengguna maka umpan balik sebaiknya mempunyai bentuk lebih kuat.
4.
Rancang dialog yang menghasilkan penutupan (Design dialogs to yield closure) Suatu tindakan yang berurutan sebaiknya dikelompokan dalam bagian awal, tengah , dan akhir. Tahapan ini diharpakan tidak terjadi kesalahan dan memnuhi akan kepercayaan apa yang telah dilakukan oleh pengguna sesuai dengan keinginan.
5.
Mencegah kesalahan (prevent errors) Kesalahan dari pengguna diharapkan tidak terjadi maka perlu
10 adanya pencegah keselahan dari tindakan yang dilakukan pada sistem. Bentuk dari kesalahan ditampilkan pada interface dari sistem dan dapat dimengerti oleh pengguna.
6.
Mudah mengulangi tindakan sebelumnya (permit easy reversal of actions) Pengulangan pada tindakan sebaiknya ada pada tiap aksi yang dilakukan. Fitur ini menghilangkan rasa cemas apabila melakukan kesalahan karena pengguna tau apa yang dilakukan bisa diulang.
7.
Mendukung tempat pengendali internal (support internal locus of control) Membentuk suatu sistem yang merespon sesuai dengan tindakan dari pengguna. Pengguna tidak hanya merespon apa yang diberikan sistem tetapi inisiator dari suatu tindakan.
8.
Mengurangi beban ingatan jangka pendek (reduce short-term memory load) Untuk memaksimalkan hal ini sebaiknya interface memiliki tampilan yang sederhana, tampilan layar yang lebih dari satu disatukan, animasi layar dikurangi, dan waktu belajar yang cukup untuk kode, jembatan keledai, dan urutan kejadian.
2.1.3
Storyboard
Vaughan (2010, p295) storyboard adalah garis besar rancangan grafis, menjelaskan proyek secara jelas dan detail dengan menggunakan kata-kata dan sketsa untuk setiap dan seluruh tampilan layar gambar, suara, dan pilihan navigasi, dan juga menjelaskan spesifikasi warna dan bayangan, konten teks, atribut dan huruf, bentuk suara.
tombol,
gaya
tampilan,
respon,
dan
perubahan
11
Gambar 2.1 Storyboard
2.1.4
Metodologi Scrum
Sommerville (2011, p72-73) scrum memiliki keunggulan dalam kecepatan prosess pengembangan aplikasi dan memiliki fleksibilitas perubahan terkait dengan pengembangan aplikasi. Scrum berpusat pada pengulangan dalam pembuatan aplikasi dan sering melakukan review. Mengetahui pengembangan aplikasi secara cepat merupakan kekurangan yang harus di atasi oleh ketua pengembangan karena bisa terjadi perbuahan, karena perubahaan yang menyimpang dapat mempengaruhi seluruh tim. Terdapat 3 fase dalam Scrum, yaitu:
12
Gambar 2.2 Diagram Scrum
1.
Outline planning and architectural design Fase awal untuk menentukan garis besar tujuan pada proyek serta
desain perangkat lunak. Pemberian rencana awal mengenai kerangka seperti konsep dasar dan kerangka aplikasi.
2. Sprint cycle (assess, select, develop, review) Sprint cycle adalah pengembangan aplikasi yang terus berulang dengan akhir ditentukan oleh pihak manajemen. Pengembangan aplikasi ini biasanya memiliki waktu 2-4 minggu yang berarti aplikasi sedang tahap pengembangan lalu melakukan review dan penilaian, hasilnya akan dikembangkan sesuai dengan hasil pertemuan tersebut, berupa daftar kerja yang akan dilanjutkan. Hal ini berulang untuk 2-4 minggu ke depan dan terus berulang hingga ditentukan layak untuk meninggalkan tahap pengembangan.
3.
Project closure Tahap ini untuk melakukan dokumentasi akhir yaitu bantuan untuk
pemain serta petunjuk, dan manfaat dari proyek. Proyek aplikasi tidak disentuh lagi karena akan terjadi pengembangan yang tidak seharusnya sehingga penentuan beralih dari sprint cycle ke project closure adalah hal krusial.
2.1.4.1 Tahap Perancangan
Ernest Adams membuat tahapan perancangan yang tidak mempunyai
13 nama spesifik, kami menyebutnya stages of game design process by Ernest Adams. Adams (2009, p44 - 52) mengadaptasi metodolgi scrum dan membuat 3 tahapan yang dijelaskan di bawah ini:
Gambar 2.3 Stage of Design Process
1. Concept stage Di stage ini ditentukan hal-hal yang mendasar dari sebuah game. Menentukan hal dasar dalam game tidak dapat diubah pada tengah pengembangan. Hal-hal yang dilakukan dalam concept stage adalah sebagai berikut: a. Getting a concept Berisi mengenai ide umum mengenai gameplay dan proses keberlanjutan game. Gameplay serta tahapan dalam bermain game dijabarkan sebagai konsep umum. b. Defining an audience Menentukan target pemain yang diasumsikan akan bermain game sesuai dengan konsep yang dipakai dalam pengerjaan game. Target pemain ini akan menentukan bagaimana game tersampaikan pada mereka. c. Determining the player’s role Pada game, peran pada karakter yang dimainkan adalah hal penting, ini dikarenakan dalam memerankan suatu karakter di game perlu lingkungan yang mendukung. Deskripsi dari karakter game perlu diketahui oleh pemain sehingga paham apa yang dilakukan. d. Fulfilling the dream Ini merupakan tahapan mengenai akhir dari game. Game seperti film, yaitu memiliki akhir. Dalam menuju akhir
14 tersebut pada game diperlukan tantangan dan bagaimana pemain dapat melewatinya.
2. Elaboration stage Masuk ke dalam elaboration stage menspesifikkan apa yang ada dari concept stage tanpa merubahnya. Concept stage adalah acuan dalam pengerjaan game. Berikut apa saja yang dilakukan dalam elaboration stage: a. Defining the primary gameplay mode Mendefenisikan hal utama dari game. Bagaimana halhal lainnya mendukung gameplay utama dari game. Seperti perspektif pemain saat bermain, interaksi dengan lingkungan, tantangan yang diberikan kepada pemain, dan cara karakter melewati rintangan b. Designing the protagonist Karakter protagonis adalah karakter yang langsung ditemui pemain saat bermain. Bagaimana karakter berperilaku dituntut agar menyenangkan untuk dimainkan. Perlikau seperti apa reaksi yang mungkin dilakukan, ekspresi wajah serta bahasa tubuh yang bisa disampaikan, dan aksen yang dipakai untuk bicara. c. Defining the game world Mendefinisikan lingkungan tempat hidup karakter dari game. Lingkungan itu bisa diadaptasi dari dunia nyata, fantasi, atau fiksi ilmiah. d. Designing the core mechanic Merancang
detail
mengenai
dikonstruksi dalam game. Dan
gameplay
yang
juga detail mengenai
lingkungan dan karakter sehingga sesuai e. Creating additional modes Penambahan mode dalam proses diharuskan sesuai dengan apa yang direncanakan pada konsep awal. Penambahan mode ini diperlukan untuk meningkatkan aspek hiburan atau secara esensial ternyata penting untuk game.
15 f. Designing levels Mulai konstruksi sebuah game yang dapat dimainkan oleh orang lain secara nyata. Konstruksi game yang bisa dimainkan ini sesuai dengan rincian sebelumnya sehingga mendapatkan detail kelebihan dan kekurangan bila rincian digabungkan. g. Writing the story Cerita diperlukan dalam tahapan level ke level selanjutnya. Karena menentukkan akhir dari suatu level, cerita mempengaruhi pemain untuk menarik perhatian pemain. h. Build, test, and iterate Game di buat lalu dilakukan tes apakah cocok dengan apa yang diinginkan. Pembuatan game dilakukan berulang apabila terjadi kesalahan atau tidak sesuai keinginan dari stakeholder. Pengulangan ini diberlakukan agar hasil jadi seperti keinginan dari konsep awal.
3. Tuning stage Saat concept stage beralih ke elaboration stage ditetapan konsep dasar game. Selama di elaboration stage konsep dasar disempurnakan. Pada akhirnya pengulangan pada elaboration stage akan selesai jika sudah sesuai dengan keinginan atau waktu memaksa untuk berganti stage. Tuning stage tidak lagi mengulang desain yang ada tapi mengerjakannya mendekati sempurna dengan kondisi sesuai dengan deadline yang ditentukan.
2.1.5
UML
Menurut Whitten dan Bentley (2007, p371), Unified Modelling Language adalah rancangan model yang digunakan untuk mengganbarkan sistem piranti lunak terkait dengan objek.
16 2.1.5.1 Use case
Berdasarkan diagram Whitten dan Bentley (2007, p246), use case diagram yang menggambarkan interaksi antara aktor dan sistem. Use case terbagi dalam beberapa aspek, yaitu :
a.
Actor
Gambar 2.4 Aktor
Actor pada use case digunakan sebagai pelaku yang memulai aktivitas sistem yang bertujuan untuk melakukan tugas yang dapat menghasilkan nilai terukur. Actor menjadi empat pada umumnya, yaitu: •
Primary Business Actor Aktor utama yang secara langsung berpengaruh dalam menjalankan use case dengan cara menerima suatu nilai yang dapat diukur atau diteliti. Aktor utama tersebut dapat mengerjakan tugas atau tidak.
•
Primary System Actor Aktor utama yang secara langsung berhubungan dengan sistem yang tersedia. Aktor utama ini dapat berinteraksi dengan primary business actor sebagai perantara dengan sistem yang ada.
•
External Server Actor Aktor yang merespon sebuah permintaan dari use case.
•
External Receiver Actor Aktor yang bukan merupakan aktor utama tetapi dapat
17 menerima suatu nilai yang dapat dinilai dan diukur dari use case.
b.
Relationship Menurut
Whitten
dan
Bentley
(2007,
p248)
relationship
menggambarkan garis hubungan antar dua simbol pada use case diagram. Terdapat lima tipe relationship, yaitu : •
Association Suatu hubungan antar suatu actor dan sebuah use case
yang
menggambarkan interkasi yang terjadi diantara keduanya. Terdapat dua jenis garis yang termasuk ke dalam association, yaitu garis yang diujungnya bertanda panah dan yang tidak memiliki tanda panah. Garis panah memberikan arti bahwa use case tersebut dapat dilakukan langsung oleh aktor. Sedangkan garis yang tidak memiliki ujung panah memiliki arti bahwa terjadi interaksi antar use case dan aktor dari external server atau receiver.
Gambar 2.5 Association
•
Extends Sebuah use case yang terdiri dari fungsionalitas yang kompleks dari beberapa langkah untuk membuat diagram yang mudah dimengerti. Tiap
garis yang memiliki relationship extends
“<<extends>>”.
Gambar 2.6 Extends
diberi label
18
•
Uses (includes) Use case
abstrak adalah dua atau lebih use case
yang
menampilkan beberpa langkah yang fungsional. Pada uses atau includes relationship menampilkan hubungan antar use case abstrak dengan use case itu sendiri. Tiap garis yang memiliki relationship uses harus diberi label “<<uses>>”.
Gambar 2.7 Uses
•
Depends On Suatu hubungan antara use case yang saling mempengaruhi use case lainnya. Suatu use case tidak dapat dijalankan jika use case lain yang terhubung dengannya belum dijalankan. Setiap garis yang memiliki relationship depends on diberi label “<<depends on.>>”
Gambar 2.8 Depends On
19
•
Inheritance Hubungan inin dibuat jika terdapat dua aktor atau lebih yang memiliki tugas yang sama dan aktor abstrak dibuat untuk menyatukan aktor-aktor tersebut. Garis yang menandakan relationship inheritance ini sama seperti association dimana garis nya memiliki tanda panah diujungnya.
Gambar 2.9 Inheritance
2.1.5.2 Activity Diagram
Menurut Whitten dan Bentley (2007, p390), activiy diagram menggambarkan langkah-langkah dari use case untuk menjelaskan proses atau perbuatan tiap objek. Notasi yang ada pada activity diagram adalah: 1. Intial node Sebuah lingkaran dipenuhi warna yang mewakili awal suatu proses. 2. Actions Sebuah persegi panjang yang pinggirnya seperempat lingkaran
20 yang menggambarkan langkah-langkah. 3. Flow Sebuah tanda panah mewakili proses yang dilakukan. 4. Decision Sebuah tanda berbentuk belah ketupat memiliki alur masuk tunggal dengan alur keluar 2 atau lebih untuk mewakili suatu kondisi. 5. Merge Sebuah tanda berbentuk belah ketupat memiliki 2 atau lebih alur alur masuk dengan 1 alur keluar. 6. Fork Sebuah persegi panjang berwarna hitam memilki 1 alur masuk dan dua atau lebih alur keluar untuk mewakili tindakan yang berjalan bersamaan. 7. Join Sebuah persegi panjang berwarna hitam memiliki 2 atau lebih alur masuk dan 1 alur keluar untuk menyatakan tindakan yang berjalan bersamaan usai. 8. Activity Final Sebuah lingkaran padat di dalam lingkaran putih mewakili proses telah berkahir.
21
Gambar 2.10 Activity Diagram
2.1.5.3 Sequence Diagram
Menurut Whitten dan Bentley (2007, p659), sequence diagram adalah interaksi antar objek dan aktor dalam runtun waktu operasional yang merupakan pengembangan dari use case. Adapun notasi pada sequence, yaitu: 1. Actor
22 Pelaku yang melakukan interaksi kepada sistem, simbol diambil dari aktor use case. 2. Interface Class Kotak yang mewakili class tatap muka. Ditulis dengan <
>. 3. Controller Class Kotak yang mewakili class pengendali. Ditulis dengan <>. 4. Entity Class Kotak yang berisikan entitas yang membutuhkan untuk berkolaborasi secara runtun. Diwakilkan dengan simbol “:”. 5. Messages Merupakan tanda panah antar kelas/aktor dengan kelas dengan pesan masukkan. 6. Activation Bars Menunjukka rentang waktu yang terletak pada lifelines(Garis putus-putus dari kelas/aktor) berbentuk balok saat ada interaksi. 7. Return Messages Menunjukkan timbal balik yang diberikan antara berhasil atau tidaknya rentetan operasi yang dijalankan. Digambarkan dengan garis putus-putuh (arah berlawanan dengan messages). 8. Self-call Kelas yang memanggil dirinya sendiri. Diwakili tanda panah yang menunjuk kepada dirinya sendiri. 9. Frame Sebuah kondisi khusus yang terjadi pada sequence diagram seperti loop, option, break, dan alternate. Ditunjukkan dengan kotak persegi.
2.1.5.4 Class Diagram
Whitten dan Bentley (2007, p400) adalah struktur objek statis pada sistem yang menunjukkan kelas objek pada sistem dan relasi antar class. Notasi yang ada pada
23 class diagram, yaitu: 1. Object Class Kumpulan objek yang memiliki atribut dan behaviour.
2. Attribute Representasi dari objek berupa data.
3. Behavior Hal-hal yang dilakukan objek yang berkaitan pada fungsi yang bekerja pada objek.
4. Visibility Terbagi menjadi 3 tingkat, yaitu: -
Public Atribut ini diwakilkan dengan tanda “+” dapat diakses oleh behaviour lainnya.
-
Protected Atribut ini dapat diakses oleh behaviour lain apabila turunannya, diwakilkan dengan tanda “#”.
-
Private Diwakili dengan tanda “-”, atribut tidak dapat diakses oleh kelas lain.
Gambar 2.11 Visibility 5. Association Relasi antar class yang merepresentasikan interaksi antara keduanya.
24
Gambar 2.12 Association
6. Composition Hubungan agregasi antara whole dan part. Whole adalah inti dan part bagian dari whole tersebut. Apabila whole ditiadakan part turut hilang.
Gambar 2.13 Composition
7. Inheritance
25
Gambar 2.14 Inheritance
Konsep mengenai method atau atribute yang ada pada objek bisa digunakan pada objek lain
8. Multiplicity Angka dari hubungan antara objek dengan objek lainnya mengenai minimal dan maksimal penggunaannya.
0
Tepat 1.
0…1
0 atau 1.
0…* / *
0 atau lebih.
1…*
1 atau lebih.
m…n
Rentangv spesifik dari m hingga n.
26
Gambar 2.15 Class Diagram
2.2 Teori Tematik
Teori tematik adalah teori-teori khusus yang biasa digunakan sebagai dasar pembuatan skripsi. Berikut ini adalah teori-teori yang terkait:
2.2.1
Game
Looy (2009, p57-58) melakukan komparasi media antara buku, film, dan game. Ketiga media mensimulasikan imajinasi kepada pengguna media. Imajinasi ini mengikat pemain untuk masuk ke dalam dunia artifisial.
27 Adams (2009, p3) game merupakan aktivitas bermain, diarahkan dalam konteks meniru realita, di mana partisipan mencoba mendapatkan setidaknya satu keputusan yang bebas, dengan tujuan yang tidak remeh, dan mengambil tindakan yang tersedia mengikuti aturan yang ada. Jurnal Breuer dan Benter (2010, p7-8) game tidaklah monoton sebagai hiburan melainkan dapat dijadikan media penyampaian hal-hal edukasi. Penyampaian edukasi tidak selalu dengan pertanyaan dan jawaban yang sering dijumpai dalam sekolah tetapi dapat disampaikan seiring berjalannya permainan. Dalam jurnal Reyes dan Adams (2009, p160-161) sebuah realita yang dibentuk dalam game dapat mempengaruhi manusia terutama dalam psikis atau fisik. Secara sadar atau tidak hal tersebut tersimulasi karena dorongan untuk memainkan peran yang ada dalam game.
2.2.1.1 Game Classification
Adams (2009, p70) genre video game ditentukan oleh bagaimana rintangan yang dihadapi pemain, atau cenderung ke konten game bekerja. Beberapa genre yang ada dalam game:
1.
Action game Action game memasukan tantangan fisik. Mempunyai tekateki, balapan, dan bermacam konflik lainnya. Memiliki tantangan ekonomi yang sederhana, dan biasanya meibatkan pengumpulan objek. (Adams, 2009, p70). Karateristik genre ini tergantung kepada kecepatan. Keahlian pemain cenderung ke kondisi pemain secara fisik dan mental. (Adams, 2009, p363). Kecepatan yang dimaksud adalah kecepatan merespon dari pemain untuk karakter yang dimainkan supaya tidak terkena efek yang merugikan karakter tersebut.
2.
Strategy game Game dengan gendere ini berisikan konten strategi, taktikal, dan terkadang tantangan logistik. Tantangan ekonomi dan eksplorasi memberikan tambahan variasi dari game terkait. (Adams, 2009, p71).
28 3.
Role-playing game Memiliki tantangan ekonomi, taktikal, logistik, dan eksplorasi termasuk mengumpulkan senjata dan juga bertransaksi untuk mendapatkan senjata/alat yang lebih baik. Terkadang memiliki tantangan teka-teki dan konseptual, dan jarang sekali tantangan fisik.
4.
Real-world simulation Game simulasi yang menirukan tantangan menyerupai dunia nyata. Seperti game olahraga, dan simulasi kendaraan. (Adams, 2009, p71).
5.
Construction and management game Penataan dalam game memiliki tantangan ekonomi dan konseptual. Game bergenre ini tidak memiliki tantangan eksplorasi ataupun fisik. (Adams, 2009, p71).
6.
Adventure game Genre ini ditekankan kepada tantangan petualangan, dan pemecahan teka-teki. Biasanya pemain diberikan teka-teki untuk memahami cerita.
7.
Puzzle game Adams (2009, p70) sebuah adventure game adalah cerita interaktif mengenai karakter protagonist yang dimainkan. Cerita yang disampaikan dan eksplorasi menjadi hal yang essensial pada game. Puzzle solving dan tantangan yang berkonsep melengkapi gameplay secara umum. Pertarungan, manajemen ekonomi, dan action challenge dikurangi atau tidak ada sama sekali. Definisi di atas tidak berarti ada konflik dalam adventure game(walaupun banyak yang tidak punya)—hanya bertarung yang tidak menjadi aktivitas utama. Adventure game sendiri memiliki sistem
perekonomian
internal
didalamnya.
Manipulasi
atau
mengoptimalkan sebuah sistem ekonomi tidak menjadi pengalaman dalam adventure game; ini (dengan beberapa hal) memisahkan dari role-playing game.
2.2.1.2 Game Design Document
29 Menurut Adams (2009, p55) Design document diperlukan untuk mencatat keputusan yang dibuat. Dari ide yang ada ditumpahkan ke suatu media sehingga menjadi jelas rencana yang ingin dibuat. Ide yang terpapar tersebut lebih mudah didiskusikan dan dirancang ulang. Tipe-tipe dari design document: 1. High Concept Document Berisikan ide utama dari yang akan dibuat. Penjelasan singkat mengenai game yang dapat dibaca semua kalangan. 2. Game Treatment Document Merepresentasikan gambaran secara luas dari game, diperuntukkan kepada orang yang sudah berminat dengan game. Berisi ringkasan dari ide dasar game. 3. Character Design Document Mencatat desain dari karakter yang ada pada game. Daftar gerakan yang dilakukan dan pose yang berbeda dari karakter serta latar belakang dari karakter yang berpengaruh dalam game. 4. World Design Document Mengandung
bangunan
dan
audio
yang
menggambarkan dunia pada game. Memasukkan peta apabila terlalu luas digambarkan dan juga informasi mengenai dunia game itu. 5. Flowboard Adams (2009, p57), menjelaskan bahwa flowboard gabungan antara flowchart dan storyboard. Cara pembuatan flowboard: Memberikan nama mode di paling atas. Di tengah gambar sketsa tampilan, memberikan perspektif dari tampilan kamera, dan user interface yang tampil. Tulis keterangan mengenai menu dan beragam input yang ada. Lalu berikan tanda panah ke mode lainnya dengan kondisi yang menyebabkan transisi dari mode satu ke lainnya. 6. Story and Level Progression Document Adams (2009, p57), document ini mencatat tahapan cerita dari game dari awal hingga akhir. Cerita tidak
30 dipaparkan secara rinci hanya gambaran secaras umum. Memasukkan proses percabangan dari tindakan yang diambil pemain apabila ada. Menjelaskan pemaparan cerita dari cutscenes, mission briefings, dialog, atau lainnya. 7. The Game Script Menggambarkan
skenario
dari
game
dengan
menjabarkan rule dan core mechanic dari game. Menjelaskan secara detail rule of play seolah yang membaca memainkan game tersebut.
2.2.1.3 Game Balancing
Adams (2009, p324-338) konsep keseimbangan tergantung bagaimana game itu sendiri. Game balancing dibagi menjadi 2 yaitu player-versus-player (PvP) dan player-versus-enemy game. Baik dari ke dua aspek tersebut memempunyai karakterisitik: •
Game menyediakan pilihan yang berarti. Pemain dapat memilih strategi yang memungkinkan untuk menhadapai rintangan yang ada, tidak ada strategi yang mendominasi.
•
Peran kesempatan tidak melebehi skill dari pemain. Skill tidak dapat didominasi oleh kesempatan karena pemain yang lebih baik adalah mereka yang berpengalaman.
Karateristik dari game PvE yang seimbang yaitu: •
Game memberikan tantangan yang konsisten. Tingkat kesulitan game harus konsisten. Peningkatan kesulitan sebaiknya tidak meningkat secara drastis sehingga masuk akal dalam menghadapi rintangan yang berkelanjutan.
•
Pemain tidak boleh mendapatkan kekalahan secara mendadak tanpa ada peringatan terlebih dahulu dan diluar kesalah sendiri. Mendapatkan kekalahan bisa membuat pemain menjadi lebih memahami game yang disevut learn-bydying. Atau bisa membuat peringatan yang cukup dari bahaya yang mendekat.
31 •
Jalan buntu sebaiknya tidak terjadi. Kondisi ini menyebabkan pemain tidak kalah ataupun menang dalam bermain. Hal ini menyebabkan kebingungan pada pemain karena masih berada dalam game. Interaksi dari pemain sebaiknya berujung pada suatu kesimpulan yang menunjukkan kemenangan atau kekalahan pada game.
•
Pengambilan keputusan yang krusial tidaklah tanpa informasi peringatan yang memadai. Keterangan yang cukup akan membuat pemain mengerti apa yang disebabkan oleh tindakan yang akan pemain lakukan sehingga tidak perlu pemain mengulang ke pilihan tersebut.
•
Semua fakta yang dibutuhkan untuk menyelesaikan game sebaiknya terkandung dalam game. Untuk menyelesaikan game pemain tidak perlu mencari tahu bagaimana menyelesaikan di luar game.
•
Tantangan dalam game sebaiknya tidak berisikan hal-hal tidak wajar yang ada pada genre game. Contohnya teka-teki logika pada simulasi pesawat. Apabila memang memiliki genre campuran sebaiknya hal ini diterangkan pada pemain sebelum memulai permainan.
2.2.1.4 Game Engine
Menurut Zerbst (2004, p3, p4) game engine adalah bagian dari sebuah game yang menggerakkan beberapa fungsionalitas program tersebut. Game engine biasanya mengatur dan melakukan beberapa tindakan low-level programming seperti berkomunikasi
dengan
graphic
adapter,
mengatur
keadaan
render-nya,
mentransformasi model dan obyek, serta berurusan dengan perhitungan matematika yang sulit (misalnya matriks putaran). Zerbst (2004, p5) juga menjelaskan beberapa implementasi yang harus ada dalam engine, yaitu : ● Mengatur semua data yang berada didalam area tanggung jawabnya ● Mengkomputasikan semua data menurut area kerjanya ● Mengirimkan semua data menuju instance nya apabila diperlukan ● Menerima data supaya diatur dan dikomputasikan dari instance sebelumnya
32 2.2.1.4.1 Unity
Blackman (2013, pxxvi) Unity engine merupakan game engine yang tepat bagi studio kecil, indie developer, dan pengembang game lainnya. Unity menyediakan titik awal yang sempurna dalam proses pengembangan game, keseimbangan fitur dalam engine nya, serta fungsionalitas harga. Unity engine dikenal dengan kemampuan cross-platform-nya yang sekarang bahkan merambah platform mobile. Versi awal dari Unity merupakan migrasi program dari Flash dan Director, sehingga menciptakan lingkungan scripting yang mudah diadaptasi. Banyaknya material game yang disediakan oleh Unity pada asset store nya memudahkan pengembang untuk menciptakan berbagai jenis genre game seperti first person shooters, racing games, platform jumpers, dan lainnya. Dalam unity ada scene dan prefab. Scene adalah ruang yang dapat diisi objek yang diinginkan dalam membuat game. Scene dapat dibuat lebih dari satu dan dikoneksi sesuai dengan urutan yang sesuai dengan game yang akan dibuat. Prefab adalah kontainer yang menyimpan objek dari game serta komponenya sehingga dapat dimuat ulang ke dalam game.
2.2.1.4.2 C#
Griffin, Adams, dan Liberty (2010, p1) C#—dilafalkan dalam bahasa inggris “See Sharp”—didesain untuk Microsoft’s .NET platform. Semenjak dirilis tahun 2002, C# mempunyai banyak peran. C# digunakan secara luas pada server dari websites, dan juga dalam client dan server dalam line-ofbussiness Windows desktop applications. C# ditunjukkan pada pengembang yang berkerja pada windows platform, dan sintaks ini secara akrab untuk pengguna C atau C++, atau untuk bahasa lainnya yang mempunyai akar yang sama, seperti JavaScript dan Java. Dasar bahasa seperti statements, expressions, function declarations, dan flow control dimodelkan semirip mungkin dalam bahasa keluarga C. C# memiliki garbage collection yang menghilangkan masalah umum tentang memory leak dan circular references. Masalah keamanan yang sering terjadi saat kode dijalankan adalah banyaknya bug serta kurangnya tingkat
33 keamanan dari kode tersebut yang dapat menghasilkan bug. Meskipun pengembang
C atau C++ Windows tidak terbiasa dengan fitur tersebut,
namun jelas terlihat oleh para pengembang JAVA dimana bahasa JAVA sama sekali tidak berlawanan dengan fitur pada bahasa C# “LINQ” saat bekerja dengan suatu kumpulan informasi, entah itu model objek, dokumen XML, atau basis data. Menggabungkan kode dari komponen eksternal sangatlah mudah walaupun ditulis dalam bahasa lain. C# juga mendukung functional programming, sebuah fitur hebat yang sebelumnya sering diapakai pada halhal akademik.
2.2.1.3.3 JavaScript
Flanagan (2011, p1-2) JavaScript diperkenalkan pertama kali oleh Netscape. Pada awalnya JavaScript sebagai bahasa sederhana untuk browser Netscape (sekarang Mozilla). Script yang telisensikan oleh Sun Microsystems (sekarang Oracle) dan Netscape mempunyai nama “ECMAScript”. Kemudian
Microsoft
sendiri mencoba untuk mengadaptasikan teknologi ini yang mereka sebut sebagai “Jscript” dan banyak orang menyebutnya “JavaScript”. JavaScript adalah bahasa pemrograman dalam web. Javascript mendominasi website. Javascript dipakai untuk menentukan tindakan khusus dalam web. Adapun JavaScript dipakai dalam desktop, game konsol, tablet, dan smart phone.
34