Home > KKDE関連 Archive

KKDE関連 Archive

KAGEX++スクリーンエディタ その1

  • Posted by: MRY
  • 2010年5月 9日 22:41
  • KKDE関連

明日はiPadの予約受付開始ですね。
まぁ、私は買いませんが、、、
個人的にはAndroidのヤツがほしいので、日本で手軽に変えるようなAndroidタブレットを誰か売らないかなぁ・・・(DELLとかはやってくれそうな気が、、、あとは来年ぐらいにはNECあたりが・・・とか?)

さて、だいぶ間が空いてしまいましたが、KAGEX++を作成するに当たりまずは画面作成用の画面を作成し始めています。
基本的にはVisualStudioのForm作成画面みたいなのを目指して作っています。
それを目指して作ったら今のところ↓のような感じになっています。

まぁ、まだ「見た目だけ」な段階で中身は全然動いていないのですが、構成する画面は3つあります。

◆ スクリーンエディタ画面

吉里吉里の画面を模したキャンパスとなる画面です。
テキストエディタと同じ領域に表示するようになっていて、画面をはみ出した分はスクロールする必要があります。
基本的には大体の位置決めができたらいいなぁぐらいに考えていて、吉里吉里で表示する画面との完全な一致は目指していません。
なので、ある程度配置とか設定とかしたらプレビューボタンで実際に吉里吉里上で動かしてみる必要があります。

◆ スクリーンツールボックス

スクリーンエディタ上にドロップできるコントロール一覧を表示している画面です。
スクリーンエディタにアイテムを新しく配置するにはこのスクリーンツールボックスからドラッグ&ドロップでコントロールをスクリーンエディタ上に置く必要があります。
本来は各コントロールの横にはアイコンとかが置けたらいいのですが、、、たぶんそのまま無しでいくと思います^^;

◆ スクリーンプロパティ

各コントロールの設定情報を編集するための画面です。
スクリーンエディタ上でコントロールをクリックすると選択状態になり、選択したコントロールのプロパティをスクリーンプロパティ画面に表示します。
また、逆にスクリーンプロパティ画面の項目を編集する(たとえば位置とか)とスクリーンエディタ上に反映されます。
基本的にはスクリーンエディタ上で大体の位置を設定して、スクリーンプロパティで細かい(1ドット単位の)設定を行うという使い方になると思います。

KAGEX++の話

  • Posted by: MRY
  • 2010年4月13日 19:53
  • KKDE関連

KKDE version 2.0.0 α5 に搭載予定のKAGEX++について構想(妄想とも言う)とかを書いておきたいと思います。

◆ KAGEX++って?

KAGEX++というのはKAGEXに加えて、KKDEからアクセスが行えるような機能を追加し作成・デバッグ時に便利になれるような改造を施したフレームワーク(ライブラリ)です。
基本的には作成中に便利になるような機能を目指しています。

◆ KAGEX++ってα4にも入っているけど?

まず、現在のα4にもKAGEX++というのが入っていますが、これは、

・KKDEからアクセス(たとえばラベルジャンプ機能やワールド拡張プレビューなどをKKDEから呼び出せるようにしたもの)が行えるような機能を追加

したKAGEXです。
そのほかには機能としては追加していません。

◆ 何が変わるのか?

α5に搭載するKAGEX++はアドベンチャー/ノベルゲームとして必要な基本的な画面をあらかじめテンプレートとして用意し、KKDEからカスタマイズが行えるような機能を追加します。

手順としては、

1.KKDEでテンプレート(たとえばセーブ画面用とか)を選ぶ
2.(KKDEで)画面のカスタマイズをする(たとえば背景画像の変更、ボタン位置の変更など)
3.コード生成!

というのを考えています。
ただ3のコード生成で、

・位置情報などを組み込んだTJS(またはKS)ファイルを直接生成する
・位置情報などだけを保持したファイル(たとえばCSV)を保存し、画面表示時にそのファイルを読み込む

のどちらにするかはまだ検討です。

KKDEの始め方を追加しました

  • Posted by: MRY
  • 2010年3月17日 22:20
  • KKDE関連

KKDEを初めて使用する人用にKKDEの始め方というドキュメントを追加しました。
主にプロジェクトの作成方法を記載しています。
なぜ今まで無かったんだーみたいな内容ですけど、KKDEを使い始めるきっかけになる、、、かなぁ。

これ作っていたら、KAGEX++(というかKAGEX)についても何か書いておかないと、全然使い方がわからないのかもしれないとか思ったので、そのうちそれらについてもドキュメント追加しようと思ってます。

KKDE version 2.0.0 α4 を公開しました。

  • Posted by: MRY
  • 2009年11月23日 20:24
  • KKDE関連

KKDE version 2.0.0 α4 を公開しました。
前回のバージョンアップからだいぶ間が開いてしまいましたが、一つの区切りまできたのでα4として公開することにしました。
というか、あまりにも時間が空きすぎてて何を更新したのかあまり覚えていなかったりしますが、メモによると以下の機能を新たに実装しています。

・ワールド拡張ビューワー拡張プレビュー機能実装
・ワールド拡張ビューワーに表示フィルター機能追加
・ワールド拡張アクションエディタ機能実装
・シナリオジャンプ(定義移動、参照移動、ラベル移動)機能実装(*.ksファイルのみ)
・タグヘルプ表示機能(KAG3のみ)
・ラベルから実行機能(KAGEX++使用時のみ)
・KAGEX rev.4609版(2009/11/11版)のタグ入力補完対応
・KAGEX++プロジェクト作成時のテンプレートをKAGEX rev.4609ベースに変更

また、そのほかにもいくつか細かい仕様変更と修正が行われています。

α4の予定

  • Posted by: MRY
  • 2009年5月25日 22:59
  • KKDE関連

KKDEの次期公開バージョンはβ1にしよう!とか思っていましたが、まだ全機能は乗せ終わりそうにないので、次はα4ということで出そうと思っています。
とりあえずversion 2.0.0に乗せようと思っているもので残っているのは、

・KAGタグ挿入機能
・KAGEXタグ挿入機能
・KAGEX++

といった感じです。
まぁ、大きな機能として書くとこれだけなんですが、どれもかなりの工数になりそうでちょっとやそっとじゃ終わりそうにないという状況になってます^^;
KAGEXタグ挿入機能はダイアログだけで40個・・・、KAGEX関連はそもそも中身の機能はまだ未定です。(いろいろと構想(という名の妄想)はあるんですが・・・。)

タグヘルプリファレンス機能

  • Posted by: MRY
  • 2009年5月16日 22:39
  • KKDE関連

前回ちょっと書いていますが、タグリファレンス機能を追加しました。
この機能ではいくつかの表示モードを乗せる予定でしたが、いろいろと作ってみて結局以下の2つで表示できるようになります。

1. KKDEにドッキングできるウィンドウ(KKDE付属内部ブラウザ)
2. KKDEにドッキングできない別ウィンドウ(KKDE内部ブラウザ)

ということで、前回言っていたやつよりもデフォルトブラウザでは表示できません。
これは、実際にやってみると

・Firefox(v3)だとTags.html#closeのようになっているとき#以降の指定が無視される
・IE(v8)だと外部からどうたらと出て、Tags.html#closeのようになっているとき#以降の指定部分へ飛べない

という感じで、使えませんでした。
それならということで、結局内部ブラウザを作って表示することになります。
ただ、内部ブラウザといってもIEのコントロールを貼り付けるだけなので、実際の見た目はIEと同等になります。

↓ドッキング可能なウィンドウで表示したとき
kkde2_ss_33.png

ジャンプ機能いろいろ

  • Posted by: MRY
  • 2009年5月 9日 11:24
  • KKDE関連

ちょっと前回から間が開いてしまいましたね・・・^^;
そんなには時間はとれませんでしたが、KKDEもちょこっとだけ進んでいます。

◆ シナリオ・ラベルへ移動機能

これはjumpタグがあったときに、その上にカーソルを置いてこの機能を実行すると、そのjumpタグにかかれているシナリオファイル・ラベルへカーソルを移動する機能です。
実際にはstorage属性とtarget属性をみて判断するだけですので、jumpタグ以外のタグやマクロでもsotrageまたはtarget属性が存在いていたらジャンプできると思います。

◆ 定義へ移動機能

タグやマクロの上にカーソルを置いて、この機能を実行するとそのタグやマクロを定義している場所へカーソルを移動します。
基本的にはユーザーマクロで意味があるモノで、そのマクロがどんなのだったかとか、改造したいと言ったときに簡単にジャンプできるようになります。
KAGやKAGEXのタグの上で実行した場合はKKDEで定義しているダミーマクロへジャンプします。

◆ 全ての参照を検索機能

タグやマクロの上にカーソルを置いてこの機能を実行するとそのタグをGrep検索します。
検索結果は通常のGrep検索と同様に検索ウィンドウに表示されます。

◆ タグヘルプ機能

KAG3タグの上にカーソルを置いてこの機能を実行する(F1を押す)と、KAGリファレンスを開いてそのタグの説明を表示します。
今のところ表示方法として、
1. KKDEにドッキングできるウィンドウに表示
2. デフォルトのブラウザに表示
3. 指定したプログラムに表示
を選択で選べるようになる予定です。(面倒くさいようであれば1だけかもしれません)

ちなみに、きちんとしたリファレンスとしてはKAG3だけ存在するのでKAG3だけしか表示できません。
KAGEXもできればやりたいのですが、、、自分で作るしかないですよね。。。
たぶんやるとしたらKAGEXに次いでくるテキストファイルのドキュメントをHTML化ぐらいかなぁと思いますが。

ジャンプ系は以下のような右クリックメニューで表示できます↓
kkde_ss_32.png

タグ挿入機能その1

  • Posted by: MRY
  • 2009年4月18日 13:20
  • KKDE関連

タグ挿入機能というのはKAGやKAGEXのタグを機能から選択して挿入する機能を一覧表示する機能の総称です。
KKDEでは基本的にはタグの名前を打ってその補助として入力補完があるわけですが、このタグ挿入機能はその逆で機能の名前から選択していってタグを挿入します。
ただし、個人的にはただタグを挿入できるだけだと今後搭載するであろうマクロと機能がかぶってしまってあまり意味がないと思っているので、タグと属性をある程度まとめた形の入力フォーム形式にしてそれをダイアログとして表示しようと思っています。

この機能で選べるようにするタグの選択基準ですが、とりあえずは基本的なよく使いそうなタグを選ぼうと思っています。
でも、こういう機能にこそあまり使わないタグが必要な気もする。。。ということでとりあえずは基本的なモノを作ってあとで余力があれば考えようと思います。
(こういうのが欲しいというのがあれば掲示板とかメールでどうぞ。)

まず、KAG関連で作る予定のものは以下のモノです。

◆ メッセージ
改行(r)
クリック待ち(l, p)
メッセージクリア(cm, ct, er)
フォント(font, resetfont)
行スタイル(style, resetstyle)
表示速度(delay)
インデント(indent, endindent)
ルビ(ruby)
インライン画像(graph)
文字位置(locate)
メッセージレイヤ切り替え(current)
メッセージレイヤ属性(position)

◆ レイヤ/画像
画像表示(image)
レイヤ属性(layopt)
レイヤ移動(move)
画面揺らし(quake)
トランジション(trans)

◆ BGM
BGM再生(playbgm, fadeinbgm)
BGM停止(stopbgm, fadeoutbgm)
BGM停止待ち(wb, wl)
BGM音量(bgmopt)
BGM入れ替え(xchgbgm)
BGMフェード(fadebgm)

◆ 効果音
効果音再生(playse, fadeinbgm)
効果音停止(stopse, fadeoutse)
効果音停止待ち(ws, wf)
効果音音量(setopt)
効果音フェード(fadese)

◆ ラベル/ジャンプ
ラベル(*)
リンク(link)
ボタン(button)
サブルーチン呼び出し(call)
サブルーチン作成(return)
シナリオジャンプ(jump/timeout/click/wheel)
マクロ(macro, endmacro)

◆ システム設定
クリックスキップ(clickskip)
プラグイン読み込み(loadplugin)
シナリオ停止(s)
ウェイト(wait)

◆ 変数/TJS
TJS式評価(eval, emb)
条件文(if, endif)
TJSスクリプト(iscript, endscript)

ワールド拡張アクションエディタ

  • Posted by: MRY
  • 2009年4月 7日 23:36
  • KKDE関連

ちょっと、、、というかめちゃくちゃリアル方面が忙しかったのであまり進んでいませんが、今はワールド拡張アクションエディタを作成中です。

以前言ったことがあるかもしれませんが、ワールド拡張アクションエディタというのはワールド拡張定義ファイルの中のアクション定義作成を補助するためのエディタです。
まぁ、基本的にはアクションとして追加できるパラメーターを選択できるようにしたモノで、ワールド拡張ビューワーエディタみたいな感じのモノです。

現在のKAGEXではアクション定義には旧形式と新形式とがあるのですが、本機能では新形式にのみ対応する予定です。
(旧形式はいつ消えるかわからないしね。。。)
また、連続指定についてもサポートしない予定です。(作りがややこしくなるし、自分でつっくけたほうが早いとも思うので。。。)

見た目としては↓のような感じになります。

kkde2_ss_31.png

このツールでアクション作成を行うと以下のようなコードを生成するので、これをenvinit.tjsに手動で貼り付けることになります。

"テストアクション" => %[
	"left" => %[ handler:"MoveAction", value:"@+300" ],
	"top" => %[ handler:"MoveAction", value:"@" ],
	"time" => 2000,
],

ワールド拡張ビューワーエディタ

  • Posted by: MRY
  • 2009年3月20日 19:44
  • KKDE関連

ワールド拡張ビューワーエディタを作成中です。
ワールド拡張ビューワーエディタというのは、前作った拡張プレビューの機能に加えて、属性値等の入力を行えるようにしたモノです。

見た方がわかりやすいので作成中のを出すと↓のような感じで、ちょうどワールド拡張ビューワーでいう属性タグコピー画面と同じような機能を持ちます。

kkde2_ss_30.png

この画面の特徴として以下のようなのがあります。

◆ ほかのウィンドウ(たとえばワールド拡張ビューワーウィンドウ)と違い独立している(ドッキングできない)

これはプレビュー画面である吉里吉里と横に並べて使えるようにするためです。
ドッキングできる状態だとKKDE本体と同じ境界になるためどうしても横に並べるのが難しくなってしまいます。(デュアルディスプレイのように画面がものすごく広い環境だとまた違いますが)

◆ ワールド拡張ビューワーの拡張プレビューと連動している

拡張プレビュー側で選択した内容を共有しているので、たとえば立ち絵を選ぶとプレビューエディタ側でも立ち絵がセットされます。
拡張プレビューでは何をセットしているかがわかりにくいのですが、それをこのプレビューエディタで補います。
また逆にプレビューエディタでは立ち絵やイベント絵等を選びにくい(選べるようには作りますが)ため拡張プレビューで選んでからということも可能です。

ワールド拡張の検索フィルター

  • Posted by: MRY
  • 2009年3月15日 20:35
  • KKDE関連

ワールド拡張ビューワに検索フィルター機能を追加しました。
この機能を使うと指定した文字列にヒットした項目のみを表示するようになります。

ただし、立ち絵の場合だけキャラクタ名/姿勢/服装/表情のいずれかを検索対象として選択しておいてから検索するようになります。
(こうしないと名前部分でヒットしないと表情とかが表示できないためです。ちょっと面倒くさいですが、、、そもそも立ち絵ではそんなに検索は使わないと思います。)

kkde2_ss_29.png

拡張プレビュー

  • Posted by: MRY
  • 2009年3月 9日 23:49
  • KKDE関連

ワールド拡張ビューワーに拡張プレビューという機能を作成中です。

この機能は簡単に言うと、立ち絵とか背景を実際に吉里吉里で動作させます。
こっちのワールド拡張ビューワーの属性タグコピー機能についていたプレビュー機能と同様のモノです。属性タグコピー相当ノモのも後で作る予定です。)
これにより通常のプレビューより以下のような機能が実現できます。

・TLGファイルでもプレビュー可能
・アクションやトランジションもプレビュー可能
・立ち絵を実際に表示した状態を見ることが可能

ただ、ちょっとややこしいのはアクションやトランジションは必ず立ち絵・イベント絵・背景絵のいずれかにくっつける必要があることです。
つまりアクションを表示したいときはまず立ち絵などを拡張プレビューで表示させてからアクションを拡張プレビューする必要があります。
(このあたりの微妙さは実際にやってみないとわからないかもしれません。。。もっとスマートにいかないものかなぁ。。。)

吉里吉里を毎回立ち上げるのは結構時間がかかりそうなので、一度立ち上げたらできるだけ再起動なしでプレビューできるようにしたいと思ってます。
(KKDE1にあったラベル起動を実装しますので、これが終わったらラベル起動も実装する予定です。)

KAGEXワールド拡張エディタ

  • Posted by: MRY
  • 2009年3月 7日 01:08
  • KKDE関連

KAGEXワールド拡張エディタを作っていました。
このエディタはワールド拡張定義ファイルであるenvinit.tjsファイルを作成するGUIエディタです。
ただ、ちょっと作りながら考えた結果、とりあえず作るのを中止することにしました。

理由はいくつかあって、

・非対応な機能はどうやって対応しよう?
たとえば、envinit.tjsファイルはTJSスクリプトでもあるのである意味何でもかけてしまいます。
そのため、エディタとして読み込めなかった場合、それを保存すると当然読み込めなかった部分は削除されてしまうことになります。

・そもそも必要なのか?
ワールド拡張エディタでイベント絵とか背景等の登録はかなり単純なモノでそんなに手間が欠かすモノではありません。
がんばってわかりやすいように作ったとしても、正直なところ"%[]"とかを書かなくていいだけみたいなモノしかできない感じです。

といった理由です。

その代わりといっては何ですが、envinit.tjsに登録するモノで手で書きにくいモノはアクション定義だと思うので、これに特化した形で定義をはき出すモノを作る予定です。
(名前は未定ですが、安易に考えるとするとワールド拡張アクションエディタ・・・とか^^;)

KKDE version 2.0.0 α3 を公開

  • Posted by: MRY
  • 2009年2月28日 11:24
  • KKDE関連

KKDE version 2.0.0 α3 を公開しました。
いくつかのバグも修正しているのでα2を使用している人はバージョンアップ奨励です。

今回の大きな変更はKGAEX入力補完とワールド拡張機能の実装です。

◆ KAGEX入力補完機能実装

KAGEX入力補完を行う機能を実装しました。
この機能を使うにはプロジェクトの種類を”KAGEX++"に変更する必要があります。
また、逆にKAGEX入力補完機能を使用せずにKAG3だけを使いたい場合は”KAG3”にすることで、KAGEXタグは入力補完リストに出てきません。

◆ ワールド拡張ビューワー機能実装

ここで公開しているワールド拡張ビューワーと同じような動作を行う機能を実装しました。

またいくつか以下のような細かい機能も実装しています。

◆ KAGEXプロジェクトテンプレートのソースをrev.4372ベースに変更
いわゆるKAGEX2にテンプレートのソースを変更しました。
KKDEではこっちの方のみをサポートしていますが、以前までのKAGEXでも大きな問題はないと思います。(一部のKAGEX2特有のタグが出てしまったりするぐらいです。)

◆ 設定ファイルの保存・読み込み方法を変更
ほとんどの人は関係ないと思いますが、起動時に設定ファイル関連でエラーが出ていた人はこれで解消できるかもしれません。
基本的にKKDEは管理者権限を持っているユーザーで使用してもらうのが前提ですが、この修正で管理者権限を持っていないユーザーでも動作するようになると思います。
(私の方で試した限りでは動きますが、ほかの環境で動作を保証するモノではありません)

◆ エディタ上のファイルドロップ機能
エクスプローラーからファイルをエディタにドラッグ&ドロップすることでファイルを開くことができるようになります。

◆エディタタブで現在選択しているタブ以外を削除する機能追加

エディタタブを右クリックすると”このタブ以外を閉じる”という項目が表示され、その名の通り現在開いているタブ以外を閉じます。(保存していなかった場合は保存するかどうか訪ねるダイアログが出ます)
本当は”右を全て閉じる”みたいなのも作成したかったのですが、それを実現するにはかなり面倒なことになりそうなのでそっちはとりあえず実装していません。(SharpDevelopも同様に実装してませんーー;)

◆ 選択範囲のコメント化機能をトグルではなくコメント化・解除に分割するように修正

選択範囲のコメント化機能を ”コメント化” する機能と ”コメント解除” する機能とにそれぞれ分割しました。

◆ 名前を付けて保存で名前を付けられない問題修正

普通にバグなので保存できるようにしました。
ただ、この機能を使うよりはプロジェクトツリーから保存する方を使って欲しいなぁ。。。、

次はα3を出す予定・・・

  • Posted by: MRY
  • 2009年2月25日 21:59
  • KKDE関連

ちょっといろいろと忙しかったので間が開いてしまいました^^;

以前、ロードマップを出していたと思いますが、ちょっとだけ予定を変更します。
まず、現状ですが、

・KAGEX入力補完 ← 終わった
・KAGEXワールド拡張ビューワー ← 一応終わった(一部機能は検討中)
・KAGEXワールド拡張エディタ ← 作成中
・スニペットウィンドウ ←  作らない(マクロ実装する予定なのでそれで代用)
・KAG/KAGEX挿入メニュー ← 作成内容検討中
・KAGEX++ ← 作成内容検討中

という感じになっています。
あとはいくつか見つかったバグとかを修正しています。

今はワールド拡張エディタの方を作り始めているんですが、ちょっと大変そうな感じです。
次の区切りがつくところまではちょっと間が開きそう&いくつかバグを直したモノをアップしておきたいというのもあるので、α3としてリリースしようと思っています。
また忙しくならなければ今月中までには出せる予定です。

KAGEX入力補完 その2

  • Posted by: MRY
  • 2009年2月11日 22:03
  • KKDE関連

KAGEX入力補完のワールド拡張部分が完成しました。
こんな↓感じです。

kkde2_ss_28.png

ちょうどちょっと前にKAGEX2(と呼んでいいのかどうかわかりませんが、とりあえずリポジトリパスがkag3ex2から取得できるモノをこう呼ことにします。)が出てきたのでこちらのほうをベースに入力補完できる説明とかを書いています。
KAGEX1(とりあえずkag3exかkag3ex1のリポジトリパスから取得したモノをこう呼ぶことにします。)を使用している場合は微妙に仕様が異なりますが、外に出ている部分でいえばそこまで大きな違いはないと思うのでいくつかおかしなところに目をつぶれば使えると思います。(一部のタグがなかったりします。)

省略記法には対応していません。必ず属性と属性値をセットで書く必要があります。
なので、ワールド拡張部分を記述する際はワールド拡張ビューワーを使用するほうが早いと思います。

KAGEX入力補完 その1

  • Posted by: MRY
  • 2009年2月 8日 00:00
  • KKDE関連

KAGEX入力補完を作成中です。

基本的な作り方としてはKAG3と同じやり方で、ダミーのマクロとして定義したものを読み込みます。
KAG3と違うのはドキュメントがテキストファイルとして存在しているため、プログラムでほげほげというやり方は使えませんので、一つ一つ手で入力していきます。(なんか思ったよりもたくさんあるので、大変なんですが。。。T_T)

KAGEXには通常(といったら変化もしれませんが)のタグとワールド拡張用タグ(world.ksを読み込んだ時に使えるようになるタグ)が存在しています。
KKDEでは基本的にはKAGEXを使うときはワールド拡張を使うのが前提となりますので、どちらも区別せずに読み込みます。(ただ内部的には区別しますが)

私自身、そんなにKAGEXに詳しいわけではない(必要な部分だけをいろいろと調べて使うのが基本的なスタンスです。)ので、いろいろと便利そうな機能があってちょっと勉強しながらやっています。
使い方がよくわからんものもあるので、その辺はいろいろと試しながらやったり、わかっている”ふり”をしたりしてます。。。(ボイス関連の機能なんかは素材がないとなかなか試せないですよね・・・^^;)

このKAGEX入力補完に合わせて、入力補完リストのタグ・マクロ名がどれに所属しているかどうかがわかるようにしています。
↓こんな感じ

kkde2_ss_27.png

通常のがKAG3のタグ、"EX"とあるのがKAGEXのタグ、鍵穴があるのがユーザーマクロです。

設定ファイルの作成について

  • Posted by: MRY
  • 2009年1月28日 21:55
  • KKDE関連

実はだいぶ前から気になっていたことがあって、KKDEをデバッグ起動するときになぜかSystem.IO.FileNotFoundExceptionの例外が発生していることを表すログが出ていました。
ここで言う例外というは内部で発生するエラーみたいなものと思ってください。
で、これがなぜか毎回出るんですが、いろいろと確認してもファイルが見つからないなんてことはないし、、、ログは出ているけど普通に動いているし、、、でずっと不思議に思っていました。(しかもだいぶ昔は出ていなかった気がする。。。)

今回とある事情でいろいろと調べてみるとどうやら設定ファイルを保存している時に使用しているXmlSerializerクラスで例外が発生していることがわかりました。
このクラスは設定ファイルを読み込んだり保存したりするときに使用しています。

そもそもなぜこのクラスで例外が発生するかですが、どうやらこのクラスはシステムの一時フォルダにファイルを作成するようです。
そのため、そのシステムに書き込み権限が無いとファイルが作成できず、結果としてFileNotFound(ファイルが見つからない)となっているようです。
(とは言っても、これが出てもどうやら普通に設定ファイルの読み書きができているようなのが謎ですが。。。)

つまり、管理者権限を持っているユーザーでないとエラーが出る可能性があります。
ちなみに”制限ユーザー”では確実にエラーが発生して落ちます。(てか、Windowsの制限ユーザーは制限しすぎです。。。)

解決方法としては、
・必ず管理者権限を持っているユーザーで使ってもらう。
・XmlSerializerクラスを使用しないで設定ファイルの読み書きを行うように変更する。
というのがあります。
とりあえず、現状デバッグモードでも(表示だけだけど)出てて気持ち悪いので修正する方向でやろうと思っています。
一応、設定ファイルの互換性は維持する予定です。

KAGEXワールド拡張ビューワー その3

  • Posted by: MRY
  • 2009年1月26日 22:01
  • KKDE関連

ワールド拡張ビューワーの方もだいぶ形ができてきました。
↓現状はこんな感じです。
kkde2_ss_26.png

まず現在のワールド拡張ビューワーと一番違うのは各オブジェクトごとにタブで分かれているという点です。
そもそもツリー上で表す必要があるのは立ち絵のみだったのでいっそのこと分けてしまった方が見やすいかなぁとということで、他のものは別タブに分けた上でリスト表示しています。

完成度は70%ぐらいで「タグコピー」「プレビュー」「拡張タグコピー」は完成しています。
残っているのは各種設定と「属性タグコピー」ですが、属性タグコピーについては別の形にするかもしれません。

(今のはちょっと使いづらい気もするので、、、ただ解決策が見つからなかったら同じものを作る予定です。)

KGAEX2?

  • Posted by: MRY
  • 2009年1月16日 00:00
  • KKDE関連

KAGEXの新しいバージョンがSubversionのほうで公開されているようです。
ただし、公開するURLが変更になっていて、今まではhttps://sv.kikyou.info/svn/kirikiri2/trunk/kag3ex/だったんですが、https://sv.kikyou.info/svn/kirikiri2/branches/kag3ex2/に変更になっています。

ちなみにフォルダ名の通りkag3ex2になっているので仕様が結構変わっています。(詳しくはみてませんが、差分量は結構ありそう。)
仕様が変わっていないいままで公開されていたのと同じバージョンはhttps://sv.kikyou.info/svn/kirikiri2/branches/kag3ex1/にあります。

KAGEXワールド拡張ビューワー その2

  • Posted by: MRY
  • 2009年1月15日 22:47
  • KKDE関連

ついこの間までCESとかMacWorldとかが開催されていていろいろとおもしろそうなのがいろいろと出ていました。
なのでそれについて何か書こうと思いつつ時期を逃してしまいましたね。。。orz

というわけで、ボチボチとワールド拡張ビューワーを作成中です。
今のところ何とかenvinit.tjsが読み込めるところまで作成できました。
ちなみに今回もYAML形式のファイルについては非対応です。(そもそも使っている人はあまりいないと思うので。。。)

今のところ次のものを追加する予定です。

◆ ツリー表示
それぞれのオブジェクトのツリー表示と、オブジェクトを選択したときの表示用タグ生成と右クリックでのオプション選択機能のことです。
あとはプレビュー機能や音楽再生機能も追加する予定です。

◆ エディタ上での入力補完
多分メインの使い方ではないですが、何ら中の方法でエディタ上でもオブジェクト一覧が出せたらなぁと思っています。
具体的には@char name=としたところでキャラクタ名一覧が出てくるようなイメージです。
省略記法の場合はどうしようかなぁというのがありますが、、、そのあたりは無理かなぁ。。。(あんまりずらずらと並べても選択するだけで一苦労かなぁと。)

◆ 属性タグコピーウィンドウ
あまり知られていないかもしれませんが、立ち絵とかについては属性プロパティウィンドウで細かく調節することが可能です。
もうちょっと使いやすいものに変えたいなぁとかは思っていますが、いいアイデアが思いつかなければいつも通りプロパティウィンドウでやることにします。

◆ オブジェクト検索
数が少ないときはいいんですが、ある程度の数が出てくるとツリー上から目的のものを探すのが大変になってきます。
そこで簡易的に検索できるようにしたいなぁと思っています。
ただ、ツリー上でそのまま表示・非表示をやるのかGrep検索のように結果を別の場所に出すのかはまだ考え中です。
(そう考えるとリスト表示みたいなのがいいのかなぁ・・・?)

KAGEXワールド拡張ビューワー その1

  • Posted by: MRY
  • 2009年1月11日 12:23
  • KKDE関連

いろいろと時間ができてきたので、そろそろKKDEの正式版に向けてやっていこうと思います。

まずは以前書いていたロードマップの通りまずはKAGEXワールド拡張ビューワーを作っていこうと思います。
これは、以前作ったワールド拡張ビューワーのKKDE統合版みたいなやつで、基本的にはツリーをKKDEの1ウィンドウとして追加できるようにし、イメージビューワーやサウンドプレイヤー機能はKKDEのものを使用することになります。

本当ならばそのソースを流用したいところなんですが、1年前の事故によって失われてしまっています。。。(なんか思い出したらテンションが下がってきた。。。orz)
というわけで、1から作り直す予定なので微妙に仕様が違ってきてしまうかもしれません。

あと、KKDEのアンケートページをおいているんですが、なんかたまに質問とかかかれている場合があります。
私は基本的に外に見えないものは外では答えない主義ですので、ここで答えることはありません。
(たとえば、WEB拍手なんかがあった場合、ブログで返信とかは基本的にはやりません。。。WEB拍手つけていないけど。。。)
なので、その辺を気軽にできる場として久しぶりに掲示板を復活させようかなぁと考えています。
ただ、まぁ設置したらしたらで誰も書き込まない(というかスパムばっかり・・・)というのがあるのでアレですが。。。

KKDE version 2.0.0 α2 公開

  • Posted by: MRY
  • 2009年1月 3日 21:06
  • KKDE関連

KKDE version 2.0.0 α2 を公開しました。

今回のバージョンではバグ修正のみ行っています。
公開してから一番報告が多かったプロジェクトを未作成時での操作でエラーが出るのを修正しています。
出そうかどうか迷ったんですが、本格的にいじる前に一度出しておきます。

KKDE2ではプロジェクト機能を導入しましたが、KKDE2を使う際は必ずこのプロジェクトを作成し開いておく必要があります。
このプロジェクトを作成しておかないとKAG入力補完とか、吉里吉里実行とかメインとなる機能が一切使えません。(これはプロジェクトファイルからそれらの情報を取得するようになっているためです。)
なので、テストプログラム等ちょっとしたものを作成する場合でも、必ずプロジェクトを作成した上で使用してください。

ロードマップ

  • Posted by: MRY
  • 2008年11月16日 19:22
  • KKDE関連

KKDE 2.0.0α1 が無事に公開できたのでちょっと一休み中な最近ですが、今後の予定・ロードマップを考えておきたいと思います。
ただ、ここで書いているのは現時点での考えなので、増えたり減ったりします。

◆ 2.0.0 β1
次に出そうと思っているのはβ1です。(ただ、途中でいくつかだけ実装した2.0.0 α2を出すかもしれませんが。)
β1では次の物を実装する予定です。

・KAGEX入力補完
・KAGEXワールド拡張ビューワー
・KAGEXワールド拡張エディタ
・スニペットウィンドウ
・KAG/KAGEX挿入メニュー
・KAGEX++

といった感じで、KAGEX関連の物がほとんどです。

◆ 2.0.0(正式版)
とりあえず 2.0.0 β1で出ただろうバグを中心に修正していく予定です。
もし大きなバグとかが出たらβ2として出るかもしれません。
あと、このあたりでマニュアルあたりも基本的なところは作っておきたいなぁとか思っています。

◆ 2.1.0
だいぶ先の話ですが正式版を公開した後の機能についてです。

・TJS入力補完
・TJSクラスウィンドウ

といったTJS関連をやれたらなぁと思っています。
ただ、この頃には吉里吉里3の話が出てきているかもしれません。

KKDE version 2.0.0 α1 公開

  • Posted by: MRY
  • 2008年11月 9日 00:16
  • KKDE関連

KKDE version 2.0.0 α1 を公開しました。

リアルの方がいろいろと忙しくてちょっと予定よりも遅れましたが、無事α1を公開できました。
KKDE version 0.8.1(以後KKDE1と略す)を公開したのが2006/07/16なので、実に2年3ヶ月ぶりぐらいのバージョンアップです。
今回のバージョンはα版となっています。
とはいっても以前から公開しているのもα版と書いていませんがα版なので対して気にしないでください。(バージョン表記の都合です^^;)

今回のバージョンはソースコードを1から作り直したので細かい作りや機能といった面でKKDE1と異なります。
全体的にはKKDE1から3割機能が減って、新しく3割機能が増えたというような感じになっています。
大きいところでは、

◆ 減った機能:
・TJS入力補完
・KAG++
・TLG画像プレビュー
・サウンドシーク&音量変更
・アプリエラー報告機能

◆ 増えた機能:
・プロジェクトファイル機能
・エディタのカラー設定ダイアログ
・ブックマーク機能
・折りたたみ機能
・エディタ設定のファイルタイプごとの設定
・Oggファイルの再生
・設定ファイルをAppDataフォルダへ移動

といった感じで、細かいところでもちょこちょこっと違います。
なので、当分はKKDE1と平行して公開します。

α1候補完成

  • Posted by: MRY
  • 2008年10月31日 22:26
  • KKDE関連

前回公開した環境設定画面でα1として予定していた大きい機能はすべて完成しました。
というわけで後回しにしていた細かいところをいろいろと修正しました。

◆ツールバー

アイコンについては基本的にVisualStudioについてくるアイコンパックをベースに使用するようにしました。
一部はKKDE1と同じ物を使っていますが若干普通の見た目になっています。

ツールバーとメニューの中身自体も.NET Framework2.0標準の物に変更しています。
そのため若干見た目が変わっていて、機能としてはツールバーが種別ごとに位置を移動できるようになりました。

◆改行記号

もともとKKDEがベースにしているSharpDevelopの改行記号はあまり見かけない記号を使用しているんですが、コードを直接修正して下矢印に変更しています。
環境によってはうまく出ない場合もあるみたい+なんか余白が気になる(全角の矢印を使っているからですが。。。)ということで、KKDE2ではより通常のエディタらしく直角に曲がる感じの矢印を描画するように修正しています。(エンターキーにある記号とです。)

◆横ルーラー

個人的に一番気になっていたのが、この横ルーラーで桁数が全くでないので使い物になっていませんでした。(ベースの物はそもそも色も白固定です。)
今回は秀丸っぽいような感じで桁数をルーラー上に表示するようにしています。

その辺をやったらこんな感じ ↓ になっています。

kkde2_ss_20.png

そのほかにも細かいところをちょこちょこっと修正したり変更したり無くしたりと絶賛テスト中ですが、機能としては現在の物をversion 2.0.0 α1 候補としています。

環境設定画面

  • Posted by: MRY
  • 2008年10月27日 23:08
  • KKDE関連

KKDE2の環境設定画面を作成しました。

基本的にはKKDE1と同じようような物が設定できますが、KAG設定に関してはファイルタイプ別設定のほうへ移動しています。
目新しい物と言えば、システム設定に”テキスト解析間隔”というのを作成しています。

これは、KAGシナリオファイルの入力があるたびにファイルの解析を行うのですが、絶えずやっても無駄かつ負荷がでかいのでその解析をスリープさせる時間を設定することが出来ます。
この値を長くすると負荷は軽くなりますが結果がおかしくなる場合があります。(たとえばラベルの位置がずれたりとか)

ちなみにKKDE1ではセーブ時にのみ解析を行っています。
(これは当時に作ってみると重すぎて使い物にならなかったためです。。。重かった理由はもちろん作り方が悪かったためですが。。。^^;)

というわけで↓

kkde2_ss_19.png

サウンドプレイヤー

  • Posted by: MRY
  • 2008年10月25日 22:56
  • KKDE関連

サウンドプレイヤーウィンドウを作成しました。

KKDE1のサウンドプレイヤーはWindowsMediaプレイヤーをそのまま貼り付ける形で実装していました。
これは、作る方は簡単でかつ使う方も基本機能はきちんとしているので便利という感じで良かったんですが、Oggファイルの再生がそのままではできないという欠点がありました。
(まぁ、コーデックを入れるだけなのですが、、、)

KKDE2では単体でOggファイルの再生を行えるようにします。
ワールド拡張ビューワーの場合は吉里吉里を使用して直接再生するという荒技(といってもこれはこれでありですが)を使ったのですが、今回はWin32APIの方を直接呼び出そうといろいろと試行錯誤していました。
かなり苦戦しましたが、音楽を正常に再生できるところまでは出来ました。

ただ、かなり不安定で音が途中で止まったり、プログラムが落ちたりといろいろと解決できない問題が多々ありました。
多分C#のガーベジコレクションあたりが問題っぽいです。。。orz
いろいろと作っていて面白いところではあるのですが、あまり時間もないので今回は別の物を持ってくるようにしました。
C#で簡単に呼び出せてOggが再生する物を探した結果、YaneuraoGameSDK.NETを使用することにしました。

サウンドプレイヤーでは基本的には再生が出来たいいという方針で、再生と停止ボタンしかありません。
一時停止やシークについてはKKDE1でも乗っていたのでつけたいところですが、実装上の都合から省略します。(なくてもKKDEの用途からはそんなに困らないです。)

いろいろと苦労してできあがったのが↓

kkde2_ss_18.png

イメージビューワー

  • Posted by: MRY
  • 2008年10月19日 10:37
  • KKDE関連

イメージビューワーを作成しました。

基本的な機能はKKDE1と同じです。
表示できる画像はJPEG, PNG, BMPの3種類で、TLGファイルについては表示をサポートしません。(sugieプラグインが未サポートになっています。)
TLGファイルについては、今後またサポートするかもしれませんがとりあえず非サポートということにしておきます。

あとは拡大・縮小、ウィンドウに合わせる表示や次のファイルへ移動などの操作が行えるようになっています。

↓でそれを表示したところ

kkde2_ss_17.png

ラベルツリー

  • Posted by: MRY
  • 2008年10月16日 20:58
  • KKDE関連

ラベルツリーを作成しました。
このラベルツリーの素になるラベル情報自体はKAG入力補完の時に取得していたのでサクサクっと作成しました。
が、なんかテストしていたファイル群にラベルが大量にあるためかなり動作が遅くなってしまいました^^;

とりあえず、いろいろと試行錯誤して一部分だけ更新できるように変更して解決しました。
(というか、TreeViewのアイテムの参照でかなりの時間がかかるようです。。。)

という感じで、KKDE2を本格的に作り始めてだいたい2ヶ月ほどたちました。
今回は作ったやつをがんばって頻繁にブログの方に上げてみたんですが、思ったより続いたかなぁという印象です。
ちょっと最近はいろいろとあってペースダウン中(&ちょっとほかのもやってみたくなってきました。。。)ですが、このままで行くと今年中には公開できそうです。

KAG入力補完設定

  • Posted by: MRY
  • 2008年10月10日 22:36
  • KKDE関連

前回保留にしていたKAG入力補完設定画面を作成しました。

基本的にはKKDE1の時と同じですが、区切り記号を "$" から ";" に変更しています。
特に深い意味はないですが、マクロコメントとして書いたときにより自然に見えるかなぁとおもって変更しています。

逆に入力補完で ";" が使えなくなってしまいましたが、まぁあまり使いたいシーンもなさそうなのでそのままにしています。
(必要になったらそのときに考えます^^;)

あとは、いくつか固定っぽい物は省くようにしています。
たとえばtrue/falseのようなブール値はこの先ほぼ変わらないだろうということで設定画面からは省いています。
(ただ、設定ファイルには記述しているので変更しようと思えば変更できます。)

↓その設定画面の入力例

kkde2_ss_16.png

折りたたみ機能

  • Posted by: MRY
  • 2008年10月 6日 22:52
  • KKDE関連

折りたたみ機能を作成しました。

この機能もKKDE1では永遠に未実装機能なっていた物で、KKDE1の前バージョンである吉里吉里エディタというプログラムには載せていました。
今回はKAG入力補完機能を作成する時にその辺のことも考慮しながら作っていて、実際に実装してみると思っていたよりもうまくいきました。
TJSについては後回しで(少なくともTJS入力補完を実装するまで)とりあえずKAGのみ作っています。

折りたためるのは

■ラベルから次のラベルまで
■;;region と ;;endregion で囲まれた範囲

の2つを対象としています。
;;regionというはVisualC#の折りたためる構文からとっています。

言葉ではどんな感じになるかは説明づらいので↓のスクリーンショットを見てもらうとわかりやすいかと思います。

kkde2_ss_15.png

ツールチップ機能

  • Posted by: MRY
  • 2008年10月 4日 19:08
  • KKDE関連

KAG入力補完が終わったら、次はKAG入力補完設定、、、となるのが普通ですが、最近KAG入力補完ばっかりやってるのでちょっと息抜きというかその他の細かいところをやっています。

■ ステータスバー

ステータスバーの表示をやっていなかったことに今更気がつきました^^;

基本的にはKKDE1とほとんど同じで違うのはプロジェクトの種類が増えていることぐらいです。
大抵のプログラムの場合ステータスバーの左端には説明とか、実行状況とか表示されていることが多いですが、あまり表示したい項目もないのでとりあえずは何も表示しない予定です。

↓デフォルト設定でのエディタ内容を表示したステータスバー

kkde2_ss_13.png

■ バージョン情報ダイアログ

基本的に使う人にとってはほとんど意味がないものですが、個人的には必ず必要なものの一つです。

基本的にはKKDE1と同じですが、アイコンはちょっとだけ変えたいかなぁと思っています。
メモリ使用量はいろいろと問題がある(なんかKKDE1ってものすごくメモリを食う用に見えてしまう)ので取っ払ってしまう予定です^^;

とりあえず、今のところ公開時のバージョンは 2.0.0 の予定です。(αがつくかもしれませんが、、、)

■ ツールチップ機能

タグ・属性の上にマウスカーソルを置くとそれらの説明内容が表示される様にする機能です。

説明内容自体は入力補完リストで表示されるものを使用します。
属性値の場合は表示しません。

↓タグの位置にマウスカーソルを移動して説明を出しているところ(マウスカーソルが消えているのでわかりにくいですが^^;)

kkde2_ss_14.png

GUIなツール

  • Posted by: MRY
  • 2008年10月 2日 20:33
  • KKDE関連

続:ゲーム開発現場で多くのオレオレ言語が生まれるのはなぜ?
中身よりもコメントの方に興味をそそられる話があります、、、

個人的にはGUIなツールでちょこちょこと作っていくのはなんかめんどくさい印象が強いです。
アドベンチャー作成ツールで言えばLiveMakerなんかがありますが、昔ちょっと試してみたんですがすぐに放り出してしまいました。
吉里吉里でキャラクターを動かすのもKAGEXでだいぶ楽になったのでそれで十分かなぁという気もします。

とか思っていたんですが、ふと全部をGUIでやるんじゃなくて局地的なアクションする部分だけをGUIでぐりぐりと作れたら楽なのかなぁと思いました。
ただ、今のKAGとそのGUI(たとえばFlashみたいなタイムラインツールを)どうやったらシムーレスに書けるか思い浮かばないデスが。。。

KAG入力補完 その2

  • Posted by: MRY
  • 2008年9月29日 22:40
  • KKDE関連

KAG入力補完でKAG3定義が出せるようになりました。

KKDEではKAG3のタグは別途マクロとして定義します。
また、入力補完時に説明を出したいため、マクロコメントを書く必要があります。
現在のKAG3ではタグ数がだいたい160個ほどあって、一つ一つKAG3のタグリファレンスから見ながらそれらをマクロとして定義したりコメントを書いたり、、、とかやっていたら日が暮れても終わりません。

じゃあどうするかということですが、吉里吉里のソースコード内にこのタグリファレンスを作る素みたいなファイルが存在します。
↓の場所にあるtag.database.tmlというファイルがそうです。
https://sv.kikyou.info/trac/kirikiri/browser/kirikiri2/trunk/kag3/docs/j_in/tag

このtmlファイルはそのままだと扱いにくいのでto_xml.plを使用していったんXMLファイルに変換します。
(ただこのスクリプトで作成したXMLファイルだとグループ名が入っていないのでto_xml.plを一部修正します)
そしてさらにこのXMLファイル内のタグをKKDE用のマクロ+マクロコメントに変換するプログラムを作成してKAGシナリオファイルとして出力します。
(この変換プログラムには属性値の揺れを補正するための変換テーブルみたいな物もタグリファレンスを見ながら作成しておきます。。。この部分は結構大変です。)

と、こんな感じで、かなりいろいろと変換してkag3tag.ksファイルとしてできあがります。
かなり遠回りな感じですが、この方法だと日が暮れることまでにはできあがります^^;

あとはKKDE側でこの定義ファイルを読み込ませばKAG3タグの入力補完ができあがります。
↓はできあがった感じのスクリーンショット

kkde2_ss_12.png

KAG入力補完

  • Posted by: MRY
  • 2008年9月27日 12:41
  • KKDE関連

今はKAG入力補完を作成中です。

KAG入力補完はKKDEでも一番メインとなる機能です。
基本的な作りとしてはKKDE1と同じでまず、

・KAGシナリオファイル読み込み、KAGマクロタグを読み取ってタグとして扱う
・KAGタグはマクロとして定義する(別のファイルで)

というのを作ります。

また、入力補完時に補完アイテム(たとえばタグの場合はタグ名)の説明を表示するときのコメント記述(以後マクロコメントと略す)を読み取って表示しします。
このコメントはKKDE1でもやっていたんですが、KKDE2では書き方を少し変える予定です。
具体的には、

KKDE1:

;<macrocomment>
;tag=[効果音・BGM・ビデオ操作] ピリオドイベントの発生
;attr=frame / [必須] フレーム番号 / _NUMBER_INTEGER / フレーム番号
;attr=cond / TJS評価式 / _STR_TJSVAL / TJS式
;attr=slot / ムービーオブジェクト番号 / _NUMBER_INTEGER / ムービーオブジェクト番号(0?)
;<endmacrocomment>
[macro name="videoevent"]
[unknown key=%frame key=%cond key=%slot]
[endmacro]

KKDE2:

;;[効果音・BGM・ビデオ操作] ピリオドイベントの発生
;;frame=[必須] フレーム番号, フレーム番号
;;cond=TJS評価式, TJS式
;;slot=ムービーオブジェクト番号, ムービーオブジェクト番号
[macro name="videoevent"]
[unknown frame=%frame cond=%cond slot=%slot]
[endmacro]

というような感じになって、より手で書きやすくなります。
とは言ってもきちんと書くとそれなりに面倒くさいので、省略可能です。

とりあえず、マクロの読み込みとコメント読み取りまでできた図↓

kkde2_ss_11.png

ブックマーク機能

  • Posted by: MRY
  • 2008年9月22日 22:54
  • KKDE関連

ブックマーク機能を作成しました。
ブックマーク機能というのは、編集中のエディタの特定行に印(ブックマーク)をつけておいて別の場所を編集していてもすぐに印をつけていた場所に移動できるようにする機能です。
秀丸エディタで言えば、”現在行をマーク”機能とほぼ同じような物です。

このブックマーク機能は実はKKDE1では実装まで終わっていて v0.9.0 に載せる予定だったんですが、HDDが壊れたときにソースごと逝ってしまったため結局載せずじまいの幻のコードになっていました。
ただこのときの実装ではブックマークはKKDEを閉じると消えてしまう物になっていましたが、今回のものでは閉じても前回の物を覚えておいて、次回起動時に再度読み込むようにしています。

ブックマークされた行は↓のように青色のマークがつくようになります。

kkde2_ss_10.png

実行機能

  • Posted by: MRY
  • 2008年9月18日 22:21
  • KKDE関連

この前乗せ忘れていましたが、行ジャンプ機能もつけています。
この機能は作るのはめっちゃかんたんなんですが、それなりに便利に使うことが多いです。
たとえばエラーが発生したとき指定するなどですね。

kkde2_ss_08.png

次に、吉里吉里実行機能もつけました。
まずは基本的なところで吉里吉里そのものの実行と強制終了をつけています。
KKDE1との違いは、KKDE1は実行する吉里吉里はKKDEの設定画面で設定していた実行ファイルを使用します。
KKDE2ではプロジェクトに関連づけられている実行ファイルを使用します。

今の段階ではまだ、KKDE1ではつけていた”ラベルから実行”機能はつけていません。
この機能は指定したラベルへ強制的にジャンプするわけですが、前準備が整っていないとうまくいかないことが多い(たとえば立ち絵が表示されないとか、背景がないとか)ので無くてもいいかなぁと思い始めています。
どちらにせよ、KAG3の独自拡張が必要になるので、そのときに改めて考えようと思っています。

↓は実行した後、エラーメッセージを表示しています。

kkde2_ss_09.png

検索関連

  • Posted by: MRY
  • 2008年9月14日 19:39
  • KKDE関連

KKDE2の検索関連を作成しました。
そんなに見ても面白くはないですが、オプション画面としては↓のような感じです。

kkde2_ss_05.png

kkde2_ss_06.png

kkde2_ss_07.png

作りとしては基本的にKKDE1と同じです。
検索オプション設定画面で言えば、単語単位のオプションが増えているぐらいです。

KKDE1はDelphi系の検索方式がベースとなっていたんですが、KKDE2では秀丸エディタの検索っぽい動作になっています。
そんなに変わっているわけではないですが、ちょっと違う動作っぽくなっています。

カラー設定2

  • Posted by: MRY
  • 2008年9月10日 21:04
  • KKDE関連

カラー設定ダイアログで設定したカラーがエディタ側に反映できるようになりました。

KKDE2ではKAGやTJS以外のそのほかのファイルについてもカラー設定できるようになっています。
やはりカラー設定をやる以上、全部統一し他方が良いなぁと思うからです。

また、昔は私もエディタは基本白ベースの色でやっていたんですが、いろいろと試していたら黒ベースの方が目に優しい気がして(実はそうではないらしいですが。。。)KKDE2では黒ベースのデフォルト値をボタン一つで設定できるようにしています。
黒ベースのカラー設定は完全に私の環境の物をそのまま使用しています。

↓黒ベースで設定したところ(後ろにVisualStudioわずかに写っていますが、基本的に同じカラーです^^;

kkde2_ss_04.png

カラー設定

  • Posted by: MRY
  • 2008年9月 8日 22:34
  • KKDE関連

カラー設定ダイアログを作成しました。
意外にもKKDE1にはカラー設定ダイアログは無くて永遠の未実装状態でしたが、要望もそれなりにあったようなのでKKDE2では作ってみました。

また、プロジェクトファイルと同じような考えなのですが、KAGとTJSとのエディタでは設定が違う方が便利じゃないかと言うことで、エディタ設定をファイルタイプごとに持たせるようにしました。
このあたりは秀丸エディタやサクラエディタなどメジャーなものでもそうなっているようです。

kkde2_ss_03.png

実はKKDE1ではカラー設定ダイアログが無いだけで、KAGやTJSファイルを開いたときの強調表示カラーは設定ファイルを直接いじることで変更することが可能です。
ただ、実際のところは結構な手間がかかるし、ちょっと間違えればエラーで動かなくなるので面倒くさいという問題がありますが。

プロジェクトツリー その2

  • Posted by: MRY
  • 2008年9月 6日 22:57
  • KKDE関連

プロジェクトツリーに必要そうな機能を一通り作りました。
ツリーとしてはそんなに高機能な物ではないですが、とりあえず、開けるのとファイルの追加ができるくらいには作っています。
フォルダのポップアップからはエクスプローラーを立ち上げることができるので、もっと大胆にファイルの移動とかをやるときは、プロジェクトツリーではなく、エクスプローラーでやるのが基本になります。

KKDE1との違いは、プロジェクト名の箇所を右クリックしてプロパティを選択すると↓のようなダイアログが表示されて、プロジェクト情報を修正することができるようになります。
kkde2_ss_02.png





プロジェクトツリー その1

  • Posted by: MRY
  • 2008年8月31日 20:23
  • KKDE関連

KKDE2のほうもまずはプロジェクト関連から手をつけていっています。
プロジェクトファイルを導入すると以下のようなメリットが生まれます。

・KKDEがプロジェクトフォルダ(吉里吉里でのプロジェクトフォルダのこと)と吉里吉里実行ファイルの関連付けができる
・バージョンが異なる複数のプロジェクトを管理しやすくなる

デメリットとしては、

・既存のプロジェクトをKKDEでそのままでは扱えない(扱う場合はプロジェクトファイルを作成する必要がある)

というのがあります。

とりあえず、デメリットの方に対しては、既存のプロジェクトフォルダをインポートするような機能を追加することでカバーしようと思います。

実際にプロジェクトファイルで管理するのは今のところ以下のような

・プロジェクト名
・データフォルダパス(プロジェクトフォルダのパス)
・実行ファイルパス(吉里吉里実行ファイルのパス)
・実行パラメーター(実行時に渡す引数)
・プロジェクトの種類(デフォルトのKAGか、KKDEでカスタマイズしたKAGか等を区別する種類)

というのを考えています。
実際のところ、そんなに大げさな物は管理しないので、そこまで環境に依存しない予定です。(KKDEを使わなくなっても問題ないということ)

KKDE2開発再開

  • Posted by: MRY
  • 2008年8月24日 21:11
  • KKDE関連

少しずつですが暑さが和らいできましたね。
室温がだいたいいまでピーク時より5度ほど低くなっています。(30度ぐらい、、、和らいでいるのか・・・?)

KKDE2の方ですが、作る作るといいながらなかなかほかのことに忙しくて手をつけられていませんでしたが、夏コミ後ぐらいからちょこちょこっと手をつけ始めています。
KKDE2は全く一から作り始めることにしているので、まずは現状公開しているKKDE(以後KKDE1)レベルまで持って行こうと思っています。

とりあえず、今のところ↓のような感じになっています。(プロジェクト関連から作り始めているので、ツールボックスは何もないしまだエディタ周りは色すらつきません。。。^^;)
kkde2_ss_01.png

KKDE2の計画 その2

  • Posted by: MRY
  • 2008年5月31日 20:20
  • KKDE関連

明日6/1からFOMA 906iシリーズが続々と発売されるようです。
ここ最近異様に忙しいのでなかなかDSにモックを見に行けていませんが、そのうち見に行きたいなぁとか思っています。

計画その1を書いてからかなりの時間がたってしまいました。
なんか、その1には完成が4月頃を目標とか書いていますが、思っていた以上にCCCVを作っているのが面白かったのでこっちは全然手をつけていませんでした。^^;

CCCVの方は正式版のリリースができたので、当分の間は寝かせる予定です。
なので、そろそろKKDE2のほうをやり始めようと思っています。
とりあえず、いろいろありそうなので、完成目標は12月頃にします。

KKDE2の計画 その1

  • Posted by: MRY
  • 2008年1月 5日 19:17
  • KKDE関連

ABYSSのパッチリリースも終わり、とりあえずFestivalさんの方でのお手伝いは一段落ついてきました。
なので、そろそろKKDE2を作り始めようと思っています。

KKDEの現バージョンは0.8.1ですが、1.0.0をとばして次は2.0.0にしようと思っています。
まぁ、だいぶ以前から時間があいちゃったのでいまさら1.0.0というのもなぁと言うのもありますが、KKDE2とかいうと吉里吉里っぽいくない?とか思ったりもしてます。

今回は基本的に一から書き直す予定です。
大きなところでは
1.現バージョンのは.NET Framework 1.1をベースにしたものでちょっと古い(いろいろと便利なものがナイ)
2.だいぶ前に書いたものなので、すっかりいろいろと忘れている
といった感じです。

あとは現バージョンとの違いで言うと、
・プロジェクトファイル形式の導入
・独自マクロのサポート
・KAGEXのサポート
・TJS2の非サポート
・エディタの色設定ダイアログ作成
・デバッグ機能みたいなもの(吉里吉里との連携)
というのを考えています。(もちろんやらないかもしれません)

ちなみに完成時期ですが4月頃を目標にしています。

More...

Home > KKDE関連 Archive

Search
Feeds

Return to top