Skip to content

Releases: automatic9045/AtsEX

beta0.16.2 - v0.16.21022.1

22 Oct 15:25
Compare
Choose a tag to compare
Pre-release

本バージョンは β 版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEX についてはこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

**重要なお知らせ**

次版にて過去最大規模の破壊的変更を実施する予定です。 このバージョン以前の AtsEX 向けに開発された全てのプラグインは、次版以降の AtsEX で動作させるためには修正が必要となります。
これから新しいプラグインを開発される際は、この点ご留意頂きますようお願い申し上げます。

次版で予定している破壊的変更

  • 名前空間を変更します。
    • Automatic9045.AtsEx.~AtsEx.~ に変更となります。
  • 右クリックメニューの編集機能、読込エラーのスロー機能、拡張地上子等を AtsEX 本体から分離します。
  • etc...

beta0.16.1(v0.16.21018.2)からの主な更新内容

AtsEX 本体

  • 【破壊的変更】 IHandle で、範囲外のノッチを設定しても既定では例外をスローしない仕様に変更しました。→ 8cc1f9c
    • TASC プラグインなどで範囲外のノッチを設定する例がかなり多く、既存のプラグインと競合が発生するケースが非常に多かったためです。
  • プラグインのコードは全て UI スレッドにて同期的に処理する仕様に戻しました。→ 953142d
    • 非同期処理前提となると、プラグイン開発のハードルが大幅に上がってしまうためです。
  • AtsEX 本体のアップデート情報を受信できない不具合を修正しました。→ 38a6f48
  • 抑速ノッチのある車両が正しく読み込めない不具合を修正しました。→ 343f7d0

beta0.15.1(v0.15.20828.1)からの主な更新内容

非常に多いため、特に影響の大きいもののみを掲載しています。 全ての変更の一覧は Comparing changes をご覧ください。

アップデートのポイント

  • ユーザーに優しく - 分かりやすいエラーメッセージ、ハマりやすいポイントには手厚い警告を
  • パフォーマンスの向上 - キャッシュ機構の実装で根本から高速化、それでも重い読込処理は非同期化し固まりづらく
  • 見通しの良い構造に - AtsEX 由来の機能に依存しない機能は別アセンブリへ積極的に分離

AtsEX 本体

  • 【重要】 BVE 本体の型・メンバーを読み込む処理を刷新しました。→ e493475 / 3976cd8 / edd6c9b / 35261db / 151b80f / 9cf091c / 72021e3 / 12fe15b
    • これにより、読込のパフォーマンスが大幅に向上しています。
  • 【重要】 (クラスラッパー)ClassWrapperBase.CreateFromSource メソッドで、型ごとにキャッシュが効くようになりました。→ d63d238
    • これにより、WrappedList などでクラスラッパーを列挙する際のパフォーマンスが大幅に向上しています。
  • 【重要】 重い読込処理の多くを非同期化しました。→ d7757e6 / 9d6f535 / e2789e5
  • 【重要】 リソースの読込など、AtsEX に依存しない機能を別のアセンブリ (DLL) に分離しました。→ 6f5a112 / 770cc8b / e6cf572 / be8ebd2 / a83d00f
  • 【重要】 AtsEX Caller の互換性チェック機能を追加しました。→ 26bb1a4 / fb4e560 / fca6b89
    • 現在のバージョンの AtsEX 本体を読み込めないバージョンの AtsEX Caller を自動で検出し、分かりやすいエラーメッセージでお知らせします。
  • 【重要】 プラグインの互換性チェック機能を追加しました。→ 06e545a
    • 現在のバージョンの AtsEX 本体とは互換性のないバージョン向けに開発された AtsEX プラグインを自動で検出し、分かりやすいエラーメッセージでお知らせします。
  • 【重要】 SlimDXの特定バージョン指定を削除しました。→ bd1f0bd
    • これにより、複数のユーザー様から報告を頂いていた「BVE 5.8 に限って、SlimDX 関連のエラーが出て AtsEX を読み込めない」不具合が解消された可能性があります。
  • 【重要】 拡張地上子定義用の連続ストラクチャーの End 忘れを検出する機能を追加しました。→ 1d688dc
  • 【破壊的変更】 プラグイン一覧系プロパティを SortedList<TKey, TValue> 型から Dictionary<TKey, TValue> 型に変更しました。→ 9cf091c / e7c3318
  • 【破壊的変更】 DiagramUpdater.Update メソッドのパラメータを変更しました。→ bbc9b6c
    • 現状の仕様では BveHacker.ScenarioCreated イベントから使用しづらい設計だったためです。
  • 【破壊的変更】 VehicleSpec、VehicleState クラスを Automatic9045.AtsEx.PluginHost.Native 名前空間に移動しました。→ 1e88a70
  • 【破壊的変更】 GameState 列挙型を (クラスラッパー) TimeManager クラスの内部に移動しました。→ 4fee373
  • 【破壊的変更】 BrakePosition 列挙型をクラスラッパーとしました。→ 3772b5a
  • (クラスラッパー)ObjectPassedEventArgs クラス、PluginLoader クラス、ValueEventArgs クラスを追加しました。→ 28a676c
  • (クラスラッパー)PistonArea を扱うための型・メンバーを追加しました。→ 430a569
  • XML ドキュメントが更に充実しました。→ 101c30c / 5a348b0 / fc97e18 / 01320db / 242e42f
  • 全アセンブリに AssemblyCompany を設定しました。→ c75cc14
  • 一部エラー発生時のエラーメッセージが分かりやすくなりました。→ 015c47773df58d
  • 非同期処理中に発生した例外 (AggregateException) でも詳細なメッセージが表示されるようになりました。→ befdb58
  • VehicleState から現在時刻も取得できるようになりました。→ b987579
  • リソースの過不足を自動で検出するようになりました。→ 6aeebb5 / 48a9be2 / 44a73f8
  • AtsEX 本体の更新情報に任意のメッセージが表示できるようになりました。→ 3d5ff85
    • 今後の更新では、この機能を利用して更新に当たっての注意点などをご案内する予定です。
  • (クラスラッパー)ScenarioInfo.ScenarioFileLoadErrors プロパティが動作しない不具合を修正しました。→ 2d0aafb
  • (クラスラッパー)MainForm.KeyProvider プロパティが動作しない不具合を修正しました。→ e95de94
  • (クラスラッパー)Section が MapObjectBase を継承し忘れていた問題を修正しました。→ a0b9eb4

サンプル

  • Excel の自動変換が動作しないよう、停車場キーを変更しました。→ 836b750

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • DXDynamicTexture 連携サンプル
  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 他列車操作サンプル EX
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.16.21022.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
AtsEX本体に加えて、車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

BVE5.8で正常に動作しない不具合を確認しています。BVE5.8向けにはβ0.15.1をご利用ください。
※BVE6では正常に動作します。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.16.21018.2_SDK.7z」をダウンロード・解凍してください(beta0.16.1 から変更はありません)。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.16.1 - v0.16.21018.2

18 Oct 17:00
Compare
Choose a tag to compare
Pre-release

本バージョンは β 版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEX についてはこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

**重要なお知らせ**

次版にて過去最大規模の破壊的変更を実施する予定です。 このバージョン以前の AtsEX 向けに開発された全てのプラグインは、次版以降の AtsEX で動作させるためには修正が必要となります。
これから新しいプラグインを開発される際は、この点ご留意頂きますようお願い申し上げます。

次版で予定している破壊的変更

  • 名前空間を変更します。
    • Automatic9045.AtsEx.~AtsEx.~ に変更となります。
  • 右クリックメニューの編集機能、読込エラーのスロー機能、拡張地上子等を AtsEX 本体から分離します。
  • etc...

beta0.15.1(v0.15.20828.1)からの主な更新内容

非常に多いため、特に影響の大きいもののみを掲載しています。 全ての変更の一覧は Comparing changes をご覧ください。

アップデートのポイント

  • ユーザーに優しく - 分かりやすいエラーメッセージ、ハマりやすいポイントには手厚い警告を
  • パフォーマンスの向上 - キャッシュ機構の実装で根本から高速化、それでも重い読込処理は非同期化し固まりづらく
  • 見通しの良い構造に - AtsEX 由来の機能に依存しない機能は別アセンブリへ積極的に分離

AtsEX 本体

  • 【重要】 BVE 本体の型・メンバーを読み込む処理を刷新しました。→ e493475 / 3976cd8 / edd6c9b / 35261db / 151b80f / 9cf091c / 72021e3 / 12fe15b
    • これにより、読込のパフォーマンスが大幅に向上しています。
  • 【重要】 (クラスラッパー)ClassWrapperBase.CreateFromSource メソッドで、型ごとにキャッシュが効くようになりました。→ d63d238
    • これにより、WrappedList などでクラスラッパーを列挙する際のパフォーマンスが大幅に向上しています。
  • 【重要】 重い読込処理の多くを非同期化しました。→ d7757e6 / 9d6f535 / e2789e5
  • 【重要】 リソースの読込など、AtsEX に依存しない機能を別のアセンブリ (DLL) に分離しました。→ 6f5a112 / 770cc8b / e6cf572 / be8ebd2 / a83d00f
  • 【重要】 AtsEX Caller の互換性チェック機能を追加しました。→ 26bb1a4 / fb4e560 / fca6b89
    • 現在のバージョンの AtsEX 本体を読み込めないバージョンの AtsEX Caller を自動で検出し、分かりやすいエラーメッセージでお知らせします。
  • 【重要】 プラグインの互換性チェック機能を追加しました。→ 06e545a
    • 現在のバージョンの AtsEX 本体とは互換性のないバージョン向けに開発された AtsEX プラグインを自動で検出し、分かりやすいエラーメッセージでお知らせします。
  • 【重要】 SlimDXの特定バージョン指定を削除しました。→ bd1f0bd
    • これにより、複数のユーザー様から報告を頂いていた「BVE 5.8 に限って、SlimDX 関連のエラーが出て AtsEX を読み込めない」不具合が解消された可能性があります。
  • 【重要】 拡張地上子定義用の連続ストラクチャーの End 忘れを検出する機能を追加しました。→ 1d688dc
  • 【破壊的変更】 プラグイン一覧系プロパティを SortedList<TKey, TValue> 型から Dictionary<TKey, TValue> 型に変更しました。→ 9cf091c / e7c3318
  • 【破壊的変更】 DiagramUpdater.Update メソッドのパラメータを変更しました。→ bbc9b6c
    • 現状の仕様では BveHacker.ScenarioCreated イベントから使用しづらい設計だったためです。
  • 【破壊的変更】 VehicleSpec、VehicleState クラスを Automatic9045.AtsEx.PluginHost.Native 名前空間に移動しました。→ 1e88a70
  • 【破壊的変更】 GameState 列挙型を (クラスラッパー) TimeManager クラスの内部に移動しました。→ 4fee373
  • 【破壊的変更】 BrakePosition 列挙型をクラスラッパーとしました。→ 3772b5a
  • (クラスラッパー)ObjectPassedEventArgs クラス、PluginLoader クラス、ValueEventArgs クラスを追加しました。→ 28a676c
  • (クラスラッパー)PistonArea を扱うための型・メンバーを追加しました。→ 430a569
  • XML ドキュメントが更に充実しました。→ 101c30c / 5a348b0 / fc97e18 / 01320db / 242e42f
  • 全アセンブリに AssemblyCompany を設定しました。→ c75cc14
  • 一部エラー発生時のエラーメッセージが分かりやすくなりました。→ 015c47773df58d
  • 非同期処理中に発生した例外 (AggregateException) でも詳細なメッセージが表示されるようになりました。→ befdb58
  • VehicleState から現在時刻も取得できるようになりました。→ b987579
  • リソースの過不足を自動で検出するようになりました。→ 6aeebb5 / 48a9be2 / 44a73f8
  • AtsEX 本体の更新情報に任意のメッセージが表示できるようになりました。→ 3d5ff85
    • 今後の更新では、この機能を利用して更新に当たっての注意点などをご案内する予定です。
  • (クラスラッパー)ScenarioInfo.ScenarioFileLoadErrors プロパティが動作しない不具合を修正しました。→ 2d0aafb
  • (クラスラッパー)MainForm.KeyProvider プロパティが動作しない不具合を修正しました。→ e95de94
  • (クラスラッパー)Section が MapObjectBase を継承し忘れていた問題を修正しました。→ a0b9eb4

サンプル

  • Excel の自動変換が動作しないよう、停車場キーを変更しました。→ 836b750

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • DXDynamicTexture 連携サンプル
  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 他列車操作サンプル EX
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

不具合により動作が不安定のため、非推奨です。特段の事情が無い限り新しいバージョンをご利用ください。

beta0.15.1 - v0.15.20828.1

28 Aug 03:03
Compare
Choose a tag to compare
Pre-release

本バージョンは β 版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEX についての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.15(v0.15.20819.1)からの主な更新内容

AtsEX 本体

  • 【重要】 名前のない拡張地上子(名前に AtsEx::Null を指定)を複数個定義すると全て上書きされてしまう不具合を修正しました。→ 85b2592
  • SlimDX.dll がプラグインや AtsEX 本体に同梱されている場合、検出するようになりました。→ d67096f
    • AtsEX 本体が誤った SlimDX.dll を読み込んだことによるエラーの報告が多く寄せられているためです。

マッププラグイン:DXDynamicTexture 連携サンプル

beta0.14(v0.14.20811.1)からの主な更新内容

AtsEX本体

  • 【重要】 他列車のワールド変換行列、ビュー変換行列を編集できるようになりました。→ 44f2040
    • 他列車を自由に移動・回転できるようになりました。軌道から少しずらした位置を動かす(参考)、軌道と関係なく動かす(参考)、自列車に追随させる(参考)など、様々な表現が可能です。
  • 【重要】 DXDynamicTexture を AtsEX との連携機能を強化した上で埋め込みました。→ b1a6c23 / 41c179d
    • Texture や Model から直接 TextureHandle を取得できます。
  • 【重要】 拡張地上子の読込速度が大幅に向上しました。→ 36d3a28 / 4362941
    • 同一内容の拡張地上子スクリプトはキャッシュされるようになりました。
    • 連続ストラクチャーから拡張地上子構文を検索する処理も最適化しました。
  • 【重要】 AtsEx.Core.dll を AtsEx.dll に統合しました。→ 397cd43 / bae6372 / a28ba13 / a84fb67
    • 自動更新機能廃止により、2 つのアセンブリに分割する必要が無くなったためです。
  • 【破壊的変更】 ストラクチャーキーの識別子の仕様を変更しました。→ bad4ea6
    • AtsEx. 始まりから AtsEx:: 始まりになりました(例: AtsEx.ScriptLanguage.CSharpScriptAtsEx::ScriptLanguage.CSharpScript)。
  • 【破壊的変更】 拡張地上子スクリプトが距離程順に実行されない不具合を修正しました。→ 995b7a2
    • 拡張地上子スクリプトの実行順序が変わります。
  • 【破壊的変更】 TrainDrawer.OriginalMemberSet クラスを削除しました。→ e84dee1
    • BveTypeSet クラスと機能が重複していたためです。
  • (クラスラッパー)CarInfo を追加しました。→ 9eaf341
    • 動力車、付随車それぞれの質量、両数、慣性係数、制輪子の想定摩擦係数(ShoeFriction) を取得・変更できるようになりました。
    • Dynamics クラスから取得可能です。Dynamics は Scenario.Vehicle.Dynamics プロパティから取得可能です。
  • (クラスラッパー)SectionSectionManager を追加しました。→ 4fe519a
    • 各閉塞の位置、信号現示、定義されている信号現示インデックスの一覧、列車の在線状況を取得できるようになりました。
    • SectionManager は Scenario クラスから、Section の一覧は Route クラス、SectionManager クラスから取得可能です。Route は Scenario.Route プロパティから取得可能です。
  • (クラスラッパー)DrawDistanceManager を追加しました。→ ecf453a / 212e73a / 055ed96
    • マップファイル内での最長描画距離指定とユーザー設定の双方を加味した描画距離を取得できるようになりました。
    • 前方、後方それぞれの描画距離を分けて取得できるようになりました。
      • ユーザーが前方を向いているときと後方を向いているときで描画距離の設定が変動しています。
  • (クラスラッパー)Route クラスに GetTrackMatrix メソッドを追加しました。→ 165e4b6
    • 3D モデルを軌道上の指定した距離程に設置するためのワールド変換行列を求めるメソッドです。
  • その他、多数のクラスラッパーを追加しました。
  • Harmony のパッチ処理をオブジェクト指向的に扱えるようにするクラス ObjectiveHarmonyPatch を追加しました。→ d2fe5e2

マッププラグイン:他列車操作サンプル

  • 他列車が存在しないときのエラーを分かりやすくしました。→ 7a2776d

マッププラグイン:他列車操作サンプル EX

マッププラグイン:走行抵抗係数編集サンプル

  • 以前の更新でバージョンを上げ忘れていたため、バージョンを 0.15.20819.1 としました。→ 74f1dea

近日実装予定

正式版リリースまでに実装するもの

  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする

その他

  • クラスラッパーの無意味なsealed/protectedを変更する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • DXDynamicTexture連携サンプル
  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 他列車操作サンプル EX
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.15.20828.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
AtsEX本体に加えて、車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.15.20828.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.15 - v0.15.20819.1

19 Aug 03:10
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.14(v0.14.20811.1)からの主な更新内容

AtsEX本体

  • 【重要】 他列車のワールド変換行列、ビュー変換行列を編集できるようになりました。→ 44f2040
    • 他列車を自由に移動・回転できるようになりました。軌道から少しずらした位置を動かす(参考)、軌道と関係なく動かす(参考)、自列車に追随させる(参考)など、様々な表現が可能です。
  • 【重要】 DXDynamicTexture を AtsEX との連携機能を強化した上で埋め込みました。→ b1a6c23 / 41c179d
    • Texture や Model から直接 TextureHandle を取得できます。
  • 【重要】 拡張地上子の読込速度が大幅に向上しました。→ 36d3a28 / 4362941
    • 同一内容の拡張地上子スクリプトはキャッシュされるようになりました。
    • 連続ストラクチャーから拡張地上子構文を検索する処理も最適化しました。
  • 【重要】 AtsEx.Core.dll を AtsEx.dll に統合しました。→ 397cd43 / bae6372 / a28ba13 / a84fb67
    • 自動更新機能廃止により、2 つのアセンブリに分割する必要が無くなったためです。
  • 【破壊的変更】 ストラクチャーキーの識別子の仕様を変更しました。→ bad4ea6
    • AtsEx. 始まりから AtsEx:: 始まりになりました(例: AtsEx.ScriptLanguage.CSharpScriptAtsEx::ScriptLanguage.CSharpScript)。
  • 【破壊的変更】 拡張地上子スクリプトが距離程順に実行されない不具合を修正しました。→ 995b7a2
    • 拡張地上子スクリプトの実行順序が変わります。
  • 【破壊的変更】 TrainDrawer.OriginalMemberSet クラスを削除しました。→ e84dee1
    • BveTypeSet クラスと機能が重複していたためです。
  • (クラスラッパー)CarInfo を追加しました。→ 9eaf341
    • 動力車、付随車それぞれの質量、両数、慣性係数、制輪子の想定摩擦係数(ShoeFriction) を取得・変更できるようになりました。
    • Dynamics クラスから取得可能です。Dynamics は Scenario.Vehicle.Dynamics プロパティから取得可能です。
  • (クラスラッパー)SectionSectionManager を追加しました。→ 4fe519a
    • 各閉塞の位置、信号現示、定義されている信号現示インデックスの一覧、列車の在線状況を取得できるようになりました。
    • SectionManager は Scenario クラスから、Section の一覧は Route クラス、SectionManager クラスから取得可能です。Route は Scenario.Route プロパティから取得可能です。
  • (クラスラッパー)DrawDistanceManager を追加しました。→ ecf453a / 212e73a / 055ed96
    • マップファイル内での最長描画距離指定とユーザー設定の双方を加味した描画距離を取得できるようになりました。
    • 前方、後方それぞれの描画距離を分けて取得できるようになりました。
      • ユーザーが前方を向いているときと後方を向いているときで描画距離の設定が変動しています。
  • (クラスラッパー)Route クラスに GetTrackMatrix メソッドを追加しました。→ 165e4b6
    • 3D モデルを軌道上の指定した距離程に設置するためのワールド変換行列を求めるメソッドです。
  • その他、多数のクラスラッパーを追加しました。
  • Harmony のパッチ処理をオブジェクト指向的に扱えるようにするクラス ObjectiveHarmonyPatch を追加しました。→ d2fe5e2

マッププラグイン:他列車操作サンプル

  • 他列車が存在しないときのエラーを分かりやすくしました。→ 7a2776d

マッププラグイン:他列車操作サンプル EX

マッププラグイン:走行抵抗係数編集サンプル

  • 以前の更新でバージョンを上げ忘れていたため、バージョンを 0.15.20819.1 としました。→ 74f1dea

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 他列車操作サンプル EX
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.15.20819.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
AtsEX本体に加えて、車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.15.20819.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.14 - v0.14.20811.1

11 Aug 04:20
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.13(v0.13.20806.1)からの主な更新内容

AtsEX本体

  • 【重要】 AtsEx.dllが所定のディレクトリに配置されておらず、AtsEX本体が車両・マップに組み込まれていると思われる場合、警告が表示されるようになりました。→ 7a4a840
    • AtsEX本体を最新のバージョンに維持するため、車両・マップ毎に組み込むことは推奨されません。 AtsEX ATSプラグイン版をご利用の場合は1つのシナリオフォルダに1つのみ配置してください。正しい配置先は警告に記載されています。
  • 【破壊的変更】 将来的な拡張性を確保するため、プラグインのTickメソッドの戻り値の仕様を変更しました。→ 3bdf5cf
    • 戻り値がHandleCommandSetからTickResultに変更となりました。HandleCommandSetはTickResultのメンバーです。
  • 【破壊的変更】 IBveHackerを抽象クラスBveHackerに変更しました。→ f420d5e
  • 【破壊的変更】 IExtendedBeaconSetインターフェイスをExtendedBeaconSet抽象クラスに変更しました。→ e65d140
  • 【破壊的変更】 IAppのVehiclePluginsプロパティ、MapPluginsプロパティをPluginsプロパティに統合しました。→ f63b272
    • PluginType列挙型をベースにしたプラグインの管理をしやすくするためです。
  • 【破壊的変更】 IApp.AtsExAssemblyプロパティをAtsExCoreAssemblyに改名しました。→ 8ade400
    • 実際にはAtsEx.Coreが設定されており、名前と値が一致していなかったためです。
  • 【破壊的変更】 DiagramUpdaterをヘルパーからBveHackerの拡張メソッドに変更しました。→ 1e3d6dc
  • 【破壊的変更】 LoadErrorManagerをヘルパーからBveHackerのメンバーに変更しました。→ e525a70
  • 【破壊的変更】 PassedEventArgsのScriptVariableをVariableに改名しました。→ 69c9eb4
    • プラグインに紐づける変数の追加を見据えて、紛らわしくならないようにするためです。
  • 負の距離程に設置した拡張地上子は、シナリオ読込直後に実行されるようになりました。→ 41643e8
  • 拡張地上子からプラグインに紐づけた変数を作成できるようになりました。→ 5e7b393
    • 使用法、従来の「拡張地上子に紐づいた変数」との違いなどは拡張地上子スクリプトのサンプルに記載されています。
  • C#スクリプトのコンパイルエラーの詳細がBVEの読込中ダイアログに出力されるようになりました。→ 1ae74c6
  • IAppからAtsEx.dllのAssemblyを取得できるようになりました。→ a069098
  • IronPythonのスクリプトで戻り値を返せない不具合を修正しました。→ 3f605bd
    • 変数 __return__ に代入された値が戻り値として認識されます。
  • その他、軽微な不具合の修正、コードの改善等を行いました。

車両プラグイン:シンプルな ATS サンプル

  • 上記の変更に伴いコードを書き換えました。

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:他列車操作サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:走行抵抗係数編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:空の C# スクリプトプラグイン

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:空の IronPython プラグイン

  • 上記の変更に伴いコードを書き換えました。

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.14.20811.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
AtsEX本体に加えて、車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.14.20811.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.13 - v0.13.20806.1

06 Aug 14:28
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.12.2(v0.12.20804.1)からの主な更新内容

AtsEX本体

  • 【重要】 駅ジャンプ時にもScenarioCreatedイベントが発生し、駅ジャンプにかなり時間がかかってしまう不具合を修正しました。→ f9ab68b
  • 【重要】 自動更新機能を削除しました。→ 4402351
    • 更新の有無を確認し、新しいバージョンのAtsEXがリリースされている場合は通知するのみとなります。
  • 【破壊的変更】 ContextMenuHackerをヘルパーからBveHackerのメンバーに変更しました。→ 24d90d8
  • 【破壊的変更】 BveTypeSetをシングルトンからBveHackerのメンバーに変更しました。→ b8559f4
  • 【破壊的変更】 ProcessプロパティをBveHackerからAppに移動しました。→ 3558949
  • ハンドルで上限・下限値を超えるノッチを設定可能にするオプションを追加しました。→ 01f9703
  • AppにBveVersionプロパティを追加しました。→ 40e4251
  • F5キーで再読込をする度に同一の処理が何度も実行されるようになり、読込に時間がかかるようになる不具合を修正しました。→ 8528570 / 0a1894a
  • WrappedListのコンストラクタ2種類が動作しない不具合を修正しました。→ 8e30fb7
  • その他、将来的な新機能の実装のために、多くのコードを互換性を維持しながら改善しました。

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない
  • 2バージョン以上古い状態からの自動更新に失敗する可能性がある→ #9

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.13.20806.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.13.20806.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.12.2 - v0.12.20804.1

04 Aug 00:57
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.12.1(v0.12.20724.1)からの主な更新内容

AtsEX本体

  • マップファイルで通常のinclude構文(<MPIUSING>[NOMPI] ではないinclude構文)の読込に失敗する不具合を修正しました。→ b65eb01
  • 拡張地上子が先行列車の通過を検知しない不具合を修正しました。→ e530d6b
  • クラスラッパー Direct3DProvider を追加しました。→ 8be7b2b
    • DirectXの処理に必要不可欠な Device オブジェクトなどを取得できます。
  • BveHacker.Scenario プロパティの取得失敗時のエラーを分かりやすくしました。→ 70f73d1

beta0.11.2(v0.11.20703.3)からの主な更新内容

AtsEX本体

  • 【破壊的変更】 スクリプトプラグインへの対応のため、プラグイン読込処理を完全に作り直しました。これにより、以下の破壊的変更が生じています。→ 21ffd03
    • 車両・マッププラグインリストのフォーマットを変更しました。
      • 両リスト共通規格のXMLファイルとなりました。
    • PluginInfo を廃止しました。
      • 仕様変更により存在意義が無くなっていたためです。
      • これにより、App.VehiclePluginsApp.MapPlugins プロパティは List<PluginInfo> 型から List<PluginBase> 型に変更となりました。
  • 【破壊的変更】 通常のアセンブリによるプラグインのメインクラスが継承する型を PluginBase から AssemblyPluginBase に変更しました。→ 03e8ffb
    • プラグインの名前、バージョン等を読み込むロジックをスクリプトプラグインと作り分けられるようにするためです。
  • 【破壊的変更】 プラグインの Tick メソッドの戻り値でハンドル位置を指定できるようになりました。→ cc4f837 / 21135b8 / 967f3b8 / a489755 など
  • C#スクリプト、IronPythonでプラグインを開発できるようになりました。→ 3d79bc5 / 3d79bc5 など
  • 拡張地上子を実装しました。→ c98a15e など
  • 読み込まれた連続ストラクチャーを取得できるようになりました。→ ae644ae
  • 走行抵抗係数を取得・変更できるようになりました。→ 6c2e69e
  • AtsExの読込を Load 関数内ではなく SetVehicleSpec 関数内で行う仕様に変更しました。→ b3bc1fc
  • AtsEx.PluginHost.dllのXMLドキュメントを生成するようにしました。→ 1b88c79
    • プラグイン開発の際にメソッドなどのメンバーの説明・コード補完を利用できます。

サンプルシナリオ

  • 紛らわしいため、「自列車」の意味で Train と名付けていた部分を Vehicle に改名しました。→ 6c34094

車両プラグイン:シンプルな ATS サンプル

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:他列車操作サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:走行抵抗係数編集サンプル

  • 新規追加です。→ 3557883 / 9f5fded
  • C#スクリプトで記述されています。

マッププラグイン:空の C# スクリプトプラグイン

マッププラグイン:空の IronPython プラグイン

拡張地上子スクリプト

  • 拡張地上子実装にあわせて、サンプルのスクリプトを追加しました。→ 128e165

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない
  • 2バージョン以上古い状態からの自動更新に失敗する可能性がある→ #9

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.12.20804.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.12.20724.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。
SDKの内容はbeta0.12.1(v0.12.20724.1)と同じです。

解凍には7-zipなどの解凍ソフトが必要です。

beta0.12.1 - v0.12.20724.1

24 Jul 01:31
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.12(v0.12.20723.1)からの主な更新内容

AtsEX本体

  • インターネットに接続されていないと起動できない不具合を修正しました。→ caec19b

拡張地上子スクリプト(C#スクリプト)

  • 情報を正しく表示できていない不具合を修正しました。→ 37d2569

beta0.11.2(v0.11.20703.3)からの主な更新内容

AtsEX本体

  • 【破壊的変更】 スクリプトプラグインへの対応のため、プラグイン読込処理を完全に作り直しました。これにより、以下の破壊的変更が生じています。→ 21ffd03
    • 車両・マッププラグインリストのフォーマットを変更しました。
      • 両リスト共通規格のXMLファイルとなりました。
    • PluginInfo を廃止しました。
      • 仕様変更により存在意義が無くなっていたためです。
      • これにより、App.VehiclePluginsApp.MapPlugins プロパティは List<PluginInfo> 型から List<PluginBase> 型に変更となりました。
  • 【破壊的変更】 通常のアセンブリによるプラグインのメインクラスが継承する型を PluginBase から AssemblyPluginBase に変更しました。→ 03e8ffb
    • プラグインの名前、バージョン等を読み込むロジックをスクリプトプラグインと作り分けられるようにするためです。
  • 【破壊的変更】 プラグインの Tick メソッドの戻り値でハンドル位置を指定できるようになりました。→ cc4f837 / 21135b8 / 967f3b8 / a489755 など
  • C#スクリプト、IronPythonでプラグインを開発できるようになりました。→ 3d79bc5 / 3d79bc5 など
  • 拡張地上子を実装しました。→ c98a15e など
  • 読み込まれた連続ストラクチャーを取得できるようになりました。→ ae644ae
  • 走行抵抗係数を取得・変更できるようになりました。→ 6c2e69e
  • AtsExの読込を Load 関数内ではなく SetVehicleSpec 関数内で行う仕様に変更しました。→ b3bc1fc
  • AtsEx.PluginHost.dllのXMLドキュメントを生成するようにしました。→ 1b88c79
    • プラグイン開発の際にメソッドなどのメンバーの説明・コード補完を利用できます。

サンプルシナリオ

  • 紛らわしいため、「自列車」の意味で Train と名付けていた部分を Vehicle に改名しました。→ 6c34094

車両プラグイン:シンプルな ATS サンプル

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:他列車操作サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:走行抵抗係数編集サンプル

  • 新規追加です。→ 3557883 / 9f5fded
  • C#スクリプトで記述されています。

マッププラグイン:空の C# スクリプトプラグイン

マッププラグイン:空の IronPython プラグイン

拡張地上子スクリプト

  • 拡張地上子実装にあわせて、サンプルのスクリプトを追加しました。→ 128e165

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない
  • 2バージョン以上古い状態からの自動更新に失敗する可能性がある→ #9

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

AtsEX本体+サンプルシナリオ

下のAssetsより「AtsEX_v0.12.20724.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

AtsEX SDK

サンプルプラグインのソースコードのセットです。

下のAssetsより「AtsEX_v0.12.20724.1_SDK.7z」をダウンロード・解凍してください。
ビルドには別途AtsEX本体のダウンロードが必要です。

解凍には別途7-zipなどの解凍ソフトが必要です。

beta0.12 - v0.12.20723.1

24 Jul 01:00
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。頻繁に破壊的変更を行う可能性があるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.11.2(v0.11.20703.3)からの主な更新内容

AtsEX本体

  • 【破壊的変更】 スクリプトプラグインへの対応のため、プラグイン読込処理を完全に作り直しました。これにより、以下の破壊的変更が生じています。→ 21ffd03
    • 車両・マッププラグインリストのフォーマットを変更しました。
      • 両リスト共通規格のXMLファイルとなりました。
    • PluginInfo を廃止しました。
      • 仕様変更により存在意義が無くなっていたためです。
      • これにより、App.VehiclePluginsApp.MapPlugins プロパティは List<PluginInfo> 型から List<PluginBase> 型に変更となりました。
  • 【破壊的変更】 通常のアセンブリによるプラグインのメインクラスが継承する型を PluginBase から AssemblyPluginBase に変更しました。→ 03e8ffb
    • プラグインの名前、バージョン等を読み込むロジックをスクリプトプラグインと作り分けられるようにするためです。
  • 【破壊的変更】 プラグインの Tick メソッドの戻り値でハンドル位置を指定できるようになりました。→ cc4f837 / 21135b8 / 967f3b8 / a489755 など
  • C#スクリプト、IronPythonでプラグインを開発できるようになりました。→ 3d79bc5 / 3d79bc5 など
  • 拡張地上子を実装しました。→ c98a15e など
  • 読み込まれた連続ストラクチャーを取得できるようになりました。→ ae644ae
  • 走行抵抗係数を取得・変更できるようになりました。→ 6c2e69e
  • AtsExの読込を Load 関数内ではなく SetVehicleSpec 関数内で行う仕様に変更しました。→ b3bc1fc
  • AtsEx.PluginHost.dllのXMLドキュメントを生成するようにしました。→ 1b88c79
    • プラグイン開発の際にメソッドなどのメンバーの説明・コード補完を利用できます。

サンプルシナリオ

  • 紛らわしいため、「自列車」の意味で Train と名付けていた部分を Vehicle に改名しました。→ 6c34094

車両プラグイン:シンプルな ATS サンプル

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:他列車操作サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:走行抵抗係数編集サンプル

  • 新規追加です。→ 3557883 / 9f5fded
  • C#スクリプトで記述されています。

マッププラグイン:空の C# スクリプトプラグイン

マッププラグイン:空の IronPython プラグイン

拡張地上子スクリプト

  • 拡張地上子実装にあわせて、サンプルのスクリプトを追加しました。→ 128e165

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない
  • 2バージョン以上古い状態からの自動更新に失敗する可能性がある→ #9

サンプルプラグイン一覧

車両プラグイン

  • シンプルな ATS サンプル
  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル
  • 走行抵抗係数編集サンプル
  • 空の C# スクリプトプラグイン
  • 空の IronPython プラグイン

ダウンロード

下のAssetsより「AtsEX_v0.12.20723.1.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン・マッププラグインの動作を確認できるサンプルシナリオを同梱しています。

解凍には別途7-zipなどの解凍ソフトが必要です。

beta0.11.2 - v0.11.20703.3

03 Jul 14:37
Compare
Choose a tag to compare
Pre-release

本バージョンはβ版です。破壊的変更を行うこともあるので、まだ本番環境での採用は推奨しません。

AtsEXについての更に詳細な情報はこちら→ AtsEX ATSプラグイン拡張キット - 岡オカ営業所

beta0.11.1(v0.11.20703.2)からの主な更新内容

AtsEX本体

  • バージョンの更新忘れにより自動アップデートが暴発する不具合を修正しました。

beta0.10(v0.10.20520.1)からの主な更新内容

AtsEX本体

  • 【破壊的変更】 AtsEXの拡張機能を使用しないプラグインの開発に対応しました。→ 8272816 / 86b58b3 / 3e55c08
    • プラグイン内で「AtsEXの拡張機能を使用しない」ことを宣言すると、BveHacker から情報を取得できなくなる代わりに、AtsEXが未対応のバージョンのBVEで読み込んでもエラーが発生しなくなります。
    • 「拡張機能を使用しない」とは言っても、その他の基本的なAtsEXの機能はそのまま利用できます。
    • これに合わせて、AtsExPluginBase まわりにいくつかの破壊的変更を行っています。
  • 【破壊的変更】 ContectMenuHacker をシングルトンから通常のクラスに変更しました。→ ed5c07e
  • 【破壊的変更】 AtsEXプラグインのコンストラクタのパラメータを HostServiceCollection から AtsExPluginBuilder に置き換えました。→ d2d97c1
  • 【破壊的変更】 AtsEXプラグインの Tick メソッド(毎フレーム実行するメソッド。ネイティブなATSプラグインの Elapse 関数に相当)のパラメータに前フレームからの経過時間を表す TimeSpan を追加しました。→ bb8c135
  • 【破壊的変更】 ClassWrapperClassWrapperBase に改名しました。→ ba15062
  • 【破壊的変更】 VehicleSpecVehicleStateBveHacker から App に移動しました。→ 0ada92c
  • 【破壊的変更】 BveTypeCollection関連で長いクラス・メンバー名を変更しました。→ 1aabec5
  • その他いくつかの小規模な破壊的変更を行っています。
  • 他列車を操作できるようになりました。→ be53460 / 46213fe / f5766e1
  • ATSキーの入力情報が簡単に取得できるようになりました。→ 826689c / 2ba8864 / fe902b8 / aa6bc54 / bd9cb7a / 7969150 / 047af9e
  • エラーメッセージやその他の表示のローカライズ(多言語化)に対応しました。→ 9107544 / d3472e4
    • リソース(.resx 形式)で各言語のテキストを設定する形式ですので、ユーザーご自身で他の言語に対応したリソースを作成することができます。
    • 一部表示については英語版のリソースを作成しましたが、まだ英語未対応の表示もあります。また、その他の言語向けのリソースについては全く作成できていません。リソースを作成・プルリクエストして頂けると大変助かります。
  • BVE本体の設定を取得できるようになりました。→ bd9db0f
  • 同梱しているアセンブリ(DLL)等のファイル名をパスカルケースに統一しました。→ e920ec9
    • 例:atsex.pihost.dllAtsEx.PluginHost.dll

車両プラグイン:状態取得・設定サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:駅リスト編集サンプル

  • 上記の変更に伴いコードを書き換えました。

マッププラグイン:他列車操作サンプル

  • 新規追加です。

近日実装予定

正式版リリースまでに実装するもの

  • もう少しできることを充実させる(余裕があれば)
  • 従来のATSプラグインと同等の機能は少なくとも実装する
    • 運転台パネル関係→ #13
    • 電流、圧力関係
  • デバッグ

編集できるようにするもの(クラスラッパー)

  • サウンドの詳細を編集できるようにする
  • 車両のパラメータ類……VehicleParameterSetクラス他
    • ScenarioProvider.Vehicle.Parametersから

その他

  • クラスラッパーの無意味なsealed/protectedを変更する
  • クラスラッパーのMemberInfoを子クラスに移動する
  • アセンブリ名をアッパーキャメルケースに統一する

把握している不具合

  • ScenarioInfo.ScenarioFileLoadErrorsが実装ミスで動作しない
  • 2バージョン以上古い状態からの自動更新に失敗する可能性がある→ #9

サンプルプラグイン一覧

車両プラグイン

  • 状態取得・設定サンプル

マッププラグイン

  • 駅リスト編集サンプル
  • 他列車操作サンプル

ダウンロード

下のAssetsより「AtsEX_v0.11.20703.3.7z」をダウンロード・解凍し、シナリオフォルダに配置してください。
車両プラグイン「状態取得・設定サンプル」、マッププラグイン「駅リスト編集サンプル」の動作を確認することができます。

解凍には別途7-zipなどの解凍ソフトが必要です。