himeshi’s blog

Simutrans本体改造まわりのお話をつらつらと

2022年のOTRP

この記事は、Simutrans Advent Calendar 2022 15日目の記事です。

adventar.org

本記事では昨年と同じく、OTRPの今年の動きをかんたんに振り返ってみようと思います。

開発状況

昨年3月をもって開発を終了したはずのOTRPですが、今年はv31 ~ v33の5回のアップデートが行われました。アップデートのヒストリーはOTRP更新情報サイトを参照していただければと思います。

otrp-info.128-bit.net

今年は、いわゆるKU-TA版(金沢版)の取り込みをv31で行いました。KU-TA版は、金沢大学・金沢工業大学鉄道愛好会によって配布されたOTRPの派生版で、OTRP v30に多数の新機能が追加実装されたものでした。昨年6月に一般公開されその後数回アップデートが行われており、KU-TA版を本体として採用するNS鯖も見受けられるようになりました。

kanazawaxpress.blog.fc2.com

KU-TA版は多くの有用な機能を有していましたが、修正が必要な不具合が複数含まれていたことも事実です。しかし、配布元は不具合修正を行う予定がない旨をアナウンスしていました。これらの不具合を修正し、より使いやすい形で日本のSimutransプレーヤーに行き渡るようにすることを目的として、OTRPをKU-TA版ベースに切り替える形で取り込むことにしました。KU-TA版の取込みおよびソースコードの提供を快諾してくださった金沢大学・金沢工業大学鉄道愛好会様には、あらためて御礼申し上げます。

来年2023年のOTRPについては、更新を行うか行わないか含めてまだ計画がありません。ただし、本家Simutrans standard nightlyの変更を取り込むことは、本家側で大規模なリファクタリングが行われたりOTRPがKU-TA版ベースになったなどの理由により、より困難になっています。ソースコードのビルド方法ですらstandardとOTRPでだいぶ差が生じてきました。

余談ですが、Simutrans 25周年企画として開発者インタビューを受けました。OTRPの開発モチベーションに関する話なども含まれていますので、まだお読みでない場合はぜひお読みください。日本語で読めます。

store.steampowered.com

OSDNのダウンロード動向

OTRPはNSに同梱されて配布されるケースも多いため、配布サイトの統計が普及の実態を表しているとは言いがたいのですが、参考までに今年一年のダウンロード数グラフを貼っておきます。

傾向としては昨年と大差なく、バージョンアップを行った日やその週末にはダウンロード数が大きく伸びるようです。また、Ribi-Arrowのダウンロード(赤線)も一日数件ながらコンスタントに見られます。Ribi-Arrowは通常バージョンアップ時に再ダウンロードすることはないため、新規さんの流入が少ないながらもコンスタントに発生していると考えてよさそうです。

OTRPの利用ログ解析

OTRPの起動ログ収集ですが、今年は運用上のミスにより下記の期間で障害およびデータの消失が発生しました。OTRPをご利用の皆さまにお詫びいたします。

  • 1月20日~2月18日 ... DNS設定不具合によるアクセス障害
  • 5月26日~8月7日 ... ハードウェア故障によるログ消失
  • 8月20日~9月15日 ... DNS設定不具合によるアクセス障害

それではまずは、今年一年間の月毎のアクティブユーザー数です。解析は12月初頭に行っていますので、11月までの数値でお考えください。

ログに障害が起きなかった月が3, 4, 10, 11月しかないのですが、この4ヶ月についてはMAUが800程度となっており、これは昨年と同程度の数字です。

データが完全である直近月の11月でも、半数弱のユーザがv30以前のKU-TA以降前バージョンを使っているように見えます。11月はv32_2のリリースがあったので、11月について日毎のアクティブユーザー数を見てみましょう。

月のはじめは半数弱がv30以前(KU-TA移行前、緑色の領域から上)でしたが、v32_2のリリースによってv30以前を使っているユーザがある程度移行しているように見えます。v29系も未だにある程度の勢力を保っています。

最後に、OTRPユーザにおけるpakセットの利用分布をみてみましょう。最近の傾向をつかむために、今回はデータの欠損がない10月以降のデータ(約2ヶ月分)のみで集計したIPアドレスベースの分布を計算してみました。

pakセット利用分布は長らく無印128:128jp:64系が1:1:1になる傾向が続いてきましたが、今年は128jp系のpakが明らかに頭一つぬける構図となりました。128jpは近年NSにおいて採用例が増えているようなので、その傾向を反映していると考えられます。一方でnippon系は勢力を縮小することになっているようです。

おわりに

OTRPは特に手を加えられることもなくこのまま陳腐化していく... と去年あたりは考えていましたが、KU-TA版の登場とその取込みによって今年もOTRPにとってなかなか楽しい年になりました。また、直近では久々にコードのコントリビューションをいただきました。

一方で、KU-TA版の取り込みと本家リポジトリとの差分拡大によって、OTRPの開発を継続する技術的な難易度はいっそう高くなってしまいました。とはいえ、Simutrans自体が非常に古い規格のC++のまま今なお開発が続けられるしぶといプロダクトですので、OTRPもなんだかんだでこの先もまだ手が入れられそうな気もしますw

Simutransのコミュニティ自体の変化も進んでいると思います。Discordサーバなどでの海外勢との交流も少しずつ進んでいますし、アクティブメンバーの入れ替わりもみられます。また、pakセットとしては128jpが大きく躍進した年でもありました。

私自身は最近は隠居ぎみですが、今年はとあるNSにプレイヤーとして参加し手植えによる景観プレイの技法を習得するなどしました。来年もローカルやNSでまったり遊ぶ人になりそうですが、界隈の盛り上がりのために少しでも貢献できたらいいなと考えていますので、よろしくお願いいたします。