• Tidak ada hasil yang ditemukan

BAB IV IMPLEMENTASI DAN PENGUJIAN. sesuai dengan kebutuhan untuk dijadikan asset. Berikut asset-asset yang. Tabel 4.1 Assets Game

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB IV IMPLEMENTASI DAN PENGUJIAN. sesuai dengan kebutuhan untuk dijadikan asset. Berikut asset-asset yang. Tabel 4.1 Assets Game"

Copied!
29
0
0

Teks penuh

(1)

76

IMPLEMENTASI DAN PENGUJIAN

4.1 Production

Production adalah tahapan membuat asset, pemrograman source code dan mengintegrasikan dari keduanya.

4.1.1 Asset Gambar

Tahapan ini merupakan tahapan membuat dan pengumpulan bahan yang sesuai dengan kebutuhan untuk dijadikan asset. Berikut asset-asset yang digunakan pada game ilmuwan muslim.

Tabel 4.1 Assets Game

No Asset Keterangan No Asset Keterangan

1 Background / Latar pada game 9 Score Kuis 2 Image Ilmuwan Muslim 10 Berhasil menyelesaikan puzzle 3 Button menu source image 11 Simbol Hint 4 Header Image 12 Melanjutkan permainan 5 Home Button 13 pause 6 Sound On 14 Button Option 7 Sound Off 15 Restart permainan 8 Back Menu Button

(2)

4.1.2 Implementasi Algoritma

a. Algoritma Linear Congruential Generator

Implementasi algoritma Linear Congruential Generator diterapkan pada pengacakan posisi soal pada game kuis. Berikut tampilan source code algoritma Linear Congruential Generator.

1. public void LCG(){

2. int [] arraysoal = new int[10]; 3. int zi = 10; //Jumlah Bilangan Acak

4. int a = Random.Range(1, 50); //Faktor Pengali 5. int c = 4; //Increment / Penambah

6. int m = 50; //Modulus (Range Tertinggi) 7. int z0 = Random.Range(1, 50);; //Nilai Awal 8. Int a2 = 3; //faktor pengali pengganti 9. Int hasilLCG;

10. hasilLCG = z0;

11. for(int i=0; i<zi; i++){ //Mulai Menjalankan Rumus LCG

12. hasilLCG = (a*hasilLCG + c) %m;

13. if(i==0){arraysoal[i] = hasilLCG}

14. else{

15. for(int j=0; j<i; j++){

16. if(arraySoal[j]==hasilLCG){

17. hasilLCG = (a*hasilLCG + a2) %m;

18. a2 = a2 + j;

19. j = -1;

20. }

21. }arraySoal[i] = hasilLCG;

22. } } }

(3)

Penjelasan source code algoritma Linear Congruential Generator

Tabel 4.2 Penjelasan Algoritma Linear Congruential Generator

b. Algoritma A-Star (A*)

Implementasi algoritma A* diterapkan untuk menyelesaikan persoalan puzzle. Dengan menggunakan rumus heuristik, maka pencarian akan lebih cepat dan optimal. Berikut tampilan source code dan penjelasan algoritma A*.

Baris

Ke - Keterangan

1 Membuat method dengan LCG

2 Membuat arraySoal dengan isi array 10 buah 3 Membuat variabel zi dengan nilai 10

4 Membuat variabel a dengan nilai angka acak dari 1-50 5 Membuat variabel c dengan nilai 4

6 Membuat variabel m dengan nilai 50 7 Membuat variabel z0 dengan nilai 9 8 Membuat variabel a2

9 Membuat variabel hasilLCG

10 Nilai awal hasilLCG sama dengan z0

11 Pengulangan sebanyak 10 kali sesuai dengan jumlah soal 12 Menghitung hasilLCG untuk mendapatkan nomor soal 13 Jika ini iterasi pertama maka masukan ke dalam array [0] 14 Jika bukan iterasi pertama jalankan else

15 Perulangan dengan nilai batas yaitu I dari perulangan sebelumnya 16 Mengecek apakah nilai di dalam array sama dengan hasilLCG 17 Jika ya maka lakukan penghitungan ulang untuk hasilLCG 18 Mengganti nilai faktor pengali cadangan

19 Mengurangi nilai j

(4)

1. while (!kelasPuzzle.AStarSolved && SL.Count > 0){ 2. kelasNode = SL.First ().Value;

3. SL.RemoveAt (0);

4. if (_AreNodesSame (kelasNode, kelasPuzzle.goalNode)) { 5. kelasPuzzle.AStarSolved = true; 6. break;} 7. } 8. Ns = kelasNode.GetSuccessors (); 9. foreach (ClassNode2 SN in Ns){ 10. SN.heuristik = _HitungHeuristik (SN); 11. string key = _KeyBuild (SN);

12. try {

13. KeyInHist = History.ContainsKey (key); 14. } catch { Debug.LogError ("ADA ERROR BROH");} 15. if (KeyInHist){

16. try {

17. CostInHistLarger = (History [key].cost > SN.cost); 18. } catch {Debug.LogError ("ADA ERROR BROH");}

19. if (CostInHistLarger){

20. History [key].cost = SN.cost;

21. SL.Add (SN.heuristik + SN.cost, SN);

22. try {

23. LgotLarger = (SL.Count > maxL);

24. } catch {Debug.LogError ("ADA ERROR BROH");}

25. if (LgotLarger)

26. maxL = SL.Count;

27. }

28. } else {

29. SL.Add (SN.heuristik + SN.cost, SN);

30. History.Add (key, SN);

31. try {

32. LgotLarger = (SL.Count > maxL);

33. } catch {Debug.LogError ("ADA ERROR BROH");} 34. if (LgotLarger)

35. maxL = SL.Count;

36. }

37. } 38. }

(5)

Tabel 4.3 menjelaskan source code dari gambar 4.2

Tabel 4.3 Penjelasan Algoritma A-Star Baris

ke-

Keterangan

1 Melakukan perulangan dengan kondisi: puzzle belum terselesaikan dan isi dalam SortList berjumlah lebih dari 0

2 Memberikan nilai pada kelasNode dengan nilai pada SortList yang berada pada urutan pertama.

3 Hapus isi nilai SortList pada urutan pertama 4 Jika kelasNode sama dengan goalNode, maka

5 Puzzle telah tersusun/terselesikan. Beri nilai true pada kelasPuzzle.AstarSolved

6 Hentikan perulangan while

8 Mencari Successors/turunan dari kelasNode kemudian masukan pada List <ClassNode> Ns

9 Melakukan perulangan sebanyak isi dari list Ns. Masukan tiap isi nilai dalam list Ns kedalam ClassNode SN.

10 Menghitung nilai heuristik node yang berada dalam SN, dengan memanggil method _HitungHeuristik ()

11 Membuat Node yang berupa array menjadi deret string “key” dengan memanggil method _KeyBuild()

12 Menjalankan Try exception handling

13 Jika string key sudah berada pada history maka nilai KeyInHist menjadi true

14 Exception handling catch akan dijalankan jika terjadi error. Jika tidak terjadi error maka kode dalam try yang akan dieksekusi

15 Jika nilai KeyInHist adalah true, maka 16 Menjalankan Try exception handling

17 Mengecek apakah nilai cost dari history.key lebih besar dari SN.cost maka CostInHistLarger (true) atau history.key lebih kecil dari SN.cost maka CostInHistLarger (false)

18 Exception handling catch akan dijalankan jika terjadi error. Jika tidak terjadi error maka kode dalam try yang akan dieksekusi

19 Jika CostInHistLarger bernilai true

20 Update nilai cost dalam History.key dengan nilai cost SN 21 Masukan nilai SN dan juga heuristik+cost kedalam SortList SL 22 Menjalankan Try exception handling

23 Jika jumlah nilai yang berada dalam SortList SL lebih dari maxL maka nilai LgotLager (true) bila tidak maka nilai LgotLager (false)

24 Exception handling catch akan dijalankan jika terjadi error. Jika tidak terjadi error maka kode dalam try yang akan dieksekusi

25 Jika LgotLager bernilai true, maka

(6)

Tabel 4.3 Penjelasan Algoritma A-Star (Lanjutan) 28 Jika nilai KeyInHist adalah false, maka

29 Masukan nilai SN dan juga heuristik+cost kedalam SortList SL 30 Tambahkan SN dan key kedalam List History

31 Menjalankan Try exception handling

32 Jika jumlah nilai yang berada dalam SortList SL lebih dari maxL maka nilai LgotLager (true) bila tidak maka nilai LgotLager (false)

33 Exception handling catch akan dijalankan jika terjadi error. Jika tidak terjadi error maka kode dalam try yang akan dieksekusi

34 Jika LgotLager bernilai true, maka

35 Nilai maxL sama dengan jumlah isi nilai SortList SL Berikut source code dari method untuk menghitung heuristik. 1. private int _HitungHeuristik(ClassNode2 Nh){ 2. int he = 0;

3. for (int i = 0; i < kelasPuzzle.puzzleSize; i++) { 4. for (int j = 0; j < kelasPuzzle.puzzleSize; j++) {

5. if (Nh.nodeState [i, j] != 0) {

6. int noTile = Nh.nodeState[i,j];

7. GetGoalXY(noTile); 8. he = he + Math.Abs(i-goalY) + Math.Abs(j-goalY); 9. } 10. } 11. } 12. return he; 13. }

Gambar 4.3 Source Code Menghitung Heuristik. Tabel 4.4 menjelaskan source code dari gambar 4.3

Tabel 4.4 Penjelasan Source Code Menghitung Heuristik Baris

ke- Keterangan

1 Method _HitungHeuristik tipe int dengan menerima nilai ClassNode. 2 Memberikan nilai pada variabel he = 0

3 Melakukan perulangan untuk menentukan x

4 Melakukan perulangan untuk menentukan y (perulangan bersarang) 5 Jika node [x,y] bukan 0, maka

6 set nilai noTile = Nomor Ubin Puzzle berdasarkan nodeState[i,j] 7 Memanggil method GetGoalXY() untuk mencari posisi tujuan dari

(noTile)

8 Hitung heuristik dari nomor tile puzzle tersebut 10 Mengembalikan nilai he;

(7)

4.1.3 Implementasi User Interface

Berikut merupakan antarmuka yang ada pada game Ilmuwan Muslim : 1. Tampilan Menu Utama

Selang beberapa detik dari splash screen maka akan muncul halaman menu utama. Terdapat 5 button menu dan 3 button untuk setting sound yang tersedia pada menu utama

Gambar 4.4 Antarmuka Menu Utama.. 2. Tampilan Menu Permainan

Pada tampilan menu permainan pilih ilmuwan muslim, user dipersilahkan untuk memilih gambar ilmuwan muslim yang akan dimainkan dalam game puzzle. Gambar 4.5 merupakan tampilan dari antarmuka menu permainan

(8)

3. Tampilan Game Play Puzzle

Pada ketika pemain sudah memilih gambar ilmuwan muslim, maka scene yang ditampilkan merupakan scene permainan game puzzle.

Gambar 4.6 Antarmuka Game Play Puzzle. 4. Tampilan Menu Cerita

Pada tampilan menu Cerita pilih ilmuwan muslim, user dipersilahkan untuk memilih cerita ilmuwan muslim yang akan dibaca, dan juga terdapat pilihan kuis untuk bermain kuis.

Gambar 4.7 Antarmuka Menu Cerita. 5. Tampilan Cerita Ilmuwan Muslim

Gambar 4.8 merupakan tampilan cerita ilmuwan muslim yang telah dipilih.

(9)

Gambar 4.8 Antarmuka Cerita Ilmuwan Muslim. 6. Tampilan Score

Gambar 4.9 merupakan isi dari halaman score yang berisikan informasi score dari game yang telah dimainkan.

Gambar 4.9 Antarmuka Score 4.2 Testing

Testing dalam konteks ini dilakukan oleh pihak internal untuk menguji apakah game sudah layak untuk tahap selanjutnya atau harus mengalami perbaikan.

4.2.1 Formal Details Testing

Pengujian Formal Details dilakukan untuk menilai fungsi fitur (features functional) dan kesulitan atau tantangan permainan (balanced). Untuk menguji

(10)

kualitas kriteria Internal complete, dapat dilakukan secara bersamaan dengan features functional test,

4.2.1.1 Features Functional

Untuk menguji features functional, yaitu melalui playtesting atau memainkan game.

a. Uji Halaman Menu Utama

Tabel 4.4 merupakan Uji fungsi halaman menu utama. Tabel 4.5 Uji Fungsi Halaman Menu Utama

No Skenario Hasil Keterangan

Ya Tidak

1 Klik Tombol Puzzle

2 Klik Tombol cerita 

3 Klik Tombol Score

4 Klik Tombol tentang 

5 Klik Tombol Sound

6 Klik Tombol Musik 

7 Klik Tombol exit

b. Uji Halaman Game Play

Berikut tabel pengujian fungsi halaman game play puzzle. Tabel 4.6 Uji Fungsi Halaman Game Play Puzzle

Berikut tabel pengujian fungsi halaman game play kuis

No Skenario Hasil Keterangan

Ya Tidak

1 Slide Papan Puzzle 

2 Pengacakan Puzzle

3 Klik Button Solve puzzle

4 Timer

(11)

Tabel 4.7 Uji Fungsi Halaman Game Play Kuis

c. Uji Halaman Pilih Cerita

Berikut tabel pengujian fungsi halaman pilih cerita Tabel 4.8 Uji Fungsi Halaman Pilih Cerita

d. Uji Halaman Cerita Ilmuwan

Berikut tabel pengujian fungsi halaman cerita ilmuwan Tabel 4.9 Uji Fungsi Halaman Cerita Ilmuwan

e. Uji Halaman Tentang

Berikut tabel pengujian fungsi halaman Tentang. Tabel 4.10 Uji Fungsi Halaman Tentang

No Skenario Hasil Keterangan

Ya Tidak

1 Klik Tombol Menu Tentang 

No Skenario Hasil Keterangan

Ya Tidak

1 Pengacakan Soal 

2 Next soal setelah terjawab  3 Klik Button jawaban

4 Timer

No Skenario Hasil Keterangan

Ya Tidak

1 Klik Button Kuis 

2 Klik Button All Ilmuwan  3 Klik Button Kategori Ilmuwan

4 Ketik Search Ilmuwan

5 Daftar Ilmuwan 

No Skenario Hasil Keterangan

Ya Tidak

1 Gambar Ilmuwan 

2 Nama Ilmuwan 

(12)

f. Uji Halaman Score

Tabel berikut merupakan uji fungsi halaman Score Tabel 4.11 Uji Fungsi Halaman Score

4.2.1.2 Internal Complete

internal complete akan melaporkan bug report berupa loophole dan dead-end.

a. Loophole adalah kerentanan game untuk di hack atau dimanipulasi menggunakan cheat.

b. Dead-end yaitu kondisi ketika user tidak dapat melanjutkan permainan disebabkan adanya kesalahan pada game.

Tabel 4.12 Uji Internal Complete

No Skenario Hasil Keterangan

Ya Tidak

1 Loophole 

2 Dead-end

4.2.1.3 Balance

Pengujian faktor yang mempengaruhi tingkat keseimbangan challenge permainan agar game memiliki tingkat kesulitan yang beragam. Faktor yang mempengaruhi yaitu algoritma dalam permainan.

a. Pengujian Algoritma A-Star

Algoritma A-Star digunakan sebagai metode penyelesaian permasalahan puzzle. Pengujian algoritma akan dihadapkan pada:

No Skenario Hasil Keterangan

Ya Tidak

1 Button Score Puzzle

2 Button Score Size

(13)

1. Node awal (puzzle yang sudah teracak) sebagai kondisi pertama. 2. Goal node / node tujuan (puzzle yang sudah tersusun) sebagai kondisi

akhir.

3. Berapa langkah dan waktu yang ditempuh untuk menyelesaikan permasalahan puzzle dari node awal menuju node tujuan?

Gambar 4.10 Node Awal Dan Node Tujuan

Gambar 4.11 Penyelesaian Permasalahan Puzzle

Berdasarkan Gambar 4.11 dapat dihitung expanded node berjumlah 2 dan akar/child node yang dibuat berjumlah 5.

1. Algoritma A-Star Pada Puzzle 3x3

Tabel 4.12 hasil pengujian terhadap algoritma A-Star pada game play puzzle 3x3.

(14)

Tabel 4.13 Pengujian Algoritma A-Star 3x3 No Node Awal (Puzzle Teracak) Jumlah Langkah Solusi Waktu (ms) Exp. Node Child Node Berhasil Tersusun Y N 1 11 97 16 53  2 25 160 440 1162  3 21 289 643 1683  4 24 519 2062 5398  5 27 970 4170 11803  6 22 121 156 395  7 24 308 1073 2891  8 19 145 280 751  9 22 248 830 2215  10 23 215 736 1960 

Keterangan: Tabel 4.13 pengujian algoritma A-Star pada puzzle 3x3 secara lengkap dapat dilihat pada LAMPIRAN A.

(15)

Dari tabel pengujian 4.13 dapat diketahui nilai efisiensi algoritma A-Star untuk menyelesaikan permasalahan puzzle 3x3:

1. Jumlah Langkah Solusi

Langkah paling sedikit = 11 langkah Langkah paling banyak = 29 langkah Rata-rata =

=

= 21 langkah

2. Waktu

Nilai waktu tercepat = 97 ms = 0,097 detik Nilai waktu terlama = 1171 ms = 1,171 detik Rata-rata =

=

= 311,42 ms = 0,33142 detik 3. Expanded Node

Nilai terkecil = 16 exp.node Nilai terbesar = 4527 exp.node Rata-rata =

=

= 976 exp.node

4. Child Node

Nilai terkecil = 44 child node Nilai terbesar = 12069 child node Rata-rata =

=

= 2617 child node

5. Tingkat Keberhasilan

× 100%

=

× 100% = 100%

Tingkat keberhasilan pencarian solusi masalah puzzle 3x3 dengan algoritma A-Star adalah 100% dari 50 pengujian. Maka dapat dipastikan

(16)

algoritme A-Star dapat mencari langkah solusi pada permasalahan puzzle dan dapat menyelesaikan dengan waktu yang sangat cepat yaitu dengan rata-rata 311,.42 ms atau 0,33142 detik. waktu tempuh untuk pencarian solusi memiliki kecenderungan akan berbanding lurus dengan expanded node dan juga child node yang dibuat. Semakin banyak expanded node dan child node yang dibuat maka akan semakin bertambah pula waktu tempuh pencarian. Berikut gambar diagram algoritma A-Star pada puzzle 3x3.

Gambar 4.12 Diagram Pengujian Puzzle 3x3 (Langkah dan Waktu) 0 100 200 300 400 500 600 700 800 900 1000 1100 1200 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 W akt u (ms) Langkah Algoritma A* pada Puzzle 3x3

(17)

Gambar 4.13 Diagram Pengujian Puzzle 3x3 (Waktu dan Exp.Node)

Gambar 4.14 Diagram Pengujian Puzzle 3x3 (Exp.Node dan Child Node)

2. Algoritma A-Star Pada Puzzle 4x4

Pengujian pada puzzle 4x4 akan dibatasi karena pencarian algoritma A-Star akan menggunakan memori yang terlalu besar (>300mb) seiring dengan bertambahnya data di dalam list. Ketentuan pada puzzle 4x4 sebagai berikut:

0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 0 50 100 150 200 250 300 350 400 450 500 550 600 650 700 750 800 850 900 95010001050110011501200 Ex pan d ed N ode Waktu (ms) Algoritma A* pada Puzzle 3x3

0 1000 2000 3000 4000 5000 6000 7000 8000 9000 10000 11000 12000 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 C hild Node Expanded Node Algoritma A* pada Puzzle 3x3

(18)

a. Batas expanded node untuk setiap permasalahan yaitu tidak lebih dari 200.000 expanded node.

b. Jika melebihi batas expanded node, maka pencarian algoritma A-Star dinyatakan gagal.

Tabel 4.13 hasil pengujian terhadap algoritma A-Star pada game play puzzle 4x4.

Tabel 4.14 Pengujian Algoritma A-Star 4x4 No Node Awal (Puzzle Teracak) Jumlah Langkah Solusi Waktu (ms) Exp. Node Child Node Berhasil Tersusun Y N 1 125 84720 202.695 625.042  2 37 2705 7.534 23.161  3 118 76902 187.543 574.110  4 111 68003 172.577 517.606  5 92 55739 138.993 412.580  6 86 45749 116.672 350.109  7 90 48511 122.225 365.735 

(19)

Tabel 4.14 Pengujian Algoritma A-Star 4x4 (Lanjutan) No Node Awal (Puzzle Teracak) Jumlah Langkah Solusi Waktu (ms) Exp. Node Child Node Berhasil Tersusun Y N 8 136 93572 224.362 698.119  9 170 120466 295.223 902.488  10 75 38002 98.196 292.821 

Keterangan: Tabel 4.14 pengujian algoritma A-Star pada puzzle 4x4 secara lengkap dapat dilihat pada LAMPIRAN B.

Dari tabel pengujian 4.14 dapat diketahui nilai efisiensi algoritma A-Star untuk menyelesaikan permasalahan puzzle 4x4:

1. Jumlah Langkah Solusi

Langkah paling sedikit = 18 langkah Langkah paling banyak = 122 langkah Rata-rata =

=

= 74 langkah

2. Waktu

Nilai tercepat = 187 ms = 0,187 detik Nilai terlama = 78065 ms = 73,533 detik

Rata-rata =

=

= 40117, 70 ms = 40,1177 detik

3. Expanded Node

(20)

Nilai terbesar = 199.468 exp.node Rata-rata =

=

. . = 102580 exp.node 4. Child Node

Nilai terkecil = 843 child node Nilai terbesar = 611.100 child node Rata-rata =

=

. . = 311873 child node 5. Tingkat Keberhasilan − × 100%

=

× 100% = 68%

Tingkat keberhasilan penyelesaian masalah puzzle 4x4 dengan algoritma A-Star adalah 68% dari 50 pengujian. Tingkat keberhasilan sangat dipengaruhi oleh size/ukuran puzzle 4x4 berjumlah 16 ubin (lebih banyak dari puzzle 3x3 berjumlah 9) dan rumitnya acakan puzzle sehingga algoritma A-Star harus bekerja keras untuk terus melakukan perulangan untuk membuat expanded node dan child node. Semakin lama waktu tempuh proses algoritma A-Star berjalan, maka akan semakin besar pula nilai dari expanded node dan child node yang akan berpengaruh pada memori yang akan digunakan karena data tersebut disimpan di dalam list akan semakin bertambah. Berikut diagram algoritma A-Star pada puzzle 4x4.

(21)

Gambar 4.15 Diagram Pengujian Puzzle 4x4 (Langkah dan Waktu)

Gambar 4.16 Diagram Pengujian Puzzle 4x4 (Waktu dan Exp.Node) 0 10000 20000 30000 40000 50000 60000 70000 80000 0 25 50 75 100 125 Wa ktu (ms) Langkah Algoritma A* pada Puzzle 4x4

0 25000 50000 75000 100000 125000 150000 175000 200000 0 10000 20000 30000 40000 50000 60000 70000 80000 Ex pan d ed No de Waktu (ms) Algoritma A* pada Puzzle 4x4

(22)

Gambar 4.17 Diagram Pengujian Puzzle 4x4 (Exp.Node dan Child Node) b. Pengujian Algoritma Linear Congruential Generator

Pengujian akan dilakukan terhadap 50 soal untuk mendapatkan 10 soal secara acak dan tidak terjadi perulangan nomor soal. Berikut tabel 4.12 hasil pengujian pengacakan algoritma linear congruential generator dan Random Class Unity3D.

Tabel 4.15 Pengujian Algoritma LCG dan Random

ke- Input Nomor Soal Hasil Pengacakan

a c m z0 Output LCG Output Random (Class in Unity3D)

1 11 4 50 5 9-3-37-11-25-29-23-7-31-45 15-45-8-35-47-18-11-47-19-18 2 45 4 50 1 49-9-10-4-34-36-24-37-19-13 48-13-14-44-4-4-12-9-22-26 3 13 4 50 7 45-39-11-47-15-49-41-37-35-9 42-41-9-36-11-15-18-13-25-3 4 40 4 50 7 34-14-13-4-16-44-17-18-24-19 22-4-34-12-29-13-29-2-32-10 5 48 4 50 5 44-16-22-10-34-36-32-40-24-6 9-1-37-17-5-18-39-16-8-28 6 12 4 50 7 38-10-24-42-8-1-4-2-28-40 36-47-47-38-24-32-19-13-4 7 37 4 50 2 28-40-34-12-48-30-14-22-18-20 27-22-12-4-26-30-49-45-1-5 8 9 4 50 5 49-45-9-35-19-25-29-15-39-5 14-13-35-39-27-3-15-18-12-35 9 38 4 50 5 44-26-42-1-4-6-32-20-14-36 44-37-1-47-36-17-43-41-30-8 10 19 4 50 4 30-24-10-44-40-14-20-34-1-4 32-29-10-26-25-32-46-41-7-47 11 49 4 50 3 1-3-4-50-2-5-49-6-48-7 23-33-31-25-10-22-22-13-22-18 12 11 4 50 6 20-24-18-2-26-40-44-38-22-46 77-5-38-49-12-7-21-7-14-8 0 100000 200000 300000 400000 500000 600000 0 25000 50000 75000 100000 125000 150000 175000 200000 Ch ild N ode Expanded Node Algoritma A* pada Puzzle 4x4

(23)

Tabel 4.15 Pengujian Algoritma LCG dan Random (Lanjutan)

ke- Input Nomor Soal Hasil Pengacakan

a c m z0 Output LCG Output Random (Class in Unity3D)

13 17 4 50 6 6-7-23-45-19-27-13-25-29-47 36-3-30-20-21-20-1-49-8-44 14 19 4 50 7 37-7-8-6-18-46-28-36-38-26 2-30-37-35-48-28-23-32-16-38 15 2 4 50 7 18-40-34-22-48-50-4-12-28-10 40-29-45-30-42-31-17-34-14-15 16 12 4 50 7 38-10-24-42-8-50-4-2-28-40 48-2-1-37-49-18-32-27-43-14 17 22 4 50 8 20-44-42-38-30-14-32-18-40-34 6-6-41-24-12-18-42-15-5-38 18 44 4 50 7 12-32-33-6-18-46-28-36-38-26 16-21-41-31-6-26-23-25-3-33 19 41 4 50 3 27-11-5-9-23-47-31-25-29-43 18-39-23-13-46-35-1-9-49-17 20 15 4 50 6 49-14-15-29-39-41-19-42-34-18 28-19-35-5-9-14-22-40-20-28 21 42 4 50 1 46-36-16-26-37-8-40-34-32-48 37-43-31-25-32-24-12-4-25-7 22 28 4 50 6 22-20-14-46-42-30-44-36-12-40 21-43-35-32-44-16-25-28-34 23 29 4 50 1 33-11-23-21-13-31-3-41-42-1 26-41-30-6-4-32-8-3-28-3 24 26 4 50 9 38-42-46-50-4-8-12-16-20-24 34-47-44-24-13-41-26-21-37-29 25 36 4 50 8 42-16-30-34-28-12-36-38-4-48 47-8-36-13-30-21-26-37-42-1 26 18 4 50 9 16-42-10-34-43-28-8-48-18-37 18-44-39-7-10-3-39-22-3-40 27 9 4 50 7 17-7-8-26-38-46-18-16-48-36 14-12-7-36-31-9-11-23-36-8 28 9 4 50 1 13-12-43-41-23-11-3-31-33-1 48-13-41-9-18-1-48-13-30-8 29 33 4 50 3 3-4-36-42-40-24-46-22-30-44 39-36-27-2-19-35-45-9-1-17 30 4 4 50 4 20-34-40-14-10-44-30-24-28-4 1-22-23-43-27-10-44-39-24-11

Output LCG Berhasil 30 Output Random Berhasil 16

Gagal 0 Gagal 14

*Hasil Output dengan warna hitam: Berhasil *Hasil Output dengan warna merah: Gagal

*Hasil Output dengan warna biru menunjukkan terjadinya perulangan nomor soal.

Berdasarkan tabel 4.12 telah dilakukan pengujian terhadap algoritma LCG dan Random (Class yang berada dalam Unity3D) sebanyak 30 kali, dapat diketahui tingkat keberhasilan algoritma LCG dan Random sebagai berikut: LCG = ℎ × 100%

=

× 100% = 100% Random = ℎ × 100%

=

× 100% = 53,3%

(24)

Pengacakan menggunakan Class Random yang berada di dalam Unity3D memiliki tingkat keberhasilan sebesar 53,3%. Sedangkan pengacakan menggunakan algoritma LCG memiliki tingkat keberhasilan sebesar 100%. Ini menunjukkan bahwa modifikasi pada algoritma LCG berjalan dengan baik dengan output hasil pengacakan berbeda-beda dan seolah-olah tidak terjadi perulangan. Dengan membuat modifikasi berupa event handle, LCG dapat menerima inputan variabel yang beragam. Ketika proses pengacakan terjadi persamaan nomor soal pada periode tertentu maka akan dilakukan update terhadap nilai c kemudian melanjutkan kembali proses pengacakan. Dengan demikian pengacakan algoritma LCG tidak lagi tergantung pada variabel-variabel inputan z0 (bilangan pembangkit awal) maupun a (faktor pengali).

4.2.2 Formal Details Table

Berikut tabel formal details yang dibuat berdasarkan hasil uji testing Tabel 4.16 Formal Details Fitur

Fitur

Change Scene Cerita

Menu Utama Game Play Kuis

Menu Bermain Puzzle Pengacakan Soal

Game Play Puzzle Score

Pathfinding Puzzle Tentang

Menu Cerita Sound. Musik

Pilih Ilmuwan Game Rule

Tabel 4.17 Formal Details Kualitas Kualitas

Functional 

Internal Complete

(25)

4.3 Beta

Pengujian beta dilakukan dengan cara menyebar kuesioner menggunakan teknik simple random sampling dimana anggota sample dari populasi dilakukan secara acak tanpa memperhatikan strata yang ada dalam populasi. Kuesioner diberikan kepada generasi muda rentang usia 11 tahun sampai 15 tahun. Kuesioner terdiri dari beberapa aspek penilaian yaitu aplikasi yang menarik (fun), kemudahan dalam menjalankan aplikasi game, dan adanya bug report pada feature availability. Sistem penskoran menggunakan skala pengukuran teknik likert, tabel 4.16 adalah skor untuk jawaban kuesioner.

Tabel 4.18 Skala Kuesioner

Skala jawaban Keterangan Nilai

SS Sangat Setuju 5

S Setuju 4

BS Biasa Saja 3

TS Tidak Setuju 2

STS Sangat Tidak Setuju 1

Sebelum menyelesaikan perhitungan hal yang harus diketahui terlebih dahulu adalah interval (jarak) dan interpretasi persen, agar mengetahui penilaian dengan metode mencari interval skor persen (I).

I = 100 / jumlah skor likert  100/5 = 20

Maka interval nya adalah 20. Jarak dari terendah 0% hingga tertinggi 100%. Secara kontinum dapat digambarkan seperti gambar 4.8.

Gambar 4.18 Skor Kontinum Skor =

(26)

4.3.1 Fun

Pertanyaan yang diajukan kepada responden terkait dengan penilaian aspek aplikasi yang menarik (Fun Criteria).

a. Konten aplikasi (Puzzle, Kuis, Cerita) Tabel 4.19 Skala Kuesioner Fun a

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 11 12 14 3 -

Skor 11 * 5 = 55 12 * 4 = 48 14*3 = 42 3 * 2 = 6 -

Jumlah Skor 151

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 151/200 * 100% = 75.5 %

Berdasarkan hasil persentase nilai di tabel 4.19 dapat disimpulkan bahwa penilaian terhadap layout / konten aplikasi menarik adalah 75.5% (setuju). b. Perpaduan warna tidak mencolok.

Tabel 4.20 Skala Kuesioner Fun b

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 7 17 15 1 -

Skor 7*5 = 35 17*4 = 68 15*3 =45 1*2 = 2 -

Jumlah Skor 150

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 150/200 *100 % = 75%

Berdasarkan hasil persentase nilai di tabel 4.20 dapat disimpulkan bahwa penilaian terhadap perpaduan warna tidak mencolok adalah 75%.

c. Menu, window, icon aplikasi menarik. Tabel 4.21 Skala Kuesioner Fun c

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 10 9 17 4 -

Skor 10*5 = 50 9*4 = 36 17*3=51 4*2=8 -

Jumlah Skor 145

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 145/200 *100 % = 72.5%

(27)

Berdasarkan hasil persentase nilai di tabel 4.21 dapat disimpulkan bahwa penilaian terhadap menu, window, icon aplikasi menarik adalah 75.5%. d. Audio

Tabel 4.22 Skala Kuesioner Fun d

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 6 13 19 2 -

Skor 6*5 = 30 13*4 = 52 19*3=57 2*2=4 -

Jumlah Skor 143

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 143/200 *100 = 71.5%

Berdasarkan hasil persentase nilai di tabel 4.22 dapat disimpulkan bahwa penilaian terhadap perpaduan material seperti audio, video, dll sudah tepat adalah 70.5% (setuju).

Tabel 4.23 Rata-Rata Persentase Dari Pertanyaan Aspek Aplikasi yang Menarik

% Pertanyaan a Pertanyaan b Pertanyaan c Pertanyaan d

75.5 % 75% 72.5% 71.5%

Rata-rata (75.5 + 75 +72.5 +71.5) %/4 = 73.6 %

Dari hasil persentase ke empat pertanyaan yang diajukan menghasilkan rata-rata sebesar 73.6% (setuju). Dan dapat dikategorikan aplikasi ini menarik untuk dimainkan. Digambarkan dengan garis kontinum pada gambar 4.19

Gambar 4.19 Garis Kontinum Rata-Rata Dari Aspek Aplikasi Menarik 4.3.2 Accessibility

Pertanyaan yang diajukan kepada responden terkait dengan penilaian aspek kemudahan dalam pemahaman pengoperasian.

(28)

a. Kemudahan pengoperasian game

Tabel 4.24 Skala Kuesioner Accessibility a

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 14 17 6 3 -

Skor 14*5 = 70 17*4 = 68 6*3 = 18 3*2=6 -

Jumlah Skor 162

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 169/200 *100 = 81%

Berdasarkan hasil persentase nilai di tabel 4.24 dapat disimpulkan bahwa penilaian terhadap kemudahan dalam pengoperasian aplikasi adalah 81%. b. Kemudahan Pemahaman Game Play

Tabel 4.25 Skala Kuesioner Accessibility b

Kode Jawaban SS S BS TS STS

Frekuensi Jawaban 9 21 9 1 -

Skor 9*5 = 45 21*4= 84 9*3 = 27 1*2= 2 -

Jumlah Skor 158

Interpretasi skor Skala tertinggi * jml responden = 5 * 40 = 200 Persentase 158/200 *100 = 79%

Berdasarkan hasil persentase nilai di tabel 4.25 dapat disimpulkan bahwa penilaian terhadap kemudahan dalam pemahaman ketika bermain (Game Play) adalah 79%.

Tabel 4.26 Rata-Rata Persentase Dari Pertanyaan Aspek Kemudahan Aplikasi

% Pertanyaan 1 Pertanyaan 2

81 % 79%

Rata-rata (81 + 79) % / 2 = 80 %

Dari hasil persentase kedua pertanyaan yang diajukan menghasilkan rata-rata sebesar 80%. Dan dapat dikategorikan aplikasi ini mudah untuk dimainkan. Digambarkan dengan garis kontinum pada gambar 4.20

(29)

Gambar 4.20 Garis Kontinum Rata-Rata Dari Aspek Kemudahan Aplikasi

Tabel Formal Details pengujian beta yaitu sebagai berikut. Tabel 4.27 Formal Detail Fitur Kualitas Features  Internal Complete Balance Fun Accessibility 4.4 Release

Aplikasi yang telah dibuat dan sudah siap untuk disebarluaskan maka akan dapat diunggah ke situs (play store), agar siapa saja dapat dengan mudah mengunduh dan menggunakan aplikasi secara gratis.

Gambar

Tabel 4.1 Assets Game
Gambar 4.2 Source Code Pencarian Algoritma A-Star.
Tabel 4.3 menjelaskan source code dari gambar 4.2
Tabel 4.4 Penjelasan Source Code Menghitung Heuristik  Baris
+7

Referensi

Dokumen terkait

Berdasarkan hasil pengujian hipotesis secara parsial maka dapat dilihat bahwa variabel kualitas (X1) tidak berpengaruh signifikan secara simultan dan parsial

Pada penelitian ini akan dilakukan perbandingan model ARCH/GARCH model ARIMA dan model fungsi transfer, dengan IHSG sebagai deret output dan harga minyak mentah dunia

Indikator klinis adalah u Indikator klinis adalah ukuran k kuran kuantitas sbg uantitas sbg pedoman utk mengukur &amp; mengevaluasi pedoman utk mengukur &amp; mengevaluasi

 Jadi, pemanasan global adalah merupakan meningkatnya temperatur di planet bumi secara global, meliputi peningkatan temperatur atmosfir, temperatur laut dan

Hasil dari penelitian menunjukkan berdasarkan model iklan above the line dengan media TV Commersial bahwa variabel yang paling mempengaruhi terhadap intention to buy yaitu

penggunaan bentuk garam di Kabupaten Konawe dan Kota Kendari masih sama dengan hasil survei 2005.~ Bentuk garam khususnya curai dan juga bentuk bata menjadi pilihan

Asosiasi digunakan untuk mengetahui hu- bungan antara pohon damar asam dengan vegetasi lain di sekitarnya, dalam penelitian ini indeks asosiasi dengan vegetasi

Nilai NPCO usahatani bawang merah pada ketiga musim tanam di Kabupaten Majalengka menunjukkan angka yang lebih dari satu (Tabel 4), artinya harga bawang merah di