Implementasi Konsep Kecerdasan Buatan Dalam Rancang Bangun Game Brick Breaker

(1)

IMPLEMENTASI KONSEP KECERDASAN BUATAN DALAM

RANCANG BANGUN GAME BRICK BREAKER

SKRIPSI

WULAN AYUNI

091421050

PROGRAM STUDI S-1 EKSTENSI ILMU KOMPUTER

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

UNIVERSITAS SUMATERA UTARA

MEDAN

2011


(2)

IMPLEMENTASI KONSEP KECERDASAN BUATAN DALAM RANCANG

BANGUN GAMEBRICK BREAKER

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Komputer

WULAN AYUNI 091421050

PROGRAM STUDI S1 EKSTENSI ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA

MEDAN 2011


(3)

PERSETUJUAN

Judul : IMPLEMENTASI KONSEP KECERDASAN

BUATAN DALAM RANCANG BANGUN GAME BRICK BREAKER

Kategori : SKRIPSI

Nama : WULAN AYUNI

Nomor Induk Mahasiswa : 091421050

Program Studi : SARJANA (S1) ILMU KOMPUTER Departemen : ILMU KOMPUTER

Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN

ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, 2011

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Drs. Agus Salim Harahap, M.si Prof.Dr.Muhammad Zarlis NIP 195408281981031004 NIP 195707011986011003

Diketahui/Disetujui oleh

Departemen Ilmu Komputer FMIPA USU Ketua,

Dr. Poltak Sihombing, M.Kom NIP 196203171991021001


(4)

PERNYATAAN

IMPLEMENTASI KONSEP KECERDASAN BUATAN DALAM RANCANG

BANGUN GAMEBRICK BREAKER

DRAFT SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, Juni 2011

WULAN AYUNI 091421050


(5)

PENGHARGAAN

Alhamdulillah, puji dan syukur penulis panjatkan kepada Allah SWT yang telah memberikan rahmat dan karuniaNya, sehingga penulis dapat menyelesaikan penyusunan skripsi ini dengan tepat waktu sebagai syarat untuk memperoleh gelar sarjana pada program studi S1 Ilmu Komputer Universitas Sumatera Utara.

Ucapan terima kasih saya sampaikan kepada Prof.Dr.Muhammad Zarlis selaku dosen pembimbing pertama dan Drs. Agus Salim Harahap, M.si selaku dosen pembimbing kedua yang telah banyak meluangkan waktunya dalam memberikan masukan-masukan dan arahan kepada penulis untuk menyelesaikan skripsi ini. Ucapan terima kasih juga ditujukan kepada Drs. Marihat Situmorang, M.Kom selaku dosen penguji pertama dan Ade Candra, ST, M.Kom selaku dosen penguji kedua. Tak lupa pula terima kasih penulis kepada Ketua Program Studi Ekstensi Ilmu Komputer Dr. Poltak Sihombing, M.Kom dan Sekretaris Program Studi Ilmu Komputer Maya Silvi lydia, B.Sc, M.Sc serta kepada Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Sumatera Utara, dan semua dosen dan pegawai di Program Studi S1 Ilmu Komputer Departemen Ilmu Komputer FMIPA USU.

Tidak lupa juga penulis ucapkan terima kasih kepada keluarga tercinta, Ayahanda Isril dan Ibunda Ratna Sari atas doa dan dorongan yang telah diberikan, serta kedua abang saya Zelvian Shella dan Ringgus Savard atas dukungannya baik materil maupun moril. Untuk Tommy Rinaldi terima kasih untuk selalu menjadi penyemangat baik dalam susah maupun senang. Kepada teman-teman seperjuangan di S1 Ekstensi Ilmu Komputer Kom B 2009 yang tidak dapat disebutkan satu persatu.

Dalam Penyusunan skripsi ini penulis menyadari bahwa masih banyak kekurangan, untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun dari semua pihak demi kesempurnaan tugas akhir ini.

Akhir kata penulis berharap semoga skripsi ini dapat bermanfaat bagi kita semua.


(6)

ABSTRAK

Game sebagai media hiburan telah berkembang dengan pesat seiring dengan berkembangnya juga teknologi. Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, diharapkan elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia. Dalam permainan Brick Breaker ini penulis menerapkan konsep logika fuzzy dalam menentukan kekuatan dan kelincahan papan pemantul bola terhadap datangnya bola. Di dalam perancangan game ini, penulis menggunakan perangkat lunak Adobe Flash CS3. Diharapkan dengan pembuatan game ini akan memberikan wacana baru tentang game dan menambah pengetahuan penulis tentang cara membuat suatu game.


(7)

IMPLEMENTATION OF ARTIFICIAL INTELLIGENCE CONCEPT IN DESIGNING THE GAME BRICK BREAKER

ABSTRACT

Games as a medium of entertainment has grown rapidly along with the development of technology as well. One of the elements that play an important role in a games is artificial intelligence. With artificial intelligence, expected elements in the games can act as natural as possible like human being. In this Brick Breaker games, the author apply the concept of fuzzy logic in determining the strength and agility of reflector board of the ball against the arrival of the ball. In designing of this game, the author use the software Adobe Flash CS3. Expected with the making of this game will give a new discourse about the game and increase the knowledge of author about how to design a games.


(8)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak v

Abstact vi

Daftar Isi vii

Daftar Tabel ix

Daftar Gambar x

Bab 1 Pendahuluan 1

1.1 Latar Belakang Masalah 1

1.2 Rumusan Masalah 3

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 4

1.5 Manfaat Penelitian 4

1.6 Metode Penulisan 5

1.7 Sistematika Penulisan 6

Bab 2 Landasan Teori 8

2.1 Pengertian Komputer 8

2.2 Pengertian Kecerdasan Buatan 10

2.2.1 Lingkup Kecerdasan Buatan Pada Aplikasi Komersial 12

2.2.2 Soft Computing 13

2.3 Game (Permainan) 15

2.3.1 Pengertian Game 15

2.3.2 Sejarah Perkembangan Game 16

2.3.3 Jenis-jenis Game 17

2.4 Logika Fuzzy 19

2.4.1 Pengertian Logika Fuzzy 19

2.4.2 Himpunan Fuzzy (Fuzzy Set) 20

2.4.3 Jenis-Jenis Fungsi Keanggotaan 23

2.4.3.1 Fungsi Representasi Linier 23 2.4.3.2 Fungsi Keanggotaan Segitiga 25 2.4.3.3 Fungsi Keanggotaan Trapesium 25 2.4.3.4 Representasi Kurva Bahu 26 2.4.4 Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy 27

2.5 Sekilas Tentang Adobe Flash CS3 29

2.4.1 Lingkungan Kerja Adobe Flash CS3 29

2.4.2 Action Script 38


(9)

3.1 Flowchart 39

3.2 Penerapan Logika Fuzzy 46

3.2.1 Menghitung Fungsi Keanggotaan 48

3.2.2 Operasi Himpunan Fuzzy 53

3.3 Storyboard 55

3.4 Perancangan Tampilan

Bab 4 Implementasi 58

4.1 Implementasi 58

4.2 Persiapan 58

4.3 Tampilan Aplikasi Permainan 59

Bab 5 Kesimpulan dan Saran 63

5.1 Kesimpulan 63

5.2 Saran 64

Daftar Pustaka 65


(10)

DAFTAR TABEL

Halaman

3.1 Simbol-simbol Pada Flowchart 40


(11)

DAFTAR GAMBAR

Halaman 2.1 Grafik himpunan fuzzyuntuk bilangan yang mendekati 10 21

2.2 Himpunan fuzzypada variabel temperatur 22

2.3 Fungsi Representasi Linier Naik 24

2.4 Fungsi Representasi Linier Turun 24

2.5 Grafik Fungsi Keanggotaan Segitiga 25

2.6 Grafik Fungsi Keanggotaan Trapesium 26

2.7 Representasi Kurva Bahu 27

2.8 Operasi Union Himpunan Bagian A dan B 28

2.9. Operasi Intersection Himpunan Bagian A dan B 28

2.10 Welcome Screen 30

2.11 Tampilan Default Workspace 31

2.12 Panel Tool atau Toolbox 33

2.13 Timeline 35

2.14 Timeline property 1 35

2.15 Timeline Property 2 36

2.16 Stage 37

2.17 Panel Property Inspector 38

3.1 Flowchart Menu Awal 43

3.2.Flowchart Alur Permainan 45

3.3 Himpunan Fuzzy pada variabel Kekuatan 47

3.4 Himpunan Fuzzy Pada Variabel Agility 47

3.5 Himpunan Fuzzy: Cepat (Agility) 49

3.6 Himpunan Fuzzy: Lambat (Agility) 50

3.7 Himpunan Fuzzy: Sedang (Agility) 50

3.8 Himpunan Fuzzy: Kuat (Kekuatan) 51

3.9 Himpunan Fuzzy: Lemah (Kekuatan) 51

3.10 Himpunan Fuzzy: Sedang (Kekuatan) 52

3.11 Tampilan Awal Game 56

3.12 Tampilan Layar Utama Game 57

3.13 Tampilan Layar Hasil Permainan 57

4.1 Tampilan Awal Game 59

4.2 Tampilan Layar Utama Game (Mode Beginning) 60 4.3 Tampilan Layar Utama Game (Mode Normal) 61 4.4 Tampilan Layar Utama Game (Mode Beginning) 61


(12)

ABSTRAK

Game sebagai media hiburan telah berkembang dengan pesat seiring dengan berkembangnya juga teknologi. Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Dengan kecerdasan buatan, diharapkan elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia. Dalam permainan Brick Breaker ini penulis menerapkan konsep logika fuzzy dalam menentukan kekuatan dan kelincahan papan pemantul bola terhadap datangnya bola. Di dalam perancangan game ini, penulis menggunakan perangkat lunak Adobe Flash CS3. Diharapkan dengan pembuatan game ini akan memberikan wacana baru tentang game dan menambah pengetahuan penulis tentang cara membuat suatu game.


(13)

IMPLEMENTATION OF ARTIFICIAL INTELLIGENCE CONCEPT IN DESIGNING THE GAME BRICK BREAKER

ABSTRACT

Games as a medium of entertainment has grown rapidly along with the development of technology as well. One of the elements that play an important role in a games is artificial intelligence. With artificial intelligence, expected elements in the games can act as natural as possible like human being. In this Brick Breaker games, the author apply the concept of fuzzy logic in determining the strength and agility of reflector board of the ball against the arrival of the ball. In designing of this game, the author use the software Adobe Flash CS3. Expected with the making of this game will give a new discourse about the game and increase the knowledge of author about how to design a games.


(14)

BAB 1

PENDAHULUAN

1.1. Latar Belakang

Kecepatan perkembangan software saat ini cukup pesat, tidak hanya dalam hal software aplikasi saja, tetapi juga didalam dunia game. Game dibuat untuk digunakan sebagai sarana menghibur diri saat penat maupun saat stress. Game sendiri merupakan sebuah aplikasi sederhana yang dapat di buat dari beberapa macam software. Adapun bahasa pemrograman yang sering dipakai dalam pembuatan game antara lain pascal, phyton, borlan, delphi dan juga software- software pendukung yang digunakan dalam desain grafis seperti Macromedia flash, panel studio, 3d max, atupun sejenis Adobe illustrator.

Sebenarnya game dapat dibuat sendiri, meskipun untuk membuat game tersebut dikatakan sangat rumit, walaupun hanya sebuah game sederhana. Salah satu software yang saat ini banyak digunakan untuk membuat game mulai dari jenis game sederhana sampai game yang rumit adalah Adobe Flash. Adobe Flash adalah sebuah program animasi yang telah banyak digunakan oleh para desainer untuk menghasilkan desain yang menarik, baik animasi interaktif maupun animasi non interaktif.. Diantara program-program animasi lain, program Adobe Flash merupakan program yang paling fleksibel untuk membuat animasi sehingga banyak yang menggunakan program tersebut. Dengan menggunakan fasilitas pada Adobe Flash CS3 ini, dapat dihasilkan game yang kualitas gambarnya baik, karena didalamnya terdapat tool- tool yang sangat menarik dan bagus, akan tetapi untuk mendapatkan game yang memiliki kualitas baik harus didukung dengan animasi dan sound yang baik pula. Selain itu untuk menghasilkan game yang baik dalam Adobe Flash CS3 juga dilengkapi dengan fasilitas action Script yang dapat digunakan untuk membuat animasi gambar dengan


(15)

baik. Dengan menggunakan fasilitas Adobe Flash CS3 bukan tidak mungkin pecinta game dapat membuat game sendiri sesuai keinginannya.

Salah satu unsur yang berperan penting dalam sebuah game adalah kecerdasan buatan. Artificial Intelligence (AI) atau kecerdasan buatan merupakan suatu program komputer yang bertindak dan berpikir seperti manusia dan juga bertindak dan berpikir secara rasional pada saat yang bersamaan. Dengan kecerdasan buatan, elemen-elemen dalam game dapat berperilaku sealami mungkin layaknya manusia. Game playing (permainan game) merupakan bidang AI yang sangat populer berupa permainan antara manusia melawan mesin yang memiliki intelektual untuk berpikir. Komputer dapat bereaksi dan menjawab tindakan-tindakan yang diberikan oleh lawan mainnya. Ribuan macam permainan komputer telah dibuat dan dikembangkan. Game AI menggunakan teknik-teknik kecerdasan buatan namun dengan penerapan yang lebih sederhana dikarenakan keterbatasan komputasi dan kemampuan penyimpanan data pada game. Salah satu metode dalam kecerdasan buatan yang dapat diaplikasikan dalam games adalah logika fuzzy. Logika fuzzy adalah suatu bentuk logika berasal dari teori himpunan fuzzy yang digunakan untuk bersifat penalaran daripada bersifat eksak. Logika fuzzy adalah sebuah metode untuk menangani masalah ketidakpastian. Yang dimaksud dengan ketidakpastian yaitu suatu masalah yang mengandung keraguan, ketidaktepatan, kurang lengkapnya informasi, dan nilai kebenarannya bersifat sebagian.

Dengan melihat sekian banyak implementasi kecerdasan buatan yang sudah diaplikasikan, maka penulis tertarik untuk membuat sebuah game yaitu Brick Breaker. Game brick breaker ini merupakan game yang memiliki sasaran untuk mengalahkan lawan dengan cara menghancurkan bata dengan menggunakan pemukul dan bola, kemudian bola tersebut harus masuk ke dalam daerah gol. Jika bola menyentuh pemukul, bata, atau bagian atas papan game beberapa kali di tingkatan mana pun, bata akan hilang satu ruang setiap kali Anda memukul bola dengan pemukul. Bola akan dihalangi oleh sebuah papan bergerak yang dijalankan oleh komputer. Apabila bola mampu melaluinya dan mencapai gol maka pemain akan mendapatkan skor. Namun apabila pemain tidak mampu mengambil bola maka lawan yang akan mendapatkan nilai dan secara otomatis mengurangi kemampuan dari pemain. Game ini memiliki


(16)

beberapa tingkat kesulitan yang dapat dipilih oleh pemain, dimana semakin tinggi levelnya maka tingkat kesulitannya pun akan semakin besar. Dengan menerapkan kecerdasan buatan di dalam perancangannya diharapkan unit dapat mengambil keputusan sesuai dengan kondisi yang ada dan respon yang muncul. Dan dengan menggunakan logika fuzzy diharapkan hasil yang diperoleh bersifat dinamis.

1.2.Rumusan Masalah

Di dalam tulisan ini penulis akan membahas bagaimana mengimplementasikan konsep kecerdasan buatan dalam mendesain dan membangun suatu game dengan memakai konsep logika fuzzy dalam menentukan kelincahan dan kekuatan papan pemantul bola terhadap datangnya bola.

1.3. Batasan Masalah

Agar pembahasan dalam skripsi ini tidak menyimpang dari topik permasalahan, maka penulis melakukan pembatasan-pembatasan seperti berikut ini:

1. Membuat sebuah aplikasi game BrickBreaker yang dimainkan secara single player.

2. Aplikasi game ini menggunakan konsep implementasi dari kecerdasan buatan dengan konsep logika fuzzy dalam menentukan kelincahan dan kekuatan papan pemukul bola terhadap datangnya bola.

3. Pembuatan aplikasi ini menggunakan software Adobe Flash CS3 dan Action Script 2.0.

1.4. Tujuan Penelitian

Mengimplementasikan konsep kecerdasan buatan dalam membuat game Brick Breaker menggunakan software Adobe Flash, yang diharapkan dapat memberikan wacana baru tentang game-game yang dibuat menggunakan software aplikasi Adobe


(17)

Flash. Selain itu juga untuk menambah pengetahuan penulis dalam membuat dan merancang sebuah game.

1.5. Manfaat penelitian

Adapun manfaat dari penulisan Tugas Akhir Implementasi Konsep Kecerdasan Buatan Dalam Rancang Bangun Game Brick Breaker adalah:

1. Mampu menerapkan konsep kecerdasan buatan dalam membuat sebuah game dengan menggunakan konsep Logika Fuzzy.

2. Sebagai bahan latihan dalam mengenal software Adobe Flash CS3 yang diharapkan seseorang mampu untuk membuat game sendiri.

3. Sebagai game sederhana yang dapat dimainkan dalam waktu senggang. 4. Melatih koordinasi antara mata dan tangan pemain serta skill motorik pemain.

1.6. Metode Penelitian

Adapun metode penelitian yang dilakukan penulis dalam pembuatan skripsi adalah:

a. Studi Literatur

Mengumpulkan Informasi dan mempelajari materi dari sumber-sumber data yang berhubungan dengan pembuatan Implementasi Kecerdasan Buatan Dalam Rancang Bangun GameBrick Breaker” atau sumber-sumber lain yang berkaitan dengan materi penulisan skripsi ini.

b. Proses Desain

Penulis melakukan pembuatan desain untuk proses user interface program tersebut.

c. Implementasi

Pada tahap ini penulis melakukan implementasi dan pengujian dari hasil desain yang telah dibuat.


(18)

1.7. Sistematika Penulisan

BAB 1 : PENDAHULUAN

Pada bab ini penulis menguraikan tentang latar belakang, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian dan sistematika penulisan.

BAB 2 : LANDASAN TEORI

Pada bab ini penulis menjelaskan tentang pengertian komputer, pengertian kecerdasan buatan, pengertian game secara umum, logika fuzzy, serta uraian singkat mengenai Adobe Flash CS3 dan Action Script 2.0.

BAB 3 : PERANCANGAN APLIKASI

Pada bab ini berisi tentang perancangan dan pembuatan game yang akan dibuat dimulai dari perhitungan berdasarkan metode yang dipakai hingga tahap perancangan tampilan game dengan menggunakan Adobe Flash CS3.

BAB 4 : PENGUJIAN

Pada bab ini berisi hasil dari pembuatan game yang telah dibuat dengan melihat output yang dihasilkan oleh aplikasi dan evaluasi untuk mengetahui kemampuan aplikasi.

BAB 5 : PENUTUP

Pada bab terakhir ini, penulis akan menguraikan beberapa kesimpulan dari seluruh pembahasan laporan dan memberikan saran yang membangun terhadap hasil aplikasi yang dibuat.


(19)

BAB 2

LANDASAN TEORI

2.1. Pengertian Komputer

Kata komputer berasal dari bahasa latin yaitu computare yang artinya menghitung. Dengan demikian komputer dapat diartikan sebagai alat hitung atau mesin hitung. Namun, setelah melalui fase perkembangan komputer telah mempunyai fungsi yang sangat luas da kemampuan yang sangat hebat. Banyak sekali pekerjaan yang dapat dilakukan oleh komputer atau dengan bantuan komputer. Mulai dari pengolahan data, pembuatan grafik, pemecahan perhitungan-perhitungan yang runit, sampai kepada pengontrolan peralatan-peralatan yang canggih baik elektronis maupun mekanis.

Komputer adalah suatu rangkaian peralatan elektronik yang bekerja secara bersama-sama atau dengan kata lain komputer adalah alat pengolahan data yang bekerja secara elektronis dengan kecepatan dan ketelitian yang sangat tinggi dan mampu mengerjakan berbagai proses dengan keterlibatan manusia yang minimum. Keterlibatan manusia dalam hal ini diartikan secara terbatas, yakni pada saat komputer tersebut menjalankan proses pengolahan data. Harus diingat bahwa sebenarnya tanpa manusia komputer tidak akan mampu berbuat apa-apa, sebab yang menciptakan komputer adalah manusia itu sendiri. Manusialah yang memerintahkan kepada komputer apa yang harus dilakukan dan bagaimana komputer itu harus melakukan berbagai hal.

Dalam pengolahan data diperlukan peralatan-peralatan atau komponen-komponen untuk mendukung proses pengolahan data.


(20)

1. Hardware (Perangkat Keras)

Hardware adalah komponen peralatan yang membentuk suatu sistem computer yang berhubungan dengan peralatan lain yang memungkinkan komputer dapat melaksanakan tugasnya, contoh monitor, keyboard.

2. Software (Perangkat Lunak)

Software adalah seluruh fasilitas dari suatu sistem pengolahan data yang bukan peralatan komputernya tapi merupakan susunan instruksi yang harus diberikan pada alat pengolah agar komputer dapat menjalankan pekerjaan sesuai yang dikehendaki. Fasilitas software ini terdiri dari sistem desain, program-program dan prosedur-prosedur.

3. Brainware (Tenaga Pelaksana)

Brainware adalah aspek manusia yang menangani pengolahan komputer maupun pengembangannya dengan menggunakan alat pikirannya, dan dapat digolongkan menjadi:

a. Sistem Analis yaitu orang yang akan membentuk dan membangun fasilitas sistem desain.

b. Programmer yaitu orang yang menyusun instruksi bagi komputer. c. Operator yaitu orang yang akan menangani secara langsung pengolahan

data dalam ruangan komputer.

Ketiga komponen tersebut harus saling berhubungan dan membentuk satu kesatuan. Hardware tanpa adanya software, maka tidak akan berfungsi hanya seperti benda mati saja karena software yang akan mengoperasikan hardwarenya. Hardware yang sudah didukung oleh software juga tidak akan berfungsi kalau tidak ada manusia yang mengoperasikannya.

Istilah komputer sendiri mempunyai arti yang sangat luas dan berbeda bagi tiap orang. Komputer dapat juga diartikan sebagai suatu sistem yang terdiri dari serangkaian komponen (Hardware) dan bekerja secara elektronik dibawah pengendalian Operating system (Software) dan melaksanakan instruksi-instruksi (By Program), mempunyai kapasitas memori (RAM dan ROM) dan tempat penyimpanan


(21)

( Internal Storage) dan dapat dihubungkan dengan peralatan lain. Komputer disebut juga sebagai suatu sistem karena terdiri dari unsur-unsur yang tidak dapat dipisahkan satu dengan lainnya dan merupakan satu kesatuan.

Secara umum dapat disimpulkan bahwa komputer merupakan alat bantu manusia dalam melakukan berbagai macam tugas. Ini dikarenakan komputer dapat berfungsi sebagai alat penyimpanan data yang dapat menyimpan data instruksi-instruksi dalam jumlah yang besar, dapat deprogram untuk melakukan pekerjaan tertentu dengan cepat dan efisien, dapat mengoreksi, mengedit, dan memodifikasi teks lebih mudah dibandingkan dengan mesin tik. Disamping itu, data yang disimpan di dalam disket, flashdisk ataupun harddisk dapat dibuka kembali bila sewaktu-waktu dibutuhkan.

2.2. Pengertian Kecerdasan Buatan

Kecerdasan buatan adalah ilmu yang mempelajari cara membuat komputer melakukan sesuatu seperti yang dilakukan manusia (Minsky, 1989). Definisi lain diungkapkan oleh H. A. Simon (1987), kecerdasan buatan (Artificial Intelligence) merupakan kawasan penelitian, aplikasi dan instruksi yang terkait dengan pemrograman computer untuk melakukan sesuatu hal yang dalam pandangan manusia adalah cerdas. Definisi kecerdasan buatan lainnya juga diungkapkan oleh Rich and Knight (1991), kecerdasan buatan merupakan sebuah studi tentang bagaimana membuat komputer melakukan hal-hal yang pada saat ini dapat dilakukan lebih baik oleh manusia. Dan definisi lainnya juga ditulis dalam Encyclopedia Britania, Kecerdasan Buatan (AI) merupakan cabang dari ilmu komputer yang dalam merepresentasi pengetahuan lebih banyak menggunakan bentuk simbol-simbol daripada bilangan, dan memproses informasi berdasarkan metode heuristic atau dengan berdasarkan sejumlah aturan.

AI dapat dipandang dalam berbagai perspektif: 1. Dari perspektif Kecerdasan (Intelligence)

AI adalah ilmu yang mempelajari bagaimana membuat mesin yang “cerdas” dan dapat melakukan hal-hal yang sebelumnya tidak dapat dilakukan oleh manusia.


(22)

2. Dari perspektif bisnis

AI adalah sekelompok alat bantu (tools) yang berdaya guna, dan metodologi yang menggunakan alat bantu tersebut dalam menyelesaikan masalah-masalah bisnis.

3. Dari perspektif pemrograman (Programming)

AI yang dimaksud di sini termasuk yang didalamnya adalah studi tentang pemrograman simbolik, pemecahan masalah, proses pencarian (search)

a. Umumnya program AI lebih fokus pada simbol-simbol

daripada pemrosesan numerik (huruf, kata, angka untuk merepresentasikan objek, proses dan hubungannya).

b. Pemecahan masalah -> pencapaian tujuan

c. Search -> jarang mengarah langsung ke solusi. Proses search menggunakan beberapa teknik.

4. Dari perspektif penelitian (Research)

Riset tentang AI dimulai pada awal tahun 1960-an, percobaan pertama adalah membuat program permainan (game) catur, membuktikan teori, dan general problem solving (untuk tugas-tugas sederhana).

2.2.1. Lingkup Kecerdasan Buatan Pada Aplikasi Komersial

Ada tiga tujuan kecerdasan buatan, yaitu, membuat komputer lebih cerdas (tujuan utama), mengerti tentang kecerdasan (tujuan ilmiah), dan membuat mesin yang lebih bermanfaat (tujuan entrepreneurial). Yang dimaksud kecerdasan adalah kemampuan untuk belajar dan mengerti dari pengalaman, memahami pesan yang kontradiktif dan ambigu, menanggapi dengan cepat dan baik atas situasi yang baru, menggunakan penalaran dalam memecahkan masalah serta menyelesaikannya dengan efektif. Adapun lingkup utama dalam kecerdasan buatan adalah :


(23)

1. Sistem Pakar (Expert System).

Komputer digunakan sebagai sarana untuk menyimpan pengetahuan para pakar. Dengan demikian komputer akan memiliki keahlian untuk menyelesaikan permasalahan dengan meniru keahlian yang dimiliki oleh pakar.

2. Pengolahan Bahasa Alami (Natural Language Processing).

Dengan adanya pengolahan bahasa alami diharapkan user dapat berkomunikasi dengan komputer dengan menggunakan bahasa sehari-hari.

3. Pengenalan Ucapan (Speech Recognition).

Melalui pengenalan ucapan diharapkan manusia dapat berkomunikasi dengan komputer menggunakan suara.

4. Robotika dan Sistem Sensor (Robotics and Sensory Systems).

5. Computer Vision

Computer Vision mencoba untuk dapat menginterpretasikan gambar atau objekobjek tampak melalui komputer.

6. Intelligent Computer-aided Instruction

Komputer dapat digunakan sebagai tutor yang dapat melatih dan mengajar.

7. Game Playing

Beberapa karakterisitik yang ada pada sistem yang menggunakan artificial intelligent adalah pemrogramannya yang cenderung bersifat simbolik ketimbang algorotmik, bisa mengakomodasi yang tidak lengkap, bisa melakukan inferensi, dan adanya pemisahan antara kontrol dan pengetahuan. Namun, seiring dengan perkembangan teknologi, muncul beberapa teknologi yang bertujuan agar computer menjadi cerdas sehingga dapat menirukan kerja manusia sehari-hari.


(24)

Teknologi ini juga mampu mengakomodasi adanya ketidakpastian dan ketidaktepatan data input. Dengan didasari pada teori himpunan, maka pada tahun 1965 muncul Logika Fuzzy.

2.2.2. Soft Computing

Soft Computing adalah koleksi dari beberapa metodologi yang bertujuan untuk mengeksploitasi adanya toleransi terhadap ketidakpastian, ketidaktepatan, dan kebenaran parsial yang dapat diselesaikan dengan mudah, robustness, dan biaya penyelesaiannya murah. Definisi pertama kali diungkapkan oleh Prof, Lotfi A. Zadeh pada tahun 1992.

Soft computing merupakan inovasi baru dalam membangun sistem cerdas. Sistem cerdas ini merupakan sistem yang memilki keahlian seperti manusia pad domain tertentu, mampu beradaptasi dan belajar agar dapat bekerja lebih baik jika terjadi perubahan lingkungan.

Unsur-unsur pokok dalam soft computing adalah: 1. Sistem Fuzzy (Mengakomodasi ketidakpastian) 2. Jaringan Syaraf (Menggunakan pembelajaran)

3. Probailistic Reasoning (Mengakomodasi ketidakpastian) 4. Evoluionary computing (Optimasi)

Keempat unsur di tersebut bukan merupakan pesaing antara satu dengan lainnya, namun diantaranya bisa saling melengkapi. Bahkan, pada kenyataannya, biasanya unsur-unsur pokok tersebut akan digunakan secara sinergis ketimbang dikerjakan secara sendiri-sendiri. Sehingga, Zadeh juga mendefinisikan bahwa soft computing merupakan hubungan antara logika fuzzy, neuro-computing, probabilistic reasoning dan algoritma genetik.


(25)

Karakteristik Soft Computing:

a. Soft computing merupakan seahlian manusia, apabila direpresentasikan dalam bentuk aturan (IF-THEN).

b. Model komputasinya diilhami oleh proses biologis. c. Soft computing merupakan teknik optimasi baru. d. Soft computing menggunakan komputasi numeris.

e. Soft computing memiliki tolerasi kegagalan (mesakipun kualitasnya berangsur-angsur memburuk).

2.3. Game (Permainan)

2.3.1. Pengertian Game

Game diambil dari bahasa Inggris yang diterjemahkan yang artinya permainan. Di dalam era perkembangan era perkembangan teknologi yang pesat ini, seperti halnya permainan kartu, catur dan lain-lainnya dapat ditemui melalui dunia virtual atau yang biasa kita mainkan di dalam komputer. Dengan perkembangan teknologi sekarang ini munculah berbagai sarana permainan, misalnya Playstation 3, Xbox 360, Nintendo Wii, PSP, Nintendo DS, maupun PC dari yang berbasis individu ataupun multiplayer.

Pengertian game komputer menurut beberapa ahli adalah:

1. Menurut Chris Crawford, seorang designer game komputer mengemukakan bahwa game, pada intinya adalah sebuah interaktif, aktivitas yang berpusat pada sebuah pencapaian, ada pelaku aktif, ada lawan anda.

2. Menurut David Parlett, Game adalah sesuatu yang memiliki "akhir dan cara mencapainya" artinya ada tujuan, hasil dan serangkaian peraturan untuk mencapai keduanya.

3. Menurut Roger Caillois, seorang sosiolog Perancis, dalam bukunya yang berjudul Les jeux et les hommes menyatakan game adalah aktivitas yang mencakup karakteristik berikut: fun (bebas bermain adalah pilihan bukan


(26)

kewajiban), separate (terpisah), uncertain, non-productive, governed by rules (ada aturan), fictitious (pura-pura).

4. Menurut Greg Costikyan, Game adalah sebentuk karya seni di mana peserta, yang disebut Pemain, membuat keputusan untuk mengelola sumber daya yang dimilikinya melalui benda di dalam game demi mencapai tujuan.

5. Menurut Bernard Suits Game adalah upaya sukarela untuk mengatasi rintangan yang tidak perlu. “Rintangan yang tidak perlu”.

6. Menurut Clark C. Abt, Game adalah kegiatan yang melibatkan keputusan pemain, berupaya mencapai tujuan dengan “dibatasi oleh konteks tertentu” (misalnya, dibatasi oleh peraturan).

2.3.2. Sejarah Perkembangan Game

Computer gaming telah ada sejak sekitar 1960an. Karena perkembangan industri microprocessor, mainframe, dan minicomputers. Salah satu game komputer pertama dikembangkan pada tahun 1961. Ketika siswa MIT, Martin Graetz dan Alan Kotok, dengan memperkerjakan Steve Russell, menghasilkan "Spacewar!" pada komputer mainframe. Generasi pertama PC games biasanya berupa text-adventures atau interactive fiction, yang mana pemain berkomunikasi dengan komputer melalui input pada memakai keyboard. Game text-adventure pertama adalah Adventure yang dibangun untuk PDP-11 oleh Will Crowther tahun 1976 dan dikembangkan lagi oleh Don Woods di tahun 1977. Ketika memasuki 1980an, PC telah mendukung penuh untuk menjalankan game sejenis Adventure. Di masa sekarang ini, grafik kemudian menjadi unsur penting dalam pembuatan game.


(27)

2.3.3. Jenis-jenis Game

1. Simulasi

Contoh permainan yang termasuk dalam game simulasi adalah simulasi konstruksi dan manajemen, simulasi kendaraan seperti yang diterapkan pada permainan balapan, perang, luar angkasa, dan mecha.

2. Edukasi

Contohnya adalah edugames yang dibuat dengan tujuan spesifik sebagai alat pendidikan, baik itu untuk belajar mengenal warna untuk balita, mengenal huruf dan angka, matematika, sampai belajar bahasa asing. Developer yang membuatnya, harus memperhitungkan berbagai hal agar game ini benar-benar dapat mendidik, menambah pengetahuan dan meningkatkan ketrampilan yang memainkannya.

3. Entertainment

a. Aksi – Shooting, (tembak-tembakan , atau hajar-hajaran bisa juga tusuk-tusukan, tergantung cerita dan tokoh di dalamnya). Game jenis ini sangat memerlukan kecepatan refleks, koordinasi mata-tangan, juga waktu. inti dari game jenis ini adalah tembak-tembakan.

b. Fighting (pertarungan), ada yang mengelompokan game fighting di bagian Aksi, namun penulis berpendapat berbeda, jenis ini memang memerlukan kecepatan refleks dan koordinasi mata-tangan, tetapi inti dari game ini adalah penguasaan jurus (hafal caranya dan lancar mengeksekusinya), pengenalan karakter dan waktu sangatlah penting. Dan berbeda seperti game Aksi pada umumnya yang umumnya hanya melawan Artificial Intellegence atau istilah umumnya melawan komputer saja, pemain jenis fighting game ini baru teruji kemampuan sesungguhnya dengan melawan pemain lainnya.


(28)

c. Petualangan, game murni petualangan lebih menekankan pada jalan cerita dan kemampuan berpikir pemain dalam menganalisa tempat secara visual, memecahkan teka-teki maupun menyimpulkan rangkaian peristiwa dan percakapan karakter hingga penggunaan benda-benda tepat pada tempat yang tepat.

d. Role Playing, game jenis ini sesuai dengan terjemahannya, bermain peran, memiliki penekanan pada tokoh/peran perwakilan pemain di dalam permainan, yang biasanya adalah tokoh utamanya, dimana seiring kita memainkannya, karakter tersebut dapat berubah dan berkembang ke arah yang diinginkan pemain ( biasanya menjadi semakin hebat, semakin kuat, semakin berpengaruh, dll) dalam berbagai parameter yang biasanya ditentukan dengan naiknya level.

e. Casual games, sesuai namanya, game yang casual itu tidak kompleks, mainnya rileks dan sangat mudah untuk dipelajari. Jenis ini biasanya memerlukan spesifikasi komputer yang standar pada jamannya dan ukurannya tidak lebih dari 100 MB karena biasanya dapat di download versi demo-nya di website resminya. Genre permainannya biasanya puzzle atau action sederhana dan umumnya dapat dimainkan hanya menggunakan.

f. Multiplayer Online, game yang dapat dimainkan secara bersamaan oleh lebih dari 2 orang (bahkan dapat mencapai puluhan ribu orang dalam satu waktu) membuat pemain dapat bermain bersama dalam satu dunia virtual dari sekedar chatting hingga membunuh naga bersama teman yang entah bermain di mana. Umumnya permainan tipe ini dimainkan di PC dan bertema RPG, walau ada juga yang bertema musik atau action.


(29)

2.4. Logika Fuzzy

2.4.1. Pengertian Logika Fuzzy

Fuzzy secara bahasa diartikan sebagai kabur atau samar-samar. Suatu nilai dapat bernilai benar atau salah secara bersamaan. Dalam fuzzy dikenal derajat keanggotaan yang memiliki rentang nilai 0 (nol) hingga 1(satu).

Logika Fuzzy merupakan suatu logika yang memiliki nilai kekaburan atau kesamaran (fuzzyness) antara benar atau salah. Dalam teori logika fuzzy suatu nilai bisa bernilai benar atau salah secara bersama. Namun berapa besar keberadaan dan kesalahan suatu tergantung pada bobot keanggotaan yang dimilikinya. Logika fuzzy memiliki derajat keanggotaan dalam rentang 0 hingga 1. Berbeda dengan logika digital yang hanya memiliki dua nilai 1 atau 0. Logika fuzzy digunakan untuk menerjemahkan suatu besaran yang diekspresikan menggunakan bahasa (linguistic), misalkan besaran kecepatan laju kendaraan yang diekspresikan dengan pelan, agak cepat, cepat, dan sangat cepat. Dan logika fuzzymenunjukan sejauh mana suatu nilai itu benar dan sejauh mana suatu nilai itu salah. Tidak seperti logika klasik pada himpunan tegas (crisp), suatu nilai hanya mempunyai 2 kemungkinan yaitu merupakan suatu anggota himpunan atau tidak. Derajat keanggotaan 0 (nol) artinya nilai bukan merupakan anggota himpunan dan 1 (satu) berarti nilai tersebut adalah anggota himpunan.

Logika fuzzyadalah suatu cara yang tepat untuk memetakan suatu ruang input kedalam suatu ruang output, mempunyai nilai kontinyu. Fuzzy dinyatakan dalam derajat dari suatu keanggotaan dan derajat dari kebenaran. Oleh sebab itu sesuatu dapat dikatakan sebagian benar dan sebagian salah pada waktu yang sama (Kusumadewi. 2004)

Logika Fuzzy memungkinkan nilai keanggotaan antara 0 dan 1, tingkat keabuan dan juga hitam dan putih, dan dalam bentuk linguistik, konsep tidak pasti seperti "sedikit", "lumayan" dan "sangat" (Zadeh 1965). Kelebihan dari teori logika fuzzyadalah kemampuan dalam proses penalaran secara bahasa (linguistic reasoning).


(30)

Sehingga dalam perancangannya tidak memerlukan persamaan matematik dari objek yang akan dikendalikan.

2.4.2. Himpunan fuzzy (Fuzzy Set)

Himpunan fuzzy(fuzzy set) adalah sekumpulan obyek x dimana masing-masing obyek memiliki fungsi keanggotaan (membership function) “μ” atau disebut juga dengan nilai kebenaran. Jika X adalah sekumpulan obyek dan anggotanya dinyatakan dengan x maka himpunan fuzzydari A di dalam X adalah himpunan dengan sepasang anggota atau dapat dinyatakan dengan:

A= { µA( ) | ∶ ∈X,A( )∈[0,1]∈ℜ} (Kusumadewi, 2004)

Contoh, jika A = “himpunan bilangan yang mendekati 10” dimana : A = { (x, µA(x)) | µA(x) = (1+(x-10)2)-1}

A = { (0, 0.01),…,(5, 0.04),…,(10, 1),…,(15, 0.04),… } Maka grafik yang mewakili nilai µA(x) adalah :

1

0.5

0 5 10 15

Gambar 2.1. Grafik himpunan fuzzyuntuk bilangan yang mendekati 10

Terkadang kemiripan antara keanggotaan fuzzy dengan probabilitas menimbulkan kerancuan. Keduanya memiliki nilai pada interval [0,1]. Namun interpretasi nilainya sangat berbeda antara kasus-kasus tersebut. Keanggotaan fuzzy memberikan suatu ukuran terhadap pendapat atau keputusan, sedangkan probabilitas mengindikasikan proporsi terhadap keseringan suatu hasil bernilai benar dalam jangka


(31)

panjang. Misalnya, jika nilai keanggotaan suatu himpunan fuzzy MUDA adalah 0,9 maka tidak perlu dipermasalahkan berapa seringnya nilai itu diulang secara individual untuk mengharapkan suatu hasil yang hampir muda. Dilain pihak, nilai probabilitas 0,9 muda berarti 10 % dari himpunan tersebut tidak muda.

Himpunan fuzzymemiliki 2 atribut, yaitu :

1. Linguistik, yaitu penamaan suatu grup yang memiliki suatu keadaan atau kondisi tertentu dengan menggunakan bahasa alami, seperti : MUDA, PAROBAYA, TUA.

2. Numeris, yaitu suatu nilai (angka) yang menunjukkan ukuran dari suatu variabel seperti : 5, 10, 15 dan sebagainya.

Ada beberapa hal yang perlu diketahui dalam memahami sistem fuzzy, yaitu : 1. Variabel fuzzy

Variabel fuzzymerupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Contoh: umur, temperatur, permintaan, dan lain-lain.

2. Himpunan fuzzy

Himpunan fuzzy merupakan suatu grup yang memiliki suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy. Contoh: Variabel temperature terbagi menjadi 5 himpunan fuzzy, yaitu: DINGIN, SEJUK, NORMAL, HANGAT dan PANAS. Gambar 2.2.


(32)

3. Semesta Pembicaraan

Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan atau sebaliknya. Nilai semesta pembicaraan dapat berupa bilangan positif maupun negatif. Contoh semesta pembicaraan:

a. Semesta pembicaraan untuk variabel umur: [0, 100] b. Semesta pembicaraan untuk variabel temperatur: [0, 40]

4. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dan boleh dioperasikan dalam suatu himpunan fuzzy. Semesti halnya semesta pembicaraan, domain merupakan himpunan bilangan real yang senantiasa naik (bertambah) secara monoton dari kiri ke kanan. Nilai domain dapat berupa bilangan positif maupun negatif. Contoh domain himpunan fuzzy: a. DINGIN = [0, 20]

b. SEJUK = [15, 25] c. NORMAL = [20, 30] d. HANGAT = [25, 35] e. PANAS = [30, 40]

2.4.3. Jenis-Jenis Fungsi Keanggotaan

Ada dua cara mendefinisikan keanggotaan himpunan fuzzy, yaitu secara numeris dan fungsional. Definisi numeris menyatakan fungsi derajat keanggotaan sebagai vektor jumlah yang tergantung pada tingkat diskretisasi. Misalnya, jumlah elemen diskret dalam semesta pembicaraan. Definisi fungsional menyatakan derajat keanggotaan sebagai batasan ekspresi analitis yang dapat dihitung. Standar atau ukuran tertentu pada fungsi keanggotaan secara umum berdasar atas semesta X bilangan real. Fungsi keanggotaan fuzzyyang sering digunakan antara lain :


(33)

2.4.3.1. Fungsi Representasi Linier

Pada representasi linier, pemetaan input ke derajat keanggotaannya digambarkan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi pilihan yang baik untuk mendekati suatu konsep yang kurang jelas. Keadaan linier himpunan fuzzy terdiri dari dua keadaan linier naik dan linier turun. Pada linier naik, kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol [0] bergerak ke kanan menuju nilai domain yang memiliki derajat keanggotaan lebih tinggi dengan fungsi keanggotaan :

1

Derajat Keangotaan

0 a domain b

Gambar 2.3. Fungsi Representasi Linier Naik

Sedangkan pada linier turun, garis lurus dimulai dari nilai domain dengan derajat keanggotaan tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memiliki derajat keanggotaan lebih rendah dengan fungsi keanggotaan


(34)

1 derajat keanggotan

0 a domain b

Gambar 2.4. Fungsi Representasi Linier Turun

2.4.3.2. Fungsi Keanggotaan Segitiga

Fungsi keanggotaan segitiga ditandai oleh adanya 3 (tiga) parameter {a,b,c} yang akan menentukan koordinat x dari tiga sudut. Kurva ini pada dasarnya merupakan gabungan antara dua garis (linier). Adapun persamaan untuk bentuk segitiga ini adalah :

Gambar grafik fungsi keanggotaan segitiga adalah:

1 derajat

keanggotan

0 a b c domain


(35)

2.4.3.3. Fungsi Keanggotaan Trapesium

Kurva trapesium pada dasarnya seperti bentuk segitiga, hanya saja ada beberapa titik yang memiliki nilai keanggotaan 1. Adapun persamaan untuk kurva trapesium ini adalah :

Adapun gambar grafik fungsi keanggotaannya adalah :

1 derajat keanggotan

0 a b c d domain

Gambar 2.6. Grafik Fungsi Keanggotaan Trapesium

2.4.3.4. Representasi Kurva Bahu

Representasi fungsi keanggotaan fuzzy dengan menggunakan kurva bahu pada dasarnya adalah gabungan dari kurva segitiga dan kurva trapesium. Daerah yang terletak di tengah-tengah suatu variabel yang direpresentasikan dalam bentuk segitiga, pada sisi kanan dan kirinya akan naik dan turun. Tetapi terkadang pada salah sisi dari variabel fuzzy yang ditinjau ini terdapat nilai yang konstan, yaitu pada himpunan ekstrim kiri dan ekstrim kanan. Hal ini dapat dilihat pada gambar 2.7.


(36)

Gambar 2.7. Representasi Kurva Bahu

2.4.4. Operator Dasar Zadeh untuk Operasi Himpunan Fuzzy

Misalkan himpunan A dan B merupakan dua himpunan fuzzy pada semesta pembicaraan U dengan fungsi keangotaan μA(x) dan μB(x) untuk setiap x Є X. Nilai keanggotaan sebagai hasil dari operasi himpunan A dan B disebut juga sebagai fire strength atau α-predikat. Adapun operasi-operasi dasar himpunan fuzzy terdiri dari :

1. Irisan (Intersection)

Operator ini berhubungan dengan operasi interaksi pada himpunan. α predikat sebagai hasil operasi dengan operator AND diperoleh dengan mengambil nilai keanggotaan terkecl antar elemen pada himpunan-himpunan yang bersangkutan.

A∩B = min ( A[x], B[y])


(37)

2. Penggabungan (Union).

Operator ini berhubungan dengan operasi union pada himpunan. α predikat

sebagai operasi dengan operator OR diperoleh dengan mengambil nilai keanggotaan terbesar antar elemen pada himpunan-himpunan yang bersangkutan

A∩B = min ( A[x], B[y])

Gambar 2.9. Operasi Intersection Himpunan Bagian A dan B

3. Ingkaran (Complement).

Berhubungan dengan operasi komplemen pada himpunan. α predikat sebagai hasil operasi dengan operator NOT diperoleh dengan mengurangi nilai keanggotaan elemen pada himpunan yang bersangkutan dari 1.

μĀ (x) = 1 - μA(x)

2.5. Sekilas Tentang Adobe Flash CS3

Flash sekarang bukan hanya sebagai software saja dengan nama Adobe Flash tetapi juga merupakan suatu teknologi yang dapat memenuhi kebutuhan para programmer Web, perancangan grafis, pembuat animasi, dan pembuat permainan dalam pembuatan berbagai format animasi dan interaktivitas.

Sejak diperkenalkan pada tahun 1997, Flash atau Macromedia Flash telah memiliki standar program interaktif, Flash juga menjadi sangat populer dan langsung mendapat tempat di hati masyarakat dunia web karena dapat membuat menampilkan animasi dan interaksi di web. Mulai versi keduanya, Flash dilengkapi dengan fitur


(38)

untuk mengekspor animasi ke dalam format video. Pada tahun 2008, perusahaan peranti lunak yang berpusat di Amerika Serikat, Adobe System Incorporated, meluncurkan versi terbaru flash, yaitu adobe Flash CS3 Professional. Ini merupakan versi Flash yang kesembilan. Pada versi ini, Adobe Flash CS3 telah terintegrasi dengan berbagai produk Adobe lainnya seperti Photoshop, Illustrator, serta Premiere. Dengan demikian, animasi yang dihasilkan pada Web saja tetapi juga dapat diaplikasikan dalam format Streaming pada DVD maupun telepon seluler (ponsel). Bahkan animasi film layer lebar dan televisi sudah menyamai kualitas broadcast.

2.5.1. Lingkungan Kerja Adobe Flash CS3

Saat pertama kali membuka program Adobe flash CS3 Professional, Anda akan dihadapkan pada layar seperti pada gambar 2.2. Layar ini disebut Welcome Screen.

Gambar 2.10 : Welcome Screen

Welcome Screen berisi empat menu utama yang terpisah dalam tiga bagian. Bagian-bagian tersebut adalah :


(39)

a. Open a Recent Item, bagian ini berisi daftar file atau dokumen flash yang pernah dibuka. Jika Anda belum pernah membukanya klik ikon ini jika ingin membuka dokumen flash Anda miliki.

b. Create New, berisi daftar berbagai jenis dokumen flash yang dapat dibuat. Selain dokumen flash, ada juga dokumen-dokumen ActionScript™ yang didukung flash.

c. Create from Template, berisi daftar template yang sering digunakan untuk membuat dokumen flash.

d. Extend,berada di bawah bagian Create from Template. Bagian ini berisi akses ke situs Web Flash Exchange. Melalui situs web ini, Anda dapat mengunduh aplikasi-aplikasi pendukung, ekstensi, dan informasi yang berkaitan dengan flash.

Dibagian bawah Welcome Screen terdapat tiga menu, Getting Started, New Features, dan Resources. Menu-menu tersebut memberikan akses langsung ke menu Online Help Flash.

Lingkungan kerja Adobe Flash CS3 Professional terdiri atas batang menu, jendela-jendela, dan beberapa panel. Susunan jendela, panel, dan batang menu inilah yang merupakan lingkungan kerja Flash CS3 Professional atau lebih dikenal dengan sebutan area kerja. Untuk selanjutnya pada buku ini, area kerja disebut sesuai nama aslinya, yaitu workspace. Susunan panel, jendela, dan batang menu yang Anda lihat saat pertama kali menjalankan program flash disebut Default Workspace. Anda dapat mengatur sendiri tampilan panel, jendela, dan batang menu sesuai kebutuhan dan kemudian menyimpannya dengan nama tertentu agar dapat digunakan kembali setiap saat Anda membutuhkannya. Andadapat mengembalikan tampilan workspace seperti semula (default) denganmemilih menu Window > Workspace.


(40)

Gambar 2.11 : Tampilan Default Workspace

Dibawah ini keterangan dari komponen-komponen diatas :

A. Batang Menu atau Menu Bar

Batang menu atau menu utama adalah bagian yang berisi berbagai jenis perintah yang dibagi dalam kelompok-kelompok menu.

1. Pada menu file terdapat berbagai fasilitas seperti membuat file baru, eksport movie & image, import objek kedalam stage ataupun library dsb. 2. Pada menu edit terdapat pengaturan yang berkaitan dengan frame,

misalnya di menu timeline berisi menghapus, copy frame, Preferences dsb 3. Menu View, untuk menampilkan grid, ruler dsb.

4. Menu Insert, untuk memasukan Timeline, scene, motion tween, shape tween dsb.

5. Menu modify, untuk memodifikasi objek, bitmap, symbol, timeline, transform, align dsb.

6. Menu Text, untuk mengatur atribut teks berupa jenis Font, ukuran Style dsb.

7. Menu Command, untuk eksport ke format XML.

8. Menu Control, untuk mengatur kontrol movie, menjalankan test movie dsb. 9. Menu Debug, untuk memeriksa apakah masih ada kesalahan pada flash

yang sudah jadi.

10.Menu Window, untuk mengatur Toolbar Timeline, Tools dsb, yang akan ditampilkan atau tidak ditampikan pada interface.


(41)

11.Menu Help, untuk menampilkan Bantuan apabila terdapat kesulitan didalam menggunakan Adobe Flash.

B. Panel Tool atau Toolbox

Panel ini adalah panel yang berisi semua peralatan pembuat unsur-unsur media maupun efek-efek khusus yang ada pada Adobe Flash CS3 Professional. Panel Tool berisi berbagai tool untuk membuat gambar atau artwork pada stage. Di dalamnya tersedia tool-tool untuk memodifikasi artwork yang telah ada sebelumnya.

Gambar 2.12 : Panel Tool atau Toolbox

Keterangan Toolbox pada Adobe Flash CS3:

1. Arrow Tool, Tool ini digunakan untuk memilih suatu objek atau untuk memindahkannya.

2. Subselection Tool, Tool ini digunakan untuk merubah suatu objek dengan edit points.

3. Free Transform Tool, Tool ini digunakan untuk memutar (rotate) objek yang dibuat atau mengubah bentuk objek menjadi bentuk lain.

4. Gradient Transform Tool, Tool ini untuk mengatur posisi tampilan warna gradient.


(42)

5. Lasso Tool, Tool ini digunakan untuk memilih daerah di objek yang akan diedit.

6. Pen Tool, Tool yang digunakan untuk menggambar dan merubah bentuk suatu objek dengan menggunakan edit points (lebih teliti & akurat).

7. Text Tool, Tool ini digunakan untuk menuliskan kalimat atau katakata. 8. Rectangle Tool, Tool yang digunakan untuk menggambar sebuah

segiempat.

9. Oval Tool, Tool yang digunakan untuk menggambar sebuah lingkaran. 10.Pencil Tool, Tool ini digunakan untuk menggambar sebuah objek sesuai

dengan yang Anda sukai. Tetapi setiap bentuk yang dibuat akan diformat oleh Flash MX menjadi bentuk sempurna.

11.Brush Tool, Tool ini sering digunakan untuk memberi warna pada objek bebas.

12.Line Tool, Tool ini digunakan untuk membuat suatu garis di stage.

13.Ink Bottle Tool, Tool ini digunakan untuk mengisi warna pada objek yang bordernya telah hilang (tidak ada).

14.Paint Bucket Tool, Tool ini digunakan untuk mengisi warna pada objek yang dipilih.

15.Eraser Tool, Tool ini digunakan untuk menghapus objek yang dibentuk. 16.Eyedropper Tool, Tool ini untuk mengambil sample warna dari suatu

objek.

17.Hand Tool, Tool ini untuk menggeser posisi stage sesuai dengan yang diinginkan.

18.Zoom Tool, Tool ini membesarkan/mengecilkan ukuran stage.

19.Stroke Tool, Tool ini untuk mengatur warna stroke atau garis luar dari objek.

20.Fill Color, Tool ini untuk mengatur warna Fill objek.

21.Black and White, Tool ini untuk mengatur warna fill & strok kewarna awal yaitu warna hitam & putih.

22.Swap Color, Tool ini untuk menukar warna Stroke dan warna Fill.

23.Snap To Object, Tool ini untuk membuat objek garis menjadi lurus, melengkung dsb


(43)

Panel Tool dapat ditampilkan atau disembunyikan dengan mengakses Window > Tools. Anda juga dapat menentukan sendiri tool apa saja yang akan ditampilkan di dalam panel tool dengan mengakses Edit > Customize Tools Paneluntuk membuka kotak dialog Customize Tools Panel.

C. Timeline

Timeline adalah mengatur dan menyusun isi dokumen berdasarkan satuan waktu tertentu dalam bentuk layer dan frame. Seperti panel-panel lainnya, timeline juga bisa dipindah-pindahkan. Untuk memindahkan lokasi timeline, akses menu pop-up di sudut kanan atas dan pilih Placement, kemudian pilih salah satu menu berikut :

a. Above documentuntuk meletakkan timeline di atas stage (posisi default). b. Below documentuntuk meletakkan timeline di bawah stage.

c. Left of documentuntuk meletakkan timeline di sebelah kiri stage

d. Right of document untuk meletakkan timeline di sebelah kanan stage atau pilih Undock from Documentuntuk menjadikannya floating panel.

Timeline dapat disembunyikan dan ditampilkan dengan mengeklik ikon Hide/Show Timeline pada edit bar. Tampilan timeline juga bisa diperlebar atau dipersempit. Jika timeline melekat pada stage, arahkan kursor di garis batas antara stage dan timeline dan drag menjauh atau mendekati stage. Jika timeline ditampilkan sebagai floating panel, drag dari bagian sudut kanan bawah untuk mengubah ukuran panel timeline tersebut.


(44)

Gambar 2.14 : Timeline property 1

1. New layer, untuk membuat layer yang baru.

2. Add Motion Guide, untuk membuat jalur animasi pada objek.

3. Insert layer folder, untuk membuat folder sebagai penempatan layer. 4. Delete, untuk menghapus layer.

5. Center frame, Posisi frame.

6. Union Skin, untuk melihat keseluruhan layer.

7. Union skin outline, untuk melihat gabungan objek hanya sebatas pada line keseluruhan pada layer.

8. Edit multiple frames, untuk editing seluruh frame dan layer, sehingga akan menampilkan keseluruhan objek yang ada pada Stage, sehingga akan mempermudah editing objek secara keseluruhan.

9. Modify union markers, untuk editing gabungan dari beberapa objek. 10.Current frame, posisi key frame.

11.Frame rate, kecepatan animasi frame ke frame atau yang disebut dengan Frame persecond.

12.Elapsed, waktu yang dibutuhkan dari frame satu ke frame yang lain secara dinamis.

Gambar 2.15 : Timeline Property 2

Keterangan Gambar 2.15 adalah:


(45)

B) Show or Hide all layer, untuk menampilkan objek pada layer tersebut atau seluruh layer.

C) Lock or unlock all layer, untuk mengunci satu layer atau seluruh layer, sehingga tidak bisa diedit.

D) Show all layers or outlines, untuk menampilkan hanya outline dari sebuah objek atau keseluruhan objek.

E) Frame, urutan posisi frame yang ditampilkan, disini pada posisi frame ke 1.

F) Keyframe, tempat dimana objek-objek yang akan diletakan.

D. Stage

Stage adalah jendela kerja tempat Anda membuat dan menyusun unsurunsur media. Warna latar stage dapat diubah-ubah dengan mengakses menu pada panel Properties.

Gambar 2.16 : Stage

E. Panel Property Inspector atau Properties

Panel Property Inspector berisi menu dan perintah-perintah yang berhubungan dengan atribut dari objek, layer, atau unsur lain termasuk timeline yang sedang terseleksi. Isi panel Property Inspector berubah-ubah sesuai apa yang terseleksi. Tampilan panel Property Inspector dapat diperkecil dengan mengeklik pada area kosong di tempat tab nama panel atau pada ikon Minimize/Maximize. Panel ini juga bisa dibuka setengah tampilan atau dengan tampilan atau hingga terlihat


(46)

sepenuhnya, klik tanda mata panah atas dan bawah tepat di sebelah kiri nama panel. Tanda tersebut juga dapat digunakan untuk meminimalkan tampilan semua panel yang berada dalam satu dock dengan panel Property Inspector. Klik beberapa kali hingga dipeoleh tampilan yang diinginkan.

Gambar 2.17 : Panel Property Inspector

F. Panel-panel lainnya

Selain panel tool dan Property Inspector, Flash memiliki panel-panel lain yang berfungsi mendukung proses pembuatan dokumen. Panel-panel tersebut berisi perintah untuk mengatur unsur media, atau pilihan atribut yang dapat diterapkan pada unsur-unsur media.

2.5.2. Action Script

Action Script adalah bahasa scripting Adobe Flash yang berfungsi untuk melakukan pengaturan interaktivitas dalam flash movie. Dengan Action Script tersebut orang akan bisa mengatur aksi-aksi yang bisa dilakukan oleh objek-objek di dalam flash. Sebagai contoh jika ada objek tombol maka seseorang bisa menentukan apa yang bisa dilakukan aplikasi ketika mengklik tombol tersebut.

Action Script memiliki 3 komponen penting dalam penyusunannya, yaitu:

1. Event (Kejadian), yaitu peristiwa atau kondisi yan terjadi untuk memicu aksi yang diberikan pada objek.

2. Actions (Aksi), yaitu pekerjaan yang diberikan pada suatu objek untuk melakukan aksi tertentu pada saat movie dimainkan.

3. Target, merupakan objek tujuan atau sasaran yang dikenai oleh aksi yang diberikan tersebut.


(47)

Dalam mode normal, action script dibagi dalam beberapa kategori, yaitu:

1. Basic Actions. Kategori ini menampung action sederhana yang sering sekali digunakan untuk movie flash, seperti navigasi dan perilaku tombol.

2. Actions. Kategori ini meliputi basic action ditambah dengan banyak action lain yang lebih kompleks.

3. Operators. Kategori ini berisi symbol yang digunakan misalnya untuk operasi logika dan matematika, seperti tambah, kurang, kali, dll.

4. Functions. Function berisi action yang dapat menerima data tertentu untuk kemudian menghasilkan informasi yang dapat digunakan.

5. Properties. Kategori properties berisi properti yang dapat dimodifikasi. Sebagian properti ini digunakan untuk objek klip movie.

6. Objects. Flash memiliki kelas objek yang sudah didefinisi. Kelas-kelas ini berada dalam kategori Objects di Actions Script.


(48)

BAB 3

PERANCANGAN APLIKASI

3.1. Flowchart

Flowchart merupakan suatu diagram yang menggunakan simbol-simbol dan garis-garis yang saling berhubungan untuk menggambarkan suatu urutan operasi program tertentu atau urutan proses kerja suatu sistem untuk mendapatkan hasil tertentu.

Berikut adalah simbol yang terdapat pada sistem flowchart:

Tabel 3.1. Simbol-simbol pada flowchart

Simbol Kegunaan

Terminal point symbol

Simbol titik terminal digunakan untuk awal dan akhir dari suatu proses

Input/output symbol

Simbol input/output yang digunakan untuk mewakili data input/output

Process symbol

Simbol proses digunakan untuk menunjukkan pengeluaran yang dilakukan oleh komputer


(49)

Predefined process symbol

Simbol proses terdefinisi yang digunkan untuk menunjukkan suatu operasi yang rinciannya ditunjukkan ditempat lain

Connector symbol

Simbol penghubung digunakan untuk menunjukkan sambungan dari bagan alir yang terputus dihalaman yang masih sama

Offline connector symbol

Offline connector merupakan simbol untuk masuk dan keluarnya suatu prosedur pada lembar kertas yang lain

Magnetic Disk symbol

Simbol untuk database yang digunakan dalm program

Decision symbol

Simbol keputusan yang digunakan untuk suatu penyeleksian kondisi di dalam program

Preparation symbol

Symbol persiapan digunakan untuk mempersiapkan penyimpanan yang digunakan sebagai tempat pengolahan di dalam storage

Document symbol

Document merupakan simbol untuk data yang berbentuk kertas maupun informasi

Display symbol

Simbol untuk output yang menunjukkan ke suatu device, seperti printer, plotters.


(50)

Line connector

Arus/flow dari prosedur yang dapat dilakukan dari atas ke bawah, dari bawah ke atas, dari kiri ke kanan dan sebaliknya.

Flowchart yang di bangun pada aplikasi ini terdiri dari dua yaitu Flowchart Untuk Menu Awal dan Flowchart untuk alur proses permainan pada game BrickBreaker ini.

Pada gambar 3.1. berikut ini akan ditampilkan Flowchart untuk Tampilan Awal dari Game.


(51)

Y Y

T

Y Y

T

Y Y

Gambar 3.1. Flowchart Menu Awal

Flowchart tersebut menjelaskan pada saat aplikasi dijalankan maka akan masuk pada tampilan utama permainan. Pada tampilan utama ini, pemain akan terlebih dahulu memasukkan nama pada kolom nama. Setelah itu pemain akan memilih jenis

Mulai

Input Nama

Pilih Mode

Beginning

Normal

High

Selesai

Selesai

Selesai Main

Main


(52)

tingkat permainan atau mode permainan yang terdiri dari tiga yaitu easy (mudah), medium (sedang), dan Hard (sulit). Setelah menentukan tingkat permainan, maka pemain dapat mengklik tombol untuk memulai permainan dan akan langsung menuju ke tampilan layar area permainan. Pemain dapat memainkan permainan tersebut sampai selesai apabila salah satu apakah pemain atau lawan yang terlebih dahulu menang.


(53)

T T

Y Y Y

Y Y T T Y T Y T T Y

Gambar 3.2. Flowchart Alur Permainan

Mulai

Input Hp 100% Agility 75 % Poin 0 Brick 10 Lawan keluarkan bola Bola menuju player

Kena Brick?

Brick= Brick -1 Brick memantul bola ke lawan Bola menuju ke lawan Berhasil dipantulkan?

Hp = - 5% Agility=-4 % PoinPlayer=+ 10 Hp >=0 Player keluarkan bola Bola menuju player Berhasil dipantulkan? Bola menuju ke lawan Kena Brick? Brick memantul bola ke player Brick= Brick -1

Hp = - 5% Agility= -4 % PoinLawan= +10 Hp >=0 Game selesai Main lagi? Selesai


(54)

Flowchart tersebut menggambarkan alur dari jalannya permainan. Ketika akan memulai permainan maka masing-masing pemain dan lawan (opponent) diberi level kekuatan yang sama. Bola akan datang dari bagian lawan menuju ke arah pemain. Apabila mengenai brick (bata) maka brick akan hilang dan bola akan memantul namun apabila tidak mengenai brick maka bola akan bergerak ke arah pemain. Apabila pemain dapat memantulkan bola maka bola akan memantul lagi namun apabila pemain tidak berhasil memantulkan bola maka kekuatan dan kelincahan pemain akan berkurang dan lawan mendapat nilai. Begitu pula sebaliknya jika terjadi pada pihak lawan. Apabila bola bergerak ke arah lawan dan berhasil dipantulkan oleh lawan maka bola akan kembali menuju pemain dan apabila tidak berhasil dipantulkan maka kekuatan dan kelincahan lawan akan berkurang dan pemain mendapatkan skor. Permainan ini akan berakhir apabila salah satu dari pemain atau lawan telah kehabisan kekuatan atau kelincahannya dalam menangkap bola.

3.2. Penerapan Logika Fuzzy

a. Variabel Fuzzy

Variabel Fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy. Dalam aplikasi ini variabel yang digunakan adalah HP (Kekuatan) dan Agility (kelincahan).

b. Himpunan Fuzzy

Himpunan fuzzy merupakan suatu grup yang mewakili suatu kondisi atau keadaan tertentu dalam suatu variabel fuzzy.

- Variabel Kekuatan (HP), terbagi menjadi 3 himpunan, yaitu: lemah , normal, dan kuat.

- Variabel Agility, terbagi menjadi 3 himpunan, yaitu: lambat, sedang, dan cepat.


(55)

1 Lemah Normal Kuat µ[x]

0

0 10 50 85 100 Gambar 3.3 : Himpunan Fuzzy pada variabel Kekuatan

1 Lambat Sedang Cepat µ[x]

0

0 10 50 85 100

Gambar 3.4 : Himpunan Fuzzy Pada Variabel Agility

c. Semesta Pembicaraan

Semesta pembicaraan keseluruhan nilai yang diperbolehkan untuk dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan himpunan bilangan real yang senantiasa naik secara monoton dari kiri ke kanan.

- Semesta pembicaraan untuk variabel kekuatan : [0 , 100] - Semesta pembicaraan untuk variabel agility : [0 , 100]

d. Domain

Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dalam semesta pembicaraan dan boleh dioperasikan dalam suatu himpunan fuzzy.

Untuk Variabel kekuatan: Lemah = [10 50] Normal = [10 85] Kuat = [50 85]


(56)

Untuk Variabel Agility: Lambat = [10 50] Sedang = [10 85] Cepat = [50 85]

3.2.1. Menghitung Fungsi Keanggotaan

Fungsi keanggotaan adalah suatu kurva yang menunjukkan pemetaan tiap-tiap titik input data ke dalam nilai keanggotaannya yang memiliki interval 0 sampai 1. Salah satu cara yang digunakan adalah pendekatan fungsi.

1. Representasi linier

Ada 2 keadaan himpunan linier. Pertama, kenaikan himpunan dimulai pada nilai domain yang memiliki derajat keanggotaan nol bergerak ke kanan menuju ke nilai domain yang memiliki derajat keanggotaan lebih tinggi.

Fungsi Keanggotaan:

µ[x]

Fungsi Keanggotaan untuk himpunan Cepat pada variabel Agility µcepat[65] = (65-50)/(85-50)

= 0.4

1 Cepat

0.4

0 50 65 85


(57)

Yang kedua adalah kebalikan yang pertama.dimulai dengan yang memiliki nilai domain tertinggi pada sisi kiri bergerak menurun ke nilai domain yang lebih rendah.

Fungsi Keanggotaan:

µ[x]

Fungsi Keanggotaan untuk himpunan Lambat pada variabel Agility µlambat[35] = (50-35)/(50-10)

= 0.3

Lambat 1

0.3

0

10 35 50

Gambar 3.6 : Himpunan Fuzzy: Lambat (Agility)

2. Representasi Kurva Segitiga

Kurva segitiga pada dasarnya adalah gabungan antara 2 garis (linier). Fungsi Keanggotaan:

µ[x]

Fungsi Keanggotaan untuk himpunan Sedang pada variabel Agility µsedang[25] = (25-10)/(50-10)


(58)

Sedang 1

0.75

0

10 25 50 85

Gambar 3.7 : Himpunan Fuzzy: Sedang (Agility)

Begitu juga pada variabel Kekuatan, maka harus dicari juga derajat keanggotaannya. Fungsi Keanggotaan untuk himpunan Kuat pada Variabel Kekuatan.

µkuat[60]=(60-50)/(85-50) = 0.2

Kuat

1

0.2

0

50 60 85

Gambar 3.8 : Himpunan Fuzzy: Kuat (Kekuatan)

Fungsi Keanggotaan untuk himpunan Lemah Pada variabel Kekuatan µ lemah[45] = (50-45)/(50-10)


(59)

Lemah 1

0.1

10 45 50

Gambar 3.9 : Himpunan Fuzzy: Lemah (Kekuatan)

Fungsi Keanggotaan untuk Himpunan Sedang pada variabel Kekuatan µnormal [40] = (40-10)/(50-10)

= 0.7

Normal 1

0.7

0

10 40 50 85

Gambar 3.10 : Himpunan Fuzzy: Sedang (Kekuatan)

Maka derajat Keanggotaan yang didapat adalah: Untuk Variabel Kekuatan: µkuat[60] = 0.2

µ lemah[45] = 0.1 µnormal[40] = 0.7 Untuk Variabel Agility: µcepat[65] = 0.4

µ lambat[35] = 0.3 µsedang[25] = 0.3


(60)

3.2.2. Operasi Himpunan Fuzzy

Ada beberapa operasi yang didefinisikan untuk mengkombinasikan dan memodifikasi himpunan fuzzy. Nilai keanggotaan sebagai hasil operasi dari dua himpunan sering dikenal dengan α-predikat. Pada operasi ini nilai yang akan dicari adalah nilai maksimum antara nilai keanggotan dengan menggunakan operator OR.

Dari hasil perhitungan derajat keanggotaan, maka diketahui nilai maksimum pada tiap variabel fuzzynya adalah derajat keanggotaan normal dan cepat.

Hitung nilai α-predikat untuk normal dan cepat µnormal∩ µcepat = max (µnormal[40] ∩ µcepat[65])

= max (0.7;0.4) = 0.7

Selanjutnya akan dibuat variabel baru sebagai hasil dari pengoperasian dua buah himpunan yang menjelaskan kondisi akhir atau kesimpulan akhir. Untuk bagannya dapat dilihat sebagai berikut:

Cepat Aman Kuat Sedang Hati-Hati Normal Lambat Bahaya Lemah

Dari hasil nilai α-predikat untuk derajat keanggotaan normal dan cepat, nilai

Maximum yang diperoleh adalah µ normal. Dengan begitu kondisi atau kesimpulan yang didapatkan adalah HATI-HATI.

3.3. Storyboard

Storyboard merupakan uraian yang berisi visual atau audio yang merupakan penjelasan dari masing-masing alur dalam permainan. Satu kolom dalam storyboard mewakili satu tampilan di layar monitor.


(61)

Tabel 3.2 Storyboard Permainan Brick Breaker

No Nama Layar Aktivitas (Proses) Keterangan

1. Tampilan Awal • Tampilan awal terdapat tulisan nama games yaitu Brick Breaker.

• Terdapat kolom untuk mengisi nama pemain.

• Terdapat beberapa menu mode permainan yang terdiri dari beginning, normal, dan high.

• Mengklik salah satu tombol mode untuk memulai permainan.

Latar belakang berwarna merah muda

2. Layar permainan • Terdapat beberapa animasi gambar yaitu gambar kucing sebagai lawan (opponent) dan

gambar tokoh perempuan sebagai pemain (player)

• Terdapat beberapa bata (brick) di tengah-tengah layar yang harus dihancurkan.

• Terdapat bola yang terus memantul pada layar

Latar belakang berwarna kuning pada bagian layar permainan dan berwarna hitam pada bagian status permainan.

Terdapat suara klik jika berhasil menabrak brick.


(62)

dan harus ditangkap oleh pemain dengan menekan tombol kiri dan kanan pada keyboard.

• Pada samping layar sebelah kanan terdapat status permainan yang terdiri dari status pemain dan status lawan.

• Pada status tersebut berisi bar kekuatan(HP) dan bar kelincahan

(Agility) yang menunjukkan nilai kemampuan dari player

dan opponent. 3. Tampilan hasil

permainan

• Apabila permainan

berakhir maka akan muncul tulisan yang mengatakan apabila pemain kalah akan muncul

“Lawan menang, you lose”

• Apabila lawan kalah maka akan muncul pesan

“Lawan kalah, you win”

• Akan ada tombol di

Latar belakang berwarna hitam.


(63)

bawah pesan yang bertuliskan “main lagi”. Klik jika ingin mengulangi permainan.

3.4. Perancangan Tampilan

Perancangan tampilan pada rancangan bangun game Brick Breaker ini adalah sebagai berikut:

1. Tampilan awal dari game

Tampilan awal ini menampilkan kolom untuk mengisi nama pemain (player). Pada tampilan ini juga tersedia menu untuk memilih mode permainan seperti beginning, normal, dan high.

Gambar 3.11 Tampilan Awal Game

Gambar 3.11 Tampilan Awal Game

Input Nama Pemain

Beginning Normal


(64)

2. Tampilan Layar Utama Permainan

Pada tampilan layar utama permainan ini terdapat animasi gambar yang menunjukkan karakter pemain (player) dan lawan (opponent) yang dalam hal ini di mainkan oleh komputer. Terdapat bata (brick) di tengah-tengah area permainan yang harus dihancurkan. Terdapat juga bola yang memantul sebagai objek permainan.

Pada layar sebelah kanan pada tampilan utama game tersebut terapat bagian status dari pemain dan lawan. Disini terdapat bar yang menyatakan status dari kekuatan (HP) dan kelincahan (Agility) dari pemain dan lawan.

Gambar 3.12 Tampilan Layar Utama Game

3. Tampilan Hasil Permainan

Tampilan hasil permainan ini akan menampilkan hasil dari permainan apakah pemain kalah atau menang. Terdapat pesan yang muncul sesuai dengan hasil

Lawan (opponent)

Pemain (player)

Nama lawan

Nama pemain HP Bar

Agility Bar HP Bar


(65)

yang diperoleh. Pada tampilan ini juga terdapat tombol MAIN LAGI apabila pemain ingin mengulangi permainan.

Gambar 3.13 Tampilan Layar Hasil Permainan

3.13 Tampilan Hasil Permainan

Pesan Hasil Permainan


(66)

BAB 4

IMPLEMENTASI

4.1. Implementasi

Proses pengimplementasian game ini meliputi persiapan, perancangan tampilan game serta pengkodingan. Pembuatan game Brick Breaker ini menggunakan perangkat lunak Adobe Flash CS3 dan bahasa pemrograman Action Script 2.0 serta untuk tampilannya pada layar browser digunakan bahasa pemrograman PHP dan HTML.

4.2. Persiapan

Untuk dapat menguji hasil tampilan game yang dibuat, hardware dan software yang direkomendasikan adalah sebagai berikut:

a. Processor Intel Core 2 Duo – 1.66 GHz. b. Sistem Operasi Windows XP atau lebih tinggi. c. Ram 1 GB atau lebih tinggi.

d. Ruang kosong Harddisk 1 GB atau lebih tinggi.

e. Soundcard atau loudspeaker yang baik agar kualitas suara lebih baik.

f. Antivirus untuk mencegah kemungkinan terjadinya kerusakan aplikasi yang disebabkan oleh virus yang masuk melalui flashdisk maupun media penyimpanan lainnya. Sehubungan dengan itu antivirus yang digunakan adalah avira.

g. Perangkat Lunak Adobe Flash CS3


(67)

4.3. Tampilan Aplikasi Permainan

Tampilan aplikasi permainan ini dibuat sesuai dengan rancangan tampilan yang telah dibuat pada tahap sebelumnya.

1. Tampilan Awal Dari Game

Tampilan awal ini adalah tampilan yang pertama muncul. Pada layar ini terdapat kolom untuk mengisi nama pemain yang harus diisi oleh pemain sebelum memulai permainan dan beberapa piihan mode permainan yang dapat dipilih sesuai keinginan pemain mulai dari tingkat rendah sampai tingkat yang tinggi. Perbedaan dalam masing-masing tingkat terletak pada kecepatan bola yang memantul. Semakin tinggi tingkatannya, maka kecepatannya juga semakin besar.


(68)

2. Tampilan Layar Utama Game

Pada halaman permainan ini menampilkan animasi gambar yang menunjukkan karakter pemain (player) dan lawan (opponent) yang dalam hal ini di mainkan oleh komputer. Lawan digambarkan dengan karakter kucing sedangkan pemain digambarkan dengan karakter tokoh manusia. Terdapat bata (brick) di tengah-tengah area permainan yang harus dihancurkan. Terdapat juga bola yang memantul sebagai objek permainan.

Pada layar sebelah kanan pada tampilan utama game tersebut terapat bagian status dari pemain dan lawan. Disini terdapat bar yang menyatakan status dari kekuatan (HP) dan kelincahan (Agility) dari pemain dan lawan.


(69)

Gambar 4.3 Tampilan Layar Utama Game (Mode Normal)

Gambar 4.4 Tampilan Layar Utama Game (Mode High)

3. Tampilan Hasil Permainan

Tampilan akhir dari game ini akan menampilkan hasil dari permainan apakah pemain kalah atau menang. Terdapat pesan yang muncul sesuai dengan hasil yang diperoleh. Apabila pemain kalah maka akan muncul pesan “Lawan


(70)

menang, You lose” sedangkan apabila pemain menang maka akan muncul pesan “Lawan kalah, You win”. Pada tampilan ini juga terdapat tombol MAIN LAGI apabila pemain ingin mengulangi permainan.


(71)

BAB 5

PENUTUP

5.1. Kesimpulan

Berdasarkan dan evaluasi dari bab-bab terdahulu, maka dapat ditarik kesimpulan sebagai berikut:

1. Game Brick Breaker ini lebih menekankan pada kemampuan pemain untuk mengalahkan kekuatan lawan dalam menangkap bola dengan brick (bata) sebagai sarana untuk mengumpulkan kekuatan dimana kekuatan dan kelincahan pemain akan bergantung pada kemampuannya mengalahkan lawan.

2. Game ini merupakan permainan Artificial Intelligence atau dengan istilah lain adalah melawan komputer dan dimainkan secara single player atau satu pemain saja.

3. Menggunakan konsep logika fuzzy untuk menentukan nilai kekuatan dan kelincahan papan pemantul yang nilai kebenarannya tidak mutlak.

4. Perangkat lunak Adobe Flash CS3 merupakan software multifungsi mempunyai fitur-fitur yang sangat baik dan mendukung untuk membuat suatu animasi gambar dan untuk perancangan game sendiri. Disertai juga dengan Action Script 2.0 sehingga pembuatan game lebih efektif dan atraktif.


(72)

5.2. Saran

Berikut adalah saran-saran untuk mengembangan lebih lanjut terhadap pembuatan Implementasi Konsep Kecerdasan Buatan dalam Rancang Bangun Game Brick Breaker ini, antara lain adalah sebagai berikut:

1. Tampilan game secara keseluruhan dapat dibuat lebih berkualitas jika ditampilkan dengan tampilan 3 dimensi sehingga lebih terlihat atraktif. Hal ini mungkin dikarenakan keterbatasan kemampuan penulis di dalam mendesain.

2. Pengimplementasian logika fuzzy pada game ini dapat lebih optimal dengan penambahan himpunan fuzzy yang ditetapkan untuk menambah parameter AI agar mendapatkan hasil yang lebih alami.

3. Pada proses perancangan sistem permainan dapat dibuat lebih baik apabila disertai dengan penyediaan database untuk menyimpan skor (nilai) dari setiap permainan yang dijalankan agar didapat suatu nilai atau daya saing bagi para usernya.


(73)

DAFTAR PUSTAKA

[1] Arry, Maulana Syarif, 2003, Bedah ActionScipt: Menguasai Penulisan Script Macromedia Flash MX, Elex Media Komputindo, Jakarta

[2] Chandra, 2006. Tujuh Jam Belajar Interaktif Flash Professional 8 untuk Orang Awam, Maxicom, Palembang

[3] Desiani, Anita dan Arhami, M, 2005, Konsep Kecerdasan Buatan, Penerbit Andi, Yogyakarta.

[4] Dwi budi Santoso, 2006, Pembuatan Game Sederhana “Shoot The Melon” Menggunakan Aplikasi Macromedia Flash MX 2004. Skripsi: Universitas Dipenogoro Semarang.

[5] Kusrianto, Adi, 2006, Panduan Lengkap Memakai Macromedia Flash Professional 8, Elex Media Komputindo, Jakarta

[6] Kusumadewi, Sri, 2003, Artificial Intelligence, Graha Ilmu Yogyakarta

[7] Madcom, LPKBM., 2005, Membuat animasi kartun dengan Macromedia Flash MX

2004, Madcom, Yogyakarta

[8] Pamungkas, W.S, Lili, S, 2010, Implementasi Automated Path Dan Routing Finding Untuk Unit Behaviour Pada Real-Time Strategy Game Dengan Menggunakan Fuzzy Logic. Skripsi: Institut Teknologi Sepuluh November Surabaya.

[9] Pramono, A. 2004b. Membuat Animasi Movieclip dengan Action Script. Penerbit Andi dan Madcom, Yogyakarta


(74)

[10] Suntoyo, Andi, 2009, Adobe Flash + XML = Rich Multimedia Application, Andi: Yogyakarta

[11] Wahyono, Teguh, 2006, 36 Jam Belajar Komputer Animasi Dengan Macromedia Flash 8, Elex Media Komputindo: Jakarta

[12] Wardana, M.I, Sumpeno, S, dan Hariadi, M, 2009, Kecerdasan Buatan dalam Game untuk Merespon Emosi dari Teks Berbahasa Indonesia Menggunakan Klasifikasi Teks dan Logika Fuzzy. Makalah: Institut Teknologi Surabaya.

[13] Wibawanto, W, 2006, Membuat Game Dengan Macromedia Flash, Andi : Yogyakarta


(1)

Gambar 4.3 Tampilan Layar Utama Game (Mode Normal)

Gambar 4.4 Tampilan Layar Utama Game (Mode High)

3. Tampilan Hasil Permainan

Tampilan akhir dari game ini akan menampilkan hasil dari permainan apakah pemain kalah atau menang. Terdapat pesan yang muncul sesuai dengan hasil yang diperoleh. Apabila pemain kalah maka akan muncul pesan “Lawan


(2)

menang, You lose” sedangkan apabila pemain menang maka akan muncul pesan “Lawan kalah, You win”. Pada tampilan ini juga terdapat tombol MAIN LAGI apabila pemain ingin mengulangi permainan.


(3)

BAB 5

PENUTUP

5.1. Kesimpulan

Berdasarkan dan evaluasi dari bab-bab terdahulu, maka dapat ditarik kesimpulan sebagai berikut:

1. Game Brick Breaker ini lebih menekankan pada kemampuan pemain untuk

mengalahkan kekuatan lawan dalam menangkap bola dengan brick (bata) sebagai sarana untuk mengumpulkan kekuatan dimana kekuatan dan kelincahan pemain akan bergantung pada kemampuannya mengalahkan lawan.

2. Game ini merupakan permainan Artificial Intelligence atau dengan istilah lain adalah melawan komputer dan dimainkan secara single player atau satu pemain saja.

3. Menggunakan konsep logika fuzzy untuk menentukan nilai kekuatan dan kelincahan papan pemantul yang nilai kebenarannya tidak mutlak.

4. Perangkat lunak Adobe Flash CS3 merupakan software multifungsi mempunyai fitur-fitur yang sangat baik dan mendukung untuk membuat suatu animasi gambar dan untuk perancangan game sendiri. Disertai juga dengan Action Script 2.0 sehingga pembuatan game lebih efektif dan atraktif.


(4)

5.2. Saran

Berikut adalah saran-saran untuk mengembangan lebih lanjut terhadap pembuatan Implementasi Konsep Kecerdasan Buatan dalam Rancang Bangun Game Brick Breaker ini, antara lain adalah sebagai berikut:

1. Tampilan game secara keseluruhan dapat dibuat lebih berkualitas jika ditampilkan dengan tampilan 3 dimensi sehingga lebih terlihat atraktif. Hal ini mungkin dikarenakan keterbatasan kemampuan penulis di dalam mendesain.

2. Pengimplementasian logika fuzzy pada game ini dapat lebih optimal dengan penambahan himpunan fuzzy yang ditetapkan untuk menambah parameter AI agar mendapatkan hasil yang lebih alami.

3. Pada proses perancangan sistem permainan dapat dibuat lebih baik apabila disertai dengan penyediaan database untuk menyimpan skor (nilai) dari setiap permainan yang dijalankan agar didapat suatu nilai atau daya saing bagi para usernya.


(5)

DAFTAR PUSTAKA

[1] Arry, Maulana Syarif, 2003, Bedah ActionScipt: Menguasai Penulisan Script Macromedia Flash MX, Elex Media Komputindo, Jakarta

[2] Chandra, 2006. Tujuh Jam Belajar Interaktif Flash Professional 8 untuk Orang Awam, Maxicom, Palembang

[3] Desiani, Anita dan Arhami, M, 2005, Konsep Kecerdasan Buatan, Penerbit Andi, Yogyakarta.

[4] Dwi budi Santoso, 2006, Pembuatan Game Sederhana “Shoot The Melon” Menggunakan Aplikasi Macromedia Flash MX 2004. Skripsi: Universitas Dipenogoro Semarang.

[5] Kusrianto, Adi, 2006, Panduan Lengkap Memakai Macromedia Flash Professional 8, Elex Media Komputindo, Jakarta

[6] Kusumadewi, Sri, 2003, Artificial Intelligence, Graha Ilmu Yogyakarta

[7] Madcom, LPKBM., 2005, Membuat animasi kartun dengan Macromedia Flash MX

2004, Madcom, Yogyakarta

[8] Pamungkas, W.S, Lili, S, 2010, Implementasi Automated Path Dan Routing Finding Untuk Unit Behaviour Pada Real-Time Strategy Game Dengan Menggunakan Fuzzy Logic. Skripsi: Institut Teknologi Sepuluh November Surabaya.

[9] Pramono, A. 2004b. Membuat Animasi Movieclip dengan Action Script. Penerbit Andi dan Madcom, Yogyakarta


(6)

[10] Suntoyo, Andi, 2009, Adobe Flash + XML = Rich Multimedia Application, Andi: Yogyakarta

[11] Wahyono, Teguh, 2006, 36 Jam Belajar Komputer Animasi Dengan Macromedia Flash 8, Elex Media Komputindo: Jakarta

[12] Wardana, M.I, Sumpeno, S, dan Hariadi, M, 2009, Kecerdasan Buatan dalam Game untuk Merespon Emosi dari Teks Berbahasa Indonesia Menggunakan Klasifikasi Teks dan Logika Fuzzy. Makalah: Institut Teknologi Surabaya.

[13] Wibawanto, W, 2006, Membuat Game Dengan Macromedia Flash, Andi : Yogyakarta