56将棋開発ブログ

5×6マスのミニ将棋、「56将棋」で遊べるものをいろいろ開発してます。

2014-01-01から1年間の記事一覧

Bonanza 56shogi とりあえず対局できるようにしてみた

はい。こんな感じです。Windowsのコマンドプロンプト上で、 指し手を入力するかたちで対局できるようにしてみました。探索は単純なAlphaBetaです。 探索の最大深さ7なら、数秒で指し手を決めてくれます。評価関数は、駒割 + 敵玉との相対位置によるボーナ…

Bonanza 56shogi 指し手生成

できました。 指し手生成祭り開催 - Bonanzaソース完全解析ブログを参考に、 局面は適当につくりました。ちなみに、自殺手(1五玉)を生成していますが、 これは本家Bonanzaでも生成します。 詳しいことは指し手生成祭り開催 - Bonanzaソース完全解析ブログ…

Bonanza 56shogi つくってます

ここしばらく、Bonanzaを「ごーろく将棋」のルールに対応させることに チャレンジしてます。ちなみに「ごーろく将棋」とは、5×6マスのあたらしいミニ将棋です。 こちらのページで遊べます。 とりあえず駒の利きを求められるようになったのでブログを更新し…

近況

Bonanzaを5*6マスのごーろく将棋に書き換えてみよう ↓ ビット操作、ビットレイアウト、指し手生成に必要な配列の初期化は だいたいできたっぽいので、そろそろ指し手生成にチャレンジだ ↓ そのまえにCSA形式の棋譜をとりこめるようにしないとデバッグできな…

ごーろく将棋

「ごーろく将棋」のサイトを引っ越しました。【2015/11/5 追記 さらに引っ越したのでリンク先を変更しました】ごーろく将棋 56shogi COMのレベル(レベル1とレベル2しかないけど)と、二枚落ちなどのハンデを選択できるようにしてみました。遊んでみていた…

あたらしいミニ将棋を考えて、COMと対局できるものをつくりました。( 仮 )

こんな感じです。こちらのページで対局することができます。 <2014.6.13 10:50 追記 ページを引っ越したのでリンク先を変更しました>【2015/10/30 追記】 さらに引っ越したのでリンクを変更しました。現在はこんな感じです バグなどあれば、この記事にコメ…

( とんでもなく弱いけど )将棋プログラムができました

びっくりしました。よわくて。2つのタブで、かわりばんこに自分でクリックするという、 かなりめんどうくさい方法で、こまおと対局させてみたところ、先手(手前): こまお 後手(奥) : つくったものという投了図ができあがりました。 はい。まけました…

JavaScriptで将棋のルール その4 ~ 局面の内部表現 ~

こんばんは、ただのあほです。今回は、JavaScript将棋盤の、局面の内部表現がどうなっているかについて書いてみようと思います。 まず、「 Position (局面)」というオブジェクトに、どんな情報をもたせているか、ですが、 ・ 盤 Board番兵(OUT_OF_BOARD)…

JavaScriptで将棋のルール その3 ~ 手の内部表現 ~

どうもこんばんは、ただのあほです。 前回、つぎは局面の内部表現について書くといっていたのですが、そのまえに、「 手 」の内部表現について書いておきます。 では、とりあえずコードをごらんください。 gist9363861 駒の位置をあらわすオブジェクト(とい…

将棋用語の英訳

どうも、ただのあほです。 JavaScript将棋盤の局面の内部表現について書こうとおもったのですが、そのまえに変数名をいろいろいじったので、将棋用語の英訳についてまとめておこうかなと思います。 参考にしたページがこちら。チェス用語小辞典(英和)Shogi…

JavaScript将棋盤 ほぼ完成したので公開してみる

おひさしぶりです。ただのあほです。JavaScriptで将棋盤の将棋のルールの部分がほぼ完成したので公開してみます。 JavaScript将棋盤 2014/03/04/15:41 追記 二歩の判定にバグがあったので修正しました 対応している将棋のルールがこちら。・駒の動き・手番・…

JavaScriptで将棋のルール その2 ~ 駒の動き ~

はいどうも、ただのあほです。今日は、駒の動きをチェックする関数をつくりました。 とにかくできたものを動かしたいというかたは、こちらのページへどうぞ。http://www54.atpages.jp/tetsuzuki/ まずは下準備として、駒が動ける方向を、配列にいれておきま…

JavaScriptで将棋のルール その1 ~ 駒の位置の内部表現 ~

おひさしぶりになってしまいましたが、どうも、ただのあほです。 さて、とりあえず駒が動かせるだけの将棋盤ができていたわけですが、今回から、将棋のルールを守った指し手(合法手)しか指せないような将棋盤をつくっていきたいと思います。 C++のほうでは…

将棋プログラムのつくりかた(C++) ~ 手の内部表現 ~

【2015/11/28 追記】 当時、プログラミング超初心者のわたしが勢いで始めたものの、完結させずに放置してしまっています。すみません。 コンピュータ将棋のアルゴリズム HTML版のリンクを貼っておくので、こちらを参考にしてください。コンピュータ将棋のア…

将棋プログラムのつくりかた(C++)  ~ 駒の内部表現 ~

【2015/11/28 追記】 当時、プログラミング超初心者のわたしが勢いで始めたものの、完結させずに放置してしまっています。すみません。 コンピュータ将棋のアルゴリズム HTML版のリンクを貼っておくので、こちらを参考にしてください。コンピュータ将棋のア…

JavaScriptで将棋盤 とりあえず公開してみる

駒をどこにでも動かせるという、しょぼしょぼ将棋盤ですが、せっかくつくったので公開してみます。 http://www54.atpages.jp/tetsuzuki/ 2014/2/5 0:52 追記 <現在の仕様ですが、・駒を好きなところに動かせてしまう(駒の種類に関係なく)・手番の概念はあ…

はてなブログに棋譜を貼り付ける方法

どうも、ただのあほです。今日は、はてなブログに棋譜を貼り付ける方法を紹介したいと思います。なんか方法を紹介するとかまともな記事っぽいですね。 さっそくその方法ですが、とてもかんたんです。まず、貼り付けたい棋譜を用意します。棋譜ファイルの形式…

JavaScriptで将棋盤 まとめ

どうも、ただのあほです。JavaScriptで将棋盤ですが、成/不成の選択ウインドウを変更しました。 このウインドウのどちらかの駒の画像をクリックすると、 成/不成を選択することができます。 YouTubeに動画をアップしてみたのでごらんください。 プログラミ…

成/不成 選択ウインドウの画像

成/不成 選択ウインドウの画像をつくりました。 まだ画像だけなのでクリックしても選択することはできないのが残念なところです。ニコ生で王将戦をやっていたのでしょうがないのです。(単純にあほだからです) ソースコードなのですが、まずこの選択ウイン…

ソースコードの貼り付けテスト

gist8648219 コメントで紹介していただいたGistに登録して、 はてなブログと連携してコードを貼り付けてみました。 ただ、Javascriptで将棋盤のコードは、ひとつの関数に機能を詰めこみすぎてまして、 インデントがすごいことになっちゃっています。 なので…

JavaScriptで将棋盤 その10

ついにJavaScriptで将棋盤も10回目になりました。今日は持ち駒の表示を変更してみました。 数字で表示するよりこっちのほうがなんとなくカッコいいですね。 あと昨日の記事の動画で、さもちゃんと動くみたいに話してましたが、重大なバグがありました(笑…

JavaScriptで将棋盤 その9

少し間が空いてしまいましたが、JavaScriptの将棋盤の進行状況です。 ようやく取ったり成ったりできるようになりました。 プログラミング初心者がJavaScriptで将棋盤をつくってみた - YouTube ソースコードを貼りたいのですが、ブログの記事部分を広げたりだ…

JavaScriptで将棋盤 その8

とりあえず今日進んだところまで報告してみます。駒台に駒をのせることができるようになりました。 残念ながら、まだ駒台の駒を選択して置ける(駒を打てる)ようにはなってません。ニコ生で将棋ウォーズ王将戦を観ながら作業してたら、ありえないミスをした…

JavaScriptで将棋盤 その7

一昨日の記事では、王、飛車、金、歩しかできていなかったのですが、残りの駒と、選択した状態の駒の画像の編集がさっき終わったので、さっそく今までのしょぼい駒と差し替えてみました。 駒を選択するとこんな感じです。 やっぱり見た目だいじですね。 駒を…

テキストエディタ

今日はふだん使っているテキストエディタを紹介してお茶を濁しておきます。 (プログラミングもやってるのですが、あほなのでなかなか進みません) このブログの最初の記事で書いたように、プログラミングを始めてからしばらくは、Windows付属のメモ帳にコー…

将棋の駒と盤の画像

今日は盤と駒の画像をつくりました。画像編集はPaint.NETでやっています。Paint.NETはこちらのページでダウンロードできます。 これで少しは見た目がマシになりますね。そんなことよりもプログラミングしろよって話ですが。それでは。

JavaScriptで将棋盤 その6

前回の記事で取ったり成ったりできるようにすると書いたのですが、 さきに、手番の表示と手番の駒しか動かせないようにしてみました。 ↑手番が表示されていますね。 手番の駒を選択し、 動かすと、 手番が後手になりました。 手番を覚えておく変数(trueかfa…

JavaScriptで将棋盤 その5

また少し進んだので報告してみます。 今回はやっと駒を動かせるようになりました。(取ったり成ったりはできませんが) 一度駒のあるマスをクリックすると、このように駒が選択された状態になります。さらに空白のマスをクリックすると、 このように駒を動か…

JavaScriptで将棋盤 その4

今日もJavaScriptで将棋盤の現状を報告してみます。 駒のあるマスをクリックすると、 駒を選択した状態になります。ここまでは昨日と同じです。 このマス(どのマスでもいいのですが)をもう一度クリックすると、 ちゃんと最初の状態に戻ります。(昨日のも…

JavaScriptで将棋盤 その3

まだ駒が動かせるようにはなっていないのですが、とりあえず現状こんな感じです。 この地味な将棋盤の、駒がないマスをクリックすると、 歩が置けます(笑)。 駒があるマスをクリックすると、 枠が赤くなります。(歩を選択した状態のつもり) 今のところ、…