Just another free Blogger theme

Welcome

Teknik Informatika
Google. Diberdayakan oleh Blogger.

Febrian RT

Febrian RT
-

Pengikut

Mengenai Saya

Foto saya
DKI-Jakarta, Jakarta Timur, Indonesia
Menyukai Aroma-Aroma yang berbau dengan 'Seni'

Senin, 23 Juni 2014

Game Catur secara Konseptual

Catur adalah permainan yang dimainkan antara dua pemain . Permainan ini dimainkan pada papan catur , yang merupakan papan kotak-kotak persegi dengan 64 kuadrat diatur dalam sebuah-oleh-delapan grid delapan. Pada awalnya, tiap pemain kontrol enam belaspotongan : satu raja , satu ratu , dua rooks , dua kesatria , dua uskup , dan delapan pion . Tujuan permainan ini adalah untuk sekakmat lawan raja, dimana raja adalah serangan langsung (di ” cek “) dan tidak ada cara untuk menghapus atau mempertahankannya dari serangan pada langkah berikutnya.
Bentuk permainan saat ini muncul di Eropa pada paruh kedua abad ke-15 setelah berevolusi dari game yang lebih tua (Shatranj ) dariIndia asal. Aspek seni dapat ditemukan dalam komposisi catur . Teoretikus telah mengembangkan luascatur strategi dan taktikpermainan sejak awal itu. Salah satu tujuan awal para ilmuwan komputer adalah untuk menciptakan mesin-bermain catur . Catur sekarang sangat dipengaruhi oleh kemampuan dari program catur dan kesempatan untuk bermain online. Pada tahun 1997 Deep Blue menjadi komputer pertama yang mengalahkan seorang memerintah Juara Dunia dalam pertandingan ketika mengalahkan Garry Kasparov.
Tradisi catur kompetitif terorganisir dimulai pada abad ke-16. Resmi pertama Juara Catur Dunia , Wilhelm Steinitz , mengklaim gelar pada tahun 1886; Juara Dunia saat ini adalah Viswanathan Anand . Catur adalah olahraga yang diakuidari Komite Olimpiade Internasional , dan dipimpin oleh FIDE . Hari ini, catur merupakan salah satu dunia yang paling populer games, dimainkan oleh jutaan orang di seluruh dunia di rumah, di klub , online, melalui korespondensi , dan diturnamen .




Untuk membuat game ini dapat menggunakan program strowberry prolog, java dsb
Kali ini saya akan menjelaskan menggunakan java.
Pertama-tama buat dahulu class utama sebagai inti dari program yang dapat menghasilkan execute yaitu class Chess.java, kemudian simpan class itu dalam folder /src/ChessGame

/* coding program pemanggilnya*/

package ChessGame;
import MainFrame.ChessFrame.MainFrame;
public class Chess {
public static void main(String[] args) {
MainFrame F=new MainFrame() ;
}
}


Dibawah ini adalah listing dari langkah-langkah catur :
1 .Untuk langkah castle (benteng) adalah berjalan lurus dengan alur horizontal atau vertikal.

/*listing langkah castle (benteng)*/
public boolean PieceInMYway(int x, int y,Point othersPostion) {
int j=y;
int i=x;
if(((y==Y)&&(x>(X)||(x<(X))))) {

if((X

while( (i!=X+1)) {
i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))//there Same Color piece
{
return true;
}
}
else if((X>i)) {
while( (i!=X-1)) {
i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i))) {
return true;
}
}
}
} else if((((y>Y)||(y
if((Y
while((j!=Y+1)) {
j--;
if(((othersPostion.y)==j)&&((othersPostion.x==i))) {
return true;
}
}
} else if((Y>j)) {
while((j!=Y-1)) {
j++;
if(((othersPostion.y)==j)&&((othersPostion.x==i))) {
return true;
}
}
}
}
return false;
}

2. Untuk langkah Elephant (Sluncur) adalah berjalan lurus diagonal ke kanan & kekiri.

/* langkah-langkah (elephant) sluncur */
public boolean checkKing(int x, int y,Point othersPostion)
{
int j=y;
int i=x;
if((x-y)==(X-Y))
{
if(x>X&&y>Y)
{
while((j!=Y )&&(i!=X ))
{
j--;i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if(x
while((j!=Y )&&(i!=X ))
{
j++;i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if(((x+y))==((X+Y)))
{
if((Xj))
{
while(((j!=Y ))&&((i!=X )))
{
j++;i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if((X>i)&&(Y
{
while((j!=X )&&(i!=X ))
{
j--;i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
}
return false;
}

3. Untuk langkah Horse (Kuda) adalah berjalan membentuk huruf “L”.

/* listting langkah horse (kuda)*/
public boolean Canmove(int x, int y) {
if((x+1==X)&&(y+2==Y)||(x+1==X)&&(y-2==Y)||(x-1==X)&&(y+2==Y)||(x-1==X)&&(y-2==Y)||(x+2==X)&&(y+1==Y)||(x+2==X)&&(y-1==Y)||(x-2==X)&&(y+1==Y)||(x-2==X)&&(y-1==Y)) 
{
return true;
} else {
return false;}
}

4. Untuk langkah Queen (Patih) adalah berjalan bebas ke berbagai arah.

/* listing langkah queen (patih)*/
public boolean PieceInMYway(int x, int y,Point othersPostion)
{
int j=y;
int i=x;
if(((y==Y)&&(x>(X)||(x<(X)))))
{
if((X
while( (i!=X+1))
{
i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))//there Same Color piece
{
return true;
}
}
else if((X>i))
{
while( (i!=X-1))
{
i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
}
else if((((y>Y)||(y
{
if((Y
{
while((j!=Y+1))
{
j--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if((Y>j))
{
while((j!=Y-1))
{
j++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
}
else if((x-y)==(X-Y))
{
if(x>X&&y>Y)
{
while((j!=Y+1)&&(i!=X+1))
{
j--;i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if(x
while((j!=Y-1)&&(i!=X-1))
{
j++;i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if((x+y)==(X+Y))
{
if((Xj))
{
while((j!=Y-1)&&(i!=X+1))
{
j++;i--;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
else if((X>i)&&(Y
{
while((j!=Y+1)&&(i!=X-1))
{
j--;i++;
if(((othersPostion.y)==j)&&((othersPostion.x==i)))
{
return true;
}
}
}
}
return false;
}

5. Untuk langkah King (Raja) adalah berjalan bebas ke berbagai arah dengan langkah 1 kotak.

/* listing langkah king (raja)*/
public boolean Canmove(int x, int y)
{
if(((y==Y)&&(x==(X-1)))||((y==Y-1)&&(x==(X+1)))
||((y==Y-1)&&(x==(X-1)))||((y==Y+1)&&(x==(X+1)))
||(((y==Y+1)&&x==(X-1)))||((y==Y)&&(x==(X+1)))
||((y==Y-1)&&x==((X)))||((y==Y+1)&&(x==(X))))
{
return true;
}
return false;
}

6. Untuk langkah Piece (Pion) adalah berjalan vertikal 2 kotak atau 1 kotak.

/* listing langkah piece (pion)*/
public boolean PieceInMYway(int x, int y,Point othersPostion ,String typeColor ) {
if(Y-y==2||Y-y==-2) {
if((typeColor.equals("black"))) {
if((((y-1==othersPostion.y)&&(x==(othersPostion.x))))&&!movedbefore) {
return true;
} else return false;
}
else if (typeColor.equals("white")) {
if(((y+1==othersPostion.y)&&(x==(othersPostion.x)) &&!movedbefore)) {
return true;
} else
return false;
}
}
return false;
}


Demikianlah Cara membuat Catur sederhana .

Daftar Pustaka :

http://kaidarbilly.blogspot.com/2014/06/t2-rancangan-pembuatan-game.html
http://tobay.wordpress.com/2010/05/30/membuat-permainan-catur-dengan-java/
http://oinkseterez.wordpress.com/2010/06/01/permainan-catur/