ada banyak rasa saat coding. ada keringat dan air mata dalam mencoding. keringat saat kau berusaha menyelami makna dalam setiap ilmu coding. dan air mata disaat tiada orang yang dapat membantumu, ketika program dalam keaadaan bugging. apapun rasa dalam mencoding. cobalah untuk mengerjakan sendiri. sampai kau bisa. dan benar-benar bisa.

Thursday, 5 December 2013

Game Edukasi, pentingkah ? Apa manfaat game edukasi ?

Catatan Harian [FP Game] Tim Unyu. Kamis, 5 Desember 2013. Di suatu petang hari
anggota : 

-Kharisma Alivia Nastiti 
-Yoko Mashonia Panjaitan
-Ika Ayu Rahmania Islam

dalam proses pembuatan FP, kami mengawali dengan penggalian ide. dengan terlebih dahulu memahami apa makna dari game edukasi tersebut. Game edukasi, pentingkah ?


berikut adalah makna game edukasi yang kami dapat. Semoga bermanfaat...

Game Edukasi, Pentingkah ?

penggunaan game sebagai sarana pendidikan sebetulnya bukan hal yang keliru, karena game bersifat interaktif sekaligus menghibur. Psikologi kebanyakan manusia itu secara tidak langsung lebih suka bermain daripada belajar serius. dalam game edukasi, pembelajaran diberikan lewat praktek atau learning by doing. jadi pendidikan seharusnya itu menantang dan menyenangkan, tidak membosankan, jadi mendidik lewat game merupakan salah satu alternatif yang tepat.

game edukasi biasanya mucnul dalam bentuk puzzle, sehingga mengasah otak untuk memecahkan masalah-masalah yang terdapat dalam puzzle tersebut. namun kini banyak juga game edukasi yang menggunakan genre lain, karena yang terpenting dalam game edukasi itu adalah mendidik pemain nya untuk lebih mahir dalam sesuatu dan berguna bagi dirinya.

agar sebuah game dapat dikatakan sebagai game edukasi, maka perlu ada beberapa hal penting di dalamnya. apa saja itu ? Yuk kita bahas satu per satu.

1. Produktif
game edukasi harus dapat mengembangkan sikap produktif dari kita para gamer. jadi inti dari game tersebut akan mengena dan tersimpan di memori kita sebagai gamer sehingga suatu saat bisa menginovasi dan merangsang kreativitas kita dalam menciptakan sesuatu yang baru. contohnya game Crazzy Machine, kadang bisa membuat kita memikirkan hal-hal baru yan tidak pernah kita pikirkan sebelumnya.
Crazzy Machine

2. Aktif
game edukasi perlu dapat mengembangkan sikap aktif kita sehingga secara tidak langsung mengembangkan syaraf-syaraf motorik kasar dan motorik halus pada kita sebagai gamer. banyak game-game d konsol Wii dan sekarang yang menggunakan Kinect atau PS move yang mengajak kita untuk aktif.

3. Efektif dan Efisien
sebuah game edukasi tentunya perlu punya dampak dalam kehidupan gamenya, misal pada Brain chalange, lama kelamaan gamer dapat menjadi makin cepat berpikir, atau makin analitif. selain itu, dari sisi waktu, gamer yang ingin segera belajar tidak harus menunggu kelas dimulai, bisa dimainkan kapan saja dan dimana saja sehingga game edukasi bisa dikatakan efisien.

4. Kreatif
melalui game edukasi setidaknya gamer bisa memikirkan beberapa cara lain untuk menyelesaikan masalah, dan tidak harus selalu menggunakan satu macam cara, sehingga merangsang gamer untuk kreatif dan tidak hanya menunggu orang lain menyelesaikannya dan menirunya

5. Menyenangkan
game edukasi tetap adalah game, jangan sampai kehilangan unsur menyenangkan dalam game tersebut karena padatnya isi materi dan monotonnya gameplay. jadi game sebisa mungkin bisa membuat pemain makin oandai perlahan tapi pasti tanpa meninggalkan kesenangan bermain. jadi sebaiknya game edukasi tanpa disadari bermanfaat untuk mengembangkan IQ, EQ, dan SQ. seperti contoh pada Puzzle Hero, disini kita dilatih untuk menyelesaikan puzzle namun dengan unsur Role Playing Game yang kental. sehingga para penggemear RPG tidak kehilangan kesenangannya saat memainkan game ini
Puzzle Hero

baik, kita sudah mengerti apa makna game edukasi itu, mau tahu manfaat game edukasi bagi kita ? yuk kita lihat satu persatu

Manfaat game edukasi

1. mampu melatih konsentrasi
semakin tinggi usia gamer maka semakin terbatas daya tangkapnya. oleh karena itu permainan dan pengajaran yang menggunakan alat dan media yang baik dan tepat akan membantu mempertahankan daya tangkapnya

2. mengajarkan sesuatu dengan lebih cepat dengan waktu relatif singkat
bila pelajaran hanya disampaikan dengan kata-kata saja, mungkin bisa tersampikan atau salah paham. namin dengan bantuan alat dan media yang baik seperti game edukasi, guru menjelaskan dalam waktu cepat dan mencapai indikator keberhasilan belajar yang lebihh cepat.

3. menambah daya paham dan ingatan
dalam menjelaskan sesuatu jika menggunakan media yang tepat akan lebih mudah dimengerti dan memperdalam pengalaman belajar serta ingatan anak. melalui indera penglihatan dan pendengaran anak yang berusia dini dapat memahami perbedaan arti, warna, serta bentuk melalui game edukasi. ini salah satu kegunaan game edukasi bagi para gamer yang berusia muda

4. membuat proses belajar menyenangkan
cara mengajar yang monoton tentu akan membosankan . tetapi bila disampaikan dalam bentuk yang berbeda, media yang berbeda tentu akan menyenangkan dan mampu membangkitkan motivasi belajar kita

5. membangkitkan emosi
menyampaikan suatu materi denga media-media yang menarik tentunya akan berhasil daripada menggunakan ceramah saja. dengan media yang menarik tentu akan membangkitkan emosi kita, perhatian pada materi dan juga pada media tersebut. misal ada game edukasi yang memiliki kisah cerita, tentu akan lebih mudah menyerap inti yang ingin diajarkan

6. mampu mengatasi keterbatasan bahasa
perbedaan kebudayaan sering menimbulkan kesalahpahaman namun dengan media mampu mengatasi kesalahpahaman akan keterbatasan kita untuk mengerti suatu bahasa. beberapa game edukasi juga diarahkan untuk mempelajari bahasa

7. meningkatkan kemampuan komunikasi
dengan permainan edukatif pasti merangsang kita para gamer untuk berhubungan dan berkomunikasi dengan orang lain. paling tidak dengan permainan edukasi akan menimbulkan banyak pertanyaan dan imajinasi yang tentunya akan ditanyakan pada guru, orang tua atau teman kita sesama gamer

jadi jelaslah kalau game edukasi itu cukup penting dalam pembelajaran yang interaktif dan menyenangkan.

sumber belajar : [Kuliah Om Jas] di website : www.duniaku.net -bukan cuman game-

Monday, 2 December 2013

Dr. Panda's Hospital - Take care of animal patient


Dr. Panda's Hospital
Inilah kesempatan untuk menjadi Dokter dan membantu Dokter Panda dalam merawat hewan yang sakit di Rumah Sakit Dr Panda. Kita akan bertemu lebih dari 8 hewan yang berbeda, membantu mereka untuk menuju kamar pasien, mendiagnosa dan mengobati penyakit mereka.

Fitur-fitur Game
- terdapat 10 kegiatan games dokter yang menyenangkan
- terdapat 8 pasien hewan berbeda yang friendly
- peralatan rumah sakit : ruang tunggu, kamar pasien, dan tempat pendaratan helikopter dokter. Salah satu  favorit saya adalah tempat tidur rumah sakit . Setiap tempat tidur memiliki tombol khusus yang memungkinkan Anda untuk swap dan keluar bentuk tempat tidur yang lain . Ada tempat tidur mobil balap , bunga , sebuah kapal roket dan banyak lagi.
- hadiah (rewards) : bila telah berhasil melalui kegiatan medis dengan lengkap, maka akan mendapatkan stiker animal atau stiker medis
- Animasi grafis dan suara yang lucu

Game Play
Pada Dr. Panda's Game kita akan membantu dokter untuk mengobati sejumlah pasien hewan yang berbeda-beda. Pengobatan tersebut terdiri dari :
- Mengukur tekanan darah
- Mengoleskan salep
- Memperbaiki/menyusun kembali tulang yang patah
- Mengambil item atau benda-benda yang tertelan
- Memberikan suntikan
- Menyembuhkan penyakit pencernaan atau yang ada di perut, mata, telinga, mulut dan gigi.

Klasifikasi
GENRE : Education, Puzzle
THEME : health, Life skils
PLATFORM : on Smartphone Android, iOS
DEVELOPER : tribeplay
STATS RATING :

Nilai Edukasi
- mengenal dasar prosedur medis dan anatomi
- belajar akan kebiasaan yang baik (good habits)
- mengenal kuman dan bagaimana cara melawannya
- mengenal alat-alat medis dan cara penggunaannya untuk membantu teman yang sakit

Screenshoot Dr. Panda's Hospital

Ruang Tunggu - Pasien memasuki Hospital melalui sebuah Lift. Kemudian pasien akan diarahkan ke kursi tunggu
Kamar pasien - kita dapat membersih kan kamar, membuang sampang, dan menyiram bunga
Kamar pasien - kita bisa merubah tempat tidur seperti yang pasien suka
Membersihkan kuman yang ada di gigi
Menyikat gigi pasien
Peralatan dokter :3
Memberikan suntikan
Membersihkan kuman-kuman yang ada di telinga
senter sebagai alat untuk melihat kuman yg ada di telinga
Membersihkan kuman-kuman yang ada di perut
reward untuk Dokter :D
Membetulkan tulang yang patah

Play Demo Game

dibawah ini merupakan video Trailer game dan contoh game play Dr.Panda's Hospital
video
Dr. Panda's Hospital Trial game

video
Contoh Permainan Dr. Panda's Game

Direview oleh
      Ika Ayu Rahmania Islam
      nrp. 5111100201 
      Pembuatan Game B

Ayu Fow | Buat Lencana Anda
Kuis Dangdut - Kuis Tebak-tebak Lagu Dangdut
Game "Kuis Dangdut"  merupakan sebuah kumpulan kuis tebak-tebakan judul lagu dangdut yang membantu menyegarkan kembali pikiran anda yang sedang sedih atau gundah. Yang akan menemani anda melewati masa-masa susah maupun senang. Yang selalu akan mengisi waktu ketika menunggu macet di jalan atau pun ketika sedang mengantri menunggu pesanan makan di restoran.

Klasifikasi Game
spesifikasi game "Citty Ville" :
GENRE : Social game sekaligus Construction and Management Simulation game. Citty Ville merupakan game yang dimainkan secara online pada sebuah media sosial dan merupakan sebuah simulasi konstruksi dan manajemen dalam membangun sebuah kota
THEME : Simulasi
PLATFORM : Web game --> Facebook canvas
ERSB RATING : - 
STATS RATING : 100 Million Active Users Every Month

Aturan Main
Nilai Edukasi
menambah wawasan tentang lagu-lagu dangdut Indonesia
mengasah pengetahuan seputar lagu dangdut
mengasah daya ingat tentang judul lagu dangdut
Screenshoot Kuis Dangdut 
Play Demo Game
Direview oleh


Sunday, 3 November 2013

Bahkan, ku tak tahu siapa aku


Aku tak tahu, Siapa aku
juga siapa kamu
Aku selalu bertanya pada diriku
Mengapa aku sangat mencintaimu
Terlalu dalam perasaan ini
Hingga ku tak mampu melogika
Ini itu

Aku tak tahu, Siapa aku
Aku menghabiskan air mataku berbulan-bulan karnamu
Menangisi setiap detik kepergianmu
Dan memaksa air mataku bersembunyi
Saat aku rindu pada kenangan

Aku tak tahu siapa aku
Begitu buta tulinya aku
Mengorbankan semua waktu dan perasaanku
Untukmu,
Yang tak kutahu masih banyak seseorang yang lain
Dibelakangku

Tidak kah kau tahu,
Disaat kau tertawa bahagia
Menuai mekarnya cinta yang baru
Aku menangis karnamu
Tidak kah kau tahu,
Disaat kau menggenggam erat tangan yang lain
Aku menanam setia kepadamu

Tak sedikit pun kau tahu, pengorbananku
Tak sedikit pun kau ingat masa lalu, tentang kita
Siapa yang telah menggenggam erat tanganmu
Ketika kau terjatuh
Siapa yang masih saja peduli terhadapmu
Ketika kau terjatuh

Aku, ataukah dia yang baru
Bahkan kau tak pernah mahu tahu

Aku tak tahu siapa aku

Di malam hari, 3 nopember 2013

Terasa sesak dan pilu

Tuesday, 29 October 2013

Andai sajakku ini dibacanya,


Disuatu ketika,
suatu detik waktu
suatu masa tertentu
Aku sangat membencinya
Aku sangat kecewa terhadapnya
bahkan, aku pernah menyesali pertemuanku
aku pernah berharap tak pernah mengenalnya

tetapi,
apapun itu
suatu ketika
suatu detik waktu
atau suatu masa tertentu
sesungguhnya lisanku bertentangan dengan kata hatiku

apapun masa dan waktu itu,
aku tak pernah benar-benar membencinya
aku tak pernah benar-benar kecewa terhadapnya
sesakit apapun hatiku karnanya
sebesar apapun kecewaku terhadapnya
aku tak pernah benar membencinya

andai kau baca sajakku ini,
aku ingin menyampaikan hal terdalam dihatiku
aku sangat mencintaimu
begitu besar sayangku padamu
hingga sebesar apapun kecewaku
aku tak pernah bisa membencimu

aku ingin kau tahu
aku selalu mengingat nasehatmu
aku selalu ingat katamu saat kau marah
aku selalu ingat sedihmu terhadapku
aku, selalu teringat tentangmu
dalam kediaman sela-sela nafasku

andai kau tak pernah membaca sajakku ini,
aku hanya ingin kau tahu
semoga angin membisikkanmu sesuatu
semoga hujan meneduhkanmu untuk sesuatu
dan semoga alam memberitahumu, sesuatu
bahwa aku tak pernah benar membencimu
aku selalu mengingatmu
hingga dalam merindukan amarahmu
aku menangis pilu
sendu membisu
tiada orang pun tahu

Di suatu waktu, 29 Oktober 2013
dalam lamunan aku merindukan amarahmu

Friday, 18 October 2013

Ketika Kusadari Apa arti kuliahku


Aku baru mengerti, hakikat sekolah dan pendidikan
sekolah dan pendidikan bukanlah sekedar sarana formalitas
bukanlah kegiatan yang memaksakan
dan bukanlah sebuah masa yang hanya mengajarkan isi buku saja
tetapi pendidikan adalah dasar dari pembelajaran kehidupan
menyiapkan kematangan kepribadian
dan memapankan mental

Aku baru mengerti hakikat sekolah dan pendidikan
melihat mereka kawan-kawan seperjuangan almamaterku
adalah mereka yang menyelami sekolah dan pendidikannya dengan keikhlasan
adalah mereka yang memulai jihadnya dalam pendidikan dengan keikhlasan
adalah mereka yang tak pernah memandang untung ruginya ketika menuntut ilmu
adalah mereka yang selalu beristiqomah dan ikhlas dalam menempuh pendidikan
mereka, yang perjalanannya disebut tak mudah

Aku baru mengerti hakikat sekolah dan pendidikan
bagian dari perjalanan dan perjuangan hidup
hingga suatu hari aku bertemu pria seorang BUMN
yang memberi kesan tersendiri
tentang sebuah perjuangan dan kerja keras semasa kuliah
Aku baru mengerti,
Kuliah bukanlah sebuah pendidikan yang berdasarkan pada isi buku saja
Tetapi pada menyiapkan mahasiswa pada dunia pekerjaan

maka selagi engkau masih dalam perjuangan perkuliahan
Belajarlah dengan penuh kesungguhan
Tangkaplah setiap makna dan arti
Dengarkan dengan segala kerendahan hati
Dan ikhlaslah dalam setiap memulai
Maka ilmumu akan begitu berarti
Siap menuju pada medan yang sesungguhnya,
Dunia pekerjaan


-Di suatu kota, 18 Oktober13-

Thursday, 10 October 2013

Malam, dengan puisinya yang kurajut tanpa air mata

Malam ini, aku sangat ingin menangis. Ketika tak ada tempat lagi untuk bercerita. Ketika tak ada lagi ruang dan waktu untuk meneteskan air mata. hanya puisi inilah yang dapat menceritakan ketika air mata tak mampu lagi berbicara. hanya puisi ini yang dapat aku tulis..


Cobalah, melihat sesuatu dari sudut pandang yang berbeda
Bahwa tak selamanya apa yang kau rasakan itu benar
bahwa tak sepenuhnya apa yang dilakukannya adalah selalu salah
bisa jadi, kamu menduga duga atas apa yang belum tentu benar
yang semestinya ia telah melakukan benar
bisa jadi, kamu memutuskan suatu keputusan
tanpa memahami bagaimana lubuk dalam perasaannya
Menangiskah ?
Menjeritkah ?
kamu tetap tidak perduli
bagaimana bila kamu yang berada di posisi dia
belum tentu ketabahan dan ketegaran akan selalu menemanimu

Jangan terus menerus mencaci atau bahkan memaksanya
sesuatu yang, seharusnya memang fitrah manusia
untuk mencintai dan menyayangi
Jangan terus menerus memeranginya dalam diam
ia hanya manusia biasa, dengan segala kesederhanaan dan keluguan
hanya seorang manusia biasa
Jangan terus menerus membencinya
sepenuh setiap engkau mengingat keburukannya
bisa jadi, di lain tempat dan waktu
seorang yang kau benci itu, selalu mendoakan atas kebaikan-kebaikanmu
sedangkan kamu, masih terus menghujat dan membencinya

Cobalah melihat dari sudut pandang yang berbeda
bagaimana perasaanya dan cobalah mengerti sedikit saja
bisa jadi, dulu hingga kini ia masih membendung air matanya
yang bingung entah diceritakan kepada siapa
bisa jadi, semua harapan dan semangatnya patah
tanpa kau tahu bila rasanya seperti bunga yang dipetik tangkainya
tak layu namun mati
tanpa kau tahu bila rasanya seperti burung dengan sebelah sayap
tak mati namun hilang ditelan peradaban
cobalah melihat dari sudut pandang yang berbeda
bagaimana.. rasanya..

11-Oct-13

Saturday, 28 September 2013

String Matching - Using Brute Force and Horspool Algorithm

Implementasi Brute Force Algorithm

Algoritma :
Algoritma Bruto Force untuk String Matching saya ambil dari Buku Levitin Bab 3.2. berikut adalah algoritmanya
ALGORITHM BruteForceStringMatch(T[0..n1],P[0..m1])
//Implements brute-force string matching
//Input: An arrayT[0..n−1] of n characters representing a text and
// an array P[0..m−1] of m characters representing a pattern
//Output: The index of the first character in the text that starts a
// matching substring or−1 if the search is unsuccessful
fori 0 to nm do
j0
while j<m and P[j]=T[i+j] do
jj+1
if j=m return i
return1

Implementasi Program (source code):
#include<iostream>
#include<cstdlib>
#include<string>

using namespace std;

int main()
{
 //input
 string pattern;
 string text;

 //output
 int i, ketemu;

 int j;

 cout << "Masukkan Text : " << endl;
 getline(cin, text); 
 cout << endl;

 cout << "Masukkan Patern" << endl;
 getline(cin, pattern);
 cout << endl;

 int m = pattern.size();
 int n = text.size();

 for(i=0; i<n-m+1; i++)
 {
  j=0;
  //cout << "hai"<< endl;
  while( j<m && pattern[j]==text[i+j])
  {
   j++ ; //cout << "hei"<< endl; 
  }
  if(j==m) break;
 }
 //cout << j << endl;
 if(j==m) cout << "String cocok pada indeks Text ke " << i << endl;
 else cout << "STring tidak ditemukan" << endl;
  

 system("pause");
 return 0;
}

Penjelasan Program :

Input adalah sebuah string Text yaitu string yang berisi kalimat dan sebuah string pattern, yaitukata yang akan dicari dari Text tersebut.
Output adalah sebuah indeks pada Text yang cocok dengan huruf pada string pattern tersebut

cout << "Masukkan Text : " << endl;
       getline(cin, text);
       cout << endl;

       cout << "Masukkan Patern" << endl;
       getline(cin, pattern);
       cout << endl;

kemudian kita lakukan bruto force, yaitu dengan mengecek setiap indeks I pada Text apakah terdapat huruf yang sama dengan huruf –huruf pada pattern. Pengecekan dilakukan setiap huruf pada pattern, bila huruf pertama sama maka akan dilanjutkan mengecek ke huruf pattern selanjutnya. Bila mismatch, maka akan terjadi shift satu ke kanan.
int m = pattern.size();
       int n = text.size();

       for(i=0; i<n-m+1; i++)
       {
              j=0;
              //cout << "hai"<< endl;
              while( j<m && pattern[j]==text[i+j])
              {
                     j++ ; //cout << "hei"<< endl;    
              }
              if(j==m) break;
       }

Jika jumlah huruf yang sama dengan pattern adalah sebesar jumlah huruf pada pattern, maka akan keluar output indeks letak huruf paling kiri pada text yang sama dengan pattern. Jika tidak, maka akan keluar -1 atau disini saya tampilkan “string tidak ditemukan”
       if(j==m) cout << "String cocok pada indeks Text ke " << i << endl;

       else cout << "STring tidak ditemukan" << endl;



Implementasi Horspool Algorithm

Algoritma :
Algoritma Horspool untuk String Matching saya ambil dari Buku Levitin Bab 7.2.2. berikut adalah algoritmanya


ALGORITHM ShiftTable(P[0..m1])
//Fills the shift table used by Horspool’s and Boyer-Moore algorithms
//Input: PatternP[0..m−1] and an alphabet of possible characters
//Output:Table[0..size−1] indexed by the alphabet’s characters and
// filled with shift sizes computed by formula (7.1)
fori 0tosize1doTable[i]m
forj0tom2doTable[P[j]]m1j
returnTable

ALGORITHM HorspoolMatching(P[0..m1],T[0..n1])
//Implements Horspool’s algorithm for string matching
//Input: PatternP[0..m−1] and textT[0..n−1]
//Output: The index of the left end of the first matching substring
// or−1 if there are no matches
ShiftTable(P[0..m1]) //generateTableof shifts
i m1 //position of the pattern’s right end
whilein1do
k0 //number of matched characters
whilekm1andP[m1k]=T[ik]do
kk+1
ifk=m
returnim+1
elsei i+Table[T[i]]
return1

Implementasi Program(source code) :


#include<iostream>
#include<string>
#include<cstdlib>

using namespace std;

//inisialisasi global sebuah tabel sebesar banyaknya huruf alfabet
int tabel[26];

//fungsi tabel yang menyimpan banyaknya shift
int* shiftTable(string pattern)
{
 int m = pattern.size(); //menghitung jumlah panjang pattern
 for(int i=0; i< 256; i++ ) //setiap indeks pada tabel diisi dengan besar panjang pattern
 {
  tabel[i]=m;
 }
 for(int j=0; j< m-1; j++) //untuk mengisi besar shift setiap huruf pada pattern
 {
  tabel[pattern[j]]=m-1-j;
 }
 return tabel;

}

//fungsi horspool
int horspool(string pattern, string text)
{
 shiftTable(pattern); //memanggil fungsi shift table

 int m = pattern.size(); //menghitung panjang string pattern
 int n = text.size(); //menghitung panjang string text

 int i,k;

 i = m-1;

 while(i <= n-1)
 {
  k=0;
  while( k<= m-1 && pattern[m-1-k]==text[i-k] ) //jika huruf pada indeks pattern sama dengan 
  {           //indeks huruf pada Text
   k++ ;

  }
  if(k==m) //apabila jumlah k sama dengan jumlah pattern
  {
   return i-m+1; //menampilkan indeks pada string Text
  }
  else
  {
   i = i + tabel[text[i]];
  }
 
 }
 return -1;
}
int main()
{
 string pattern;
 string text;

 cout << "masukkan Text : " << endl;
 getline(cin, text);
 //cout << text << endl;
 cout << endl;
 cout << "masukkan Pattern : " << endl;
 getline(cin, pattern);
 //cout << pattern << endl;

 int cek = horspool(pattern, text);
 cout << endl;
 //cout << cek;
 if (cek == -1 )
 {
  cout << "String tidak ada " << endl;
 }
 else
 {
  cout << "String cocok dengan Text pada indeks ke : " << cek << endl;
 }

 system("pause");
 return 0;
}

Penjelasan Program :

Pertama membuat shift table terlebih dahulu, yaitu sebuah array integer yang menyimpan informasi berapa jumlah shift bila terjadi mismatch. Untuk shift selain huruf yang ada di pattern, maka akan di default besar shift sejumlah size pattern tersebut

Untuk pengisian shift huruf pada patern yaitu dimulai  dengan aturan m-1-j; m adalah lebar pattern, dan j adalah posisi huruf tersebut pada pattern
int* shiftTable(string pattern)
{
       int m = pattern.size(); //menghitung jumlah panjang pattern
       for(int i=0; i< 256; i++ ) //setiap indeks pada tabel diisi dengan besar panjang pattern
       {
              tabel[i]=m;
       }
       for(int j=0; j< m-1; j++) //untuk mengisi besar shift setiap huruf pada pattern
       {
              tabel[pattern[j]]=m-1-j;
       }
       return tabel;

}

Sama dengan algortima bruteforce sebelumnya, namun disini kaidah shift nya tidak mencoba satu-satu setiap huruf yang ada pada Text, melainkan berdasarkan table shifTable yang telah dicari sebelumnya. Sehingga setiap huruf mempunyai shift tersendiri berdasarkan perhitungan.

int horspool(string pattern, string text)
{
       shiftTable(pattern); //memanggil fungsi shift table

       int m = pattern.size(); //menghitung panjang string pattern
       int n = text.size(); //menghitung panjang string text

       int i,k;

       i = m-1;

       while(i <= n-1)
       {
              k=0;
              while( k<= m-1 && pattern[m-1-k]==text[i-k] ) //jika huruf pada indeks pattern sama dengan
              {                                                                          //indeks huruf pada Text
                     k++ ;

              }
              if(k==m) //apabila jumlah k sama dengan jumlah pattern
              {
                     return i-m+1; //menampilkan indeks pada string Text
              }
              else
              {
                     i = i + tabel[text[i]];
              }
      
       }
       return -1;

}

Friday, 27 September 2013

"Citty Ville" - My Best Game Ever (review)

Alasan menjadi My Favorit game :)
Hai, saya akan memperkenalkan sebuah game favorit saya, yaitu "Citty Ville". "Citty Ville" kini menjadi bagian favorit game saya karena permainanya mudah, menyenangkan, tidak membosankan dan penuh imajinatif. Selain itu, game ini memiliki desain gambar yang lucu, variasi tantangan dan level, serta adanya sistem "high Level" yang membuat para pemainnya untuk berlomba-lomba menaikkan level mereka.

Menjadi Walikota adalah cita-cita saya, oleh karena itu dalam game Citty Ville ini sangat menarik hati saya, dimana setiap player akan bertindak sebagai Walikota sebuah kota impiannya. sehingga mereka dapat membangun dan mengelola kota impiannya tersebut.

Game ini mewakili asa dan angan-anganku :) 
Citty Ville Menjadi Daftar Favorit dalam akun facebook :)


Tentang Citty Ville

Citty Ville merupakan sebuah permainan online yang mengusung tema simulasi membangun kota, konstruksi dan manajemen kota. Citty Ville adalah game yang diproduksi oleh Perusahaan Zynga.
Didalam permainan ini, memungkinkan kita untuk menjadi walikota di sebuah kota virtual, dimana kita diberi tugas untuk membangun dan mengawasi perkembangan kota agar kota yang semula kecil menjadi sebuah kota metropolitan yang besar. Pemain dapat menciptakan pembangunan-pembangunan seperti perkantoran, pertokoan, perumahan, apartemen, dan juga pabrik. Selain membangun gedung dan bangunan lainnya, pemain dapat menanam tanaman di kebun sebagai bahan pembangunan. Pemain juga dapat mengunjungi kota tetangga yang tidak lain adalah teman facebook mereka.

Klasifikasi
spesifikasi game "Citty Ville" :
GENRE : Social game sekaligus Construction and Management Simulation game. Citty Ville merupakan game yang dimainkan secara online pada sebuah media sosial dan merupakan sebuah simulasi konstruksi dan manajemen dalam membangun sebuah kota
THEME : Simulasi
PLATFORM : Web game --> Facebook canvas
ERSB RATING : - 
STATS RATING : 100 Million Active Users Every Month
Monthly Active Users (Count By SocialBakers | Aplication Statistic and Facebook Developer)

Daily Active Users (Count By SocialBakers | Aplication Statistic and Facebook Developer)
Monthly Active Users in SEPTEMBER 

AGE LIMITATION : Everyone (10+)

Aturan Main

CityVille menggunakan sistem pembatasan energi, pemain diajak untuk dapat mengatur strategi agar dapat menggunakan energi tersebut semaksimal mungkin.
Dengan menggunakan sistem material, beberapa bangunan yang hendak dibangun oleh pemain membutuhkan bantuan dari pemain lainnya.
Sistem mata uang yang digunakan ada dua, yaitu koin dan kas. Koin adalah mata uang untuk menjual dan membeli barang-barang umum dan koin juga merupakan mata uang ketika pemain mendapatkan hasil dari bangunan. Kas merupakan mata uang digunakan untuk membeli barang-barang esklusif dan untuk membayar material ketika pemain enggan untuk meminta tolong pada pemain lainnya.
Sistem lain yang digunakan didalam permainan ini adalah sistem waktu. Ketika pemain menanam tanaman, memesan pasokan, dan berlayar, ada syarat waktu yang ditentukan oleh CityVille sampai pemain bisa mendapatkan pasokan mereka

Nilai Edukasi

a. Melatih daya kreasi dan estetika merancang sebuah kota
b. Sambil belajar tentang tata letak kota
c. Melatih jiwa enterprenur atau wirausaha dalam mengembangkan gedung-gedung usaha dan toko yang ada di kota

Game dinilai dari Realitas Random

a. Adanya pencuri dan bandit yang berkeliaran disekitar kota
b. Adanya musim dan cuaca yang berubah-ubah tergantung bulan. Bila musm hujan tiba, maka kota kita akan hujan dan penduduk disekitar kota akan memakai payung
c. Adanya kunjungan para turis yang berasal dari luar kota. Turis-turis tersebut mengelilingi kota menggunakan minibus

Game dinilai dari realitas Sebab Akibat
a. Untuk memiliki pendapatan kota, maka kita harus pandai mengolah usaha, seperti : mengambil pajak dan sewa rumah penduduk, membangun gedung usaha atau toko, dan menanam tanaman di kebun
b. Jika kota tidak dilengkapi kantor polisi, maka akan banyak bandit dan pencuri saat kita sedang offline

Game dinilai dari Realitas Fakta
a.   Bangunan yang dibangun mendekati fakta
b. Para penduduk membayar pajak rumah atau biaya sewa rumah
c. Gedung usaha dan toko akan menghasilkan pendapatan untuk kota
d. Gedung usaha dan toko-toko membutuhkan bahan baku yang diambil dari gudang
e.  Gudang milik kota merupakan simpanan hasil-hasil panen kebun
f.  Kota virtual pada Citty Ville dirancang mendekati kota pada faktanya, yaitu seperti membutuhkan dibangunnya alat-alat kota yaitu gedung pemerintahan, kantor pos, kantor polisi, kantor paspor dan lain-lain
g. Kota memiliki tempat wisata dan tempat bermain yang menghasilkan banyak pengunjung
h. Semakin mewah fasilitas rumah, gedung, atau tempat wisata maka semakin mahal juga biaya pembelian dan pembangunannya
i. Untuk pembelian tanah membutuhkan sejumlah uang dan beberapa dokumen

Game dinilai dari realitas Fisika dan Biologi

a. Jika musim hujan tiba, maka akan turun rintik hujan di kota
b. Jika tanaman di kebun tidak segera dipanen, maka tanaman akan busuk dan layu

Screenshoot Kota Kecil Ayu di "Citty Vile"
Kota kecil Ayu
Membangun gedung


Pemberitahuan munculnya Bandit dalam kota
















Pertolongan teman dari kota tetangga
Panen hasil perkebunan
Mendapatkan penghasilan dari gedung-gedung usaha dan toko-toko
Area alat-alat kota seperti gedung pemerintahan, kantor paspor, gedung cuaca, kantor polisi, dan sebagainya
Area Pertokoan, Restoran, dan gedung-gesung usaha
Wahana permainan dan tempat wisata kota yang dekat di daerah pegunungan 
Area Pemukiman, Perumahan, dan Villa mewah
Kota Metropolitan (Pusat Kota) yang masih dalam tahap pembagunan
Sistem tantangan yang terdapat di Citty Ville

Play Demo Game



direview oleh :

Ika Ayu Rahmania Islam
nrp. 5111100201
Pembuatan Game B

Ayu Fow | Buat Lencana Anda