クロノス・クラウン Topに戻る

2017/04/17(月)

小説推敲補助ソフト「Novel Supporter」のver1.3.0を公開しました。「使用単語集計」機能を追加しました。

DLはこちら↓
http://crocro.com/pc/soft/novel_supporter/
小説推敲補助ソフト「Novel Supporter」のver1.2.0を公開しました。形態素解析と日本語評価極性辞書を利用したセンチメント分析機能を追加しました。

DLはこちら↓
http://crocro.com/pc/soft/novel_supporter/

2017/03/08(水)

「ラジオ・ブラウザ」3.07を公開しました。数年振りに。

DLはこちら↓
http://crocro.com/pc/soft/radio_browser/

2017/03/02(木)

小説推敲補助ソフト「Novel Supporter」のver1.1.0を公開しました。MSのSAPI5を利用して、文章を読み上げるツールを追加しました。

DLはこちら↓
http://crocro.com/pc/soft/novel_supporter/

2017/02/22(水)

開発していた小説推敲補助ソフト「Novel Supporter」のver1.0.0を公開しました。electron製です。

DL
http://crocro.com/pc/soft/novel_supporter/

マニュアル
http://crocro.com/pc/soft/novel_supporter/manual/doc.html

まだバグなどあると思うので、発見したらメールでご連絡下さい。

2017/02/18(土)

久し振りにアップデートです。PCを長期起動していた際に、表示が速くなってしまう問題の原因が分かったので、対策を施しました

2017/01/01(日)

コミケ91(2016冬コミ)頒布物のDL販売を開始しました。

新刊ゲーム「TinySRPG2」です。

2016/12/31(土)

コミケ91(2016冬コミ)頒布物のDL販売を開始しました。

まずは、新刊「HTML5+NW.jsで 同人ゲームを作る 基礎知識」です。

2016/12/12(月)

LINK
 新刊「HTML5+NW.jsで 同人ゲームを作る 基礎知識」の情報公開を始めました。


 この数年、HTML5+NW.jsで同人ゲームを作っています。そこで、Web技術で同人ゲームを作るための基礎知識の本を書きました。

 HTML5+NW.jsの環境には、色々と癖があり、それをあらかじめ知っておけば、面倒な試行錯誤をしなくても、ゲームを作ることができます。

 各種バッチファイルや、リソース読み込みの関数などは、全てソースコード付きです(本を買えば、おまけのPDF版と一緒にダウンロードできます)。

2016/12/05(月)

 新刊ゲーム「TinySRPG2」(シミュレーションRPG)の体験版と動画を公開しました。



 もしバグがあれば、お知らせください(汗

 コミケまで、まだ時間があるので、ぼちぼち改良していきたいところです。




 新刊情報のリンクの際は、下記宛で、よろしくお願いします。

http://crocro.com/circle/event/comike/91/index.html

 サークルへのリンクの際は、下記宛で、よろしくお願いします。

http://crocro.com/circle/

2016/11/29(火)

 新刊ゲームは「TinySRPG2」です。シミュレーションRPGを頒布します。



 とりあえず、テストプレイまで終わりましたので、コミケ91用のページを作成しました。

 新刊情報のリンクの際は、下記宛で、よろしくお願いします。

http://crocro.com/circle/event/comike/91/index.html

 サークルへのリンクの際は、下記宛で、よろしくお願いします。

http://crocro.com/circle/

2016/08/20(土)

 コミケで頒布した「TinySRPG」の最初のステージを、ブラウザで遊べるようにしました(モダンブラウザ向け)。

 DLできる体験版もあります。

http://puzzleandgame.com/ja/tiny-srpg/

2016/08/16(火)

新刊ゲーム「TinySRPG」と、新刊本「TinySRPG アルゴリズムブック」のDL販売を開始しました。

2016/08/07(日)

コミケ用の新刊本として「TinySRPG アルゴリズムブック JavaScriptのコードで学ぶ シミュレーションRPGの処理」という本を出します。

新刊ゲームの「TinySRPG」のアルゴリズム解説本です。

というわけで、どちらもよろしくお願いします。

2016/07/28(木)

 コミックマーケット90用ページを作成しました。

 まだ、作りかけで、仮の画像ですが、そろそろ作っておかないといけないので、ちゃちゃっと用意しました。

 というわけで、コミケは3日目、日曜 西地区 c-43b「るてんのお部屋」です。

 新作として、シミュレーションRPGを、エンジンから開発しています。

2016/07/26(火)

 文藝春秋より出る、拙作小説「裏切りのプログラム ハッカー探偵 鹿敷堂桂馬」の専用ページを作りました。

裏切りのプログラム
ハッカー探偵 鹿敷堂桂馬


 本の予約は既に始まっていますので、是非、ご予約よろしくお願いします。

2016/07/25(月)

窓の杜にて、紹介していただきました。

今年の松本清張賞の最終候補に残った小説が、文藝春秋から刊行されることになりました。

『裏切りのプログラム ハッカー探偵 鹿敷堂桂馬』というタイトルです。

表紙はうめ先生に描いていただきました。

詳しい話は、また後ほど書きます。

2016/06/08(水)

今回は、HTMLの話です。普段見慣れているWebページの中身です。

HTMLは、ハイパーテキスト マークアップ ランゲージの略ですが、ハイパーテキストという言葉を単体で聞く機会は、ほぼないですね(^^;

2016/04/27(水)

 プログラムのサンプルとして作っていた、猫の石のシンプルなリバーシを、PuzzleAndGame.comにアップロードしました。

Cat-SimpleReversiAndroid

 プログラムは40KB強、アルゴリズム部分は70行程度です。

 簡単なプログラムな割りには、そこそこ指します。触ってみてください。

2016/03/07(月)

 「クロクロ・ツールズ」に「面積換算」を追加しました。

 様々な単位や、東京ドームなどの比較対象で面積を換算します。数値を入力すると、リアルタイムで各種値が変更されます。

面積換算

 割りと、自分で計算することが多いので、こういうのを作りました。

 というわけで、誰でも使えるようにしておきましたので、ご自由にお使いください。

2016/02/28(日)

 「SUZURI」という、グッズを作成して、販売可能なサービスを利用して、「番猫クロクロ」のグッズを作ってみました。

 すごく簡単にできるんですね。

 きちんとしたマニュアルがないのは、ちょっとマイナスですが、それを補って余りある手軽さです。

 そして、グッズを先に製造しておかなくてよいので(売れてから手数料が引かれるモデルなので)、先出しのお金がかからないのが、魅力的なサービスですね。

 というわけで、しばらく、画像を少しずつアップしてみようと思います。

クロクロ・ショップ ( crocro ) のオリジナルアイテム ∞ SUZURI(スズリ)



2016/02/15(月)

 最近、黒板風の表現に凝っていて、今日「黒板文字」というWebアプリを作りました。

黒板文字

 黒板風に文字を描いてくれます。こういった黒板風の文字を大量に作りたかったので。

 というわけで、誰でも使えるようにしておきましたので、ご自由にお使いください。

2016/02/02(火)

 うちのサイトは、いちおう法人名義のサイトではあるのですが、分類としては、「古き良き個人サイト」と分類してよいと思います。

 その「個人サイト」のブログ部分は、「News Collector」という自前プログラムで動いています。

 その昔「個人ニュースサイト」というものが流行った頃に、自分でプログラムを書いて、そういったサイトの更新を、しやすくしていたのですね。

 その後、「個人ニュースサイト」から「ブログ」へと、世の中の流行が変化したのですが、過去のデータをぶった切るのも、もったいなかったので、同じプログラムを建て増しして運用してきました。

「News Collector」の最初のバージョンは、2001年の3月23日。そこから15年ほど運用してきたのですが、さすがにプログラムを1から書き直した方がよい状態になっていました。

 でも、それだけ長く運用してきたコードをリプレースするのって、かなりしんどいのですね。

 とは言っても、メンテナンス コストが高くなりすぎて、メンテナンスが困難になっていたので、先週末と先々週末の4日ほどを使って、全面的にリニューアルしました。

 その結果、プログラムのメンテナンス性を取り戻せました。というわけで、その時の話をまとめておきたいと思います。

2016/02/01(月)

 この投稿はテスト投稿です。

 上手く投稿できているか、実運用で実験するための投稿です。

 というわけで、この投稿自体に、有用な情報は何も含まれていません。

 そういうわけですので、この投稿は、華麗にスルーしてください。

 みなさまのスルー力が、激しく試される投稿です。

 それでは今から投稿します。

2016/01/25(月)

 ここ数年、「NW.js(旧node-webkit)」を触ってきました。

 そして、先週の金曜日の夜から、今週の朝にかけて「Electron」で、ブログ更新用ソフトを作りました。

 というわけで感想です。



● 方向性がだいぶ違う


「NW.js」も「Electron」も、「node.js」+「WebKit」なのですが、方向性が大きく違うと感じました。

「NW.js」は、既存のウェブアプリに「node.js」の機能を追加した印象です。

「Electron」は、「node.js」のプログラムから「WebKit」を呼び出したものです。

 そういった違いが、色濃く表れるのは、複数ウィンドウを使う場合です。
 Webサイトのブログ周りですが、ローカルアプリの部分を週末にごっそりと改良しました。

 2002年にWSH(Windows Scripting Host)で書いたプログラムを全面的に刷新して、Electronで書き直しました。

 その際に、以前から懸案だったシンタックスハイライトに対応をすることにしました。

SyntaxHighlighter」「Google-code-prettify」「highlight.js」を検討して、導入が楽で、軽くて、メンテナンスが継続している「highlight.js」を使うことに決めました。

 この手のシンタックスハイライト系のJavaScriptですが、基本的に静的なHTMLに対して、ファイル読み込み後に装飾をするといった処理手順になっています。

 しかし、Electronでブログの執筆をするという用途から、動的に生成された「pre」タグに対して、シンタックスハイライトをしなければなりません。そこで、少し工夫が必要でしたので、そのコードをメモしておこうと思います。

 シンタックスハイライト導入の実験ということで。「highlight.js」は「<pre><code>〜</code></pre>」に対応しているので、その形式で指定しています。

<!-- /* highlight.js */ https://highlightjs.org/ -->
<!-- CSS は 以下で選ぶ。導入時は .min.css にする。
https://highlightjs.org/static/demo/
https://github.com/isagalaev/highlight.js/tree/master/src/styles -->
<link rel="stylesheet" href="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.1.0/styles/tomorrow-night-bright.min.css">
<script src="http://cdnjs.cloudflare.com/ajax/libs/highlight.js/9.1.0/highlight.min.js"></script>
<script>
// highlight.js コード表示用コード
hljs.configure({tabReplace: " ", useBR: true});
hljs.initHighlightingOnLoad();
var execHljs = function(tgt) {
$(tgt).find("pre code").each(function() {
var $ths = $(this);
hljs.highlightBlock(this)
setTimeout(function() {
$ths.html($ths.html().replace(/\t/g, " "));
$ths.css({fontSize: "1.2em", lineHeight: "150%"});
$ths.find(".hljs-comment").css({color: "#0ff"})
}, 10);
});
};
$(function() {execHljs(document)}); // 読み込み時描画用

// DOM動的追加時描画用
$(function() {
var observer = new MutationObserver(function(mutations) {
mutations.forEach(function(mutation) {
if (mutation.addedNodes.length == 0) {return}
for (var i = 0; i < mutation.addedNodes.length; i ++) {
execHljs(mutation.addedNodes[i]);
}
});
});
observer.observe(document, {childList: true, subtree: true});
});
</script>

2016/01/23(土)

「クロクロ・ツールズ」に「HTMLタグ除去」をアップしました。

 タブやスペースの除去や、aタグのURLを展開する機能もあります。

HTMLタグ除去
 「KDP(kindle direct publishing)」を始めたということで、「番猫クロクロ」その1〜4の、kindle版を作成して公開しました。



 前回の「マンガで分かるJava入門講座 基本〜オブジェクト編」は、HTMLから「kindlegen」で「.mobi」ファイルにコンバートしましたが、今回は「Kindle Comic Creator」で電子書籍を作りました。

 また、その際に、「Kindle Comic Creator」で手軽に目次データの設定を行うためのツール「KC2 目次ツール」も作りました。

 KDPは、さくさくと公開できてよいですね。

2016/01/22(金)

「クロクロ・ツールズ」に「KC2 目次ツール」をアップしました。

KDPでマンガをリリースする際に、「Kindle Comic Creator」で手軽に目次データの設定を行うためのツールです。

KC2 目次ツール

2016/01/21(木)

 「KDP(kindle direct publishing)」で本を1冊出してみました。



 Webで公開している「マンガで分かるJava入門講座 基本〜オブジェクト編」のkindle版です。

マンガで分かる Java入門講座

 PDFで1100ページ以上ある原稿なので、kindleやタブレットなどの方が読みやすいです。

 PDF版は去年の8月に出していたのですが、KDPはやったことがなかったので、ずっとペンディングしていました。

 もっと早くやるべきでした。KDP自体は、数年前からやろうとしていたのですが、面倒だと思い、放り出していました。

 というわけで、KDPで1冊出してみた感想をまとめてみたいと思います。



● KDPに登録

 KDPが気になっていながら、ずっと利用していなかった理由に「EIN(Employer ID Numbers)」の取得がありました。
「クロクロ・ツールズ」に「電卓」をアップしました。

 シンプルな電卓です。計算履歴から数字を入力欄に送れます。

電卓

2016/01/19(火)

 2015年の冬コミの時に、後輩から言われました。

「柳井さん。同人ソフト界隈では、コミケで買ったゲームのサークルを、ダウンロード販売サイトで探して、過去ゲームを物色したりするんですよ!」

「なんだって〜〜〜!」

 とまあ、そんなことがありまして、最大手らしい「DLsite.com」に、同人ゲームを登録してみました。

・妖怪がえし

・Army Defense 3

・Army Defense 2

・Army Defense

 これで、急に売れるようになったりとかはないと思いますが、露出が増えるのは、よいことかなあと。

 もっと古いゲームもあるのですが、ハードディスクからサルベージするのが大変なので(汗

 少しは数が動くようなら、そのうち、そちらも出してみたいですね。思っていたよりも登録が楽なので、驚きました。

2016/01/15(金)

「クロクロ・ツールズ」に「今日は何の日」をアップしました。

 Wikipediaの情報を自動で得て、表示します。

今日は何の日

2016/01/14(木)

「クロクロ・ツールズ」に「時計」をアップしました。ブラウザ内で、最大化させて表示可能です。

時計

2016/01/13(水)

「クロクロ・ツールズ」に「ヘクスシート作成」をアップしました。PDFやPNGで作成できます。

ヘクスシート作成

2016/01/12(火)

「クロクロ・ツールズ」に「方眼紙作成」をアップしました。PDFやPNGで作成できます。

方眼紙作成
「クロクロ・ツールズ」に「HTML特殊文字変換」をアップしました。よく必要になるので。

HTML特殊文字変換
「クロクロ・ツールズ」に「進数変換」をアップしました。けっこう必要になる計算なので。

進数変換

2016/01/11(月)

「クロクロ・ツールズ」に「領収書作成」をアップしました。

 ブラウザだけで日本語の入ったPDFを生成します。プレビューはIE以外。DLはIEも可。Chrome、FFは両方可。情報を調べるのが大変でした。

領収書作成

2016/01/08(金)

「クロクロ・ツールズ」の「Android宣伝用画像生成」に、Facebook OGP画像、Twitter Card用画像の出力機能を追加しました。

 また、背景にタイル、単色を追加しました。

Android宣伝用画像生成
「クロクロ・ツールズ」に「ブックマークレット作成」を追加しました。

短縮化してブックマークレットにします。サンプル色々あり。

ブックマークレット作成

2016/01/07(木)

 だいぶ前にWebで公開した「猫がえし」のAndroid版を公開しました。

猫がえし

猫がえし - Google Play の Android アプリ

 Web版も、ちょこちょことバージョンアップしています。

2015/12/22(火)

 コミケ89に参加します。12月31日 3日目 木曜 東地区 モ-51a「るてんのお部屋」です。

 現在の新刊は、以下の2つです。

・ゲーム「妖怪がえし Youkai Reversi」
・本「JavaScriptで 実行時エラーを起こす 100+の技法 — The Art of Runtime Error —」


 既刊も持っていきます。

・Army Defense 3
・JavaScript:特殊コードゴルフ マニアクス
・アルゴリズムを解説する本 その1 AR認識編

2015/12/02(水)

 2015年12月2日に「Google Feed API」が「This API is no longer available.」になり、RSSをJSONP形式で簡単に取得することができなくなりました。

 そこで、「Googleスプレッドシート」を使って、RSSを定期取得して、JSONPで吐き出す実験をして、上手くいきましたので、その方法をまとめておきます。

●スプレッドシートの作成

・「Googleドライブ」で「Googleスプレッドシート」を作成する。
・スプレッドシートのタイトルを入力する。

●スクリプトの入力と初回実行

・メニューの[ツール]→[スクリプトエディタ]で、スクリプトエディタを開く。
・以下のコードを入力する。

/*
* プロジェクト名「rss_hatena」
*
* 「はてブ 新着エントリー」からRSSを取得
* 参考:
* gas - Google Apps ScriptでTwitter botを作ってみた - Qiita
* http://qiita.com/abe-perorist/items/2cedc0f577b4f10b4ccb
*/
function myFunction() {
var url = "http://b.hatena.ne.jp/entrylist?sort=hot&threshold=&mode=rss";
clear();
scraiping(url);
}

function clear() {
// シートを扱う準備
var myActiveSpreadSheet = SpreadsheetApp.getActiveSpreadsheet();
var myActiveSheet = myActiveSpreadSheet.getSheets()[0];

// 取得したurlを全てクリアする
myActiveSheet.clear();
}

function scraiping(url) {
// シートを扱う準備
var myActiveSpreadSheet = SpreadsheetApp.getActiveSpreadsheet();
var myActiveSheet = myActiveSpreadSheet.getSheets()[0];

// RSSを取得
var response = UrlFetchApp.fetch(url);
var myRegexp = /<item [^>]+>([\s\S]*?)<\/item>/gi;
var match = response.getContentText().match(myRegexp);

// タイトルとURLを抽出してドライブシートに貼り付け
for (var i in match) {
var txt = match[i];
var ttl = "";
var url = "";
try {
ttl = txt.match(/<title>([\s\S]+?)<\/title>/)[1];
url = txt.match(/rdf:about="(.+?)"/)[1];
} catch(e) {}
myActiveSheet.getRange(myActiveSheet.getLastRow()+1, 1).setValue(ttl);
myActiveSheet.getRange(myActiveSheet.getLastRow(), 2).setValue(url);
}
}

・[Ctrl+S]で保存。プロジェクト名は「rss_hatena」にして[OK]ボタンを押す。
・[右三角](実行)ボタンを押す。
・「承認が必要です」とダイアログが出るので[続行]ボタンを押す。
・[許可]ボタンを押す。(外部との連携のために、最初の1回は承認が必要)

●スクリプトの定期実行

・「時計マーク」(現在のプロジェクトのトリガー)を押す。
・「現在のプロジェクトのトリガー」と出るので、「トリガーが設定されていません。今すぐ追加するにはここをクリックしてください。」リンクを押す。
・[実行]は「myFunction」、[イベント]は[時間主導型][分タイマー][30分ごと]を選ぶ。
・[保存]ボタンを押す。

●スプレッドシートをJSON形式で外部に公開

・スプレッドシートのページに戻る。
・メニューの[ファイル]→[ウェブに公開]を押す。
・「ウェブに公開」ダイアログが表示されるので、[公開]ボタンを押す。
・リンクが選択状態になって表示されるのでコピーする。
・「https://docs.google.com/spreadsheets/d/[key]/pubhtml」の「[key]」の部分をコピーする。
・「https://spreadsheets.google.com/feeds/cells/[key]/od6/public/values?alt=json」の「[key]」の部分をに貼り付ける。
・このURLがJSON形式(JSONP対応)の外部URLになる。

●jQueryで読み込む

・以下のコードを実行すれば、「[{title: "hoge", link: "hoge"}, {…}, {…}, …]」形式の「dArr」を得ることができる。

var url = "上記で作成したURL";
$.getJSON(url, function(data) {
try {
var dArr = [];
$.each(data.feed.entry, function(i, x) {
var pos = i / 2 | 0;
if (i % 2 == 0) {
dArr[pos] = {};
dArr[pos].title = x.content.$t;
} else {
dArr[pos].link = x.content.$t;
}
});
} catch(e) {
console.log("rss load", e);
}
});

●実行サンプル

Routine News

●参考

GoogleスプレッドシートのデータをJSONで取得してみた | アライドアーキテクツのクリエイターブログ
gas - Google Apps ScriptでTwitter botを作ってみた - Qiita

2015/11/02(月)

「文字数計測」のAndroid版を作成して、公開しました。

ぼちぼち、Android化しています。
Androidマーケットに登録する「宣伝用画像」の作成が面倒な時用に、生成するツールを作りました。

512x512のアイコンをドロップして、タイトルを入力すると、それっぽい画像ができます。

宣伝用画像
ドキュメントに貼るような、はんこ画像を生成するツールを作りました。

デフォルトは「合格おめでとう」の文字が入っています。

「よくできました」とかも、ありだと思います。

文字はんこ画像生成

2015/10/21(水)

 今回は、レイヤーのお話です。Photoshopなど、多くのソフトで見ます。

 こういった重ねて描画というのは、プログラムでも使いますね。
 今回は、透明インデックスカラーのお話です。GIF画像でよく見る奴ですね。

 ジャギが出るので、使いどころが限定されます。

2015/10/15(木)

 ちょっと必要だったので、ローカルで使っていたツールのソースを流用して作成しました。

 Android開発をよくしている人は、すでに持っているような感じのツールです。

2015/10/05(月)

「クロクロ・ツールズ」というサイトを公開しました。

クロクロ・ツールズ

 最近は、JavaScriptだけで、かなりのことができます。そこで、ブラウザ上で様々なことを行う、便利アプリのサイトを作ってみました。自分の利便性と、勉強を兼ねて。

 オープン時は、以下の15種類のWebアプリが使えます。Web開発系の人に、有用なツールが多いです。JavaScriptで、こんなことができるという、サンプルにもなっていると思います。

・パスワード生成
・ストップウォッチ
・文章差分表示(文字単位)
・履歴電卓
・年月日電卓
・時間電卓
・QRコード生成
・QRコード解析
・Data URIスキームに変換
・URLエンコード/デコード
・ブラウザ情報表示
・文字数計測
・単語カウント
・Google検索URL短縮
・ダミー画像生成

2015/09/15(火)

 仮公開から3週間と少し経ち、問題なく動いているようなので、最新の問題を追加した現時点で、本公開に移行しました。

2015/09/14(月)

 以前より懸案だった「クロクロ ショップ」をリニューアルしました。開店休業、更新なしという、あまりよろしくない状態でしたので。

 簡単にアイテムを追加できるように、開発体制を整えました。公開するまでに、ずいぶんと時間がかかってしまいました。

 というわけで、記念に夏コミで出した「JavaScript:特殊コードゴルフ マニアクス」を追加しておきました。

 今回はアルファチャンネルです。

 画像編集ソフトでは、よく出てくる概念です。

 多くの場合、透明度を表す、グレースケール画像になります。
 今回はグレースケールと、2値画像です。

 グレースケールは印刷で、2値画像は領域の判定のプログラミングなどで使いますね。

2015/09/05(土)

「Google Chrome」のユーザーデータをポータブル化する(別ディレクトに移す)方法です。

 この2〜3年ぐらい、Firefox Portable をメインに使ってきたのですが、最近どうにも遅くなり、キャッシュの削除やDBの整理でも駄目な感じが続いていました。

FirefoxPortable Localization PortableApps.com

 何が辛いかというと、複数のタブを開いた場合、切り替えに2秒ぐらいかかる……。死ねる。

 そこで、Firefox からいったん離れて、Google Chrome にふたたび乗り換えることにしました。ブラウザを変えるタイミングって、だいたい、こういう時なんですよね。



 さて、乗り換えなのですが、すんなりいきませんでした。以下のような、私的な条件があるからです。

・Cドライブ以外にデータを入れて、他のデータとともに、ブラウザ環境もポータブルHDDで移動可能にする。

 数年前、PCの初期不良で何度も工場にPCを送るはめになり、そのたびにCドライブのデータを消すのが面倒だったのです。

 なので、データはすべて外付けにして、他のPCにUSBをさせば、すぐに仕事を続行できるような環境にしました。

 というわけで、この2〜3年ぐらいは、FireFox Portable をメインにして、Google Chrome Portable (プライベートモード)をサブで使っていました。

2015/08/21(金)


 CodeIQにて、2013年11月より出題している一連の「ダンジョン問題」は、「禁止文字付きコードゴルフ」です。

CodeIQ

 「コードゴルフ」というのは、ある一定の処理を行うプログラムを、可能な限り短いソースコードで書く遊びです。ゴルフが少ない打数を目指して競うことに由来しています。短く書くことから、ショートコーディングとも呼びます。

 「ダンジョン問題」では禁止文字があるので、普通に書けば簡単な四則演算や条件分岐を、巧みに避けて書く柔軟な思考が要求されます。このテクニックの一部は、2015年の夏コミで「JavaScript:特殊コードゴルフ マニアクス」という同人誌にまとめました。

 この一連の「ダンジョン問題」は、私が特に気に入っているシリーズです。今回、CodeIQ事務局より、私が過去に出題した問題の転載許可をいただきました。そこで「PuzzleAndGame.com」に専用のページ「コードダンジョン」を設けて、公開していくことにしました。

PuzzleAndGame.com
コードダンジョン

 初日の今日は、最初の問題として出題された「FizzBuzzのダンジョン」を公開しています。これから数日かけて、過去の問題を移植して公開していこうと思います。

 というわけで、すでに解いた方も、まだ解いたことがない方も、ぜひチャレンジしてみてください。解いたコードは、Google Formで投稿可能にしていますので、自由に投稿していただければと思います。

 また、コードをツイートしたり、共有したりすることも可能です。#以降に、圧縮したコードが付く形式です。

 過去問は、けっこうな数があるので、早めに全部公開したいところです。

2015/08/13(木)

 表題の通りです。2013年に書いた「マンガで分かる Java入門講座」の第2版を作成しています。

 ほぼ作業が終わっているので、盆明け後に第2版完成を宣言しようと思います。

 マンガをけっこうなページ見直して修整して、テキストやコードも改良しています。サンプルコードのダウンロードファイルの中身も、1〜2割増えています。

マンガで分かる Java入門講座



 さて、今回、新しい試みとして、本講座を全部収めたPDF版の有料販売を始めました。全ての項目に「しおり」が付いており、各章に分割したファイルも同梱されています。

PDFのダウンロード

 ページ数は1165ページ。その内、マンガ部分は832ページです。

 作成の表向きの理由は、ローカルで全てを手元に置いて、いつでも見られる状態にしたい。そういった要望に応えるためです。

 裏向きの理由は、1年ぐらい準備に時間をかけて本コンテンツを公開したけど、特にお金が発生していない。そういったものです。

 PDF版を作ったとはいえ、Webで公開しているバージョンは、完全に公開したままにしています。

2015/08/07(金)

 窓の杜さんで記事を書きました。ついでに、実録レポートということで、イラストも1枚描いています。

 想像以上に描きやすく、かなりよかったです。

 あと、レイアウトが妙に手に馴染んで、分かりやすかったです。非常に練り込まれている印象でした。


 CodeZineによる、2015年夏コミの技術系サークル紹介記事です。

 うちのサークル「るてんのお部屋」(日東Q-35a)も紹介されています。

 今回の新刊は「Army Defense 3」と「JavaScript:特殊コードゴルフ マニアクス」です。

「るてんのお部屋」(日東Q-35a)コミケ情報

2015/08/04(火)

 コミケ88の、8月16日(3日目、日曜)東地区 Q-35a「るてんのお部屋」で頒布する予定の同人ゲーム「Army Defense 3」の動画を、Youtubeで公開しました。

 ちまちまと動画を作成しました。コミケの時ぐらいしか作らないので、なかなか慣れないですね。

 コミケ88の、8月16日(3日目、日曜)東地区 Q-35a「るてんのお部屋」で頒布する予定の同人ゲーム「Army Defense 3」の体験版を公開しました。

 今回のコミケは、珍しく前日にWebサイトに情報公開などではなく、8月頭から情報を公開できています。

 われながら驚いています。

2015/08/02(日)

 コミケ88の、8月16日(3日目、日曜)東地区 Q-35a「るてんのお部屋」で頒布する予定の同人誌を執筆しました。

 紹介ページに情報を追加しています。

「+や%の演算子が使えない」
「if文が使えない」
「Mathが使えない」
「数字や文字列が使えない」

 そんな過酷な環境でのベストプラクティス!

「缶切りがない場合に、缶詰をどうやって開けるか?」

 それと同じように、「演算子などが使えない場合に、どうやって計算をするのか?」そういった、数々のテクニックが詰まっています。

 多くの人にとって、貴重なサバイバル ブックになると思います。実務での実用性は皆無です。

2015/08/01(土)

 コミケ88の、8月16日(3日目、日曜)東地区 Q-35a「るてんのお部屋」で頒布する予定の「Army Defense 3」が完成しました。

 というわけで紹介ページを作りました。

 これで無事頒布される予定です。あとは、CDを焼いたりしなければなりません。それと、体験版も作りたいところです。

 とりあえず、新刊が落ちることはなくなったので、一安心です。

2015/07/21(火)

「Google Chrome」で、「chrome://flags」をアドレスバーに入れて「タッチ イベント」を「有効」の状態にしていた場合に、以下の現象が発生しました。

A.「ontouchstart」「ontouchmove」「ontouchend」などのプロパティが存在する。
B.しかし、それらのプロパティに関数を登録しても、そのイベントは呼び出されない。

 Aの結果、モバイルのタッチデバイスかどうかを判定するため、「"ontouchstart" in window」のような判定をした場合、「true」(タッチ対応端末)になります。

 しかし、Bの結果、「ontouchstart」に関数を登録しても、画面のクリックでは何も起きません。



「chrome://flags」の「タッチ イベント」は、通常では「自動設定」です。これを「有効」にすると、おそらくタッチイベントに対応していなくても「ontouchstart」「ontouchmove」「ontouchend」などのプロパティを作るようです。

 そのため、モバイル用にタッチを高速化するJSライブラリによっては、クリックができなくなります。具体的には、「tappable.js」でこの問題が発生しました。

 この「tappable.js」は、3年以上更新がないライブラリなので、仕方がないと思います。Windows8のリリースが2012年夏ですし。

tappable - github

 というわけで「fastclick」に変更して、問題がないことを確認しました。

fastclick - github
 新しいサイト「PuzzleAndGame.com」をベータオープンしました。

PuzzleAndGame.com
http://puzzleandgame.com/ja/


 Web上で遊べるパズルやゲームのサイトにする予定で、今年の頭ぐらいにドメインを取りました。



● 遊べるゲーム

 現在、以下の5種類のゲームが遊べます。また、いくつかのAndroidゲームのリンクを置いています。

猫がえし

 猫にちなんだ変形盤面のリバーシゲーム。ステージをクリアすると、使える猫の壁紙が増えていきます。



アーミー ディフェンス 2

 かわいいキャラの、タワーディフェンス系ゲーム。

2015/07/20(月)

 今回は、インデックスカラーのお話です。

 GIF画像として利用する以外にも、ゲーム開発の際に利用したりします。

 昔は、こういった画像で、色違いを作ったりしていましたね。

2015/06/24(水)

 コミケに当選しました。

「8月16日 3日目 日曜 東地区 Q-35a るてんのお部屋」です。

 いつものように、同人ゲームを出す予定です。

 というわけで、お暇な方は、遊びに来て下さい。

 あと、数年越しで、同人サークル用のページを作りました。今までなかったので(汗


「過去ログ検索&全表示」
ページ単位で表示「00000167.html」

クロノス・クラウン Topに戻る