ChessVista開發日記之一: 規劃

來源:互聯網
上載者:User

ChessVista是什嗎?

ChessVista是一個開放的、可擴充的國際象棋人-機對弈、機器對弈環境。通過國際通用的標準引擎通訊協議,允許國際象棋機器對弈愛好者將自己的博弈引擎聯入環境,與其它博弈引擎進行對弈。環境同時提供了可視的、圖形化的對弈過程展示以及即時局面記錄等功能。

 

ChessVista的版本 

ChessVista 2010 是ChessVista的第一個版本,組建號為1.0。目前計劃有:

  • ChessVista 2010 Standard Edition(CVSE,標準版)
  • ChessVista 2010 Developer Edition(CVDE,開發人員版)

 

ChessVista Standard Edition

CVSE1-1所示,包括了標準的ChessVista運行環境,初步規劃的服務以及子系統有:

  • 圖形介面(Chess UI Service)
  • 棋盤服務(Board Service)
  • 對弈服務(Play Service)
  • 博弈引擎服務(Engine Service)
  • 基礎API(API Service)
  • ChessVista引擎(ChessVista Engine)

圖 1-1

 

圖形介面

要實現人-機對弈,不能沒有一個圖形化的介面,這個介面同樣用於機器機對弈過程中的每個局面的即時顯示。開發人員可以通過棋盤擴充API對其進行擴充編程,顯示自訂的棋盤、棋子圖形(類似於換膚功能)。

 

棋盤服務

負責管理棋盤、棋子。包括響應棋手對棋盤的操作、根據擷取到的資訊更新棋盤的顯示、棋盤的基本演算法等,同時,該子系統也負責棋盤擴充的管理。

 

對弈服務

負責整個對弈過程的管理。包括對弈流程式控制制、棋手管理、對弈時間管理、局面管理、棋譜管理以及在對弈過程中,各種對弈訊息的產生與分發。

 

博弈引擎服務

負責對接入環境的博弈引擎的管理。包括引擎的接入管理、與引擎之間的訊息互動管理和非常重要的通訊協議管理等。

 

基礎API

ChessVista是建立在一系列的ChessVista服務之上的,ChessVista開放了部分的服務,供開發人員對環境進行擴充,並開發相應的博弈引擎,這些開放的服務是通過基礎API的形式提供的。

 

ChessVista引擎

為實現基本的人-機對弈和機器對弈,ChessVista包含了一個完整的博弈引擎,它是ChessVista的預設引擎。

 

ChessVista Developer Edition

CVDE是一個包含了完整的開發環境的進階版本,在此版本下,開發人員可以進行棋盤擴充和博弈引擎的開發。1-2所示,該版本計劃包括了以下內容:

  • 一個完整的ChessVista運行環境
  • 開發中使用的標頭檔
  • 基於機器碼的C++ Class API擴充庫
  • 基於Managed 程式碼的API 擴充庫
  • 開發協助文檔
  • 樣本工程項目

圖 1-2

程式開發介面(API)

CVDE的API提供了從機器碼到Managed 程式碼一系列各層次的開發介面,1-3所示。

 

圖 1-3

 CVDE的組件

目前規劃的CVDE組件如表1-1所示。

 

表1-1

組件

描述

Chess.exe

ChessVista 主執行體

Chessknl32.dll, Chessui32.dll, Engine32.dll

ChessVista 子系統

Chesslib.dll

ChessVista C++ API

AmoiVista.ChessVista.dll

ChessVista 託管API

CVEngine.dll

ChessVista 引擎

 

針對ChessVista的規劃就簡單介紹到此,在後面的開發過程中,會不定時(因為都是業餘時間在開發,見諒嘍)再寫博放上來,有興趣的話,請多多關注、交流。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.