「浮き沈みランチャ」に関する日記(4)

浮き沈みランチャー。最近良く使う項目ほど上に来るタスクトレイ常駐型ランチャーです。正式名称は最後伸ばすけど日記のカテゴリは「浮き沈みランチャ」

<前 次>

バリューサーバーとAvalonia UI

バリューサーバー

ソフトウェアメンテナンス | メンテナンス・障害 | Value Domain(バリュードメイン)
2月にPHP8.4がうちのサーバーにもついに搭載されるようです。
既にPHP8.5も正式リリースされているので周回遅れ感はあるのですが、Deprecated属性が使えるようになるのは個人的に熱い!
結構既存の機能をDeprecated扱いにして段階的に削ったりしていましたからね。
私の作業のスケジュールとしては、手元のコードを8.3/8.4両対応にして自動テストを回しつつ、正式搭載後に切り替えて段階的に8.3のコードを置き換えていくことになるかな。

Avalonia UI

NuGet Gallery | Avalonia.ReactiveUI 11.3.8
浮き沈みランチャー2用に使おうとしていて、何もコーディングが進まないままほったらかしている間に、Avalonia.ReactiveUIが非推奨になっていました。
で、今後何を使うべきなのかというと、ReactiveUI.Avalonia
同じじゃないですか!!

とりあえず、NuGetで入れなおして名前空間を入れ替えるだけで現状は済みそうでした。
開発が進む前に気付いてラッキーだったのか、前提が変わるまで進まなかったのがだらしないのか…

アンパンマンDBと浮き沈みランチャー2とアンパンマンワンドロとゲーム記

アンパンマンDB(記事更新)

来週の放送情報。
再放送ですね。

浮き沈みランチャー2

浮き沈みランチャーのウィンドウは、タイトルバーのないメニューみたいな見た目になっています。
今回は、それを2でも実装したものになります。
タイトルバーはなく、システムメニュー&ボタンもなく、タイトルバー代わりのメインメニューと、検索のためのコンボボックスがついています。
タイトルバーがないので直接的な移動操作はできませんが、ウィンドウ枠は残してあるので、サイズ変更と、その操作により実質的な移動もできるようになっています。
まあ、そもそもメニューみたいにクリックした場所を基準に出てくるので、移動が実質できても実質意味ないんですが。
タイトルバー消してウィンドウ枠だけ残すっていうの、Avalonia UIだからかなんなのか、ちょっと癖があって、ただタイトルバー消しただけだと謎の余白ができてしまい、それを消すのにちょっと苦労しました。
試行錯誤の末、最終的には割と素直でシンプルな形に落ち着いたと思います。
他はまあ、ウィンドウの丸みや枠の太さに合わせた微調整とかですね。

このあたりの話、Qiitaとかにまとめなおしてもいいかも…気が向いたらだけど。

アンパンマンワンドロ

参加者カウントの仕組み、勢いで作ってみて開発環境で実行してみたら盛大にバグって、全然関係ないお題に計上されてしまいました。
API使えなくなったときに一度消した機能を復活させたから何か無理があったのかなぁ。

ゲーム記

スターリーワールドの情報追記しました。
本当はもっと早い時期にやろうと思ってたんですけどね、他にもやりたいことが色々あって忘れ去られちゃってね…。
エアライダーお試し版のページも作りたいし、エアライダー製品版も予約済みだからこれもページ作るの確定だし、ディスカバリーのページ編集途中で残してると何かと支障があるので、今書ける範囲で書ききりました。
たったこれだけなら発売日一週間ぐらいで作れよって話ですが。

ゲーム本体のほうもエアライダー発売までにやり切りたいですね。
欲を言えばプリンセスピーチ Showtime!もやっちゃいたいけど、エアライダーとかち合うようなものでもないから優先順位は低くなるかな。
ドラクエ10も3周遅れなストーリーを進めたい一方自分で戦いたくないボスカードがたまりまくってる…!

Visual Studio 2026とAvalonia Accelerateと浮き沈みランチャー2

今日はゲーム記のカービィディスカバリーのページにスターリーワールドの情報でも追記しようかなーなんて思ってたけど…

Visual Studio 2026


Visual Studio 2026 リリース ノート | Microsoft Learn
最新版来てました!
リリースノートにいきなり「という意味でしたか?」とか出てきてたり、AIが進歩しても翻訳は相変わらずのMSDNクォリティですが、ソフト本体は今のところいい感じです。
新機能はあまり使っていませんが、.NET 10とC# 14が普通に使えるようになったというのは大きいです。

Avalonia Accelerate

Avalonia Accelerate
順序的にはこっち先にやったんですが、Avalonia UIの追加ツールです。
無料版をひとまず入れてみました。
メールアドレス関連でちょっと躓くところがありましたが、それ以外はおおむね順調でした。


VS2026でも問題なく動きました!

浮き沈みランチャー2

ソリューション構成調整 by mifumi323 · Pull Request #11 · mifumi323/FLaunch2
さっき画面写真出したけど、.NET10&C#14に移行して、ソリューションもVS2026向けに切り替えました。
あと、書き忘れてたライセンス表記も。

浮き沈みランチャーとBomber丸Worldとドラゴンクエスト10

浮き沈みランチャー

2の開発を始めるつもりなので、緊急性低そうな課題は2に回す方向にしました。
残ってる課題も折を見てクローズかな。

Bomber丸World

開発室Wikiに書いてたプログラム関連の情報、通常ページのほうの開発室に移動しました。
キャラ情報をキャラ倉庫に全部移動できればWikiは完全にお役御免。
開発再開の予定が当面ないから後始末パートですね。

ドラゴンクエスト10(ァォィョッュ)

精霊大臣の屋敷

  • クエスト「隠者は精霊とともに/影と陰」をクリアした!

隠者のクエスト完了!

(クエスト内容ネタバレとか)

精霊大臣
精霊大臣、ホーローさん系の食いしん坊なお方だった。
写真置き場ではボス以外ネタバレ扱いしないけど、一応この写真はネタバレエリアに入れといたほうがいいかな。

精霊超人ブロズ

  • 【クエスト】「隠者は精霊とともに/影と陰」精霊超人ブロズをはじめて倒した!

ブロズさん、精霊といっぱい合体して超人化しちゃった!
ネーミングセンスはともかくとして見た目はカッコいい…かっこいいよな?かっこいいってことにしとこう。
相変わらず戦闘中できることは少ないので割とだるい。

精霊大臣の威光にひれ伏す精霊超人ブロズ
精霊の王も服従させたるとか言ってた割に、それより立場が下の大臣の威光(本人ですらない)にひれ伏してしまうブロズさん。
自分の身の回りの狭い観測範囲だけ見て暴走するし、最終的に吸収した精霊に見放されちゃうし、この人、リサーチ不足の実力不足よね。

他の写真は以下から。
写真置き場「2025/10/07」

ドラゴンクエスト10とお絵描き掲示板と浮き沈みランチャー2とRPG Developer Bakin Demo

ドラゴンクエスト10(ァォィョッュ)

  • クエスト「隠者は精霊とともに/精霊を喰らうもの」をクリアした!

今度こそクリア!
まあ報告だけ。

お絵描き掲示板

お絵描き掲示板ログ、スタイルとか調整して静的HTML化しました。

浮き沈みランチャー2

実装は1ミリも進んでないけど方針立て。
AIは方向性の相談役にして、自分で雑にコード書く→AIにダメ出ししてもらうのサイクルで考えてみました。
だから、まあ、うん、書いたけど全面的に捨てたコードならある。もうないけど。

RPG Developer Bakin Demo


結局、当初の予想通り、期限まで全然触らなかったので、最後にちょっとだけ触ってからアンインストールしました。
ツクールよりはやる気出そうな気がするので、もっと大幅な値下げがあったらそのタイミングで買うかも…買わないかも?

ふにゃ1とMifuminatorと浮き沈みランチャー

ふにゃ1(リリース)

ふりーむのほうでも公開されました!
内容はうちのサイトで公開しているものと同一です。
画面写真は、一応自分でも用意していたのですが、せっかくなのでふりーむの人におまかせしました。
寝てる姿を入れてる点とかは「わかってるぅ!」って感じだったんだけど、一番人の心がないadd.stgも入れているのは…いや、このゲームの振れ幅を示すにはちょうどいいのか。

Mifuminator

課題立て。
実はリポジトリの外にテスト用のプログラムがあるのですが、それを調整してリポジトリに入れたいなって。
それをしないと使い方も全然わかんないだろうしね。

浮き沈みランチャー

もいっこ課題立て。
今のところ問題は起きてないけどバグくさいなってことで。

浮き沈みランチャーとアンパンマン日替わり紹介bot

浮き沈みランチャー

リリースしました。
こっちもマイナーバージョン2桁到達。
まだ課題が2つ(#31#34)ほど残ってるけど、これはAvalonia UI版に回してもいいかもですね。

アンパンマン日替わり紹介bot

完全に内部動作の話なんですが、このbot用のデータって、紹介内容とセットで、前回同じものを紹介したときにどんな文面だったかも覚えているんですよね。
過去に紹介したことがあるけど文面が変更されているなら優先的に再紹介する…というのを想定して、そんなものを用意していました。
しかし、運用と全然噛み合ってないシステムだったので、過去の文面に関係なく、未紹介だけを優先するように、昔に修正を加えました。
その修正からかなり時間がたったのですが、いまだに過去文面を持ち続けているので、過去文面をもう使わない・持たないようにするためのさらなる修正中です。
修正しなくても今のシステムは問題なく動くんですが、こういう古くていらなくなったものは今後の開発の邪魔になるのでね…。

浮き沈みランチャーとミフミンのDQ10メモとFNチェンジャー2

浮き沈みランチャー

先週ひっそり立ててた課題、解決しました。
プロパティ画面を出すときにタグ一覧も渡す必要があったんだけど、やってなかったんですな。
後日リリース予定です。

ミフミンのDQ10メモ

細かいことですが、コメントにHTML使えるようにしました。
ユーザーからのコメントじゃなくて補足説明のコメントね。
今のところタグ使ってるページはないので目に見える影響はなしです。
コメントって呼び方紛らわしいから変えたほうがいいかもなァ。

FNチェンジャー2

そういえば忘れかけてたけど日付の件、自分で使ってみて問題なさそうだったし、こっちもリリース準備しておかないと。

浮き沈みランチャーとアンパンマンDBとドラゴンクエスト10

浮き沈みランチャー

Avalonia UI版の開発です。

プロジェクト設定の調整。

やっぱり.NET8より9がいいなーってことで。

とりあえず見た目だけ作った。

最初のテンプレのプロパティはとっとと消しました。

次はWinForms版のロジックの移植ですかね。
多分メインのロジックはそのままコピペでどうにかなると思います。

アンパンマンDB(記事更新)

久々におむすびまんの映画を見たので。

姉妹のついでの更新。

ドラゴンクエスト10(しろいコキン)

さびれたほこら

  • クエスト「英雄と魔女のフィナーレ/魔女は高らかに笑う」をクリアした!

昨日の続きクリア。
このクエストはちょっとしたアイテム集めだけ。
ザンクローネから見た魔女の物語でした。

(次のクエストネタバレ)

魔女グレイツェル

  • 【クエスト】「英雄と魔女のフィナーレ/英雄はすべてを救う」魔女グレイツェルをはじめて倒した!

今日はボス倒しただけ。
まあ強いサポと一緒だから特に問題なく倒せました。

こっちは魔女から見たザンクローネの物語ですね。
この先は、長いムービーがありそうな気がしたのでここまで。

他の写真は以下から。
写真置き場「2025/04/29」

浮き沈みランチャーとNeoMuplとアンパンマンDB

浮き沈みランチャー

結局何も対策しないままなぜか判定されなくなってそのままリリースしたので、課題はクローズしました。

NeoMupl

こっちも対応しないという対応だけど、実装しかけたコードが残っていたので削除しました。
実質的にあってもなくても変わりないコードなので、これ単体でのリリースはしません。
将来何かの機会に別の機能を実装することがあればそのついでに、ということになりますね。

アンパンマンDB(システム)

特定の検索文でエラーが発生することがあるので調査中。
配列とNULLを足し算しようとしている?

浮き沈みランチャーとOFUSEとくるっぷ

浮き沈みランチャー

バージョン1.8.0をすっとばして1.9.0を公開しました。
1.8.0はなぜかウィルス扱いされたので欠番です。
更新内容は1.9.0に盛り込んでいます。

OFUSEとくるっぷ

完全に開店休業状態だったOFUSEとくるっぷにも告知入れときました。
どっちもAPIないみたいだけど、自動化できないのかなぁ。

アンパンマンDBと浮き沈みランチャーと日記

アンパンマンDB(記事更新)

来週の放送情報。
再放送です。

浮き沈みランチャー

mifumi323/FLaunch2
新しいフレームワークの練習も兼ねてAvalonia UIで書き直してみることにしました。
このソフトの肝となるWinFormsのNotifyIconに相当するのは、Avalonia UIではTrayIconです。
とりあえず、通知領域にアイコンを表示できるところまではできました。
ちなみに、マルチプラットフォームを目指すつもりは当面ありません。

日記

カテゴリの読みが一部変だったやつを修正しました。
そういうのを検出する仕組みを作って対応しました。

ふにゃ1と浮き沈みランチャー

ふにゃ1(開発状況)

まあ、普通にメニューで選択中のオプションとか、機能の解禁状況で表示切り替えたりとか、そういう基本的なところですな。

GitHub Copilotにコミットメッセージ任せたらステージセレクトの件がスルーされましたが、オプション変えたときの反応です。
秘密機能本体の実装も進んできたというわけです。

大昔のソフトだし公式ページに全シークレット書いてるのでネタバレ自重しないんですが、無重力に関するバグ修正です。
ここはちゃんとVB6のコードを解析できていたのですが、なぜか解析したコードを転記していませんでした。
無重力で飛び上がったら天井に頭ぶつけるか死ぬまで操作が効かないって状況になってしまっていました。

ここは実質動きの変わらない気分的な修正。

ショートカットキーの実装です。
これまでメニューイベントはClickイベントで実装していましたが、ショートカットキーの実装に当たって、WPFの流儀に従ってコマンドで実装しなおしました。
ショートカットキー本体とショートカットキーの表示が別管理になっているというのがちょっと微妙なところですが。

時々やっとかないと忘れる説明更新。

浮き沈みランチャー

課題「#32 削除前に尋ねる」の対応です。
一行で終わり!

ウィルス扱いされる件の再確認が済んだら、リリースしようかと思います。
それまでは、単純に自分一人で便利に使います。
一応、CIビルド版はGitHub Actionsからダウンロードできます。

ふにゃ1と浮き沈みランチャー

ふにゃ1


ステージクリアとゲームオーバーができた!!

食べ物取得処理…と、やられ判定も実はここ。

メッセージやらマウスカーソルやらでとかく隠れがちなふにゃの顔を何とか見せようとする修正です。

全クリの演出はVB版から仕様変更しています。
秘密機能を解放しても終了しない、複数の条件を満たしたら連続で取得可能、といったあたり。
あと、メッセージ表示が実質非同期になった関係で、内部的な処理の流れも変更しています。

これは単なる便利メソッド。

やられた時の演出。
ゲームオーバーも作っていますが、コンティニューの処理はまだテストできていません。

浮き沈みランチャー

昔立てた課題の内容を忘れてしまったので思い出そうとしているところ。

浮き沈みランチャーと美文のキャラ倉庫

浮き沈みランチャー

今日リリースしようかと思ったのですが、あろうことかウィルス扱いされてしまいました。
確かにランチャーソフトなので、利用者がやべーやつ登録したらやべーやつそのまま起動させちゃうけど、それは登録するやつの問題であってランチャー側の問題じゃないわけで!
そして、過去のリリースの中で最新の1.7.0ではウィルス扱いされなかったので、ソフト自体というよりも、今回の追加機能で誤判定された可能性が高そうです。

ひとまず、今回のリリースは見送りにして、これを解決した1.8.1あたりで本当にリリースということになりますかね。

美文のキャラ倉庫

以前WordPressの文字コードの関係で移転を考えているとか言っていたのを、今更思い出して、準備とかしてました。
浮き沈みランチャーのリリースがすんなりいくと思って後回しにしていて、こっちを悠長にやっていたわけですよ。
んで、ドメインを用意したり、ファイルやデータベースのバックアップをコピーしてきたりしてたんですが、ファイルの調整をしていたら、文字コード問題の元凶っぽい部分が見つかりました。
これなら移転せずに済むかもしれません。

浮き沈みランチャーの件はすぐには直りそうにないし、こっち優先するかなぁ。

アンパンマンDBと浮き沈みランチャー

アンパンマンDB(記事更新)

来週の放送情報。

浮き沈みランチャー

しばらく使っていて問題なさそうだったので、リリースすることにしました。
ついさっき作業始めたので、実際のリリースは明日に回します。

浮き沈みランチャーとTgwsMark

浮き沈みランチャー

早めに実装したいと言ってから一年が経過しました。
複製機能のほうは実装しました。
「ファイルの場所を開く」のほうが、実は今日やりたかったことの本命です。
で、昨年やりたいと言っていたもう一つ、「削除前に尋ねる · Issue #32 · mifumi323/FLaunch」が手つかずで残っています。
まあこれも、手を付ければあっという間なので、明日にでも実装して適当なタイミングでリリースするかな。

TgwsMark

この日記やアンパンマンDBで使っているMarkdown風の変換機能、オープンソース化しようと企んでいます。
特段すごい技術でもなく、取り立てて需要があるわけでもないですが、見せていい部分を一般公開して、TGWSのサイト側のプログラムの規模をちょっとでも縮小したい意図があります。
サイト内のコードはなるべくサイト独自のものだけに絞りたいというわけですね。
あと、アンパンマンDBのJSON/CSV出力でもTgwsMark記法がそのまま出てくる部分があるので、オープンソース化に伴って、マニュアルを整備したいという考えもあります。

普段この手のライブラリを作るときには「Mifumin○○」みたいな名前を付けがちなんですが、今回はTGWSから抜き出したことに意味があるので、名前に「Tgws」を入れています。
他には、「Markdawn」とか「Markqown」とか、Markdownをもじった名前も考えたのですが、単なるタイポと思われるのも癪なので、部分的に似てるけど明らかに別物とわかる名前にしました。

ちょっと手元での移行作業に時間がかかっていて、今のリポジトリにはREADMEぐらいしかありませんが、近日中に整備して、Composerで入れられるようにしたいと思っています。

<前 次>