;----------------------------------------------------------------- ; Preliminary note: ; ----------------- ; All music, sounds and commands are TEMPORARY just for one scenario. ; ; Note: ; -All commands must be inside a scenario between "BEGIN_OrbiterSound" and "END" tag. ; -Up to 200 commands are allowed. ; -Timed commands are sorted by time, no need to write them in exact sequence, this is VERY usefull to group long sections of commands (by vessel, by type etc). ; -Time command ("T:") can be float (for example "T:5.5" is 5500 milliseconds). ; -Time command ("T:") can be relative to the previous command's time (for example "T:+4"). ; -Time <3 seconds is not recommended as Orbiter takes time to load everything. ; -If something doesn't work, check for "ERROR" in the OrbiterSound_log.txt. ; -All your sounds must be in your "Sound\_CustomScenarioSounds\***" directory. ; -You can add comments or deactivate a command with the ";" keyword. ;----------------------------------------------------------------- ;----------------------------------------------------------------- ; IMPORTANT: ; --------- ; This should come first before any other sound command! ; Its your addon's music and sound folder located ; in "Sound\_CustomScenarioSound\" (Example: "Sound\_CustomScenarioSound\OrbiterSoundDemo") ; Of course if you don't use any sounds, this is not mandatory. ; ;SCENARIOSOUNDFOLDER OrbiterSoundDemo ;----------------------------------------------------------------- ; Mute the music. If you use ADDTOPLAYLIST or INSERTTOPLAYLIST below this command ; is ignored. ; ;MUTEMUSIC ;----------------------------------------------------------------- ; Mute the VHF radio (radio chatter) ; ;MUTEVHFRADIO ;----------------------------------------------------------------- ; Immediate check for OrbiterSound Update (See demo scenario "OrbiterSound update check") ; ;CHECKORBITERSOUNDUPDATE ;----------------------------------------------------------------- ; Offset commands time ; ; This may be useful when you write a very long sequence and want to insert, offset or ; delete a sequence without modifying every command's time. ; ; Note: Every command >that follows this one in the script< will have their time modified ; by the amount set. When you offset a sequence, don't forget to reset the offset to "0" ; after the sequence. ; ; OffsetTime:# = offset time positive or negative in seconds. (valid range: -600 to +600) ; ;OFFSETCOMMANDSTIME OffsetTime:21 ;OFFSETCOMMANDSTIME OffsetTime:-5 ;OFFSETCOMMANDSTIME OffsetTime:0 ;----------------------------------------------------------------- ; Play Timed sound One ; ; Note: ; -Two playsound streams can play in same time, see PLAYSOUND_TWO. ; This allow you to play for example a complete launch sound in exterior view and another for interior. ; -You can have up to 200 commands in the format "PLAYSOUND_*", so you can also comment a replay flight or anything you can imagine. ; -External Sound volume is NOT controlled by distance and pressure. ; -Only mp3 or ogg format files will play with this command. ; -Time < 3 seconds is not recommended as Orbiter takes time to load everything. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; V:# = volume from 0 to 255 ; View:# COCKPIT or EXTERNAL or BOTH ; Name:# filename of the sound (mp3 or ogg) ; ;PLAYSOUND_ONE T:3 V:255 View:COCKPIT Name:playsoundOneCockpit.ogg ;----------------------------------------------------------------- ; Play Timed sound Two (Same as above but for sound TWO) ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; V:# = volume from 0 to 255 ; View:# COCKPIT or EXTERNAL or BOTH ; Name:# filename of the sound (mp3 or ogg) ; ;PLAYSOUND_TWO T:3 V:255 View:COCKPIT Name:playsoundTwoExternal.ogg ;----------------------------------------------------------------- ; Change the volume of the sound One ; ; It may be useful to change the volume of a long sound when you change the camera view. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; V:# = volume from 0 to 255 ; ;VOLUMESOUND_ONE T:3 V:255 ;----------------------------------------------------------------- ; Change the volume of the sound two ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; V:# = volume from 0 to 255 ; ;VOLUMESOUND_TWO T:3 V:125 ;----------------------------------------------------------------- ; Add a music file to the playlist. ; ; This command REPLACES the user's playlist with your songs. ; This new custom playlist will play in sequence from simulation start one song after another. ; Your songs must be in your scenario's sounds folder. ; ; V:# = volume from 0 to 255 ; View:# COCKPIT or EXTERNAL or BOTH ; Name:# filename of the sound (mp3 or ogg) ; ;ADDTOPLAYLIST V:255 View:COCKPIT Name:RockInsideTheClock.mp3 ;ADDTOPLAYLIST V:255 View:BOTH Name:CrimsonTideMutiny.mp3 ;----------------------------------------------------------------- ; Force Current Active Music and settings (not recommended) ; ; OrbiterSound usually remember the last song played by the user and the last 'Volume' and 'Mode' set by the MFD. ; This command will force the users's Mode, Volume and current song. ; Note: ; This command is very agressive because it change the user's setting. It was done only ; for the purpose of the scenario "How to use MFD" but may annoy the user if you use it often. ; The song must be in Mp3 directory, if the user erases the song, this command will be ignored. ; For a demo of this parameter see the demo scenario "How to use MFD". ; ; V:# = volume from 0 to 255 ; View:# COCKPIT or EXTERNAL or BOTH ; Name:# filename of the sound (mp3 or ogg) ; ;FORCECURRENTACTIVEMUSIC V:255 View:BOTH Name:RockInsideTheClock.mp3 ;----------------------------------------------------------------- ; Engage Main engine ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Power:#% = engine power from 0% to 100% ; Vessel:# = Name of the vessel ; ;MAINENGINEPOWER T:35 Power:100% Vessel:GL-02 ;----------------------------------------------------------------- ; Engage Hover engine ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Power:#% = engine power from 0% to 100% ; Vessel:# = Name of the vessel ; ;HOVERENGINEPOWER T:25 Power:75% Vessel:GL-02 ;----------------------------------------------------------------- ; Engage Retro engine ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Power:#% = engine power from 0% to 100% ; Vessel:# = Name of the vessel ; ;RETROENGINEPOWER T:25 Power:25% Vessel:GL-01S ;----------------------------------------------------------------- ; Engage RCS thruster ; ; Note: to stop an RCS send the same command with Power:0% or with "Type:ATT_STOPALL" ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Power:#% = RCS engine power from 0% to 100% ; Type:# = one thruster group below ; ATT_STOPALL < stop all rcs ; ATT_PITCHUP < rotation: pitch up ; ATT_PITCHDOWN < rotation: pitch down ; ATT_YAWLEFT < rotation: yaw left ; ATT_YAWRIGHT < rotation: yaw right ; ATT_BANKLEFT < rotation: bank left ; ATT_BANKRIGHT < rotation: bank right ; ATT_RIGHT < translation: move right ; ATT_LEFT < translation: move left ; ATT_UP < translation: move up ; ATT_DOWN < translation: move down ; ATT_FORWARD < translation: move forward ; ATT_BACK < translation: move back ; Vessel:# = Name of the vessel ; ;RCSENGINEPOWER T:25 Type:ATT_PITCHUP Power:100% Vessel:GL-02 ;RCSENGINEPOWER T:27 Type:ATT_PITCHUP Power:0% Vessel:GL-02 ;----------------------------------------------------------------- ; Set control surface ; ; Note: The control surface will stay in position unless there is a user input or you set it back to 0%. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Position:#% = Surface position from -100% to 100% (neutral 0%) ; Type:# = one control surface below ; AIRCTRL_ELEVATOR, ///< elevator control (pitch control) ; AIRCTRL_RUDDER, ///< rudder control (yaw control) ; AIRCTRL_AILERON, ///< aileron control (bank control) ; AIRCTRL_FLAP, ///< flaps (lift, drag control) ; AIRCTRL_ELEVATORTRIM, ///< elevator trim ; AIRCTRL_RUDDERTRIM ///< rudder trim ; Vessel:# = Name of the vessel ; ;SETCONTROLSURFACE T:25 Type:AIRCTRL_ELEVATOR Position:-50% Vessel:GL-02 ;SETCONTROLSURFACE T:27 Type:AIRCTRL_RUDDER Position:0% Vessel:GL-02 ;----------------------------------------------------------------- ; Set vessel fuel ; ; Note: to find the fuel text "PRPLEVEL", edit the fuel with Orbiter's Scenario editor, quit ; open the Scenarios/(Current state).scn and copy the PRPLEVEL line listed in the right vessel section. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; PRPLEVEL # = text value of fuel level as reported in the scenario file ; Vessel:# = Name of the vessel ; ;SETVESSELFUEL T:10 PRPLEVEL 0:1.000000 Vessel:STS-101 ;SETVESSELFUEL T:25 PRPLEVEL 0:0.130000 1:0.050000 2:0.100000 Vessel:GL-02S ;----------------------------------------------------------------- ; Engage an Orbiter Autopilot ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Status:# = ON or OFF ; Type:# = KILLROT, HLEVEL, PROGRADE, RETROGRADE, NORMAL, ANTINORMAL or HOLDALT ; Vessel:# = Name of the vessel ; ;SETAUTOPILOT T:10 Status:ON Type:HLEVEL Vessel:PB-01 ;----------------------------------------------------------------- ; Send a keypress to a MFD ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Mfd:# = LEFT or RIGHT or MFD_USER1 to MFD_USER9 ; Key:# = A key identifier as defined in Orbitersdk\doc\API_Reference.pdf (page 227 or search for "OAPI_KEY_1") ; ;SENDMFDKEY T:31 Mfd:LEFT Key:OAPI_KEY_L ;SENDMFDKEY T:54 Mfd:MFD_USER4 Key:OAPI_KEY_N ;----------------------------------------------------------------- ; Send a keypress to a Vessel ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Key:# = A key identifier as defined in Orbitersdk\doc\API_Reference.pdf (page 227 or search for "OAPI_KEY_1") ; for shift and control key, see example below. ; Vessel:# = Name of the vessel ; ;SENDVESSELKEY T:31 Key:OAPI_KEY_G Vessel:PB-01 ;SENDVESSELKEY T:35 Key:OAPI_KEY_LSHIFT+OAPI_KEY_G Vessel:GL01-S ;SENDVESSELKEY T:+4 Key:OAPI_KEY_LCONTROL+OAPI_KEY_G Vessel:GL02 ;----------------------------------------------------------------- ; Switch Camera view ; ; Note: To find _EXTERNAL view POS parameter, simply launch a scenario, set the desired track view, quit, ; open the Scenarios/(Current state).scn and copy the POS numbers listed in BEGIN_CAMERA. ; By default, the first number is distance in meters, the second horizontal angle from -180 to +180 and the last the vertical angle. ; ; To find _GROUND view GROUNDLOCATION parameter, simply launch a scenario, set the desired ground camera, quit, ; open the Scenarios/(Current state).scn and copy the GROUNDLOCATION numbers listed in BEGIN_CAMERA. ; By default, the first number is longitude, the second latitude and the last, the altitude over ground. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Fov:# - Camera Field Of View from 20 to 90 ; Target:# - optional for EXTERNAL and GROUND only, the name of the vessel to target (can be different than the focus vessel). ; ;SWITCHCAMERA_COCKPIT T:31 Fov:50 ;SWITCHCAMERA_EXTERNAL T:35 Fov:50 POS 3.657627 0.000000 -20.467185 ;SWITCHCAMERA_GROUND T:+4 Fov:50 GROUNDLOCATION -80.61481 28.62108 27.89 ;SWITCHCAMERA_GROUND T:+4 Fov:50 GROUNDLOCATION -80.61481 28.62108 27.89 Target:GL02 ;----------------------------------------------------------------- ; Rotate the camera around ship in external view ; ; Note: This command will slowly rotate the camera around the ship in the external (track) view. ; Any mouse movement or view change from the user will cancel this effect. ; For a demo of this parameter, see the demo scenario "How to use MFD". ; To stop the rotation, call this function again with RotX and RotY parameters to 0. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; RotX:# = Horizontal (azimuth) speed in degrees per minute (-1400 to 1400) ; RotY:# = Vertical (orbital) speed in degrees per minute (-1400 to 1400) ; Acc:# = Acceleration (1 to 400, 1=ultra slow, 100=normal, 400=very fast) ; ;ROTATECAMERA T:1 RotX:90 RotY:20 Acc:40 ;----------------------------------------------------------------- ; Disable vessel focus capabilities for the user ; ; Note: for a sort of "AI" vessel, you may want to forbid focus capabilities so user cannot take control ; of the vessel and spoil the simulation. Also the ship selection windows will not be populated with a lot of "unflyable" vessels. ; You can enable focus again with the command "ENABLEVESSELFOCUS", see examples. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Vessel:# = Name of the vessel ; ;DISABLEVESSELFOCUS T:0 Vessel:PB-01 ;ENABLEVESSELFOCUS T:10 Vessel:PB-01 ;----------------------------------------------------------------- ; Switches the input focus to a different vessel. ; ; Note: only the focus vessel produces sound. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Vessel:# = Name of the vessel that receive the input ; ;SETFOCUSVESSEL T:80 Vessel:PB-01 ;----------------------------------------------------------------- ; Delete one Vessel ; ; Note: This allows you to delete an "AI" vessel that has finished its show. ; Be CAUTIOUS with this command, if another third party addon or MFD ; doesn't manage the vessel deletion correctly (check for the validity of handle), Orbiter may crash. ; This is rare but it may happen with some addons. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Vessel:# = Name of the vessel ; ;DELETEVESSEL T:80 Vessel:PB-01 ;----------------------------------------------------------------- ; Set the time acceleration ; ; Note: Take care with this function, at very high time acceleration with low framerate you may have image update delays ; of several tenths of a second and timed commands may be delayed. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; TimeAcc:# = Time acceleration from 1x to 1000x ; ;SETTIMEACCELERATION T:10 TimeAcc:10x ;SETTIMEACCELERATION T:25 TimeAcc:1x ;----------------------------------------------------------------- ; Display one line of debug text at the bottom of screen ; ; This can help you to debug your scenario. The message is permanent, ; if you want to switch it off, call the command without any text. ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Text:# = Text to display ; ;DISPLAYDEBUGTEXT T:10 Text:Hello World ;DISPLAYDEBUGTEXT T:25 Text: ;----------------------------------------------------------------- ; Display Annotation on screen ; ; This give you access to the annotation system of Orbiter (see Orbiter's "API_Reference.pdf") ; If you want to switch an annotation off, call the command with an empty Text parameter. ; ; "Color", "FontSize" and "ScreenRectangle" are optionnal, you just need to define them the first time ; else a default will be used (orange, default font size "1", and full screen "0 0 1 1" ) ; ; T:# = time in seconds since start of simulation OR "+" for offset since last command (eg: "T:+4" ) ; Color:# = RGB from 0 to 1 (float, optionnal). ; FontSize:# font size in relative units >0 (float default 1, optionnal). ; ScreenRectangle:#= xleft ytop xright ybottom (float from 0 to 1, optionnal) ; Text:# = Text to display (max 255 char). For multi-lines, see example below. ; ;DISPLAYANNOTATION T:2 Color:1 0.6 0.2 FontSize:1.2 ScreenRectangle:0.3 0.1 0.8 1 Text:Hello World ;DISPLAYANNOTATION T:4 Text:Hello World (again) ;DISPLAYANNOTATION T:6 Text:This is line 1\nThis is line 2\nThis is line 3 ;DISPLAYANNOTATION T:8 Color:0 0 1 Text:Blue Hello World ;DISPLAYANNOTATION T:10 FontSize:0.8 Text:Small Hello World ;DISPLAYANNOTATION T:12 Text: