Hatena::ブログ(Diary)

senzogawaのNな日々 このページをアンテナに追加 RSSフィード

2004 | 11 | 12 |
2005 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2006 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2007 | 01 | 02 | 03 | 04 | 05 | 06 | 11 | 12 |
2008 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2009 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11 | 12 |
2010 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 12 |
2011 | 01 | 03 | 04 | 05 | 06 |
2012 | 01 | 08 | 09 |
2013 | 02 |

2005-12-18

NScripter Ver.2.60 リリースされる

| NScripter Ver.2.60 リリースされるを含むブックマーク NScripter Ver.2.60 リリースされるのブックマークコメント

 一応だが、バージョンは正確には2.6となっている。

 新命令は4つ追加されたが、バグフィックスは無し。

 以下は掲示板からの引用。

 clickskippageはマニュアルを見て欲しいとのことなので省いた。

・savegame2…セーブファイルに固有の文字列を付加する命令

・getsavestr…savegame2で付加した文字列を取り出す命令

・drawsp3…スプライトに任意の一次変換を掛けて表示する命令

 以下簡単な動作確認スクリプト

*define
; 文章表示中にクリックすると通常クリック待ちで止まらず
; 改頁待ちまで一気に表示するようにする。
clickskippage
game
*start
saveoff
textoff
bg black,1
lsp 2,":s/24,24,0;#ffffffてすと",320,240
drawclear
drawbg
; スプライトに任意の一次変換を掛けて表示する
drawsp3 2,0,128,320,240,1500,300,800,1200
draw
;bgcopy
click
; セーブファイルに固有の文字列を付加する
savegame2 12,"てすと"
; savegame2で付加した文字列を取り出す
getsavestr $0,12
mesbox $0,""
; clickskippage のテスト
適当な長い文章を適当に書き綴っておいて、
文章表示中にクリックしたら@
ここまで表示する
\
end

 savegame2で、保存しようとした文字列に比して、妙に大きいファイルを保存していたので、掲示板で質問中。

 利用するとセーブファイルが1つにつき1MB近くになってしまうのは、最近の大容量HDD普及があるとはいえ、さすがに気が引ける。

 命令自体は文字列配列を自前で管理する必要がなくなるので使いたいのだけれども。

(追記)

 ファイルが作られるのは単にbgcopy命令の動作だったのでコメントアウトしました。気づけよ・・・>自分

Ver.2.6新規命令の追加

| Ver.2.6新規命令の追加を含むブックマーク Ver.2.6新規命令の追加のブックマークコメント

 上にあげた4命令を追加しました。

反省と感謝

| 反省と感謝を含むブックマーク 反省と感謝のブックマークコメント

 最近あまり余裕が無いので、かなり恥ずかしい間違いをしてしまった。

 恥自体はブログを書いてる時点で、ある程度覚悟はしているが、誤情報を流して無用な迷惑をかけてしまったので、正直言って凹んでいる。


 しばらくは状態が落ち着くことは無いと思うので、ネット上での活動はしない方がよさそう。

 ちょうど年末まで間もないので、反省の意味も含め、年明けまで自粛することとしたい。




 誰も見てないよな、と思うこともありますが、隙間だらけの日記のわりには、結構コメントいただけるので、感謝しております。

 少し早いですが、本年中はお世話になりました。

み 2005/12/18 20:12 はじめまして。
動作確認用のスクリプトを試してみたのですが、原因は[savegame2]命令ではなく、[bgcopy
]で生成されたスクリーンショット(一時保存)だと思います。>save12.ss

senzogawasenzogawa 2005/12/19 01:37 ご指摘ありがとうございます。
おっしゃるとおりですので、コメントアウトしておきました。

トラックバック - http://d.hatena.ne.jp/senzogawa/20051218

2005-12-15 遠吠え

また落ちた・・・

| また落ちた・・・を含むブックマーク また落ちた・・・のブックマークコメント

 情報処理試験(PM)を去年も受けてたんだが、今年も受けて、そして落ちた。

 自らのふがいなさを恥じる限りだ。


 去年も午後2で落ちたにも関わらず、今年全く対策をとる気が起きなかった。

 原因はわかっている。

 午後2が手書きの論文であり、そして手書きであることに何の意味も見出せないためだ。


 もちろん、こんなことは単なるいいわけに過ぎない。

 同じように思っても、それでも受かった人は数多くいるはずだ。

 きちんと対策をとれば、受かる自信もある。


 ただ、やはり今の試験体制に対する疑問を払拭できない。

 来年、ただでさえ午前試験の免除が無くなるというのに、午後2の対策などとるだろうか。いや、とるはずがない。


 だから、もう、やめにすることにした。

 別に資格がなくても、やりたいことはできそうだし。

 本当に必要だと、あるいは、勉強になると思って取り組めるようになったら、また受けることにしよう。

 今のままなら金の無駄だ。



 と、ここまで書いたところで、試験直後に既に諦めると書いていたことに気づいた。(id:senzogawa:20051016)

 何だ、全然諦めきれてないじゃないか・・・

トラックバック - http://d.hatena.ne.jp/senzogawa/20051215

2005-12-14 置換が

おきかえる

| おきかえるを含むブックマーク おきかえるのブックマークコメント

 シナリオ書きに記述してもらった謎言語を置換するには、実際には昨日id:senzogawa:20051213書いたDevasのような、複数ファイルに対して単数の置換を行うツールだけでは結構辛い。

 理由は至って簡単で、パターンにマッチさせるのではなく、個別に置換する必要のある語句が多くあるからだ。


 例えば、背景を表示させる命令として以下のように書くとする。

B校門
B階段
B廊下

 これを、以下のように置換したいとする。

bg BG_KOUMON,1
bg BG_KAIDAN,1
bg BG_ROUKA,1

 これは、置換が計3回必要だが、パターンで置換できるのは「^B(.+)」を「bg BG_\1,1」とする部分であり、漢字から英数への置換は一つ一つ置換していくしかない。

 しかし、実際には背景画像の数など膨大な量があり、置換前、置換後を手で打ち込むのは間違いが生じやすい。

 また、置換の優先順位を間違えるとかえって面倒になる。以下のような例だ。

B校門
B校門・夜

 この場合、「B校門」を先に「bg BG_KOUMON,1」に置換すると、「B校門・夜」の方は当然ながら「bg BG_KOUMON,1・夜」となってしまうので、先に「B校門・夜」を置換する必要がある。


 優先順位を明確にするためには、複数の置換を先に記述しておく必要がある。

 全ての置換が出揃えば、優先順位を確定できるからだ。

 そこで、このツールおきかえるの詳細情報 : Vector ソフトを探す!を使った。

 複数の辞書を登録でき、しかも有効・無効の管理までできる。


 これもまた、以前使ったことがあったが、置換後の文字列に改行を入れられなかったので、今までは自作ツールで対処していた。

 しかし、新しいバージョンをチェックしてみたら、改行に対応していて、辞書セットなどの新しい機能もついていた。ありがたい。


 ただ、ワイルドカードの使用を無効にしていても、置換後の文字列に「*」があると置換がうまくいかないみたいだ。

 おそらくは改行文字の展開の時に、一緒に展開されてしまっているのではないかと推測するが、ちょっと残念。

トラックバック - http://d.hatena.ne.jp/senzogawa/20051214

2005-12-13 手がかじかむ

現在の状況

| 現在の状況を含むブックマーク 現在の状況のブックマークコメント

 とりあえず、システムは6割がた完成。

 多少特徴的な部分としては、新型の割り込み選択と、TIPS、それとタブ型システムウィンドウだろうか。


 新型の割り込み選択は、従来から作っていたウェッジインというシステムの進化系。

 『セプテントリオン』や『ノスタルジア』という旧き名作ADVGであった、感情表現を統合して、ユーザインタフェースもよりスムーズにプレイできるように改良した。

 具体的には見てもらうしかないが、多分体験版は作ったとしても年明けしばらくしてからになる。


 TIPSは『街』で使用されていたもので、ほぼそのまま。

 特定の単語をクリックすると説明を表示するというものだ。

 クリックすると他のシーンに飛ぶザッピング自体既に作ってあったので、別に時間はかかってない。

 一応モジュールを切り出せるようにしてあるので、機会があれば公開したい。


 タブ型システムウィンドウは、セーブ画面からロード画面に切りかえられたりする機能。

 これは現在のソフトウェアでは設定画面などでよく搭載されているので、別に珍しくは無いが、NScripterであえてやってみた。

 Tabキーで画面が切り替えられるのは、やっぱり便利だと思う。

 元々前作で入れようと企んでいて、システムウィンドウはレイヤとして管理していたため、そんなに大きな苦労はなかったけど、5画面を制御する必要があったので結構時間がかかった。


 で、今シナリオを組み込み中なのだが、今月初めにシナリオが上がったとのことで受け取ったら、恐ろしい数とサイズのファイルが・・・

 総容量約1.7MBって、前回の2.5倍くらいあるじゃないか。書きすぎ。


 過去に書いた方法id:senzogawa:20050516#p1のまま、特に改善していなかったので、これらの演出文などをスクリプト化していく作業を行っているわけだが、時間的に非常に厳しい。

 ツールを駆使して頑張ってはいるが、前作と比較すると多くの機能を追加しただけに、バグが心配。結合テスト期間がほとんど無いし。


 ちなみに大量のファイルに対する文字列置換には、Devasの詳細情報 : Vector ソフトを探す!がすごく役に立っている。

 結構前に使ってたが、いつのまにかバージョンがあがってて、ドラッグ&ドロップや正規表現置換、自動バックアップなど、欲しい機能が盛りだくさん。

 おかげでかなりの時間短縮ができた。ありがたい。

トラックバック - http://d.hatena.ne.jp/senzogawa/20051213

2005-12-02 C++っていいよね・・・

C++からC言語

| C++からC言語を含むブックマーク C++からC言語のブックマークコメント

 C++の勉強をしっかりしたのに、何故か今C言語の案件で頑張っていて、これがなかなか厳しい。


 コンストラクタ、デストラクタが無いので初期化と後始末の関数を書いて通すわけだが、慣れないせいか、どうにも格好が悪い書き方になりやすく、ちょっとまいった。


 C++だとauto変数クラスのデストラクタなら、スコープを外れた時に勝手に呼ばれるが、Cだと自前で呼ぶことになるから、エラーケースで処理中断する際にちゃんと後始末するのが面倒だし汚くなるということなんだけど。

 どうやってもコードがエレガントにならないんだよな。


 また、unionでポリモーフィズムっぽくしたり、関数ポインタ使ってTemplateMethodのようにしてみたりするわけだが、いかんせんC++のようにアップキャストをimplicitにやってくれるわけでもなく、オーバーライドになるわけでもない。


 当たり前なんだけど、それが辛い。それなりに有効ではあるが。

 一番辛いのは一行コメントが書けないことだったりするのが笑える。いや、泣ける。

 あと、構造体での役割の区切られ方が曖昧だったりすると、関連がわけわからなくなる。これはC++でも一緒かな。


 C言語で大きいアプリケーションを綺麗に作れる人はすごいな。

 とりあえずC++のやり方がどこまで使えるか試してみるか。

 コツさえ掴めば何とか・・・なるのだろうか。

by148by148 2005/12/13 14:42 某所でNスクランチャーマクロを公開した者です。
私もC/C++( VC )を触っていますが、C言語のコメントは以下のPPAマクロでストレス軽減できませんか?(一応、動作確認はしています)

S_InsText( ’/* */’ );
S_Left( );
S_Left( );
S_Left( );

割り当てキーは左手が届く範囲ということでCtrl+R(”remark”から。// はダブルスラッシュなのでCtrl+W )でやっています。
ちなみに私は秀丸なので、カーソル移動後さらに秀丸マクロでIMEを半角英数から全角かなに切替えてすぐに日本語でコメントが打てるようにしていますが…。

by148by148 2005/12/13 14:46 すいません、追記です。ブログの仕様上削除されてしまいましたが、’/* */’の間はホントは半角スペース2つです。

senzogawasenzogawa 2005/12/13 22:36 これはどうも。
確かにマクロ使えば少々手間は省けますね。
ただ、1行コメントに関しては、左に”// ”しかない見た目のシンプルさが気に入ってるので、こればかりはどうしようもないかな、と。

トラックバック - http://d.hatena.ne.jp/senzogawa/20051202