[CardWirth] PriceTagger 1.00
- 2011/05/18 05:11
- カテゴリー:CardWirth, 作ってるモノ, ツール
- タグ:CWツール@PriceTagger
RLE圧縮に完全対応し、大きな不具合も潰し終えたと思うので、そろそろ正式版として公開する事にしました。
今回は正式版に格上げしただけで、能力的には前とあまり変わりません。
PriceTagger→ver.1.00
・値札を貼り付けるときのビープ音を削除
・減色機能の整理
カテゴリー「ツール」の検索結果は以下のとおりです。
RLE圧縮に完全対応し、大きな不具合も潰し終えたと思うので、そろそろ正式版として公開する事にしました。
今回は正式版に格上げしただけで、能力的には前とあまり変わりません。
PriceTagger→ver.1.00
・値札を貼り付けるときのビープ音を削除
・減色機能の整理
先日、cwChkCardsフォルダ選択に一部のフォルダが表示されないというご指摘を頂きました。
この件について色々調べたり再現を試みた結果、ご指摘の点(インデックス付けの有無)との関わりについては分からないままでしたが、それとは別に、現在の形では全角スペースで終わるパスが認識されないことに思い当たりました。
cwChkCardsがクリックや情報再取得で指定したフォルダのサブフォルダ情報を取得しに行く時、中に例えば「シナリオ 」のように名前の最後が全角スペースで終わっているものがあると存在しないものとして扱われ、エラーが発生します。
その結果、まだ表示すべきサブフォルダが残っていてもそこで処理がストップし、あるはずのフォルダが階層に追加されません。
元々の目標とは違ってしまいましたが、まずは原因と現象がはっきりしているこちらから修正を行いました。
インデックス付けとの関連は、引き続き調査致します。
貼り紙のフォルダ名一覧が中寄せになっているCW特有の事情のため、この不具合に遭遇した方は私が思うより多いかもしれません。フォルダが表示されなくてお困りだった皆様、申し訳ありませんでした。
cwChkCards→1.31β
・名称が全角スペースで終わるフォルダが存在しないものとして扱われる不具合を修正。
※※※
「全角スペース終わり」問題はPriceTaggerの方にも影響しそうでしたので、急遽中身を確かめました。
やはり影響が出る作りでしたので修正を行いました。
PriceTagger→0.31β
・外部から読み込み用の値札画像を全角スペースで終わる名前のフォルダに入れた時、正常に読み込めなくなる不具合を修正。
11/20のcwChkCardsのバージョンアップの際、ダウンロード用ファイルの場所を書き換え忘れていました。
また、改めて確認したところ、トップページ「主な配布物まとめ」の各ツール直ダウンロードのリンク先が誤っていました。こちらも恐らく11/20からと思います。
この1か月程の間にダウンロードに来て頂いた皆様にご迷惑をおかけする結果となってしまい、申し訳ありません。本日ただ今修正致しました。
結局、ItemCheckイベント以外にチェック状態の変化を検出する上手い方法が見つからず、通常扱い⇔枠扱い切り替え中のパーツについてチェックボックスの状態とは逆の扱いで処理する事で決着しました。
いまいちな解決ですが、変更前がチェックなしなら変更後はチェックあり、変更前がチェックありなら変更後はチェックなしになるのはその通りで、一応目的は果たせています。
StrataCard→ver.1.13
・枠扱いパーツの指定方法を変更(最前面パーツ以外も指定可能に)
・その他不具合の修正
※※※
(12/19追記)
色々誤魔化す手段として考えついた「額縁」ですが、額縁をつけた絵を旧エンジンで見ると何となく違和感がありますね。カードにしっかり暗赤色の外枠がついていて、額縁の中に額縁になってしまうのが原因のようです。
ここはもう潔く描き直すべきか…(苦)。
ちょっとした改良(?)中です。
これまでのバージョンの「最前面=枠」を使っていて、最前面以外を枠扱いしたい場合もあるのに気付きました。この機能はカード絵に額縁みたいなものをつける事を想定して作ったものですが、枠にしたいパーツが最前面でない時、例えば背景となる絵を枠で区切って台紙のようなものを作り、その上に枠に邪魔されない形でアイテムなどの絵を乗せたい時などには使えません。
で、「最前面=枠」のチェックボックスを廃止する代わりにパーツ一覧をCheckedListBoxにし、リスト内でチェックしたパーツを枠として扱う、という事にしました。
CheckedListBoxにはItemCheckイベントというものがあり、説明を読むと「項目のチェック状態が変更されると発生します。」と書いてあります。チェック状態変更と同時に枠扱いか通常扱いかを切り替えるのはこれで行ける、簡単。と思ったら、大間違いでした。
確かにItemCheckイベントはチェック状態が変わる時に発生するのですが、そのタイミングが変更の直前らしいのです。つまり、使用者がリストのチェックボックスをクリック→ItemCheckイベント発生→実際にチェック状態が変わる、の順。ItemCheckイベントの時点で分かるのは変更前の状態で、変更後を画像に反映させるために使うには問題があります。
そうか。あくまでItemCheckで、ItemCheckedではないものなー。。。
CheckBoxのCheckedChangedと同様のチェック状態が「変わった」事を検出するイベントが無い以上、小細工か、そもそもCheckedListBoxでチェックという部分から変えるかで乗り切る他なさそうです。
何かスマートな解決方法は無いもんでしょうかね。
お待たせしてすみません。
先日からお知らせしていた不具合の対策版です。
故意に様々な破損データを作って読み込ませるテストを行い、その一部で不具合の通知にあった
・cwChkCardsでカードリストが表示されない
・CWエディタでも読み込めない
の2点を無事再現できました。
このテストの結果を元に、1.30βでは予期せぬデータ構造のカードを読み込もうとした時を想定した対策を行いました。
これで(少なくとも私がテストした環境では)カードリストが表示されない事はなくなりましたが、「予期していない」原因がフォーマットに未知の部分があるためかファイルの破損なのか、或いはその他の原因なのか、cwChkCards自体では判断がつかないのが欠点と言えば欠点です。
CWエディタで開ければ正常なデータでしょうから、CWエディタで読めたらフォーマットの未知部分が、読めなかったらデータ破損が原因と考えるのが適当でしょうか。
※※※
他に、これまでカード構造欄の1番上、すなわちカード本体の項目が選択状態にならなかった不具合を解消しました。
cwChkCards→1.30β
・予期せぬデータ構造のカードを読み込もうとした時の対策。
・その他不具合修正。
面倒くさくないと物を作らないというのもアレだけど、つまらない事を思いついた時ほど飛びつきが早いのも何だ。
…以前に明度変更を追加した事だしこの際色相・彩度変更フィルタも作成しようと思いつき、パッと飛びついた話です。
しかし実行のためには、普段なんとなーく分かった気になっているHSVとは何ぞやを勉強する必要が──
と思ったら、調べ始めて1分経たないうちにWikipediaにRGB⇔HSV変換式がそのまんま載っているページを発見してしまいました。
やりたかった事があっという間に済んでありがたかったですが、式を丸写ししたお陰で勉強は無し。相変わらず図を見て何となく分かる程度です。いつかちゃんと見ないとなぁ。
StrataCard→ver.1.12
・フィルタの調整・追加
色相・彩度・明度変更。
グレイスケールなどの濃淡表示。
二値化、色成分交換、塗りつぶし。
これで(自分が)普段使いそうな色変換はだいたい積み込み終えました。
※※※
cwChkCards
→現在意図的に破損ファイルを作って読ませるテスト中
11/13からお知らせしていたWindows Vistaでカード一覧が表示されない不具合は、その後お寄せ頂いた情報により特定のシナリオを選択したときに起きることが分かりました。
現行のシナリオ保存形式(Ver.4)にcwChkCardsで正しく読み取れない部分が存在する可能性があります。または何らかの原因でシナリオデータが破損している時、正しく読み取れないのかもしれません。
別の原因を想定して作成した人柱版(11/14~11/15公開)は一旦取り下げます。ダウンロードして下さった皆様、使用報告を下さった皆様、ありがとうございました。
今後ですが、問題解決への新たなアプローチとして「cwChkCardsで正しく情報取得ができなかったシナリオ」の情報を募集します。やはり、現物を調べる事が原因解明への一番の近道です。
情報送ったろうかという優しい方をお待ちしています。詳しくはこちらをご覧下さい。
※※※
人柱版にご協力下さった皆様、ありがとうございました。
今後の改良でお礼ができるように頑張ります。
不具合の有無以外にメッセージを添えて頂いた方への返信です。
>11/14 19:39の方へ
細かく調べて頂いて本当に助かりました!
お陰様で目指す方向をはっきりさせることができました。
残念ながら教えて頂いたシナリオはギルドや作者さんのサイトに見当たらず、今は公開されていないもののようです。
他に同じような事が起きるシナリオが無いか情報を集めて、今後の改善を目指します。今しばらくお待ち下さい。
>11/14 21:11の方へ
いえいえ、それがそうでもなくて…。
問題の原因究明に限りませんが、何かを探す時、「ここには何も無い」という情報はとても重要です。探さなくて良い範囲が増えていけば、自ずから探すべき範囲が見えてきます。
そのような訳で、不具合らしい事が何も起こらなかったと分かれば、それは大きな前進です。ありがとうございました。
不具合修正を目指した版を作成しましたが、我が家にはWindowsVistaをインストールしたPCが無いので確認が出来ません。
また、Vista以外でも何かしら問題が起きている恐れもあります。
そこで、新しく作ったものを人柱版として公開しました。
ただ今、不具合修正にご協力頂ける方を大募集中です。
詳細はアーカイブに含まれる説明とお願いのテキストをご覧下さい。
よろしくお願いします。
cwChkCards Ver1.25β 人柱版(49.7KB)
[CRC]98AFD63C
[MD5]AF81A872AB75DAEDD9329B1CAAA8597E
不具合が直っている事が確認できたら、「人柱版」を取って正式にVer1.25βとして公開しようと思います。
※※※
現在の方式を改善しようと努力する事も重要ですが、問題ありそうな部分を外して別の方法で実現できないかを考えた方が先に進める事もありますね。
発想の転換のお陰で早いうちに人柱版を出せました。
しかし、これで問題が解決していなければ今のところ想定していない箇所に原因があるという事で、対策完了までは険しい道程になりそうです。
(11/15追記)
その後方向性が間違っているらしい事が分かりましたので、人柱版の公開は終了させて頂きました。使用報告を下さった皆様、お陰様で問題の所在が掴めてきました。ありがとうございました。
すみません、18:30~19:30頃にStrataCardをダウンロードされた方、いらっしゃるでしょうか。もしいらっしゃったら、その時ダウンロードしたアーカイブは壊れていると思います。ちょうどアーカイブのアップロード途中で回線が切れてしまい、回復するまでの1時間程の間は本来の容量の半分ぐらいに分断されたものがサーバ上に存在していました。
お手数ですが再ダウンロードをお願い致します;
※※※
修正がいまいち進まないcwChkCardはひとまず置いて、すぐ終わりそうな方を先、などと思ったから罰が当たったんですかね...。
StrataCard→ver.1.11
・いくつかの不具合修正
・リセット関連メニューの集約
・フィルタの調整・追加
…あ、そうか。
難しく考え過ぎだったかも。
↑を書きながらcwChkCardの修正アイデアが湧きました。
思いつきとはどこからどう湧いて出るか分からないもんです。