« トラコン謎仕様を解明する(2) 戻しノッチ | トップページ | VRM界隈Twitterまとめ[2015.12] »

京成AE100型もどきのトラコン遊び

先日自分で撒いたタネをネタとして自分で回収するアレ。

Train Simulator 京急・都営浅草・京急線に出てたので知ったのですが、先代の京成スカイライナー、AE100型にはちょっと変わった定速運転制御が搭載されているそうです。

_dsc0330

下手な写真ですが2010年11月撮影。この時既に後継の2代目AE型も走っていました。

こいつの定速制御は、25km/hのときにP5に入っていると定速スイッチがONになり、定速制御中はP4で速度キープ、P3でブレーキ(P5はふつうに加速)になります。P2以下に戻すと定速スイッチが切れます。

動作している様子はゲームのプレイ動画をご覧になるとよいでしょう。

で、こんな感じの仕様をVRMのトラコンを使ってマネしたものが、次のコードです。編成スクリプトにコピペするとそのまま動きます。

//
// Settings
//
SetNotch 5 8

SetNotchSpeed 1 1 15
SetNotchSpeed 2 25 43
SetNotchSpeed 3 33 68
SetNotchSpeed 4 40 85
SetNotchSpeed 5 55 120
SetNotchParam -1 25
SetNotchParam -2 25
SetNotchParam -3 25
SetNotchParam -4 25
SetNotchParam -5 25
SetNotchParam -6 25
SetNotchParam -7 25
SetNotchParam -8 100

SetInputMode 1

//
// Setup
//
// Var FlgActive		// Activeで1
Var VarCrtNotch
Var FlgConstCtrl		// 定速制御ONで1

Var EidNotchWatcher

Var EidFcsIn
Var EidFcsOut
SetEventFocusIn MtdFcsIn EidFcsIn
SetEventFocusOut MtdFcsOut EidFcsOut



BeginFunc MtdFcsIn
	SetEventFrameTick this MtdNotchWatcher EidNotchWatcher
EndFunc

BeginFunc MtdFcsOut
	KillEvent EidNotchWatcher
EndFunc

BeginFunc MtdNotchWatcher
	Var a
	GetInputMode a
	if a
		GetCurrentNotch VarCrtNotch
		if> VarCrtNotch 0
			Var crtspd
			GetNotchSpeed VarCrtNotch crtspd a	// 定格は仮
			GetCurrentSpeed crtspd
			ifeq VarCrtNotch 5
				if>= crtspd 25.0
					set FlgConstCtrl 1
					SetNotchParam 4 1
					SetNotchParam 3 50
					SetNotchSpeed 3 24 25
				endif
				SetNotchParam 5 100
			else
				if<= VarCrtNotch 2
					set FlgConstCtrl 0
					SetNotchSpeed 3 33 68	// Settingsのところと同じ値!
				endif
				ifzero FlgConstCtrl
					if> crtspd a	// 現在速度>均衡速度
						SetNotchParam VarCrtNotch 6
					else
						// call this MtdSetAccPrm
						set a 500					// 500なのは、最大5ノッチだから
						div a VarCrtNotch
						SetNotchParam VarCrtNotch a
					endif
				endif
			endif
		endif
		// DEBUG
		DrawVar VarCrtNotch
		GetNotchParam VarCrtNotch a
		DrawVar a
		if FlgConstCtrl
			DrawMessage "定速制御ON"
		else
			DrawMessage "定速制御OFF"
		endif
		DrawMessage ""
	endif
EndFunc

定速制御時のP3ノッチの動作は、減速しすぎる戻しノッチを逆手に取ったかたちです。P4(速度キープ)は、NotchParamを1にしてしまってほとんど速度が動かないように見せかけています。

:;;;:+*+:;;;:+*+:;;;:+*+:;;;:+*+:;;;:+*+

ちなみに本ブログのVRMスクリプトの表示ですが、IEだとインデントが深すぎて見にくいと思います。ChromeかFirefoxでごらんください。

|

« トラコン謎仕様を解明する(2) 戻しノッチ | トップページ | VRM界隈Twitterまとめ[2015.12] »

VRM:研究」カテゴリの記事

コメント

この記事へのコメントは終了しました。

トラックバック


この記事へのトラックバック一覧です: 京成AE100型もどきのトラコン遊び:

« トラコン謎仕様を解明する(2) 戻しノッチ | トップページ | VRM界隈Twitterまとめ[2015.12] »