6 BAB 2 LANDASAN TEORI 2.1 Teori Umum Teori umum membahas tentang teori utama yang menjadi landasan bagi teori – teori lain yang ada di dalam skripsi ini. 2.1.1 Teori Multimedia Multimedia adalah gabungan dari teks, seni, suara, animasi, dan video yang disampaikan melalui komputer atau media elektronik atau digital lainnya. (Vaughan, 2011, pxiv). 2.1.1.1 Elemen Multimedia Dari yang disebutkan di atas, Multimedia memiliki 5 elemen, antara lain: • Teks (Text) Membaca dan menulis merupakan keahlian yang dibutuhkan oleh khususnya pada kebudayaan modern (Vaughan, 2011, p18). Kegiatan membaca dan menulis itu sendiri membutuhkan teks. Dalam multimedia, teks biasa digunakan untuk penulisan judul, menu, navigasi bantuan, dan narasi atau konten. Atribut teks yang digunakan dalam pembuatan aplikasi yaitu font yang berjenis Arial. Dengan desain Sans Serif, Arial memiliki karakteristik humanist dibandingkan pendahulunya dan lebih cocok dengan mood di abad ke dua puluh. • Suara (Sound) 7 Menurut Vaughan (2011, p104), suara dapat membedakan antara presentasi multimedia yang biasa dengan yang professional. Sedikit kesalahan dalam suara dapat mengurangi kualitas proyek yang dibuat. Contoh suara yang digunakan pada multimedia adalah digital audio. Digital audio terbuat ketika user merepresentasikan sebuah gelombang suara menggunakan angka-angka dan diproses ke tahap digitizing.Adapun audio digital yang digunakan adalah yang menggunakan format MP3 (MPEG-1 atau MPEG-2 Audio Layer 3) dan WAV (Waveform Audio File Format). • Gambar (Image) Menurut Vaughan (2011, p71), gambar merupakan unsur terpenting dalam setiap proyek multimedia. Gambar di dalam komputer terdiri dari bitmap dan vector graphic. Bitmap adalah titik kecil atau dot yang membentuk suatu gambar yang ditampilkan pada layar komputer ataupun pada media cetak. Sedangkan vektor adalah susunan titik atau garis yang saling terhubung sehingga membentuk suatu objek gambar. • Animasi Menurut Vaughan (2011, p140) animasi adalah objek yang bergerak melintas atau masuk atau keluar dari layar. Dalam penggunaan teknik suatu software, anda bisa menganimasikan gambar dalam beberapa cara. Yang paling sederhana secara 2 dimensi (2D), yang lebih rumit seperti 2 dimensi (2 D), dan yang lebih realistis pada 3 dimensi (3D). • Video 8 Menurut Vaughan (2011, p164) dengan adanya unsur video dalam proyek multimedia, anda dapat menyampaikan pesan kepada viewers dengan lebih efektif dan lebih mudah untuk dipahami. 2.1.2 Interaksi Manusia dan Komputer (IMK) Menurut Schneiderman dan Plaisant (2010, p32) interaksi manusia dan komputer merupakan suatu ilmu yang mempelajari desain interaktif antara manusia dengan komputer. Seiring dengan waktu, komputer semakin signifikan penggunaannya sehingga diperlukan ilmu yang mempelajari sekaligus menjembatani perbedaan antara manusia dan komputer. Adapun lima faktor manusia terukur yang menjadi pusat pengevaluasian pada interaksi manusia dan komputer, antara lain: 1. Waktu untuk belajar Berapa lama waktu yang dibutuhkan untuk mempelajari bagaimana menggunakan perintah yang relevan terhadap suatu set tugas? 2. Kecepatan kinerja Berapa lama waktu yang diperlukan untuk melakukan suatu tugas? 3. Tingkat kesalahan oleh user Berap a bany ak kesalahan y ang d ibuat dalam suatu tugas? 4. Daya ingat dari waktu ke waktu Seberapa baik user mempertahankan pengetahuannya setelah jangka waktu tertentu? Daya ingat bisa dikaitkan dengan waktu pembelajaran, dan frekuensi pemakaian memegang peranan penting. 9 5. Kepuasan subjektif Bagaimana kepuasan pemakai terhadap berbagai aspek sistem? Jawaban bisa didapatkan dengan melakukan interview atau dengan melakukan survey tertulis y ang mengandung skala kepuasan dan tempat kosong untuk komentar. Pendapat dari Shneiderman dan Plaisant (2010, p88-89) ada delapan prinsip yang disebut “golden rules” yang dapat diaplikasikan di kebanyakan sistem interaktif. Prinsip ini bisa dikatakan perlu untuk diterapkan setiap membuat suatu aplikasi. Adapun isi dari golden rules yaitu: • Konsisten (Strive for consistency) Umumnya peraturan ini seringkali dilanggar, namun mengikutinya pun cukup rumit karena ada banyak jenis konsistensi. Contoh dari konsistensi pada pembuatan aplikasi antara lain pada pembuatan menu, capitalization dalam penulisan, font, layout, juga komposisi warna yang ditampilkan. • Penggunaan universal (Cater to universal usability) Menyadari kebutuhan pengguna yang beragam dan desain untuk plastisitas, memfasilitasi transformasi, dan konten. Untuk itu maka aplikasi yang dibuat seharusnya dapat digunakan oleh segala jenis user. Entah itu user yang expert maupun yang novice sekalipun. • Memberi umpan balik informasi (Offer informative feedback) Untuk setiap aksi user, semestinya terdapat sebuat umpan balik. Tujuannya untuk menciptakan suatu interaksi antara user dengan komputer. Semakin besar aksi dari user maka semakin besar pula respon yang diberikan. 10 • Merancang dialog yang memberikan penutupan (Design dialogs to yield closure) Urutan aksi seharusnya terorganisir pada beberapa kelompok seperti awal, pertengahan, dan akhir. Dengan adanya umpan balik yang informatif pada setiap kelompok aksi akan membuat users merasa nyaman dalam penggunaan aplikasi. • Mencegah error (Prevent errors) Sebisa mungkin merancang sistem yang membuat users tidak dapat membuat sebuah error yang fatal. Setidaknya berikan sebuah instruksi penanganan suatu masalah yang bisa saja terjadi pada aplikasi yang dijalankan. • Adanya pembalik aksi yang mudah (Permit easy reversal of actions) Suatu aksi sebisa mungkin dapat dibalikkan. Dengan adanya pembalikan maka kegelisahan setelah melakukan suatu aksi yang salah dapat diringankan. Dengan demikian users juga tidak perlu mengulang suatu aksi dari awal. • Mendukung tempat kendali utama (Support internal locus of control) Setiap operator yang berpengalaman memiliki perasaan mengendalikan sistem yang kuat dan dapat menerima segala respon. Dengan kondisi seperti itu biasanya dapat membuat seorang user merasa bosan dengan apa yang ada di suatu aplikasi. • Mengurangi beban ingatan jangka pendek (Reduce short-term memory load) Keterbatasan kemampuan seseorang dalam memproses ingatan jangka pendek, tampilan beberapa halaman dapat digabung, frekuensi gerakan 11 window dikurangi, dan waktu latihan yang cukup dialokasikan untuk kode, mnemonic dan urutan aksi. Karena tidak semua aplikasi hanya digunakan sekali. 2.1.3 Rekayasa Piranti Lunak (RPL) Menurut Pressman (2010, p1) piranti lunak adalah sekumpulan instruksi yang ketika dieksekusi berisi fitur, fungsi dan hasil yang diinginkan oleh user. Rekayasa Piranti Lunak merupakan sebuah teknologi yang dibentangkan (Pressman, 2010, p20). 2.1.4 Metode Scrum Menurut Pressman (2010, p82), scrum merupakan proses yang digunakan untuk mengelola dan mengendalikan perangkat lunak yang rumit dan mengembangkan produk menggunakan praktek - praktek tambahan yang berulang – ulang. Scrum secara signifikan meningkatkan produktivitas dan mengurangi waktu sehingga menghasilkan banyak keuntungan sementara memfasilitasi pengembangan yang adaptif dan bersifat empiris. (Sumber : Diagram Scrum (sumber : codeProject.com) Gambar 2.1 Metode Scrum Serangkaian proses perangkat lunak yang telah terbukti efektif terhadap proyek dengan jadwal yang ketat, perubahan kebutuhan dan kekritisan bisnis (business 12 critically) ditekankan oleh scrum. Adapun proses yang terdapat pada scrum antara lain: Product Backlog : adalah proses analisis dokumen secara detail. Bisa dikatakan sebagai to-do list yang menyeluruh, dinyatakan dalam prioritas berdasarkan pada business value dari setiap kegiatan yang akan dikerjakan. Sprint Backlog : adalah aktivitas kerja yang dilakukan untuk memenuhi kebutuhan yang terdefinisi oleh Product Backlog (sekitar 30 hari). Scrum Meetings : Pertemuan singkat yang dilakukan setiap hari oleh tim (sekitar 15 menit). Ada tiga pertanyaan yang biasa ditanyakan dan dijawab oleh anggota tim, yaitu: • Apa yang sudah dilakukan semenjak Scrum Meeting sebelumnya? • Apakah ada halangan? • Apa yang akan anda lakukan sebelum meeting selanjutnya? Scrum Master selaku ketua tim akan memimpin pertemuan tersebut dan menilai tanggapan dari setiap orang. Tujuan dari pertemuan ini adalah untuk mengetahui potensi dari masalah yang akan dihadapi. Demos : merupakan proses penunjukkan demo perangkat lunak yang telah memiliki fungsi yang sudah diimplementasikan kepada pengguna untuk dievaluasi. Demo cukup berisi fungsi – fungsi yang telah diselesaikan dalam jangka waktu yang telah ditentukan. 2.1.5 Storyboard Menurut Vaughan (2011, p183), storyboard seperti sebuah komik yang dibaca sehari – hari secara berurutan. Membutuhkan waktu untuk menyusun hasil produksi dengan menulisnya lalu membuat sekelompok gambar berurutan pada tampilan kamera dan adegan, sudut pengambilan gambar, pencahayaan, aksi, special effects, dan bagaimana 13 suatu objek bergerak dari titik awal ke titik akhir. Storyboard dapat membuat siapapun ke suatu halaman dengan cepat. 2.1.6 Artificial Intelligence (AI) Menurut Bourgh dan Seeman (2004, p1) di dalam suatu kamus, AI merupakan kemampuan komputer atau mesin lain untuk melakukan aktivitas yang biasanya memerlukan kemampuan berpikir. Tetapi interpretasi tersebut tidaklah lengkap. Untuk beberapa orang, studi AI belum tentu bertujuan untuk menciptakan mesin yang memiliki kecerdasan, melainkan untuk memperoleh wawasan yang lebih baik dalam hal kecerdasan manusia. Ada juga yang mempelajari metode AI untuk membuat mesin yang menunjukkan beberapa bentuk batasan dari suatu kecerdasan. 2.1.6.1 Basic Chasing and Evading Menurut Bourgh dan Seeman (2004, p6) ketika mengembangkan spaceship shooter, simulasi strategi, role-playing game, anda berkesempatan untuk membuat nonplayer character pada game untuk mengejar maupun menghindar dari karakter anda. Dalam first-person shooters dan simulasi penerbangan, anda harus dapat mengarahkan misil untuk menyerang pemain atau pesawat tempurnya. Dalam kondisi lain, anda membutuhkan logika untuk membuat nonplayer character dapat mengejar dan membuat kabur mangsa mereka. 2.1.7 Unified Modeling Language (UML) 14 Menurut Whitten (2007, p371), UML (Unified Modeling Language) adalah sebuah ketentuan pemodelan yang digunakan untuk menspesifikasikan atau menjelaskan tentang sebuah software system dalam suatu object. Berikut adalah beberapa jenis diagram UML (Unified Modelling Language) yang biasa digunakan untuk merancang pembuatan aplikasi: 1. Use Case Diagram Menurut Whitten (2007, p246) use case diagram adalah diagram berisi langkah – langkah berurutan yang saling berhubungan baik secara langsung maupun tidak langsung yang bertujuan untuk menyelesaikan suatu tugas. Use case digambarkan berbentuk elips yang horizontal bertuliskan nama dari use case itu sendiri. Use case diagram terdiri dari beberapa actor dan relationships. 15 (Sumber : Whitten & Bentley, Systems Ana lysis and Design Methods, 2006, p 246) Gambar 2.2 Contoh use-case diagram Tabel 2.1 Keterangan Contoh Use-case Diagram No. 1. Gambar Keterangan Actor merupakan yang membutuhkan interaksi dengan sistem untuk bertukar informasi. 16 2. Use Case menjelaskan tentang suatu tujuan dari sistem yang menggambarkan urutan kegiatan dan interaksi dari user yang dapat dikerjakan. 3. Association ada yang garisnya memiliki mata panah (nomor 1) dan ada yang garisnya tidak memiliki mata panah (nomor sama sekali 2). Yang memiliki mata panah menunjukkan mengintimidasi actor use case yang ada di ujung mata panahnya. Sedangkan yang tidak memiliki mata panah menunjukkan interaksi antara use case dengan 17 external server atau actor penerima. 4. Extends adalah hubungan antara extension use case dan extending dari use case-nya. 5 Abstract use case adalah ringkasan dari langkah yang – serupa langkah secara fungsionalitas menjadi terpisah dari use case masing - masing. 6 Depends on merupakan hubungan ketergantungan antara satu use case dengan use case yang lain. 18 7 Inheritance adalah kondisi ketika terdapat dua atau lebih actor yang meng-initiate use case yang sama. 2. Activity Diagram Menurut Whitten & Bentley (2007, p390), activity diagram adalah diagram tambahan untuk memodelkan proses langkah – langkah atau aktivitas dari sistem. Diagram ini menggambarkan secara grafis aktivitas dari business process atau use case secara berurutan. 19 (Sumber : Whitten & Bentley: System Analysis and Design Methods, 2007, p392) Gambar 2.3 Contoh Activity Diagram 20 Berikut ini merupakan notasi dari activity diagram: Tabel 2.2 Tabel Notasi Activity Diagram Simbol Keterangan Initial. Merupakan titik awal memulai aktivitas. Final. Merupakan titik akhir untuk mengakhiri aktivitas. Activity. Merupakan sebuah aktivitas. Decision. Merupakan pilihan untuk mengambil keputusan. Edge. Untuk menghubungkan komponen individual dari activity diagram. Fork / Join. Untuk menunjukkan kegiatan yang dilakukan secara paralel atau untuk menggabungkan dua kegiatan paralel menjadi satu. Rake. Menunjukkan adanya sebuah dekomposisi. Time. Menandakan waktu. Receive. Menandakan penerimaan. Flow Final. Untuk mengakhiri 21 sesuatu. 3. Class Diagram Menurut Whitten & Bentley (2007, p400), class diagram merupakan gambaran grafis dari sebuah struktur system’s static object, menunjukkan object classes yang menyusun system tersebut dan juga hubungan antar object classes. Atribut – atribut dan method – method dalam class diagram bisa diakses oleh class lain dengan didefinisikan dengan visibility. Tersedia 3 level visibility pada UML, antara lain: o Public : Dilambangkan oleh simbol ‘+’. o Protected : Dilambangkan oleh simbol ‘#’. o Private : Dilambangkan oleh simbol ‘-‘. Menurut Whitten & Bentley (2007, p650-651), atribut public dapat diakses dan dipanggil oleh method lain dari class lainnya. Atribut protected dapat diakses dan dipanggil oleh method lain di class dimana atribut dan method didefinisikan dan di-subclass dari class tersebut. Atribut private dapat diakses dan dipanggil oleh method lain yang didefinisikan pada class itu sendiri. Gambar 2.4 Contoh atribut dan method visibility (Sumber : Whitten & Bentley: 22 System Analysis and Design Methods, 2007, p 651) (Sumber: Whitten & Bentley: System Analysis and Design Methods, 2007, p650) Gambar 2.5 Contoh Class Diagram Sederhana Hubungan antar objek terdiri dari Asosiasi, Agregasi, Inheritance (Pewarisan), dan Generalisasi (Kimmel, 2005, p113-117). 1. Asosiasi : Hubungan yang menggambarkan class yang memiliki atribut berupa class lain atau class yang harus mengetahui eksistensi class lain. 2. Agregasi : Hubungan dimana suatu objek merupakan bagian dari objek yang lain dan bersifat asimetris. 3. Inheritance (Pewarisan) : Hubungan hirarkis antar class dimana class dapat diturunkan dari class yang lain dan mewarisi semua atribut dan metode class asalnya serta menambahkan fungsi baru. 4. Generalisasi : Hubungan yang terdiri dari supertype classes dan subtype classes. Seluruh atribut yang ada di supertype classes akan dimiliki juga oleh subtype classes, namun subtype classes juga bisa memiliki atribut sendiri. 2.1.8 Database Menurut Connoly dan Begg (2010, p65), database adalah sekumpulan data yang saling berhubungan secara logis dan terancang untuk memenuhi kebutuhan dari suatu 23 organisasi. Database memiliki repository dari data yang dapat digunakan bersamaan oleh banyak departemen dan users. 2.1.9 Database Management System (DBMS) DBMS adalah sebuah system yang memfasilitasi users untuk menjelaskan, membuat, memelihara, dan mengendalikan akses ke database (Connoly dan Begg, 2010, p66). DBMS juga membuat users dapat melakukan proses insert, update, delete, dan retrieve data dari database. Adapun beberapa akses kontrol ke database yang disediakan oleh DBMS antara lain: 1. Security system Untuk mencegah user yang tak berkepentingan mengakses database. 2. Integrity system Untuk menjaga konsistensi dari data yang tersimpan. 3. Concurrency control system Untuk membolehkan adanya shared access pada database. 4. Recovery control system Untuk mengembalikan kondisi database sebelum terjadi masalah pada hardware maupun software yang digunakan. 5. User-accessible catalog Terdiri dari deskripsi dari data – data yang ada di database. 2.1.10 Database Languages 24 Terdiri dari dua bagian, : Data Definition Language (DDL) dan Data Manipulation Language (DML). Keduanya disebut juga dengan data sublanguages. 2.1.10.1 Data Definition Language (DDL) Menurut Connolly dan Begg (2010, p92) DDL adalah bahasa yang membolehkan DBA (Database Administrator) atau user untuk mendeskripsikan dan menamai entity, atribut, dan hubungan yang dibutuhkan untuk suatu aplikasi. DDL digunakan untuk mendefinisikan skema atau memodifikasi yang sudah ada. 2.1.10.2 Data Manipulation Language (DML) Menurut Connolly dan Begg (2010, p92) DML adalah bahasa yang memiliki suatu set operasi untuk mendukung dasar operasi pemanipulasian data pada data di database. DML terdiri dari dua tipe, yaitu : 1. Prosedural Dengan adanya DML yang Prosedural, user dapat menentukan data yang dibutuhkan dan bagaimana mendapatkannya (Connolly dan Begg, 2010, p93). 2. Nonprosedural DML yang Nonprosedural memperbolehkan data yang dibutuhkan agar ditentukan dalam sekali retrieval atau update statement (Connolly dan Begg, 2010, p93). 2.1.11 MySQL 25 MySQL merupakan Relational Database Management System (RDBMS) yang cepat dan bagus (Welling & Thomson, 2009, p4). MySQL cenderung dipilih oleh banyak perusahaan besar karena kelebihannya seperti kecepatan yang tinggi, kehandalan dan penggunaan yang mudah. Kegunaan dari MySQL adalah untuk mengatur akses ke data dan memastikan banyak pengguna dapat mengakses dan menggunakan data tersebut secara bersamaan. Selain itu MySQL juga memastikan hanya user yang memiliki izin yang bisa mengakses data – data tertentu. 2.1.12 Internet Internet merupakan sekumpulan jaringan komputer yang saling terhubung secara mendunia (Connoly dan Begg, 2010, p1024). Beberapa layanan yang ada di internet antara lain adalah electronic mail (email), periklanan, pendidikan, dan organisasi pemerintahan. 2.1.12.1 Intranet Intranet merupakan sekumpulan situs milik suatu organisasi yang hanya dapat diakses oleh anggota organisasi tersebut (Connoly dan Begg, 2010, p1026). Intranet mencakup publik yang luas melalui firewall, dengan pembatasan yang berlaku pada jenis informasi yang masuk maupun keluar dari intranet. 2.1.12.2 Extranet 26 Extranet merupakan sebuah intranet yang dapat diakses sebagian oleh pihak luar (Connoly dan Begg, 2010, p1026). Pada extranet, pihak luar hanya dapat memperoleh akses dengan menggunakan username dan password yang valid. 2.1.13 Web Web adalah sistem yang berbasis hypermedia yang menyediakan informasi pada internet secara tidak berurutan dengan menggunakan hyperlinks (Connoly dan Begg, 2010, p1028). 2.1.13.1 HyperText Transfer Protocol (HTTP) HTTP adalah protocol untuk mengirimkan halaman web melalui internet (Connoly dan Begg, 2010, p1029). HTTP mendefinisikan tentang proses komunikasi antara clients dengan servers. 2.1.13.2 HyperText Markup Language (HTML) HTML merupakan format bahasa yang digunakan untuk merancang sebagian besar halaman web (Connoly dan Begg, 2010, p1031). Merupakan system yang digunakan juga sebagai penanda suatu dokumen sehingga dapat di-publish ke dalam web. 27 HTML telah dikembangkan untuk berbagai jenis device agar dapat menampung informasi pada web. Seperti membuat tampilan yang khusus untuk PC (Personal Computer) dan khusus untuk mobile telephones. 2.1.13.3 Uniform Resource Locators (URL) URL adalah sebuah string dari karakter alfanumerik yang menampilkan lokasi atau alamat dari suatu resource di internet dan bagaimana cara mengakses resource tersebut (Connoly dan Begg, 2010, p1033). Syntax pada URL terdiri dari : protokol yang digunakan untuk melakukan koneksi, nama host, dan nama jalur yang digunakan pada host dimana resource dapat ditemukan. 2.1.13.4 PHP Hypertext Preprocessor (PHP) Menurut Connolly (2010, p1043), PHP merupakan bahasa berbentuk script yang terhubung dengan HTML yang didukung oleh banyak Web server termasuk Apache HTTP Server dan Microsoft’s Internet Information Server, dan juga merupakan bahasa scripting yang cocok dengan Linux. PHP dirancang untuk membentuk aplikasi web dinamis. Sehingga dapat membentuk suatu tampilan berdasarkan permintaan terkini. Tujuan utama dari penggunaan PHP adalah menyediakan web developers untuk menulis halaman yang dihasilkan secara cepat dan dinamis. Salah satu 28 keunggulan dari PHP adalah extensibility-nya dan jumlah extension modules yang telah tersedia untuk mendukung database connectivity, mail, dan XML. 2.2 Teori Khusus Merupakan teori yang digunakan sebagai dasar yang berhubungan erat dengan pengembangan aplikasi. 2.2.1 Game Menurut Schell (2008, p26), game adalah sesuatu yang anda mainkan. Game lebih complex daripada mainan dan melibatkan jenis permainan yang berbeda. 2.2.1.1 Game Design Document (GDD) Game Design adalah tindakan untuk menentukan akan seperti apa game yang dibuat nantinya. (Schell, 2008, pxxiv). Menurut Andrew Rolling dan Ernest Adams (2003, p15) tipe – tipe desain dokumen game secara kronologikal dibagi menjadi 3, antara lain: 4. High Concept Langkah pertama setelah menulis ide awal adalah menulis dokumen high concept. Tujuannya untuk mengekspresikan semangat dasar dari game tersebut. High concept menempatkan ide – ide utama di atas kertas berupa potongan – potongan singkat yang bisa dibaca dalam beberapa menit. 5. Game Treatment 29 Bertujuan untuk menyajikan game secara garis besar kepada seseorang yang telah tertarik pada suatu game dan ingin mengenal lebih jauh mengenai game tersebut. Game treatment dirancang untuk memuaskan keingintahuan awal dan untuk menstimulasi rasa antusias terhadap game tersebut. 6. Game Script Merupakan yang terbesar dan paling akhir dari 3 dokumen desain game. Game script bukanlah peralatan penjualan, melainkan sesuatu yang lebih besar dan menyeluruh untuk itu. Tujuannya untuk mendokumentasikan keputusan desain, bukan untuk membujuk orang. 2.2.2 Genre Menurut Rollings dan Adams (2003, p42-43) setiap genre umumnya menawarkan hiburan yang interaktif. Adapun pembagiannya adalah sebagai berikut: 2.2.2.1 Action Game Biasanya meliputi tantangan fisik (physical challenges), teka – teki (puzzles), perlombaan (race), dan berbagai tantangan lainnya. Mereka juga dapat berisi tantangan ekonomi yang sederhana. Menurut Rollings dan Adams (2003, p289-p290), genre action game terbagi menjadi 2 jenis. Ada game yang berjenis baku tembak (shooting) dan ada yang berjenis tanpa baku tembak (non shooting). Kedua subgenre itu sendiri masih bisa dibagi menjadi lebih jauh lagi bergantung pada teknologi yang digunakan untuk menyajikan permainan tersebut. 7. Shooting 30 Baku tembak menjadi mayoritas dari game action. Game action shooting terfokus pada kekerasan sebagai mekanisme utama permainan. Jenis game action shooting memiliki 2 kelas yaitu FPS (First Person Shooter) seperti Unreal Tournament, Left 4 Dead, serta Call of Duty Black Ops dan baku tembak 2D seperti Space Invaders, Defender, dan Centipede. 8. Non Shooting Pada jenis non shooting, baku tembak tidak menjadi mayoritas di dalam game. Contohnya seperti Q*Bert, Donkey Kong, dan Pac-Man. Adapun game – game tersebut didesain semenarik mungkin untuk anak – anak. Tidak ada unsur kekerasan sama sekali pada jenis game action non shooting. 2.2.2.2 Strategy Game Cenderung meliputi strategis, taktis, dan tantangan logistik berupa strategi yang berkatian dengan ekonomi. 2.2.2.3 Role Playing Game (RPG) Kebanyakan melibatkan taktik, logistik, dan tantangan untuk mengeksplorasi. Terkadang game RPG memasukkan unsur tantangan ekonomi karena melibatkan pengumpulan barang – barang dan memperdagangkannya untuk mendapatkan barang – barang yang lebih bagus. 2.2.2.4 Simulations 31 Meliputi game – game olahraga dan simulasi kendaraan. Biasanya melibatkan tantangan fisik dan taktis, bukan tantangan yang bersifat eksplorasi, ekonomi, maupun konseptual. 2.2.2.5 Constructions Pada umumnya selalu berhubungan dengan tantangan yang berbau ekonomi dan konseptual dan sangat jarang melibatkan konflik atau eksplorasi. 2.2.2.6 Adventure Berhubungan dengan eksplorasi dan pemecahan teka – teki (puzzle). Terkadang mengandung tantangan konseptual dan fisik. 2.2.2.7 Puzzle Cenderung memiliki banyak variasi pada tema dan memiliki tantangan yang kebanyakan sepenuhnya logis, meskipun kadang – kadang terdapat tekanan waktu atau unsur tindakan. 2.2.3 Platform Menurut Dovey dan Kennedy (2006, p44), peluncuran teknologi masa kini secara intensif telah bergerak menuju game platform menyatu dengan penggunaan bentuk media yang lain. Platform tidak pernah stabil, perancang mendapati dirinya mencari dan mengeksplorasi kapasitas baru secara permanen, dan secara antusias menghadapi generasi baru dan pengembangan peralatan untuk mengerjakan apa saja yang dapat dilakukan. 2.2.4 Game Balancing Menurut Schell (2008, p172), Game balancing hanya memerlukan matematika sederhana untuk membuatnya, namun merupakan yang paling penuh seni dalam sebuah 32 game. Game balancing memiliki berbagai bentuk, karena setiap game memiliki hal – hal berbeda untuk diseimbangkan. Terdapat 12 tipe game banlancing yang sering digunakan, antara lain: 9. Fairness Terdiri dari game yang simetris dan asimetris. Game yang simetris merupakan game yang membuat pemainnya mendapatkan kesulitan yang masih mungkin untuk diatasi. Sedangkan game asimetris adalah game yang memberikan resources berbeda pada musuh. 10. Challenge vs Success Ketika suatu permainan terlalu menantang, maka pemain akan frustasi. Namun apabila dapat diselesaikan terlalu mudah, pemain akan merasa bosan. Tidak boleh menyama ratakan tingkat kesulitan karena kemampuan setiap pemain berbeda – beda. 11. Meaningful Choices Sebuah permainan harus memiliki pilihan yang berarti. Bukan sekedar pilihan melainkan pilihan yang dapat memberikan dampak tertentu pada kelanjutan permainan. 12. Skill vs Chance Terlalu banyak kesempatan dapat mengurangi kemampuan dari pemain atau sebaliknya. Beberapa pemain lebih senang dengan sedikit unsur 33 kesempatan, sedangkan yang lainnya tidak. Memilih tentang bagaimana menyeimbangkan antara kesempatan dengan kemampuan akan menentukan karakter di dalam game. 13. Head vs Hands Seberapa banyak suatu game memberikan tantangan bersifat aktivitas fisik (menyetir, melempar, menekan tombol terus menerus) dan seberapa banyak suatu game membutuhkan kemampuan berpikir? Kedua hal tersebut sebenarnya sangat menyatu dan tidak seperti apa yang biasanya terlihat. Sangat penting menentukan apakah game yang dibuat akan lebih membutuhkan kemampuan berpikir atau lebih cenderung ke ketangkasan. 14. Competition vs Cooperation Kompetisi dan kerja sama merupakan sebuah dasar. Persis seperti hewan yang berkompetisi untuk bertahan hidup pada suatu wilayah dengan bekerja sama untuk meningkatkan status di dalam komunitasnya. Alasan dari menyukai bermain game bersama – sama adalah karena adanya cara bersosialisasi secara aman untuk mengetahui lebih lanjut tentang orang – orang di sekitar dan cara menghadapi situasi yang sulit. 15. Short vs Long Satu hal yang penting dalam menyeimbangkan game durasi memainkan gameplay. Apabila suatu game itu terlalu cepat untuk diselesaikan, pemain tidak bisa mendapatkan kesempatan untuk mengembangkan dan mengeksekusi strategi yang berarti. Namun apabila suatu game itu harus 34 diselesaikan dalam waktu lama, pemain bisa saja bosan karena sangat menyita waktu. 16. Rewards Seseorang tidak hanya memainkan game untuk mendapatkan suatu penilaian, tetapi juga penghargaan. Penghargaan dapat memuaskan hasrat bermain dari seorang pemain. 17. Punishment Hukuman yang digunakan dengan benar dapat meningkatkan kegembiraan bermain game pada seorang pemain. Ada beberapa alas an tentang mengapa sebuah game perlu memberikan hukuman kepada pemain. Salah satunya adalah karena hukuman dapat meningkatkan tantangan. Ketika muncul kegagalan maka secara langsung tantangan di dalam game tersebut meningkat. 18. Freedom vs Controlled Experience Game sangatlah interaktif, dalam artian dapat memberikan kendali kepada pemain, atau kebebasan untuk menambah pengalaman. Memberikan sebuah kendali di atas segalanya kepada pemain tidak hanya menambah pekerjaan kepada developer tetapi juga dapat membuat pemain bosan. Setiap designer harus tahu dimana saatnya memberikan pemain sebuah kebebasan, dan seberapa banyak kebebasan yang dapat diberikan. 19. Simple vs Complex 35 Kesederhanaan dan kompleksitas dari mekanisme game dapat terlihat berlawanan. Game yang terlalu sederhana bisa saja dibilang membosankan. Namun game yang terlalu kompleks bisa saja dibilang membingungkan. 20. Detail vs Imagination Menentukan secara pasti detail yang dibutuhkan dan apa yang seharusnya diserahkan kepada imajinasi pemain merupakan hal yang berbeda, tetapi sangat penting untuk keseimbangan. 2.2.5 Unity 3D Engine Menurut Wittayabundit (2011, p1), Unity 3D Engine merupakan game engine yang memberikan fasilitas kepada penggunanya untuk membuat game 3D dan mendapat dukungan dari komunitas yang fenomenal secara gratis. 2.2.6 JavaScript JavaScript adalah scripting language berbasis objek yang ditafsirkan langsung dari source code dan mengizinkan scripting dalam sebuah dokumen HTML (Connoly, 2010, p1041). Mayoritas situs web modern menggunakan JavaScript, dan semua browser web modern-on desktop, konsol game, tablet, dan ponsel pintar-termasuk interpreter JavaScript, membuat JavaScript menjadi bahasa pemrograman yang paling sering dipakai dimana-mana dalam sejarah. JavaScript adalah bagian dari tiga serangkai teknologi yang semua pengembang web harus belajar: HTML untuk menentukan isi dari halaman web, CSS untuk menentukan penyajian halaman web, dan JavaScript untuk menentukan perilaku halaman web. JavaScript adalah bahasa pemrograman tingkat tinggi, dinamis, dan cocok untuk gaya pemrograman berorientasi objek dan fungsional. 36 2.3 Game Edukasi First Person Shooter Dan Kebutuhan Gizi Gizi sangat mempengaruhi kesehatan, dan gizi yang baik sangat dibutuhkan oleh perkembangan otak dan tubuh (Nama, 2003). Game edukasi mengubah proses pembelajaran tradisional dengan menambahkan beberapa elemen yang variatif, baru, dan menantang (Madden & Glanz, 1989). Games sangat cocok untuk orang dewasa maupun anak – anak, karena orang dewasa akan lebih mudah mempelajari sesuatu ketika berhadapan langsung dengan kegiatannya dan yang memerlukan pemecahan masalah (Bloom,1994; Cessario, 1987; Knowles, 1975, 1976). Menurut Ratti (2010), Game ber-genre First Person Shooter (FPS) adalah salah satu genre game yang paling besar dan pertumbuhannya paling cepat, meningkatkan pendapatan potensial-nya cukup menarik para publisher. Berdasarkan itulah skripsi berjudul “Perancangan Aplikasi Game First Person Shooter Tentang Buah – Buahan” dibuat.