Rabu, 17 Oktober 2012

Freezing The Scene Part 3


Perlunya Perlindungan Bukti
Dari penyelidikan yang dilakukan oleh Electronic Privacy Information Center (EPIC), “Sejak 1992 jumlah kasus kejahatan komputer telah meningkat tiga kali. Dari 419 kasus yang diajukan oleh penuntut hanya 83 yang dieksekusi karena kurangnya bukti. Saat suatu kasus diajukan bisa memakan waktu persidangan sampai lima tahun. Alasannya adalah bukti yang dikumpulkan pada kasus kejahatan komputer sangat kompleks.”
Banyak kasus tidak dibawa ke pengadilan karena barang bukti yang tidak memadai. Bukti harus ditangani secara hati-hati untuk mencegah penolakan dalam pengadilan, karena rusak atau mengalami perubahan. Barang bukti komputer merupakan benda yang sensitif dan bisa mengalami kerusakan karena salah penanganan. Ahli forensik harus menanganinya sedemikian sehingga dijamin tidak ada kerusakan atau perubahan.
Ahli forensik bisa mengidentifikasikan penyusupan dengan mengetahui apa yang harus dicari, dimana, dan bukti lain yang diperlukan. Informasi harus mencukupi untuk menentukan apakah upaya penegakan hukum harus disertakan. Proteksi barang bukti merupakan suatu hal yang krusial. Barang bukti tidak boleh rusak atau berubah selama tahapan dan proses recovery dan analisis, juga diproteksi dari kerusakan virus dan mekanis/elektromekanis. Proses harus dilakukan secepat mungkin setelah insiden supaya detilnya masih terekam baik oleh mereka yang terlibat. Hal itu bisa dimulai dengan catatan secara kronologis. Misalnya tentang tanggal, jam, dan deskripsi komputer. Bila menganalisa server mungkin akan diperiksa event log. Karena user bisa mengubah waktu dengan mudah, perhatikanlah bagaimana kecocokannya dengan kronologi kejadian. Buka komputer dan lihat apakah ada lebih dari satu hard disk, catat peripheral apa yang terhubung, termasuk nomor seri hard disk.

Beberapa ancaman terhadap barang bukti :
·      Virus – Bisa mengakibatkan kerusakan atau perubahan file.
·      Prosedur cleanup  – Adanya program atau script yang menghapus file saat  komputer shutdown atau start up.
·      Ancaman eksternal, misal dari lingkungan yang tidak kondusif sehingga merusak data. Seperti tempat yang terlalu panas, dingin, atau lembab.

udd Robbins dari “An Explanation of Computer Forensics” mensyaratkan hal berikut:
·      Barang bukti tidak rusak atau terpengaruh oleh prosedur yang dipergunakan untuk penyelidikan.
·      Tidak terinfeksi virus komputer selama proses analisis.
·      Bukti-bukti yang relevan dan ekstraksinya, ditangani dan dilindungi dari kerusakan mekanis atau elektromekanis lebih jauh.
·      Penerapan pemeliharaan
·      Membatasi dampak pada operasi bisnis
·      Semua informasi client yang diperoleh selama eksplorasi forensik dihargai secara etis dan tidak diumumkan

 Beberapa faktor yang tidak berkaitan secara fisik dengan barang bukti :
·      Rangkaian pemeliharaan - Merupakan rekaman penanganan barang bukti dari penyitaan sampai di bawa ke pengadilan. Dokumentasinya harus menyatakan siapa, apa, di mana, kapan, mengapa dan bagaimana. Lebih rinci hal itu akan lebih baik.
·      Batasan waktu bisa sangat krusial pada beberapa penyelidikan. Khususnya kasus yang melibatkan kehidupan manusia. Misalkan saja bila bukti yang ada berkaitan dengan rencana serangan teroris.
·      Informasi yang tidak diumumkan - Informasi yang berkaitan dengan client


Prioritas pengumpulan data harus dilakukan berdasarkan volatilitas :
1.    Register, peripheral memori, dan cache
2.    Memori (kernel dan fisik)
3.    Keadaan jaringan
4.    Proses yang sedang berjalan
5.    Disk
6.    Floppy, media backup
7.    CD ROM, printout

Dengan menganalogikan prinsip ketidakpastian Heisenberg yaitu “Melakukan pengujian sekumpulan atau suatu bagian dari sistem akan menimbulkan gangguan pada komponen lainnya. Sehingga akan mustahil untuk melakukan capture keseluruhan sistem pada satu saat saja.” Mengumpulkan barang bukti sangat memakan waktu. Banyak barang bukti dalam bentuk terenkripsi atau hidden. Terdapat program yang dipergunakan untuk recovery password dari perusahaan software yang dipercaya. Program untuk mengeksploitasi kelemahan pada beberapa sistem bisa didownload dari internet atau diperoleh dari penegak hukum. File bisa disimpan dengan ekstension yang menipu atau gambar yang disimpan seperti dokumen teks, misal kasus gambar porno anak-anak yang disimpan dalam nama README.TXT di folder setup.


          Ahmad Zumena Part 1

Rabu, 27 Juni 2012

Phase II: Spacewar to Atari


Titik balik dari perkembangan industri permainan muncul di sekitar tahun 1960 ketika itu Steve Russell, seorang pelajar MIT, membentuk sebuah sandi sederhana pada permainan yang membutuhkan dua orang pemain pada digital PDP-I di komputer mini. Permainan ini dikenal sebaga Spacewar, permainan ini memperlihatkan dua bentuk ruang angkasa dalam satu layar. Dimana setiap ruang angkasa dapat bergerak secara menyamping sambil menyerang pemain lain. permainan ini mempergunakan teknologi baru dan di dalamnya terdapat

·         Kompetisi antar lawan
·         Peraturan tentang cara bertindak/bermain
·         Syarat dan kondisi memperoleh kemenangan

Sebenarnya struktur permainan ini tidak jauh berbeda dengan permainan tradisional lainnya seperti catur. Perbedaan utama hanya terdapat teknologi yang digunakan. Seiring berjalannya waktu, teknologi ini terus berkembang semakin maju dan kompleks sehingga permainan yang lahir pun berkembang semakin kaya dan unik. Kemudian untuk struktur aturan yang ada, kurang lebih sama.

Pada pembahasan kali ini, kita akan coba memfokuskan pembahasan pada dua pelopor industri yang terinspirasi akan konsep elegan ini. Pertama ialah Nolan Bushnell. Ia menunjukkan ketertarikannya pada permainan saat sedang menjalankan studi tekniknya di Utah University. Nolan melihat permainan komputer, Spacewar, layaknya sebuah arcade games, dimana seseorang perlu membayar terlebih dahulu untuk dapat bermain setiap permainannya. Beberapa tahun mendatang, gambarannya tersebut akan terwujud ketika dia berhasil menemukan Atari dan menciptakan koin pertama yang dapat dioperasikan di mesin.

Setelah mengamati Spacewar, Bushnell mulai bekerja di suatu tempat dimana nantinya ia mempersembahkan sebuah mesin dimana permainan yang ada dapat dimainkan. Permainan pertamanya sebelum Atari ialah Computer Space, yang juga merupakan versi awal dari Space war yang ia bentuk menjadi perangkat keras dan menghubungkannya ke televisi. Nantinya ide tentang Computer space ini dibeli oleh sebuah perusahan arcade games bernama Nutting Associates, yang juga mempekerjakan Bushnell sendiri untuk mengurus dan mengawasi produksi yang ada. Pada tahun 1971, 1500 mesin Computer space diproduksi dan dipasang di Amerika Serikat, namun ternyata para pemain merasa mesin tersebut sulit untuk dioperasikan sehingga menimbulkan sambutan yang kurang hangat di masyarakat. Atas hal tersebutlah, Bushnell meninggalkan Nutting dan mencoba menciptakan ide baru dalam permainan. Akhirnya, ia membentuk Atari di tahun 1972 bersama dengan Ted Dabney, dimana nama permainan tersebut diambil dari nama sebuah permainan Jepang, yaitu Go. Pergerakan permainan Atari ini hampir sama dengan permainan catur.

Kemudian, disisi lain ada Ralph Baer yang juga merupakan perintis permainan dalam layar televisi dari tahun 1950an. Pada tahun 1966, ia telah meninggalkan Loral dan bekerja untuk Sanders Associates, sebuah kontraktor tentara. Ia diberikan kebebasan untuk dapat meneliti dan mengembangkan idenya yang berkaitan dengan perangkat televisi, yang nantinya ia patenkan di tahun 1968. Ralph Baer melihat permainan elektronik sebagai cara lain untuk menggunakan perangkat televisi, nantinya ia berhasil menciptakan dua permainan dasar (catur dan tenis) yang dapat dimainkan di layar televisi. Pada tahun 1970, perusahaan Magnavox memberikan izin atas teknologi yang diciptakan oleh Baer ini. Di bawah bimbingan Baer, pengembangan permainan elektronik pun dimulai. Akhirnya pengembangan dan penelitian yang ada akan melahirkan Magnavox Odyssey di tahun 1972, merupakan tahun yang sama dimana Atari muncul.

Di akhir 1972, bisnis permainan elektronik menguasai dunia. Permainan Atari pertama, Pong, sangat laku ditingkat lokal dan menjadi salah satu contoh permainan mesin koin pertama yang sukses. Dalam dua minggu saja, mesin Pong di California pecah karena banyaknya koin yang terkumpul di dalamnya. Hal tersebut menjadi sesuatu yang sulit dipercaya bagi Bushnell. Pada waktu yang bersamaan, Magnavox juga berhasil menjual 100,000 unit Odyssey. Peningkatan tersebut tentunya berdasarkan penjualan dan laporan dari toko resmi Magnavox.

Di periode ini, dua bisnis yang berbeda bentuk bermunculan, yaitu ada arcade games dimana untuk memainkannya harus membayar terlebih dahulu, dan disisi lain ada permainan yang berbasis sistem rumah, yaitu permainan dibeli terlebih dahulu dan nantinya dapat dimainkan berulang kali. Keduanya terus dikembangkan dan masih hidup hingga saat ini. Tren ketiga dari bentuk permainan yang ada belum bermunculan, mungkin saja permainan yang ada nantinya tidak perlu untuk dimainkan menggunakan perangkat keras lagi.  

Selasa, 17 April 2012

Review Game - NFS Hot Pursuit



Game Need for Speed: Hot Pursuit ini adalah game balap yang dikembangkan oleh Criterion Games dan diterbitkan oleh Electronic Arts. Game ini dirilis pada bulan November, 2010 yang lalu dan tersedia untuk berbagai platform yaitu Windows, PlayStation 3, Xbox 360, bahkan ada versi untuk iOS dan Wii. Game Need for Speed: Hot Pursuit ini memiliki rating PEGI 7. Di game ini kita balapan di sebuah tempat bernama Seacrest County, disitu kita bisa melakukan berbagai macam balapan, kita juga bisa balapan secara online dengan pengguna lain tapi untuk yang versi Wii tidak memiliki fitur ini. Di game Need for Speed: Hot Pursuit ini kita bisa berperan sebagai yang dikejar atau yang mengejar. Beberapa merk mobil yang ada di game Need for Speed: Hot Pursuit ini antara lain Bentley, Dodge, Jaguar, Aston Martin, Bugatti, McLaren, Shelby, Maserati, Alfa Romeo, dan lain sebagainya.

Minimum Requirement “Need for Speed: Hot Pursuit”

Sistem Operasi: Windows XP (SP3) / Windows Vista / Windows 7.

Processor: Intel Core 2 Duo 1.8 GHZ atau AMD Athlon X2 64 2.4 GHZ.

Memory: 1.5 GB Windows XP / 2 GB Windows Vista – Windows 7.

Ruang Kosong Harddisk: 8 GB.

VGA Card: VGA Card dengan memory minimal 256 MB, kompatibel dengan DirectX 9.0 dan mendukung Shader Model 3.0.

Sound Card: Kompatibel dengan DirectX 9.0.

Review Game “Need for Speed: Hot Pursuit”

Di game Need for Speed: Hot Pursuit ini kita bisa bermain sebagai pembalap liar yang dikejar polisi atau sebagai polisi yang mengejar para pembalap liar. Sebagai polisi mobil kita dilengkapi dengan berbagai macam tool dan bantuan seperti spike (ranjau untuk menggemboskan mobil lawan), EMP (senjata untuk menonaktifkan piranti elektronik lawan), road block (deretan mobil untuk menghadang laju lawan) dan bantuan helikopter yang akan menjatuhkan spike di depan mobil lawan. Sebagai pembalap liar kita juga dilengkapi dengan tool-tool tersebut kecuali bantuan helikopter dan road block plus satu tool yang tidak dimiliki oleh mobil polisi yaitu tool untuk menge-jam (merusak untuk sementara) piranti elektronik kendaraan polisi yang ada di sekitar mobil kita. Salah satu hal yang saya sukai dari game Need for Speed: Hot Pursuit ini adalah kemudahan untuk berganti karir baik sebagai pembalap liar maupun polisi, kalau bosan jadi pembalap liar maka kita dengan mudah bisa memilih event balapan di dalam map dimana kita berperan sebagai polisi, begitupun sebaliknya.

Tingkat kesulitan game Need for Speed: Hot Pursuit ini saya rasakan lebih tinggi dibandingkan seri game Need for Speed: Underground atau Need for Speed: Shift. Di game ini kita harus ekstra hati-hati karena sewaktu-waktu mobil yang ada tepat di depan kita bisa memuntahkan spike yang bisa menggemboskan ban mobil kita. Begitu pun dengan keadaan di belakang kita, sewaktu-waktu mobil di belakang kita bisa memuntahkan tembakan EMP. Salah satu cara agar kita bisa mengungguli laju mobil di depan kita adalah dengan cara menggunakan jalan pintas, tapi menemukan jalan pintas sambil mengebut di game ini cukup sulit, seringkali mobil saya menabrak karena telat belok ketika ingin menggunakan jalan pintas. Jalan pintasnya juga berupa jalan tanah, dan mengebut di atas jalan tanah tersebut lebih susah dibandingkan di atas aspal.

Ketika membalap sebagai polisi dan ditugaskan untuk menangkap seorang pembalap liar saya cukup sering dibuat stress oleh kelakuan si pembalap liar tersebut, seringkali ketika mobil saya sudah sangat dekat dengan mobil dia tiba-tiba dia mengerem dan berbalik arah, dan seringkali dia menge-jam piranti elektronik mobil saya ketika si pembalap liar tersebut menemukan persimpangan jalan sehingga saya tidak bisa melihat ke arah mana mobil si pembalap liar tersebut berbelok karena radar mobil saya di-jam oleh dia. Jadi dari sisi AI, game Need for Speed: Hot Pursuit ini bagus.

Screenshot “Need for Speed: Hot Pursuit”


Kesimpulan “Need for Speed: Hot Pursuit”

Semuanya nyaris sempurna di game ini, baik kualitas grafis, suara maupun gameplay-nya. Salah satu yang saya suka berhubungan dengan gameplay game ini adalah kemudahan memilih event karir, apakah mau membalap sebagai pembalap liar atau polisi, dan satu lagi adalah presentasi ketika kita memilih mobil yang dilengkapi dengan narasi berupa suara. Satu-satunya kekurangan game balap Need for Speed: Hot Pursuit ini yang saya temukan adalah tidak adanya menu untuk memilih tingkat kesulitan sehingga membuat game ini terasa cukup sulit untuk dimainkan. Game Need for Speed: Hot Pursuit ini saya rekomendasikan.

Game Engine

Definisi Game Engine

Game Engine adalah system perangkat lunak yang dirancang untuk menciptakan dan pengembangan video game. Ada banyak mesin permainan yang dirancang untuk bekerja pada konsol permainan video dan sistem operasi desktop seperti Microsoft Windows, Linux, dan Mac OS X. fungsionalitas inti biasanya disediakan oleh mesin permainan mencakup mesin render ( “renderer”) untuk 2D atau 3D grafis, mesin fisika atau tabrakan (dan tanggapan tabrakan), suara, script, animasi, kecerdasan buatan, jaringan, streaming, manajemen memori, threading, dukungan lokalisasi, dan adegan grafik. Proses pengembangan permainan sering dihemat oleh sebagian besar menggunakan kembali mesin permainan yang sama untuk menciptakan permainan yang berbeda.

Tipe – tipe Game Engine

Game engine biasanya datang dengan berbagai macam jenis dan ditujukan untuk berbagai kemampuan pemrogramman. Tapi dalam pembahasan sekarang ini, ketimbang harus me-list semua jenis game engine yang ada di wikipedia, mendingan kita bahas garis besar nya saja.

Roll-your-own game engine. Banyak perusahaan game kecil seperti publisher indie biasanya menggunakan engine nya sendiri. Ini berarti mereka menggunakan API seperti XNA, DirectX atau OpenGL untuk membuat game engine mereka sendiri. Disisi lain, mereka kadang menggunakan libraries komersil atau malah open source. Terkadang mereka malah membuat semuanya dari nol.

Biasanya, game engine tipe ini lebih disukai karena selain kemungkinan besar tersedia gratis, juga memperbolehkan mereka, para developer, lebih fleksibel dalam mengintegrasikan komponen yang diinginkan untuk dibentuk sebagai game engine mereka sendiri. Kelemahannya, banyak engine yang dibuat dengan cara semacam ini malah menyerang balik developernya. Menara Games Studio membutuhkan satu tahun penuh untuk menyempurnakan game engine nya, hanya untuk di tulis ulang semuanya dalam beberapa hari penggunaan karena adanya bug kecil yang sangat mengganggu.

Mostly-ready game engines. Engine engine ini biasanya sudah menyediakan semuanya begitu diberikan pada developer / programmer. Semuanya termasuk contoh GUI, physiscs, libraries model dan texture, dan segalanya. Banyak dari mereka yang sudah benar benar matang, sehingga dapat langsung digunakan untuk scripting sejak hari pertama.

Biasanya game engine semacam ini memiliki batasan batasan, terutama jika dibandingkan dengan game engine sebelumnya yang benar benar terbuka lebar. Hal ini ditujukan agar tidak terjadi terlalu banyak error yang mungkin terjadi setelah sebuah game yang menggunakan engine ini dirilis, dan masih memungkinkan game engine nya itu sendiri untuk mengoptimalkan kinerja game nya. Banyak dari game engine seperti ini, Unreal Engine, Source Engine, id Tech Engine dan sebagainya, yang sudah sangat optimal dibandingkan jika harus membuat dari awal. Hal ini dengan serta merta menyingkat sangat banyak waktu dan jelas, biaya dari para Developer game.

Point-and-click engines. Engine untuk point-and-click merupakan engine yang sangat amat dibatasi, tapi dibuat sangat user friendly. Kamu bahkan bisa mulai membuat game mu sendiri menggunakan engine seperti GameMaker, Torque Game Builder dan Unity3D. Dengan sedikit memanfaatkan coding, kamu sudah bisa merilis game point-and-click yang kamu banget.

Kekurangannya terletak pada terbatasnya jenis interaksi yang bisa dilakukan, dan biasanya hal ini mencakup semuanya, mulai dari grafis, hingga tata suara. Tapi bukan berarti game engine jenis ini nggak berguna, bagi developer cerdas dan berdaya kreativitas tinggi, game engine bapuk seperti ini bisa dirubah menjadi sebuah game menyenangkan, seperti Flow. Game engine seperti ini memang ditujukan bagi developer yang ingin menyingkat waktu pemrogramman, dan secepatnya merilis game game mereka.

Beberapa contoh jenis game engine :

1. Freeware game engine/open source game engine

Blender

Golden T Game Engine (GTGE)

DXFramework

Ogre

Aleph One

Axiom Engine

Allegro Library

Box2D

Build Engine

Cube

Cube 2

DarkPlaces

jMonkeyEngine (jME)

Panda3D

Sphere

2. Commercial engines/game engine berbayar (komersial)

Alamo

A.L.I.V.E

BigWorld

DXStudio

Dunia Engine

Euphoria

GameStudio

Jade Engine

Jedi

Medusa

RPG Maker VX

RPG Maker XP

RPG Maker 2003

RPG Maker 95

Vision Engine

Membuat button pada android

Awalnya kita membuat project baru dengan menekan menu new-project-
android project



Klik next lalu akan masuk ke dalam android project, lalu masukkan Project Name yang kita inginkan lalu klik next seperti gambar di bawah ini

setelah itu kita pilih android target minimum, yang di pilih saat ini yaitu platform android 2.2 dengan API keys 8


Klik next dan akan masuk ke dalam form application info, dimana kita akan mengisi package Name, application name dan activity. Untuk package name disini memakai package com yang berarti aplikasi tersebut termasuk aplikasi komersial. Setelah terisi semua klik finish

Pada eclipse akan muncul sebuah project android yang berisi java dan XML seperti gambar berikut

Untuk pertama kita masuk ke dalam folder res-layout-main.xml. dimana kita akan membuat tampilan di layout main

Masukkan layout relative layout dengan mendrag ke dalam layout main tersebut.

Lalu masukkan 2 widget button kedalam layout tersebut

Masuk kedalam tab main.xml dan ketikan source code seperti berikut

Maksud dari listing di atas adalah kita membuat sebuah relative layout dengan 2 buah widget button. Untuk button pertama dengan id btn_start yang berarti button tersebut mempunyai id btn_start, dengan layout width wrap_content yang berarti lebar button tersebut akan menyesuaikan keadaan layout linear, button tersebut sejajar kiri kanan dengan layout linear dan terakhir android:text yang berarti untuk membuat sebuah text di dalam button tersebut. Untuk button kedua hamper sama dengan button, hanya disini id button 2 dibuat btn_exit dan mempunyai rata bawah yang artinya button tesebut akan tampil pada bagian dasar layout linear.

OUTPUT PROGRAM :



Rabu, 28 Maret 2012

Computer Game

game merupakan kata dalam bahasa inggris yang berarti permainan. permainan adalah sesuatu yang dapat dimainkan dengan aturan tertentu sehingga ada yang menang dan ada yang kalah, biasanya dalam konteks tidak serius atau dengan tujuan refreshing. dalam penggunaannya kata game sering digunakan untuk menyebutkan video game.

video game adalah game yang berbasis elektronik dan visual. video game dimainkan dengan menggunakan media visual elektronik.

Di dalam sebuah game, terdapat komponen-komponen dalam game:

1. Grafik

Grafik merupakan suatu hal yang penting dalam game, dimana grafik ini akan membuat game menjadi daya tarik user untuk memainkan game. pada awalnya game menggunakan grafik monokrom dengan layar hitam putih sampai sekarang sudah menggunakan teknologi 3D, semakin bagus grafik maka game tersebut semakin seperti dalam dunia nyata.

2. Suara

suara menjadi komponen game karena dengan adanya suara pada game maka game tersebut akan menarik sehingga kita dapat merasakan kondisi dalam game tersebut. selain itu, dengan adanya suara, kita tidak bosan bermain game.

3. AI(kecerdasan Buatan)

Kecerdasan buatan atau AI(artificial Inteligence) menjadi komponen game karena dengan hal tersebut game menjadi lebih menantang. Dengan menggunakan AI, game dapat berpikir untuk mengalahkan pemain sehingga membuat game lebih seru.

4. Skenario Game

Skenario game menjadi komponen game karena dengan adanya skenario dalam game, si pemain seolah-olah bermain sesuai dengan petunjuk yang ada di game tersebut, sehingga dapat dikatakan game tersebut memiliki cerita sehingga membuat pemain lebih asyik memainkan game tersebut

5. Multiplayer

Multiplayer bisa menjadi komponen game karena dengan hal tersebut, pemain dapat bermain dengan teman-temannya dan orang lain sehingga game itu dapat dimainkan lebih dari 1 orang. dengan kata lain, multiplayer adalah sebuah mode dalam game dimana game dimainkan oleh pemain lainnya sehingga bermain game secara bersama-sama.

selain komponen game, game memiliki genre atau jenis-jenis game yang dapat dimainkan, beberapa jenis game :

Edutainment game

Game jenis ini biasanya dibuat lebih sepesifik untuk tujuan tertentu, misalnya untuk balita untuk sekedar mengenal warna dan objek. Ada juga yang ditujukan ke anak sekolah, sebagai contoh game tentang pelajaran biologi dimana di dalam game tersebut menyediakan konten misalnya tentang fungsi organ tubuh manusia.

First person shooter

Jenis game ini menampilkan sudut pandang orang pertama, biasanya yang nampak hanya tangan dan senjata player saja. Contoh game ini adalah CS (Counter strike), Saurbatten, dll.

Real time strategy

Game ini lebih menekankan pada kehebatan strategi pemainya, dan biasanya pemain tidak hanya memainkan satu karakter melainkan lebih dari satu karakter.

Fighting

Game ini menuntut pemainya untuk lincah, cepat tanggap, respon yang baik. Sedikit berbeda dari game fighting lainya yang hanya melawan AI atau komputer saja, melainkan game ini akan teruji jika pemain sudah bisa mengalahkan pemain lainya atau dengan kata lain game ini merupakan game multi player.

Adventure

Berbeda dengan game lain yang menuntut pemainya untuk lincah, refleks, respon. Dalam game petualangan pemain dituntut kemampuan berfikirnya untuk menganalisa tempat secara visual, memecahkan teka-teki maupun menyimpulkan rangkaian peristiwa dan percakapan karakter, menggunakan benda-benda yang tepat dan diletakan di tempat yang tepat.

Kamis, 19 Januari 2012

BFS dan DFS

LISTING PROGRAM



#include#include


int q[20],top=-1,front=-1,rear=-1,a[20][20],vis[20],stack[20];
int del();void add(int item);
void bfs(int s, int n);
void dfs(int s, int n);
void push(int item);
int pop();
main(){
int n,i,s,ch,j;
clrscr();
printf("masukkan angka ");
scanf("%d",&n);
for(i=1;i<=n;i++){
for(j=1;j<=n;j++)
{
printf("masukkan %d jika mempunyai simpul %d selain itu 0 ",i,j);
scanf("%d",&a[i][j]);
}
}
printf("matrik adjasensi\n");
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
printf("%d",a[i][j]);}
printf("\n");
}
for(i=1;i<=n;i++)
a:
vis[i]=0;
printf("\nmenu");
printf("\n1. bfs");
printf("\n2. dfs");
printf("\npilihan:");
scanf("%d",&ch);
printf("\nmasukan simpul sumber:");
scanf("%d",&s);

switch(ch)
{case 1:bfs(s,n);
goto a;
case 2:dfs(s,n);
goto a;
case 3:
break;
}
return(0);}
void bfs(int s,int n)
{
int p,i;
add(s);
vis[s]=1;
p=del();
if(p!=0)
printf("%d",p);
while(p!=0)
{
for(i=1;i<=n;i++)
if((a[p][i]!=0)&&(vis[i]==0))
{
add(i);vis[i]=1;
}
p=del();
if(p!=0)
printf("%d",p);
}
for(i=1;i<=n;i++)if (vis[i]==0)
bfs(i,n);
}
void add(int item)
{
if (rear==19)
printf("antrian full");
else
if (rear==-1)
{
q[++rear]=item;
front++;
}
elseq[++rear]=item;
}

int del()
{
int k;
if((front>rear)||(front==-1))
return(0);
else
{
k=q[front++];
return(k);
}
}void dfs(int s, int n)
{
int i,k;
push(s);
vis[s]=1;
k=pop();
if(k!=0)
printf("%d",k);
while(k!=0)
{
for(i=1;i<=n;i++)
if((a[k][i]!=0)&&(vis[i]==0)){
push(i);
vis[i]=1;
}
k=pop();
if (k!=0)
printf("%d",k);
}
for(i=1;i<=n;i++)
if (vis[i]==0)
dfs(i,n);}
void push(int item)
{
if(top==19)
printf("stack overflow");
else
stack[++top]=item;
}
int pop()
{
int k;
if (top==-1)
return(0);
else{
k=stack[top--];
return(k);
}
}



OUTPUT



LOGIKA

Breadth first search merupakan algoritma yang pencarian dilakukan secara melebar dengan cara mengunjungi simpul secara preorder yaitu mengunjungi suatu simpul dalam satu level baru kemudian dilanjutkan dengan simpul di bawah level tersebut. Cara kerja algoritma BFS ini adalah : Simpul akar dimasukkan ke dalam antrian (Q), jika simpul akar=simpul solusi (goal node) maka pencarian berhenti. Jika Q tidak ada solusi , maka pencarian simpul juga dihentikan.

Dengan menggunakan algoritma BFS jika terdapat sebuah solusi, maka BFS pasti akan menemukannya. Dan jika terdapat lebih dari 1 solusi, BFS akan menemukan solusi pertama aras pohon yang paling rebdah. Algoritma BFS juga membutuhkan table Boolean untuk menyimpan simpul yang telah dikunjungi, sehingga simpul tidak dikunjungi lebih dari satu kali.

Depth first search (DFS) mengunjungi suatu simpul dari simpul akar hingga simpul anaknya, jika simpul anak selesai dikunjungi baru mengunjungi simpul tetangganya. Untuk persoalan yang memiliki banyak solusi, metode DFS lebih cepat daripada BFS, karena DFS menemukan solusi setelah mengeksplorasi hanya sebagian kecil dari seluruh ruang status.

Langkah awal kita memasukkan beberapa variable yang akan kitagunakan seperti terlihat pada listing program diatas. Kemudian tentukan tipe-tipe data yang akankita gunakan. Masukkan beberapa statement yang berguna untuk user interface yang berfungsiuntuk menuntun user menggunakan program tersebut. Masukkan logika dari algoritma BFSmaupun DFS seperti terlihat pada listing program yang saya lampirkan diatas. Selesai program yang kita telah buat dengan listing yang dapat dilihat pada lembar sebelumnya, dan akan terlihatoutput program pada lembar berikutnya

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Free Web Hosting | Top Hosting | Great HTML Templates from easytemplates.com.