HTML5實現中國象棋遊戲 無人能敵

2022-09-08 10:00:10 字數 1874 閱讀 6300

1. [**][j**ascript]**    

var ai = ai||{};

ai.historytable =   {};     //歷史表

//人工智慧初始化

ai.init = function(pace)

}if (arr.length)else

}//如果棋譜裡面沒有,人工智慧開始運作

var inittime = new date().gettime();

ai.treedepth=play.depth;

ai.number=0;

ai.sethistorytable.lenght = 0

var val=ai.getalphabeta(-99999 ,99999, ai.treedepth, com.arr2clone(play.map),play.my);

//var val = ai.iterativesearch(com.arr2clone(play.map),play.my)

if (!val||val.value==-8888)

//var val = ai.iterativesearch(com.arr2clone(play.map),play.my);

if (val&&val.value!=-8888) else

}//迭代加深搜尋著法

ai.iterativesearch = function (map, my);

for (var i=initdepth; i<=maxdepth; i++)

}return false;

}//取得棋盤上所有棋子

ai.getmapallman = function (map, my)}}

return mans;}/*

//取得棋譜所有己方棋子的著法

ai.getmoves = function (map, my, txtmap)else}}

return highmores.concat(moves);}*/

//取得棋譜所有己方棋子的著法

ai.getmoves = function (map, my)}}

return moves;

}//a:當前棋手value/b:對手value/depth:層級

ai.getalphabeta = function (a, b, depth, map ,my)

if (depth == 0) ; //局面評價函式; 

}var moves = ai.getmoves(map , my ); //生成全部走法; 

//這裡排序以後會增加效率

for (var i=0; i < moves.length; i++)

return ;

//return rootkey; 

}else

if (val >= b) ; 

} if (val > a) ;

} } 

} //將這個走法記錄到歷史表中; 

if (ai.treedepth == depth) else

}return ; 

}//獎著法記錄到歷史表

ai.sethistorytable = function (txtmap,depth,value,my) 

}//評估棋局 取得棋盤雙方棋子價值差

ai.evaluate = function (map,my)}}

//val+=math.floor( math.random() * 10);  //讓ai走棋增加隨機元素

//z(val*my)

ai.number++;

return val*my;

}//評估棋局 取得棋盤雙方棋子價值差

ai.evaluate1 = function (map,my){

中國象棋 即時類遊戲

對於即時類應用或者即時類的遊戲,http協議很多時候無法滿足我們的需求。而socket對於即時類通訊軟體和遊戲軟體來說無疑是最好的選擇。這篇文章介紹的象棋遊戲採用的是伺服器 客戶端的模式,介面都是根據awt和swing程式設計所實現的,通過這篇文章你可以主要了解到serversocket socke...

中國象棋遊戲開發計畫

新 中國象棋開發計畫 一 系統特點 1 實體象棋,絕非普通的象棋遊戲 2 玩家手感好,棋子採用 實木 象牙 製作。3 具備自動擺棋,無須人工干預 4 可以進行 人 機 人 人 隊長 5 系統自動計時 評分 6 二 系統設計思路 三 擺棋 實現自動擺棋是本系統成功的關鍵,只有系統可以正確的擺放棋子,才...

團隊 中國象棋遊戲 設計文件

成員 張明成 張洪劍 張鴻程 趙建輝 徐巨集璇 喻政博 目標 1.繪製象棋棋盤 2.在指定位置繪製棋子 3.各棋子按規則行子。馬跳 日 字 象走 田 字 士 在九宮內斜行 這裡需要特別注意的是卒 兵 的行子規則會隨其所在位置的不同而發生變化 過河後可以左右平移 行子不能越出棋盤的界限。當然所有子都不...