Seaside Laboratory

Posts

KFM 2 リリース

KFM 15 周年ということでいくつか機能を追加した Version 2 をリリース。

一般的なメジャーバージョンアップと言えば大幅な機能改訂のことを指すが、KFM の場合は小さな機能追加の繰り返しによって結果として数字が繰り上がったという感じ。とはいえ、初期バージョンと比べれば 2 と名乗っても恥ずかしくないくらいの機能拡張は行えたと思ってる。

主な変更点は以下の通り。

透明度のサポート

motion.lst で透明度の指定ができるようになったのはオマケのようなもので、一番の目的はスキンでのトランジション (フェードインとアウト) だったりする。

せっかくなので暗転や影も半透明に。

昔のゲームはパレットを書き変えることで画面の明るさを高速に切り替えることができたが、KFX のようにキャラ制作者が好き勝手にデータを追加できるゲームだと同じ手法を使うことができない。アルファブレンドがあれば画面を覆った黒いスプライトの透明度を変えるだけで元の色関係なく輝度をコントロールすることができるようになる。

自作ライブラリにアルファブレンド機能がなかったので、転送ルーチンを作成したり、リスト上の透明度を誤差なく保持できるよう固定小数ライブラリにパース機能を追加したりと、結構面倒だった。

デモンストレーションプレイの追加

市販ゲームを調べてみると通常のプレイを COM 同士で行うだけというのが幾つかあったが、「いかにもデモ」という感じを出したかったのでゲージ類の表示や BGM は無しにした。

あくまでデモなので KFA のエンドレスな COM 戦とは別物。

カラーエフェクト

KFM 1.96 でパレット機能を強化した際に実装しようと思ったものの、パレットアニメーションやキャラの食らい状態管理をするのに手間がかかりすぎて一旦ペンディングに。リファクタリングによってプログラムの見通しが良くなったこともあって、やっと実装の目処が付いた。

燃やしたり。
感電させられたり。