-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathconfig.txt
216 lines (170 loc) · 10.6 KB
/
config.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
@name OpenControl/config
@inputs
@outputs [CONFIGURATION_DATA]:array [CONFIGURATION_CONTROL_DATA CONFIGURATION_ROUTING_DATA]:table
@persist ReverserF ReverserB IncreaseThrottle DecreaseThrottle IncreaseDynamics DecreaseDynamics IncreaseTrainBrake DecreaseTrainBrake IncreaseLocoBrake DecreaseLocoBrake SelectorUp SelectorDown
@persist HandBrake Sander Routing:table
@trigger none
@model
Controls = table()
if(dupefinished() | duped()){ reset() }
if(first()){
# --// Control Stand //--
#Reverser
ReverserFS = "opencontrol/reverser_fwd-rev.wav"
ReverserNS = "opencontrol/reverser_cen.wav"
ReverserRS = "opencontrol/reverser_fwd-rev.wav"
#Throttle (Notch)
ThrottleAdvance = "titus's locomotive sound expansion pack/resources/gp38-2/cab/controls/throttle/clicks/s_gp38-2throttlea08.wav"
ThrottleRetreat = "titus's locomotive sound expansion pack/resources/gp38-2/cab/controls/throttle/clicks/s_gp38-2throttlea05.wav"
#Dynamic (DynoNotch)
DynamicThrottleAdvance = "titus's locomotive sound expansion pack/resources/gp38-2/cab/controls/throttle/clicks/s_gp38-2throttlea08.wav"
DynamicThrottleRetreat = "titus's locomotive sound expansion pack/resources/gp38-2/cab/controls/throttle/clicks/s_gp38-2throttlea05.wav"
#Transition Lever
TransitionFS = "_jazzlok/switches/selector_action.wav"
TransitionNS = "_jazzlok/switches/regulator_notch.wav"
TransitionRS = "_jazzlok/switches/selector_action.wav"
# --// Air Brakes //--
#Air Compressor
Compressor_CFM = 254
MainReservoirVolume = 28.4
FeedPressure = 90 #Max Pressure for the BP/EQ
MainReservoirPressure = 140 #Max Pressure for the MR
MainReservoirRechragePressure = 130 #Min Pressure for the MR (This is the pressure that once it drops down it will rechrage from, ex, <130 = recharge to 140.)
CompressorStart = "opencontrol/compressors/wbo/wbo9_loop.wav"
CompressorShutdown = "opencontrol/compressors/wbo/wbo2_end.wav"
#Automatic Brake Type
AutomaticBrakeType = 0
#0 = Westinghouse 26L
#1 = Westinghouse 26C
#2 = Westinghouse No. 6
#Automatic Air Brake
AutomaticApply = ""
AutomaticRelease = ""
AutomaticEmergency = "opencontrol/airbrakes/26l/emergency_apply.wav"
AutomaticEmergencyRelease = "opencontrol/airbrakes/26l/emergency_release.wav"
#Independent Brake Type
IndependentBrakeType = 0
#0 = Westinghouse SA26
#1 = Westinghouse S40F
#Independent Air Brake
IndependentApply = ""
IndependentRelease = "opencontrol/airbrakes/sa26/release.wav"
IndependentBailOn = "opencontrol/airbrakes/sa26/bail_off2.wav"
IndependentBailOff = ""
# --// Locomotive Settings //--
# NOTE: For engine sounds, they are configured in the Engine Sound Processor.
Prime = "gsgtrainsounds/emd645f3bv16/prime_loop.wav"
PrimeEnd = "gsgtrainsounds/emd645f3bv16/prime_end.wav"
PrimerDuration = randint(2,8)
StartupClagDelay = 2 #Time required to hold starter for engine to turn on successfully
StartupClagDuration = 1 #Duration for starter smoke
TractionMotor = "gsgtrainsounds/wheels/delco_d77.wav"
RadiatorFanStart = "gsgtrainsounds/misc/delco_radfan_loop.wav"
RadiatorFanEnd = "gsgtrainsounds/misc/delco_radfan_end.wav"
DynamicFanStart = "gsgtrainsounds/misc/delco_dynfan_loop.wav"
DynamicFanEnd = "gsgtrainsounds/misc/delco_dynfan_end.wav"
BrakeSqueal = "gsgtrainsounds/wheels/brake_3_loud.wav"
RollSoundWelded = "gsgtrainsounds/misc/wheels_welded.wav"
RollSoundJointed = "gsgtrainsounds/misc/wheels_jointed.wav"
WheelSlipLoop = "gsgtrainsounds/wheels/wheelslip_loop.wav"
WheelSlipEnd = "gsgtrainsounds/wheels/wheelslip_end.wav"
SandOn = "opencontrol/sanders/sw8_sander_loop.wav"
SandOff = "opencontrol/sanders/sw8_sander_end.wav"
AlarmBellStart = "gsgtrainsounds/misc/alarmbell_loop.wav"
AlarmBellEnd = "gsgtrainsounds/misc/alarmbell_end.wav"
LocomotiveType = 0
#0 = Locomotive
#1 = Slug (No Prime Mover, has Traction Motors)
#2 = Snail (No Traction Motors, has Prime Mover)
#3 = Cab Car/Control Cab (No Traction Motors or Prime Mover)
MaxGeneratorCurrent = 3000
Motors = 6 #How many Traction Motors do you have?
Axles = 6 #How many Axles do you have?
TransitionGroups = array(2, 2, 1, 1) #The number of motors in series for each transition notch. Note that this number must divide into the number of motors evenly!
TransitionShunts = array(1, 0.93, 0.86, 0.72) #The ratio of current going through the field windings for each transition notch, as a fraction of the total load current.
# NOTE: OpenControl runs on "4 Position" Transition Locomotives. If your TransitionGroups or TransitionShunts have more than 4 values they WILL NOT be used. (As of Oct 2020)
SelectorLever = 1 #Does it have a Selector Lever? See Below...
TransitionMode = 0 #Transition Modes
#0 = Manaul (The user selects what Transition they would like to be in. Seen in most Older Locomotives)
#1 = Automatic with Selector Lever (Early Automatic Transition. Either "OFF", "ON" or "BRAKING" positons)
#2 = Fully Automatic Transition (Late Automatic Transition. Seen in most Dash 2 EMDs and alike. Pretty much any Locomotive that is semi-modern)
LoadRampSpeed = 15 #How fast the engine loads when increasing power. 10 is sluggish, 30 is quick. // You should leave this at 15. //
LowSpeedRamp = 1 #This enables if you want the amps to go up very slowly in Notch 1 at low speed, this is to simulate starting torque. Leave this on if you are unsure.
LSX = 0 #Low Speed Excitation. Use this for limiting the starting power on High Power to Weight Locomotives. Applies from 0-15 MPH, will limit your power output as you speed up you gain more.
# Note that this is a multiplication valve.
MaxTractionMotorCurrent = 1500
MaxContinuousTractionMotorCurrent = 1000
TractionMotorType = 0 #0 for DC, 1 for AC
DynamicMode = 2
#0 = No Dynamic Brakes
#1 = Dynamic Brakes with Mechanically-Driven Traction Motor Blowers
#2 = Dynamic Brakes with Electrically-Driven Traction Motor Blowers
MaxDynamicCurrent = 700
MaxContinuousDynamicCurrent = 700
BlendedBraking = 0 #Modern Passenger Thing, turns on dynamic brakes when air brake application is made.
EngineIdleRPM = 200 #Engine IDLE Rpm - (leave as default if you dont know)
EngineRedlineRPM = 950 #Engine REDLINE (max) Rpm - (leave as default if you dont know)
NumNotches = 8 #Number of Notchs your control stand has. For US equipment this is (mostly) 8.
DPM = 0 #Dual Prime Movers. Set to 1 if your locomotive has two engines (Like a DDA40X, E unit, or GE 45 Tonner).
DPM_Delay = 0
HEP = 0 #Head-End Power. Set to 1 if your locomotive is equipped with integrated HEP (like an F40PH or P42DC).
HEP_Subtract = 0 #The Amount of Horsepower to subtract when in HEP mode. GE locomotives use 200, EMD locomotives usually use 700.
HEPTYPE = 0 #0 for 4-8 HEP (Traditional), 1 for 2-4 HEP (For Modern, High-Horsepower Passenger Units like the GE Genesis series).
StarterMode = 0
#0 = Manual Primer, Manual Start
#1 = Latched Primer, Manual Start
#2 = Fully Automatic Start
Horsepower = 2500 #Locomotive Horsepower
Weight = 244800 #Locomotive Weight (in LB)
BaseSpeed = 71 #The top speed that's considered "normal" for this locomotive.
TopSpeed = 71 #Top Speed, in Miles per Hour, that the locomotive is capable of reaching due to the gearing. If you don't know, put 65.
ClaspBrakes = 1 #Set to 1 if you have trucks fitted with Double Clasp or Triple Clasp brake cylinders.
# --// Controls //--
Shift = "lshift" #When pressing this key, all controls with "+Shift" next to them will be triggered, and all the other will be ignored.
Controls["ReverserF",string] = "W"
Controls["ReverserB",string] = "S"
Controls["IncreaseThrottle",string] = "D"
Controls["DecreaseThrottle",string] = "A"
Controls["IncreaseDynamics",string] = ""
Controls["DecreaseDynamics",string] = ""
Controls["SelectorUp",string] = "right"
Controls["SelectorDown",string] = "left"
Controls["IncreaseTrainBrake",string] = "W +Shift"
Controls["DecreaseTrainBrake",string] = "S +Shift"
Controls["IncreaseLocoBrake",string] = "rbracket"
Controls["DecreaseLocoBrake",string] = "lbracket"
Controls["BailLocoBrake",string] = "slash"
Controls["HandBrake",string] = "H"
Controls["Sander",string] = "period"
Controls["UseButton",string] = "mouse_left"
Controls["EmergBrake",string] = "rshift"
# --- END OF CONFIG ---
foreach(K,V:string = Controls){
if(V:find(" +Shift")){
Routing[K,number] = 1
local EXP = V:explode(" ")
Controls[K,string] = EXP[1,string]
}
else{
Routing[K,number] = 0
}
}
TransitionGroups1 = TransitionGroups[1,number]
TransitionGroups2 = TransitionGroups[2,number]
TransitionGroups3 = TransitionGroups[3,number]
TransitionGroups4 = TransitionGroups[4,number]
TransitionShunts1 = TransitionShunts[1,number]
TransitionShunts2 = TransitionShunts[2,number]
TransitionShunts3 = TransitionShunts[3,number]
TransitionShunts4 = TransitionShunts[4,number]
}
CONFIGURATION_DATA = array(Shift,SelectorLever,ReverserFS,ReverserNS,ReverserRS,ThrottleAdvance,ThrottleRetreat,DynamicThrottleAdvance,DynamicThrottleRetreat,Compressor_CFM,MainReservoirVolume, #11
CompressorStart,CompressorShutdown,AutomaticApply,AutomaticRelease,AutomaticEmergency,AutomaticEmergencyRelease,IndependentApply,IndependentRelease,IndependentBailOn,IndependentBailOff, #21
AutomaticBrakeType,IndependentBrakeType,TractionMotor,RadiatorFanStart,RadiatorFanEnd,DynamicFanStart,DynamicFanEnd,BrakeSqueal,RollSoundWelded,RollSoundJointed,AlarmBellStart, #32
MaxGeneratorCurrent,Motors,Axles,MaxTractionMotorCurrent,MaxContinuousTractionMotorCurrent,TractionMotorType,MaxDynamicCurrent,MaxContinuousDynamicCurrent,EngineIdleRPM, #41
EngineRedlineRPM,NumNotches,Horsepower,Weight,BaseSpeed,TopSpeed,ClaspBrakes,AlarmBellEnd,TransitionFS,TransitionNS,TransitionRS,FeedPressure,MainReservoirPressure,MainReservoirRechragePressure, #55
WheelSlipLoop,WheelSlipEnd,LocomotiveType,DPM,HEP,HEP_Subtract,HEPTYPE,StarterMode,Prime,PrimeEnd,StartupClagDelay,StartupClagDuration,PrimerDuration,DPM_Delay,TransitionGroups1, #70
TransitionGroups2,TransitionGroups3,TransitionGroups4,TransitionShunts1,TransitionShunts2,TransitionShunts3,TransitionShunts4,DynamicMode,LoadRampSpeed,LowSpeedRamp,BlendedBraking,TransitionMode, #82
SandOn,SandOff,LSX)
CONFIGURATION_CONTROL_DATA = Controls
CONFIGURATION_ROUTING_DATA = Routing