BAB 2 LANDASAN TEORI
2.1 Teori Umum 2.1.1 Interaksi Manusia dan Komputer (IMK) Interaksi Manusia dan Komputer adalah sebuah disiplin ilmu yang berkaitan dengan desain perancangan, evaluasi, dan implementasi sistem komputasi
interaktif
yang
seyogyanya
digunakan
oleh
manusia.
(Shneiderman & Plaisant,2010, p.4).
Gambar 2.1 Interaksi Manusia dan Komputer Lima faktor manusia terukur yang menjadi pusat pengevaluasian (Shneiderman & Plaisant, 2010, p. 33-34): 1.
Waktu untuk belajar Berapa lama waktu yang akan dibutuhkan manusia untuk mempelajari bagaimana menggunakan perintah yang relevan dalam melaksanakan suatu tugas ?
8
9 2.
Kecepatan kinerja Berapa lama waktu yang diperlukan untuk melakukan suatu tugas baru yang belum pernah dikenal ?
3.
Tingkat kesalahan pemakai Berapa banyak suatu kesalahan yang bisa dibuat dalam menyelesaikan suatu tugas ?
4.
Daya ingat waktu ke waktu. Seberapa baikkah pengguna mempertahankan pengetahuannya setelah jangka watu tertentu ? Daya ingat mempunyai keterkaitan dengan waktu pembelajaran. Selain itu frekuensi pemakaian juga memegang peranan penting.
5.
Kepuasan subjektif pengguna. Bagaimanakah kepuasan pengguna terhadap sistem yang dipakai dalam aplikasi ? Jawaban bisa didapatkan dengan metodologi
wawancara,
survey
atau
kuesioner
yang
mengandung skala kepuasan bagi pengguna. Selain itu, menurut Dasbatz (2003, p. 109), Shackel turut menjelaskan usability dalam hal effectiveness, learnability, flexibility, dan attitude.
10 2.1.1.1
Delapan Aturan Emas Menurut
Shneiderman (2010,
p. 88 – 89), terdapat 8
(delapan) aturan emas yang harus dipatuhi dalam sistem perancangan user interface, yaitu: 1. Konsistensi Merupakan aturan yang paling sering dilanggar. Karena ada banyak
bentuk
menyebabkan
konsistensi
aturan
ini
yang
harus
menjadi
sangat
diperhatikan sulit
untuk
diterjemahkan. Konsistensi urutan tindakan pada program, seperti: tampilan, jenis tulisan, istilah – istilah yang digunakan pada
prompt,
menu,
serta
bantuan
pada
program.
Pengecualian, seperti konfirmasi diperlukan dari perintah menghapus atau tidak ada gema password, harus dipahami dan terbatas jumlahnya. 2. Kegunaan universal Sistem harus mampu dibuat sehingga perbedaan pengguna dari keahlian, perbedaan umur, kondisi pengguna, dan teknologi yang digunakan sebagai penduan pembuat desain. 3. Umpan balik informatif Sistem harus mampu memberikan umpan balik pada saat operator melakukan operasi. Umpan balik sebaiknya dibagi menjadi dua bagian tergantung pada tingkat kepentingan dari suatu operasi. Pada operasi yang sering dan besar, respon dapat
11 sederhana, sedangkan untuk operasi jarang dan besar, maka respon dapat berbaentuk lebih substansial. Presentasi visual dari objek yang menarik menyediakan lingkungan yang nyaman untuk menampilkan perubahan eksplisit. Contohnya: memberi tanda suara ketika terjadi kesalahan. 4. Merancang dialog untuk penutupan interaksi Urutan aksi harus diatur sedemikian rupa menjadi suatu kelompok dengan sebuah permulaan , pertengahan, dan diakhiri oleh sebuah penutupan. Umpan balik yang informatif dapat memberitahukan hasil dari suatu pengoperasian dan selanjutnya dapat meneruskan ke tahapan sesudahnya. 5. Pencegahan kesalahan dan penanganan secara sederhana Sistem sedapat mungkin tidak memungkinkan pengguna melakukan kesalahan fatal. Jika terjadi kesalahan fatal maka sistem seharusnya dapat mendeteksi kesalahan dan mampu memberikan petunujk yang sederhana, berguna, dan spesifik untuk pemulihan kesalahan sistem tersebut. 6. Tindakan pengembalian yang mudah. Sedapat
mungkin
sistem
mampu
melakukan
tindakan
reversible. Fitur ini mampu mengurangi kecemasan bagi pengguna
ketika
terjadi
suatu
kesalahan
kecil.
Unit
reversibilitas mungkin dapat berupa tindakan tunggal, tugas
12 data entry, atau kelompok lengkap tindakan, seperti masuknya nama dan alamat blok. 7. Mendukung tempat pengendalian internal. Interface yang mengejutkan, antrian data, ketidakmampuan untuk
mendapatkan
atau
kesulitan
dalam
memperoleh
informasi yang diperlukan, dan ketidakmampuan untuk menghasilkan tindakan yang diinginkan oleh pengguna merupakan semua hal yang dapat memeberikan kecemasan dan ketidakpuasan bagi pengguna. Prinsipnya adalah menghindari causality dan dorongan itu yang membuat penguna mengambil tindakan bukan menanggapai tindakan. Salah satu cara yang dapat digunakan adalah menjadikan pengguna sebagai pengontor sistem bukan sebaliknya. 8. Mengurangi beban ingatan jangka pendek. Ingatan manusia yang terbatas membutuhkan tampilan yang sederhana atau banyak tampilan halaman yang sebaiknya disatukan. Cara lain untuk mengakalinya adalah frekuensi gerakan window dikurangi, dan waktu latihan yang cukup dialokasikan untuk kode, mnemonic, dan juga urutan tindakan.
2.1.2 Multimedia
13 Multimedia adalah kumpulan teks, seni, suara, animasi, dan video yang disampaikan kepada pengguna melalu peralatan elektronik dan digital. (Tay Vaughan,2011,p.2-3). Multimedia dibalut secara bersama – sama ke sebuah objek dengan menggunakan authoring tools. Secara garis besar,ada 5 (lima) elemen multimedia, yaitu : 1.
Text Menurut Tay Vaughan (2011, p,18),teks adalah kekuatan yang mampu membangkitkan suatu makna yang beragam. Bahkan sebuah kata mampu diartikan sebagai bermacam – macam maksud. Oleh karena itu teks merupakan suatu elemen paling dasar dalam multimedia. Itu dikarenakan, membaca dan menulis merupakan suatu keterampilan yang masih akan dilakukan di masa yang akan datang.
2.
Gambar Menurut Tay Vaughan (2011, p.71), gambar juga salah satu elemen dasar di dalam multimedia. Multimedia yang terdapat di perangkat elektronik sendiri merupakan gabungan dari teks dan gambar grafis, baik yang bergerak maupun grafis tetap.
3.
Suara Suara merupakan elemen multimedia yang paling peka diantara elemen lainnya (Vaughan, 2011, p. 104). Suara yang bagus dapat memberi kesan bagus pada aplikasi, sedangkan penggunaan suara yang salah memberi kesan buruk pada aplikasi meskipun aplikasinya bagus. Hal itu
14 dikarenakan suara merupakan sesuatu yang bisa menyetel mood anda ketika menggunakan aplikasi tersebut. 4.
Animasi Animasi merupakan presentasi statis yang bergerak (Vaughan, 2011, p. 142). Animasi bergerak merupakan perubahan tampak gambar yang berganti dari waktu ke waktu. Efek animasi seperti menghilang, mengecil, membesar merupakan animasi standar yang ada pada hampir semua perangkat sistem operasi.
5.
Video Video merupakan elemen multimedia dasar yang paling menarik perhatian para pengguna dibandingkan dengan elemen multimedia lainnya (Vaughan, 2011, p. 164). Diantara elemen lainnya, multimedia juga merupakan elemen yang paling memakan perhatian pada perangkat
komputer.
Hal
itu
dikarenakan
video
merupakan
penggabungan antara teks, suara, gambar, animasi menjadi satu pengabungan yang enak dan senada untuk dilihat. 2.1.3 Teori Waterfall 2.1.3.1
Definisi Teori Waterfall Waterfall model, yang juga disebut sebagai classic life cycle, memperlihatkan suatu pendekatan sistematis dan sekuensial untuk pengembangan
software
yang
dimulai
dengan
spesifikasi
pelanggan, persyaratan dan kemajuan melalui berbagai tahapan
15 awal hingga tahapan akhir (software selesai). (Pressman, 2010, p. 39). Dalam penyusunan laporan tugas akhir ini, metode rekayasa perangkat lunak yang digunakan adalah metode Waterfall. Metode Waterfall mengusulkan sebuah pendekatan kepada perkembangan perangkat lunak yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. 2.1.3.2
Tahapan Teori Waterfall
Gambar 2.2 Waterfall model
Ada 5 (lima) tahapan dalam pengerjaan teori Waterfall. Berikut adalah tahapan – tahapan tersebut : 1. Komunikasi Komunikasi merupakan awal dari pengerjaan aplikasi. Berkomunikasi dengan pelanggan untuk memahami tujuan pelanggan dan mendapatkan persyaratan yang harus dipenuhi oleh programmer ketika akan menyelesaikan aplikasi. 2. Perencanaan
16 Setelah mendapatkan persyaratan dari pelanggan, maka dibuatlah perencanaan berdasarkan pada syarat yang telah ditetapkan tersebut. Plan mapping atau disebut juga sebagai software project plan sangatlah membantu menjelaskan rekayasa perangkat lunak yang akan dilakukan. Selain itu mapping juga turut menjelaskan resiko yang mungkin terjadi, jumlah sumber daya yang akan dibutuhkan, hasil produk yang akan diproduksi, dan juga jadwal pekerjaan. 3. Modeling Seringkali para software engineer yang ingin lebih memahami konsep proyeknya membuat modeling skala kecil terhadap proyek itu terlebih dahulu. 4. Konstruksi Mengkonstruksi barisan kode yang akan dijadikan sebagai sumber aplikasi yang akan dibuat dan mengadakan pengujian terhadap kesalahan. 5. Evaluasi Menguji ulang aplikasi yang sudah siap dan mendistribusikan ke pasaran masyarakat. Para pengguna juga bisa memberikan umpan balik terhadap hasil evaluasi aplikasi tersebut.
2.1.4 Object Oriented Programming ( OOP )
17 Menurut Britton & Doake (2003, p. 268), Pendekatan berorientasi objek (OOP) adalah pendekatan dalam mengembangkan sebuah system software yang berdasarkan pada item data dan atribut – atribut serta operasi yang mampu menjelaskan system itu sendiri. Sedangkan menurut Whitten & Bentley (2007, p. 370) pendekatan berorientasi objek
(OOP)
adalah
suatu
jenis
pendekatan
yang
diperuntukkan pada pemorgraman yang memerlukan teknik untuk analisis dan desain berorientasi pada objek. 2.1.4.1
Konsep Object Oriented Programming Ada beberapa konsep OOP yang harus dipatuhi menurut Whitten & Bentley (2007, p. 375), yaitu : 1. Object Objek adalah sesuatu yang mampu dilihat, disentuh, atau sebaliknya dapat meraksan atau mengetahui data pengguna. 2. Attribute Atribut adalah data yang mewakili masing – masing karakter yang terdapat pada objek. 3. Object Instance Masing – masing bagian tertentu yang terdapat pada atribut objek tersebut. 4. Behaviour
18 Kumpulan dari sesuatu hal yang objek atau data bisa lakukan dan sesuai dengan fungsi yang terdaftar. Pada OOP, perilaku atau behaviour ini disebut dengan metode, operasi atau layanan. 5. Encapsulation Penggabungan beberapa item data menjadi satu item data yang besar dan kompleks. 2.1.5 Database Menurut Connoly (2010, p. 15), File based atau basis data mempunyai definisi sebagai kumpulan data yang dihubungkan secara bersama – sama, dan gambaran dari data yang dirancang untuk memenuhi kebutuhan informasi dari suatu organisasi. Connoly juga menambahkan bahwa file based itu juga dapat berupa kumpulan program aplikasi atau kumpulan software yang mempu memberikan layanan unik untuk end user (2010, p. 7). Sistem basis data merupakan upaya untuk agar sistem pengisian dikenal oleh sistem komputer. Sistem pengisian manual bekerja dengan baik selama data yang diletakkan kecil. Oleh karena itu sistem basis data berbeda dengan system file yang menyimpan data dengan terpisah. Pada basis data, sistem menyimpan file secara terintegrasi dan terorganisasi sehingga pada saat mengakses data, menjadi lebih efisien. Selain itu, basis data memilik pendekatan yang desentralisasi. Menurut Connoly (2005, pp39-41), database languages terdiri atas dua bagian yaitu DDL (Data Definition Language) dan DML (Data Manipulation Language). DDL adalah sebuah bahasa yang
19 mengijinkan user mendeskripsikan dan menamai entities, atribut dan relationship yang diperlukan untuk aplikasi bersama dengan integrity dan security constraints yang berhubungan. DML adalah sebuah bahasa yang menyediakan sebuah set dari operasi-operasi yang mendukung manipulasi data yang ada di database. 2.1.6 Unified Modelling Language ( UML ) 2.1.6.1
Definisi Unified Modelling Language Menurut Booch, Rumbauch & Jacobson ( 2000, p. 13 ),UML adalah suatu standar bahasa untuk menulis software blueprints. UML bisa digunakan untuk memvisualisasikan, menspesifikkan, membuat dan mendokumentasikan software systems. Sedangkan menurut Pressman ( 2011, p.841 ), UML adalah bahasa yang telah menjadi standar untuk pemodelan desain program berorientasi objek dan beserta aplikasinya.
2.1.6.2
Komponen Unified Modeling Language Secara garis besar, UML dibagi menjadi 9 tipe komponen diagram, akan tetapi yang paling sering digunakan dalam suatu model perancangan, yaitu:
20 1. Class diagram Menurut Booch, Rumbauch & Jacobson ( 2000, p. 25 ), class diagram
merupakan
sekumpulan
kelas,
interface
dan
hubungannya satu sama lain. Sedangkan menurut Pressman ( 2011, p. 842 ), class diagram merupakan hubungan antar satu kelas dengan atribut, operasi dan juga sekaligus hubungannya satu sama lain. Diagram ini adalah diagram yang paling sering ditemukan dalam desain OOP. Diagram ini merupakan diagram statis dan tidak menunjukkan sifat dinamis dalam hubungannya dengan objek atribut lainnya. Diagram ini memperlihatkan himpunan kelas, interface dan kolaborasinya antar objek. Elemen – elemen class diagram dalam pemodelan UML terdiri dari : kelas, struktur kelas, sifat kelas, gabungan, ketergantungan, relasi turunan dan role namenya.
21
Gambar 2.3 Class Diagram 2. Use Case Diagram Menurut Booch, Rumbauch & Jacobson ( 2000, p. 25 ), use case diagram merupakan kumpulan kasus dan aktor pelaku beserta hubungan antara keduanya. Use case diagram mengalamatkan sistem secara static. Diagram ini sangat penting dalam mengorganisasikan dan dalam modeling perilaku sistem (behavior of system).
22 Sedangkan menurut Pressman (2011, p. 848), sebuah use case diagram menggambarkan bagaimana user berinteraksi dengan sistem dan mendefinisikan langkah – langkah diperlukan untuk mencapai tujuan tertentu. Diagram ini sangatlah penting dalam memetakan perilaku dari sistem dan aktor penggunanya.
Gambar 2.4 Use Case Diagram 3. Sequence Diagram Menurut Booch, Rumbauch & Jacobson (2000, p. 25), diagram interaksi yang mengikutsertakan pengaturan waktu sebgai pesan yang muncul. Diagram interaksi sendiri adalah diagram yang menunjukkan interaksi, terdiri atas kumpulan objek dan hubungannya termasuk pesan yang mungkin diikutsertakan diantara hubungan tersebut.
23 Sedangkan menurut Pressman ( 2011, p. 853 ), sequence diagram digunakan untuk menunjukkan komunikasi yang dinamis antara objek selama mengeksekusi perintah. Sequence diagram itu sendiri menggambarkan interaksi antar objek di dalam dan di sekitar sistem berupa pesan yang digambarkan terhadap waktu. Sequence diagram itu sendiri terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek yang terkait).
Gambar 2.5 Sequence Diagram 4. Activity diagram Menurut Booch, Rumbauch & Jacobson ( 2000, p. 25 ), activity diagram adalah jenis diagram yang memperlihatkan pergerakan aktivitas – aktivitas dari suatu system. Activity diagram memperlihatkan pergerakan dinamis dari sistem tersebut. Diagram ini menjadi sangat penting ketika ingin membuat modeling dari suatu fungsi dan juga untuk
24 memperlihatkan arah pergerakan dari objek yang terdapat di sistem. Sedangkan menurut Pressman (2011, p. 853) diagram ini mirip dengan flowchart suatu aktivitas kecuali flowchart ini dapat menunjukkan arah aliran secara bersamaan. Diagram ini juga memberi tekanan pada arah kendali antar objek.
Gambar 2.6 Activity Diagram Elemen – elemen notasi pada diagram ada beberapa jenis, antara lain ( Booch, Rumbaugh & Jacobson, 2000, p. 435 – 440 ) : a.
Objek struktural Objek ini merupakan objek dasar dari UML. Yang termasuk objek struktural antara lain : kelas, interfaces, kolaborasi, use cases, active classes, komponen – komponen dan nodes.
25 b.
Objek perilaku Objek perilaku adalah bagian dinamis dari model UML. Yang termasuk objek perilaku adalah : interaksi dan state machines.
c.
Objek penggabung Objek penggabung adalah bagian organisasi dari model UML. Yang termasuk dari objek penggabung adalah packages.
d.
Objek anotasi Objek anotasi adalah bagian yang berfungsi untuk menjelaskan dari suatu model UML. Yang termasuk di objek anotasi adalah : notes.
Jenis – jenis hubungan yang terdapat di sebuah model UML, antara lain ( Booch, Rumbaugh & Jacobson, 2000, p. 445 – 450 ): •
Dependency Dependency adalah situasi dimana terjadi ketergantungan antara dua objek yang saling berhubungan. Jika salah satu objek diubah, maka objek yang lainnya maka akan turut berubah.
•
Association
26 Association
adalah
menjelaskan
suatu
hubungan
hubungan
antara
rantai
terstruktur
yang
–
yang
rantai
menghubungkan satu objek dengan yang lainnya. •
Generalization Generalization adalah suatu hubungan diantara objek yang berfungsi untuk memberi gambaran umum pada suatu objek atau hubungan antar objek.
•
Extensibility UML menyediakan 3 (tiga) mekanisme yang bisa berfungsi untuk memperpanjang sintaks bahasa Java, yaitu : stereotypes (mencermikan
elemen
(merepresentasikan
model
atribut
baru),
model
tagged
baru),
values
constraints
(memperlihatkan semantik model baru). 2.1.7 Teori Storyboard Menurut Simon, Mark ( 2007, p. 3 – 7 ), storyboard ialah sebuah cara berkomunikasi antara desainer dan pengembang aplikasi dimana storyboard ini berbentuk kumpulan – kumpulan ilustrasi menyerupai sebuah komik pendek, yang mampu menggambarkan sebuah produk yang telah diedit. Setiap halaman storyboard berupa gambar – gambar dalam kumpulan panel sehingga menyerupai komik strip. Setiap gambar harus mampu menjelaskan semua informasi secara instan dan harus mampu membuat para pengembang aplikasi mengetahui bentuk final dari produk yang akan dibuat. Lanjutnya, dalam bukunya yang berjudul Storyboards : Motion in Art, Third Edition,
27 game sangat berkembang dalam beberapa tahun belakangan ini. Pesatnya perkembangan ini disebabkan oleh majunya teknologi pendukung pada sistem komputer, ponsel dan perangkat elektronik lainnya. Oleh karena banyak dari game itu menggunakan animasi, maka storyboard telah menjadi suatu keharusan dalam pengembangan aplikasi multimedia ( 2007, p. 71 – 72 ). Storyboard menjadi alat bantu yang paling efektif dalam pembuatan aplikasi karena mampu mencakup visualisai animasi sekaligus mempu menjadi flowchart untuk mengatur struktur organisasi perancangan dan penganalisaan aplikasi multimedia. Storyboard sendiri dapat berbentuk bermacam – macam. Bentuk storyboard tergantung pada pembuatnya. Beberapa bentuk storyboard yang paling umum adalah : a. Bentuk kasar yang berfungsi hanya menjelaskan secara abstrak. b. Concept storyboard, dimana storyboard ini penuh dengan warna dan full – atmosphere dari perencanaan animasi. c. Color storyboard, yang memetakan gambaran dengan penuh warna, bahkan lebih terkesan lebih mengutamakan warna daripada sequence / urutan animasi. d. Animation storyboard, yang berfungsi untuk menggambarkan secara detail animasi itu sendiri. e. Presentation storyboard, yang didesain dengan rapi dan sangat terencana, berfungsi untuk menjual suatu ide ke klien. 2.2 Teori Khusus
28 2.2.1 Teori Game Teori ini menjelaskan mengenai teori – teori game secara khusus 2.2.1.1
Definisi Game Menurut Schell, Jesse (2008, p. 37), game adalah sebuah kegiatan pemecahan masalah yang berlandaskan kesenangan, game adalah sebuah sistem formal tertutup yang melibatkan pemain dalam sebuah konflik yang terstruktur dan ikut menyelesaikan konflik tersebut dengan cara yang berbeda – beda.
2.2.1.2
Game Design Ada 4 (empat) buah elemen dasar yang membentuk sebuah game (Schell, 2008, p.71 & p.41 – 43), yaitu: 1.
Mekanisme Mekanisme amerupakan prosedur dan aturan dalam sebuah game.
Mekanisme
mendeskripsikan
tujuan
dari
game,
bagaimana seorang pemain dapat maupun tidak dapat menyelesaikan tujuan tersebut, dan apa yang terjadi ketika seorang pemain berusaha untuk meraihnya. Mekanisme sendiri terdiri atas 6 (kategori lanjutan), yaitu: a.
World Map Semua game harus mempunyai sebuah “dunia”. Dunia ini adalah sebuah tempat dimana gameplay hadir, semua
29 item dan story hadir. Disinilah semuanya saling berhubungan. b.
Object & Attribute Sebuah game dimana didalamnya terdapat dunia, pasti memiliki objek didalamnya. Papan, kartu, pion, papan skor merupakan hal yang dapat dikategorikan sebagai objek dan atribut. Objek adalah segala sesuatu yang dapat dilihat dan dimanipulasi. Atribut adalah informasi yang menjelaskan dan terdapat dalam suatu objek.
c.
Action Action adalah segala sesuatu yang digambarkan sebagai semua hal yang dikerjakan oleh karakter dan objek yang terdapat di dunia.
d.
Peraturan Peraturan adalah batasan terhadap hal – hal yang dapat pemain dan juga objek lakukan dalam mekanisme game. Peraturan menentukan konsekuensi dari action dan goal utama.
e.
Kemampuan Sebuah game harus mampu membuat setiap pemain mempunyai suatu skill khusus. Hal itu harus sebanding
30 dengan tingkat kesulitan game. Jika kemampuan pemain setara dengan tingkat kesulitan sebuah game, maka pemain akan merasa tertantang dan akan terus bermain. f.
Kesempatan Kesempatan atau peluang adalah hasil interaksi antar kelima
elemen
mekanisme
lainnya.
Kesempatan
merupakan elemen mekanisme yang paling penting, sebab kesempatan berarti ketidak pastian. Dan ketidak pastian berarti kejutan. Kejutan merupakan sumber terpenting dalam kesenangan manusia. 2.
Cerita Secara garis besar, cerita merupakan urutan event atau kejadian yang terjadi dalam suatu game. Ketika sebuah game memiliki cerita yang ingin disampaikan melalui game terseut, maka harus dipilih mekanisme yang tepat untuk menguatkan jalan cerita tersebut.
3.
Estetika Estetika merupakan bagaimana sebuah game mempunyai penampilan yang dapat mempengaruhi pengalaman bermain pengguna sehingga game tersebut menjadi terlihat, terdengar, tercium, dan terasa. Jadi estetika merupakan aspek penting karena
berhubungan
pengguna.
langsung
dengan
pengalaman
si
31 4.
Teknologi Teknologi merupakan suatu tools yang dapat menggabungkan ketiga elemen lainnya. Teknologi harus menjadi wadah yang mampu menggabungkan mekanisme, cerita, dan nilai estetika secara harmonis.
Gambar 2.7 Elemental Tetrad 2.2.1.3
Game Balancing Menurut Schell (2008, p. 172), game balancing adalah bagaimana mengatur elemen – elemen yang ada dalam dunia game sehingga bisa memberikan pengalaman nyata yang ingin diharapkan pengguna ketika bermain game itu. Beberapa elemen dasar dari game balancing adalah : 1.
Adil
32 Adil atau keseimbangan bisa dikategorikan atas 3 jenis game, yaitu : a.
Static Balance ( Game Statis ) Keseimbangan statis merupakan proses meyakinkan bahwa game yang dibuat sudah adil dan semua elemen di dalamnya tidak terlalu dominan sehingga merusak game secara keseluruhan. Contoh dari keseimbangan statis : -
b.
Jarak lari Bomberman dengan balok yang tersedia.
Symmetry Balance (Game Simetris) Karena rasa adil merupakan salah satu hal paling umum yang ingin dicari oleh setiap pengguna game, maka pada sistem simetri, setiap pengguna diberikan sumber daya dan kekuatan yang sama. Keseimbangan simteri merupakan cara termudah untuk menyeimbangkan sebuah game. Sehingga hal ini menjamin hasil dari sebuah game bergantung
kepada
kemampuan
masing
–
masing
pengguna, bukannya atribut yang didapat dari sistem.
Contoh dari keseimbangan simetri : - Permainan batu, gunting, kertas
33 Tabel 2.1 Matriks Skor Batu Gunting Kertas
c.
batu
gunting
kertas
batu
0
1
-1
gunting
-1
0
1
kertas
1
-1
0
Dynamic Balance (Game Asimetris) Keseimbangan dinamis berarti memberikan sumber daya dan kekuatan yang berbeda kepada setiap pengguna sesuai dengan kemampuan si pengguna. Beberapa alasan diciptakannya game asimetris : 1. Untuk mensimulasikan situasi dunia nyata. 2. Agar pemain mempunyai level yang sama. 3. Agar suasana game menarik terus tercipta. Keseimbangan dinamis memiliki 3 model interaksi : a. Mengembalikan keseimbangan b. Menjaga keseimbangan Sehingga game ini dapat tercegah dari perubahan (impact) yang besar dari pihak musuh. c. Menghancurkan keseimbangan
34 Agar titik keseimbangan beralih mengarah kepada pengguna atau kepada sisi lainnya. Tantangan juga harus terus sebanding dengan kemampuan pengguna. Jika terjadi berat sebelah pada salah satu pihak, maka akan terjadi suatu masalah.
Gambar 2.8 Grafik Perbandingan Tantangan Terhadap Kemampuan 2.
Jumlah Pilihan Pilihan dalam memainkan sebuah game berarti memungkinkan seorang pengguna mengembangkan game itu dengan jalan yang diinginkan oleh masing – masing pengguna. Jumlah pilihan diberikan kepada pengguna bergantung pada jumlah kenginan yang diinginkan oleh pengguna. •
Jika Pilihan > Keinginan Pemain merasa terlalu berlebihan.
•
Jika Pilihan < Keinginan Pemain akan merasa frustasi dan bosan.
35 •
Jika Pilihan = Keinginan Pemain merasa tercukupi dan puas.
3.
Kemampuan dibanding dengan kesempatan Terlalu banyak kesempatan yang didapat dalam memainkan sebuah game bisa meniadakan pengaruh kemampuan masing – masing pengguna. Game yang baik adalah seperti kontes yang terus saling berkembang. Game yang terlalu banyak kesempatan cenderung merupakan game yang santai dan mudah.
4.
Otak dan kecepatan tangan Jenis ini salah satu yang bisa menentukan jenis game yang dibuat. Game First Person Shooting ( FPS ) merupakan jenis game
yang
lebih
mengedepankan
kecepatan
tangan.
Sedangkan game puzzle merupakan game yang lebih mengedepankan
otak.
Banyak
game
yang
berusaha
menggabungkannya dengan porsi seimbang. 5.
Individu dan kerjasama Masing – masing game mempunyai cara bermain sendiri. Ada yang mengedepankan kerjasama dalam penyelesaiannya, ada juga mengedepankan kemampuan (skill) individu ketika menyelesaikannya.
Game
menyediaan
ruang
untuk
bersosialisasi secara aman ketika mengharuskan adanya kerja
36 sama dalam penyelesaiannya. Sedangkan kemampuan individu mampu meningkatkan daya juang dan kompetisi pengguna. 6.
Durasi Durasi memainkan peran yang penting ketika game itu dimainkan. Game yang terlalu panjang sehingga terkesan bertele – tele bisa menjadikan pengguna merasa bosan dan menghindari game tersebut. Sedangkan game yang terlalu simple dan terlalu singkat durasinya bisa memberi kesan bahwa game itu tidaklah cukup menyenangkan ketika dimainkan, karena game itu tidak memberi waktu yang cukup untuk dkembangkan menurut keinginan masing – masing pengguna.
7.
Achievement Penilaian achievement pada dasarnya membangkitkan minat setiap pengguna untuk terus memainkan game. Ada beberapa tipe penilaian yang bisa digunakan ketika membuat game, yaitu: -
Pujian Pujian dapat berupa sound effect spesial, kalimat biasa, atau gerakan khusus yang menandakan bahwa kita telah mendapatkan nilai tertentu.
-
Poin
37 High score seolah telah menjadi sebuah penilaian standar bagi setiap game. Dengan adanya high score maka daya kompetisi pengguna menjadi terpacu. -
Sumber daya Penambahan sumber daya sebagai tanda penyelesaian suatu
masalah
bisa
membangkitkan
minat
untuk
memainkan game (contoh : energy, amunisi, uang, health point, mana point) -
Gateway level Dalam game yang menggunakan level, penyelesaian level akan membawa pengguna kepada level yang baru. Tampilnya level baru dengan struktur dan cerita baru bisa menarik minat pengguna.
-
Ekspresi Berbagai ekspresi tanda penyelesaian suatu problem dalam game bisa menjadi salah satu tanda. Misalnya : memperbolehkan
karakter
game
berdandan
dengan
dekorasi spesial. 8.
Punishment Berbagai
hukuman
bisa
dianggap
mengasyikkan
bagi
pengguna. Selain memberi efek jera ketika melakukan
38 kesalahan juga bisa menjadi penyemangat ketika berusaha menyelesaikan game. 9.
Sederhana dan kompleks Tingkat kesederhanaan merupakan salah satu faktor penanda kepuasan bagi para pengguna. Bila terlalu rumit dan kompleks, maka banyak pengguna merasa frustasi dan malah memilih meninggalkan game tersebut. Apabila terlalu sederhana maka pengguna akan merasa cepat bosan. Ada 2 (dua) jenis kompleksitas yang sering muncul di game, yaitu : a.
Inmate complexity Inmate complexity adalah keadaan dimana peraturan game menjadi dangat sulit. Game jenis ini sangat disenangi oleh hardcore gamers.
b.
Emergent complexity Emergent complexity adalah keadaan dimana tingkat kesulitan game biasanya meningkat sesuai dengan kemampuan pengguna. Jadi game itu berkembang sesuai dengan kemampuan asli pengguna.
10. Kebebasan dan keterbatasan Kebebasan yang tidak terbatas bisa memberikan kebosanan bagi sebagian orang. Sedangkan terlalu terbatas, cenderung monoton, malah menjadikan pengguna bosan dan merasa
39 terkungkung. Sebuah game balancing yang baik merupakan hasil perpaduan yang indah dari kedua faktor ini. 11. Detail dan imajinasi Beberapa game dibuat sedetil mungkin da nada juga game yang merupakan full – fantasy. Masing – masing jenis game memberikan rasa yang berbeda bagi masing – masing pengguna. 2.2.1.4
Genre Game Sub – bab ini akan menjelaskan jenis – jenis game yang ada hingga saat ini berdasarkan Rolling and Adams (2003,p.247) di dalam bukunya yang berjudul “On Game Design”, menjelaskan bahwa ada beberapa genre game yang bisa dikategorikan. Antara lain : •
Action games / Fighting games Jenis game ini merupakan game yang menuntut pengguna game agar bereaksi dengan cepat, serta koordinasi mata – tangan dalam tekanan. Kebanyakan arcade games merupakan action games, karena mekanisasi games sangat simpel serta tampilan pada layar juga tidak terlalu rumit.
•
Strategy games Menurut Rolling and Adams (2003,p. 321 – 322), game strategi merupakan percabangan dari game papan (board games). Pada komputer atau perangkat teknologi canggih,
40 game strategi utamanya terbagi menjadi 2 bagian pengaturan waktu (Time Keeping), yaitu : Classical Turn – based Strategy dan Real Time Strategy. Classical Turn – based Strategy adalah jenis game yang mengandalkan pembagian giliran pada masing – masing pemain game. Pemain game ber-genre ini bisa melihat dan mengukur waktu lawan ketika mengambil tindakan. Waktu yang diberikan biasanya telah dipatok sedemikian rupa sehingga pemain bisa mengambil waktu berpikir ketika akan mengambil tindakan. Setelah giliran kita selesai maka dilanjutkan dengan giliran pemain selanjutnya. Sistem ini berjalan secara berulang – ulang dan terus menerus. Real Time Strategy adalah game yang tidak mengenal sistem putaran. Setiap pemain mengambil tindakan dalam jangka waktu yang sama dengan pemain lainnya. Jadi pemain harus dengan sadar dan aktif ketika melakukan tindakan yang berengaruh pada strategi game pemain itu. Tantangan terbesar dalam game ber-genre ini adalah time management. Komponen utama yang terdapat pada hampir setiap game strategi adalah : -
Tema Tema paling umum dalam game strategi adalah: menaklukkan
(conquest),
pertukaran (trade).
menjelajah
(exploration),
41 -
Tampilan layar Desain antar muka menjadi sangat penting karena game strategi
memiliki
memudahkan
desain
kompleksitas
dapat
mengorganisir
untuk
pengguna
dan game
bergenre strategi. Jika tidak, maka akan menyulitkan pengguna.
•
Role – Playing Games ( RPG ) RPG adalah jenis permainan yang penggunanya dapat memerankan suatu tokoh khayalan dan mempunyai cerita sendiri yang dapat berkolaborasi bersama tokoh lainnya di dunia game. Genre ini terkenal akan penguasaan jalan cerita yang sangat kuat. Para pengguna game dapat memilih tokoh – tokoh yang tersedia dan membangun jalan cerita sendiri sesuai dengan batasan dan peraturan yang tersedia di dunia game.
•
Sports games Menurut Rolling and Adams (2003, p. 371), game ber-genre olahraga merupakan jenis game yang menstimulasikan sebuah permainan baik secara individual maupun berkelompok. Hal yang paling penting di genre ini adalah realita peraturan, detil game, dan gameplay yang menyerupai asli.
•
Simulations
42 Menurut Rolling and Adams ( 2003, p. 395 ), genre game ini terdiri atas vehicle dan management simulation. Simulasi ini focus kepada satu jenis aktivitas tetapi dilakukan terus menerus dan bisa digali terus sampai ke dalam. •
Artificial life Game bergenre yang ini merupakan game yang memberi kesempatan bagi pengguna untuk mempunyai suatu kehidupan buatan ( Rolling and Adams, 2003, p. 487 ). Contoh terkenal dari game ini adalah game tamagochi, dimana didalam game itu kita berinteraksi dengan karakter buatan dengan real time.
43 •
Puzzle games Game ini pada umumnya mengutamakan penyelesaian suatu masalah atau puzzle yang menantang tapi tidak terlalu sulit untuk diselesaikan (Rolling and Adams, 2003, p. 487). Biasanya pada genre ini tampilannya menarik dan terutamanya menyenangkan untuk dimainkan di segala usia.
•
Casual games Tipe game ini sangat mudah untuk dimainkan. Lebih sebagai penghibur di waktu sempit. Desain game sangat simple dan mudah dimengerti. Tidak diperlukan usaha seperti RPG ataupun game action.
•
First Person Shooting games ( FPS ) Sejatinya merupakan salah satu sub – genre action games yang terkadang dikategorikan menjadi genre tersendiri. Genre ini sesungguhnya merupakan jenis game yang mengutamakan penggunaan senjata baik pistol, maupun senjata artileri lainnya dan menggunakan sudut pandang orang pertama (first person). Seringkali merupakan game yang menggunakan gambar 3D (tiga dimensi) pada grafik objek dan latar belakang game.
•
Educational games Merupakan game yang lebih mengutamakan tersampainya suatu informasi kepada pengguna game.
44 •
Online games Menurut Rolling and Adams (2003, p. 499), semua online games adalah semua jenis game yang dimainkan dengan menggunakan jaringan komputer atau internet. Sehingga, sejatinya semua game bisa dijadikan online game apabila dihubungkan via internet. Pada saat ini sistem chat yang terdapat membuat para pengguna game genre ini dapat bercengkerama dengan pengguna lainnya di dalam game itu.
2.2.2
Android Menurut Burnette, Ed (2011, p. xiii), Android merupakan perangkat software untuk mobile phone yang berbasis linux dan di buat oleh Google dan The Open Handset Alliance. Android Inc., yang merupakan pendatang baru yang membuat perangkat lunak untuk mobile phone dibeli oleh Google Inc. Dan untuk mengembangkan Android, dibentuklah Open Handset Alliance yang merupakan konsorsium dari 34 perusahaan hardware, software dan telekomunikasi seperti Google, HTC, Intel, Motorola, Qualcomm, TMobile, Nvidia. Menurut Zechner, Mario (2011, p.2), Android merupakan Mobile Operating System yang memiliki platform berbasis kernel linux versi 2.6 dan bersifat bebas / Open Source, sehingga dapat digunakan secara komersial atau non-komersial.
45 Android yang pertama kali dirilis tahun 2007, telah memiliki 7 versi, yang tiap versinya merupakan pembaharuan dari versi sebelumnya. Semua kode pembaharuannya menggunakan nama makanan penutup, kecuali versi 1.1. versi 2.2 (Froyo) menambahkan kompilasi just-in-time (JIT) dan Dalvik Virtual Machine (VM), yang memperkuat semua aplikasi Java pada Android. Android memiliki 4 karakteristik sebagai berikut : 1.
Terbuka Android dibangun untuk memungkinkan para developer membuat aplikasi mobile yang menarik yang bisa mengambil keuntungan penuh dari semua handset yang ditawarkan. Dengan maksud untuk menjadi aplikasi yang benar – benar open source. Android yang dibuat di kernel linux ini bersifat terbuka dan memanfaatkan
mesin
virtual
khusus
yang
dirancang
untuk
mengoptimalkan memori dan sumber daya hardware pada mobile phone. Karena bersifat open source ini, Android bebas dikembangkan untuk menyertakan teknologi baru yang mutakhir yang baru muncul.
2.
Semua aplikasi diciptakan sama Android tidak membedakan aplikasi inti dari mobile phone itu sendiri dan third-party application. Semua aplikasi bisa dibangun untuk memiliki akses yang sama terhadap kemampuan mobile phone untuk menyediakan berbagai aplikasi dan layanan kepada user. Sehingga user dapat mengatur dan menyesuaikan mobile phone sesuai keinginan.
46 3.
Memecahkan hambatan pada aplikasi Android membuat kebebasan dalam membangun aplikasi baru, sehingga inovasi sangat diutamakan.
4.
Pengembangan aplikasi yang cepat dan mudah Android menyediakan akses yang luas pada para developer untuk menggunakan berbagai libraries yang ada dan diperlukan, juga tools yang di gunakan untuk membuat aplikasi. (Sumber : http://www.android.com/about/)
2.2.2.1
Arsitektur Android
Gambar 2.9 Android Architecture Diagram Dengan menyediakan sebuah platform pengembangan terbuka. Android menawarkan kemampuan untuk membangun aplikasi. Pengembang bebas mengambil keuntungan dan fungsi dari
47 hardware dan juga notifikasi status bar, dan masih lebih banyak lagi Semua aplikasi merupakan suatu sistem lengkap yang terperinci, yang terdiri atas : - Content
provider
yang
memungkinkan
suatu
aplikasi
mengakses data dari aplikasi lainnya. - Resource manager yang memungkinkan aplikasi untuk pesan bahaya atau warning. 2.2.2.2
Versi – versi
(FroYo / Frozen Yoghurt)
Pada mei 2010 Android versi 2.2 dirilis, Android versi ini sekarang banyak menjadi versi mobile operating system Android yang menjadi OS bawaan dari mobile phone yang beredar. Fitur yang disediakan pada versi ini sudah kompleks, seperti : •
Kerangka aplikasi yang memungkinkan penggunaan dan penghapusan komponen yang tersedia.
•
DVM (Dalvik Virtual Machine)
•
SQLite sebagai database
•
Mendukung media, audio, video, dan berbagai format gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
•
GSM, Bluetooth, EDGE, 3G, WIFI (tergantung mobile phone yang digunakan)
•
Kamera, GPS, Kompas, dan accelerometer (tergantung mobile phone yang digunakan)
48
1) Android versi 2.3 (Gingerbread) Android versi ini diluncurkan bulan Desember 2010 dengan beberapa perbaikan daripada versi Android sebelumnya : •
SIP-based VoIP
•
Near Field Communications (NFC)
•
Gyroscope dan sensor
•
Multiple cameras support
•
Mixable audio effects
•
Download manager
2.2.3 Bahasa Pemrograman 2.2.3.1
Bahasa Pemrograman Android Untuk sebagian besar, program Android ditulis menggunakan bahasa Java dan bahasa yang digunakan adalah Java 5 Standard Edition (SE) library APIs. Ada beberapa perbedaan ketika menggunakan bahasa Java biasa dengan bahasa Java Android (Ed Burnett, 2011, p. 277 – 280). Bahasa pemrograman Android mampu kompatibel dengan Java Standard Edition 5 atau versi lebih awalnya. Fitur baru bisa ditambahkan ntuk Java 6 atau versi terbaru Java. Bahasa kode Java yang basic seperti : byte, char, short, int, long, float, double, Object, String dan array tetap disupport oleh Java Android. Dalvik VM menyediakan keyword dan library yang terkait dengan metode Java
seperti
:
Object.wait(),
Object.notify(),
dan
juga
49 Object.notifyAll(). Sistem Dalvik VM juga menyokong terjadinya finalisasi melalui kelompok draft Java VM biasa. Pada Java Android juga terdapat library yang diperuntukkan khusus bagi Android. Hal itu mengakibatkan jalannya program menjadi lebih cepat dan efisien dibandingkan menggunakan library Java VM biasa. Beberapa contoh standard packages Java VM biasa yang didukung oleh Android adalah : •
java.awt.font
untuk menyokong Unicode dan tampilan
font. •
java.io untuk menyokong file dan stream I / O.
•
javax.sql database.
•
java.sql database.
•
java.math untuk perhitungan angka.
Meskipun database SQL Java yang biasa termasuk dalam library, Java Android tetap menggunakan Android database APIs (Ed Burnett, 2011, p. 279). Third party libraries yang disediakan oleh Android SDK antara lain : •
org.apache.http autentisitas HTTP, cookies, methods.
•
org,json JavaScript Object Notation.
•
org.xml.sax XML parsing.
50 •
2.2.3.2
org.xmlpull.v1 XML parsing.
Bahasa Pemrograman JAVA – Eclipse Menurut C. Thomas Wu (2010, p12)
Java adalah bahasa
pemrograman berorientasi objek baru yang menerima perhatian luas dari seluruh industri dan akademis. Bahasanya didasari oleh bahasa C dan C++ yang semula dimaksudkan untuk menulis program yang mengontrol alat konsumen seperti pemanggang roti, microwave, oven dan lainnya. Sifat – sifat khusus dari Eclipse antara lain : •
Multi – platform Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP – UX, dan Mac OS X.
51 •
Multi – language Eclipse dikembangkan sedemikian rupa dengan bahasa pemrograman Java. Tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti : C / C ++, Cobol, Python, Pearl, PHP, dan bahasa pemrograman lainnya.
•
Multi – role Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, tes perangkat lunak, pengembangan web, dan lain sebagainya.
Eclipse saat ini merupakan salah satu IDE favorit dikarenakan gratis dan merupakan open source program. Itu berarti setiap orang bebas mengunduh kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna lainnya dengan komponen plugin. 2.3
Jurnal Game Mendesain
dan
mengembangkan
games,
dibandingkan
dengan
memainkannya, memerlukan pendekatan untuk mengerti mengenai game (Robertson & Good,2005). Pemodifikasian game dengan sistem modding, cara mengembangkan suatu game dengan cara yang baru, adalah salah satu cara metode untuk mepelajarinya. Metodologi – metodogi telah menemui suatu cara mendesain
52 lingkungan game dan mengindetifikasi pengetahuan dan kemampuan mengenai lingkungan game tersebut. Evidence Centered Design telah membuat suatu kerangka untuk mengakses berdasarkan penggabungan kompetensi, bukti, dan juga model – model kerja. Kerangka ini dapat mengartikan atribut – atribut yang sedang diakses dan perilakunya yang merepresentasikan atribut – atribut tersebut, dan yang terutama, itu dapat mengidentifikasikan aktivitas – aktivitas yang dapat menghubungkan apa yang sedang diakses oleh player ke suatu game. Hubungan yang terdapat diantara pembelajaran, perilaku, dan pengaturan memberikan dukungan untuk memvalidasi apa yang sedang diakses. Bagaimanapun juga, alat untuk mengukur observasi dan update dari si model kompetensi itu masih diperlukan. Mungkin apa ynag paling unik mengenai games adalah games merupakan kombinasi motivasi, usaha, adaptivitas, simulasi, kolaborasi dan pengumpulan data yang tidak akan bisa dicapai dengan skala lain apapun.