Template:PatchDiff/May 08, 2012 Patch/portal2 dlc2/scripts/sound operator stacks.txt

N/A 1 "start_stacks"  N/A 2 {   N/A 3        "DLC2_select_music_entry_start" //replaces null.wav   N/A 4        {   N/A 5                "random_variation_picker" //use for random volume if needed   N/A 6                 {   N/A 7                         "operator" "math_random"   N/A 8                         "execute_once" "true"   N/A 9                         "input_execute" "1.0"   N/A 10                         "input_min" "1.0" //low value here   N/A 11                        "input_max" "6.0"        //high value here. N/A 12                       "round_to_int" "true"   N/A 13                 }   N/A 14                "get_ctc_music_index_opvar"   N/A 15                {   N/A 16                        "operator" "get_opvar_float"   N/A 17                        "opvar" "ctc_music_index"   N/A 18                }   N/A 19                "switch_random_or_selection"   N/A 20                {   N/A 21                        "operator" "math_logic_switch"   N/A 22                        "input1" "@random_variation_picker.output"   N/A 23                        "input2" "@get_ctc_music_index_opvar.output"   N/A 24                        "input_switch" "@get_ctc_music_index_opvar.output_opvar_exists"   N/A 25                }   N/A 26    N/A 27    N/A 28                "compare_1"   N/A 29                {   N/A 30                        "operator" "math_float"   N/A 31                        "apply" "equals"   N/A 32                        "input_execute"        "1.0"                          N/A 33                        "input1" "@switch_random_or_selection.output"   N/A 34                        "input2" "1.0"   N/A 35                }                  N/A 36    N/A 37                "compare_2"   N/A 38                {   N/A 39                        "operator" "math_float"   N/A 40                        "apply" "equals"          N/A 41                         "input_execute" "1.0"   N/A 42                        "input1" "@switch_random_or_selection.output"   N/A 43                        "input2" "2.0"   N/A 44                }          N/A 45    N/A 46                "compare_3"   N/A 47                {   N/A 48                        "operator" "math_float"   N/A 49                        "apply" "equals"          N/A 50                         "input_execute" "1.0"   N/A 51                        "input1" "@switch_random_or_selection.output"   N/A 52                        "input2" "3.0"   N/A 53                }          N/A 54    N/A 55                "compare_4"   N/A 56                {   N/A 57                        "operator" "math_float"   N/A 58                        "apply" "equals"          N/A 59                         "input_execute" "1.0"   N/A 60                        "input1" "@switch_random_or_selection.output"   N/A 61                        "input2" "4.0"   N/A 62                }          N/A 63    N/A 64                "compare_5"   N/A 65                {   N/A 66                        "operator" "math_float"   N/A 67                        "apply" "equals"          N/A 68                         "input_execute" "1.0"   N/A 69                        "input1" "@switch_random_or_selection.output"   N/A 70                        "input2" "5.0"   N/A 71                }   N/A 72    N/A 73                "compare_6"   N/A 74                {   N/A 75                        "operator" "math_float"   N/A 76                        "apply" "equals"          N/A 77                         "input_execute" "1.0"   N/A 78                        "input1" "@switch_random_or_selection.output"   N/A 79                        "input2" "6.0"   N/A 80                }   N/A 81                "compare_7"   N/A 82                {   N/A 83                        "operator" "math_float"   N/A 84                        "apply" "equals"          N/A 85                         "input_execute" "1.0"   N/A 86                        "input1" "@switch_random_or_selection.output"   N/A 87                        "input2" "7.0"   N/A 88                }   N/A 89    N/A 90                "play_variation_1"   N/A 91                {   N/A 92                        "operator" "sys_start_entry"   N/A 93                        "execute_once" "true"   N/A 94                        "input_execute"        "@compare_1.output"   N/A 95                        "input_start" "1"   N/A 96                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 97               }   N/A 98    N/A 99                "play_variation_2"   N/A 100                {   N/A 101                        "operator" "sys_start_entry"   N/A 102                        "execute_once" "true"   N/A 103                        "input_execute"        "@compare_2.output"   N/A 104                        "input_start" "1"   N/A 105                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 106               }   N/A 107    N/A 108                "play_variation_3"   N/A 109                {   N/A 110                        "operator" "sys_start_entry"   N/A 111                        "execute_once" "true"   N/A 112                        "input_execute"        "@compare_3.output"   N/A 113                        "input_start" "1"   N/A 114                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 115               }   N/A 116    N/A 117                "play_variation_4"   N/A 118                {   N/A 119                        "operator" "sys_start_entry"   N/A 120                        "execute_once" "true"   N/A 121                        "input_execute"        "@compare_4.output"   N/A 122                        "input_start" "1"   N/A 123                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 124               }   N/A 125                "play_variation_5"   N/A 126                {   N/A 127                        "operator" "sys_start_entry"   N/A 128                        "execute_once" "true"   N/A 129                        "input_execute"        "@compare_5.output"   N/A 130                        "input_start" "1"   N/A 131                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 132               }   N/A 133                "play_variation_6"   N/A 134                {   N/A 135                        "operator" "sys_start_entry"   N/A 136                        "execute_once" "true"   N/A 137                        "input_execute"        "@compare_6.output"   N/A 138                        "input_start" "1"   N/A 139                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 140               }   N/A 141                "play_variation_7"   N/A 142                {   N/A 143                        "operator" "sys_start_entry"   N/A 144                        "execute_once" "true"   N/A 145                        "input_execute"        "@compare_7.output"   N/A 146                        "input_start" "1"   N/A 147                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 148               }   N/A 149    N/A 150    N/A 151        }   N/A 152    N/A 153        "p2_editor_player_start"   N/A 154        {          N/A 155                "limit_blips"   N/A 156                {   N/A 157                        "operator" "sys_stop_entries"   N/A 158                        "input_max_entries" "99.000000" //A sound will not stop itself from playing. N/A 159                       "match_entity" "false"          N/A 160                        "match_substring" "false"          N/A 161                        "match_entry" "P2Editor.BlipPlayer00"          N/A 162                        "stop_oldest"        "true"   N/A 163                }   N/A 164    N/A 165                "play_random_or_not"   N/A 166                {   N/A 167                        "operator" "math_random"   N/A 168                        "input_min" "0.0"   N/A 169                        "input_max" "1.0"   N/A 170                }   N/A 171    N/A 172                "percentage_to_play"   N/A 173                {   N/A 174                        "operator" "math_float"   N/A 175                        "apply" "less_than_or_equal"          N/A 176                        "input1" "@play_random_or_not.output"   N/A 177                        "input2" "0.6" //TEST VARIABLE FOR NOW   N/A 178                }   N/A 179    N/A 180                "entries_mathing_compare"   N/A 181                {   N/A 182                        "operator" "math_float"   N/A 183                        "apply" "equals"          N/A 184                        "input1" "0.0"   N/A 185                        "input2" "@limit_blips.output_entries_matching" //TEST VARIABLE FOR NOW   N/A 186                }   N/A 187    N/A 188                "percentage_to_play_min"   N/A 189                {   N/A 190                        "operator" "math_float"   N/A 191                        "apply" "min"          N/A 192                        "input1" "@percentage_to_play.output"   N/A 193                        "input2" "@entries_mathing_compare.output" //TEST VARIABLE FOR NOW   N/A 194                }   N/A 195    N/A 196                "play_entry"   N/A 197                {   N/A 198                        "operator" "sys_start_entry"   N/A 199                        "execute_once" "true"   N/A 200                        "input_execute"        "@percentage_to_play_min.output"   N/A 201                        "input_start" "1"   N/A 202                        "entry_name" "P2Editor.RandomBlips"   N/A 203                }   N/A 204        }   N/A 205    N/A 206        "start_default"   N/A 207        {   N/A 208                "stop_entries"   N/A 209                {   N/A 210                        "operator" "sys_stop_entries"   N/A 211                }   N/A 212        }   N/A 213        "start_test_random"   N/A 214        {   N/A 215                "random_float"   N/A 216                {   N/A 217                        "operator" "math_random"   N/A 218                        "input_min" "0.0"   N/A 219                        "input_max" "1.0"   N/A 220                }   N/A 221        }   N/A 222    N/A 223        "start_test"   N/A 224        {   N/A 225    N/A 226                // "get_elapsed"   N/A 227                // {   N/A 228                        // "operator" "get_entry_time"   N/A 229                // }   N/A 230    N/A 231 //                 "play_entry"   N/A 232 //                 {   N/A 233 //                         "operator" "sys_start_entry"   N/A 234 //                         "input_start" "1"          N/A 235 //                         "entry_name" "xray.beep"          N/A 236 //                 }   N/A 237                "stop_entries"   N/A 238                {   N/A 239                        "operator" "sys_stop_entries"   N/A 240                }   N/A 241                "block_entries"   N/A 242                {   N/A 243                        "operator" "sys_block_entries"   N/A 244                        "input_active" "1.0"          N/A 245                        "input_duration" "2.0"   N/A 246                        "match_substring" "false"   N/A 247                        "match_entry" "xray.beep"   N/A 248                        // "match_sound" "npc\dog\dog_idlemode_loop1.wav"   N/A 249                        "match_channel" "false"   N/A 250                        "match_entity" "false"   N/A 251                }   N/A 252                "delay_output"   N/A 253                {   N/A 254                        "operator" "sys_output"   N/A 255                        "input_float" "0.0"   N/A 256                        "output" "delay"   N/A 257                }   N/A 258        }   N/A 259        "start_global_bpm_quantize"   N/A 260        {   N/A 261                "sys_time"   N/A 262                {   N/A 263                        "operator" "get_sys_time"   N/A 264                }   N/A 265                "bpm"   N/A 266                {   N/A 267                        "operator" "math_float"   N/A 268                        "apply" "div"          N/A 269                        "input1" "60"   N/A 270                        "input2" "120"          N/A 271                }   N/A 272                "beats"   N/A 273                {   N/A 274                        "operator" "math_float"   N/A 275                        "apply" "mult"          N/A 276                        "input1" "@bpm.output"   N/A 277                        "input2" "1"          N/A 278                }   N/A 279                 "time_mod"   N/A 280                {   N/A 281                        "operator" "math_float"   N/A 282                        "apply" "mod"   N/A 283                        "input1" "@sys_time.output_client_time"   N/A 284                        "input2" "@beats.output"   N/A 285                }   N/A 286                 "negative_delay"   N/A 287                {   N/A 288                        "operator" "math_float"   N/A 289                        "apply" "mult"   N/A 290                        "input1" "@time_mod.output"   N/A 291                        "input2" "-1.0"   N/A 292                }   N/A 293                "delay_output"   N/A 294                {   N/A 295                        "operator" "sys_output"   N/A 296                        "input_float" "@negative_delay.output"   N/A 297                        "output" "delay"   N/A 298                }   N/A 299        }   N/A 300        "start_sync_to_entry"   N/A 301        {   N/A 302                "elapsed_time"   N/A 303                {   N/A 304                        "operator" "get_entry_time"   N/A 305                }   N/A 306                "duration_div"   N/A 307                {   N/A 308                        "operator" "math_float"   N/A 309                        "apply" "div"          N/A 310                        "input1" "@elapsed_time.output_sound_duration"   N/A 311                        "input2" "4"          N/A 312                }   N/A 313                 "time_mod"   N/A 314                {   N/A 315                        "operator" "math_float"   N/A 316                        "apply" "mod"   N/A 317                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 318                        "input2" "@duration_div.output"   N/A 319                }   N/A 320                 "div_mult"   N/A 321                {   N/A 322                        "operator" "math_float"   N/A 323                        "apply" "mult"   N/A 324                        "input1" "0.0"   N/A 325                        "input2" "@duration_div.output"   N/A 326                }   N/A 327                 "add_offset"   N/A 328                {   N/A 329                        "operator" "math_float"   N/A 330                        "apply" "add"   N/A 331                        "input1" "@time_mod.output"   N/A 332                        "input2" "@div_mult.output"   N/A 333                }   N/A 334                 "negative_delay"   N/A 335                {   N/A 336                        "operator" "math_float"   N/A 337                        "apply" "mult"   N/A 338                        "input1" "@add_offset.output"   N/A 339                        "input2" "-1.0"   N/A 340                }   N/A 341                "delay_output"   N/A 342                {   N/A 343                        "operator" "sys_output"   N/A 344                        "input_float" "@negative_delay.output"   N/A 345                        "output" "delay"   N/A 346                }   N/A 347        }   N/A 348        "start_delay_sync_to_entry"   N/A 349        {   N/A 350                "import_stack" "start_sync_to_entry"   N/A 351                 "negative_delay"   N/A 352                {   N/A 353                        "apply" "sub"   N/A 354                        "input1" "@duration_div.output"   N/A 355                        "input2" "@time_mod.output"   N/A 356                }   N/A 357    N/A 358        }   N/A 359    N/A 360        "P2_coop_robot_start"   N/A 361        {   N/A 362                "stop_footsteps"   N/A 363                {   N/A 364                        "operator" "sys_stop_entries"   N/A 365                        "input_max_entries" "0.000000" //A sound will not stop itself from playing. N/A 366                       "match_entity" "false"          N/A 367                        "match_substring" "true"          N/A 368                }   N/A 369        }   N/A 370    N/A 371        "P2_portalgun_start"   N/A 372        {   N/A 373                "stop_gun"   N/A 374                {   N/A 375                        "operator" "sys_stop_entries"   N/A 376                        "input_max_entries" "0.000000" //A sound will not stop itself from playing. N/A 377                       "match_entity" "false"          N/A 378                        "match_substring" "true"          N/A 379                }   N/A 380        }   N/A 381    N/A 382        "P2_poly_limiting_start" //Generic poly limiter. Override values to make usable. N/A 383       {   N/A 384                "limit_sound"   N/A 385                {   N/A 386                        "operator" "sys_stop_entries"   N/A 387                        "input_max_entries" "0.000000" //A sound will not stop itself from playing. N/A 388                       "match_entity" "false"          N/A 389                        "match_substring" "true"   N/A 390                        "match_entry" "NONE"                  N/A 391                }   N/A 392    N/A 393                "limit_robot_sounds"   N/A 394                {   N/A 395                        "operator" "sys_stop_entries"   N/A 396                        "input_max_entries" "23.000000" //A sound will not stop itself from playing. N/A 397                       "match_entity" "false"          N/A 398                        "match_substring" "true"   N/A 399                        "match_entry" "Robot"                  N/A 400                }   N/A 401    N/A 402                //Console hacks begin here. N/A 403   N/A 404    N/A 405                "sys_get_platform" //should be for X360/PS3, only use PC for testing. N/A 406               {   N/A 407                        "operator" "sys_platform"   N/A 408                        //"pc" "true" //IF THIS IS UNCOMMENTED CHANGE IT!!! SERIOUSLY!!! N/A 409                       "x360" "true"   N/A 410                        "ps3" "true"   N/A 411                }   N/A 412    N/A 413                "limit_robot_sounds_ps3"   N/A 414                {   N/A 415                        "operator" "sys_stop_entries"   N/A 416                        "input_execute" "@sys_get_platform.output"   N/A 417                        "input_max_entries" "9.000000" //I hate myself. N/A 418                       "match_entity" "false"          N/A 419                        "match_substring" "true"   N/A 420                        "match_entry" "Robot"                  N/A 421                }   N/A 422    N/A 423                "ps3_num_voices_compare"   N/A 424                {   N/A 425                        "operator" "math_float"   N/A 426                        "apply" "greater_than_or_equal"          N/A 427                        "input1" "@limit_robot_sounds_ps3.output_entries_matching" // This is the percentage chance to play a null   N/A 428                        "input2" "10.0" //match the max number of played sounds ( = input_max_entries + 1 )   N/A 429                }   N/A 430    N/A 431                "block_robot_entries_ps3"  //helps with disc I/O: Blocks sound requests of robots once a max number of robots exist   N/A 432                {   N/A 433                        "operator" "sys_block_entries"   N/A 434                        //"input_execute" "0.0"   N/A 435                        "input_execute" "@ps3_num_voices_compare.output"   N/A 436                        "input_active" "1.0"          N/A 437                        "input_duration" "0.25" //in seconds, you can use "@get_random.output" for a random blocking period   N/A 438                        "match_substring" "true"   N/A 439                        "match_entry" "Robot" //The sound entry to use   N/A 440                        "match_channel" "false"   N/A 441                        "match_entity" "false"   N/A 442                }   N/A 443    N/A 444                "limit_sound_ps3"   N/A 445                {   N/A 446                        "operator" "sys_stop_entries"   N/A 447                        "input_execute" "0.0"   N/A 448                        //"input_execute" "@sys_get_platform.output"   N/A 449                        "input_max_entries" "0.000000" //A sound will not stop itself from playing. N/A 450                       "match_entity" "false"          N/A 451                        "match_substring" "true"   N/A 452                        "match_entry" "NONE"                  N/A 453                }   N/A 454    N/A 455                "block_entries_ps3"   N/A 456                {   N/A 457                        "operator" "sys_block_entries"   N/A 458                        "input_execute" "0.0"   N/A 459                        //"input_execute" "@sys_get_platform.output"   N/A 460                        "input_active" "1.0"          N/A 461                        "input_duration" "5.0" //in seconds, you can use "@get_random.output" for a random blocking period   N/A 462                        "match_substring" "false"   N/A 463                        "match_entry" "NONE" //The sound entry to use   N/A 464                        "match_channel" "false"   N/A 465                        "match_entity" "false"   N/A 466                }   N/A 467    N/A 468        }   N/A 469    N/A 470        "P2_exclusion_time_blocker_start" //Generic exclusion time. Override values to make usable. N/A 471       {   N/A 472                "get_random"   N/A 473                {   N/A 474                        "operator" "math_random"   N/A 475                        "input_execute" "0.0"   N/A 476                        "input_min" "0.0"   N/A 477                        "input_max" "1.0"                  N/A 478                }   N/A 479    N/A 480                "block_entries"   N/A 481                {   N/A 482                        "operator" "sys_block_entries"   N/A 483                        "input_active" "1.0"          N/A 484                        "input_duration" "0.1" //in seconds, you can use "@get_random.output" for a random blocking period   N/A 485                        "match_substring" "false"   N/A 486                        "match_entry" "NONE" //The sound entry to use   N/A 487                        // "match_sound" "npc\dog\dog_idlemode_loop1.wav"   N/A 488                        "match_channel" "false"   N/A 489                        "match_entity" "false"   N/A 490                }   N/A 491        }   N/A 492    N/A 493        "P2_exclusion_time_and_poly_limiting_start" //Combines exclusion time and poly limiting   N/A 494        {   N/A 495                "import_stack" "P2_exclusion_time_blocker_start"   N/A 496                "import_stack" "P2_poly_limiting_start"                  N/A 497        }   N/A 498    N/A 499        "P2_null_start" //replaces null.wav   N/A 500        {   N/A 501                "get_random_null"   N/A 502                {   N/A 503                        "operator" "math_random"   N/A 504                        "input_execute" "0.0"   N/A 505                        "input_min" "0.0"   N/A 506                        "input_max" "1.0"                  N/A 507                }   N/A 508    N/A 509                "percent_null"   N/A 510                {   N/A 511                        "operator" "math_float"   N/A 512                        "apply" "greater_than"          N/A 513                        "input1" "0.60" // This is the percentage chance to play a null   N/A 514                        "input2" "@get_random_null.output"   N/A 515                }   N/A 516    N/A 517                "block_start"   N/A 518                {          N/A 519                        "input_execute" "1.0"   N/A 520                        //"input_execute" "@percent_null.output"   N/A 521                        "operator" "sys_output"   N/A 522                        "input_float" "1"   N/A 523                        "output" "block_start"   N/A 524                }   N/A 525        }   N/A 526    N/A 527        "P2_null_player_start" //Play an entry other than the called one! N/A 528       {   N/A 529                "play_entry"   N/A 530                {   N/A 531                        "operator" "sys_start_entry"   N/A 532                        "execute_once" "true"   N/A 533                        "input_execute"        "1.0"   N/A 534                        "input_start" "1"   N/A 535                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 536               }   N/A 537    N/A 538                "block_start"   N/A 539                {          N/A 540                        "input_execute" "1.0"   N/A 541                        "operator" "sys_output"   N/A 542                        "input_float" "1"   N/A 543                        "output" "block_start"   N/A 544                }          N/A 545    N/A 546        }   N/A 547    N/A 548    N/A 549 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 550 //   N/A 551 // dialog start stacks   N/A 552 //   N/A 553 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 554    N/A 555        "P2_glados_start" // default start stack for glados v.o.   N/A 556        {   N/A 557                "set_mixlayer_vol_wheatley"   N/A 558                {   N/A 559                        "operator" "sys_mixlayer"   N/A 560                        "mixlayer" "gladosVOLayer"   N/A 561                        "mixgroup" "wheatleyVO"   N/A 562                        "field" "volume"   N/A 563                        "input" "1.0"   N/A 564                }   N/A 565                "set_mixlayer_vol_announcer"   N/A 566                {   N/A 567                        "operator" "sys_mixlayer"   N/A 568                        "mixlayer" "gladosVOLayer"   N/A 569                        "mixgroup" "announcerVO"   N/A 570                        "field" "volume"   N/A 571                        "input" "1.0"   N/A 572                }   N/A 573                "set_mixlayer_vol_cave"   N/A 574                {   N/A 575                        "operator" "sys_mixlayer"   N/A 576                        "mixlayer" "gladosVOLayer"   N/A 577                        "mixgroup" "caveVO"   N/A 578                        "field" "volume"   N/A 579                        "input" "1.0"   N/A 580                }   N/A 581        }   N/A 582        "P2_glados_start_mute" // default start stack for glados v.o.   N/A 583        {   N/A 584                "set_mixlayer_mute_wheatley"   N/A 585                {   N/A 586                        "operator" "sys_mixlayer"   N/A 587                        "mixlayer" "gladosVOLayer"   N/A 588                        "mixgroup" "wheatleyVO"   N/A 589                        "field" "mute"   N/A 590                        "input" "0.0"   N/A 591                }   N/A 592                "set_mixlayer_mute_announcer"   N/A 593                {   N/A 594                        "operator" "sys_mixlayer"   N/A 595                        "mixlayer" "gladosVOLayer"   N/A 596                        "mixgroup" "announcerVO"   N/A 597                        "field" "mute"   N/A 598                        "input" "0.0"   N/A 599                }   N/A 600                "set_mixlayer_mute_cave"   N/A 601                {   N/A 602                        "operator" "sys_mixlayer"   N/A 603                        "mixlayer" "gladosVOLayer"   N/A 604                        "mixgroup" "caveVO"   N/A 605                        "field" "mute"   N/A 606                        "input" "0.0"   N/A 607                }   N/A 608        }   N/A 609        "P2_wheatley_start" // default start stack for wheatley v.o.   N/A 610        {   N/A 611                "set_mixlayer_vol_glados"   N/A 612                {   N/A 613                        "operator" "sys_mixlayer"   N/A 614                        "mixlayer" "wheatleyVOLayer"   N/A 615                        "mixgroup" "gladosVO"   N/A 616                        "field" "volume"   N/A 617                        "input" "1.0"   N/A 618                }   N/A 619                "set_mixlayer_vol_announcer"   N/A 620                {   N/A 621                        "operator" "sys_mixlayer"   N/A 622                        "mixlayer" "wheatleyVOLayer"   N/A 623                        "mixgroup" "announcerVO"   N/A 624                        "field" "volume"   N/A 625                        "input" "1.0"   N/A 626                }   N/A 627        }   N/A 628        "P2_announcer_start" // default start stack for announcer v.o.   N/A 629        {   N/A 630                "set_mixlayer_vol_glados"   N/A 631                {   N/A 632                        "operator" "sys_mixlayer"   N/A 633                        "mixlayer" "announcerVOLayer"   N/A 634                        "mixgroup" "gladosVO"   N/A 635                        "field" "volume"   N/A 636                        "input" "1.0"   N/A 637                }   N/A 638                "set_mixlayer_vol_wheatley"   N/A 639                {   N/A 640                        "operator" "sys_mixlayer"   N/A 641                        "mixlayer" "announcerVOLayer"   N/A 642                        "mixgroup" "wheatleyVO"   N/A 643                        "field" "volume"   N/A 644                        "input" "1.0"   N/A 645                }   N/A 646        }   N/A 647    N/A 648    N/A 649 }   N/A 650    N/A 651    N/A 652 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 653 //   N/A 654 // update stacks   N/A 655 //   N/A 656 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 657 "update_stacks"   N/A 658 {   N/A 659    N/A 660 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 661 //   N/A 662 // TEST STACKS   N/A 663 //   N/A 664 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 665    N/A 666        "update_test1"   N/A 667        {   N/A 668    N/A 669                "test1_value1"   N/A 670                {   N/A 671                        "operator" "math_float"   N/A 672                        "apply" "add"          N/A 673                        "input1" "8"   N/A 674                        "input2" "9"   N/A 675                }   N/A 676                "test1_value1"   N/A 677                {   N/A 678                        "operator" "math_float"   N/A 679                        "apply" "mult"          N/A 680                        "input1" "0"   N/A 681                        "input2" "1"   N/A 682                }   N/A 683                "test1_value2"   N/A 684                {   N/A 685                        "operator" "math_float"   N/A 686                        "apply" "add"          N/A 687                        "input1" "@test1_value1.output"   N/A 688                        "input2" "1"   N/A 689                }   N/A 690        }   N/A 691        "update_test2"   N/A 692        {   N/A 693                "test2_value1"   N/A 694                {   N/A 695                        "operator" "math_float"   N/A 696                        "apply" "mult"          N/A 697                        "input1" "8"   N/A 698                        "input2" "9"   N/A 699                }   N/A 700                "test2_value1"   N/A 701                {   N/A 702                        "apply" "add"          N/A 703                        "input1" "6"   N/A 704                        "input2" "7"   N/A 705                }   N/A 706                "test2_value2"   N/A 707                {   N/A 708                        "operator" "math_float"   N/A 709                        "apply" "add"          N/A 710                        "input1" "@test2_value1.output"   N/A 711                        "input2" "1"   N/A 712                }   N/A 713        }   N/A 714        "update_test3"   N/A 715        {   N/A 716                "import_stack" "update_test1"   N/A 717                "import_stack" "update_test2"   N/A 718                "test2_value1"   N/A 719                {   N/A 720                        "apply" "add"          N/A 721                        "input1" "2"   N/A 722                        "input2" "3"   N/A 723                }   N/A 724        }   N/A 725        "update_test4"   N/A 726        {   N/A 727                "elapsed_time"   N/A 728                {   N/A 729                        "operator" "get_entry_time"   N/A 730                }   N/A 731                "duration_div"   N/A 732                {   N/A 733                        "operator" "math_float"   N/A 734                        "apply" "div"          N/A 735                        "input1" "@elapsed_time.output_sound_duration"   N/A 736                        "input2" "4"          N/A 737                }   N/A 738                "time_div"   N/A 739                {   N/A 740                        "operator" "math_float"   N/A 741                        "apply" "div"          N/A 742                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 743                        "input2" "@duration_div.output"          N/A 744                }   N/A 745                "time_mod"   N/A 746                {   N/A 747                        "operator" "math_float"   N/A 748                        "apply" "mod"          N/A 749                        "input1" "@time_div.output"   N/A 750                        "input2" "1"          N/A 751                }   N/A 752                "time_step"   N/A 753                {   N/A 754                        "operator" "math_float"   N/A 755                        "apply" "sub"          N/A 756                        "input1" "@time_div.output"   N/A 757                        "input2" "@time_mod.output"   N/A 758                }   N/A 759                "step_delta"   N/A 760                {   N/A 761                        "operator" "math_delta"   N/A 762                        "input" "@time_step.output"          N/A 763                }   N/A 764                "delta_trigger"   N/A 765                {   N/A 766                        "operator" "math_float"   N/A 767                        "apply" "greater_than"          N/A 768                        "input1" "@step_delta.output"   N/A 769                        "input2" "0.1"   N/A 770                }   N/A 771    N/A 772                "play_entry"   N/A 773                {   N/A 774                        "operator" "sys_start_entry"   N/A 775                        "input_start" "@delta_trigger.output"   N/A 776                        "entry_name" "xray.beep"          N/A 777                }   N/A 778    N/A 779                "speaker_volume"   N/A 780                {   N/A 781                        "operator" "math_float"   N/A 782                        "apply" "mult"          N/A 783                        "input1" "1"   N/A 784                        "input2" "1"   N/A 785                }   N/A 786    N/A 787                "speakers_limit"   N/A 788                {   N/A 789                        "operator"      "math_speakers"   N/A 790                        "apply"               "mult"   N/A 791                        "left_front"   "1.0"          N/A 792                        "right_front"  "1.0"          N/A 793                        "center"       "0.0"          N/A 794                        "lfe"          "0.0"          N/A 795                        "left_rear"    "0.0"   N/A 796                        "right_rear"   "0.0"          N/A 797    N/A 798                        "input2[*]" "@speaker_volume.output"                  N/A 799                }   N/A 800    N/A 801                "speakers_output"   N/A 802                {   N/A 803                        "operator" "sys_output"   N/A 804                        "input_speakers" "@speakers_limit.output"   N/A 805                        "output" "speakers"   N/A 806                }   N/A 807        }   N/A 808    N/A 809        "update_remap_tests"   N/A 810        {   N/A 811    N/A 812                "remap_norm"   N/A 813                {   N/A 814                        "execute_once" "true"   N/A 815                        "operator" "math_remap_float"   N/A 816                        "input" ".7"   N/A 817                        "input_min" "0"   N/A 818                        "input_max" "1"   N/A 819                        "input_map_min" "0.0"   N/A 820                        "input_map_max" "1.0"   N/A 821                }   N/A 822                "remap_norm_rev1"   N/A 823                {   N/A 824                        "execute_once" "true"   N/A 825                        "operator" "math_remap_float"   N/A 826                        "input" ".7"   N/A 827                        "input_min" "1"   N/A 828                        "input_max" "0"   N/A 829                        "input_map_min" "0.0"   N/A 830                        "input_map_max" "1.0"   N/A 831                }   N/A 832                "remap_norm_rev2"   N/A 833                {   N/A 834                        "execute_once" "true"   N/A 835                        "operator" "math_remap_float"   N/A 836                        "input" ".7"   N/A 837                        "input_min" "0"   N/A 838                        "input_max" "1"   N/A 839                        "input_map_min" "1.0"   N/A 840                        "input_map_max" "0.0"   N/A 841                }   N/A 842                "remap_norm_rev3"   N/A 843                {   N/A 844                        "execute_once" "true"   N/A 845                        "operator" "math_remap_float"   N/A 846                        "input" ".7"   N/A 847                        "input_min" "1"   N/A 848                        "input_max" "0"   N/A 849                        "input_map_min" "1.0"   N/A 850                        "input_map_max" "0.0"   N/A 851                }   N/A 852                "remap_less_than_min"   N/A 853                {   N/A 854                        "execute_once" "true"   N/A 855                        "operator" "math_remap_float"   N/A 856                        "input" "-1"   N/A 857                        "input_min" "0"   N/A 858                        "input_max" "1"   N/A 859                        "input_map_min" "0.0"   N/A 860                        "input_map_max" "1.0"   N/A 861                }   N/A 862                "remap_greater_than_max"   N/A 863                {   N/A 864                        "execute_once" "true"   N/A 865                        "operator" "math_remap_float"   N/A 866                        "input" "2"   N/A 867                        "input_min" "0"   N/A 868                        "input_max" "1"   N/A 869                        "input_map_min" "0.0"   N/A 870                        "input_map_max" "1.0"   N/A 871                }   N/A 872                "remap_less_than_min_clamp"   N/A 873                {   N/A 874                        "execute_once" "true"   N/A 875                        "operator" "math_remap_float"   N/A 876                        "input" "-1"   N/A 877                        "input_min" "0"   N/A 878                        "input_max" "1"   N/A 879                        "input_map_min" "0.0"   N/A 880                        "input_map_max" "1.0"   N/A 881                        "clamp_range" "true"          N/A 882                }   N/A 883                "remap_greater_than_max_clamp"   N/A 884                {   N/A 885                        "execute_once" "true"   N/A 886                        "operator" "math_remap_float"   N/A 887                        "input" "2"   N/A 888                        "input_min" "0"   N/A 889                        "input_max" "1"   N/A 890                        "input_map_min" "0.0"   N/A 891                        "input_map_max" "1.0"   N/A 892                        "clamp_range" "true"          N/A 893                }   N/A 894    N/A 895                "remap_equal_equal_min_max"   N/A 896                {   N/A 897                        "execute_once" "true"   N/A 898                        "operator" "math_remap_float"   N/A 899                        "input" "1"   N/A 900                        "input_min" "1"   N/A 901                        "input_max" "1"   N/A 902                        "input_map_min" "0.0"   N/A 903                        "input_map_max" "1.0"   N/A 904                }   N/A 905                "remap_equal_equal_min_max_default_min"   N/A 906                {   N/A 907                        "execute_once" "true"   N/A 908                        "operator" "math_remap_float"   N/A 909                        "input" "1"   N/A 910                        "input_min" "1"   N/A 911                        "input_max" "1"   N/A 912                        "input_map_min" "0.0"   N/A 913                        "input_map_max" "1.0"   N/A 914                        "default_to_max" "false"   N/A 915                }   N/A 916    N/A 917                "remap_less_than_equal_min_max"   N/A 918                {   N/A 919                        "execute_once" "true"   N/A 920                        "operator" "math_remap_float"   N/A 921                        "input" ".5"   N/A 922                        "input_min" "1"   N/A 923                        "input_max" "1"   N/A 924                        "input_map_min" "0.0"   N/A 925                        "input_map_max" "1.0"   N/A 926                }   N/A 927                "remap_greater_than_equal_min_max"   N/A 928                {   N/A 929                        "execute_once" "true"   N/A 930                        "operator" "math_remap_float"   N/A 931                        "input" "1.5"   N/A 932                        "input_min" "1"   N/A 933                        "input_max" "1"   N/A 934                        "input_map_min" "0.0"   N/A 935                        "input_map_max" "1.0"   N/A 936                }   N/A 937                "remap_greater_than_range"   N/A 938                {   N/A 939                        "execute_once" "true"   N/A 940                        "operator" "math_remap_float"   N/A 941                        "input" "1.5"   N/A 942                        "input_min" "0"   N/A 943                        "input_max" "1"   N/A 944                        "input_map_min" "0.0"   N/A 945                        "input_map_max" "1.0"   N/A 946                }   N/A 947                "remap_less_than_range"   N/A 948                {   N/A 949                        "execute_once" "true"   N/A 950                        "operator" "math_remap_float"   N/A 951                        "input" "0.5"   N/A 952                        "input_min" "1.0"   N/A 953                        "input_max" "2.0"   N/A 954                        "input_map_min" "0.0"   N/A 955                        "input_map_max" "1.0"   N/A 956                }   N/A 957    N/A 958                "remap_norm_rev"   N/A 959                {   N/A 960                        "execute_once" "true"   N/A 961                        "operator" "math_remap_float"   N/A 962                        "input" ".7"   N/A 963                        "input_min" "1"   N/A 964                        "input_max" "0"   N/A 965                        "input_map_min" "0.0"   N/A 966                        "input_map_max" "1.0"   N/A 967                }   N/A 968                "remap_less_than_min_rev"   N/A 969                {   N/A 970                        "execute_once" "true"   N/A 971                        "operator" "math_remap_float"   N/A 972                        "input" "-1"   N/A 973                        "input_min" "1"   N/A 974                        "input_max" "0"   N/A 975                        "input_map_min" "0.0"   N/A 976                        "input_map_max" "1.0"   N/A 977                }   N/A 978                "remap_greater_than_max_rev"   N/A 979                {   N/A 980                        "execute_once" "true"   N/A 981                        "operator" "math_remap_float"   N/A 982                        "input" "2"   N/A 983                        "input_min" "1"   N/A 984                        "input_max" "0"   N/A 985                        "input_map_min" "0.0"   N/A 986                        "input_map_max" "1.0"   N/A 987                }   N/A 988                "remap_less_than_min_clamp_rev"   N/A 989                {   N/A 990                        "execute_once" "true"   N/A 991                        "operator" "math_remap_float"   N/A 992                        "input" "-1"   N/A 993                        "input_min" "1"   N/A 994                        "input_max" "0"   N/A 995                        "input_map_min" "0.0"   N/A 996                        "input_map_max" "1.0"   N/A 997                        "clamp_range" "true"          N/A 998                }   N/A 999                "remap_greater_than_max_clamp_rev"   N/A 1000                {   N/A 1001                        "execute_once" "true"   N/A 1002                        "operator" "math_remap_float"   N/A 1003                        "input" "2"   N/A 1004                        "input_min" "1"   N/A 1005                        "input_max" "0"   N/A 1006                        "input_map_min" "0.0"   N/A 1007                        "input_map_max" "1.0"   N/A 1008                        "clamp_range" "true"          N/A 1009                }   N/A 1010    N/A 1011                "big_remap_norm"   N/A 1012                {   N/A 1013                        "execute_once" "true"   N/A 1014                        "operator" "math_remap_float"   N/A 1015                        "input" "70"   N/A 1016                        "input_min" "0"   N/A 1017                        "input_max" "100"   N/A 1018                        "input_map_min" "0.0"   N/A 1019                        "input_map_max" "100.0"   N/A 1020                }   N/A 1021                "big_remap_less_than_min"   N/A 1022                {   N/A 1023                        "execute_once" "true"   N/A 1024                        "operator" "math_remap_float"   N/A 1025                        "input" "-1"   N/A 1026                        "input_min" "0"   N/A 1027                        "input_max" "100"   N/A 1028                        "input_map_min" "0.0"   N/A 1029                        "input_map_max" "100.0"   N/A 1030                }   N/A 1031                "big_remap_greater_than_max"   N/A 1032                {   N/A 1033                        "execute_once" "true"   N/A 1034                        "operator" "math_remap_float"   N/A 1035                        "input" "200"   N/A 1036                        "input_min" "0"   N/A 1037                        "input_max" "100"   N/A 1038                        "input_map_min" "0.0"   N/A 1039                        "input_map_max" "100.0"   N/A 1040                }   N/A 1041                "big_remap_less_than_min_clamp"   N/A 1042                {   N/A 1043                        "execute_once" "true"   N/A 1044                        "operator" "math_remap_float"   N/A 1045                        "input" "-1"   N/A 1046                        "input_min" "0"   N/A 1047                        "input_max" "100"   N/A 1048                        "input_map_min" "0.0"   N/A 1049                        "input_map_max" "100.0"   N/A 1050                        "clamp_range" "true"          N/A 1051                }   N/A 1052                "big_remap_greater_than_max_clamp"   N/A 1053                {   N/A 1054                        "execute_once" "true"   N/A 1055                        "operator" "math_remap_float"   N/A 1056                        "input" "200"   N/A 1057                        "input_min" "0"   N/A 1058                        "input_max" "100"   N/A 1059                        "input_map_min" "0.0"   N/A 1060                        "input_map_max" "100.0"   N/A 1061                        "clamp_range" "true"          N/A 1062                }   N/A 1063    N/A 1064                "big_remap_greater_than_range"   N/A 1065                {   N/A 1066                        "execute_once" "true"   N/A 1067                        "operator" "math_remap_float"   N/A 1068                        "input" "150"   N/A 1069                        "input_min" "0"   N/A 1070                        "input_max" "100"   N/A 1071                        "input_map_min" "0.0"   N/A 1072                        "input_map_max" "100.0"   N/A 1073                }   N/A 1074                "big_remap_less_than_range"   N/A 1075                {   N/A 1076                        "execute_once" "true"   N/A 1077                        "operator" "math_remap_float"   N/A 1078                        "input" "50"   N/A 1079                        "input_min" "100.0"   N/A 1080                        "input_max" "200.0"   N/A 1081                        "input_map_min" "0.0"   N/A 1082                        "input_map_max" "100.0"   N/A 1083                }   N/A 1084    N/A 1085                "big_remap_norm_rev"   N/A 1086                {   N/A 1087                        "execute_once" "true"   N/A 1088                        "operator" "math_remap_float"   N/A 1089                        "input" "70"   N/A 1090                        "input_min" "100"   N/A 1091                        "input_max" "0"   N/A 1092                        "input_map_min" "0.0"   N/A 1093                        "input_map_max" "100.0"   N/A 1094                }   N/A 1095                "big_remap_less_than_min_rev"   N/A 1096                {   N/A 1097                        "execute_once" "true"   N/A 1098                        "operator" "math_remap_float"   N/A 1099                        "input" "-100"   N/A 1100                        "input_min" "100"   N/A 1101                        "input_max" "0"   N/A 1102                        "input_map_min" "0.0"   N/A 1103                        "input_map_max" "100.0"   N/A 1104                }   N/A 1105                "big_remap_greater_than_max_rev"   N/A 1106                {   N/A 1107                        "execute_once" "true"   N/A 1108                        "operator" "math_remap_float"   N/A 1109                        "input" "200"   N/A 1110                        "input_min" "100"   N/A 1111                        "input_max" "0"   N/A 1112                        "input_map_min" "0.0"   N/A 1113                        "input_map_max" "100.0"   N/A 1114                }   N/A 1115                "big_remap_less_than_min_clamp_rev"   N/A 1116                {   N/A 1117                        "execute_once" "true"   N/A 1118                        "operator" "math_remap_float"   N/A 1119                        "input" "-100"   N/A 1120                        "input_min" "100"   N/A 1121                        "input_max" "0"   N/A 1122                        "input_map_min" "0.0"   N/A 1123                        "input_map_max" "100.0"   N/A 1124                        "clamp_range" "true"          N/A 1125                }   N/A 1126                "big_remap_greater_than_max_clamp_rev"   N/A 1127                {   N/A 1128                        "execute_once" "true"   N/A 1129                        "operator" "math_remap_float"   N/A 1130                        "input" "200"   N/A 1131                        "input_min" "100"   N/A 1132                        "input_max" "0"   N/A 1133                        "input_map_min" "0.0"   N/A 1134                        "input_map_max" "100.0"   N/A 1135                        "clamp_range" "true"          N/A 1136                }   N/A 1137    N/A 1138    N/A 1139        }   N/A 1140    N/A 1141        "update_remap_test"   N/A 1142        {   N/A 1143    N/A 1144                //////////////////////   N/A 1145                // POSITION   N/A 1146                "source_info"   N/A 1147                {   N/A 1148                        "operator" "get_source_info"   N/A 1149                        // "source"   "entity"   N/A 1150                        "source"   "emitter"   N/A 1151                }   N/A 1152    N/A 1153                // NOTE: uses player data, ie: SS   N/A 1154                // SS Self-contained, returns closest distance   N/A 1155                "source_distance"   N/A 1156                {   N/A 1157                        "operator" "calc_source_distance"   N/A 1158                        "input_position"   "@source_info.output_position"   N/A 1159                }   N/A 1160    N/A 1161                "remap_distance"   N/A 1162                {   N/A 1163                        "operator" "math_remap_float"   N/A 1164                        "input" "@source_distance.output"   N/A 1165                        "input_min" "300"   N/A 1166                        "input_max" "1000"   N/A 1167                        "input_map_min" "0.80"   N/A 1168                        "input_map_max" "1.2"   N/A 1169                }   N/A 1170                "invert_remap"   N/A 1171                {   N/A 1172                        "operator" "math_float"   N/A 1173 //                         "apply" "sub"   N/A 1174                        "apply" "mult"   N/A 1175                        "input1" "1.0"   N/A 1176                        "input2" "@remap_distance.output"   N/A 1177                }   N/A 1178    N/A 1179                "pitch_output"   N/A 1180                {   N/A 1181                        "operator" "sys_output"   N/A 1182                        "output"   "pitch"   N/A 1183                        "input_float" "@remap_distance.output"          N/A 1184                }   N/A 1185    N/A 1186    N/A 1187                /////////////////////   N/A 1188                // SPEAKERS   N/A 1189    N/A 1190                "speakers_spatialize"   N/A 1191                {   N/A 1192                        "operator" "calc_spatialize_speakers"   N/A 1193                        "input_radius"  "300"   N/A 1194                        "input_distance"  "@source_distance.output"   N/A 1195                        "input_position"  "@source_info.output_position"   N/A 1196                }   N/A 1197    N/A 1198                "speakers_volume"   N/A 1199                {   N/A 1200                        "operator"     "math_speakers"   N/A 1201                        "apply"               "mult"   N/A 1202                        "input1"       "@speakers_spatialize.output"   N/A 1203                        "input2[*]"           "@invert_remap.output"   N/A 1204                        // "input2[*]"           "@facing.output"   N/A 1205                }   N/A 1206    N/A 1207                "speakers_output"   N/A 1208                {   N/A 1209                        "operator" "sys_output"   N/A 1210                        "input_speakers" "@speakers_volume.output"   N/A 1211                        "output" "speakers"   N/A 1212                }   N/A 1213        }   N/A 1214    N/A 1215    N/A 1216        "update_stop_at_time"   N/A 1217        {   N/A 1218                "usat_elapsed_time"   N/A 1219                {   N/A 1220                        "operator" "get_entry_time"   N/A 1221                }   N/A 1222    N/A 1223                "usat_stop_time"   N/A 1224                {   N/A 1225                        "operator" "math_float"   N/A 1226                        "apply" "greater_than"          N/A 1227                        "input1" "@usat_elapsed_time.output_entry_elapsed"   N/A 1228                        "input2" "1.0"   N/A 1229                }   N/A 1230                "usat_stop_entry"   N/A 1231                {   N/A 1232                        "input_execute" "@usat_stop_time.output"   N/A 1233                        "operator" "sys_stop_entries"   N/A 1234                        "stop_this_entry" "true"          N/A 1235                }   N/A 1236        }   N/A 1237    N/A 1238        "update_trigger_layer_til_time"   N/A 1239        {   N/A 1240                "utltt_elapsed_time"   N/A 1241                {   N/A 1242                        "operator" "get_entry_time"   N/A 1243                }   N/A 1244    N/A 1245                "utltt_trigger_time"   N/A 1246                {   N/A 1247                        "operator" "math_float"   N/A 1248                        "apply" "less_than"          N/A 1249                        "input1" "@utltt_elapsed_time.output_sound_elapsed"   N/A 1250                        "input2" "1.0"   N/A 1251                }   N/A 1252                "utltt_output_mixlayer_trigger"   N/A 1253                {   N/A 1254                        "operator" "sys_output"   N/A 1255                        "input_float" "@utltt_trigger_time.output"   N/A 1256                        "output" "mixlayer_trigger"   N/A 1257                }   N/A 1258    N/A 1259        }   N/A 1260    N/A 1261        "update_stop_at_distance"   N/A 1262        {   N/A 1263                // this will use the standard "source_distance" operator exists   N/A 1264                "usad_stop_dist"   N/A 1265                {   N/A 1266                        "operator" "math_float"   N/A 1267                        "apply" "greater_than"          N/A 1268                        "input1" "0.0"   N/A 1269                        "input2" "1.0"   N/A 1270                }   N/A 1271                "usad_stop_entry"   N/A 1272                {   N/A 1273                        "operator" "sys_stop_entries"   N/A 1274                        "input_execute" "@usad_stop_dist.output"   N/A 1275                        "stop_this_entry" "true"          N/A 1276                }   N/A 1277        }   N/A 1278    N/A 1279 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 1280 //   N/A 1281 // TRIGGER STACKS   N/A 1282 //   N/A 1283 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 1284        "update_music_div_trigger"   N/A 1285        {   N/A 1286                "elapsed_time_div"   N/A 1287                {   N/A 1288                        "operator" "get_entry_time"   N/A 1289                }   N/A 1290                "duration_div"   N/A 1291                {   N/A 1292                        "operator" "math_float"   N/A 1293                        "apply" "div"          N/A 1294                        "input1" "@elapsed_time_div.output_sound_duration"   N/A 1295                        "input2" "4"          N/A 1296                }   N/A 1297                "time_div"   N/A 1298                {   N/A 1299                        "operator" "math_float"   N/A 1300                        "apply" "div"          N/A 1301                        "input1" "@elapsed_time_div.output_sound_elapsed"   N/A 1302                        "input2" "@duration_div.output"          N/A 1303                }   N/A 1304                "time_mod"   N/A 1305                {   N/A 1306                        "operator" "math_float"   N/A 1307                        "apply" "mod"          N/A 1308                        "input1" "@time_div.output"   N/A 1309                        "input2" "1"          N/A 1310                }   N/A 1311                "time_step"   N/A 1312                {   N/A 1313                        "operator" "math_float"   N/A 1314                        "apply" "sub"          N/A 1315                        "input1" "@time_div.output"   N/A 1316                        "input2" "@time_mod.output"   N/A 1317                }   N/A 1318                "step_delta"   N/A 1319                {   N/A 1320                        "operator" "math_delta"   N/A 1321                        "input" "@time_step.output"          N/A 1322                }   N/A 1323                "delta_trigger"   N/A 1324                {   N/A 1325                        "operator" "math_float"   N/A 1326                        "apply" "greater_than"          N/A 1327                        "input1" "@step_delta.output"   N/A 1328                        "input2" "0.1"   N/A 1329                }   N/A 1330    N/A 1331                "play_entry"   N/A 1332                {   N/A 1333                        "operator" "sys_start_entry"   N/A 1334                        "input_start" "@delta_trigger.output"   N/A 1335                        "entry_name" "xray.beep"          N/A 1336                }   N/A 1337        }   N/A 1338    N/A 1339        "update_looping_triggers"   N/A 1340        {   N/A 1341                "elapsed_time_div"   N/A 1342                {   N/A 1343                        "operator" "get_entry_time"   N/A 1344                }   N/A 1345                ///////////// x1   N/A 1346                 "duration_div_x1"   N/A 1347                 {   N/A 1348                         "operator" "math_float"   N/A 1349                         "apply" "div"          N/A 1350                         "input1" "@elapsed_time_div.output_sound_duration"   N/A 1351                         "input2" "4"          N/A 1352                 }   N/A 1353                "time_div_x1"   N/A 1354                {   N/A 1355                        "operator" "math_float"   N/A 1356                        "apply" "div"          N/A 1357                        "input1" "@elapsed_time_div.output_entry_elapsed"   N/A 1358                        "input2" "@duration_div_x1.output"          N/A 1359                }   N/A 1360                "time_mod_x1"   N/A 1361                {   N/A 1362                        "operator" "math_float"   N/A 1363                        "apply" "mod"          N/A 1364                        "input1" "@time_div_x1.output"   N/A 1365                        "input2" "1"          N/A 1366                }   N/A 1367                "time_step_x1"   N/A 1368                {   N/A 1369                        "operator" "math_float"   N/A 1370                        "apply" "sub"          N/A 1371                        "input1" "@time_div_x1.output"   N/A 1372                        "input2" "@time_mod_x1.output"   N/A 1373                }   N/A 1374                "step_delta_x1"   N/A 1375                {   N/A 1376                        "operator" "math_delta"   N/A 1377                        "input" "@time_step_x1.output"          N/A 1378                }   N/A 1379                "delta_trigger_x1"   N/A 1380                {   N/A 1381                        "operator" "math_float"   N/A 1382                        "apply" "greater_than"          N/A 1383                        "input1" "@step_delta_x1.output"   N/A 1384                        "input2" "0.1"   N/A 1385                }   N/A 1386    N/A 1387                "play_entry_x1"   N/A 1388                {   N/A 1389                        "operator" "sys_start_entry"   N/A 1390                        "input_start" "@delta_trigger_x1.output"   N/A 1391                        "entry_name" "xray.beep"          N/A 1392                }   N/A 1393    N/A 1394                ///////////// x2   N/A 1395                 "duration_div_x2"   N/A 1396                 {   N/A 1397                         "operator" "math_float"   N/A 1398                         "apply" "div"          N/A 1399                         "input1" "@elapsed_time_div.output_sound_duration"   N/A 1400                         "input2" "4"          N/A 1401                 }   N/A 1402                "time_div_x2"   N/A 1403                {   N/A 1404                        "operator" "math_float"   N/A 1405                        "apply" "div"          N/A 1406                        "input1" "@elapsed_time_div.output_entry_elapsed"   N/A 1407                        "input2" "@duration_div_x2.output"          N/A 1408                }   N/A 1409                "time_mod_x2"   N/A 1410                {   N/A 1411                        "operator" "math_float"   N/A 1412                        "apply" "mod"          N/A 1413                        "input1" "@time_div_x2.output"   N/A 1414                        "input2" "1"          N/A 1415                }   N/A 1416                "time_step_x2"   N/A 1417                {   N/A 1418                        "operator" "math_float"   N/A 1419                        "apply" "sub"          N/A 1420                        "input1" "@time_div_x2.output"   N/A 1421                        "input2" "@time_mod_x2.output"   N/A 1422                }   N/A 1423                "step_delta_x2"   N/A 1424                {   N/A 1425                        "operator" "math_delta"   N/A 1426                        "input" "@time_step_x2.output"          N/A 1427                }   N/A 1428                "delta_trigger_x2"   N/A 1429                {   N/A 1430                        "operator" "math_float"   N/A 1431                        "apply" "greater_than"          N/A 1432                        "input1" "@step_delta_x2.output"   N/A 1433                        "input2" "0.1"   N/A 1434                }   N/A 1435    N/A 1436                "play_entry_x2"   N/A 1437                {   N/A 1438                        "operator" "sys_start_entry"   N/A 1439                        "input_start" "@delta_trigger_x2.output"   N/A 1440                        "entry_name" "xray.beep"          N/A 1441                }   N/A 1442        }   N/A 1443    N/A 1444    N/A 1445 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 1446 //   N/A 1447 // MUSIC STACKS   N/A 1448 //   N/A 1449 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 1450        "update_music_stereo"   N/A 1451        {   N/A 1452                "save_restore_output"   N/A 1453                {   N/A 1454                        "operator" "sys_output"   N/A 1455                        "execute_once" "true"   N/A 1456                        "input_float" "1.0"   N/A 1457                        "output" "save_restore"   N/A 1458                }   N/A 1459                "elapsed_time"   N/A 1460                {   N/A 1461                        "operator" "get_entry_time"   N/A 1462                }   N/A 1463                "source_info"   N/A 1464                {   N/A 1465                        "operator" "get_source_info"   N/A 1466                        // "source"   "entity"   N/A 1467                        "source"   "emitter"   N/A 1468                }   N/A 1469                "mixer"   N/A 1470                {   N/A 1471                        "operator" "get_soundmixer"   N/A 1472                        "mixgroup" "Music"   N/A 1473                }   N/A 1474                "snd_gain_convar"   N/A 1475                {   N/A 1476                        "operator" "get_convar"   N/A 1477                        "convar" "snd_gain"   N/A 1478                }   N/A 1479                "snd_musicvolume_convar"   N/A 1480                {   N/A 1481                        "operator" "get_convar"   N/A 1482                        "convar" "snd_musicvolume"   N/A 1483                }   N/A 1484                "dashboard"   N/A 1485                {   N/A 1486                        "operator" "get_dashboard"   N/A 1487                }   N/A 1488                "convar_total"   N/A 1489                {   N/A 1490                        "operator" "math_float"   N/A 1491                        "apply" "mult"          N/A 1492                        "input1" "@snd_musicvolume_convar.output"   N/A 1493                        "input2" "@snd_gain_convar.output"   N/A 1494                }   N/A 1495                "dashboard_total"   N/A 1496                {   N/A 1497                        "operator" "math_float"   N/A 1498                        "apply" "mult"          N/A 1499                        "input1" "@convar_total.output"   N/A 1500                        "input2" "@dashboard.output"   N/A 1501                }   N/A 1502                "volume_fade_in"   N/A 1503                {   N/A 1504                        "operator" "math_remap_float"   N/A 1505                        "input" "@elapsed_time.output_entry_elapsed"   N/A 1506                        "input_min" "0.0"   N/A 1507                        "input_max" "0.0"   N/A 1508                        "input_map_min" "0.0"   N/A 1509                        "input_map_max" "1.0"   N/A 1510                        "default_to_max" "true"          N/A 1511                }   N/A 1512                "volume_fade_initial"   N/A 1513                {   N/A 1514                        "input_execute" "0"   N/A 1515                        "operator" "math_remap_float"   N/A 1516                        "input" "@elapsed_time.output_entry_elapsed"   N/A 1517                        "input_min" "0.0"   N/A 1518                        "input_max" "0.0"   N/A 1519                        "input_map_min" "0.0"   N/A 1520                        "input_map_max" "1.0"   N/A 1521                        "default_to_max" "false"          N/A 1522                }   N/A 1523                "volume_invert_initial"   N/A 1524                {   N/A 1525                        "operator" "math_float"   N/A 1526                        "apply"        "sub"   N/A 1527                        "input1" "1.0"   N/A 1528                        "input2" "@volume_fade_initial.output"   N/A 1529                }   N/A 1530                "volume_lfo_time_scale"   N/A 1531                {   N/A 1532                        "operator" "math_float"   N/A 1533                        "apply" "mult"   N/A 1534                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 1535                        "input2" "0.0"          N/A 1536                }   N/A 1537                "volume_lfo"   N/A 1538                {   N/A 1539                        "operator" "math_func1"   N/A 1540                        "function" "cos"   N/A 1541                        "normalize_trig" "true"          N/A 1542                        "input1" "@volume_lfo_time_scale.output"   N/A 1543                }   N/A 1544                "volume_lfo_scale"   N/A 1545                {   N/A 1546                        "operator" "math_float"   N/A 1547                        "apply"        "invert_scale"   N/A 1548                        "input1" "@volume_lfo.output"   N/A 1549                        "input2" "0.0"   N/A 1550                }   N/A 1551    N/A 1552                "volume_fade_out"   N/A 1553                {   N/A 1554                        "operator" "math_remap_float"   N/A 1555                        "input" "@elapsed_time.output_stop_elapsed"   N/A 1556                        "input_min" "0.0"   N/A 1557                        "input_max" "0.0"   N/A 1558                        "input_map_min" "0.0"   N/A 1559                        "input_map_max" "1.0"   N/A 1560                        "default_to_max" "false"          N/A 1561                }   N/A 1562                "volume_invert_fadeout"   N/A 1563                {   N/A 1564                        "operator" "math_float"   N/A 1565                        "apply"        "sub"   N/A 1566                        "input1" "1.0"   N/A 1567                        "input2" "@volume_fade_out.output"   N/A 1568                }   N/A 1569                "volume_apply_fade_in"   N/A 1570                {   N/A 1571                        "operator" "math_float"   N/A 1572                        "apply"        "mult"   N/A 1573                        "input1" "@volume_fade_in.output"   N/A 1574                        "input2" "@dashboard_total.output"   N/A 1575                }   N/A 1576                "volume_apply_fade_initial"   N/A 1577                {   N/A 1578                        "operator" "math_float"   N/A 1579                        "apply"        "mult"   N/A 1580                        "input1" "@volume_invert_initial.output"   N/A 1581                        "input2" "@volume_apply_fade_in.output"   N/A 1582                }   N/A 1583                "volume_apply_lfo"   N/A 1584                {   N/A 1585                        "operator" "math_float"   N/A 1586                        "apply"        "mult"   N/A 1587                        "input1" "@volume_apply_fade_initial.output"   N/A 1588                        "input2" "@volume_lfo_scale.output"   N/A 1589                }   N/A 1590                "volume_apply_fade_out"   N/A 1591                {   N/A 1592                        "operator" "math_float"   N/A 1593                        "apply"        "mult"   N/A 1594                        "input1" "@volume_apply_lfo.output"   N/A 1595                        "input2" "@volume_invert_fadeout.output"   N/A 1596                }   N/A 1597                "volume_apply_mixer"   N/A 1598                {   N/A 1599                        "operator" "math_float"   N/A 1600                        "apply" "mult"          N/A 1601                        "input1" "@mixer.output_volume"   N/A 1602                        "input2" "@volume_apply_fade_out.output"          N/A 1603                }   N/A 1604                "volume_apply_adjust"   N/A 1605                {   N/A 1606                        "operator" "math_float"   N/A 1607                        "apply" "mult"          N/A 1608                        "input1" "1.0"   N/A 1609                        "input2" "@volume_apply_mixer.output"          N/A 1610                }   N/A 1611                "speaker_volume"   N/A 1612                {   N/A 1613                        "operator" "math_float"   N/A 1614                        "apply" "mult"          N/A 1615                        "input1" "@source_info.output_volume"   N/A 1616                        "input2" "@volume_apply_adjust.output"   N/A 1617                }   N/A 1618    N/A 1619                "speakers_limit"   N/A 1620                {   N/A 1621                        "operator"      "math_speakers"   N/A 1622                        "apply"               "mult"   N/A 1623                        "left_front"   "1.0"          N/A 1624                        "right_front"  "1.0"          N/A 1625                        "center"       "0.0"          N/A 1626                        "lfe"          "0.0"          N/A 1627                        "left_rear"    "0.8"   N/A 1628                        "right_rear"   "0.8"          N/A 1629    N/A 1630                        "input2[*]" "@speaker_volume.output"                  N/A 1631                }   N/A 1632    N/A 1633                "speakers_output"   N/A 1634                {   N/A 1635                        "operator" "sys_output"   N/A 1636                        "input_speakers" "@speakers_limit.output"   N/A 1637                        "output" "speakers"   N/A 1638                }   N/A 1639                "output_mixlayer_trigger"   N/A 1640                {   N/A 1641                        "operator" "sys_output"   N/A 1642                        "input_float" "1"   N/A 1643                        "output" "mixlayer_trigger"   N/A 1644                }   N/A 1645                "stoptime_elapsed_trigger"   N/A 1646                {   N/A 1647                        "operator" "math_float"   N/A 1648                        "apply" "greater_than"          N/A 1649                        "input1" "@volume_invert_fadeout.output"   N/A 1650                        "input2" "0.0"   N/A 1651                }   N/A 1652                "stop_hold_output"   N/A 1653                {   N/A 1654                        "operator" "sys_output"   N/A 1655                        "output"   "stop_hold"   N/A 1656                        "input_float" "@stoptime_elapsed_trigger.output"          N/A 1657                }   N/A 1658        }          N/A 1659    N/A 1660        "update_music_spatial"   N/A 1661        {   N/A 1662                "save_restore_output"   N/A 1663                {   N/A 1664                        "operator" "sys_output"   N/A 1665                        "execute_once" "true"   N/A 1666                        "input_float" "1.0"   N/A 1667                        "output" "save_restore"   N/A 1668                }   N/A 1669    N/A 1670                //////////////////////   N/A 1671                // POSITION   N/A 1672                "source_info"   N/A 1673                {   N/A 1674                        "operator" "get_source_info"   N/A 1675                        // "source"   "entity"   N/A 1676                        "source"   "emitter"   N/A 1677                }   N/A 1678    N/A 1679                "elapsed_time"   N/A 1680                {   N/A 1681                        "operator" "get_entry_time"   N/A 1682                }   N/A 1683    N/A 1684                "position_array"   N/A 1685                {   N/A 1686                        "operator" "util_pos_vec8"   N/A 1687    N/A 1688                        "input_entry_count" "1"   N/A 1689                        "input_index" "0"          N/A 1690                        "input_position_0" "@source_info.output_position"   N/A 1691    N/A 1692                }   N/A 1693    N/A 1694        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 1695                "source_distance"   N/A 1696                {   N/A 1697                        "operator" "calc_source_distance"   N/A 1698                        "input_position"   "@position_array.output_position"   N/A 1699                }   N/A 1700    N/A 1701                ////////////////////   N/A 1702                // calc   N/A 1703                "mixer"   N/A 1704                {   N/A 1705                        "operator" "get_soundmixer"   N/A 1706                        "mixgroup" "Music"   N/A 1707                }   N/A 1708    N/A 1709                // NOTE: uses player data, ie: SS, return least occluded value   N/A 1710                "occlusion"   N/A 1711                {   N/A 1712                        "operator" "calc_occlusion"   N/A 1713                        "input_position"   "@position_array.output_position"   N/A 1714                }   N/A 1715    N/A 1716                "snd_gain_convar"   N/A 1717                {   N/A 1718                        "operator" "get_convar"   N/A 1719                        "convar" "snd_gain"   N/A 1720                }   N/A 1721                "snd_op_test_convar"   N/A 1722                {   N/A 1723                        "operator" "get_convar"   N/A 1724                        "convar" "snd_op_test_convar"   N/A 1725                }   N/A 1726                "snd_musicvolume_convar"   N/A 1727                {   N/A 1728                        "operator" "get_convar"   N/A 1729                        "convar" "snd_musicvolume"   N/A 1730                }   N/A 1731    N/A 1732                "dashboard"   N/A 1733                {   N/A 1734                        "operator" "get_dashboard"   N/A 1735                }   N/A 1736    N/A 1737                //////////////////////   N/A 1738                // LEVEL   N/A 1739                "level_apply_mixer"   N/A 1740                {   N/A 1741                        "operator" "math_float"   N/A 1742                        "apply" "mult"          N/A 1743                        "input1" "@mixer.output_level"   N/A 1744                        "input2" "@source_info.output_level"   N/A 1745                }   N/A 1746    N/A 1747                /////////////////////   N/A 1748                // VOLUME   N/A 1749    N/A 1750                // NOTE: distance has precalculated minimum distance of the ss players          N/A 1751    N/A 1752                "volume_falloff"   N/A 1753                {   N/A 1754                        "operator" "calc_falloff"   N/A 1755                        "input_distance"  "@source_distance.output"   N/A 1756                        "input_level"          "@level_apply_mixer.output"   N/A 1757                }   N/A 1758    N/A 1759                "volume_fade_in"   N/A 1760                {   N/A 1761                        "operator" "math_remap_float"   N/A 1762                        "input" "@elapsed_time.output_entry_elapsed"   N/A 1763                        "input_min" "0.0"   N/A 1764                        "input_max" "0.0"   N/A 1765                        "input_map_min" "0.0"   N/A 1766                        "input_map_max" "@source_info.output_volume"   N/A 1767                }   N/A 1768    N/A 1769                "volume_clamp_fade_in"   N/A 1770                {   N/A 1771                        "operator" "math_float"   N/A 1772                        "apply"        "min"   N/A 1773                        "input1" "@volume_fade_in.output"   N/A 1774                        "input2" "1.0"   N/A 1775                }   N/A 1776                "volume_fade_initial"   N/A 1777                {   N/A 1778                        "input_execute" "0"   N/A 1779                        "operator" "math_remap_float"   N/A 1780                        "input" "@elapsed_time.output_entry_elapsed"   N/A 1781                        "input_min" "0.0"   N/A 1782                        "input_max" "0.0"   N/A 1783                        "input_map_min" "0.0"   N/A 1784                        "input_map_max" "1.0"   N/A 1785                        "default_to_max" "false"          N/A 1786                }   N/A 1787                "volume_invert_initial"   N/A 1788                {   N/A 1789                        "operator" "math_float"   N/A 1790                        "apply"        "sub"   N/A 1791                        "input1" "1.0"   N/A 1792                        "input2" "@volume_fade_initial.output"   N/A 1793                }   N/A 1794                "volume_apply_fade_initial"   N/A 1795                {   N/A 1796                        "operator" "math_float"   N/A 1797                        "apply"        "mult"   N/A 1798                        "input1" "@volume_invert_initial.output"   N/A 1799                        "input2" "@volume_clamp_fade_in.output"   N/A 1800                }   N/A 1801    N/A 1802                "volume_fade_out"   N/A 1803                {   N/A 1804                        "operator" "math_remap_float"   N/A 1805                        "input" "@elapsed_time.output_stop_elapsed"   N/A 1806                        "input_min" "0.0"   N/A 1807                        "input_max" "0.0"   N/A 1808                        "input_map_min" "0.0"   N/A 1809                        "input_map_max" "1.0"   N/A 1810                        "default_to_max" "false"          N/A 1811                }   N/A 1812                "volume_invert_fadeout"   N/A 1813                {   N/A 1814                        "operator" "math_float"   N/A 1815                        "apply"        "sub"   N/A 1816                        "input1" "1.0"   N/A 1817                        "input2" "@volume_fade_out.output"   N/A 1818                }   N/A 1819    N/A 1820                "volume_apply_fade_out"   N/A 1821                {   N/A 1822                        "operator" "math_float"   N/A 1823                        "apply"        "mult"   N/A 1824                        "input1" "@volume_apply_fade_initial.output"   N/A 1825                        "input2" "@volume_invert_fadeout.output"   N/A 1826                }   N/A 1827    N/A 1828                "volume_apply_falloff"   N/A 1829                {   N/A 1830                        "operator" "math_float"   N/A 1831                        "apply"        "mult"   N/A 1832                        "input1" "@volume_apply_fade_out.output"   N/A 1833                        "input2" "@volume_falloff.output"   N/A 1834                }   N/A 1835    N/A 1836                "volume_apply_mixer"   N/A 1837                {   N/A 1838                        "operator" "math_float"   N/A 1839                        "apply" "mult"          N/A 1840                        "input1" "@mixer.output_volume"   N/A 1841                        "input2" "@volume_apply_falloff.output"          N/A 1842                }   N/A 1843    N/A 1844                "volume_apply_snd_gain_convar"   N/A 1845                {   N/A 1846                        "operator" "math_float"   N/A 1847                        "apply" "mult"          N/A 1848                        "input1" "@snd_gain_convar.output"   N/A 1849                        "input2" "@volume_apply_mixer.output"          N/A 1850                }   N/A 1851    N/A 1852                "volume_apply_musicvolume_convar"   N/A 1853                {   N/A 1854                        "operator" "math_float"   N/A 1855                        "apply" "mult"          N/A 1856                        "input1" "@snd_musicvolume_convar.output"   N/A 1857                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 1858                }   N/A 1859    N/A 1860                "volume_apply_occlusion"   N/A 1861                {   N/A 1862                        "operator" "math_float"   N/A 1863                        "apply"        "mult"   N/A 1864                        "input1" "@volume_apply_musicvolume_convar.output"   N/A 1865                        "input2" "@occlusion.output"   N/A 1866                }   N/A 1867    N/A 1868                "volume_apply_dashboard"   N/A 1869                {   N/A 1870                        "operator" "math_float"   N/A 1871                        "apply" "mult"          N/A 1872                        "input1" "@volume_apply_occlusion.output"   N/A 1873                        "input2" "@dashboard.output"   N/A 1874                }   N/A 1875    N/A 1876    N/A 1877                // set dsp just to be sure   N/A 1878                "dsp_output"   N/A 1879                {   N/A 1880                        "operator" "sys_output"   N/A 1881                        // "input_float" "@dsp_apply_distant.output"   N/A 1882                        "input_float" "0"   N/A 1883                        "output" "dsp"   N/A 1884                }   N/A 1885    N/A 1886                /////////////////////   N/A 1887                // SPEAKERS   N/A 1888    N/A 1889                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 1890                "speakers_spatialize"   N/A 1891                {   N/A 1892                        "operator" "calc_spatialize_speakers"   N/A 1893                        "input_rear_stereo_scale" "1.0"          N/A 1894                        "input_radius"  "300"   N/A 1895                        "input_distance"  "@source_distance.output"   N/A 1896                        "input_position"   "@position_array.output_position"   N/A 1897                }   N/A 1898    N/A 1899                "speakers_volume"   N/A 1900                {   N/A 1901                        "operator"     "math_speakers"   N/A 1902                        "apply"               "mult"   N/A 1903                        "input1"       "@speakers_spatialize.output"   N/A 1904                        "input2[*]"           "@volume_apply_dashboard.output"   N/A 1905                }   N/A 1906    N/A 1907                "speakers_limit"   N/A 1908                {   N/A 1909                        "operator"      "math_speakers"   N/A 1910                        "apply"               "mult"   N/A 1911    N/A 1912                        "left_front"   "1.0"          N/A 1913                        "right_front"  "1.0"          N/A 1914                        "center"       "1.0"          N/A 1915                        "lfe"          "1.0"          N/A 1916                        "left_rear"    "1.0"   N/A 1917                        "right_rear"   "1.0"          N/A 1918    N/A 1919                        "input2" "@speakers_volume.output"   N/A 1920    N/A 1921                }   N/A 1922    N/A 1923                "speakers_multi_origin"   N/A 1924                {   N/A 1925                        "operator"    "iterate_merge_speakers"   N/A 1926    N/A 1927                        "input_max_iterations" "@position_array.output_max_index"   N/A 1928            "iterate_operator" "position_array"   N/A 1929                        "input" "@speakers_limit.output"   N/A 1930    N/A 1931                }   N/A 1932                // connecting output after operator has been created   N/A 1933                "position_array"   N/A 1934                {   N/A 1935                        "input_index" "@speakers_multi_origin.output_index"          N/A 1936                }   N/A 1937    N/A 1938                "speakers_output"   N/A 1939                {   N/A 1940                        "operator" "sys_output"   N/A 1941                        "input_speakers" "@speakers_multi_origin.output"   N/A 1942                        "output" "speakers"   N/A 1943                }   N/A 1944    N/A 1945                // stop deletion until after fadeout   N/A 1946                "stoptime_elapsed_trigger"   N/A 1947                {   N/A 1948                        "operator" "math_float"   N/A 1949                        "apply" "greater_than"          N/A 1950                        "input1" "@volume_invert_fadeout.output"   N/A 1951                        "input2" "0.0"   N/A 1952                }   N/A 1953                "stop_hold_output"   N/A 1954                {   N/A 1955                        "operator" "sys_output"   N/A 1956                        "output"   "stop_hold"   N/A 1957                        "input_float" "@stoptime_elapsed_trigger.output"          N/A 1958                }   N/A 1959        }          N/A 1960    N/A 1961    N/A 1962    N/A 1963        "update_music_spatial_stop_dist"   N/A 1964        {   N/A 1965                "import_stack"         "update_music_spatial"   N/A 1966    N/A 1967                "import_stack"         "update_stop_at_distance"   N/A 1968                "usad_stop_dist"   N/A 1969                {   N/A 1970                        "input1" "@source_distance.output"   N/A 1971                        "input2" "1.0"  // distance beyond which to stop   N/A 1972                }   N/A 1973        }   N/A 1974    N/A 1975        "update_music_spatial_looping_triggers"   N/A 1976        {   N/A 1977                "import_stack"         "update_music_spatial"   N/A 1978                "import_stack" "update_looping_triggers"   N/A 1979        }   N/A 1980    N/A 1981        "update_music_stereo_trigger"   N/A 1982        {   N/A 1983                "import_stack"         "update_music_stereo"   N/A 1984                "import_stack" "update_music_div_trigger"   N/A 1985        }   N/A 1986    N/A 1987    N/A 1988        "p2_update_music_play_tbeam"   N/A 1989        {   N/A 1990                "tb_mixer"   N/A 1991                {   N/A 1992                        "operator" "get_soundmixer"   N/A 1993                        "mixgroup" "testTBin"   N/A 1994                }   N/A 1995 //                 "print_tb_mixer"   N/A 1996 //                 {   N/A 1997 //                         "operator" "util_print_float"   N/A 1998 //                         "input" "@tb_mixer.output_volume"          N/A 1999 //                 }   N/A 2000                "tb_delta"   N/A 2001                {   N/A 2002                        "operator" "math_delta"   N/A 2003                        "input" "@tb_mixer.output_volume"          N/A 2004                }   N/A 2005                "tb_mixer_zero"   N/A 2006                {   N/A 2007                        "operator" "math_float"   N/A 2008                        "apply" "less_than_or_equal"          N/A 2009                        "input1" "@tb_mixer.output_volume"   N/A 2010                        "input2" "0.0"   N/A 2011                }   N/A 2012                "tb_start_trigger"   N/A 2013                {   N/A 2014                        "operator" "math_float"   N/A 2015                        "apply" "less_than"          N/A 2016                        "input1" "@tb_delta.output"   N/A 2017                        "input2" "0.0"   N/A 2018                }   N/A 2019                "tb_start_trigger_test"   N/A 2020                {   N/A 2021                        "operator" "math_float"   N/A 2022                        "apply" "min"          N/A 2023                        "input1" "@tb_start_trigger.output"   N/A 2024                        "input2" "@tb_mixer_zero.output"   N/A 2025                }   N/A 2026 //                 "print_tb_delta"   N/A 2027 //                 {   N/A 2028 //                         "operator" "util_print_float"   N/A 2029 //                         "input" "@tb_delta.output"          N/A 2030 //                 }   N/A 2031    N/A 2032 //                 "print_start_trigger"   N/A 2033 //                 {   N/A 2034 //                         "input_execute" "@tb_start_trigger.output"   N/A 2035 //                         "operator" "util_print_float"   N/A 2036 //                         "input" "@tb_start_trigger_test.output"          N/A 2037 //                 }   N/A 2038                "tb_stop_trigger"   N/A 2039                {   N/A 2040                        "operator" "math_float"   N/A 2041                        "apply" "greater_than"          N/A 2042                        "input1" "@tb_mixer.output_volume"   N/A 2043                        "input2" "0.0"   N/A 2044                }   N/A 2045    N/A 2046                "play_entry"   N/A 2047                {   N/A 2048                        "execute_once" "false"   N/A 2049                        "operator" "sys_start_entry"   N/A 2050                        "input_start" "1"          N/A 2051                        "input_execute" "@tb_start_trigger_test.output"          N/A 2052                        "entry_name" "Default.Null"   N/A 2053                }          N/A 2054                "stop_entry"   N/A 2055                {   N/A 2056                        "input_execute" "@tb_stop_trigger.output"          N/A 2057                        "operator" "sys_stop_entries"   N/A 2058                        "input_max_entries" "0.000000"   N/A 2059                        "match_entity" "false"          N/A 2060                        "match_substring" "false"   N/A 2061                        "match_entry" "Default.Null"   N/A 2062                }   N/A 2063        }   N/A 2064    N/A 2065    N/A 2066        "p2_update_music_play_gel"   N/A 2067        {   N/A 2068                "gel_elapsed_time"   N/A 2069                {   N/A 2070                        "operator" "get_entry_time"   N/A 2071                }   N/A 2072    N/A 2073                "bounce_view_info"   N/A 2074                {   N/A 2075                        "operator" "game_view_info"   N/A 2076                }   N/A 2077                "gel_mixer"   N/A 2078                {   N/A 2079                        "operator" "get_soundmixer"   N/A 2080                        "mixgroup" "testGelBounce"   N/A 2081                }   N/A 2082                "gel_delta"   N/A 2083                {   N/A 2084                        "operator" "math_delta"   N/A 2085                        "input" "@gel_mixer.output_volume"          N/A 2086                }   N/A 2087 //                 "gel_delta_test"   N/A 2088 //                 {   N/A 2089 //                         "operator" "math_float"   N/A 2090 //                         "apply" "less_than"          N/A 2091 //                         "input1" "@gel_delta.output"   N/A 2092 //                         "input2" "0.0"   N/A 2093 //                 }   N/A 2094 //                 "print_delta"   N/A 2095 //                 {   N/A 2096 //                         "input_execute" "@gel_delta_test.output"   N/A 2097 //                         "operator" "util_print_float"   N/A 2098 //                         "input" "@gel_delta.output"          N/A 2099 //                 }   N/A 2100                "gel_mixer_zero"   N/A 2101                {   N/A 2102                        "operator" "math_float"   N/A 2103                        "apply" "less_than_or_equal"          N/A 2104                        "input1" "@gel_mixer.output_volume"   N/A 2105                        "input2" "0.0"   N/A 2106                }   N/A 2107                "gel_start_trigger"   N/A 2108                {   N/A 2109                        "operator" "math_float"   N/A 2110                        "apply" "less_than"          N/A 2111                        "input1" "@gel_delta.output"   N/A 2112                        "input2" "0.0"   N/A 2113                }   N/A 2114                "gel_start_trigger_test"   N/A 2115                {   N/A 2116                        "operator" "math_float"   N/A 2117                        "apply" "min"          N/A 2118                        "input1" "@gel_start_trigger.output"   N/A 2119                        "input2" "@gel_mixer_zero.output"   N/A 2120                }   N/A 2121    N/A 2122 //                 "gel_start_trigger"   N/A 2123 //                 {   N/A 2124 //                         "operator" "math_float"   N/A 2125 //                         "apply" "less_than"          N/A 2126 //                         "input1" "@gel_delta.output"   N/A 2127 //                         "input2" "0.0"   N/A 2128 //                 }   N/A 2129                "gel_stop_trigger"   N/A 2130                {   N/A 2131                        "operator" "math_float"   N/A 2132                        "apply" "less_than"          N/A 2133                        "input1" "@bounce_view_info.output_velocity_vector_z"   N/A 2134                        "input2" "1.0"   N/A 2135                }   N/A 2136                "gel_test_stopped"   N/A 2137                {   N/A 2138                        "operator" "math_float"   N/A 2139                        "apply" "less_than"          N/A 2140                        "input1" "@gel_elapsed_time.output_stop_elapsed"   N/A 2141                        "input2" "0.0"   N/A 2142                }   N/A 2143 //                 "print_gel_test_stopped"   N/A 2144 //                 {   N/A 2145 //                         "input_execute" "@gel_delta_test.output"   N/A 2146 //                         "operator" "util_print_float"   N/A 2147 //                         "input" "@gel_test_stopped.output"   N/A 2148 //                 }   N/A 2149 //                 "print_gel_test_start_trigger"   N/A 2150 //                 {   N/A 2151 //                         "input_execute" "@gel_delta_test.output"   N/A 2152 //                         "operator" "util_print_float"   N/A 2153 //                         "input" "@gel_start_trigger.output"   N/A 2154 //                 }   N/A 2155 //                 "print_gel_test_stop_trigger"   N/A 2156 //                 {   N/A 2157 //                         "input_execute" "@gel_delta_test.output"   N/A 2158 //                         "operator" "util_print_float"   N/A 2159 //                         "input" "@gel_stop_trigger.output"   N/A 2160 //                 }   N/A 2161                "gel_play_entry"   N/A 2162                {   N/A 2163                        "execute_once" "false"   N/A 2164                        "operator" "sys_start_entry"   N/A 2165                        "input_start" "@gel_test_stopped.output"          N/A 2166                        "input_execute" "@gel_start_trigger_test.output"          N/A 2167                        "entry_name" "Default.Null"   N/A 2168                }          N/A 2169                "gel_stop_entry"   N/A 2170                {   N/A 2171                        "input_execute" "@gel_stop_trigger.output"          N/A 2172                        "operator" "sys_stop_entries"   N/A 2173                        "input_max_entries" "0.000000"   N/A 2174                        "match_entity" "false"          N/A 2175                        "match_substring" "false"   N/A 2176                        "match_entry" "Default.Null"   N/A 2177                }   N/A 2178        }   N/A 2179    N/A 2180    N/A 2181        "p2_update_music_play_speed_gel"   N/A 2182        {   N/A 2183                "speed_view_info"   N/A 2184                {   N/A 2185                        "operator" "game_view_info"   N/A 2186                }   N/A 2187    N/A 2188                "speed_velocity_fabs_xy"   N/A 2189                {   N/A 2190                        "operator" "math_func1"   N/A 2191                        "function" "fabs"   N/A 2192                        "input1" "@speed_view_info.output_velocity_xy"   N/A 2193                }          N/A 2194    N/A 2195                "speed_velocity_trigger"   N/A 2196                {   N/A 2197                        "operator" "math_float"   N/A 2198                        "apply" "greater_than"          N/A 2199                        "input1" "@speed_velocity_fabs_xy.output"   N/A 2200                        "input2" "12"   N/A 2201                }   N/A 2202                "speed_delta"   N/A 2203                {   N/A 2204                        "operator" "math_delta"   N/A 2205                        "input" "@speed_velocity_trigger.output"          N/A 2206                }   N/A 2207    N/A 2208                "speed_start_trigger"   N/A 2209                {   N/A 2210                        "operator" "math_float"   N/A 2211                        "apply" "greater_than"          N/A 2212                        "input1" "@speed_delta.output"   N/A 2213                        "input2" "0"   N/A 2214                }   N/A 2215    N/A 2216                "speed_stop_trigger"   N/A 2217                {   N/A 2218                        "operator" "math_float"   N/A 2219                        "apply" "less_than"          N/A 2220                        "input1" "@speed_delta.output"   N/A 2221                        "input2" "0"   N/A 2222                }   N/A 2223    N/A 2224                "speed_play_entry"   N/A 2225                {   N/A 2226                        "execute_once" "false"   N/A 2227                        "operator" "sys_start_entry"   N/A 2228                        "input_start" "1"          N/A 2229                        "input_execute" "@speed_start_trigger.output"          N/A 2230                        "entry_name" "Default.Null"   N/A 2231                }          N/A 2232                "speed_stop_entry"   N/A 2233                {   N/A 2234                        "input_execute" "@speed_stop_trigger.output"          N/A 2235                        "operator" "sys_stop_entries"   N/A 2236                        "input_max_entries" "0.000000"   N/A 2237                        "match_entity" "false"          N/A 2238                        "match_substring" "false"   N/A 2239                        "match_entry" "Default.Null"   N/A 2240                }   N/A 2241        }   N/A 2242    N/A 2243    N/A 2244        "p2_update_music_stereo_bounce"   N/A 2245        {   N/A 2246                "import_stack"         "update_music_stereo"   N/A 2247                "game_view_info"   N/A 2248                {   N/A 2249                        "operator" "game_view_info"   N/A 2250                }   N/A 2251 //                 "volume_bounce"   N/A 2252 //                 {   N/A 2253 //                         "operator" "math_remap_float"   N/A 2254 //                         "input" "@game_view_info.output_stop_elapsed"   N/A 2255 //                         "input_min" "-80.0"   N/A 2256 //                         "input_max" "100.0"   N/A 2257 //                         "input_map_min" "0.0"   N/A 2258 //                         "input_map_max" "1.0"   N/A 2259 //                         "default_to_max" "false"          N/A 2260 //                 }   N/A 2261    N/A 2262                "abs_velocity_vector_z"   N/A 2263                {   N/A 2264                        "operator" "math_func1"   N/A 2265                        "function"        "fabs"   N/A 2266                        "input1" "@game_view_info.output_velocity_vector_z"   N/A 2267                }   N/A 2268                "volume_bounce"   N/A 2269                {   N/A 2270                        "operator" "math_remap_float"   N/A 2271                        "input" "@abs_velocity_vector_z.output"   N/A 2272                        "input_min" "0.0"   N/A 2273                        "input_max" "100.0"   N/A 2274                        "input_map_min" "0.1"   N/A 2275                        "input_map_max" "1.0"   N/A 2276                        "default_to_max" "false"          N/A 2277                }   N/A 2278                "volume_apply_adjust"   N/A 2279                {   N/A 2280                        "input1" "@volume_bounce.output"   N/A 2281                }   N/A 2282    N/A 2283        }   N/A 2284    N/A 2285        "p2_update_music_spatial_portals"   N/A 2286        {   N/A 2287                "import_stack"         "update_music_spatial"   N/A 2288    N/A 2289                //         set up so it iterates over portalized sounds   N/A 2290                "speakers_multi_origin"   N/A 2291                {   N/A 2292                        "input_max_iterations" "@source_info.output_source_count"   N/A 2293            "iterate_operator" "source_info"   N/A 2294                }   N/A 2295                // connecting output after operator has been created   N/A 2296                "source_info"   N/A 2297                {   N/A 2298                        "input_source_index" "@speakers_multi_origin.output_index"          N/A 2299                }   N/A 2300                // turn off position array indexing   N/A 2301                "position_array"   N/A 2302                {   N/A 2303                        "input_index" "0"          N/A 2304                }   N/A 2305        }   N/A 2306    N/A 2307    N/A 2308 /// DLC2   N/A 2309    N/A 2310        "DLC2_update_base_music_stereo"   N/A 2311        {   N/A 2312                "import_stack"         "update_music_stereo"   N/A 2313    N/A 2314                "volume_fade_in"   N/A 2315                {   N/A 2316                        "input_max" "3.0"   N/A 2317                }   N/A 2318                "volume_fade_out"   N/A 2319                {   N/A 2320                        "input_max" "2.1"   N/A 2321                }   N/A 2322    N/A 2323 //                 "import_stack" "p2_update_music_play_speed_gel"   N/A 2324                "import_stack"                 "p2_update_music_play_gel"                  N/A 2325                "import_stack" "p2_update_music_play_tbeam"   N/A 2326    N/A 2327        }   N/A 2328    N/A 2329    N/A 2330    N/A 2331 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 2332 //   N/A 2333 // STANDARD STACKS   N/A 2334 //   N/A 2335 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 2336        "update_simple_quad"   N/A 2337        {   N/A 2338                "save_restore_output"   N/A 2339                {   N/A 2340                        "operator" "sys_output"   N/A 2341                        "execute_once" "true"          N/A 2342                        "input_float" "1.0"   N/A 2343                        "output" "save_restore"   N/A 2344                }   N/A 2345                "mixer"   N/A 2346                {   N/A 2347                        "operator" "get_soundmixer"   N/A 2348                        "mixgroup" "All"   N/A 2349                }   N/A 2350                "snd_gain_convar"   N/A 2351                {   N/A 2352                        "operator" "get_convar"   N/A 2353                        "convar" "snd_gain"   N/A 2354                }   N/A 2355                "volume_apply_mixer"   N/A 2356                {   N/A 2357                        "operator" "math_float"   N/A 2358                        "apply" "mult"          N/A 2359                        "input1" "@mixer.output_volume"   N/A 2360                        "input2" "@snd_gain_convar.output"   N/A 2361                }   N/A 2362                "speaker_volume"   N/A 2363                {   N/A 2364                        "operator" "math_float"   N/A 2365                        "apply" "mult"          N/A 2366                        "input1" "1"   N/A 2367                        "input2" "@volume_apply_mixer.output"   N/A 2368                }   N/A 2369    N/A 2370                "speakers_limit"   N/A 2371                {   N/A 2372                        "operator"      "math_speakers"   N/A 2373                        "apply"               "mult"   N/A 2374                        "left_front"   "1.0"          N/A 2375                        "right_front"  "1.0"          N/A 2376                        "center"       "0.0"          N/A 2377                        "lfe"          "0.0"          N/A 2378                        "left_rear"    "1.0"   N/A 2379                        "right_rear"   "1.0"          N/A 2380    N/A 2381                        "input2[*]" "@speaker_volume.output"                  N/A 2382                }   N/A 2383    N/A 2384                "speakers_output"   N/A 2385                {   N/A 2386                        "operator" "sys_output"   N/A 2387                        "input_speakers" "@speakers_limit.output"   N/A 2388                        "output" "speakers"   N/A 2389                }   N/A 2390                "output_mixlayer_trigger"   N/A 2391                {   N/A 2392                        "execute_once" "1"   N/A 2393                        "operator" "sys_output"   N/A 2394                        "input_float" "1"   N/A 2395                        "output" "mixlayer_trigger"   N/A 2396                }   N/A 2397        }          N/A 2398    N/A 2399        "update_default"   N/A 2400        {   N/A 2401                //////////////////////   N/A 2402                // POSITION   N/A 2403                "source_info"   N/A 2404                {   N/A 2405                        "operator" "get_source_info"   N/A 2406                        // "source"   "entity"   N/A 2407                        "source"   "emitter"   N/A 2408                }   N/A 2409    N/A 2410        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 2411                "source_distance"   N/A 2412                {   N/A 2413                        "operator" "calc_source_distance"   N/A 2414                        "input_position"   "@source_info.output_position"   N/A 2415                }   N/A 2416    N/A 2417                ////////////////////   N/A 2418                // calc   N/A 2419                "mixer"   N/A 2420                {   N/A 2421                        "operator" "get_soundmixer"   N/A 2422                        "mixgroup" "All"   N/A 2423                }   N/A 2424    N/A 2425                // NOTE: uses player data, ie: SS, return least occluded value   N/A 2426                "occlusion"   N/A 2427                {   N/A 2428                        "operator" "calc_occlusion"   N/A 2429                        "input_position" "@source_info.output_position"          N/A 2430                }   N/A 2431    N/A 2432                "snd_gain_convar"   N/A 2433                {   N/A 2434                        "operator" "get_convar"   N/A 2435                        "convar" "snd_gain"   N/A 2436                }   N/A 2437                "snd_op_test_convar"   N/A 2438                {   N/A 2439                        "operator" "get_convar"   N/A 2440                        "convar" "snd_op_test_convar"   N/A 2441                }   N/A 2442    N/A 2443                //////////////////////   N/A 2444                // LEVEL   N/A 2445                "level_apply_mixer"   N/A 2446                {   N/A 2447                        "operator" "math_float"   N/A 2448                        "apply" "mult"          N/A 2449                        "input1" "@mixer.output_level"   N/A 2450                        "input2" "@source_info.output_level"   N/A 2451                }   N/A 2452    N/A 2453                /////////////////////   N/A 2454                // VOLUME   N/A 2455    N/A 2456                // NOTE: distance has precalculated minimum distance of the ss players                          N/A 2457                "volume_falloff"   N/A 2458                {   N/A 2459                        "operator" "calc_falloff"   N/A 2460                        "input_distance"  "@source_distance.output"   N/A 2461                        "input_level"          "@level_apply_mixer.output"   N/A 2462                }   N/A 2463                "volume_apply_falloff"   N/A 2464                {   N/A 2465                        "operator" "math_float"   N/A 2466                        "apply"        "mult"   N/A 2467                        "input1" "@source_info.output_volume"   N/A 2468                        "input2" "@volume_falloff.output"   N/A 2469                }   N/A 2470                "volume_apply_mixer"   N/A 2471                {   N/A 2472                        "operator" "math_float"   N/A 2473                        "apply" "mult"          N/A 2474                        "input1" "@mixer.output_volume"   N/A 2475                        "input2" "@volume_apply_falloff.output"          N/A 2476                }   N/A 2477                "volume_apply_snd_gain_convar"   N/A 2478                {   N/A 2479                        "operator" "math_float"   N/A 2480                        "apply" "mult"          N/A 2481                        "input1" "@snd_gain_convar.output"   N/A 2482                        "input2" "@volume_apply_mixer.output"          N/A 2483                }   N/A 2484                "volume_apply_test_convar"   N/A 2485                {   N/A 2486                        "operator" "math_float"   N/A 2487                        "apply" "mult"          N/A 2488                        "input1" "1.0"   N/A 2489                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 2490                }   N/A 2491    N/A 2492                "volume_apply_occlusion"   N/A 2493                {   N/A 2494                        "operator" "math_float"   N/A 2495                        "apply"        "mult"   N/A 2496                        "input1" "@volume_apply_test_convar.output"   N/A 2497                        "input2" "@occlusion.output"   N/A 2498                }   N/A 2499                // this calculates the loudest volume of the ss clients   N/A 2500                // NOT NEEDED ALL SS OPS SELF-CONTAINGED   N/A 2501                // "volume_acc_ss_max"   N/A 2502                // {   N/A 2503                        // "operator" "op_accumulate_ss_float"   N/A 2504                        // "input" "volume_apply_occlusion.output"   N/A 2505                        // "iterate_operator" "occlusion"   N/A 2506                // }          N/A 2507    N/A 2508                // shouldn't this be volume level? N/A 2509               "output_mixlayer_trigger"   N/A 2510                {   N/A 2511                        "execute_once" "1"   N/A 2512                        "operator" "sys_output"   N/A 2513                        "input_float" "1"   N/A 2514                        "output" "mixlayer_trigger"   N/A 2515                }   N/A 2516                ///////////////////   N/A 2517                // PITCH   N/A 2518                "pitch_output"   N/A 2519                {   N/A 2520                        "operator" "sys_output"   N/A 2521                        "output"   "pitch"   N/A 2522                        "input_float" "@source_info.output_pitch"          N/A 2523                }   N/A 2524    N/A 2525                ///////////////////   N/A 2526                // DSP   N/A 2527                "dsp_emitter"   N/A 2528                {   N/A 2529                        "operator" "math_float"   N/A 2530                        "apply"              "set"   N/A 2531                        "input1" "1.0"          N/A 2532                }   N/A 2533                "dsp_apply_mixer"   N/A 2534                {   N/A 2535                        "operator" "math_float"   N/A 2536                        "apply" "mult"          N/A 2537                        "input1" "@mixer.output_dsp"   N/A 2538                        "input2" "@dsp_emitter.output"          N/A 2539                }   N/A 2540                "dsp_distantDSP"   N/A 2541                {   N/A 2542                        "operator" "calc_distant_dsp"   N/A 2543                        "input_distance"  "@source_distance.output"   N/A 2544                        "input_level"          "@level_apply_mixer.output"   N/A 2545                }   N/A 2546                "dsp_apply_distant"   N/A 2547                {   N/A 2548                        "operator" "math_float"   N/A 2549                        "apply"              "mult"   N/A 2550                        "input1" "@dsp_distantDSP.output"   N/A 2551                        "input2" "@dsp_apply_mixer.output"                          N/A 2552                }   N/A 2553                "dsp_output"   N/A 2554                {   N/A 2555                        "operator" "sys_output"   N/A 2556                        "input_float" "@dsp_apply_distant.output"   N/A 2557                        "output" "dsp"   N/A 2558                }   N/A 2559    N/A 2560                /////////////////////   N/A 2561                // SPEAKERS   N/A 2562    N/A 2563                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 2564                "speakers_spatialize"   N/A 2565                {   N/A 2566                        "operator" "calc_spatialize_speakers"   N/A 2567                        "input_radius"  "300"   N/A 2568                        "input_distance"  "@source_distance.output"   N/A 2569                        "input_position"  "@source_info.output_position"   N/A 2570                }   N/A 2571    N/A 2572                "speakers_apply_volume"   N/A 2573                {   N/A 2574                        "operator"     "math_speakers"   N/A 2575                        "apply"               "mult"   N/A 2576                        "input1"       "@speakers_spatialize.output"   N/A 2577                        "input2[*]"           "@volume_apply_occlusion.output"   N/A 2578                }   N/A 2579    N/A 2580                "speakers_limit"   N/A 2581                {   N/A 2582                        "operator"      "math_speakers"   N/A 2583                        "apply"               "mult"   N/A 2584    N/A 2585                        "left_front"   "1.0"          N/A 2586                        "right_front"  "1.0"          N/A 2587                        "center"       "1.0"          N/A 2588                        "lfe"          "1.0"          N/A 2589                        "left_rear"    "1.0"   N/A 2590                        "right_rear"   "1.0"          N/A 2591    N/A 2592                        "input2"           "@speakers_apply_volume.output"   N/A 2593                }   N/A 2594    N/A 2595                "speakers_output"   N/A 2596                {   N/A 2597                        "operator" "sys_output"   N/A 2598                        "input_speakers" "@speakers_limit.output"   N/A 2599                        "output" "speakers"   N/A 2600                }   N/A 2601        }          N/A 2602    N/A 2603        "p2_update_default"   N/A 2604        {   N/A 2605                "save_restore_output"   N/A 2606                {   N/A 2607                        "operator" "sys_output"   N/A 2608                        "execute_once" "true"   N/A 2609                        "input_float" "1.0"   N/A 2610                        "output" "save_restore"   N/A 2611                }   N/A 2612                //////////////////////   N/A 2613                // POSITION   N/A 2614                "source_info"   N/A 2615                {   N/A 2616                        "operator" "get_source_info"   N/A 2617                        // "source"   "entity"   N/A 2618                        "source"   "emitter"   N/A 2619                }   N/A 2620    N/A 2621                "elapsed_time"   N/A 2622                {   N/A 2623                        "operator" "get_entry_time"   N/A 2624                }   N/A 2625    N/A 2626        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 2627                "source_distance"   N/A 2628                {   N/A 2629                        "operator" "calc_source_distance"   N/A 2630                        "input_position"   "@source_info.output_position"   N/A 2631                }   N/A 2632    N/A 2633                ////////////////////   N/A 2634                // calc   N/A 2635                "mixer"   N/A 2636                {   N/A 2637                        "operator" "get_soundmixer"   N/A 2638                        "mixgroup" "All"   N/A 2639                }   N/A 2640    N/A 2641                // NOTE: uses player data, ie: SS, return least occluded value   N/A 2642                "occlusion"   N/A 2643                {   N/A 2644                        "operator" "calc_occlusion"   N/A 2645                        "input_position" "@source_info.output_position"          N/A 2646                }   N/A 2647    N/A 2648                "snd_gain_convar"   N/A 2649                {   N/A 2650                        "operator" "get_convar"   N/A 2651                        "convar" "snd_gain"   N/A 2652                }   N/A 2653                "snd_op_test_convar"   N/A 2654                {   N/A 2655                        "operator" "get_convar"   N/A 2656                        "convar" "snd_op_test_convar"   N/A 2657                }   N/A 2658    N/A 2659                //////////////////////   N/A 2660                // LEVEL   N/A 2661                "level_apply_mixer"   N/A 2662                {   N/A 2663                        "operator" "math_float"   N/A 2664                        "apply" "mult"          N/A 2665                        "input1" "@mixer.output_level"   N/A 2666                        "input2" "@source_info.output_level"   N/A 2667                }   N/A 2668    N/A 2669                /////////////////////   N/A 2670                // VOLUME   N/A 2671    N/A 2672                // NOTE: distance has precalculated minimum distance of the ss players          N/A 2673                "volume_falloff"   N/A 2674                {   N/A 2675                        "operator" "calc_falloff"   N/A 2676                        "input_distance"  "@source_distance.output"   N/A 2677                        "input_level"          "@level_apply_mixer.output"   N/A 2678                }   N/A 2679    N/A 2680                "volume_get_random" //use for random volume if needed   N/A 2681                {   N/A 2682                        "operator" "math_random"   N/A 2683                        "execute_once" "true"   N/A 2684                        "input_execute" "0.0"   N/A 2685                        "input_min" "0.15" //low value here   N/A 2686                        "input_max" "0.55"        //high value here. N/A 2687               }   N/A 2688    N/A 2689                "volume_mult"   N/A 2690                {   N/A 2691                        "operator" "math_float"   N/A 2692                        "apply"        "mult"   N/A 2693                        "input2" "@source_info.output_volume"   N/A 2694                        "input1" "1.0"   N/A 2695                }   N/A 2696    N/A 2697                "volume_fade_in"   N/A 2698                {   N/A 2699                        "operator" "math_remap_float"   N/A 2700                        "input" "@elapsed_time.output_entry_elapsed"   N/A 2701                        "input_min" "0.0"   N/A 2702                        "input_max" "0.0"   N/A 2703                        "input_map_min" "0.0"   N/A 2704                        "input_map_max" "1.0"   N/A 2705                        "default_to_max" "true"          N/A 2706                }   N/A 2707                "volume_fade_out"   N/A 2708                {   N/A 2709                        "operator" "math_remap_float"   N/A 2710                        "input" "@elapsed_time.output_stop_elapsed"   N/A 2711                        "input_min" "0.0"   N/A 2712                        "input_max" "0.0"   N/A 2713                        "input_map_min" "0.0"   N/A 2714                        "input_map_max" "1.0"   N/A 2715                        "default_to_max" "false"          N/A 2716                }   N/A 2717                "volume_invert_fadeout"   N/A 2718                {   N/A 2719                        "operator" "math_float"   N/A 2720                        "apply"        "sub"   N/A 2721                        "input1" "1.0"   N/A 2722                        "input2" "@volume_fade_out.output"   N/A 2723                }   N/A 2724                "volume_apply_fade_in"   N/A 2725                {   N/A 2726                        "operator" "math_float"   N/A 2727                        "apply"        "mult"   N/A 2728                        "input1" "@volume_fade_in.output"   N/A 2729                        "input2" "@volume_mult.output"   N/A 2730                }   N/A 2731                "volume_apply_fade_out"   N/A 2732                {   N/A 2733                        "operator" "math_float"   N/A 2734                        "apply"        "mult"   N/A 2735                        "input1" "@volume_apply_fade_in.output"   N/A 2736                        "input2" "@volume_invert_fadeout.output"   N/A 2737                }   N/A 2738    N/A 2739                "volume_apply_falloff"   N/A 2740                {   N/A 2741                        "operator" "math_float"   N/A 2742                        "apply"        "mult"   N/A 2743                        "input1" "@volume_apply_fade_out.output"   N/A 2744                        "input2" "@volume_falloff.output"   N/A 2745                }   N/A 2746                "volume_apply_mixer"   N/A 2747                {   N/A 2748                        "operator" "math_float"   N/A 2749                        "apply" "mult"          N/A 2750                        "input1" "@mixer.output_volume"   N/A 2751                        "input2" "@volume_apply_falloff.output"          N/A 2752                }   N/A 2753                "volume_apply_snd_gain_convar"   N/A 2754                {   N/A 2755                        "operator" "math_float"   N/A 2756                        "apply" "mult"          N/A 2757                        "input1" "@snd_gain_convar.output"   N/A 2758                        "input2" "@volume_apply_mixer.output"          N/A 2759                }   N/A 2760                "volume_apply_test_convar"   N/A 2761                {   N/A 2762                        "operator" "math_float"   N/A 2763                        "apply" "mult"   N/A 2764                        "input1" "1.0"   N/A 2765                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 2766                }   N/A 2767    N/A 2768                "volume_apply_occlusion"   N/A 2769                {   N/A 2770                        "operator" "math_float"   N/A 2771                        "apply"        "mult"   N/A 2772                        "input1" "@volume_apply_test_convar.output"   N/A 2773                        "input2" "@occlusion.output"   N/A 2774                }   N/A 2775                // this calculates the loudest volume of the ss clients   N/A 2776                // NOT NEEDED ALL SS OPS SELF-CONTAINGED   N/A 2777                // "volume_acc_ss_max"   N/A 2778                // {   N/A 2779                        // "operator" "op_accumulate_ss_float"   N/A 2780                        // "input" "volume_apply_occlusion.output"   N/A 2781                        // "iterate_operator" "occlusion"   N/A 2782                // }          N/A 2783    N/A 2784                "stoptime_elapsed_trigger"   N/A 2785                {   N/A 2786                        "operator" "math_float"   N/A 2787                        "apply" "greater_than"          N/A 2788                        "input1" "@volume_invert_fadeout.output"   N/A 2789                        "input2" "0.0"   N/A 2790                }   N/A 2791                "stop_hold_output"   N/A 2792                {   N/A 2793                        "operator" "sys_output"   N/A 2794                        "output"   "stop_hold"   N/A 2795                        "input_float" "@stoptime_elapsed_trigger.output"          N/A 2796                }   N/A 2797    N/A 2798                ///////////////////   N/A 2799                // PITCH   N/A 2800    N/A 2801                "pitch_output"   N/A 2802                {   N/A 2803                        "operator" "sys_output"   N/A 2804                        "output"   "pitch"   N/A 2805                        "input_float" "@source_info.output_pitch"          N/A 2806                }   N/A 2807    N/A 2808                ///////////////////   N/A 2809                // DSP   N/A 2810                "dsp_emitter"   N/A 2811                {   N/A 2812                        "operator" "math_float"   N/A 2813                        "apply"              "set"   N/A 2814                        "input1" "1.0"          N/A 2815                }   N/A 2816                "dsp_apply_mixer"   N/A 2817                {   N/A 2818                        "operator" "math_float"   N/A 2819                        "apply" "mult"          N/A 2820                        "input1" "@mixer.output_dsp"   N/A 2821                        "input2" "@dsp_emitter.output"          N/A 2822                }   N/A 2823                "dsp_distantDSP"   N/A 2824                {   N/A 2825                        "operator" "calc_distant_dsp"   N/A 2826                        "input_distance"  "@source_distance.output"   N/A 2827                        "input_level"          "@level_apply_mixer.output"   N/A 2828                }   N/A 2829                "dsp_apply_distant"   N/A 2830                {   N/A 2831                        "operator" "math_float"   N/A 2832                        "apply"              "mult"   N/A 2833                        "input1" "@dsp_distantDSP.output"   N/A 2834                        "input2" "@dsp_apply_mixer.output"                          N/A 2835                }   N/A 2836                "dsp_output"   N/A 2837                {   N/A 2838                        "operator" "sys_output"   N/A 2839                        "input_float" "@dsp_apply_distant.output"   N/A 2840                        "output" "dsp"   N/A 2841                }   N/A 2842    N/A 2843                /////////////////////   N/A 2844                // SPEAKERS   N/A 2845    N/A 2846                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 2847                "speakers_spatialize"   N/A 2848                {   N/A 2849                        "operator" "calc_spatialize_speakers"   N/A 2850                        "input_radius"  "300"   N/A 2851                        "input_distance"  "@source_distance.output"   N/A 2852                        "input_position"  "@source_info.output_position"   N/A 2853                }   N/A 2854    N/A 2855                "speakers_apply_volume"   N/A 2856                {   N/A 2857                        "operator"     "math_speakers"   N/A 2858                        "apply"               "mult"   N/A 2859                        "input1"       "@speakers_spatialize.output"   N/A 2860                        "input2[*]"           "@volume_apply_occlusion.output"   N/A 2861                }   N/A 2862    N/A 2863                "speakers_limit"   N/A 2864                {   N/A 2865                        "operator"      "math_speakers"   N/A 2866                        "apply"               "mult"   N/A 2867    N/A 2868                        "left_front"   "1.0"          N/A 2869                        "right_front"  "1.0"          N/A 2870                        "center"       "1.0"          N/A 2871                        "lfe"          "1.0"          N/A 2872                        "left_rear"    "1.0"   N/A 2873                        "right_rear"   "1.0"          N/A 2874    N/A 2875                        "input2"           "@speakers_apply_volume.output"   N/A 2876                }   N/A 2877                "speakers_multi_origin"   N/A 2878                {   N/A 2879                        "operator"    "iterate_merge_speakers"   N/A 2880    N/A 2881                        "input_max_iterations" "@source_info.output_source_count"   N/A 2882            "iterate_operator" "source_info"   N/A 2883                        "input" "@speakers_limit.output"   N/A 2884    N/A 2885                }   N/A 2886                // connecting output after operator has been created   N/A 2887                "source_info"   N/A 2888                {   N/A 2889                        "input_source_index" "@speakers_multi_origin.output_index"          N/A 2890                }   N/A 2891    N/A 2892                "speakers_output"   N/A 2893                {   N/A 2894                        "operator" "sys_output"   N/A 2895                        "input_speakers" "@speakers_multi_origin.output"   N/A 2896                        "output" "speakers"   N/A 2897                }   N/A 2898        }          N/A 2899    N/A 2900        "p2_offset_start_update"   N/A 2901        {   N/A 2902                "import_stack" "p2_update_default"   N/A 2903    N/A 2904                "elapsed_time"   N/A 2905                {   N/A 2906                        "operator" "get_entry_time"   N/A 2907                }   N/A 2908    N/A 2909                "time_elapsed_trigger"   N/A 2910                {   N/A 2911                        "operator" "math_float"   N/A 2912                        "apply" "greater_than"          N/A 2913                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 2914                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 2915               }   N/A 2916    N/A 2917                "time_elapsed_trigger_2"   N/A 2918                {   N/A 2919                        "operator" "math_float"   N/A 2920                        "apply" "greater_than"          N/A 2921                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 2922                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 2923               }   N/A 2924    N/A 2925                "time_elapsed_trigger_3"   N/A 2926                {   N/A 2927                        "operator" "math_float"   N/A 2928                        "apply" "greater_than"          N/A 2929                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 2930                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 2931               }   N/A 2932    N/A 2933                "time_elapsed_trigger_4"   N/A 2934                {   N/A 2935                        "operator" "math_float"   N/A 2936                        "apply" "greater_than"          N/A 2937                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 2938                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 2939               }   N/A 2940    N/A 2941                "bool_delta" //Check to see if the trigger has been flipped   N/A 2942                {   N/A 2943                        "operator" "math_delta"   N/A 2944                        "input" "@time_elapsed_trigger.output"          N/A 2945                }   N/A 2946    N/A 2947                "bool_delta_trigger"   N/A 2948                {   N/A 2949                        "operator" "math_float"   N/A 2950                        "apply" "greater_than"          N/A 2951                        "input1" "@bool_delta.output"   N/A 2952                        "input2" "0.1"   N/A 2953                }   N/A 2954    N/A 2955                "play_entry"   N/A 2956                {   N/A 2957                        "operator" "sys_start_entry"   N/A 2958                        "execute_once" "true"   N/A 2959                        "input_execute"        "@bool_delta_trigger.output"   N/A 2960                        "input_start" "1"   N/A 2961                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 2962               }   N/A 2963    N/A 2964                "play_entry_2"   N/A 2965                {   N/A 2966                        "operator" "sys_start_entry"   N/A 2967                        "execute_once" "true"   N/A 2968                        "input_execute"        "@time_elapsed_trigger_2.output"   N/A 2969                        "input_start" "1"   N/A 2970                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 2971               }   N/A 2972    N/A 2973                "play_entry_3"   N/A 2974                {   N/A 2975                        "operator" "sys_start_entry"   N/A 2976                        "execute_once" "true"   N/A 2977                        "input_execute"        "@time_elapsed_trigger_3.output"   N/A 2978                        "input_start" "1"   N/A 2979                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 2980               }   N/A 2981    N/A 2982                "play_entry_4"   N/A 2983                {   N/A 2984                        "operator" "sys_start_entry"   N/A 2985                        "execute_once" "true"   N/A 2986                        "input_execute"        "@time_elapsed_trigger_4.output"   N/A 2987                        "input_start" "1"   N/A 2988                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 2989               }          N/A 2990        }   N/A 2991    N/A 2992        "p2_offset_start_update_random"   N/A 2993        {   N/A 2994                "import_stack" "p2_update_default"   N/A 2995    N/A 2996                "elapsed_time"   N/A 2997                {   N/A 2998                        "operator" "get_entry_time"   N/A 2999                }   N/A 3000    N/A 3001                "delay_trigger"   N/A 3002                {   N/A 3003                        "operator" "math_float"   N/A 3004                        "apply" "greater_than"          N/A 3005                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 3006                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 3007               }   N/A 3008    N/A 3009                "random_play"   N/A 3010                {   N/A 3011                        "operator" "math_random"   N/A 3012                        "execute_once" "true"   N/A 3013                        "input_execute" "0.0"   N/A 3014                        "input_min" "0.0"   N/A 3015                        "input_max" "1.0"                  N/A 3016                }          N/A 3017    N/A 3018                "percent_fire"   N/A 3019                {   N/A 3020                        "operator" "math_float"   N/A 3021                        "apply" "greater_than"          N/A 3022                        "input1" "0.60" // This is the percentage chance to play a sound   N/A 3023                        "input2" "@random_play.output"   N/A 3024                }   N/A 3025    N/A 3026                "do_we_fire"   N/A 3027                {   N/A 3028                        "operator" "math_float"   N/A 3029                        "apply"        "min"   N/A 3030                        "input1" "@percent_fire.output"   N/A 3031                        "input2" "@delay_trigger.output"   N/A 3032                }   N/A 3033    N/A 3034                "triggered_sound"   N/A 3035                {   N/A 3036                        "operator" "sys_start_entry"   N/A 3037                        "execute_once" "true"   N/A 3038                        "input_execute"        "@do_we_fire.output"   N/A 3039                        "input_start" "1"   N/A 3040                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 3041               }   N/A 3042        }   N/A 3043    N/A 3044        "p2_offset_start_level_based"   N/A 3045        {   N/A 3046                "import_stack" "p2_update_default"   N/A 3047    N/A 3048                "elapsed_time"   N/A 3049                {   N/A 3050                        "operator" "get_entry_time"   N/A 3051                }   N/A 3052    N/A 3053                "delay_trigger"   N/A 3054                {   N/A 3055                        "operator" "math_float"   N/A 3056                        "apply" "greater_than"          N/A 3057                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 3058                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 3059               }   N/A 3060    N/A 3061                "delay_trigger_2"   N/A 3062                {   N/A 3063                        "operator" "math_float"   N/A 3064                        "apply" "greater_than"          N/A 3065                        "input1" "@elapsed_time.output_sound_elapsed"   N/A 3066                        "input2" "0.1" //Elapsed time in seconds goes here. N/A 3067               }   N/A 3068    N/A 3069                "level_specific_check"   N/A 3070                {   N/A 3071                        "input_execute" "0.0" //enable map checking here   N/A 3072                        "operator" "get_map_name"   N/A 3073                        "map_name" "p2_empty4" //your map name here                  N/A 3074                }          N/A 3075    N/A 3076                "get_pos_data"   N/A 3077                {   N/A 3078                        "operator" "game_view_info"   N/A 3079                }   N/A 3080    N/A 3081                "pos_specific_check"   N/A 3082                {   N/A 3083                        "operator"        "math_float"   N/A 3084                        "apply"        "greater_than_or_equal"   N/A 3085                        "input1"        "@get_pos_data.output_position_z" //replace with the param to check against   N/A 3086                        "input2"        "0.0" //Replace with val you want to check against                  N/A 3087                }   N/A 3088    N/A 3089                "level_and_pos_check"   N/A 3090                {   N/A 3091                        "operator" "math_float"   N/A 3092                        "apply"        "min"   N/A 3093                        "input1" "@level_specific_check.output"   N/A 3094                        "input2" "@pos_specific_check.output"                  N/A 3095                }   N/A 3096    N/A 3097                "do_we_fire"   N/A 3098                {   N/A 3099                        "operator" "math_float"   N/A 3100                        "apply"        "min"   N/A 3101                        "input1" "@level_and_pos_check.output"   N/A 3102                        "input2" "@delay_trigger.output"   N/A 3103                }   N/A 3104    N/A 3105                "do_we_fire_2"   N/A 3106                {   N/A 3107                        "operator" "math_float"   N/A 3108                        "apply"        "min"   N/A 3109                        "input1" "@level_and_pos_check.output"   N/A 3110                        "input2" "@delay_trigger_2.output"   N/A 3111                }   N/A 3112    N/A 3113                "triggered_sound"   N/A 3114                {   N/A 3115                        "operator" "sys_start_entry"   N/A 3116                        "execute_once" "true"   N/A 3117                        "input_execute"        "@do_we_fire.output"   N/A 3118                        "input_start" "1"   N/A 3119                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 3120               }   N/A 3121    N/A 3122                "triggered_sound_2"   N/A 3123                {   N/A 3124                        "operator" "sys_start_entry"   N/A 3125                        "execute_once" "true"   N/A 3126                        "input_execute"        "@do_we_fire.output"   N/A 3127                        "input_start" "1"   N/A 3128                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 3129               }   N/A 3130        }   N/A 3131    N/A 3132        "p2_update_start_at_elapsed"   N/A 3133        {   N/A 3134                "usae_elapsed_time"   N/A 3135                {   N/A 3136                        "operator" "get_entry_time"   N/A 3137                }   N/A 3138    N/A 3139                "sound_duration_mult"   N/A 3140                {   N/A 3141                        "operator" "math_float"   N/A 3142                        "apply" "mult"          N/A 3143                        "input1" "@usae_elapsed_time.output_sound_duration"   N/A 3144                        "input2" "2"   N/A 3145                }   N/A 3146    N/A 3147                "time_elapsed_trigger"   N/A 3148                {   N/A 3149                        "operator" "math_float"   N/A 3150                        "apply" "greater_than_or_equal"          N/A 3151                        "input1" "@usae_elapsed_time.output_sound_elapsed"   N/A 3152                        "input2" "@sound_duration_mult.output"   N/A 3153                }   N/A 3154    N/A 3155                "stop_this"   N/A 3156                {   N/A 3157                        "operator" "sys_stop_entries"   N/A 3158                        "input_execute"        "@time_elapsed_trigger.output"   N/A 3159                        "stop_this_entry" "true"          N/A 3160                }   N/A 3161                "play_entry"   N/A 3162                {   N/A 3163                        "operator" "sys_start_entry"   N/A 3164                        "execute_once" "true"   N/A 3165                        "input_execute"        "@time_elapsed_trigger.output"   N/A 3166                        "input_start" "1"   N/A 3167                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 3168               }   N/A 3169        }   N/A 3170    N/A 3171        "p2_update_stop_at_elapsed"   N/A 3172        {   N/A 3173                "usae_elapsed_time"   N/A 3174                {   N/A 3175                        "operator" "get_entry_time"   N/A 3176                }   N/A 3177    N/A 3178                "sound_duration_mult"   N/A 3179                {   N/A 3180                        "operator" "math_float"   N/A 3181                        "apply" "mult"          N/A 3182                        "input1" "@usae_elapsed_time.output_sound_duration"   N/A 3183                        "input2" "2"   N/A 3184                }   N/A 3185                "time_elapsed_trigger"   N/A 3186                {   N/A 3187                        "operator" "math_float"   N/A 3188                        "apply" "greater_than_or_equal"          N/A 3189                        "input1" "@usae_elapsed_time.output_sound_elapsed"   N/A 3190                        "input2" "@sound_duration_mult.output"   N/A 3191                }                  N/A 3192                "stop_this"   N/A 3193                {   N/A 3194                        "operator" "sys_stop_entries"   N/A 3195                        "input_execute"        "@time_elapsed_trigger.output"   N/A 3196                        "stop_this_entry" "true"          N/A 3197                }   N/A 3198        }   N/A 3199    N/A 3200        "p2_update_default_pitch_ramp"   N/A 3201        {   N/A 3202                //This is identical to p2_update_default except for the pitch being ramped based on volume,   N/A 3203    N/A 3204                "save_restore_output"   N/A 3205                {   N/A 3206                        "operator" "sys_output"   N/A 3207                        "execute_once" "true"   N/A 3208                        "input_float" "1.0"   N/A 3209                        "output" "save_restore"   N/A 3210                }   N/A 3211    N/A 3212    N/A 3213                //////////////////////   N/A 3214                // POSITION   N/A 3215                "source_info"   N/A 3216                {   N/A 3217                        "operator" "get_source_info"   N/A 3218                        // "source"   "entity"   N/A 3219                        "source"   "emitter"   N/A 3220                }   N/A 3221    N/A 3222                "elapsed_time"   N/A 3223                {   N/A 3224                        "operator" "get_entry_time"   N/A 3225                }   N/A 3226    N/A 3227        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 3228                "source_distance"   N/A 3229                {   N/A 3230                        "operator" "calc_source_distance"   N/A 3231                        "input_position"   "@source_info.output_position"   N/A 3232                }   N/A 3233    N/A 3234                ////////////////////   N/A 3235                // calc   N/A 3236                "mixer"   N/A 3237                {   N/A 3238                        "operator" "get_soundmixer"   N/A 3239                        "mixgroup" "All"   N/A 3240                }   N/A 3241    N/A 3242                // NOTE: uses player data, ie: SS, return least occluded value   N/A 3243                "occlusion"   N/A 3244                {   N/A 3245                        "operator" "calc_occlusion"   N/A 3246                        "input_position" "@source_info.output_position"          N/A 3247                }   N/A 3248    N/A 3249                "snd_gain_convar"   N/A 3250                {   N/A 3251                        "operator" "get_convar"   N/A 3252                        "convar" "snd_gain"   N/A 3253                }   N/A 3254                "snd_op_test_convar"   N/A 3255                {   N/A 3256                        "operator" "get_convar"   N/A 3257                        "convar" "snd_op_test_convar"   N/A 3258                }   N/A 3259    N/A 3260                //////////////////////   N/A 3261                // LEVEL   N/A 3262                "level_apply_mixer"   N/A 3263                {   N/A 3264                        "operator" "math_float"   N/A 3265                        "apply" "mult"          N/A 3266                        "input1" "@mixer.output_level"   N/A 3267                        "input2" "@source_info.output_level"   N/A 3268                }   N/A 3269    N/A 3270                /////////////////////   N/A 3271                // VOLUME   N/A 3272    N/A 3273                // NOTE: distance has precalculated minimum distance of the ss players          N/A 3274                "volume_falloff"   N/A 3275                {   N/A 3276                        "operator" "calc_falloff"   N/A 3277                        "input_distance"  "@source_distance.output"   N/A 3278                        "input_level"          "@level_apply_mixer.output"   N/A 3279                }   N/A 3280    N/A 3281                "volume_fade_in"   N/A 3282                {   N/A 3283                        "operator" "math_remap_float"   N/A 3284                        "input" "@elapsed_time.output_entry_elapsed"   N/A 3285                        "input_min" "0.0"   N/A 3286                        "input_max" "0.0"   N/A 3287                        "input_map_min" "0.0"   N/A 3288                        "input_map_max" "1.0"   N/A 3289                        "default_to_max" "true"          N/A 3290                }   N/A 3291                "volume_fade_out"   N/A 3292                {   N/A 3293                        "operator" "math_remap_float"   N/A 3294                        "input" "@elapsed_time.output_stop_elapsed"   N/A 3295                        "input_min" "0.0"   N/A 3296                        "input_max" "0.0"   N/A 3297                        "input_map_min" "0.0"   N/A 3298                        "input_map_max" "1.0"   N/A 3299                        "default_to_max" "false"          N/A 3300                }   N/A 3301                "volume_invert_fadeout"   N/A 3302                {   N/A 3303                        "operator" "math_float"   N/A 3304                        "apply"        "sub"   N/A 3305                        "input1" "1.0"   N/A 3306                        "input2" "@volume_fade_out.output"   N/A 3307                }   N/A 3308                "volume_apply_fade_in"   N/A 3309                {   N/A 3310                        "operator" "math_float"   N/A 3311                        "apply"        "mult"   N/A 3312                        "input1" "@volume_fade_in.output"   N/A 3313                        "input2" "@source_info.output_volume"   N/A 3314                }   N/A 3315                "volume_apply_fade_out"   N/A 3316                {   N/A 3317                        "operator" "math_float"   N/A 3318                        "apply"        "mult"   N/A 3319                        "input1" "@volume_apply_fade_in.output"   N/A 3320                        "input2" "@volume_invert_fadeout.output"   N/A 3321                }   N/A 3322    N/A 3323                "volume_fade_initial"   N/A 3324                {   N/A 3325                        "input_execute" "0"   N/A 3326                        "operator" "math_remap_float"   N/A 3327                        "input" "@elapsed_time.output_entry_elapsed"   N/A 3328                        "input_min" "0.0"   N/A 3329                        "input_max" "0.0"   N/A 3330                        "input_map_min" "1.0"   N/A 3331                        "input_map_max" "1.0"   N/A 3332                        "default_to_max" "false"          N/A 3333                }                  N/A 3334                "volume_invert_initial"   N/A 3335                {   N/A 3336                        "operator" "math_float"   N/A 3337                        "apply"        "sub"   N/A 3338                        "input1" "1.0"   N/A 3339                        "input2" "@volume_fade_initial.output"   N/A 3340                }   N/A 3341                "volume_apply_fade_initial"   N/A 3342                {   N/A 3343                        "operator" "math_float"   N/A 3344                        "apply"        "mult"   N/A 3345                        "input1" "@volume_apply_fade_out.output"   N/A 3346                        "input2" "@volume_invert_initial.output"   N/A 3347                }   N/A 3348    N/A 3349                //Level specific volume scalar   N/A 3350    N/A 3351                "volume_get_map_name"   N/A 3352                {   N/A 3353                        "input_execute" "0.0" //enable map checking here   N/A 3354                        "operator" "get_map_name"   N/A 3355                        "map_name" "p2_empty4" //your map name here   N/A 3356                }          N/A 3357    N/A 3358                "volume_invert_map_name"   N/A 3359                {   N/A 3360                        "operator" "math_float"   N/A 3361                        "apply"        "sub"   N/A 3362                        "input1" "1.0"   N/A 3363                        "input2" "@volume_get_map_name.output"   N/A 3364                }   N/A 3365    N/A 3366                "volume_map_name_scalar"   N/A 3367                {   N/A 3368                        "operator" "math_remap_float"   N/A 3369                        "input" "@volume_invert_map_name.output"   N/A 3370                        "input_min" "0.0"   N/A 3371                        "input_max" "1.0"   N/A 3372                        "input_map_min" "1.0" //This is the map-specific volume scalar, does nothing by default   N/A 3373                        "input_map_max" "1.0"   N/A 3374                        "default_to_max" "true"          N/A 3375                }                                  N/A 3376    N/A 3377                "volume_mult"   N/A 3378                {   N/A 3379                        "operator" "math_float"   N/A 3380                        "apply"        "mult"   N/A 3381                        "input2" "@volume_apply_fade_initial.output"   N/A 3382                        "input1" "1.0" //change to "@volume_map_name_scalar.output" to use a map specific scalar   N/A 3383                }   N/A 3384    N/A 3385                "volume_apply_falloff"   N/A 3386                {   N/A 3387                        "operator" "math_float"   N/A 3388                        "apply"        "mult"   N/A 3389                        "input1" "@volume_mult.output"   N/A 3390                        "input2" "@volume_falloff.output"   N/A 3391                }   N/A 3392    N/A 3393                "volume_apply_mixer"   N/A 3394                {   N/A 3395                        "operator" "math_float"   N/A 3396                        "apply" "mult"          N/A 3397                        "input1" "@mixer.output_volume"   N/A 3398                        "input2" "@volume_apply_falloff.output"          N/A 3399                }   N/A 3400                "volume_apply_snd_gain_convar"   N/A 3401                {   N/A 3402                        "operator" "math_float"   N/A 3403                        "apply" "mult"          N/A 3404                        "input1" "@snd_gain_convar.output"   N/A 3405                        "input2" "@volume_apply_mixer.output"          N/A 3406                }   N/A 3407                "volume_apply_test_convar"   N/A 3408                {   N/A 3409                        "operator" "math_float"   N/A 3410                        "apply" "mult"   N/A 3411                        "input1" "1.0"   N/A 3412                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 3413                }   N/A 3414    N/A 3415                "volume_apply_occlusion"   N/A 3416                {   N/A 3417                        "operator" "math_float"   N/A 3418                        "apply"        "mult"   N/A 3419                        "input1" "@volume_apply_test_convar.output"   N/A 3420                        "input2" "@occlusion.output"   N/A 3421                }   N/A 3422                // this calculates the loudest volume of the ss clients   N/A 3423                // NOT NEEDED ALL SS OPS SELF-CONTAINGED   N/A 3424                // "volume_acc_ss_max"   N/A 3425                // {   N/A 3426                        // "operator" "op_accumulate_ss_float"   N/A 3427                        // "input" "volume_apply_occlusion.output"   N/A 3428                        // "iterate_operator" "occlusion"   N/A 3429                // }          N/A 3430    N/A 3431                "stoptime_elapsed_trigger"   N/A 3432                {   N/A 3433                        "operator" "math_float"   N/A 3434                        "apply" "greater_than"          N/A 3435                        "input1" "@volume_invert_fadeout.output"   N/A 3436                        "input2" "0.0"   N/A 3437                }   N/A 3438                "stop_hold_output"   N/A 3439                {   N/A 3440                        "operator" "sys_output"   N/A 3441                        "output"   "stop_hold"   N/A 3442                        "input_float" "@stoptime_elapsed_trigger.output"          N/A 3443                }   N/A 3444    N/A 3445                ///////////////////   N/A 3446                // PITCH   N/A 3447                "max_volume_percentage"   N/A 3448                {   N/A 3449                        "operator" "math_float"   N/A 3450                        "apply" "div"          N/A 3451                        "input1" "@volume_apply_fade_out.output"   N/A 3452                        "input2" "@source_info.output_volume"          N/A 3453                }   N/A 3454    N/A 3455                "pitch_fade_in"   N/A 3456                {   N/A 3457                        "operator" "math_remap_float"   N/A 3458                        "input" "@max_volume_percentage.output"   N/A 3459                        "input_min" "0.0"   N/A 3460                        "input_max" "1.0"   N/A 3461                        "input_map_min" "1.0" //Always outputs 1.0 by default   N/A 3462                        "input_map_max" "1.0"   N/A 3463                        "default_to_max" "true"          N/A 3464                }   N/A 3465    N/A 3466                "pitch_random" //Use for random pitch   N/A 3467                {   N/A 3468                        "operator" "math_random"   N/A 3469                        "execute_once" "true"   N/A 3470                        "input_execute" "0.0"   N/A 3471                        "input_min" "1.0"   N/A 3472                        "input_max" "1.0"                  N/A 3473                }   N/A 3474    N/A 3475                "pitch_apply_fade_in"   N/A 3476                {   N/A 3477                        "operator" "math_float"   N/A 3478                        "apply"        "mult"   N/A 3479                        "input1" "@pitch_random.output"   N/A 3480                        "input2" "@pitch_fade_in.output"   N/A 3481                }   N/A 3482    N/A 3483                "pitch_output"   N/A 3484                {   N/A 3485                        "operator" "sys_output"   N/A 3486                        "output"   "pitch"   N/A 3487                        "input_float" "@pitch_apply_fade_in.output"          N/A 3488                }   N/A 3489    N/A 3490                ///////////////////   N/A 3491                // DSP   N/A 3492                "dsp_emitter"   N/A 3493                {   N/A 3494                        "operator" "math_float"   N/A 3495                        "apply"              "set"   N/A 3496                        "input1" "1.0"          N/A 3497                }   N/A 3498                "dsp_apply_mixer"   N/A 3499                {   N/A 3500                        "operator" "math_float"   N/A 3501                        "apply" "mult"          N/A 3502                        "input1" "@mixer.output_dsp"   N/A 3503                        "input2" "@dsp_emitter.output"          N/A 3504                }   N/A 3505                "dsp_distantDSP"   N/A 3506                {   N/A 3507                        "operator" "calc_distant_dsp"   N/A 3508                        "input_distance"  "@source_distance.output"   N/A 3509                        "input_level"          "@level_apply_mixer.output"   N/A 3510                }   N/A 3511                "dsp_apply_distant"   N/A 3512                {   N/A 3513                        "operator" "math_float"   N/A 3514                        "apply"              "mult"   N/A 3515                        "input1" "@dsp_distantDSP.output"   N/A 3516                        "input2" "@dsp_apply_mixer.output"                          N/A 3517                }   N/A 3518                "dsp_output"   N/A 3519                {   N/A 3520                        "operator" "sys_output"   N/A 3521                        "input_float" "@dsp_apply_distant.output"   N/A 3522                        "output" "dsp"   N/A 3523                }   N/A 3524    N/A 3525                /////////////////////   N/A 3526                // SPEAKERS   N/A 3527    N/A 3528                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 3529                "speakers_spatialize"   N/A 3530                {   N/A 3531                        "operator" "calc_spatialize_speakers"   N/A 3532                        "input_radius"  "300"   N/A 3533                        "input_distance"  "@source_distance.output"   N/A 3534                        "input_position"  "@source_info.output_position"   N/A 3535                }   N/A 3536    N/A 3537                "speakers_apply_volume"   N/A 3538                {   N/A 3539                        "operator"     "math_speakers"   N/A 3540                        "apply"               "mult"   N/A 3541                        "input1"       "@speakers_spatialize.output"   N/A 3542                        "input2[*]"           "@volume_apply_occlusion.output"   N/A 3543                }   N/A 3544    N/A 3545                "speakers_limit"   N/A 3546                {   N/A 3547                        "operator"      "math_speakers"   N/A 3548                        "apply"               "mult"   N/A 3549    N/A 3550                        "left_front"   "1.0"          N/A 3551                        "right_front"  "1.0"          N/A 3552                        "center"       "1.0"          N/A 3553                        "lfe"          "1.0"          N/A 3554                        "left_rear"    "1.0"   N/A 3555                        "right_rear"   "1.0"          N/A 3556    N/A 3557                        "input2"           "@speakers_apply_volume.output"   N/A 3558                }   N/A 3559                "speakers_multi_origin"   N/A 3560                {   N/A 3561                        "operator"    "iterate_merge_speakers"   N/A 3562    N/A 3563                        "input_max_iterations" "@source_info.output_source_count"   N/A 3564            "iterate_operator" "source_info"   N/A 3565                        "input" "@speakers_limit.output"   N/A 3566    N/A 3567                }   N/A 3568                // connecting output after operator has been created   N/A 3569                "source_info"   N/A 3570                {   N/A 3571                        "input_source_index" "@speakers_multi_origin.output_index"          N/A 3572                }   N/A 3573    N/A 3574                "speakers_output"   N/A 3575                {   N/A 3576                        "operator" "sys_output"   N/A 3577                        "input_speakers" "@speakers_multi_origin.output"   N/A 3578                        "output" "speakers"   N/A 3579                }   N/A 3580        }                          N/A 3581    N/A 3582        "p2_update_envelope_radius" //This is a wholesale copy of p2_update_default except that we've changed the way falloff works   N/A 3583        {   N/A 3584                "save_restore_output"   N/A 3585                {   N/A 3586                        "operator" "sys_output"   N/A 3587                        "execute_once" "true"   N/A 3588                        "input_float" "1.0"   N/A 3589                        "output" "save_restore"   N/A 3590                }   N/A 3591    N/A 3592    N/A 3593                //////////////////////   N/A 3594                // POSITION   N/A 3595                "source_info"   N/A 3596                {   N/A 3597                        "operator" "get_source_info"   N/A 3598                        // "source"   "entity"   N/A 3599                        "source"   "emitter"   N/A 3600                }   N/A 3601    N/A 3602                "elapsed_time"   N/A 3603                {   N/A 3604                        "operator" "get_entry_time"   N/A 3605                }   N/A 3606    N/A 3607        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 3608                "source_distance"   N/A 3609                {   N/A 3610                        "operator" "calc_source_distance"   N/A 3611                        "input_position"   "@source_info.output_position"   N/A 3612                }   N/A 3613    N/A 3614                ////////////////////   N/A 3615                // calc   N/A 3616                "mixer"   N/A 3617                {   N/A 3618                        "operator" "get_soundmixer"   N/A 3619                        "mixgroup" "All"   N/A 3620                }   N/A 3621    N/A 3622                // NOTE: uses player data, ie: SS, return least occluded value   N/A 3623                "occlusion"   N/A 3624                {   N/A 3625                        "operator" "calc_occlusion"   N/A 3626                        "input_position" "@source_info.output_position"          N/A 3627                }   N/A 3628    N/A 3629                "snd_gain_convar"   N/A 3630                {   N/A 3631                        "operator" "get_convar"   N/A 3632                        "convar" "snd_gain"   N/A 3633                }   N/A 3634                "snd_op_test_convar"   N/A 3635                {   N/A 3636                        "operator" "get_convar"   N/A 3637                        "convar" "snd_op_test_convar"   N/A 3638                }   N/A 3639    N/A 3640                //////////////////////   N/A 3641                // LEVEL   N/A 3642                "level_apply_mixer"   N/A 3643                {   N/A 3644                        "operator" "math_float"   N/A 3645                        "apply" "mult"          N/A 3646                        "input1" "@mixer.output_level"   N/A 3647                        "input2" "@source_info.output_level"   N/A 3648                }   N/A 3649    N/A 3650                /////////////////////   N/A 3651                // VOLUME   N/A 3652    N/A 3653                // NOTE: distance has precalculated minimum distance of the ss players          N/A 3654                "volume_falloff"   N/A 3655                {   N/A 3656                        "operator" "calc_falloff"   N/A 3657                        "input_distance"  "@source_distance.output"   N/A 3658                        "input_level"          "@level_apply_mixer.output"   N/A 3659                }   N/A 3660                "volume_mult"   N/A 3661                {   N/A 3662                        "operator" "math_float"   N/A 3663                        "apply"        "mult"   N/A 3664                        "input2" "@source_info.output_volume"   N/A 3665                        "input1" "1.0"   N/A 3666                }   N/A 3667    N/A 3668                "volume_fade_in"   N/A 3669                {   N/A 3670                        "operator" "math_remap_float"   N/A 3671                        "input" "@elapsed_time.output_entry_elapsed"   N/A 3672                        "input_min" "0.0"   N/A 3673                        "input_max" "0.0"   N/A 3674                        "input_map_min" "0.0"   N/A 3675                        "input_map_max" "1.0"   N/A 3676                        "default_to_max" "true"          N/A 3677                }   N/A 3678                "volume_fade_out"   N/A 3679                {   N/A 3680                        "operator" "math_remap_float"   N/A 3681                        "input" "@elapsed_time.output_stop_elapsed"   N/A 3682                        "input_min" "0.0"   N/A 3683                        "input_max" "0.0"   N/A 3684                        "input_map_min" "0.0"   N/A 3685                        "input_map_max" "1.0"   N/A 3686                        "default_to_max" "false"          N/A 3687                }   N/A 3688                "volume_invert_fadeout"   N/A 3689                {   N/A 3690                        "operator" "math_float"   N/A 3691                        "apply"        "sub"   N/A 3692                        "input1" "1.0"   N/A 3693                        "input2" "@volume_fade_out.output"   N/A 3694                }   N/A 3695                "volume_apply_fade_in"   N/A 3696                {   N/A 3697                        "operator" "math_float"   N/A 3698                        "apply"        "mult"   N/A 3699                        "input1" "@volume_fade_in.output"   N/A 3700                        "input2" "@volume_mult.output"   N/A 3701                }   N/A 3702                "volume_apply_fade_out"   N/A 3703                {   N/A 3704                        "operator" "math_float"   N/A 3705                        "apply"        "mult"   N/A 3706                        "input1" "@volume_apply_fade_in.output"   N/A 3707                        "input2" "@volume_invert_fadeout.output"   N/A 3708                }   N/A 3709    N/A 3710                /////////////////////////////////////////////   N/A 3711                // Massage Falloff   N/A 3712                /////////////////////////////////////////////   N/A 3713    N/A 3714                "falloff_xover_1" //Use these like variables   N/A 3715                {   N/A 3716                        "operator" "math_float"   N/A 3717                        "apply"        "mult"   N/A 3718                        "input1" "0.6" //first point goes here   N/A 3719                        "input2" "1.0"        //identity, do not change   N/A 3720                }   N/A 3721    N/A 3722                "falloff_xover_2" //Use these like variables   N/A 3723                {   N/A 3724                        "operator" "math_float"   N/A 3725                        "apply"        "mult"   N/A 3726                        "input1" "0.45" //second point goes here   N/A 3727                        "input2" "1.0"        //identity, do not change   N/A 3728                }   N/A 3729    N/A 3730                "falloff_leg_1"   N/A 3731                {   N/A 3732                        "operator" "math_remap_float"   N/A 3733                        "input" "@volume_falloff.output"   N/A 3734                        "input_min" "@falloff_xover_1.output" //default 0.6   N/A 3735                        "input_max" "1.0"   N/A 3736                        "input_map_min" "0.55"   N/A 3737                        "input_map_max" "1.0"   N/A 3738                        "default_to_max" "false"          N/A 3739                }   N/A 3740    N/A 3741                "falloff_leg_2"   N/A 3742                {   N/A 3743                        "operator" "math_remap_float"   N/A 3744                        "input" "@volume_falloff.output"   N/A 3745                        "input_min" "@falloff_xover_2.output" //default 0.45   N/A 3746                        "input_max" "@falloff_xover_1.output" //default 0.6   N/A 3747                        "input_map_min" "0.4"   N/A 3748                        "input_map_max" "@falloff_leg_1.output"   N/A 3749                        "default_to_max" "false"          N/A 3750                }   N/A 3751    N/A 3752                "falloff_leg_3"   N/A 3753                {   N/A 3754                        "operator" "math_remap_float"   N/A 3755                        "input" "@volume_falloff.output"   N/A 3756                        "input_min" "0.0"   N/A 3757                        "input_max" "@falloff_xover_2.output" //default 0.45   N/A 3758                        "input_map_min" "0.0"   N/A 3759                        "input_map_max" "@falloff_leg_2.output"   N/A 3760                        "default_to_max" "true"          N/A 3761                }   N/A 3762    N/A 3763                "volume_apply_falloff"   N/A 3764                {   N/A 3765                        "operator" "math_float"   N/A 3766                        "apply"        "mult"   N/A 3767                        "input1" "@volume_apply_fade_out.output"   N/A 3768                        "input2" "@volume_falloff.output"   N/A 3769                        //"input2" "@falloff_leg_3.output" //uncomment if you want to use wacky falloffs   N/A 3770                }   N/A 3771                /////////////////////////////////////////////   N/A 3772    N/A 3773                "volume_apply_mixer"   N/A 3774                {   N/A 3775                        "operator" "math_float"   N/A 3776                        "apply" "mult"          N/A 3777                        "input1" "@mixer.output_volume"   N/A 3778                        "input2" "@volume_apply_falloff.output"          N/A 3779                }   N/A 3780                "volume_apply_snd_gain_convar"   N/A 3781                {   N/A 3782                        "operator" "math_float"   N/A 3783                        "apply" "mult"          N/A 3784                        "input1" "@snd_gain_convar.output"   N/A 3785                        "input2" "@volume_apply_mixer.output"          N/A 3786                }   N/A 3787                "volume_apply_test_convar"   N/A 3788                {   N/A 3789                        "operator" "math_float"   N/A 3790                        "apply" "mult"   N/A 3791                        "input1" "1.0"   N/A 3792                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 3793                }   N/A 3794    N/A 3795                "volume_apply_occlusion"   N/A 3796                {   N/A 3797                        "operator" "math_float"   N/A 3798                        "apply"        "mult"   N/A 3799                        "input1" "@volume_apply_test_convar.output"   N/A 3800                        "input2" "@occlusion.output"   N/A 3801                }   N/A 3802                // this calculates the loudest volume of the ss clients   N/A 3803                // NOT NEEDED ALL SS OPS SELF-CONTAINGED   N/A 3804                // "volume_acc_ss_max"   N/A 3805                // {   N/A 3806                        // "operator" "op_accumulate_ss_float"   N/A 3807                        // "input" "volume_apply_occlusion.output"   N/A 3808                        // "iterate_operator" "occlusion"   N/A 3809                // }          N/A 3810    N/A 3811                "stoptime_elapsed_trigger"   N/A 3812                {   N/A 3813                        "operator" "math_float"   N/A 3814                        "apply" "greater_than"          N/A 3815                        "input1" "@volume_invert_fadeout.output"   N/A 3816                        "input2" "0.0"   N/A 3817                }   N/A 3818                "stop_hold_output"   N/A 3819                {   N/A 3820                        "operator" "sys_output"   N/A 3821                        "output"   "stop_hold"   N/A 3822                        "input_float" "@stoptime_elapsed_trigger.output"          N/A 3823                }   N/A 3824    N/A 3825                ///////////////////   N/A 3826                // PITCH   N/A 3827    N/A 3828                "pitch_output"   N/A 3829                {   N/A 3830                        "operator" "sys_output"   N/A 3831                        "output"   "pitch"   N/A 3832                        "input_float" "@source_info.output_pitch"          N/A 3833                }   N/A 3834    N/A 3835                ///////////////////   N/A 3836                // DSP   N/A 3837                "dsp_emitter"   N/A 3838                {   N/A 3839                        "operator" "math_float"   N/A 3840                        "apply"              "set"   N/A 3841                        "input1" "1.0"          N/A 3842                }   N/A 3843                "dsp_apply_mixer"   N/A 3844                {   N/A 3845                        "operator" "math_float"   N/A 3846                        "apply" "mult"          N/A 3847                        "input1" "@mixer.output_dsp"   N/A 3848                        "input2" "@dsp_emitter.output"          N/A 3849                }   N/A 3850                "dsp_distantDSP"   N/A 3851                {   N/A 3852                        "operator" "calc_distant_dsp"   N/A 3853                        "input_distance"  "@source_distance.output"   N/A 3854                        "input_level"          "@level_apply_mixer.output"   N/A 3855                }   N/A 3856                "dsp_apply_distant"   N/A 3857                {   N/A 3858                        "operator" "math_float"   N/A 3859                        "apply"              "mult"   N/A 3860                        "input1" "@dsp_distantDSP.output"   N/A 3861                        "input2" "@dsp_apply_mixer.output"                          N/A 3862                }   N/A 3863                "dsp_output"   N/A 3864                {   N/A 3865                        "operator" "sys_output"   N/A 3866                        "input_float" "@dsp_apply_distant.output"   N/A 3867                        "output" "dsp"   N/A 3868                }   N/A 3869    N/A 3870                /////////////////////   N/A 3871                // SPEAKERS   N/A 3872    N/A 3873                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 3874                "speakers_spatialize"   N/A 3875                {   N/A 3876                        "operator" "calc_spatialize_speakers"   N/A 3877                        "input_radius"  "300"   N/A 3878                        "input_distance"  "@source_distance.output"   N/A 3879                        "input_position"  "@source_info.output_position"   N/A 3880                }   N/A 3881    N/A 3882                "speakers_apply_volume"   N/A 3883                {   N/A 3884                        "operator"     "math_speakers"   N/A 3885                        "apply"               "mult"   N/A 3886                        "input1"       "@speakers_spatialize.output"   N/A 3887                        "input2[*]"           "@volume_apply_occlusion.output"   N/A 3888                }   N/A 3889    N/A 3890                "speakers_limit"   N/A 3891                {   N/A 3892                        "operator"      "math_speakers"   N/A 3893                        "apply"               "mult"   N/A 3894    N/A 3895                        "left_front"   "1.0"          N/A 3896                        "right_front"  "1.0"          N/A 3897                        "center"       "1.0"          N/A 3898                        "lfe"          "1.0"          N/A 3899                        "left_rear"    "1.0"   N/A 3900                        "right_rear"   "1.0"          N/A 3901    N/A 3902                        "input2"           "@speakers_apply_volume.output"   N/A 3903                }   N/A 3904                "speakers_multi_origin"   N/A 3905                {   N/A 3906                        "operator"    "iterate_merge_speakers"   N/A 3907    N/A 3908                        "input_max_iterations" "@source_info.output_source_count"   N/A 3909            "iterate_operator" "source_info"   N/A 3910                        "input" "@speakers_limit.output"   N/A 3911    N/A 3912                }   N/A 3913                // connecting output after operator has been created   N/A 3914                "source_info"   N/A 3915                {   N/A 3916                        "input_source_index" "@speakers_multi_origin.output_index"          N/A 3917                }   N/A 3918    N/A 3919                "speakers_output"   N/A 3920                {   N/A 3921                        "operator" "sys_output"   N/A 3922                        "input_speakers" "@speakers_multi_origin.output"   N/A 3923                        "output" "speakers"   N/A 3924                }   N/A 3925        }   N/A 3926    N/A 3927 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 3928 //   N/A 3929 // AMBIENT SOUNDS   N/A 3930 //   N/A 3931 ////////////////////////////////////////////////////////////////////////////////////////////          N/A 3932        "p2_update_ambient_sound_spatial"          N/A 3933        {   N/A 3934                "import_stack"         "p2_update_music_spatial_portals"   N/A 3935        }   N/A 3936    N/A 3937 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 3938 //   N/A 3939 // DIALOG STACKS   N/A 3940 //   N/A 3941 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 3942    N/A 3943        "update_dialog"   N/A 3944        {   N/A 3945    N/A 3946                ///////////////////////   N/A 3947        //  stopping previous lines   N/A 3948                "stop_entries"   N/A 3949                {   N/A 3950                        "execute_once" "true"   N/A 3951                        "operator" "sys_stop_entries"   N/A 3952                        "match_channel" "true"   N/A 3953                        "match_entity" "true"          N/A 3954                        "input_max_entries" "0" // doesn't include new one   N/A 3955                }   N/A 3956    N/A 3957                //////////////////////   N/A 3958                // POSITION   N/A 3959                "source_info"   N/A 3960                {   N/A 3961                        "operator" "get_source_info"   N/A 3962                        // "source"   "entity"   N/A 3963                        "source"   "emitter"   N/A 3964                }   N/A 3965    N/A 3966                ////////////////////   N/A 3967                // calc   N/A 3968                "mixer"   N/A 3969                {   N/A 3970                        "operator" "get_soundmixer"   N/A 3971                        "mixgroup" "All"   N/A 3972                }   N/A 3973    N/A 3974                "snd_gain_convar"   N/A 3975                {   N/A 3976                        "operator" "get_convar"   N/A 3977                        "convar" "snd_gain"   N/A 3978                }   N/A 3979    N/A 3980                ////////////////////////   N/A 3981                // tell the mixer we're active   N/A 3982                "output_mixlayer_trigger"   N/A 3983                {   N/A 3984                        "execute_once" "1"   N/A 3985                        "operator" "sys_output"   N/A 3986                        "input_float" "1"   N/A 3987                        "output" "mixlayer_trigger"   N/A 3988                }   N/A 3989    N/A 3990                /////////////////////   N/A 3991                // VOLUME   N/A 3992                "volume_apply_mixer"   N/A 3993                {   N/A 3994                        "operator" "math_float"   N/A 3995                        "apply" "mult"          N/A 3996                        "input1" "@mixer.output_volume"   N/A 3997                        "input2" "@source_info.output_volume"          N/A 3998                }   N/A 3999                "volume_apply_snd_gain_convar"   N/A 4000                {   N/A 4001                        "operator" "math_float"   N/A 4002                        "apply" "mult"          N/A 4003                        "input1" "@snd_gain_convar.output"   N/A 4004                        "input2" "@volume_apply_mixer.output"          N/A 4005                }   N/A 4006    N/A 4007                ///////////////////   N/A 4008                // PITCH   N/A 4009                "pitch_output"   N/A 4010                {   N/A 4011                        "operator" "sys_output"   N/A 4012                        "output"   "pitch"   N/A 4013                        "input_float" "@source_info.output_pitch"          N/A 4014                }   N/A 4015    N/A 4016                ///////////////////   N/A 4017                // DSP   N/A 4018                "dsp_emitter"   N/A 4019                {   N/A 4020                        "operator" "math_float"   N/A 4021                        "apply"              "set"   N/A 4022                        "input1" "1.0"          N/A 4023                }   N/A 4024                "dsp_apply_mixer"   N/A 4025                {   N/A 4026                        "operator" "math_float"   N/A 4027                        "apply" "mult"          N/A 4028                        "input1" "@mixer.output_dsp"   N/A 4029                        "input2" "@dsp_emitter.output"          N/A 4030                }   N/A 4031                "dsp_output"   N/A 4032                {   N/A 4033                        "operator" "sys_output"   N/A 4034                        "input_float" "@dsp_apply_mixer.output"   N/A 4035                        "output" "dsp"   N/A 4036                }   N/A 4037    N/A 4038    N/A 4039    N/A 4040                /////////////////////   N/A 4041                // SPEAKERS   N/A 4042                "snd_op_test_convar"   N/A 4043                {   N/A 4044                        "operator" "get_convar"   N/A 4045                        "convar" "snd_op_test_convar"   N/A 4046                }   N/A 4047                "snd_surround_convar"   N/A 4048                {   N/A 4049                        "operator" "get_convar"   N/A 4050                        "convar" "snd_surround_speakers"   N/A 4051                }   N/A 4052                "remap_surround_dialog"   N/A 4053                {   N/A 4054                        "operator" "math_remap_float"   N/A 4055                        "input" "@snd_surround_convar.output"   N/A 4056                        "input_min" "2"   N/A 4057                        "input_max" "5" //default 0.45   N/A 4058                        "input_map_min" "0.0"   N/A 4059 //                        "input_map_max" "@snd_op_test_convar.output"   N/A 4060                        "input_map_max" "0.28"   N/A 4061                        "default_to_max" "false"          N/A 4062                }   N/A 4063                "snd_surround_dialog_invert"   N/A 4064                {   N/A 4065                        "operator" "math_float"   N/A 4066                        "apply"        "sub"   N/A 4067                        "input1" "1.0"   N/A 4068                        "input2" "@remap_surround_dialog.output"   N/A 4069                }   N/A 4070                "speakers_limit"   N/A 4071                {   N/A 4072                        "operator"      "math_speakers"   N/A 4073                        "apply"               "mult"   N/A 4074    N/A 4075                        "input1[*]"           "@snd_surround_dialog_invert.output"   N/A 4076    N/A 4077 //                         "left_front"   "1.0"   N/A 4078 //                         "right_front"  "1.0"   N/A 4079 //                         "center"       "1.0"   N/A 4080                        "lfe"          "0.0"          N/A 4081 //                         "left_rear"    "1.0"   N/A 4082 //                         "right_rear"   "1.0"   N/A 4083    N/A 4084                        "input2[*]"           "@volume_apply_snd_gain_convar.output"   N/A 4085                }   N/A 4086    N/A 4087                "speakers_output"   N/A 4088                {   N/A 4089                        "operator" "sys_output"   N/A 4090                        "input_speakers" "@speakers_limit.output"   N/A 4091                        "output" "speakers"   N/A 4092                }   N/A 4093        }          N/A 4094    N/A 4095        "update_dialog_spatial"   N/A 4096        {   N/A 4097    N/A 4098                ///////////////////////   N/A 4099        //  stopping previous lines   N/A 4100                "stop_entries"   N/A 4101                {   N/A 4102                        "execute_once" "true"   N/A 4103                        "operator" "sys_stop_entries"   N/A 4104                        "match_channel" "true"   N/A 4105                        "match_entity" "true"          N/A 4106                        "input_max_entries" "0" // doesn't include new one   N/A 4107                }   N/A 4108    N/A 4109                //////////////////////   N/A 4110                // POSITION   N/A 4111                "source_info"   N/A 4112                {   N/A 4113                        "operator" "get_source_info"   N/A 4114                        "source"   "entity"   N/A 4115 //                        "source"   "emitter"   N/A 4116                }   N/A 4117    N/A 4118        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 4119                "source_distance"   N/A 4120                {   N/A 4121                        "operator" "calc_source_distance"   N/A 4122                        "input_position"   "@source_info.output_position"   N/A 4123                }   N/A 4124    N/A 4125                "occlusion"   N/A 4126                {   N/A 4127                        "operator" "calc_occlusion"   N/A 4128                        "input_position" "@source_info.output_position"   N/A 4129 //                        "input_trace_interval" "0.05"   N/A 4130 //                        "input_scalar" "0.7"   N/A 4131                }   N/A 4132    N/A 4133 //                 "print_occlusion"   N/A 4134 //                 {   N/A 4135 //                         "operator" "util_print_float"   N/A 4136 //                         "input" "@occlusion.output"   N/A 4137 //                 }   N/A 4138 //                 // ramp distance to affect occlusion   N/A 4139 //                 "remap_distance_occlusion"   N/A 4140 //                 {   N/A 4141 //                         "operator" "math_remap_float"   N/A 4142 //                         "input" "@source_distance.output"   N/A 4143 //                         "input_min" "1000.0"   N/A 4144 //                         "input_max" "1500.0"   N/A 4145 //                         "input_map_min" "0.0"   N/A 4146 //                         "input_map_max" "1.0"   N/A 4147 //                         "default_to_max" "false"          N/A 4148 //                 }   N/A 4149 //                 "distance_occlusion_invert"   N/A 4150 //                 {   N/A 4151 //                         "operator" "math_float"   N/A 4152 //                         "apply" "sub"          N/A 4153 //                         "input1" "1.0"   N/A 4154 //                         "input2" "@remap_distance_occlusion"   N/A 4155 //                 }   N/A 4156 //                 "occlusion_invert"   N/A 4157 //                 {   N/A 4158 //                         "operator" "math_float"   N/A 4159 //                         "apply" "sub"          N/A 4160 //                         "input1" "1.0"   N/A 4161 //                         "input2" "@occlusion.output"   N/A 4162 //                 }   N/A 4163    N/A 4164    N/A 4165    N/A 4166                ////////////////////   N/A 4167                // calc   N/A 4168                "mixer"   N/A 4169                {   N/A 4170                        "operator" "get_soundmixer"   N/A 4171                        "mixgroup" "All"   N/A 4172                }   N/A 4173    N/A 4174                "snd_gain_convar"   N/A 4175                {   N/A 4176                        "operator" "get_convar"   N/A 4177                        "convar" "snd_gain"   N/A 4178                }   N/A 4179    N/A 4180                "snd_op_test_convar"   N/A 4181                {   N/A 4182                        "operator" "get_convar"   N/A 4183                        "convar" "snd_op_test_convar"   N/A 4184                }   N/A 4185    N/A 4186                ////////////////////////   N/A 4187                // tell the mixer we're active   N/A 4188                "output_mixlayer_trigger"   N/A 4189                {   N/A 4190                        "execute_once" "1"   N/A 4191                        "operator" "sys_output"   N/A 4192                        "input_float" "1"   N/A 4193                        "output" "mixlayer_trigger"   N/A 4194                }   N/A 4195    N/A 4196                //////////////////////   N/A 4197                // LEVEL   N/A 4198                "level_apply_mixer"   N/A 4199                {   N/A 4200                        "operator" "math_float"   N/A 4201                        "apply" "mult"          N/A 4202                        "input1" "@mixer.output_level"   N/A 4203                        "input2" "@source_info.output_level"   N/A 4204                }   N/A 4205    N/A 4206                /////////////////////   N/A 4207                // VOLUME   N/A 4208                "volume_falloff"   N/A 4209                {   N/A 4210                        "operator" "calc_falloff"   N/A 4211                        "input_distance"  "@source_distance.output"   N/A 4212                        "input_level"          "@level_apply_mixer.output"   N/A 4213                }   N/A 4214    N/A 4215    N/A 4216                // NOTE: distance has precalculated minimum distance of the ss players                          N/A 4217                // ramp distance to affect occlusion   N/A 4218 //                 "remap_distance_falloff"   N/A 4219 //                 {   N/A 4220 //                         "operator" "math_remap_float"   N/A 4221 //                         "input" "@source_distance.output"   N/A 4222 //                         "input_min" "2500.0"   N/A 4223 //                         "input_max" "3000.0"   N/A 4224 //                         "input_map_min" "0.0"   N/A 4225 //                         "input_map_max" "1.0"   N/A 4226 //                         "default_to_max" "false"          N/A 4227 //                 }   N/A 4228 //                 "remap_distance_falloff_invert"   N/A 4229 //                 {   N/A 4230 //                         "operator" "math_float"   N/A 4231 //                         "apply"        "sub"   N/A 4232 //                         "input1" "1"   N/A 4233 //                         "input2" "@remap_distance_falloff.output"   N/A 4234 //                 }   N/A 4235    N/A 4236                "volume_apply_occlusion"   N/A 4237                {   N/A 4238                        "operator" "math_float"   N/A 4239                        "apply"        "mult"   N/A 4240                        "input1" "@source_info.output_volume"   N/A 4241                        "input2" "@occlusion.output"   N/A 4242 //                        "input2" "1"   N/A 4243                }   N/A 4244                "volume_apply_falloff"   N/A 4245                {   N/A 4246                        "operator" "math_float"   N/A 4247                        "apply"        "mult"   N/A 4248                        "input1" "@volume_apply_occlusion.output"   N/A 4249                        "input2" "@volume_falloff.output"   N/A 4250                }   N/A 4251 //                 "volume_apply_distance_falloff"   N/A 4252 //                 {   N/A 4253 //                         "operator" "math_float"   N/A 4254 //                         "apply"        "mult"   N/A 4255 //                         "input1" "@volume_apply_falloff.output"   N/A 4256 //                         "input2" "@remap_distance_falloff_invert.output"   N/A 4257 //                 }   N/A 4258                "volume_apply_mixer"   N/A 4259                {   N/A 4260                        "operator" "math_float"   N/A 4261                        "apply" "mult"          N/A 4262                        "input1" "@mixer.output_volume"   N/A 4263                        "input2" "@volume_apply_falloff.output"          N/A 4264                }   N/A 4265 //                 "volume_apply_distance_occlusion"   N/A 4266 //                 {   N/A 4267 //                         "operator" "math_float"   N/A 4268 //                         "apply" "mult"          N/A 4269 //                         "input1" "@mixer.output_volume"   N/A 4270 //                         "input2" "@volume_apply_falloff.output"          N/A 4271 //                 }   N/A 4272                "volume_apply_snd_gain_convar"   N/A 4273                {   N/A 4274                        "operator" "math_float"   N/A 4275                        "apply" "mult"          N/A 4276                        "input1" "@snd_gain_convar.output"   N/A 4277                        "input2" "@volume_apply_mixer.output"          N/A 4278                }   N/A 4279                "volume_apply_test_convar"   N/A 4280                {   N/A 4281                        "operator" "math_float"   N/A 4282                        "apply" "mult"          N/A 4283                        "input1" "1.0"   N/A 4284                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 4285                }   N/A 4286    N/A 4287                ///////////////////   N/A 4288                // PITCH   N/A 4289                "pitch_output"   N/A 4290                {   N/A 4291                        "operator" "sys_output"   N/A 4292                        "output"   "pitch"   N/A 4293                        "input_float" "@source_info.output_pitch"          N/A 4294                }   N/A 4295    N/A 4296                ///////////////////   N/A 4297                // DSP   N/A 4298                "dsp_emitter"   N/A 4299                {   N/A 4300                        "operator" "math_float"   N/A 4301                        "apply"              "set"   N/A 4302                        "input1" "1.0"          N/A 4303                }   N/A 4304                "dsp_apply_mixer"   N/A 4305                {   N/A 4306                        "operator" "math_float"   N/A 4307                        "apply" "mult"          N/A 4308                        "input1" "@mixer.output_dsp"   N/A 4309                        "input2" "@dsp_emitter.output"          N/A 4310                }   N/A 4311                "dsp_distantDSP"   N/A 4312                {   N/A 4313                        "operator" "calc_distant_dsp"   N/A 4314                        "input_distance"  "@source_distance.output"   N/A 4315                        "input_level"          "@level_apply_mixer.output"   N/A 4316                }   N/A 4317                "dsp_apply_distance"   N/A 4318                {   N/A 4319                        "operator" "math_float"   N/A 4320                        "apply" "mult"          N/A 4321                        "input1" "@dsp_distantDSP.output"   N/A 4322                        "input2" "@dsp_apply_mixer.output"          N/A 4323                }   N/A 4324                "dsp_output"   N/A 4325                {   N/A 4326                        "operator" "sys_output"   N/A 4327                        "input_float" "@dsp_apply_distance.output"   N/A 4328                        "output" "dsp"   N/A 4329                }   N/A 4330    N/A 4331                /////////////////////   N/A 4332                // SPEAKERS   N/A 4333    N/A 4334                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 4335                "speakers_spatialize"   N/A 4336                {   N/A 4337                        "operator" "calc_spatialize_speakers"   N/A 4338                        "input_radius"  "300"   N/A 4339                        "input_rear_stereo_scale" "1.0"   N/A 4340                        "input_distance"  "@source_distance.output"   N/A 4341                        "input_position"  "@source_info.output_position"   N/A 4342                }   N/A 4343    N/A 4344                "speakers_apply_volume"   N/A 4345                {   N/A 4346                        "operator"     "math_speakers"   N/A 4347                        "apply"               "mult"   N/A 4348                        "input1"       "@speakers_spatialize.output"   N/A 4349                        "input2[*]"           "@volume_apply_test_convar.output"   N/A 4350                }   N/A 4351    N/A 4352                "speakers_limit"   N/A 4353                {   N/A 4354                        "operator"      "math_speakers"   N/A 4355                        "apply"               "max"   N/A 4356    N/A 4357                        "left_front"   "0.0"          N/A 4358                        "right_front"  "0.0"          N/A 4359                        "center"       "0.0"          N/A 4360                        "lfe"          "0.0"          N/A 4361                        "left_rear"    "0.0"   N/A 4362                        "right_rear"   "0.0"          N/A 4363    N/A 4364                        "input2"           "@speakers_apply_volume.output"   N/A 4365                }   N/A 4366    N/A 4367                "speakers_output"   N/A 4368                {   N/A 4369                        "operator" "sys_output"   N/A 4370                        "input_speakers" "@speakers_limit.output"   N/A 4371                        "output" "speakers"   N/A 4372                }   N/A 4373        }          N/A 4374    N/A 4375        "p2_update_dialog_spatial_cave"   N/A 4376        {   N/A 4377                ///////////////////////   N/A 4378        //  stopping previous lines   N/A 4379                "stop_entries"   N/A 4380                {   N/A 4381                        "execute_once" "true"   N/A 4382                        "operator" "sys_stop_entries"   N/A 4383                        "match_channel" "true"   N/A 4384                        "match_entity" "true"          N/A 4385                        "input_max_entries" "0" // doesn't include new one   N/A 4386                }   N/A 4387    N/A 4388                //////////////////////   N/A 4389                // POSITION   N/A 4390                "source_info"   N/A 4391                {   N/A 4392                        "operator" "get_source_info"   N/A 4393                        "source"   "entity"   N/A 4394 //                        "source"   "emitter"   N/A 4395                }   N/A 4396                "position_array"   N/A 4397                {   N/A 4398                        "operator" "util_pos_vec8"   N/A 4399    N/A 4400                        "input_entry_count" "1"   N/A 4401                        "input_index" "0"          N/A 4402                        "input_position_0" "@source_info.output_position"   N/A 4403    N/A 4404                }   N/A 4405    N/A 4406        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 4407                "source_distance"   N/A 4408                {   N/A 4409                        "operator" "calc_source_distance"   N/A 4410                        "input_position"   "@position_array.output_position"   N/A 4411                }   N/A 4412    N/A 4413 //                 "occlusion"   N/A 4414 //                 {   N/A 4415 //                         "operator" "calc_occlusion"   N/A 4416 //                         "input_position" "@position_array.output_position"   N/A 4417 // //                         "input_scalar" "0.5"   N/A 4418 // //                         "input_trace_interval" "0.25"   N/A 4419 //                 }   N/A 4420    N/A 4421 //                 // ramp distance to affect occlusion   N/A 4422 //                 "remap_distance_occlusion"   N/A 4423 //                 {   N/A 4424 //                         "operator" "math_remap_float"   N/A 4425 //                         "input" "@source_distance.output"   N/A 4426 //                         "input_min" "1000.0"   N/A 4427 //                         "input_max" "1500.0"   N/A 4428 //                         "input_map_min" "0.0"   N/A 4429 //                         "input_map_max" "1.0"   N/A 4430 //                         "default_to_max" "false"          N/A 4431 //                 }   N/A 4432 //                 "distance_occlusion_invert"   N/A 4433 //                 {   N/A 4434 //                         "operator" "math_float"   N/A 4435 //                         "apply" "sub"          N/A 4436 //                         "input1" "1.0"   N/A 4437 //                         "input2" "@remap_distance_occlusion"   N/A 4438 //                 }   N/A 4439 //                 "occlusion_invert"   N/A 4440 //                 {   N/A 4441 //                         "operator" "math_float"   N/A 4442 //                         "apply" "sub"          N/A 4443 //                         "input1" "1.0"   N/A 4444 //                         "input2" "@occlusion.output"   N/A 4445 //                 }   N/A 4446    N/A 4447    N/A 4448    N/A 4449                ////////////////////   N/A 4450                // calc   N/A 4451                "mixer"   N/A 4452                {   N/A 4453                        "operator" "get_soundmixer"   N/A 4454                        "mixgroup" "caveVO"   N/A 4455                }   N/A 4456    N/A 4457                "snd_gain_convar"   N/A 4458                {   N/A 4459                        "operator" "get_convar"   N/A 4460                        "convar" "snd_gain"   N/A 4461                }   N/A 4462    N/A 4463                "snd_op_test_convar"   N/A 4464                {   N/A 4465                        "operator" "get_convar"   N/A 4466                        "convar" "snd_op_test_convar"   N/A 4467                }   N/A 4468    N/A 4469                ////////////////////////   N/A 4470                // tell the mixer we're active   N/A 4471                "output_mixlayer_trigger"   N/A 4472                {   N/A 4473                        "execute_once" "1"   N/A 4474                        "operator" "sys_output"   N/A 4475                        "input_float" "1"   N/A 4476                        "output" "mixlayer_trigger"   N/A 4477                }   N/A 4478    N/A 4479                //////////////////////   N/A 4480                // LEVEL   N/A 4481                "level_apply_mixer"   N/A 4482                {   N/A 4483                        "operator" "math_float"   N/A 4484                        "apply" "mult"          N/A 4485                        "input1" "@mixer.output_level"   N/A 4486                        "input2" "90"   N/A 4487                }   N/A 4488    N/A 4489                /////////////////////   N/A 4490                // VOLUME   N/A 4491                "volume_falloff"   N/A 4492                {   N/A 4493                        "operator" "calc_falloff"   N/A 4494                        "input_distance"  "@source_distance.output"   N/A 4495                        "input_level"          "@level_apply_mixer.output"   N/A 4496                }   N/A 4497    N/A 4498    N/A 4499                // NOTE: distance has precalculated minimum distance of the ss players                          N/A 4500                // ramp distance to affect occlusion   N/A 4501 //                 "remap_distance_falloff"   N/A 4502 //                 {   N/A 4503 //                         "operator" "math_remap_float"   N/A 4504 //                         "input" "@source_distance.output"   N/A 4505 //                         "input_min" "2500.0"   N/A 4506 //                         "input_max" "3000.0"   N/A 4507 //                         "input_map_min" "0.0"   N/A 4508 //                         "input_map_max" "1.0"   N/A 4509 //                         "default_to_max" "false"          N/A 4510 //                 }   N/A 4511 //                 "remap_distance_falloff_invert"   N/A 4512 //                 {   N/A 4513 //                         "operator" "math_float"   N/A 4514 //                         "apply"        "sub"   N/A 4515 //                         "input1" "1"   N/A 4516 //                         "input2" "@remap_distance_falloff.output"   N/A 4517 //                 }   N/A 4518    N/A 4519                "volume_apply_occlusion"   N/A 4520                {   N/A 4521                        "operator" "math_float"   N/A 4522                        "apply"        "mult"   N/A 4523                        "input1" "@source_info.output_volume"   N/A 4524 //                        "input2" "@occlusion.output"   N/A 4525                        "input2" "1"   N/A 4526                }   N/A 4527                "volume_apply_falloff"   N/A 4528                {   N/A 4529                        "operator" "math_float"   N/A 4530                        "apply"        "mult"   N/A 4531                        "input1" "@volume_apply_occlusion.output"   N/A 4532                        "input2" "@volume_falloff.output"   N/A 4533                }   N/A 4534 //                 "volume_apply_distance_falloff"   N/A 4535 //                 {   N/A 4536 //                         "operator" "math_float"   N/A 4537 //                         "apply"        "mult"   N/A 4538 //                         "input1" "@volume_apply_falloff.output"   N/A 4539 //                         "input2" "@remap_distance_falloff_invert.output"   N/A 4540 //                 }   N/A 4541                "volume_apply_mixer"   N/A 4542                {   N/A 4543                        "operator" "math_float"   N/A 4544                        "apply" "mult"          N/A 4545                        "input1" "@mixer.output_volume"   N/A 4546                        "input2" "@volume_apply_falloff.output"          N/A 4547                }   N/A 4548 //                 "volume_apply_distance_occlusion"   N/A 4549 //                 {   N/A 4550 //                         "operator" "math_float"   N/A 4551 //                         "apply" "mult"          N/A 4552 //                         "input1" "@mixer.output_volume"   N/A 4553 //                         "input2" "@volume_apply_falloff.output"          N/A 4554 //                 }   N/A 4555                "volume_apply_snd_gain_convar"   N/A 4556                {   N/A 4557                        "operator" "math_float"   N/A 4558                        "apply" "mult"          N/A 4559                        "input1" "@snd_gain_convar.output"   N/A 4560                        "input2" "@volume_apply_mixer.output"          N/A 4561                }   N/A 4562                "volume_apply_test_convar"   N/A 4563                {   N/A 4564                        "operator" "math_float"   N/A 4565                        "apply" "mult"          N/A 4566                        "input1" "1.0"   N/A 4567                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 4568                }   N/A 4569    N/A 4570                ///////////////////   N/A 4571                // PITCH   N/A 4572                "pitch_output"   N/A 4573                {   N/A 4574                        "operator" "sys_output"   N/A 4575                        "output"   "pitch"   N/A 4576                        "input_float" "@source_info.output_pitch"          N/A 4577                }   N/A 4578    N/A 4579                ///////////////////   N/A 4580                // DSP   N/A 4581                "dsp_emitter"   N/A 4582                {   N/A 4583                        "operator" "math_float"   N/A 4584                        "apply"              "set"   N/A 4585                        "input1" "1.0"          N/A 4586                }   N/A 4587                "dsp_apply_mixer"   N/A 4588                {   N/A 4589                        "operator" "math_float"   N/A 4590                        "apply" "mult"          N/A 4591                        "input1" "@mixer.output_dsp"   N/A 4592                        "input2" "@dsp_emitter.output"          N/A 4593                }   N/A 4594                "dsp_distantDSP"   N/A 4595                {   N/A 4596                        "operator" "calc_distant_dsp"   N/A 4597                        "input_distance"  "@source_distance.output"   N/A 4598                        "input_level"          "@level_apply_mixer.output"   N/A 4599                }   N/A 4600                "dsp_apply_distance"   N/A 4601                {   N/A 4602                        "operator" "math_float"   N/A 4603                        "apply" "mult"          N/A 4604                        "input1" "@dsp_distantDSP.output"   N/A 4605                        "input2" "@dsp_apply_mixer.output"          N/A 4606                }   N/A 4607                 "dsp_min"   N/A 4608                {   N/A 4609                        "operator" "math_float"   N/A 4610                        "apply" "max"          N/A 4611                        "input1" "0.4"   N/A 4612                        "input2" "@dsp_apply_distance.output"          N/A 4613                }   N/A 4614                 "dsp_max"   N/A 4615                {   N/A 4616                        "operator" "math_float"   N/A 4617                        "apply" "min"          N/A 4618                        "input1" "0.6"   N/A 4619                        "input2" "@dsp_min.output"          N/A 4620                }   N/A 4621                "dsp_output"   N/A 4622                {   N/A 4623                        "operator" "sys_output"   N/A 4624                        "input_float" "@dsp_max.output"   N/A 4625                        "output" "dsp"   N/A 4626                }   N/A 4627    N/A 4628                /////////////////////   N/A 4629                // SPEAKERS   N/A 4630    N/A 4631                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 4632                "speakers_spatialize"   N/A 4633                {   N/A 4634                        "operator" "calc_spatialize_speakers"   N/A 4635                        "input_radius"  "60"   N/A 4636                        "input_rear_stereo_scale" "1.0"   N/A 4637                        "input_distance"  "@source_distance.output"   N/A 4638                        "input_position"  "@position_array.output_position"   N/A 4639                }   N/A 4640    N/A 4641                "speakers_apply_volume"   N/A 4642                {   N/A 4643                        "operator"     "math_speakers"   N/A 4644                        "apply"               "mult"   N/A 4645                        "input1"       "@speakers_spatialize.output"   N/A 4646                        "input2[*]"           "@volume_apply_test_convar.output"   N/A 4647                }   N/A 4648    N/A 4649                "speakers_limit"   N/A 4650                {   N/A 4651                        "operator"      "math_speakers"   N/A 4652                        "apply"               "max"   N/A 4653    N/A 4654                        "left_front"   "0.0"          N/A 4655                        "right_front"  "0.0"          N/A 4656                        "center"       "0.0"          N/A 4657                        "lfe"          "0.0"          N/A 4658                        "left_rear"    "0.0"   N/A 4659                        "right_rear"   "0.0"          N/A 4660    N/A 4661                        "input2"           "@speakers_apply_volume.output"   N/A 4662                }   N/A 4663    N/A 4664                "speakers_multi_origin"   N/A 4665                {   N/A 4666                        "operator"    "iterate_merge_speakers"   N/A 4667    N/A 4668                        "input_max_iterations" "@position_array.output_max_index"   N/A 4669            "iterate_operator" "position_array"   N/A 4670                        "input" "@speakers_limit.output"   N/A 4671    N/A 4672                }   N/A 4673    N/A 4674                // connecting output after operator has been created   N/A 4675                "position_array"   N/A 4676                {   N/A 4677                        "input_index" "@speakers_multi_origin.output_index"          N/A 4678                }   N/A 4679    N/A 4680                "speakers_output"   N/A 4681                {   N/A 4682                        "operator" "sys_output"   N/A 4683                        "input_speakers" "@speakers_multi_origin.output"   N/A 4684                        "output" "speakers"   N/A 4685                }   N/A 4686        }          N/A 4687    N/A 4688        "p2_update_dialog_spatial_cores"   N/A 4689        {   N/A 4690                "import_stack" "update_dialog_spatial"   N/A 4691                "mixer"   N/A 4692                {   N/A 4693                        "mixgroup" "coreVO"   N/A 4694                }   N/A 4695                "speakers_spatialize"   N/A 4696                {   N/A 4697                                "input_radius"  "200"   N/A 4698                }   N/A 4699        }   N/A 4700    N/A 4701        "p2_update_dialog_spatial_wheatley"   N/A 4702        {   N/A 4703                ///////////////////////   N/A 4704        //  stopping previous lines   N/A 4705                "stop_entries"   N/A 4706                {   N/A 4707                        "execute_once" "true"   N/A 4708                        "operator" "sys_stop_entries"   N/A 4709                        "match_channel" "true"   N/A 4710                        "match_entity" "true"          N/A 4711                        "input_max_entries" "0" // doesn't include new one   N/A 4712                }   N/A 4713    N/A 4714                //////////////////////   N/A 4715                // POSITION   N/A 4716                "source_info"   N/A 4717                {   N/A 4718                        "operator" "get_source_info"   N/A 4719                        "source"   "entity"   N/A 4720 //                        "source"   "emitter"   N/A 4721                }   N/A 4722    N/A 4723        // NOTE: uses player data, ie: SS, returns minimum distance   N/A 4724                "source_distance"   N/A 4725                {   N/A 4726                        "operator" "calc_source_distance"   N/A 4727                        "input_position"   "@source_info.output_position"   N/A 4728                }   N/A 4729    N/A 4730                "occlusion"   N/A 4731                {   N/A 4732                        "operator" "calc_occlusion"   N/A 4733                        "input_position" "@source_info.output_position"   N/A 4734 //                        "input_trace_interval" "0.05"   N/A 4735 //                        "input_scalar" "0.7"   N/A 4736                }   N/A 4737    N/A 4738 //                 "print_occlusion"   N/A 4739 //                 {   N/A 4740 //                         "operator" "util_print_float"   N/A 4741 //                         "input" "@occlusion.output"   N/A 4742 //                 }   N/A 4743 //                 // ramp distance to affect occlusion   N/A 4744 //                 "remap_distance_occlusion"   N/A 4745 //                 {   N/A 4746 //                         "operator" "math_remap_float"   N/A 4747 //                         "input" "@source_distance.output"   N/A 4748 //                         "input_min" "1000.0"   N/A 4749 //                         "input_max" "1500.0"   N/A 4750 //                         "input_map_min" "0.0"   N/A 4751 //                         "input_map_max" "1.0"   N/A 4752 //                         "default_to_max" "false"          N/A 4753 //                 }   N/A 4754 //                 "distance_occlusion_invert"   N/A 4755 //                 {   N/A 4756 //                         "operator" "math_float"   N/A 4757 //                         "apply" "sub"          N/A 4758 //                         "input1" "1.0"   N/A 4759 //                         "input2" "@remap_distance_occlusion"   N/A 4760 //                 }   N/A 4761 //                 "occlusion_invert"   N/A 4762 //                 {   N/A 4763 //                         "operator" "math_float"   N/A 4764 //                         "apply" "sub"          N/A 4765 //                         "input1" "1.0"   N/A 4766 //                         "input2" "@occlusion.output"   N/A 4767 //                 }   N/A 4768    N/A 4769    N/A 4770    N/A 4771                ////////////////////   N/A 4772                // calc   N/A 4773                "mixer"   N/A 4774                {   N/A 4775                        "operator" "get_soundmixer"   N/A 4776                        "mixgroup" "wheatleyVO"   N/A 4777                }   N/A 4778    N/A 4779                "snd_gain_convar"   N/A 4780                {   N/A 4781                        "operator" "get_convar"   N/A 4782                        "convar" "snd_gain"   N/A 4783                }   N/A 4784    N/A 4785                "snd_op_test_convar"   N/A 4786                {   N/A 4787                        "operator" "get_convar"   N/A 4788                        "convar" "snd_op_test_convar"   N/A 4789                }   N/A 4790    N/A 4791                ////////////////////////   N/A 4792                // tell the mixer we're active   N/A 4793                "output_mixlayer_trigger"   N/A 4794                {   N/A 4795                        "execute_once" "1"   N/A 4796                        "operator" "sys_output"   N/A 4797                        "input_float" "1"   N/A 4798                        "output" "mixlayer_trigger"   N/A 4799                }   N/A 4800    N/A 4801                //////////////////////   N/A 4802                // LEVEL   N/A 4803                "level_apply_mixer"   N/A 4804                {   N/A 4805                        "operator" "math_float"   N/A 4806                        "apply" "mult"          N/A 4807                        "input1" "@mixer.output_level"   N/A 4808                        "input2" "@source_info.output_level"   N/A 4809                }   N/A 4810    N/A 4811                /////////////////////   N/A 4812                // VOLUME   N/A 4813                "volume_falloff"   N/A 4814                {   N/A 4815                        "operator" "calc_falloff"   N/A 4816                        "input_distance"  "@source_distance.output"   N/A 4817                        "input_level"          "@level_apply_mixer.output"   N/A 4818                }   N/A 4819    N/A 4820    N/A 4821                // NOTE: distance has precalculated minimum distance of the ss players                          N/A 4822                // ramp distance to affect occlusion   N/A 4823 //                 "remap_distance_falloff"   N/A 4824 //                 {   N/A 4825 //                         "operator" "math_remap_float"   N/A 4826 //                         "input" "@source_distance.output"   N/A 4827 //                         "input_min" "2500.0"   N/A 4828 //                         "input_max" "3000.0"   N/A 4829 //                         "input_map_min" "0.0"   N/A 4830 //                         "input_map_max" "1.0"   N/A 4831 //                         "default_to_max" "false"          N/A 4832 //                 }   N/A 4833 //                 "remap_distance_falloff_invert"   N/A 4834 //                 {   N/A 4835 //                         "operator" "math_float"   N/A 4836 //                         "apply"        "sub"   N/A 4837 //                         "input1" "1"   N/A 4838 //                         "input2" "@remap_distance_falloff.output"   N/A 4839 //                 }   N/A 4840                "volume_test_distance"   N/A 4841                {   N/A 4842                        "operator" "math_float"   N/A 4843                        "apply" "less_than"          N/A 4844                        "input1" "@source_distance.output"   N/A 4845                        "input2" "80"   N/A 4846                }   N/A 4847                "volume_defeat_occlusion"   N/A 4848                {   N/A 4849                        "operator" "math_float"   N/A 4850                        "apply" "max"          N/A 4851                        "input1" "@volume_test_distance.output"   N/A 4852                        "input2" "@occlusion.output"          N/A 4853                }   N/A 4854    N/A 4855                "volume_apply_occlusion"   N/A 4856                {   N/A 4857                        "operator" "math_float"   N/A 4858                        "apply"        "mult"   N/A 4859                        "input1" "@source_info.output_volume"   N/A 4860                        "input2" "@volume_defeat_occlusion.output"   N/A 4861 //                        "input2" "1"   N/A 4862                }   N/A 4863                "remap_distance_falloff"   N/A 4864                {   N/A 4865                        "operator" "math_remap_float"   N/A 4866                        "input" "@source_distance.output"   N/A 4867                        "input_min" "400"   N/A 4868                        "input_max" "600"   N/A 4869                        "input_map_min" "1.0"   N/A 4870                        "input_map_max" "1.3"   N/A 4871                        "default_to_max" "false"          N/A 4872                }   N/A 4873                "volume_apply_falloff"   N/A 4874                {   N/A 4875                        "operator" "math_float"   N/A 4876                        "apply"        "mult"   N/A 4877                        "input1" "@volume_apply_occlusion.output"   N/A 4878                        "input2" "@volume_falloff.output"   N/A 4879                }   N/A 4880                "volume_apply_distance_falloff"   N/A 4881                {   N/A 4882                        "operator" "math_float"   N/A 4883                        "apply"        "mult"   N/A 4884                        "input1" "@volume_apply_falloff.output"   N/A 4885                        "input2" "@remap_distance_falloff.output"   N/A 4886                }   N/A 4887                "volume_apply_mixer"   N/A 4888                {   N/A 4889                        "operator" "math_float"   N/A 4890                        "apply" "mult"          N/A 4891                        "input1" "@mixer.output_volume"   N/A 4892                        "input2" "@volume_apply_distance_falloff.output"          N/A 4893                }   N/A 4894 //                 "volume_apply_distance_occlusion"   N/A 4895 //                 {   N/A 4896 //                         "operator" "math_float"   N/A 4897 //                         "apply" "mult"          N/A 4898 //                         "input1" "@mixer.output_volume"   N/A 4899 //                         "input2" "@volume_apply_falloff.output"          N/A 4900 //                 }   N/A 4901                "volume_apply_snd_gain_convar"   N/A 4902                {   N/A 4903                        "operator" "math_float"   N/A 4904                        "apply" "mult"          N/A 4905                        "input1" "@snd_gain_convar.output"   N/A 4906                        "input2" "@volume_apply_mixer.output"          N/A 4907                }   N/A 4908                "volume_apply_test_convar"   N/A 4909                {   N/A 4910                        "operator" "math_float"   N/A 4911                        "apply" "mult"          N/A 4912                        "input1" "1.0"   N/A 4913                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 4914                }   N/A 4915    N/A 4916                ///////////////////   N/A 4917                // PITCH   N/A 4918                "pitch_output"   N/A 4919                {   N/A 4920                        "operator" "sys_output"   N/A 4921                        "output"   "pitch"   N/A 4922                        "input_float" "@source_info.output_pitch"          N/A 4923                }   N/A 4924    N/A 4925                ///////////////////   N/A 4926                // DSP   N/A 4927                "dsp_emitter"   N/A 4928                {   N/A 4929                        "operator" "math_float"   N/A 4930                        "apply"              "set"   N/A 4931                        "input1" "1.0"          N/A 4932                }   N/A 4933                "dsp_apply_mixer"   N/A 4934                {   N/A 4935                        "operator" "math_float"   N/A 4936                        "apply" "mult"          N/A 4937                        "input1" "@mixer.output_dsp"   N/A 4938                        "input2" "@dsp_emitter.output"          N/A 4939                }   N/A 4940                "dsp_distantDSP"   N/A 4941                {   N/A 4942                        "operator" "calc_distant_dsp"   N/A 4943                        "input_distance"  "@source_distance.output"   N/A 4944                        "input_level"          "@level_apply_mixer.output"   N/A 4945                }   N/A 4946                "dsp_apply_distance"   N/A 4947                {   N/A 4948                        "operator" "math_float"   N/A 4949                        "apply" "mult"          N/A 4950                        "input1" "@dsp_distantDSP.output"   N/A 4951                        "input2" "@dsp_apply_mixer.output"          N/A 4952                }   N/A 4953                "dsp_output"   N/A 4954                {   N/A 4955                        "operator" "sys_output"   N/A 4956                        "input_float" "@dsp_apply_distance.output"   N/A 4957                        "output" "dsp"   N/A 4958                }   N/A 4959    N/A 4960                /////////////////////   N/A 4961                // SPEAKERS   N/A 4962    N/A 4963                "radius_get_sp_a1_intro1"   N/A 4964                {   N/A 4965 //                        "execute_once" "true"   N/A 4966 //                        "input_execute" "1.0" //enable map checking here   N/A 4967                        "operator" "get_map_name"   N/A 4968                        "map_name" "sp_a1_intro1" //your map name here   N/A 4969                }          N/A 4970                "radius_invert_test"   N/A 4971                {   N/A 4972                        "operator" "math_float"   N/A 4973                        "apply" "less_than"          N/A 4974                        "input1" "@radius_get_sp_a1_intro1.output"   N/A 4975                        "input2" "1.0"   N/A 4976                }   N/A 4977    N/A 4978                "radius_remap_map_test1"   N/A 4979                {   N/A 4980                        "operator" "math_remap_float"   N/A 4981                        "input" "@radius_invert_test.output"   N/A 4982                        "input_min" "0"   N/A 4983                        "input_max" "1"   N/A 4984                        "input_map_min" "600.0"   N/A 4985                        "input_map_max" "600.0"   N/A 4986                        "default_to_max" "false"          N/A 4987                }   N/A 4988                // NOTE: uses player data, ie: SS, calculates all players and merges them   N/A 4989                "speakers_spatialize"   N/A 4990                {   N/A 4991                        "operator" "calc_spatialize_speakers"   N/A 4992                        "input_radius"  "@radius_remap_map_test1.output"   N/A 4993                        "input_rear_stereo_scale" "1.0"   N/A 4994                        "input_distance"  "@source_distance.output"   N/A 4995                        "input_position"  "@source_info.output_position"   N/A 4996                }   N/A 4997    N/A 4998                "speakers_apply_volume"   N/A 4999                {   N/A 5000                        "operator"     "math_speakers"   N/A 5001                        "apply"               "mult"   N/A 5002                        "input1"       "@speakers_spatialize.output"   N/A 5003                        "input2[*]"           "@volume_apply_test_convar.output"   N/A 5004                }   N/A 5005    N/A 5006                "speakers_limit"   N/A 5007                {   N/A 5008                        "operator"      "math_speakers"   N/A 5009                        "apply"               "max"   N/A 5010    N/A 5011                        "left_front"   "0.0"          N/A 5012                        "right_front"  "0.0"          N/A 5013                        "center"       "0.0"          N/A 5014                        "lfe"          "0.0"          N/A 5015                        "left_rear"    "0.0"   N/A 5016                        "right_rear"   "0.0"          N/A 5017    N/A 5018                        "input2"           "@speakers_apply_volume.output"   N/A 5019                }   N/A 5020    N/A 5021                "speakers_output"   N/A 5022                {   N/A 5023                        "operator" "sys_output"   N/A 5024                        "input_speakers" "@speakers_limit.output"   N/A 5025                        "output" "speakers"   N/A 5026                }   N/A 5027        }   N/A 5028    N/A 5029    N/A 5030 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 5031 //   N/A 5032 // SPECIALTY STACKS   N/A 5033 //   N/A 5034 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 5035    N/A 5036        "update_facing"   N/A 5037        {   N/A 5038    N/A 5039                //////////////////////   N/A 5040                // POSITION   N/A 5041                "source_info"   N/A 5042                {   N/A 5043                        "operator" "get_source_info"   N/A 5044                        // "source"   "entity"   N/A 5045                        "source"   "emitter"   N/A 5046                }   N/A 5047    N/A 5048                // NOTE: uses player data, ie: SS, returns nearest distance   N/A 5049                "source_distance"   N/A 5050                {   N/A 5051                        "operator" "calc_source_distance"   N/A 5052                        "input_position"   "@source_info.output_position"   N/A 5053                }   N/A 5054    N/A 5055                ////////////////////   N/A 5056                // calc   N/A 5057                "mixer"   N/A 5058                {   N/A 5059                        "operator" "get_soundmixer"   N/A 5060                        "mixgroup" "TEST"   N/A 5061                }   N/A 5062    N/A 5063                // NOTE: uses player data, ie: SS, least occluded player   N/A 5064                "occlusion"   N/A 5065                {   N/A 5066                        "operator" "calc_occlusion"   N/A 5067                        "input_position" "@source_info.output_position"   N/A 5068                }   N/A 5069    N/A 5070                // NOTE: uses player data, ie: blended origin for SS players   N/A 5071                "facing"   N/A 5072                {   N/A 5073                        "operator" "calc_angles_facing"   N/A 5074                        // "input_angles" "@source_info.output_angles"   N/A 5075                        "input_angles[0]" "0"   N/A 5076                        "input_angles[1]" "0"   N/A 5077                        "input_angles[2]" "0"   N/A 5078                }   N/A 5079    N/A 5080                "facing_output"   N/A 5081                {   N/A 5082                        "operator" "sys_output"   N/A 5083                        "input_float" "@facing.output"   N/A 5084                        "output" "facing"   N/A 5085                }   N/A 5086                "snd_gain_convar"   N/A 5087                {   N/A 5088                        "operator" "get_convar"   N/A 5089                        "convar" "snd_gain"   N/A 5090                }   N/A 5091    N/A 5092                "snd_op_test_convar"   N/A 5093                {   N/A 5094                        "operator" "get_convar"   N/A 5095                        "convar" "snd_op_test_convar"   N/A 5096                }   N/A 5097    N/A 5098                //////////////////////   N/A 5099                // LEVEL   N/A 5100                "level_apply_mixer"   N/A 5101                {   N/A 5102                        "operator" "math_float"   N/A 5103                        "apply" "mult"          N/A 5104                        "input1" "@mixer.output_level"   N/A 5105                        "input2" "@source_info.output_level"   N/A 5106                }   N/A 5107    N/A 5108                /////////////////////   N/A 5109                // VOLUME   N/A 5110                "volume_falloff"   N/A 5111                {   N/A 5112                        "operator" "calc_falloff"   N/A 5113                        "input_distance"  "@source_distance.output"   N/A 5114                        "input_level"          "@level_apply_mixer.output"   N/A 5115                }   N/A 5116                "volume_apply_falloff"   N/A 5117                {   N/A 5118                        "operator" "math_float"   N/A 5119                        "apply"        "mult"   N/A 5120                        "input1" "@source_info.output_volume"   N/A 5121                        "input2" "@volume_falloff.output"   N/A 5122                }   N/A 5123    N/A 5124                "volume_apply_mixer"   N/A 5125                {   N/A 5126                        "operator" "math_float"   N/A 5127                        "apply" "mult"          N/A 5128                        "input1" "@mixer.output_volume"   N/A 5129                        "input2" "@volume_apply_falloff.output"          N/A 5130                }   N/A 5131                "volume_apply_snd_gain_convar"   N/A 5132                {   N/A 5133                        "operator" "math_float"   N/A 5134                        "apply" "mult"          N/A 5135                        "input1" "@snd_gain_convar.output"   N/A 5136                        "input2" "@volume_apply_mixer.output"          N/A 5137                }   N/A 5138                "volume_apply_test_convar"   N/A 5139                {   N/A 5140                        "operator" "math_float"   N/A 5141                        "apply" "mult"          N/A 5142                        "input1" "1.0"   N/A 5143                        "input2" "@volume_apply_snd_gain_convar.output"          N/A 5144                }   N/A 5145    N/A 5146                "volume_apply_facing"   N/A 5147                {   N/A 5148                        "operator" "math_float"   N/A 5149                        "apply" "mult"          N/A 5150                        "input1" "@facing.output"   N/A 5151                        "input2" "@volume_apply_test_convar.output"          N/A 5152                }   N/A 5153    N/A 5154                "volume_apply_occlusion"   N/A 5155                {   N/A 5156                        "operator" "math_float"   N/A 5157                        "apply"        "mult"   N/A 5158                        "input1" "@volume_apply_facing.output"   N/A 5159                        "input2" "@occlusion.output"   N/A 5160                }   N/A 5161    N/A 5162                ///////////////////   N/A 5163                // PITCH   N/A 5164                "pitch_output"   N/A 5165                {   N/A 5166                        "operator" "sys_output"   N/A 5167                        "output"   "pitch"   N/A 5168                        "input_float" "@source_info.output_pitch"          N/A 5169                }   N/A 5170    N/A 5171                ///////////////////   N/A 5172                // DSP   N/A 5173                "dsp_emitter"   N/A 5174                {   N/A 5175                        "operator" "math_float"   N/A 5176                        "apply"              "set"   N/A 5177                        "input1" "1.0"          N/A 5178                }   N/A 5179                "dsp_apply_mixer"   N/A 5180                {   N/A 5181                        "operator" "math_float"   N/A 5182                        "apply" "mult"          N/A 5183                        "input1" "@mixer.output_dsp"   N/A 5184                        "input2" "@dsp_emitter.output"          N/A 5185                }   N/A 5186                "dsp_distantDSP"   N/A 5187                {   N/A 5188                        "operator" "calc_distant_dsp"   N/A 5189                        "input_distance"  "@source_distance.output"   N/A 5190                        "input_level"          "@level_apply_mixer.output"   N/A 5191                }   N/A 5192                "dsp_apply_distant"   N/A 5193                {   N/A 5194                        "operator" "math_float"   N/A 5195                        "apply"              "mult"   N/A 5196                        "input1" "@dsp_distantDSP.output"   N/A 5197                        "input2" "@dsp_apply_mixer.output"                          N/A 5198                }   N/A 5199                "dsp_output"   N/A 5200                {   N/A 5201                        "operator" "sys_output"   N/A 5202                        "input_float" "@dsp_apply_distant.output"   N/A 5203                        "output" "speakers"   N/A 5204                }   N/A 5205                /////////////////////   N/A 5206                // SPEAKERS   N/A 5207    N/A 5208                // NOTE: uses player data, ie: SS   N/A 5209        // SS COULD BE SELF-CONTAINED? N/A 5210               "speakers_spatialize"   N/A 5211                {   N/A 5212                        "operator" "calc_spatialize_speakers"   N/A 5213                        "input_radius"  "300"   N/A 5214                        "input_distance"  "@source_distance.output"   N/A 5215                        "input_position"  "@source_info.output_position"   N/A 5216                }   N/A 5217    N/A 5218                "speakers_volume"   N/A 5219                {   N/A 5220                        "operator"     "math_speakers"   N/A 5221                        "apply"               "mult"   N/A 5222                        "input1"       "@speakers_spatialize.output"   N/A 5223                        "input2[*]"           "@volume_apply_occlusion.output"   N/A 5224                        // "input2[*]"           "@facing.output"   N/A 5225                }   N/A 5226    N/A 5227                "speakers_limit"   N/A 5228                {   N/A 5229                        "operator"      "math_speakers"   N/A 5230                        "apply"               "mult"   N/A 5231                        "left_front"   "1.0"          N/A 5232                        "right_front"  "1.0"          N/A 5233                        "center"       "1.0"          N/A 5234                        "lfe"          "1.0"          N/A 5235                        "left_rear"    "1.0"   N/A 5236                        "right_rear"   "1.0"          N/A 5237    N/A 5238                        "input2" "@speakers_volume.output"   N/A 5239    N/A 5240                }   N/A 5241    N/A 5242                "speakers_output"   N/A 5243                {   N/A 5244                        "operator" "sys_output"   N/A 5245                        "input_speakers" "@speakers_limit.output"   N/A 5246                        "output" "speakers"   N/A 5247                }   N/A 5248        }          N/A 5249    N/A 5250 }   N/A 5251    N/A 5252 "stop_stacks"   N/A 5253 {   N/A 5254        "stop_test"   N/A 5255        {   N/A 5256                "play_entry"   N/A 5257                {   N/A 5258                        "operator" "sys_start_entry"   N/A 5259                        "execute_once" "true"   N/A 5260                        "input_execute"        "1"   N/A 5261                        "input_start" "1"   N/A 5262                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 5263               }          N/A 5264    N/A 5265        }   N/A 5266        "stop_default"   N/A 5267        {   N/A 5268                "snd_op_test_convar"   N/A 5269                {   N/A 5270                        "operator" "get_convar"   N/A 5271                        "convar" "snd_op_test_convar"   N/A 5272                }   N/A 5273        }   N/A 5274    N/A 5275        "stop_and_play"   N/A 5276        {   N/A 5277                "play_entry"   N/A 5278                {   N/A 5279                        "operator" "sys_start_entry"   N/A 5280                        "execute_once" "true"   N/A 5281                        "input_execute"        "1"   N/A 5282                        "input_start" "1"   N/A 5283                        "entry_name" "Default.Null" //Replace with the sound you want to play. N/A 5284               }   N/A 5285        }   N/A 5286    N/A 5287        "P2_stop_child_and_parent"   N/A 5288        {   N/A 5289    N/A 5290                "stop_child"   N/A 5291                {   N/A 5292                        "operator" "sys_stop_entries"   N/A 5293                        "input_max_entries" "0.000000" //A sound will not stop itself from playing. N/A 5294                       "match_substring" "false"          N/A 5295                        "match_entry" "Default.Null" //Replace with the sound you want to stop. N/A 5296                       "match_entity" "true"   N/A 5297                }   N/A 5298        }   N/A 5299    N/A 5300    N/A 5301 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 5302 //   N/A 5303 // dialog stop stacks   N/A 5304 //   N/A 5305 ////////////////////////////////////////////////////////////////////////////////////////////   N/A 5306    N/A 5307        "P2_glados_stop" // default stop stack for glados v.o.   N/A 5308        {   N/A 5309                "set_mixlayer_vol_wheatley"   N/A 5310                {   N/A 5311                        "operator" "sys_mixlayer"   N/A 5312                        "mixlayer" "gladosVOLayer"   N/A 5313                        "mixgroup" "wheatleyVO"   N/A 5314                        "field" "volume"   N/A 5315                        "input" "1.0"   N/A 5316                }   N/A 5317                "set_mixlayer_vol_announcer"   N/A 5318                {   N/A 5319                        "operator" "sys_mixlayer"   N/A 5320                        "mixlayer" "gladosVOLayer"   N/A 5321                        "mixgroup" "announcerVO"   N/A 5322                        "field" "volume"   N/A 5323                        "input" "1.0"   N/A 5324                }   N/A 5325                "set_mixlayer_vol_cave"   N/A 5326                {   N/A 5327                        "operator" "sys_mixlayer"   N/A 5328                        "mixlayer" "gladosVOLayer"   N/A 5329                        "mixgroup" "caveVO"   N/A 5330                        "field" "volume"   N/A 5331                        "input" "1.0"   N/A 5332                }   N/A 5333        }   N/A 5334        "P2_glados_stop_mute" // default stop stack for glados v.o.   N/A 5335        {   N/A 5336                "set_mixlayer_mute_wheatley"   N/A 5337                {   N/A 5338                        "operator" "sys_mixlayer"   N/A 5339                        "mixlayer" "gladosVOLayer"   N/A 5340                        "mixgroup" "wheatleyVO"   N/A 5341                        "field" "mute"   N/A 5342                        "input" "0.0"   N/A 5343                }   N/A 5344                "set_mixlayer_mute_announcer"   N/A 5345                {   N/A 5346                        "operator" "sys_mixlayer"   N/A 5347                        "mixlayer" "gladosVOLayer"   N/A 5348                        "mixgroup" "announcerVO"   N/A 5349                        "field" "mute"   N/A 5350                        "input" "0.0"   N/A 5351                }   N/A 5352                "set_mixlayer_mute_cave"   N/A 5353                {   N/A 5354                        "operator" "sys_mixlayer"   N/A 5355                        "mixlayer" "gladosVOLayer"   N/A 5356                        "mixgroup" "caveVO"   N/A 5357                        "field" "mute"   N/A 5358                        "input" "0.0"   N/A 5359                }   N/A 5360        }   N/A 5361        "P2_wheatley_stop" // default stop stack for wheatley v.o.   N/A 5362        {   N/A 5363                "set_mixlayer_vol_glados"   N/A 5364                {   N/A 5365                        "operator" "sys_mixlayer"   N/A 5366                        "mixlayer" "wheatleyVOLayer"   N/A 5367                        "mixgroup" "gladosVO"   N/A 5368                        "field" "volume"   N/A 5369                        "input" "1.0"   N/A 5370                }   N/A 5371                "set_mixlayer_vol_announcer"   N/A 5372                {   N/A 5373                        "operator" "sys_mixlayer"   N/A 5374                        "mixlayer" "wheatleyVOLayer"   N/A 5375                        "mixgroup" "announcerVO"   N/A 5376                        "field" "volume"   N/A 5377                        "input" "1.0"   N/A 5378                }   N/A 5379        }   N/A 5380        "P2_announcer_stop" // default stop stack for announcer v.o.   N/A 5381        {   N/A 5382                "set_mixlayer_vol_glados"   N/A 5383                {   N/A 5384                        "operator" "sys_mixlayer"   N/A 5385                        "mixlayer" "announcerVOLayer"   N/A 5386                        "mixgroup" "gladosVO"   N/A 5387                        "field" "volume"   N/A 5388                        "input" "1.0"   N/A 5389                }   N/A 5390                "set_mixlayer_vol_wheatley"   N/A 5391                {   N/A 5392                        "operator" "sys_mixlayer"   N/A 5393                        "mixlayer" "announcerVOLayer"   N/A 5394                        "mixgroup" "wheatleyVO"   N/A 5395                        "field" "volume"   N/A 5396                        "input" "1.0"   N/A 5397                }   N/A 5398        }   N/A 5399 }