beta0.6 - v0.6.20424.1
Pre-release
Pre-release
·
1115 commits
to main
since this release
本バージョンはβ版です。基本的な機能はおおかた完成しましたが、できることはまだ多くありません。
AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所
現時点で実装済
- プラグイン機能
- DllExport無しの純粋なC#コードで記述できます。
- 従来のATSプラグインの機能を拡張します(右クリックメニュー関連、時刻・位置・速度・駅・ストラクチャ他の編集機能など)。
- 車両に紐づけた従来の形態のプラグインの他、マップにプラグインを組み込むこともできるようになります(マッププラグイン機能)。
- AtsEX準拠プラグインの一覧表示機能
前バージョンからの主な更新内容
AtsEX本体
- 【破壊的変更】 AtsEX本体は車両には組み込まず、別途インストールする形式に変更しました。→ f1f83f7
- 新しいバージョンのAtsEXをリリースした際、車両ごとに更新するとなるとかなりの手間がかかってしまうためです。
- 車両アドオンにはAtsEX本体を呼び出すためのアセンブリ(DLL)「AtsEx.Caller.x64.dll」「AtsEx.Caller.x86.dll」を同梱頂き、車両ファイルの
Ats64
、Ats32
にはこれらを指定する形となります。
- 【破壊的変更】
ScenarioProvider
と機能の方向性がかなり近くなってしまっていたBveHackService
(IRoute
、IVehicle
)を廃止し、代替機能を一般のクラスとして追加しました。→ 4967339 / 29d189e - BVEから読み込まれた際に自動でアップデートする機能を実装しました。→ 4967339 / 9e8faed
- AtsEXはBVEのバージョンに強く依存する実装となっており、最新のバージョンを維持することが重要なためです。
- 確認ダイアログにて「いいえ」を選択すれば辞退することもできます。
- 【破壊的変更】 AtsEXプラグインの
Elapse
イベントをTick
メソッドに変更しました。→ 5ca713d- 毎フレーム実行されるメソッドの名前は統一されておらず、ATSプラグイン(C++で開発)は
Elapse
である一方、入力デバイスプラグイン(C#で開発)はTick
となっています。AtsEXプラグインと同じくC#で開発する後者の名前に合わせた形です。イベントであったところをメソッドに変更したのも同様の理由です。 Tick
メソッドを抽象メソッドとするため、AtsEXプラグインの基本クラスAtsExPlugin
は抽象クラスとした上AtsExPluginBase
に改名しました。
- 毎フレーム実行されるメソッドの名前は統一されておらず、ATSプラグイン(C++で開発)は
車両プラグイン:状態取得・設定サンプル
IRoute
、IVehicle
の廃止に伴いコードを書き換えました。→ 8b0d977
既知の不具合
- マッププラグインリストを読み込むinclude構文が、BVEによってエラーとして認識されます。今後のリリースにて解消予定です。
近日実装予定
正式版リリースまでに実装するもの
BveHacker
の改修- 現在の
MainFormHacker
などの基底となる機能以外は廃止する CoreHackService
は全面的に廃止する
- 現在の
編集できるようにするもの(クラスラッパー)
- 車両のパラメータ類……
VehicleParameterSet
クラスScenarioProvider.Vehicle.Parameters
から
- ポーズ中かどうか/早送り中かどうか……
TimeManager.GameState
プロパティ(TimeManager.GameState
列挙型)ScenarioProvider.TimeManager.GameState
から
その他
- マッププラグイン使用時に発生するエラー表示を解消する→ #8
- DXDynamicTexture(MIT)を組み込む
- パッチ処理はAtsEXの機能を利用して簡略化する
サンプルプラグイン一覧
車両プラグイン
- 状態取得・設定サンプル
マッププラグイン
- 駅リスト編集サンプル
ダウンロード
下のAssetsより「AtsEX_v0.6.20424.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン「状態取得・設定サンプル」、マッププラグイン「駅リスト編集サンプル」の動作を確認することができます。
解凍には別途7-zipなどの解凍ソフトが必要です。
注意:今後破壊的変更を行う可能性があるため、まだ本番環境での採用は推奨しません。