Pembangunan game action 3D the walker berbasis desktop

BIODATA PENULIS 1. DATA PRIBADI

  nama : M. Lutfi Azhar jenis kelamin : Laki-laki tempat, tanggal lahir : Banjarmasin, 14 Februari 1989 agama : Islam kewarganegaraan : Indonesia status : Belum kawin anak ke : Dua dari empat bersaudara alamat : Jl. Gambir Saketi No. 25 RT. 04/11 Kelurahan

  Sukaluyu Kecamatan Cibeunying Kaler Bandung telepon : +62857 2226 5885 e-mail

2. RIWAYAT PENDIDIKAN

  1. Sekolah Dasar : SD Muhammadiyah 1 Banjarmasin tahun ajaran 1994-2000

  2. Sekolah Menengah Pertama : SMP Negeri 24 Banjarmasin tahun ajaran 2000

  • – 2003

  3. Sekolah Menengah Atas : SMA Negeri 2 Banjarmasin tahun ajaran 2003

  • – 2006

  4. Perguruan Tinggi : FTIK Unikom Bandung tahun ajaran 2008

  • – 2012 Demikian riwayat hidup ini saya buat dengan sebenar-benarnya dalam keadaan sadar dan tanpa paksaan.

  Bandung

  PEMBANGUNAN GAME ACTION 3D THE WALKER BERBASIS DESKTOP SKRIPSI

  Diajukan untuk Menempuh Ujian Akhir Sarjana Program Studi S1 Teknik Informatika

  Fakultas Teknik dan Ilmu Komputer

M. LUTFI AZHAR 10108497

  

KATA PENGANTAR

Assalammu’alaikum Wr.Wb.

  Puji syukur alhamdulillah penulis panjatkan atas kehadirat Allah SWT sang Pencipta alam semesta, manusia, dan kehidupan beserta seperangkat aturan Nya, karena berkat limpahan rahmat, taufiq, hidayah serta inayah-Nya, sehingga penulis dapat menyelesaikan Skripsi yang berjudul ”PEMBANGUNAN GAME ACTION

  3D THE WALKER BERBASIS DESKTOP

  ” ini dapat terselesaikan tidak kurang dari pada waktunya. Skripsi ini dibuat sebagai salah satu syarat kelulusan pada program Strata 1

  Fakultas Teknik dan Ilmu Komputer, Program Studi Teknik Informatika di Universitas Komputer Indonesia. Penulis menyadari bahwa skripsi ini masih banyak kekurangan dari berbagai macam hal. Namun berkat bantuan dan bimbingan dari beberapa pihak akhirnya skripsi ini dapat diselesaikan tepat pada waktunya.

  Dengan penuh rasa syukur, penulis ingin menyampaikan rasa terima kasih yang sebesar-besarnya kepada :

  1. Kedua orang tua tercinta, Ayahanda, Syafruddin dan Ibunda, Siti Mariani, serta adik-adik tercinta, Fatimah Zuhra dan M. Farid Nur Rahman, yang selalu sabar memberikan dukungan, senantiasa memberikan kasih sayang yang begitu besar, serta senantiasa memberikan doa setiap waktu.

  2. Ibu Ednawati Rainarli, S.Si., M.Si., selaku pembimbing yang telah memberikan pengarahan dan masukan yang sangat berguna bagi penulis dalam penyusunan skripsi ini.

  3. Bapak Eko Budi Setiawan, S.Kom., selaku penguji 1 yang telah memberikan banyak masukan yang sangat berguna bagi penulis.

  4. Bapak Galih Hermawan, S.Kom, M.T., selaku penguji 3 yang telah memberikan banyak masukan yang sangat berguna bagi penulis.

  5. Bapak Irawan Afrianto, S.T., M.T., selaku Ketua Jurusan Teknik Informatika

  6. Seluruh staff dosen dan staff tata usaha Jurusan Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia.

  7. Melita Putri yang sudah menyumbangkan ide cerita dan konsep di dalam pembangunan aplikasi game The Walker ini, serta selalu memberikan dukungan dan semangat bagi penulis.

  8. Rekan-rekan mahasiswa kelas IF-10 angkatan 2008, khususnya Febrian Doni, Triantoro Sulistio, Yudie Rusmayudi, Refi Maisadri, Yana, Atep Nurdin, Zulfikar Sembiring, Nurhalimah, Harya Gusdevi, Tegar Anugerah, Beni Pribadi, dan Deni Ocktaviyan.

  9. Serta semua pihak yang telah membantu dalam penyusunan skripsi ini, yang tidak bisa penulis sebutkan satu-persatu.

  Semoga Allah SWT. senantiasa melimpahkan rahmat dan karunia-Nya, serta memberikan balasan berlipat ganda atas jasa dan amal baiknya. Dengan segala kerendahan hati, dalam penulisan skripsi ini penulis telah berusaha semaksimal mungkin walaupun demikian penulis menyadari bahwa skripsi ini masih banyak kesalahan dan kekurangan. Oleh karena itu penulis mohon saran dan kritikannya untuk kesempurnaan skripsi ini.

  Akhir kata penulis hanya berharap semoga skripsi ini dapat bermanfaat bagi penulis sendiri khususnya dan para pembaca umumnya.

  Wassalamu’alaikum Wr. Wb Bandung, Februari 2013

  Penulis

  DAFTAR ISI

ABSTRAK .............................................................................................................. I

ABSTRACT ............................................................................................................ II

KATA PENGANTAR ......................................................................................... III

DAFTAR ISI .......................................................................................................... V

DAFTAR GAMBAR ........................................................................................... IX

DAFTAR TABEL ............................................................................................ XIII

DAFTAR SIMBOL .......................................................................................... XVI

DAFTAR REFERENSI PROPERTIES GAME ............................................. XIX

DAFTAR LAMPIRAN ................................................................................... XXII

  

BAB I PENDAHULUAN ...................................................................................... 1

I.1. Latar Belakang Masalah......................................................................... 1 I.2. Perumusan Masalah ............................................................................... 2 I.3. Maksud dan Tujuan ................................................................................ 2 I.4. Batasan Masalah .................................................................................... 3 I.5. Metodologi Penelitian ............................................................................ 3 I.6. Sistematika Penulisan ............................................................................ 6

BAB II TINJAUAN PUSTAKA ........................................................................... 8

II.1. Multimedia ............................................................................................. 8 II.2. Game ...................................................................................................... 9 II.2.1. Pengertian Game .................................................................................. 10 II.2.2. Game 3D .............................................................................................. 10 II.2.3. Jenis-jenis Game .................................................................................. 11 II.2.4. Third Person Shooter ........................................................................... 11 II.3. Kecerdasan Buatan ............................................................................... 12 II.4. Algoritma Pencarian ............................................................................ 14 II.4.1. Pencarian Buta ..................................................................................... 15

  II.4.2. Pencarian Terbimbing .......................................................................... 15

  II.5. Algoritma A*(A Star) .......................................................................... 16

  II.6. Fuzzy Logic ......................................................................................... 22

  II.6.1. Himpunan Fuzzy .................................................................................. 23

  II.6.2. Fungsi Keanggotaan ............................................................................. 26

  II.6.3. Operator Dasar Fuzzy ........................................................................... 30

  II.6.4. Penalaran Monoton .............................................................................. 31

  II.6.5. Fungsi Implikasi ................................................................................... 31

  II.6.6. Metode Mamdani ................................................................................. 32

  II.6.7. Metode Sugeno .................................................................................... 33

  II.7. OOP (Object Oriented Programming) ................................................. 35

  II.8. UML (Unified Modeling Language) ................................................... 36

  II.8.1. Use Case Diagram ................................................................................ 37

  II.8.2. Class Diagram ...................................................................................... 38

  II.8.3. Statechart Diagram ............................................................................... 38

  II.8.4. Activity Diagram ................................................................................. 39

  II.8.5. Sequence Diagram ............................................................................... 39

  II.8.6. Collaboration Diagram ......................................................................... 40

  II.8.7. Component Diagram ............................................................................ 40

  II.8.8. Deployment Diagram ........................................................................... 40

  II.9. C# ......................................................................................................... 41

  II.10. Unity Game Engine .............................................................................. 41

  II.11. 3D Studio Max ..................................................................................... 42

  

BAB III ANALISIS DAN PERANCANGAN SISTEM ................................... 44

III.1. Analisis Sistem ..................................................................................... 44 III.1.1 Analisis Game Sejenis ......................................................................... 44 III.1.2 Analisis Game yang Akan Dibangun ................................................... 49 III.1.2.1. Storyline ............................................................................................ 49

  III.1.2.2. Gameplay .......................................................................................... 49

  III.1.2.3. Deskripsi Level .................................................................................. 50

  III.2. Analisis AI ........................................................................................... 52

  III.2.1 Analisis Algoritma A* (A Star) ........................................................... 52

  III.2.1 Analisis Algoritma Fuzzy Logic ........................................................... 66

  III.3. Analisis Kebutuhan Non Fungsional ................................................... 73

  III.3.1 Analisis Perangkat Lunak .................................................................... 74

  III.3.2 Analisis Perangkat Keras ..................................................................... 74

  III.3.3 Analisis Pengguna ................................................................................ 75

  III.4. Analisis Kebutuhan Fungsional ........................................................... 76

  III.4.1. Use Case Diagram ................................................................................ 76

  III.4.2. Scenario Use Case ................................................................................ 78

  III.4.3. Activity Diagram ................................................................................. 89

  III.4.4. Sequence Diagram ............................................................................. 103

  III.4.5. Class Diagram ................................................................................... 107

  III.5. Perancangan Sistem ........................................................................... 108

  III.5.1. Storyboard .......................................................................................... 108

  III.5.2. Pengenalan Karakter .......................................................................... 110

  III.6. Perancangan Arsitektur ...................................................................... 117

  III.6.1. Perancangan Struktur Menu ............................................................... 117

  III.6.2. Perancangan Antar Muka ................................................................... 117

  III.6.3. Perancangan Pesan ............................................................................. 122

  III.6.4. Jaringan Semantik .............................................................................. 122

  III.7. Perancangan Method .......................................................................... 122

  

BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM ............................. 126

IV.1. Implementasi ...................................................................................... 126 IV.1.1.Implementasi Antarmuka .................................................................... 127 IV.2. Pengujian ............................................................................................ 136

  IV.2.1. Pengujian Alpha ................................................................................. 136

  IV.2.2. Pengujian Beta ................................................................................... 160

  

BAB V KESIMPULAN DAN SARAN ............................................................. 167

V.1. Kesimpulan ........................................................................................ 167 V.2. Saran .................................................................................................. 167

DAFTAR PUSTAKA ......................................................................................... 168

DAFTAR PUSTAKA

  [1] Miller, T. 2003. Managed DirectX 9 Kick Start: Graphics and Game Programming. Sams Publishing. [2] Zaharuddin G, Djalle. 2007. The Making of 3D Animation Movie Using 3Dstudio Max. Bandung : Informatika. [3] Kusumadewi, Sri. 2003. Artificial Intelligence (Teknik dan Aplikasinya).

  Yogyakarta : Graha Ilmu. [4] Nazir, Moh. 2006. Metode Penelitian. Jakarta : Ghalia Indonesia. [5] Pressman, Roger, S. 2001.

  Software Engineering: A Practitioner’s Approach, Fifth Ed. New York : McGraw-Hill Book Company.

  [6] Sommerville, Ian. 2003. Software Engineering Rekayasa Perangkat Lunak.

  Jakarta : Airlangga. [7] Kevin, Knight. 2000. Artificial Intelligence. Carnegie Mellon University. [8] Suyanto. 2007. Artificial Intelligence Searching, Reasoning, Planning dan Learning. Bandung : Informatika.

  [9] Sutojo, T. Mulyanto, Edy. Suhartono, Vincent. 2011. Kecerdasan Buatan.

  Yogyakarta: Andi. [10] Klir, J. George and Yuan. Bo. 1995. Fuzzy Sets and Fuzzy Logic : Theory and Applications. Prentice Hall.

  [11] Kusumadewi, Sri dan Purnomo, Hari. 2004. Aplikasi Logika Fuzzy Untuk Pendukung Keputusan. Yogyakarta : Graha Ilmu. [12] Naba, Agus. 2011. Belajar Cepat Fuzzy Logic Menggunakan Matlab.

  Yogyakarta: Andi.

  [14] Harold, Whitaker, and Jhon, Halas. 2006. Timing For Animation, Bayumedia Publishing. [15] Russel, Stuart, and Norvig, Peter. 2003. Artificial Intelligence: A Modern

  nd Approach 2 Ed. New Jersey: Prentice-Hall.

  [16] Munir, Rinaldi. 2012. Fuzzy Logic, Metode Numerik & Logika Fuzzy.

  Bandung: Institut Teknologi Bandung. [17] Booch, Grady. 1998. Object Oriented Analysis and Design With Applications

  nd 2 Ed. California: Addison-Wesley.

  [18] Hamilton, Kim, and Miles, Russell. 2006. Learning UML 2.0. United States of America: O’Reilly Media. [19] Hapsari, Tilawah. 2011. Penerapan Algoritma A-Star(A*) Untuk

  Menyelesaikan Masalah Maze, Jurnal Teknik Informatika. Bandung: Institut Teknologi Bandung.

  [20] Amctv. 2011. The Walking Dead

  Diakses pada tanggal 20 September 2012.

  [21] Azhar, Arsyad. 2008. Media Pembelajaran. Jakarta: Rajawali Pers. [22] Luluvikar. 2011. Aplikasi Multimedia Dalam Pembelajaran.

  

akses pada tanggal 18 September 2012.

  [23] Arc C, Luther. 1994. Authoring Interactive Multimedia. Boston: AP Professional.

BAB I PENDAHULUAN I.1 Latar Belakang Masalah Game The Walker yang akan dibangun mempunyai alur cerita yang

  terinspirasi dari sebuah film atau serial televisi yang berjudul The Walking Dead yang ditayangkan di TV Amerika dalam siaran

  AMC’s Television Series. The Walking Dead merupakan serial televisi pertama yang mengangkat kisah zombie[20]. The Walking Dead mempunyai daya tarik di dalam ceritanya, karena memiliki

  pesan moral tersendiri, setiap episode menampilkan cerita yang berbeda dan bukan hanya sekedar “berperang” melawan zombie, tetapi lebih menekankan sisi humanism dari setiap karakter yang terlibat. Untuk mengurangi atau menghindari unsur negatif yang ditimbulkan, maka nantinya karakter zombie yang ada di dalam film akan diganti dengan karakter laba-laba yang besar dengan karakteristik yang hampir sama.

  Salah satu elemen yang membuat genre game action ini menarik adalah dukungan grafis desain 3D. Dalam game 3D pengguna dapat melihat sudut pandang tiga ratus enam puluh derajat pemandangan yang ada di dalam game. Oleh karena itu diperlukan model dan desain yang artistik dan menarik untuk mendapatkan nilai lebih dalam sebuah game.

  Game dengan genre third person shooter menarik untuk dimainkan karena

gameplaynya yang simple membuat orang-orang mudah untuk memainkannya. Salah

  satu contoh game third person shooter adalah Army Men 3D. Army Men merupakan mainan plastik yang berbentuk para pasukan. Unsur kekerasan dalam game ini diminimalisir dengan penggunaan tentara-tentara mainan dari plastik sebagai wujud manusia di dalam game. Game ini mempunyai berbagai keterbatasan yang ada, warna musuh dan lingkungannya yang nyaris mirip, tidak ada indikator arah tembakan dan

  

crosshair bidikan membuat pengguna harus sangat berhati-hati untuk sekadar

  melangkah maju. Kontrol dan variasi gerakan dari karakter tentara tidak sevariatif

  2 dari game third person shooter sekarang ini seperti tidak ada gerakan berlari dan menunduk, dan juga segi desain grafis tidak terlalu istimewa.

  Game bertipe 3D meminta spesifikasi komputer yang lumayan tinggi agar

  tampilan tiga dimensi game tersebut ditampilkan secara sempurna. Basis desktop lebih cocok dibandingkan dengan basis web, karena desktop memiliki tampilan yang baik dengan kemampuan DirectX yang telah disediakan Microsoft, dan akan membutuhkan bandwith yang besar untuk menjalankan sebuah game dengan desain grafis yang bagus atau mempunyai resolusi yang tinggi.

  Berdasarkan latar belakang masalah di atas, penulis tertarik untuk membangun game dengan genre action dan desain 3D yang dilatar belakangi dari cerita sebuah serial televisi, dengan judul “PEMBANGUNAN GAME ACTION 3D

  THE WALKER BERBASIS DESKTOP ”.

  I.2 Perumusan Masalah

  Berdasarkan uraian pada latar belakang masalah di atas, maka dapat dirumuskan masalahnya adalah bagaimana membangun game 3D khususnya genre

  

action sebagai sarana hiburan yang mampu menarik perhatian dan juga minat

penggunanya dari segi alur cerita dan desain grafisnya.

  I.3 Maksud dan Tujuan

  Berdasarkan permasalahan yang telah dikemukakan diatas, maka maksud dari penulisan tugas akhir ini adalah membangun game action 3D The Walker berbasis

  

desktop. Adapun tujuannya adalah membangun game 3D khususnya genre action

  sebagai sarana hiburan yang mampu menarik perhatian dan juga minat penggunanya dari segi alur cerita dan desain grafisnya.

  3

  I.4 Batasan Masalah

  Agar pembahasan menjadi terarah, maka permasalahan akan dibatasi terhadap masalah-masalah berikut ini:

  1. Target user adalah pengguna berumur 17 tahun keatas.

  2. Genre game yang dibangun adalah action.

  3. Game berbasis desktop.

  4. Singleplayer atau hanya bisa dimainkan oleh satu pengguna.

  5. Game dibangun dengan tampilan atau desain 3D dengan rendering menggunakan tools dari 3D Studio Max.

  6. Alur cerita diambil dari cerita film atau serial televisi.

  7. Pemodelan dan perancangan sistem menggunakan pemodelan berbasis objek dengan tools UML (Unified Modeling Language).

  8. Level pada game akan dibangun tiga level.

  9. Game dibangun dengan menggunakan tools game engine Unity 3D, dengan bahasa pemrograman berupa C#, dan javascript.

  10. Algoritma yang digunakan adalah algoritma A* (A Star) untuk

  pathfinding, dan algoritma fuzzy logic untuk kontrol perilaku dan

  pengambilan keputusan. Dan akan diterapkan pada NPC (Non Playable Character).

  I.5 Metodologi Penelitian

  Metodologi penelitian yang digunakan dalam mengerjakan laporan tugas akhir ini adalah metode deskriptif, yaitu metode penelitian yang menggambarkan secara sistematika dan akurat mengenai keadaan-keadaan nyata yang berjalan pada saat penelitian. Gambaran tersebut diperoleh dengan cara mengumpulkan, mengklasifikasikan, menyajikan, serta menganalisis data sehingga dapat ditarik suatu kesimpulan.

  4

  1. Tahap pengumpulan data Metode pengumpulan data yang digunakan dalam penelitian ini adalah sebagai berikut : a. Metode Observasi

  Metode observasi yang dilakukan adalah pengumpulan data dengan cara mengadakan pengamatan langsung dan mengindra terhadap objek atau proses yang di jadikan objek pemasalahan seputar game yang dibangun berupa masalah algoritma kecerdasan buatan, desain, tools dan juga pemodelan dengan UML.

  b. Metode Studi Pustaka Studi pustaka yang dilakukan ialah dengan mempelajari berbagai literatur, seperti buku-buku, artikel-artikel, e-book, website, dan sumber- sumber yang berkaitan dengan game yang akan dibangun, meliputi kecerdasan buatan, desain, tools dan juga pemodelan dengan UML.

  2. Tahap Pengembangan Perangkat Lunak Model yang akan digunakan pada kasus ini adalah model Waterfall yang dirumuskan oleh Ian Sommerviell di dalam bukunya Software Engineering

  (Rekayasa Perangkat Lunak) [6]. Model ini mengusulkan sebuah pendekatan kepada perkembangan software yang sistematik dan sekuensial yang mulai pada tingkat dan kemajuan sistem pada seluruh analisis, desain, kode, pengujian, dan pemeliharaan. Dimodelkan setelah siklus rekayasa konvensional, model sekuensial linier melingkupi aktivitas-aktivitas sebagai berikut

  5

  System Engineering Analysis Design Coding Testing Maintenance

  Gambar I.1 Waterfall [6] a.

   System Engineering

  Tahap ini merupakan rekayasa analisis sistem dan informasi yang menyangkut kegiatan pengumpulan data sebagai pendukung pembangunan sistem serta menentukan ke arah mana aplikasi ini akan dibangun.

  b.

   Analysis

  Merupakan tahap menganalisis hal-hal yang diperlukan dalam pelaksanaan pembuatan perangkat lunak. Pada tahap ini juga dilakukan analisis algoritma yang akan dipakai.

  c.

   Design

  Tahap ini merupakan kegiatan menterjemahkan analisis kebutuhan ke dalam bentuk rancangan sebelum penyusunan program yang berupa perancangan antarmuka dan perancangan prosedur (algoritma).

  d.

   Coding

  Tahap ini merupakan tahap penterjemahan hasil desain ke dalam program-program yang menggunakan bahasa pemrograman yang telah

  6 ditentukan. Jika desain dilakukan dengan cara yang lengkap, pembuatan kode dapat diselesaikan secara mekanis.

  e.

   Testing

  Program yang telah dibuat harus diuji. Proses pengujian berfokus pada logika internal software, memastikan bahwa semua pernyataan sudah diuji, dan pada eksternal fungsional, yaitu mengarahkan pengujian untuk menemukan kesalahan-kesalahan dan memastikan bahwa input yang dibatasi akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.

  f.

   Maintenance

  Pemeliharaan suatu perangkat lunak diperlukan, termasuk di dalamnya adalah pengembangan. Perangkat lunak akan mengalami perubahan setelah disampaikan kepada pelanggan (pengecualian yang mungkin adalah perangkat lunak yang dilekatkan). Perubahan akan terjadi karena kesalahan-kesalahan yang ditentukan, karena perangkat lunak harus disesuaikan untuk mengakomodasi perubahan-perubahan di dalam lingkungan eksternalnya, atau karena pelanggan membutuhkan perkembangan fungsional atau unjuk kerja.

I.6 Sistematika Penulisan

  Sistematika penulisan tugas akhir ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

  BAB I PENDAHULUAN Menguraikan tentang latar belakang masalah, perumusan masalah, maksud dan tujuan, metodologi penelitian, batasan masalah, serta sistematika penulisan dari tugas akhir yang akan dibuat.

  7

  BAB II. TINJAUAN PUSTAKA Membahas teori tentang game, kecerdasan buatan, algoritma pencarian, algoritma

  

fuzzy logic, OOP (object oriented programming), UML (unified modeling language),

unity dan 3D Studio Max.

  BAB III. ANALISIS DAN PERANCANGAN SISTEM Menganalisis masalah yang dihadapi meliputi analisis game sejenis, analisis game yang akan dibangun, analisis algoritma A* dan fuzzy logic serta analisis kebutuhan - nonfungsional dan fungsional. Dan merancang game action 3D The Walker berbasis desktop.

  BAB IV. IMPLEMENTASI DAN PENGUJIAN SISTEM Merupakan tahapan yang dilakukan dalam penelitian secara garis besar sejak dari tahap persiapan sampai penarikan kesimpulan, metode dan kaidah yang diterapkan dalam penelitian. Serta menerapkan kegiatan implementasi dan pengujian pada game action 3D The Walker berbasis desktop.

  BAB V. KESIMPULAN DAN SARAN Berisi kesimpulan yang sudah diperoleh dari hasil yang diperoleh dari pembangunan

  

game action 3D The Walker yang berbasis desktop meliputi kecerdasan buatan,

  desain, dan tools-tools yang dikembangkan serta saran yang bisa ditambahkan untuk pengembangan game action 3D lebih baik.

BAB II TINJAUAN PUSTAKA II.1 Multimedia Multimedia adalah media yang menggabungkan dua unsur atau lebih media

  yang terdiri dari teks, grafik, gambar, audio, video dan animasi secara terintegrasi [22].

  Menurut beberapa ahli multimedia memiliki beberapa definisi yaitu :

  1. Rosch Multimedia adalah kombinasi dari komputer dan video.

  2. McComick Multimedia adalah kombinasi dari komputer dari tiga elemen yaitu suara, gambar dan teks.

  3. Turban dan kawan-kawan Multimedia adalah kombinasi dari paling sedikit dua media input dan output.

  Media ini dapat berupa audio, animasi, video, teks, grafik dan gambar.

  4. Robin dan Linda Multimedia adalah alat yang dapat menciptakan presentasi yang dinamis dan interaktif yang mengkombinasikan teks, grafik, animasi, audio dan video.

  5. Hofstetter Multimedia adalah pemanfaatan komputer untuk membuat dan menggabungkan teks, grafik, audio, video dengan menggunakan tool yang memungkinkan pemakai berinteraksi, berkreasi dan berkomunikasi. Dalam definisi ini terdapat empat komponen multimedia yaitu : a. Harus ada peralatan elektronik yang dapat mengkoordinasikan apa yang dapat dilihat dan didengar dan yang dapat berinteraksi dengan pengguna. b. Harus ada link yang dapat menghubungkan pengguna dengan informasi.

  c. Harus ada alat navigasi yang dapat memandu pengguna untuk menjelajahi jaringan informasi yang saling terhubung.

  d. Harus dapat menyediakan tempat kepada pengguna untuk mengumpulkan, memproses dan mengkomunikasikan informasi dan ide dari pengguna itu sendiri. Dengan penggunaan multimedia, penyampaian informasi akan menjadi lebih menarik dan mempermudah pengguna dalam mendapatkan informasi tersebut. Seperti yang disebutkan dalam laporan hasil penelitian yang dikeluarkan oleh

  

Computer Technology Research (Hofstetter) bahwa seseorang hanya akan

mendapatkan 20% dari apa yang mereka lihat dan 30% dari yang mereka dengar.

  Sedangkan melalui multimedia akan mendapatkan 50% dari apa yang mereka lihat dan dengar, sampai 80% dari apa yang mereka lihat, dengar dan berinteraksi pada waktu yang bersamaan.

  Keuntungan dari penggunaan multimedia dalam suatu aplikasi adalah: 1. Meningkatkan aliran gagasan dan informasi.

  2. Merupakan cara yang kaya untuk mengkomunikasikan sesuatu.

  3. Mendorong partisipasi, keterlibatan, dan eksplorasi pengguna.

  4. Menstimulasi panca indera.

  5. Memberikan kemudahan pemakaian terutama bagi pengguna awam.

II.2 Game

  Game merupakan sebuah bentuk seni dimana penggunanya disebut dengan

  pemain (player), diharuskan membuat keputusan-keputusan dengan tujuan mengelola sumber daya yang diperoleh dari kesempatan-kesempatan bermain (token) miliknya untuk mencapai tujuan tertentu. Video game adalah bentuk game yang interaksi umumnya melibatkan media video dan audio.

  II.2.1 Pengertian Game

  Menurut Andang Ismail terdapat dua pengertian game (permainan). Pertama,

  

game (permainan) adalah sebuah aktifitas bermain yang murni mencari kesenangan

  tanpa mencari menang atau kalah. Kedua, permainan diartikan sebagai aktifitas bermain yang dilakukan dalam rangka mencari kesenangan dan kepuasan, namun ditandai pencarian menang – kalah.

  Berdasarkan representasinya, game dapat dibedakan menjadi 2 jenis yaitu game 2 dimensi (2D) dan 3 dimensi (3D). Game 2D adalah game yang secara matematis hanya melibatkan 2 elemen koordinat kartesius yaitu x dan y, sehingga konsep kamera pada game 2D hanya menentukan gambar pada game yang dapat dilihat oleh pemain. Sedangkan game 3D adalah game yang selain melibatkan elemen x dan y juga melibatkan elemen z pada perhitungannya sehingga konsep kamera pada game

  3D benar-benar menyerupai konsep kamera pada kehidupan nyata.

  II.2.2 Game 3D

  Menurut Andrew Rollings dan Dave Morris, industri game selalu berusaha untuk mengikuti perkembangan teknologi yang ada di dunia ini. Ketika perangkat- perangkat komputer seperti processor, graphic card versi baru mulai muncul di pasaran, para developer game selalu berusaha mengikuti perkembangan tersebut.

  Pada saat kemampuan proses pada komputer semakin cepat, para developer juga senantiasa menciptakan game yang semakin canggih sehingga muncul engine dengan grafik 3D (3 dimensi). Maka dari itu, game 3D dengan hitungan polygon yang sangat besar dan pencahayaan yang sudah canggih, juga tekstur maping mulai diproduksi. Game 3D merepresentasikan objek dalam bentuk 3 dimensi sehingga objek akan terlihat lebih nyata seperti dalam kehidupan nyata.

  Game bertipe 3 dimensi merupakan game dengan grafis yang baik dalam

  penggambaran secara realita, kebanyakan game-game ini memiliki perpindahan kamera (angle) hingga 360 derajat sehingga dapat melihat secara keseluruhan dunia

  game tersebut.

  II.2.3 Jenis-jenis Game

  Berikut ini beberapa jenis game berdasarkan cara pembuatannya, cara pemasarannya dan mesin yang menjalankannya. Jenis-jenis game tersebut adalah:

  1. Game PC

  Game PC adalah game yang dimainkan pada PC (Personal Computer) yang

  memiliki kelebihan yaitu tampilan antarmuka yang baik untuk input maupun

  output. Output visual berkualitas tinggi karena layar komputer biasanya

  memiliki resolusi yang jauh lebih tinggi dibandingkan dengan layar televisi biasa. Kekurangannya adalah spesifikasi komputer yang sangat bervariasi antar satu komputer dengan komputer yang lainnya menyebabkan beberapa

  game dapat ditampilkan dengan baik pada satu komputer tetapi tidak berjalan dengan baik pada komputer yang lainnya.

  2. Game Console

  Game console adalah game yang dijalankan pada suatu mesin spesifik yang biasanya tersedia di rumah seperti Xbox, Nintendo, Wii dan lain-lain.

  3. Game Arcade

  Game arcade adalah game yang dijalankan pada mesin dengan input dan output audio visual yang telah terintegrasi dan tersedia ditempat-tempat

  umum.

  4. Game Online

  Game online adalah game yang hanya dapat dimainkan secara online melalui LAN atau internet.

  II.2.4 Third Person Shooter Third Person Shooter atau disingkat TPS merupakan sub-genre dari action

game dan dikategorikan sebagai game play dengan model pertarungan. Third person

shooter sama seperti first person shooter game yaitu mengutamakan shooting dan

combat dari perspektif karakter yang bertujuan untuk memberikan pemandangan

  yang lebih luas dan gerakan yang lebih banyak.

  Seorang penembak orang ketiga adalah permainan terstruktur sekitar penembakan, dan di mana pemain dapat melihat avatar di layar dalam pandangan orang ketiga. Genre ini menarik untuk dimainkan karena gameplaynya yang simple membuat orang-orang mudah untuk memainkannya. Beberapa contoh game dengan

  

genre third person shooter adalah Army Men 3D, Tomb Raider, Resident Evil, dan

The Punisher.

II.3 Kecerdasan Buatan

  Kecerdasan buatan atau Artificial Intelligence (AI) merupakan cabang dari ilmu komputer yang berhubungan dengan pengotomatisan tingkah laku cerdas. Kecerdasan buatan didasarkan pada teori suara (sound theoretical) dan prinsip- prinsip aplikasi dari bidangnya. Prinsip-prinsip ini meliputi struktur data yang digunakan dalam representasi pengetahuan algoritama yang diperlukan untuk mengaplikasikan pengetahuan tersebut serta bahasa dan teknik pemrograman yang digunakan dalam mengimplementasikannya.

  Berdasarkan sudut pandang, AI dapat dipandang sebagai berikut :

  1. Sudut pandang kecerdasan, AI adalah bagaimana membuat mesin yang cerdas dan dapat melakukan hal-hal yang sebelumnya hanya dapat dilakukan manusia.

  2. Sudut pandang bisnis, AI adalah sekelompok alat bantu yang berdayaguna dan metodologi yang menggunakan alat-alat bantu tersebut untuk menyelesaikan masalah-masalah bisnis.

  3. Sudut pandang pemrograman, AI meliputi studi tentang pemrograman simbolik, pemecahan masalah dan proses pencarian.

  4. Sudut pandang penelitian :

  a. Riset tentang AI dimulai pada awal tahun 1960-an, percobaan pertama adalah membuat program permainan catur, membuktikan teori dan general problem solving. b. AI adalah nama pada akar dari studi area. Kecerdasan buatan memiliki sejumlah sub disiplin ilmu yang sering digunakan untuk pendekatan yang esensial bagi penyelesaian suatu masalah dan dengan aplikasi bidang AI yang berbeda. Berikut gambar bidang-bidang tugas dari AI yaitu : Engineering Expert Task Diagnosis Scientific Medical Analysis Intelligence Artificial Mathematics Financial Analysis Formal Task Games Mundane Task Natural Language Robotics Systems

  Gambar II.1 Bidang-bidang tugas (task domains) dari AI [3] Aplikasi penggunaan AI dapat dibagi ke dalam tiga kelompok yaitu :

  1. Expert Task AI dibentuk berdasarkan pengalaman dan pengetahuan yang dimiliki oleh para ahli. Penggunaan ini dapat membantu para ahli untuk menyampaikan ilmu-ilmu yang dimiliki. Contohnya adalah analisis finansial, analisis medical, analisis ilmu pengetahuan, dan rekayasa (desain, pencarian, kegagalan, perencanaan, manufaktur).

  2. Formal Task AI digunakan untuk melakukan tugas-tugas formal yang selama ini manusia biasa lakukan dengan lebih baik. Contohnya adalah game dan matematika (geometri, logika, kalkulus, integral).

3. Mundane Task

  Secara harfiah mundane adalah keduniaan. AI digunakan untuk melalukan hal-hal yang sifatnya duniawi atau melakukan kegiatan yang dapat membantu manusia. Contohnya adalah persepsi, bahasa alami, dan robot control. Aplikasi kecerdasan buatan memiliki dua bagian utama yaitu :

  1. Basis Pengetahuan (Knowledge Base): berisi fakta-fakta, teori, pemikiran dan hubungan antara satu dengan lainnya.

  2. Motor Inferensi (Inference Engine): kemampuan menarik kesimpulan berdasarikan pengalaman.

II.4 Algoritma Pencarian

  Kecerdasan buatan diciptakan dengan tujuan untuk memecahkan berbagai masalah yang dihadapi oleh manusia. Masalah di dalam kecerdasan buatan adalah masalah-masalah yang dapat di konversi ke dalam ruang keadaan, mempunyai keadaan awal (initial state), dan keadaan tujuan (goal state), serta dapat dibuat aturan-aturan untuk mengubah suatu keadaan (state) ke keadaan (state) lainnya. Algoritma pencarian merupakan teknik pemecahan masalah dan merupakan bagian dari kecerdasan buatan

  Metode pencarian sangat penting untuk menyelesaikan permasalahan karena setiap state atau keadaan menggambarkan langkah-langkah untuk menyelesaikan permasalahan. Dalam sebuah permainan, metode pencarian akan menentukan apa yang harus dilakukan dimana setiap state menggambarkan kemungkinan posisi pada suatu saat. Metode pencarian adalah bagian dari kesimpulan dimana setiap state menggambarkan hipotesis dalam sebuah rangkaian deduktif.

  Menurut cara algoritma mengembangkan node dalam proses pencarian, metode pencarian dibagi menjadi dua golongan, yakni pencarian buta (blind search) dan pencarian terbimbing (heuristic search).

  II.4.1 Pencarian Buta

  Pencarian buta (blind search) adalah pencarian solusi tanpa adanya informasi yang dapat mengarahkan pencarian untuk mencapai goal state dari current state. Informasi yang ada hanyalah definisi goal state itu sendiri sehingga algoritma dapat mengenali goal state. Apabila tidak ada informasi maka pencarian buta dalam kerjanya akan memeriksa node-node secara tidak terarah dan kurang efisien untuk kebanyakan kasus karena banyaknya node yang dikembangkan. Beberapa contoh algoritma yang termasuk blind search adalah Breadth First Search, Uniform Cost

  

Search, Depth First Search, Depth Limited Search, Interative Deepening Search dan

Bidirectional Search.

  II.4.2 Pencarian Terbimbing

  Pencarian terbimbing (heuristic search) berasal dari kata kerja bahasa Yunani,

  heuriskein

  , yang berarti ‘mencari’ atau ‘menemukan’. Dalam dunia pemrograman, sebagian orang menggunakan kata heuristik sebagai lawan kata dari algoritmik, dimana kata heuristik ini diartikan sebagai ‘suatu proses yang mungkin dapat menyelesaikan suatu masalah tetapi tidak ada jaminan bahwa solusi yang dicari selalu dapat ditemukan’[3]. Didalam mempelajari metode-metode pencarian ini, kata heuristik diartikan sebagai suatu fungsi yang memberikan suatu nilai berupa biaya perkiraan (estimasi) dari suatu solusi.

  Pencarian terbimbing mempunyai informasi tentang biaya untuk mencapai

  

goal state dari current state. Pencarian terbimbing dapat melakukan pertimbangan

untuk mengembangkan atau memeriksa node-node yang mengarah ke goal state.

  Pencarian terbimbing untuk menghitung cost ke goal state digunakan fungsi heuristik. Fungsi heuristik berbeda dari pada algoritma dimana heuristik lebih merupakan perkiraan untuk membantu algoritma dan tidak harus valid setiap waktu. Beberapa contoh algoritma pencarian yang mengguanakan metode pencarian terbimbing atau heuristic search adalah Best First Search, Greedy Search, A* (A Star) dan Hill Climbing Search.

  Gambar bagan metode pencarian dibagi menjadi dua golongan, yaitu:

  Metode Pencarian Pencarian Buta Pencarian Terbimbing

  Breadth First Search Uniform Cost Search Depth First Search Depth Limited Search Iterative Deepening Search Bidirectional Search Best First Search Greedy Search A* (A Star) Search Hill Climbing Search

  Gambar II.2 Bagan Metode Pencarian [3]

II.5 Algoritma A* (A Star)

  Algoritma A* adalah algoritma yang dikemukakan oleh Hart, Nilsson, dan

  

Raphael pada tahun 1968. Algoritma A* merupakan salah satu algoritma Branch &

Bound atau disebut juga sebagai sebuah algoritma untuk melakukan pencarian solusi

  dengan menggunakan informasi tambahan (heuristik) dalam menghasikan solusi yang optimal.

  Algoritma A* (A Star) merupakan perbaikan dari metode Best First Search (BFS) dengan memodifikasi fungsi heuristic nya. A* (A Star) akan meminimumkan total biaya lintasan. Pada kondisi yang tepat, A* akan memberikan solusi yang terbaik dalam waktu yang optimal. Pencarian menggunakan algoritma A* mempunyai prinsip yang sama dengan algoritma BFS hanya saja dengan dua faktor tambahan yaitu :

  1. Setiap sisi mempunyai cost yang berbeda-beda, seberapa cost untuk pergi dari satu simpul ke simpul lain.

  2. Cost dari setiap simpul ke simpul tujuan bisa diperkirakan. Ini membantu pencarian sehingga lebih kecil kemungkinan pencarian ke arah yang salah.

  Cost untuk setiap simpul tidak harus berupa jarak. Cost bisa saja berupa