プログラム製作日記

世の中にないプログラムをつくれたらよいなと思いながらプログラムをしていくブログです

Blokus対戦記録ソフト 内部設計(記録ファイルの拡張子と内部構成)

 

今回は記録ファイルの構成についてまとめます。

基本的には以下に従います。

tut2020aaa.hatenablog.com

ファイル拡張子は".blk"

としたいと思います。

 

繰り返しになる部分もありますが、

ファイル内部構成は以下の通りです。

①開始日時

②終了日時

③大会名

④場所

⑤参加人数

⑥手番(選択色含む)

⑦以下、置いた手を記載

 

⑦の置いた手に関して、2番手が、1番手の初手(ゲームの開始)から数えて6手目にピースtを以下のように配置した場合、

基準位置が横8, 縦7, ピースt, 向き6のため、

>006 02 0807t6

と表記します。

・006 → 初手から数えて6手目

・02 → 2番手

・0807t6 → ピースtを横08,縦07,向き6

 

置けなくなってパスの場合はpassと表記します。

例えば30手目に4番手が置けなくなった場合、

>030 04 pass

 

とします。

 

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村

Blokus対戦記録ソフト 外部設計(ルール・スコア)

 

以下にルールを記載します。

・4人対戦で交互に置き始める(ひとまず、今回のプログラムはこの前提でいきます)。

・全員、4すみのうち一つの角から置き始める。この時、必ず隅がうまるように置くこと。

・一番手を決めて、右回りに2番手、3番手、4番手、戻って1番手と繰り返しおいていく。

・順番が回ってくるたびにピースを1つ置いていく。

・置くピースは必ずそれまでに自分が置いたピースの角と角がつながるようにおかないといけない。

・自分のピース同士(同じ色のピース同士)が辺で接する場所には置けない。

・相手のピース同士(異なる色のピース同士)は辺で接する場所に置ける。

・一度置いたピースは動かすことができない。

・ピースを置くことができなくなったらそのプレイヤーはその時点で終了。

・全プレイヤーがピースを置けなくなったらゲームは終了。

 

次にスコアの数え方について記載します。

・残ったピースのマス目の合計が少ない順に1位、2位、3位、4位。

 

Blokusのルールは以下のリンクをたどると確認できます。

tut2020aaa.hatenablog.com

 

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村

Blokus対戦記録ソフト 外部設計(ピース)

ピースは以下の通り、21個のピースが存在します。

 

f:id:tut2020aaa:20200102172418p:plain

 

 

座標の表記(基準位置・基準の向き)は、以下の私の別ブログに記載した内容に準じます。

tut2020aaa.hatenablog.com

tut2020aaa.hatenablog.com

 

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村

Blokus対戦記録ソフト 外部設計(ボード)

 

 

 

ボードは以下の通り、20×20マスで、マス目を埋める形でピースを置きます。

f:id:tut2020aaa:20200312003656p:plain

座標の表記は、以下の私の別ブログに記載した内容に準じます。

tut2020aaa.hatenablog.com

 

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村

Blokus対戦記録ソフト 要求仕様 05 (仕様化フェーズ 機能リスト)

 

USED【送料無料】「要求」の基本原則 (技評SE選書) 岡 大勝 and 三宅 和之

価格:4,006円
(2020/1/20 22:47時点)
感想(0件)

 

仕様化フェーズ

→目的: ソリューションを使用として定義する。

→観点: 要求の受け手(開発者)の観点<対象を絞って・深く>。

(「要求」の基本原則(2009), p37)

 

<機能リスト>

機能①

全21ピースを選択し、手番通りに適正な方向に向けてBlokusのルールに従ってピースを操作できる機能

→要件id:F001> ピースを視覚的に操作できる。

→要件id:F002> ピースを置いた順番に置いた位置・状態(回転と鏡映による8つの状態)を記録する。

→要件id:F003> 手順の手戻りができる。

 

機能②

初手からの操作の記録(本筋と異なる手筋も含めて)ができる。

→要件id:F004> 変化の記録(本筋とは異なる手順の記録)ができる。

 

 

 次回からお試しプログラムを作って、内部設計・外部設計の見通しを立てたいと思います。

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村

Blokus対戦記録ソフト 要求仕様 04 (導出フェーズ)

 

USED【送料無料】「要求」の基本原則 (技評SE選書) 岡 大勝 and 三宅 和之

価格:4,006円
(2020/1/20 22:47時点)
感想(0件)

 

導出フェーズ

→目的: 要望を実現するソリューションを導出する。

→観点: 要求の受け手(開発者)の観点<幅広く・浅く>。

(「要求」の基本原則(2009), p37)

 

<要件リスト>

要件id:F001

ピースを視覚的に操作できる。

 

要件id:F002

ピースを置いた順番に置いた位置・状態(回転と鏡映による8つの状態)を記録する。

 

要件id:F003

手順の手戻りができる。

 

 

要件id:F004

変化の記録(本筋とは異なる手順の記録)ができる。

 

 次回は仕様化フェーズを実行します。

 

 ランキングに参加してます。

よかったらクリックをお願いします。

にほんブログ村 IT技術ブログ Tipsへ
にほんブログ村