Skip to content

Instantly share code, notes, and snippets.

@Tatakinov
Created December 4, 2024 15:00
Show Gist options
  • Save Tatakinov/e183b7a535694f7358e7da7ab26bf4de to your computer and use it in GitHub Desktop.
Save Tatakinov/e183b7a535694f7358e7da7ab26bf4de to your computer and use it in GitHub Desktop.
伺か・伺的 Advent Calendar 2024 5日目

ベースウェア作成に手を出してみた話

これは伺か・伺的AdventCalendar2024 第1会場5日目の記事です。

昨日はElinの伺かMODの話でした。

今日はSSP互換を目指すベースウェア、ninix-kagariを作っている話をします。

なぜ作った?

ninixというベースウェアがありまして、 その後継であるninix-ayaが2019年頃まで開発されていました。 が、その開発に使われているサイトの雲行きが怪しいようで、 せっかくオープンソースなのに消えゆくのはもったいない…せや! いっちょ自分でその後継を開発してみっか!と思い立った次第。

SSPはあるけれど、ベースウェアに選択肢が存在することはいいことだと思うので。

特徴

  • クロスプラットホーム

Linuxをメインとして、Windows、UNIXで動作。 Macはなんやかんやすれば動く。はず。

ただし、AndroidとかiPhoneでは動かない。

  • オープンソース

「ここ、バグってたから直しといたで」してくれる人が現れるかもしれない。

  • Ruby+GTK製

RubyもGTKも全然わからん。

出来ること

  • ある程度のSakuraScriptの解釈

  • ある程度のSHIORI Eventの発火

  • 更新やnarのインストール等

  • 切り替えや呼び出し等

要するに最低限の機能は備わっていると考えてくだされば。 ただし、アニメーション周りとか\!系のSakuraScriptとかは 対応してないのが多いです。

対応しているSakuraScript/SHIORI EventはUkadocを参照してください。

ただ、対応していると言いつつ、一部オプションに対応していなかったり、 一部Referenceが送られてこなかったり等あります。 本当はその辺もukadocに書けたら良いのですが、 ninix用の記述を入れて説明が読みづらくなったら嫌だなあ と思っていて中々手が出ないので、いい感じの記述を思いついた方は ぜひぜひukadocを弄くり回してください。

今後の予定

  • サポートするSakuraScript/SHIORI Event/SHIORI Resource/Property/Serikoを増やす。

大体のゴーストが大体動くようにするのが目標。

  • サポート済みと思われる機能が実際どこまで対応しているかの確認。

特にfork時点で実装済みな部分。面倒だけどやらないわけにはいかない。

え?fork後に実装した部分は確認しなくても分かるだろって?

ハハッ

雑記

  • ゆる募、手伝ってくれる人。

感想、要望、バグ報告、翻訳、開発、なんでも可。

  • ベースウェア作るの大変。

長年1人で作っている人がいる事実に震える。

FAQ

Q. インストールされたゴーストのファイルはどこにあるの?

A. ~/.ninix(WindowsではC:/Users/【ユーザー名】/.ninix)もしくは【NINIX_HOMEで指定したフォルダ】/.ninixにあります。 Windows用のninix-kagari.zipは【run.batのあるフォルダ】/.ninix以下にあります。

Q. 起動に時間がかかる!(Windows)

A. 仕様です(白目)。 動作に必要なライブラリのロードに時間がかかってるっぽいので、 改善は難しい気がします。

Q. 手元のゴーストが動かない!

A. 報告してくださると追々動くようになるかもしれません。

Q. 手伝いたいが、連絡手段は?

A. うかどん(tatakinov)かTwitter(tatakinov_ukgk)。 Github(Tatakinov)でも可。Discord(tatakinov)にもこっそりいます。 いきなりIssueやPull Requestを投げても構いません。 なお、匿名での連絡手段は用意してません。

Q. ninix-ayaってPythonじゃなかったっけ?なんでRubyになったの?

A. 実は最近版(v4.500以降)のninix-ayaはRuby製なのです。変えた理由は謎です。

おわりに

ベースウェアシェア率1%を目指して頑張っていきます。

明日は墨鼠さんの「初ゴーストを作ってみた所感など」です。お楽しみに。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment