• Tidak ada hasil yang ditemukan

Implementasi Algoritma Greedy dan Logika Fuzzy untuk pengaturan taktik dan prioritas serangan pada Game Bertipe Role-Playing Game (RPG)

N/A
N/A
Protected

Academic year: 2017

Membagikan "Implementasi Algoritma Greedy dan Logika Fuzzy untuk pengaturan taktik dan prioritas serangan pada Game Bertipe Role-Playing Game (RPG)"

Copied!
70
0
0

Teks penuh

(1)

1.1 Latar Belakang Masalah

Role Playing Game atau yang biasa disingkat RPG adalah sebuah game permainan yang para pemainnya memainkan peran tokoh-tokoh khayalan dan berkolaborasi untuk merajut sebuah cerita. Player memilih aksi tokoh-tokoh berdasarkan karakteristik tokoh tersebut, dan keberhasilan aksi player tergantung dari sistem peraturan permainan yang telah ditentukan. Game RPG sendiri memiliki banyak tipe salah satunya adalah Tactical Role-Playing Game atau disingkat TRPG . Game TRPG ini memiliki aturan penyerangan secara bergiliran atau turn-based strategy.

Dead State adalah salah satu jenis game TRPG. Misi dari Game Dead State adalah bertahan hidup dari serangan zombie yang telah menguasai kota. Pada saat bermain dan player berhadapan dengan zombie yang jumlahnya lebih dari satu terkadang player tidak dapat menentukan zombie mana yang harus diprioritaskan untuk diserang lebih dulu. Karena tidak dapat menentukan prioritas serangan membuat player tidak dapat bertahan hidup. Untuk membantu player dalam mengambil keputusan dalam menentukan prioritas akan dibangun game sejenis. Pada game yang dibangun akan diimplemetasikan Kecerdasan buatan (AI).

(2)

“Implementasi Algoritma Greedy dan Logika Fuzzy Untuk Pengaturan Taktik dan Prioritas Serangan Pada Game Bertipe Role-Playing Game (RPG)”

1.2 Perumusan Masalah

Berdasarkan uraian pada latar belakang masalah, maka dapat dirumuskan masalah yang akan diteliti pada skripsi ini adalah bagaimana mengimplementasikan algoritma greedy dan logika fuzzy dalam mentukan rute terpendek dan prioritas serangan.

1.3 Maksud dan Tujuan

Berdasarkan permasalahan yang diteliti, maka maksud dan tujuan dari penelitian:

1.3.1 Maksud

Mengimplementasikan algoritma greedy dan logika fuzzy pada game yang akan dibuat.

1.3.2 Tujuan

Membantu player dalam menentukan rute terpendek dan menentukan prioritas serangan

1.4 Batasan Masalah

Dalam pembahasan dan permasalahan yang terjadi, diperlukan beberapa pembatasan sehingga penyajian lebih terarah dan terkain antara satu sama lain. Adapun batasan dari permasalahan ini adalah sebagai berikut :

1. Algoritma Greedy diterapkan pada pemain dan musuh. 2. Logika Fuzzy diterapkan hanya kepada pemain. 3. Aplikasi yang dibuat berbasis desktop

4. Inputan parameter pemain

a. Nyawa atau Healt-point (HP) b. Damage

(3)

6. Bahasa pemograman yang digunakan untuk membangun aplikasi yaitu menggunakan C#

7. Permodelan yang digunakan adalah terstruktur 1.5 Metodologi Penelitian

Metodologi yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut :

1.5.1 Pengumpulan data

Metodologi yang digunakan dalam mengumpulkan data yang berkaitan dengan penyusunan laporan dan pembuatan system pengaturan dan pengawasan ini adalah Studi Literatur.

Studi ini dilakukan dengan cara mempelajari dan meneliti berbagai literatur-literatur dari perpustakaan yang bersumber dari buku-buku, teks, jurnal ilmiah, situs-situs di internet, dan bacaan-bacaan yang ada kaitannya dengan topik penelitian.

1.5.2 Pembangunan perangkat lunak.

Dalam penelitian ini akan dibangun perangkat lunak, adapun metode yang digunakan adalah menggunakan metode Linear Process Flow. Linear Process Flow merupakan model sistematik untuk pembangunan perangkat lunak yang mempunyai tahapan-tahapan dalam proses pembangunan perangkat lunaknya mulai dari proses analisis sampai proses testing [3]. Berikut adalah proses dari metode Linear Process Flow pada gambar 1.1.

(4)

Adapun langkah-langkah yang dilakukan untuk pembangunan perangkat lunak antara lain :

1. Tahap Analisis

Pada tahap analisis mulai mencari fungsionalitas-fungsionalitas yang dibutuhkan untuk membangun suatu aplikasi yang dalam hal ini meliputi analisis algoritmagreedy dan logika fuzzy, analisis masalah, analisis masukan serta analisis kebutuhan fungsional dan nonfungsional.

2. Tahap Design

Pada tahap ini melakukan perancangan dari aplikasi yang dibuatmeliputi perancangan antarmuka, perancangan metode, serta mendesain unit-unit yang digunakan yaitu pasukanplayer, pasukan musuh dan bangunan musuh.

3. Tahap Code

Pada tahap code yaitu mulai mengeksekusi analisis dan perancangan-perancangan yang dilakukan sebelumnya ke dalambahasa pemrograman. 4. Tahap Testing

Pada tahap testing yaitu menguji implementasi dari aplikasi yang dibuat, untuk menemukankesalahan-kesalahan terhadap aplikasi untuk diperbaiki.

1.6 Sistematika Penulisan

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

BAB 1 PENDAHULUAN

Bab ini berisi tentang latar belakang permasalahan, rumusan masalah, maksud dan tujuan, batasan masalah, metodologi penelitian, serta sistematika penulisan. BAB 2 LANDASAN TEORI

Pada bab ini berisi tinjauan pustaka bagi teori-teori yang mendasari, relevan dan terkait dengan subyek dan permasalahan yang di hadapi dalam penyusunan Laporan Skripsi

(5)

Bab ini berisi tentang analisis prosedur dan sistem yang sedang berjalan, analisis kebutuhan fungsional dan non-fungsional, perancangan antarmuka.

BAB 4 IMPLEMENTASI PENGUJIAN SISTEM

Bab ini berisi tentang hasil implementasi dari analisis dan perancangan game yang telah di buat disertai juga hasil pengujian game yang dilakukan

BAB 5 KESIMPULAN

(6)
(7)

2.1 Algoritma Greedy

Algoritma greedy adalah algoritma yang untuk membentuk solusi langkah langkah perlangkah. Pada setiap langkah tersebut akan dipilih keputusan yang paling optimal. Keputusan tersebut tidak perlu memperhatikan keputusan selanjutnya yang akan diambil, dan keputusan tersebut tidak dapat diubah lagi pada langkah selanjutnya.

2.1.1 Prinsip Utama Algortima Greedy

Prinsip utama algoritma greedy adalah “take what you can get now”. Maksud dari prinsip tersebut adalah pada setiap langkah dalam algoritma greedy, diambil keputusan yang paling optimal untuk langkah tersebut tanpa memperhatikan konsekuensi pada langkah selanjutnya. Solusi tersebut disebut dengan optimum lokal. Kemudian saat pengambilan nilai optimum lokal pada setiap langkah, diharapkan tercapai optimum gloal, yaitu tercapainya solusi optimum yang melibatkan keseluruhan langkah dari awal sampai akhir.

2.1.2 Elemen Algoritma Greedy

Elemen-elemen yang digunakan dalam penerapan algoritma greedy antara lain:

1. Himpunan Kandidat, adalah himpunan yang berisi elemen pembentuk solusi. 2. Himpunan Solusi, adalah himpunan yang terpilih sebagai solusi persoalan. 3. Fungsi Seleksi, adalah fungsi memilih kandidat yang paling mungkin

mencapai solusi optimal

(8)

kandidat tersebut bersama dengan himpunan solusi yang sudah terbentuk tidak melanggar kendala yang ada.

5. Fungsi Solusi, adalah fungsi yang mengembalikan nilai boolean, True jika himpunan solusi yang sudah terbentuk merupakan solusi yang lengkap; False jika himpunan solusi belum lengkap

6. Fungsi Objektif, adalah fungsi yang mrngoptimalkan Solusi

2.2 Logika Fuzzy

Logika fuzzy adalah salah satu komponen pembentuk soft computing. Logika fuzzy pertama kali diperkenalkan oleh Prof Lotfi A. Zadeh pada tahun 1965 [4]. Dasar logika fuzzy adalah teori himpunan fuzzy, peranan derajat keanggotaan sebagai penentu elemen dalam suatu himpunan.

2.2.1 Fungsi Keanggotaan

Jika X adalah himpunan objek-objek yang secara umum dinotasikan dengan x, maka himpunan fuzzy A di dalam X didefiniksikan sebagai himpunan pasangan berurutan:

(2.1)

disebut dearjat keanggotaan dari x dalam A, yang mengindikasikan derajat x berada di dalam A.

Dalam himpunan fuzzy terdapat beberapa representasi dari fungsi keanggotaan, salah satunya yaitu representasi liniear. Pada representasi linear, pemetaan input ke derajat keanggotaannya digunakan sebagai suatu garis lurus. Bentuk ini paling sederhana dan menjadi yang paling baik untuk mendekati suatu konsep yang kuran jelas. Ada 2 keadaan himpunan fuzzy linear, yaitu representasi linear naik dan representasi linear turun.

1) Representasi linear NAIK

(9)

[0] bergerak ke kanan menuju ke nilai domain yang memiliki derajat keanggotaan lebih tinggi. Fungsi keanggotaan representasi linear naik dapat di cari dengan cara sebagai berikut:

Himpunan fuzzy NAIK memiliki domao (-∞,∞) terbagi menjadi tiga selang, yaitu [0,a],[a,b],[b,∞).

a) Selang [0,a]

Fungsi keanggotaan himpunan fuzzy representasi linear NAIK pada selang [0.a] memiliki keanggotaan=0

b) Selang [a,b]

Pada selang [a,b], fungsi keanggotaan himpunan fuzzy pada representasi linear NAIK dipresentasikan dengan garis lurus yang melalui dua titik, yaitu dengan koordinat (a,0) dan (b,1). Misalkan fungsi keanggotaan fuzzy NAIL dari x disimbolkan dengan μ[x], maka persamaan garis lurus tersebut adalah:

c) Selang [b, ∞)

Fungsi keanggotaan himpunan fuzzy pada representasi linear NAIK pada selang [ memiliki nilai keanggotaan himpunan fuzzy pada representasi linear NAIK, dengan domain (-∞,∞) adalah:

(2.2)

(10)

Gambar 2.1 Grafik representasi Linear Naik 2) Representasi Linear Turun

Sedangkan pada representasi linear TURUN, garis lurus dimulai dari nilai domain dengan derajat keanggotaan himpunan fuzzy (μ[x]) tertinggi pada sisi kiri, kemudian bergerak menurun ke nilai domain yang memili derajat keanggotaanhimpunan fuzzy lebih rendah. Fungsi keanggotaan representasi linear TURUN dapat dicari dengan cara sebai berikut:

Himpunan fuzzy pada representasi linear TURUN memiliki domain (-∞,∞) terbagi menjadi tiga sleang, yaitu: [0,a],[a,b],[b, ∞) .

a) Selang [0,a]

Fungsi keanggotaan himpunan fuzzy pada representasi linear TURUN pada selang [0,a] memiiki nilai keangotaan=0

b) Selang [a,b]

Pada selang [a,b], fungsi keanggotaan himpunan fuzzy pada representasi linear TURUN direpresentasikan dengan garis lurus yang melalui dua titik yaiu koordinat (a,1) dan (b,0). Misalkan fungsi keanggotaan fuzzy TURUN dari x disimbolkan μ[x], maka persamaan garis lurus tersebut adalah:

(11)

c) Selang [b,∞)

Fungsi keanggotaan himpunan fuzzy pada representasi inear TURUN pada selang [b,∞] memiliki nilai keanggotaan =0

Dari uraian di atas, fungsi keanggotaan himpunan fuzzy pada representasi linear TURUN, dengan domain (-∞,∞) adalah:

Himpunan fuzzy pada representasi linear turun direpresentasikan pada gambar 2.2

Gambar 2.2 Grafik representasi linear turun

2.3 Pengertian Game

(12)

keputusan-keputusan dengan tujuan mengelola sumber daya yang diperoleh dari kesempatan-kesempatan bermain miliknya untuk mencapai tujuan tertentu.

2.4 Perangkat Analisa Sistem

Analisis sistem merupakan tahapan yang dimulai karena adanya permintaan terhadap sistem baru. Dimana, permintaan dapat datang dari seorang manajer di luar departemen sistem informasi atau dari pihak eksekutif yang melihat adanya masalah atau menemukan adanya peluang baru. Sehingga tujuan utama analisis sistem adalah untuk menetukan hal-hal detail yang akan dikerjakan oleh sistem yang akan diusulkan.Pada model analisis terdapat perangkat lunak yang dapat digambarkan dalam bentuk sebagai berikut:

2.4.1 Flowmap

Flowmap adalah campuran peta dan flowchart,yang menunjukan pergerakan benda dari satu lokasi ke lokasi lain, seperti jumlah orang dalam migrasi, jumlah barang yang diperdagangkan, atau jumlah paket dalam jaringan. Flowmap menolong analisis dan pembuat sistem untuk memecahkan masalah ke dalam segmen-segmen yang lebih kecil dan menolong dalam menganalisis alternaitf-alternatif lain dalam pengoprasian.

2.4.2 Diagram Konteks

(13)

disimpulkan bahwa diagram konteks adalah diagram yang terdiri dari suatu proses dan menggambarkan ruang lingkup suatu sistem. Diagram konteks merupakan level tertinggi dari DFD yang menggambarkan seluruh input ke sistem atau output dari sistem.

2.4.3 Data Flow Diagram (DFD)

Data Flow Diagram (DFD) adalah perangkat-perangkat analisis dan perancangan yang terstruktur sehingga memungkinkan peng-analis sistem memahami sistem dan subsistem secara visual sebagai suatu rangkaian aliran data yang saling berkaitan.

2.5 Pemrograman C#

C# adalah bahasa pemrograman baru yang diciptakan oleh Microsoft yang dikembakngkan dibawah kepemimpinan Anders Hejlsberg yang telah menciptakan berbagai macam bahasa pemrograman termasuk Borland Turbo C++ dan Borlan Delphi. Bahasa C# juga telah distandarisasi secara internasiunal oleh ECMA. Seperti halnya bahasa pemrograman yang lain, C# bisa digunakan untuk membangun berbagai macam jenis aplikasi, seperti berbasis dekstop dan aplikasi berbasis web serta aplikasi berbasis web services.

2.5.1 Feature dalam C#

Sebagai bahasa pemrograman baru C# banyak mengadopsi feature dari beberapabahasa pemrograman terkenal dan banyak komuitasnya tetapi yang paling dominan adalah Java adapun komposisinya adalah sebagai berikut 70% Java, 10% C++, 5% Visual Basic, 15% baru.

2.5.2 Penulisan Kode C#

(14)

2. Aplikasi dibukan dengan tanda”{” dan pada akhir kode ditutup dengan tanda “}”.

3. Aplikasi C# dibangun oleh satu atau beberapa fungsi yang diletakan didalam sebuah class dengan ketentuan sebagai berikut:

 Nama suatu fungsi pada C# harus diawali dengan huruf, atau garis bawah “_” yang kemudian bisadiikuti oleh huruf, angka atau garis bawah.

 Pada bagian akhir nama fungsi digunakan tanda kurung buka dan kurung tutup”()”.

 Penamaan fungsi tidak boleh mengandung spasi. Awal dan akhir suatu fungsi dimulai dengan tanda “{” dan diakhiri dengan tanda “}”.

 Komentar satu baris dengan menggunakan tanda “//”.

(15)

3.1 Analisis

Pada proses analisis ini mencakup berbagai analisis diantaranya analisis game, analisis masukan, analisis algoritma, analisis kebutuhan perangkat lunak yang mencakup analisis kebutuhan fungsional dan nonfungsional serta perancangan-perancangan dalam pembuatan perangkat lunak.

3.1.1 Analisis Masalah

Misi utama dari game ini adalah bertahan hidup. Terkadang player tidak dapat bertahan hidup karena player masih belum bisa menentukan musuh yang harus diprioritaskan untuk diserang lebih dulu. Algoritma greedy dan logika fuzzy merupakan solusi yang bisa diterapkan dalam game ini. Algoritma greedy sebagai pencari rute terpendek sehingga player akan lebih memprioritaskan musuh terdekat dan logika fuzzy untuk mengatur perilaku menyerang yang mengacu pada nyawa karakter dan musuh serta dan damage yang dimiliki oleh karakter.

3.1.2 Analisis Game Sejenis

Pada tahap ini akan dilakukan analisi terhadap game yang sejenis, analisis game sejenis dilakukan dengan metode observasi terhadap game sejenis

3.1.2.1Pengenalan Game Dead State

(16)

Misi dari game Dead State adalah bagaimana karakter utama dalam game ini ini mampu mempertahankan kelangsungan hidup dari buruan zombie yang sudah menguasai kota. Karakter utama akan berjuang mengumpulkan bahan makanan dan persediaan lainya untuk dapat bertahan hidup dengan cara keluar dari penampungan dan mengumpulkan barang yang tersisah di dalam kota yang telah dipenuhi oleh zombie. Di dalam game Dead State pemain diminta untuk mengambil keputusan sulit dan menantang untuk menjaga diri mereka sendiri dan sesama korban yang masih hidup.

3.1.2.2Gameplay Dead State

Game dari Dead state adalah sebagai berikut 1. Karakter utama terdiri dari 3 orang

2. Karakter memiliki Action-point (AP) total yang merupakan penggabungan dari AP aksi dan AP senjata

3. Setiap aksi yang dilakukan karakter dipengaruhi oleh AP total

4. Senjata yang digunakan memiliki nilai AP senjata yang berbeda dan ketika player menggunakan senjata maka AP total karakter akan di kurangi Oleh AP senjata.

5. Strategi dalam game ini menggunakan Turn-Based Strategy atau bergiliran jadi karakter dan zombie akan bergiliran dalam melakukan penyerangan.

6. Karakter harus mengumpulkan bahan makanan, senjata, obat-obatan yang masih terdapat di dalam kota yang sudah dipenuhi oleh zombie.

3.1.2.3 Tampilan Game Dead State

(17)

Gambar 3.1 Gambar Menu Utama Game Dead State

Tampilan karakter saat berhadapan melawan zombie dapat dilihat pada gambar3.2.

(18)

3.1.2.4Hasil Analisis Game Dead State

Adapun hasil analisis dari game Dead State memiliki kelebihan dan kekurangan, sebagai berikut:

a. Kelebihan Dead State:

1. Game ini beripe T-RPG.

2. Grafik sudah menggunakan 3D.

3. Story line non-linear dan memungkinkan pemain untuk mengeksplorasi game Dead State, dan menghadapi tantangan baru setiap kali bermain. b. Kekurangan:

1. Player tidak dapat memprioritaskan zombie yang harus diserang lebih dulu.

3.1.3 Pengenalan Game Me VS Zombie

Game yang dibuat akan mengambil judul “Me Vs Zombie”. Jenis game yang dibuat adalah bertipe RPG. User akan mengendalikan tiga karakter dalam game untuk melawan musuh atau zombie.

3.1.3.1Story Line

Game Me vs Zombie merupakan game yang beripe RPG menceritakan tetang 3 orang karakter yang mepertahankan hidup dari serangan zombie.Karakter dan musuh mempunyai nilai healt-point(HP) awal yang nilainya 100, HP yang menandakan status dari karakter atau musuh, jika HP kurang dari 60 maka status karakter atau musuh dikatakan lemah.

Untuk story line dalam game ini di bagi menjadi 3 level. Untuk kesulitan tiap level dibagi menurut banyaknya musuh yang dihadapi, yaitu:

1. Level 1

(19)

penyerangan. Setelah memilih karakter dan musuh maka karakter akan berjalan secara otomatis ke musuh. Musuh akan menyerang ketika karakter telah melakukan atack ke musuh. Karakter yang telah dipilih untuk menyerang tidak dapat dipilih lagi kecuali ketiga karakter yang di pakai sudah dipilih maka karakter dapat digunakan kembali. Jika dalam level 1 semua pemain mati maka permainan akan selesai tetapi jika semua musuh mati makan akan masuk ke level 2.

2. Level 2

Dilevel 2 untuk alur penyerangan masih sama dengan level 1 tetapi pada level 2 kodisi karakter masih tetap sama dengan level 1 dan akan melawan 8 musuh. Player akan masuk ke level 3 jika telah membunuh semua musuh.

3. Dilevel 3 alur penyerangan masih sama seperti dilevel 1 dan level 2 tetapi player akan menghadapi 10 musuh dan kondisi HP player masih tetap sama seperti level sebelumnya.

3.1.3.2Gameplay

Misi utama dalam game ini adalah karakter harus mampu bertahan hidup dari serangan zombie. Untuk menunjang permainan dalam mempertahan hidup game ini terdapat sugesti saran penyerangan terhadap zombie yang dapat dipakai sebagai prioritas penyerangan dari pemain. Di dalam gameplay karakter mempunyai 2 kondisi yaitu:

1. Pemain mengikuti saran.

a. Pemain melakukan penyerangan ketika sampai pada zombie yang dituju. Untuk setiap kali penyerangan akan mengurangi Healt-Point dari zombie.

b. Setelah menyerang pemain dapat kabur.

(20)

2. Menang

a. Pemain dikatakan menang jika dapat membunuh semua zombie. b. Pemain dikatakan kalah jika semua karakter mati.

3.1.4 Analisis Algoritma Greedy

Algoritma greedy dalam game ini betujuan untuk mencari rute terdekat dari karakter player ke musuh.

3.1.4.1Analisis Masukan

Analisis masukan yang dilakukan dalam penelitian ini adalah menganalisis parameter algoritma greedy pada Game yang akan dibuat. Parameter yang inputkan yang dimiliki oleh pemain dan musuh adalah berupa inputan koordinat yang merupakan letak dari pemain dan musuh. Titik koordinat karakter dan musuh akan muncul secara otomatis ketika permainan dimulai. Dari titik – titik koordinat tersebut player akan memilih karakter secara acak, setelah memilih karakter maka langkah selanjutnya adalah menghitung bobot terendah dari karakter dan musuh. Bobot terendah didapatkan dari hasil pengurangan koordinat karakter dan koordinat musuh. Hasil bobot terendah akan menghasilkan jumlah kotak yang harus dilewati oleh karakter dan dari kotak itu akan menujukan titik koordinat tujuan karakter dan merupakan rute terpendek dari karakter yang dipilih ke titik koordinat tujuan. Berikut adalah tahapan algoritma greedy:

1. Menentukan himpunan kandidat (C)

Himpunan kandidat ini berisi elemen-elemen yang memiliki peluang untuk pembentuk solusi. Hipunan kandidat dalam game ini adalah titik koordinat karakter dan musuh.

C: {…}

(21)

Himpunan ini berisi solusi permasalahan yang diselesaikan. Himpunan Solusi terdiri dari semua titik koordinat tujuan karakter.

S: {…}

3. Menentukan Fungsi Seleksi

Fungsi yang pada setiap langkah memilih kandidat paling memungkinkan mencapai solusi optimal. Fungsi seleksi disini akan menghitung bobot terkecil dari semua tujuan karakter. Bobot terkecil akan menghasilkan jumlah langkah yang diambil karakter ke titik koordinat tujuan.

4. Menentukan Fungsi Kelayakan

Fungsi yang memeriksa apakah suatu kandidat yang telah dipilih dapat memberikan solusi yang layak, yakni kandidat tersebut bersama-sama dengan himpunan solusi yang sudah terbentuk tidak melanggar kendala yang ada. Fungsi kelayakan yang diambil adalah titik koordinat tujuan. 5. Menentukan Fungsi Obyektif

Nilai minimum yang didapat, yaitu jumlah langkah dan titik koordinat tujuan.

3.1.3.2Analisis Greedy

Algoritma greedy dalam game ini hanya digunakan dalam pengambilan jarak terdekat yang dimana jarak tersebut akan menjadi paramter jarak pada logika fuzzy.

Algoritma greedy adalah algoritma yang memecahkan masalah langkah demi langkah dan merupakan salah satu metode dalam masalah optimasi. Algoritma greedy membentuk solusi langkah perlangkah sebagai berikut:

1. Terdapat banyak pilihan yang perlu dipilih pada setiap langkah solusi, oleh karena itu, pada setiap langkah harus dibuat keputusan yang terbaik dalam menentukan pilihan.

(22)

dengan membuat pilihan optimum local pada setiap langkah dan diharapkan akan mendapatkan solusi optimum global

Masalah optimasi dalam konteks algoritma greedy disusun oleh elemen-elemen sebagai berikut:

1. Himpunan kandidat (C)

Himpunan kandidat disini adalah koordinat dari karakter pemain dan musuh. Seperti contoh yang terlihat pada gambar 3.3. Player yang aktif adalah player yang kotaknya berwarna merah yaitu P1. Koordinat P1 (2,3). dan Z1 koordinat musuh (14,1), Z2(10,2), Z3(11,3), Z4(7,0), Z5(9,5)

C:{2,3; 14,1; 10,2; 11,3; 7,0; 9,5}

Gambar 3.3 Koordinat Karakter Player dan koordinat Zombie 2. Himpunan solusi (S)

Himpunan solusi dari permasalaham pada gambar 3.4 adalah koordinat Z1(14,1), (14,0), (15,1),(14,2), Z2(10,2), (10,1), (11,2), (10,3), Z3 (10,3), (11,2), (13,3), (11,4), Z4 (6,0), (8,0), (7,1), Z5 (8,5), (9,4), (10,5), (9,6). Dapat dilihat pada gambar 3.4 yang kotaknya berwana biru:

(23)

Gambar 3.4 Titik koordinar tujuan P1 3. Fungsi seleksi

Untuk menentukan fungsi komulatif dapat dihitung dengan koordinat dari pemain dikurang tujuan pemain.

a. Tujuan P1 ke Z1

a) | 2 – 13 | + | 3 – 1 | = 13 b) | 2 – 14 | + | 3 – 0 | = 15 c) | 2 – 15 | + | 3 – 1 | = 15 d) | 2 – 14 | + | 3 – 2 | = 13 b. Tujuan P1 ke Z2

a) | 2 – 9 | + | 3 – 2 | = 8 b) | 2 – 10 | + | 3 – 1 | = 10 c) | 2 – 11 | + | 3 – 1 | = 10 d) | 2 – 10 | + | 3 – 3 | = 8 c. Tujuan P1 ke Z3

(24)

d. Tujuan P1 ke Z4

a) | 2 – 6 | + | 3 – 0 | = 7 b) | 2 – 8 | + | 3 – 0 | = 9 c) | 2 – 7 | + | 3 – 1 | = 7 e. Tujuan P1 ke Z5

a) | 2 – 8 | + | 3 – 5 | = 8 b) | 2 – 9 | + | 3 – 4 | = 8 c) | 2 – 10 | + | 3 – 5 | = 10 d) | 2 – 9 | + | 3 – 6 | = 10

Dari hasil perhitungan didapat bobot terendah adalah 7 dengan target tujuan untuk diserang adalah Z4, maka titik koordinat tujuan yang didapatkan adalah (6,0) dan (7,1).

4. Fungsi kelayakan

Fungsi kelayakan yang didapatkan dari perhitungan bobot terendah yang menghasilkan koordinat tujuan yaitu koordinat (6,0) dan (7,1) atau dapat dilihat pada gambar 3.5 yang berwana kuning

(25)

5. Fungsi obyektif

Nilai minimum atau rute terpendek yang didapat pada permasalahan di atas ada 2 yaitu koordinat (6,0) dan (7,1) dengan jumlah bobot terendahnya adalah 7 langkah.

3.1.5 Analisi Logika Fuzzy

Pada penerapan metode Fuzzy Tsukamto dalam game ini untuk menentukan prioritas serangan pemain terhadapat musuh. Komponen yang digunakan dalam pembuatan game ini yaitu Model Base.

3.1.5.1 Analisis Masukan

Analisis masukan yang dilakukan dalam penenlitian ini adalah menganalisis perameter dalam logika fuzzy pada game Me Vs Zombie. Parameter yang dimiliki oleh karakter yaitu Damage dan Healt-Point (HP) parameter yang dimiliki oleh musuh adalah Healt-Point (HP), yang nantinya parameter – parameter tersebut berpengaruh pada prioritas serang yang dilakukan player. Berikut rentang nilai dari parameter karakter dan musuh pada tabel 3.1

Tabel 3.1 Parameter Masukan Dan Rentang Nilai Masukannya

No Parameter Rentang Nilai

1 Damage Karakter 1 – 20

2 Healt-Point (HP) Karakter 10 – 100 3 Healt-Point (HP) Musuh 10 – 100

3.1.5.2 Model Base Metode Tsukamoto

(26)

1. Mendefinisikan Variabel Fuzzy

Pada tahap ini, nilai keanggotaan himpunan parameter Damage, nyawa, musuh saat ini dicari menggunakan funggsi keanggotaan himpunan fuzzy dengan memperhatikan nilai maksimum dan nilai minimum data 1 periode terakhir dari tiap variabe. Variabel 1 periode terakhir antara antara lain variabel Damage, variabel nyawa dan variabel musuh dan variabel serang. Nilai masukan dari tiap-tiap variabel diambil dari nilai masukan parameter, yaitu:

1. Variabel Damage nilai masukannya diambil dari parameter damage. Variabel damage mempunyai 2 himpunan fuzzy yaitu fuzzy kuat dan fuzzy lemah. Damage lemah jika damage kurang dari 10.

2. Variabel Nyawa nilai masukannya diambil dari parameter HP karakter. Variabel nyawa mempunyai 2 himpunan fuzzy yaitu fuzzy kuat dan fuzzy lemah. Nyawa dikatakan lemah jika HP karakter kurang dari 60.

3. Variabel Musuh nilai masukannya diambil dari parameter HP musuh. Variabel musuh mempunyai 2 himpunan fuzzy yaitu fuzzy kuat dan fuzzy lemah. Musuh dikatakan lemah jika HP musuh kurang dari 60

4. Variabel Serang merupakan hasil yang diambil dari karakter. Serang memiliki 2 himpunan fuzzy yaitu fuzzy menyerang dan fuzzy kabur. Karakter akan kabur jika nilai serangnya krang dari 60.

a. Variabel Damage

(27)

Gambar 3.6 Fungsi Keangggotaan himpunan Fuzzy LEMAH dan KUAT dari variabel Damage

b. Variabel Nyawa

Variabel nyawa terdiri dari 2 himpunan fuzzy yaitu KUAT dan LEMAH. Fungsi kenaggotaan himpunan fuzzy KUAT dan LEMAH dari variabel Damage direpresentasikan pada gambar 3.7

Gambar 3.7 Fungsi keanggotaan fuzzy LEMAH dan KUAT dari variabel Nyawa

c. Variabel Musuh

(28)

Gambar 3.8 Fungsi keanggotaan himpunan fuzzy LEMAH dan KUAT dari variabel Musuh

d. Variabel Serang

Variabel serang terdiri dari 2 himpunan fuzzy yaitu KABUR dan MENYERANG. Fungsi kenaggotaan himpunan fuzzy KABUR dan MENYERANG dari variabel Serang direpresentasikan pada gambar 3.9

Gamba 3.9 Fungsi keanggotaan himpunan fuzzy LEMAH dan KUAT dari variabel Musuh

2. INFERENSI

(29)

damage KUAT, damage LEMAH, nyawa LEMAH, nyawa KUAT, musuh LEMAH, musuh KUAT , serang KABUR, serang MENYERANG.

Dengan mengkombinasikan himpunan-himpunan fuzzy tersebut, maka diperoleh delapan aturan fuzzy sebagai berikut:

[R1] IF Damage KUAT and Nyawa KUAT and Musuh KUAT then MENYERANG

[R2] IF Damage LEMAH and Nyawa KUAT and Musuh KUAT then KABUR [R3] IF Damage LEMAH and Nyawa LEMAH and Musuh KUAT then KABUR [R4] IF Damage KUAT and Nyawa LEMAH and Musuh KUAT then

MENYERANG

[R5] IF Damage LEMAH and Nyawa KUAT and Musuh LEMAH then KABUR [R6] IF Damage KUAT and Nyawa LEMAH and Musuh LEMAH then

MENYERANG

[R7] IF Damage KUAT and Nyawa KUAT and Musuh LEMAH then MENYERANG

[R8] IF Damage LEMAH and Nyawa LEMAH and Musuh LEMAH then KABUR Contoh Kasus Pada Game

Contoh kasus pada game dapat dilihat dari contoh kasus pada gambar 3.3 di atas. P1 akan menyerang ke musuh terdekat yaitu Z4. Misalkan P1 mempunyai Damege (20), Nyawa (80), dan Z4 mempunyai Nyawa (30), maka prioritas yang akan diambil oleh pemain adalah?

a. Memodelkan variabel fuzzy (Fuzzyfikasi)

Ada 4 variabel fuzzy yang dimodelkan, yaitu Damage, nyawa, musuh, dan serang

(30)

Gambar 3.10 Fungsi keanggotaan himpunan fuzzy LEMAH dan KUAT dari variabel Damage

Fungsi keanggotaan Himpunan LEMAH dan KUAT dari variabel Damage:

Nilai keanggotaan himpunan LEMAH dan KUAT dari variabel DAMAGE bisa di cari dengan

(31)

Gambar 3.11 Fungsi Keanggotaan himpunan fuzzy LEMAH, KUAT dari variabel Nyawa

Fungsi keanggotaan himpunan fuzzy LEMAH dan KUAT dari variabel Nyawa

Nilai keanggotaanhimpunan LEMAH dan KUAT dari variabel Nyawa dapat dicari dengan

(32)

Gambar 3.12 Fungsi keanggotaan Himpunan fuzzy LEMAH dan KUAT dari variabel Musuh

Fungsi keanggotaan himpunan fuzzy LEMAH dan KUAT dari variabel Musuh

Nilai keanggotaan dari himpunan LEMAH dan KUAT dari variabel Musuh dapat dicari:

(33)

Gambar 3.13 Fungsi keanggotaan Himpunan Fuzzy MENYERANG dan KABUR dari variabel Serang:

b. INFERENSI

[R1] IF Damage KUAT and Nyawa KUAT and Musuh KUAT then MENYERANG;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R1] yang dinotasikan denagn α1 diperoleh rumus berikut:

= min 0,22

(34)

[R2] IF Damage LEMAH and Nyawa KUAT and Musuh KUAT then KABUR;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R2] yang dinotasikan denagn α2 diperoleh rumus berikut:

= min 0

100

[R3] IF Damage LEMAH and Nyawa LEMAH and Musuh KUAT then KABUR;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R3] yang dinotasikan denagn α1 diperoleh rumus berikut:

= min 0

100

[R4] IF Damage KUAT and Nyawa LEMAH and Musuh KUAT then MENYERANG;

(35)

= min 0,22

80,2

[R5] IF Damage LEMAH and Nyawa KUAT and Musuh LEMAH then KABUR;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R5] yang dinotasikan denagn α1 diperoleh rumus berikut:

= min 0

100

[R6] IF Damage KUAT and Nyawa LEMAH and Musuh LEMAH then MENYERANG;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R6] yang dinotasikan denagn α6 diperoleh rumus berikut:

(36)

80,2

[R7] IF Damage KUAT and Nyawa KUAT and Musuh LEMAH then MENYERANG;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R7] yang dinotasikan denagn α7 diperoleh rumus berikut:

= min 0,52

53,2

[R8] IF Damage LEMAH and Nyawa LEMAH and Musuh LEMAH then KABUR;

Nilai kenaggotaan anteseden untuk aturan fuzzy [R8] yang dinotasikan denagn α8 diperoleh rumus berikut:

= min 0

100

c. Menentukan Output Crisp (Deffuzzyfikasi)

(37)

Jadi nilai yang dihasilkan berdasarkan aturan yang sudah dibentuk sebelumnya. Sesuai dengan contoh dari perhitungan yang dihasilkan dari nilai Damage [20], nyawa [80], dan musuh [30] yang dimiliki pemain dengan nilai Z yang didapatkan yaitu 68,34 maka keputusan adalah pemain adalah menyerang karena nilai Z lebih besar dari 60.

3.2Analisis Kebutuhan Perangkat Lunak

Pada tahap ini meliputi elemen-elemen yang diperlukan dalam mengimplementasikan algortima greedy dan logika fuzzy yaitu terdiri dari kebutuhan non-fungsional dan kebutuhan fungsional. Spesifikasi kebutuhan perangkat lunak akan dibagi kedalam dua bagian yaitu Kebutuhan Fungsional dan Spesifikasi Kebutuhan Non-Fungsional.

3.2.1 Analisis Kebutuhan Non-Fungsional

(38)

3.2.1.1Analisis Perangkat Keras

Perangkat keras atau hardware merupakan salah satu hal yang penting karena tanpa hardware yang memenuhi syarat, sistem yang akan dibuat tidak akan dapat berjalan. Perangkat keras minimum yang digunakan :

1. Processor Dual Core 1,80 Ghz 2. RAM 1 GB

Berdasarkan hasil penelitian, spesifikasi minimal bagi pengguna yang dapat memainkan game ini adalah:

a. Peran : Player

b. Tingkat Keterampilan : Dapat mengoperasikan komputer c. Pengalaman : Pernah memainkan game PC

3.2.1.3Analisis Perangkat Lunak

Perangkat lunak atau software merupakan hal yang terpenting dalam mendukung kinerja sebuah sistem. Perangkat lunak digunakan dalam sebuah sistem merupakan perintah-perintah yang diberikan kepada perangkat keras agar dapat saling berinteraksi diantara keduanya. Perangkat lunak yang dibutuhkan untuk membangun aplikasi game ini adalah sebagai berikut :

(39)

2. Visual Studio sebagai editor.

3.2.2 Analisis Kebutuhan Fungsional

Analisis kebutuhan fungsional adalah segala bentuk data yang dibutuhkan oleh sistem agar sistem dapat berjalan sesuai dengan prosedur yang dibangun, dengan demikian perlu dilakukan analisis terhadap data yang dibutuhkan dari sistem yang sedang berjalan agar dapat diimplementasikan kedalam program aplikasi yang akan diajukan nantinya.

3.2.2.1 Diagram Konteks

Diagram konteks adalah suatu proses yang menggambarkan dan menjelaskan aliran informasi dari sistem yang diusulkan secara garis besarnya dan dapat dilihat pada gambar 3.14

Gambar 3.14 Diagram Konteks Pada Game Yang Dibuat 3.2.2.2Data Flow Diagram

Data Flow Diagram adalah representasi grafik dari sebuah sistem. DFD menggambarkan sebuah sistem yang telah ada atau baru yang akan dikembangkan secara logika tanpa mempertimbangkan lingkungan fisik dimana data tersebut akan disimpan.

(40)

Berikut ini adalah gambar DFD level 1 game Me Vs Zombie 3.14

Gambar 3.15 DFD Level 1 Game Me vs Zombie

2. DFD level 2 Game Me Vs Zombie level 2 Proses Greedy 1.1

Berikut ini adalah gambar DFD level 2 pada game Me vs Zombie yang dibuat terlihat pada gambar 3.16

Gambar 3.16 DFD Level 2 Game Me Vs Zombie Proses Greedy 1.1

3. DFD level 2 Game Me Vs Zombie level 2 Proses Fuzzy 2.1

(41)

Gambar 3.17 DFD Level 2 Game Me Vs Zombie Proses Fuzzy 2.1

3.2.3 Spesifikasi Proses

Spesifikasi proses merupakan deskripsi dari setiap elemen proses yang terdapat dalam program, yang meliputi nama, proses, input, output dan keterangan dari proses. Berikut ini spesifikasi proses dari Game pengaturan taktik dan prioritas serangan pada Me vs Zombie ditunjukan pada tabel 3.2

Tabel 3.2 Tabel Spesifikasi Proses Game Me vs Zombie

No Proses Keterangan

1 No.Proses 1

Nama Game Me Vs Zombie

Source(sumber) Player

Input 1. Input Musuh

2. Input Karakter

Output Mendapatkan target musuh yang diserang

Logika Proses 1. Player menginputkan Musuh

2. Player menginputkan karakter pemain

3. Proses Greedy dijalankan 4. Akan ketemu rute terpendek 5. Proses fuzzy dijalankan

(42)

target musuh yang akan dituju

2 No.Proses 1.1

Nama Proses Greedy

Source(sumber) Player

Input 1. Koordinat Musuh

2. Koordinat Karakter

Output Rute terdekat antar karakter dan musuh

Logika Proses 1. Pemain Input Koordinat dari musuh dan karakter

2. Akan dihitung bobot teredah

3. Akan ketemu rute terdekat antar pemain dan musuh

3 No.Proses 2.1

Nama Proses Fuzzy

Source(sumber) Player

Input 1. Nyawa Karakter

2. Damage Karakter 3. Jarak Musuh

Output Saran prioritas penyerangan

Logika Proses 1. Musuh terdekat dengan karakter 2. Menghitung nilai-nilai dari

(43)

3.3 Perancangan Sistem

Perancangan adalah suatu bagian metodologi pengembangam dari suatu perangkat lunak yang dilakukan setelah tahapan untuk memberikan gambaran secara terperinci. Dalam tahap ini digambarkan rancangan perangkat lunak yang akan dibangun sebelum dilanjutkan ke proses pengkodean (coding) ke dalam bahasa pemrograman.

3.3.1 Perancangan Perangkat Lunak

Perancangan perangkat lunak adalah kegiatan untuk merancang aplikasi yang dibangun, tahapannya dimulai dari perancangan menu, perancangan antar muka, jaringan semantik dan perancangan method.

3.3.1.1Struktur Menu

Struktur menu merupakan bentuk utama dari suatu rancangan sistem atau aplikasi yang berfungsi untuk memudahkan dalam pemilihan proses yang akan dikerjakan sesuai dengan kebutuhan dan hak aksesnya.

Berikut ini merupakan gambar perancangan struktur menu pada game Me Vs Zombie:

(44)

3.3.1.2Perancangan Karakter dan Musuh

Pada game Me Vs Zombie terdapat beberapa karakter dan musuh dalam game. Berikut daftar objek yang terdapat dalam game Me Vs Zombie:

Tabel 3.3 Tabel Karakter

Gambar Nama HP Status Damage

Rangga 100 K (Kuat) 20

Kerin 100 K (Kuat) 10

Dilla 100 K (Kuat) 5

Tabel 3.4 Tabel Musuh

Gambar Nama HP Status Damage

Zombie 1 100 K (Kuat) 5

(45)

Zombie 3 100 K (Kuat) 5

Zombie 4 100 K (Kuat) 5

Zombie 5 100 K (Kuat) 5

3.3.1.3Perancangan Antar Muka

Perancangan antar muka dilakukan untuk mempermudah dalam megimplementasikan sistem yang dibangun. Berikut adalah perancangan antar muka dari aplikasi yang dibangun.

1. Tampilan Menu Utama

(46)

2. Antar muka saat bermain

Gambar 3.20 Antar Muka Untuk Iput Karakter dan Zombie

3.2.1.4Perancangan Pesan

1. Tampilan pesan penyerangan karakter ke zombie.

(47)

2. Tampilan pesan penyerangan zombie ke karakter.

Gambar 3.22 Tampilan Message 02

3.3.2 Jaringan Semantik

Struktur aplikasi dibuat secara moduler, dimana program dipecah menjadi modul-modul kecil yang mudah dibuat, mudah dites dan mudah untuk dimodifikasi. Dalam pembuatan game ini menggunakan alat bantu bagan struktural yang disebut jaringan semantik. Berikut adalah jaringan semantik dari game yang dibuat pada gambar 3.22.

(48)

3.3.3 Perancangan Prosedural

Perancangan prosedural mentransformasi elemen-elemen struktural dari arsitektur program kedalam suatu deskripsi prosedural dari komponen-komponen perangkat lunak. Adapun perancangan prosedural untuk game yang akan dibangun adalah sebagai berikut :

a. Prosedur Game

(49)

b. Posedur Greedy

(50)

c. Prosedur Fuzzy

(51)

4.1 Implementasi

Tahap implementasi dilakukan setelah proses analisis selesai dilakukan selanjutnya diimplementasikan ke dalam bahasa pemrograman. Setelah implementasi algoritma dilakukan maka dilakukan pengujian terhadap algoritma yang digunakan pada aplikasi yang dibuat dengan tujuan untuk mengetahui apakah algoritma dan aplikasi yang dibuat dapat berjalan sesuai dengan tujuan atau tidak.

4.1.1 Implementasi Algoritma

Pada implementasi algoritma menjelaskan implementasi dan melakukan pengujian algoritma greedy dan logika fuzzy terhadap prioritas penyerangan pada game RPG Me vs Zobie serta menjelaskan skenario dari hasil pengujian algoritma logika fuzzy yang diterapkan pada game bertipe RPG.

4.1.1.1Pengujian Algoritma dan Skenario Pertama 1. Karakter Mencari rute Terpendek

(52)

Tabel 4.1 Table Titik Koordinat Karakter dan Musuh

No

Nama Karakter Koordinat karakter Nama Musuh Koordinat Musuh

1 Rangga (2,2) Zombie 1 (16,8)

Zombie 2 (14,6) Zombie 3 (11,3) Zombie 4 (12,4) Zombie 5 (9,1)

Gambar 4.1 Posisi Dan Jarak Karakter ke Musuh Skenario Pertama Skenario Pengujian

Player memilih karakter, kemudian player memilih zombie 5 yang berada pada koordinat (9,1).

Output Algoritma Greedy:

(53)

3. Koordinat karakter (2,2), Koordinat zombie 3 (11,3) = 10 kotak 4. Koordinat karakter (2,2), Koordinat zombie 4 (12,4) = 12 kotak 5. Koordinat karakter (2,2), Koordinat zombie 5 (9,1) = 8 kotak

Maka dilihat dari hasil output dari algoritma greedy rute terpendek yang harus ditempuh oleh karakter ke musuh yaitu 8 kotak.

4.1.1.2Pengujian Algoritma dan Skenario Kedua 1. Karakter Menyerang Musuh

Posisi player dan musuh akan menjadi prioritas pertama dan prioritas kedua diambil dari nilai parameter yang dimiliki oleh karakter dan musuh. Berikut nilai parameter yang dimiliki oleh musuh dan karakter pada tabel 4.2

Tabel 4.2 Tabel Parameter Karakter dan Musuh

No Nama Karakter Parameter Krakter Nama Musuh Parameter Musuh

1 Rangga Damage : 20 Zombie 5 Nyawa 65

Nyawa : 100

Gambar 4.2 Karakter Menyerang Musuh Skenario ke-2 2. Skenario Pengujian

(54)

Output logika Fuzzy

1. Damage (Tinggi 20) = 0, Nyawa Karakter(Kuat, 100)= 0, Nyawa Musuh (Kuat,65) = 0,38

Z=100

Dilihat dari output logika fuzzy maka prioritas yang didapat oleh karakter adalah Menyerang musuh yang dituju.

4.2Pengujuan White-Box

Pengujian white-box merupakan pengujian yang didasarkan pada pengecekan terhadap detail perancangan dengan menggunakan struktur kontrol dari desain program secara prosedural untuk membagi pengujian ke dalam beberapa kasus pengujian. Tujuan dari pengujian white-box untuk mengetahui cara kerja suatu aplikasi aau perangkat luak secara internal dan menjamin operasi-operasi internalsesuai dengan spesifikasi yang telah ditetapkan dengan

menggunakanstruktur kontrol dari prosedur yang di rancang. Berikut adalah pengujian white-box yang dilakukan pada Proses Greedy dan logika fuzzy:

a. Pengujian white-box terhadap Proses Greedy 1 private int greedy(int xx, int yy)

Gambar 4.3 Pseudocode Proses Greedy

(55)

Gambar 4.4 Diagram Alir Pseudocode Proses Greedy Berdasarkan digram alir pseudocode terhadap proses greedy maka dapa dihitung cyclometic comlexity, yaitu:

1. Flowgrap mempunyai 1 region 2. V(G) = 5 edge -5 node + 2 = 2 3. V(G) = 1 Predicate + 1 = 2

(56)

13

(57)

Gambar 4.6 Diagram Alir Pseudocode Fuzzy

Berdasarkan diagram alis pseudocode terhadap fuzzy maka dapat di hitung cyclometic complexity, yaitu:

1. Flowgrap mempunyai1 region. 2. V(G) = 26 edge – 27 node + 2 = 1 3. V(G) = 4 predicate + 1 = 5

Dari hasil perhitungan cyclometic complexity terdapat 2 independent path yaitu:

(58)
(59)

5.1 Kesimpulan

Berdasarkan penelitian mengenai implementasi algoritma greedy dan logika fuzzy untuk pengaturan taktikdan prioritas serangan pada game bertipe Role-Playing Game (RPG), maka dapat diperoleh kesimpulan bahwa dengan menerapkan algoritma greedy dan logika fuzzy dapat membatu player dalam mengambil prioritas serangan didalam game Me vs Zombie yang bertipe RPG.

5.2 Saran

Untuk meningkatkan penelitian ke depan mengenai algoritma greedy dan logika fuzzy untuk pengaturan taktikdan prioritas serangan pada game bertipe Role-Playing Game (RPG) penulis mengusulkan beberapa saran yang dapat dijadikan pertimbangan yaitu :

1. Logika Fuzzy diterapkan juga pada musuh.

(60)

Data Pribadi

Nama : Jonathan Arisoi

TTL : Wamena, 9 Februari 1992

Umur : 23 Tahun

Jenis Kelamin : Laki - laki

Alamat : Kubang Sari Utara no.A4

No. Tlp : 081223800095

Pendidikan Formal

1997 – 2003 SD Negeri Inpres Kotaraja 2003 – 2006 SMP Negeri 2 Jayapura 2006 – 2009 SMA Negeri 1 Jayapura

(61)

SKRIPSI

Diajukan untuk Menempuh Ujian Akhir Sarjana

JONATHAN ARISOI

10109133

Program Studi Teknik Informatika

Fakultas Teknik Dan Ilmu Komputer

(62)
(63)

2.5.1 Feature C# ...13

2.5.2 Penulisan Kode C# ...13

BAB 3 ANALISIS DAN PERANCANGAN ...15

3.1 Analisis ... 15

3.1.1 Analisis Masalah ...15

3.1.2 Analisis Game Sejenis ...15

3.1.2.1 Pengenalan Game Dead State ...15

3.1.2.2 Gameplay Dead State ...16

3.1.2.3 Tampilan Dead State ...16

3.1.2.4 Hasil Anasilis Game Dead State ...18

3.1.3 Pengenala Game Me Vs Zombie ...18

3.1.3.1 Storyline ...18

3.1.3.2 Gameplay ...19

3.1.4 Analisis Algoritma Greedy ... 20

3.1.4.1 Analisis Masukan ... 20

3.1.4.2 Analisis Greedy ... 21

3.1.5 Analisis Logika Fuzzy ... 25

3.1.5.1 Analisis Masukan ...25

3.1.5.2 Model Base Metode Tsukamoto ...25

3.2 Analisis Kebutuhan Perangkat Lunak ...37

3.2.1 Analisis Kebutuhan Non-Fungsional ...37

3.2.1.1 Analisis Perangkat Keras ...38

3.2.1.2 Analisi Pengguna ...38

3.2.1.3 Analisis Perangkat Lunak ...38

(64)

vii

3.3.1 Perancangan Perangkat Lunak ...43

3.3.1.1 Struktur Menu ... 43

3.3.1.2 Perancangan Karakter dan Musuh ...43

3.3.1.3 Perancangan Antar Muka ... 45

3.3.1.4 Perancancangan Pesan ...46

3.3.2 Jaringan Semantik ...47

3.3.3 Perancangan Prosedural ...48

BAB 4 IMPLEMENTASI ALGORITMA DANHASIL PENGUJIAN ...49

4.1 Implementasi ...49

4.1.1 Implementasi Algoritma...49

4.1.1.1 Pengujian Algoritma dan Skenario Pertama ...49

4.1.2.2 Pengujian Algoritma dan Skenario Kedua ...51

4.2 Pengujian White-Box ...52

BAB 5 KESIMPULA DAN SARAN ...58

5.1 Kesimpulan ...58

5.2 Saran ...58

(65)

Algoritma Greedy Pada Tactical Role-Playing Game”. Teknik Informatika, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung, Jalan Ganeca 10, Bandung.

Akses: 01/09/2014, Pukul 16:00 Tersedia:

http://informatika.stei.itb.ac.id/~rinaldi.munir/Stmik/2009-2010/Makalah2009/MakalahIF3051-2009-028.pdf

[2] Kristo Radion Purba, Rini Nur Hasanah, dan M.Aziz Muslim.

Implementasi Logika Fuzzy Untuk MEngatur Perilaku Musuh Dalam Game Bertipe Action-RPG” ed.)”. Prentice Hall. ISBN 0-13-064792-6.

[4] Logika fuzzy, www.informatika.web.id/category/fuzzy diakses pada tanggal 20 Oktober 2014 pukul 16.15 WIB

[5] Kusumadewi, Sri, (2002), “Aplikasi Logika Fuzzy untuk Pendukung Keputusan Edisi 2”, Graha Ilmu, ISBN : 978-979-756-632-6.

(66)

iii

Skripsi yang berjudul “IMPLEMENTASI ALGORITMA GREEDY DAN

LOGIKA FUZZY UNTUK PENGATURAN TAKTIK DAN PRIORITAS SERANGAN PADA GAME BERTIPE ROLE-PLAYING GAME (RPG)” penulis ajukan sebagai syarat nilai mata kuliah skripsi program studi Teknik Informatika Fakultas Teknik dan Ilmu Komputer Universitas Komputer Indonesia. Yang dalam penyusunannya berlandaskan pada teori-teori yang penulis dapatkan selama mengikuti kuliah, melakukan penelitian, menggunakan buku-buku dan pihak-pihak yang telah memberi bantuan. Dalam penulisan skripsi ini penulis melibatkan berbagai pihak. Pada kesempatan ini penulis mengucapkan terima kasih kepada semua pihak yang telah membantu tersusunnya skripsi ini, yakni kepada :

1. Keluarga tercinta yang selalu dukung dalam doa, Mama, Bapa, Ka Gina, Ka Lisa, Radek

2. Ibu Rani Susanto, S.Kom, M.Kom, Ibu Nelly Indriani W, S.Si., M.T., Ibu Tati Harihayati M., S.T., selaku penguji yang senantiasa mengarahkan dan membimbing penulis dalam menyelesaikan penulisan skripsi.

3. Seluruh staf pengajar dan sekretariat Teknik Informatika, yang telah membantu proses belajar penulis.

4. Seluruh teman-teman IF-3 2009 terutama Rully Ramdhany, Zam Zam Fauzan, dan Sandi Lesmana, terima kasih atas saran, dukungan serta kebersamaannya.

5. Semua anak-anak Gebora yang selalu mendukung.

(67)

Akhir kata semoga Tuhan membalas segala kebaikan yang telah penulis terima dan harapan penulis semoga skripsi ini dapat bermanfaat bagi pihak yang membutuhkan.

Bandung, Februari 2015

(68)
(69)
(70)

Gambar

Gambar 2.1 Grafik representasi Linear Naik
gambar 2.2
Gambar 3.1 Gambar Menu Utama Game Dead State
Gambar 3.3 Koordinat Karakter Player dan koordinat Zombie
+7

Referensi

Dokumen terkait

Prinsip pembelajaran kelas yang kooperatif dapat digunakan untuk usul al fiqh dengan membentuk kelompok-kelompok peserta didik, yang dalam kelompok tersebut mereka dapat

Adam Akbar, 2012, Analisis Pengaruh Citra Merek, Harga, dan Kualitas Produk Terhadap Keputusan Pembelian Notebook Toshiba, Jurnal Manajemen dan Akuntansi, volume 12, nomor 2.. 2010,

Dalam penelitian ini, isolasi senyawa flavonoida dilakukan terhadap tumbuhan Benalu. Nangka berupa serbuk halus yang kering sebanyak

Alhamdulillahi Rabbil „alamin, Segala puji syukur bagi Allah SWT, Zat pencipta manusia yang menciptakan langit dan bumi serta seluruh yang ada di antara

Vastauksista kävi ilmi myös raakaruokinnan positiivisiksi koetut vaikutukset koirien kehonkoostumukseen, sillä 36 (6,5 %) omistajaa raportoi koiran lihasmassan

Jika tidur, pilih tempat tidur yang baik, misalnya yang memiliki matras (kasur) yang kuat (firm), sehingga posisi tidur tidak melengkung. Yang paling baik adalah tidur miring

Gam Arab perencat hijau sering digunakan sebagai satu bahan salutan dan kini ia diterapkan dalam pembangunan bahan plat dwikutub bagi aplikasi sel fuel memandangkan