WAC SCRIPT FILES

Post Reply
User avatar
Bubbachuk-PG-
Site Admin
Site Admin
Posts: 4914
Joined: Sun May 16, 2010 1:59 pm
Location: Marshville, North Carolina
Contact:

WAC SCRIPT FILES

Post by Bubbachuk-PG- »

I'm borrowing this list from another forum.
Unless noted, this list was collected, compiled and constructed by DAVE61.

These are .WAC file scripts for : DELTA FORCE : EXTREME

These scripts are used for triggering effects, dialog, text, and audio files. These scripts can be altered. Basically changing SSNs and Groups can produce different results in the scripts. To use these scripts, copy and paste the script that you want into the wac file and change the scripts to suit your needs.

These scripts can be interchanged and placed together. For example, you can put a wav file with a text command ,wav files with mortar hits, etc......

To open the .WAC, start the DFX Mission Editor and click on Tools then click on open Mission WAC.

After you click on open Mission WAC the 1st time, it will ask if you wish to create a .WAC . Anwser yes to start a new .WAC file.
______________________________________________________________________________

Weather Scripts
These scripts are Weather scripts. All weather effects are created by these scripts. For additional weather related scripts such as fog or sky and cloud color see the info below in the PFF list.

If you wish to have SNOW instead of RAIN, then change the word RAIN to the word SNOW.

Random Weather Script
This is an example of a changing weather condition.

If elapse(90) and random(5) then
dornd
rain(30, 30) //heavy rain
wind(22,327)
overcast(50,30)
skyspeed(36)
set(v1, 1)
farflash()
next
rain(100, 30) // light rain
wind(33,327)
overcast(100,30)
skyspeed(50)
set(v1, 2)
farflash()
wave("ngale1.wav", 100)
next
rain(60, 30) // heavy rain
wind(26,327)
overcast(70,30)
skyspeed(38)
set(v1, 3)
flash()
next
rain(0, 30) // rain
wind(7,327)
overcast(33,30)
skyspeed(33)
set(v1, 4)
farflash()
wave("ghopper1.wav",100)
enddo
endif

Rain script
This script is rain & overcast w/fast moving sky.

if never() then // start rainfall and fast-moving clouds
rain(75,1)
overcast(70,30)
skyspeed(80)
endif

Random lightning and thunder script
This script is for bright lighting and thunder, can be copied & pasted under rain script.

if elapse(2) and random(12) then // do random thunder-claps and lightning
lightning(250,250,250)
wave("thdrcrk2.wav",1000)
flash
endif
_____________________________________________________________________________

Facial Expressions
This script changes the facial expressions of the AL.

if ssndead(44) and never then
ssnface 45 face_disgust
ssnface 46 face_angry
ssnturn(45,90)
ssnturn(46,-90)
endif
Also use : face_normal , face_happy , face_sad , face_smirk , face_angry , face_surprise , face_disgust , face_fear , face_aggressive
______________________________________________________________________________

Mortar Hits
This script Sets the variable for a mortar attack if player is in area trigger #2 and group #3 is alive.

If ssnarea (10000,2) and groupalive (3) and never then
set (v1,1) // variable set to activate the mortars.
endif

This script starts a mortar attack at area #1 if group #3 is alive.

if eq (v1,1) and groupalive (3) then
ammoarea AMMO_60MM_MORTAR (1) //start the mortars.
endif


This script ends a mortar attack if group #3 is dead.

if eq (v1,1) and groupdead (3) and never and elapse 1 and waveready then
text("The Bad Guys have been taken out.")
Wave("happy1.wav",100)
set (v1,0) //ends the mortars.
endif
______________________________________________________________________________

Rocket Attack
This script Sets the Variable for a rocket attack if player is in area trigger #2 and group #3 is alive.

If ssnarea (10000,2) and groupalive (3) and never then
set (v1,1) // variable set to activate the rockets.
endif

This script starts a rocket attack at area #1 if group #3 is alive.

if eq (v1,1) and groupalive (3) then
ammoarea ammo_rocket (1) //start the rockets.
endif

This script ends a rocket attack if group #3 is dead.

if eq (v1,1) and groupdead (3) and never and elapse 1 and waveready then
text("The Bad Guys have been taken out.")
Wave("happy1.wav",100)
set (v1,0) //ends the rockets.
endif
________________________________________________________________________

SSN Names

I can't get this to work, if you do let me know! But, I believe names can only be used in the bin file.
if groupalive (3) and never() then
ssnname(904, AI_RALPH)
ssnname(905, AI_FRED)
ssnname(906, AI_HERMAN)
ssnname(907, AI_LUTHOR)
ssnname(908, AI_CARL)
ssnname(909, AI_THADIUS)
endif
______________________________________________________________________

Earthquake

This script produces an earthquake for 100/10 seconds
(or 6 seconds) if the player is in AREA TRIGGER 1.

If ssnarea (10000,1) and never then
quake(100)
endif
______________________________________________________________________

Triggered WAV file Scripts

Change these scripts as needed, these are examples only. Use the WAV FILE LIST (below) to insert the wave file that you chose. Be sure to paste the .wav file name between the quotes. The info after the ( // ) marks is a reference marker only, to be used to help you remember what .wav file is being played.
------------------------------------------
The wave will play if past 5 seconds into game.

// good luck in there Bravo
if past(5) and never() then
wave("alph507.wav",100)
endif
------------------------------------------
This is an example of Group #5 in area #5 triggering a .wav file.

// hey! i don't do warning shots.
if grouparea(5,5) and wavready() and never() then
wave("macr159.wav", 100)
endif
------------------------------------------
This is an example of Group #5 being dead triggering a .wav file.

// cheer! (alpha guards down)
if groupdead(5) and wavready() and never() then
wave("dfm141.wav", 100)
endif
------------------------------------------
This is an example of a Player in area #5 triggering a .wav file.

// base is alert
if ssnarea(10000,5) and never() then
wave("comd108.wav", 100)
endif
---------------------------------------------

The chain wave command is placed after a wave or text script that you want to tie another wave file or text script to. The chain command will play the wave file or text script (within the seconds that you insert) after the previous wave file or text script is played. You can even tie chain to chain and it sounds like a conversation.

// they got to be kidding me
if chain(6) and wavready() and never() then
wave("macr155.wav", 150)
endif
-------------------------------------------------
This is an example of SSN #101 in an area #6 triggering a .wav file.

// Bravo, don't let that helo get away
if ssnarea(101,6) and wavready() and never() then
wave("alph531.wav", 100)
endif
----------------------------------------------------
This is an example of SSN #5 being dead triggering a .wav file.

// hey! i don't do warning shots.
if ssndead(5) and wavready() and never() then
wave("macr159.wav", 100)
endif
______________________________________________________________________________

Triggered Text Scripts

These scripts are used to insert text into the game at area triggers, group or SSN dead triggers and at the beginning of the missions.
-------------------------------------------------------
This is an example of an SSN dead and triggering text.

if ssndead(8) and never() then // SSN has died
text(" ")
text(" ")
text(" ")
consol("Type message here")
consol("and it will show up at the upper")
consol("center of the screen.")
endif
-------------------------------------------------------
This is an example of a Group being dead triggering text.

if groupdead(8) and never() then // Group has died
text("")
text("")
text("")
consol("Type message here")
consol("and it will show up at the upper")
consol("center of the screen.")
endif
-------------------------------------------------------


This is an example of a triggered text of player in area trigger #1.

if ssnarea(10000,1) and never() then // Player is in area so display text
text("Type message here")
text("and it will show up at the")
text("lower left corner of the screen")
consol("Type message here")
consol("and it will show up at the upper")
consol("center of the screen.")
endif
Image
Image

The democracy will cease to exist when you take away from those who
are willing to work and give to those who would not.
~ Thomas Jefferson

Website: http://pgsquad.com
Facebook: https://www.facebook.com/oliver.holmes.357
User avatar
Bubbachuk-PG-
Site Admin
Site Admin
Posts: 4914
Joined: Sun May 16, 2010 1:59 pm
Location: Marshville, North Carolina
Contact:

Re: WAC SCRIPT FILES

Post by Bubbachuk-PG- »

As far as I know there is no way to trigger a chute for the bots. Here's how we have gotten around it, though. It's a little tricky but it works.

Select the bots you want to use as jumpers and make them indestructible.
Place a chinook with a pilot up in the air by selecting 'hovering' in its IA.
Put the bots in the chinook at altitude.
Set a low altitude waypoint list for the chinook to follow.
Set two area triggers in front of the chinook past where you want the bots to jump.
Set a waypoint for the bots before the area triggers.
Use the first area trigger to redirect the bots to the waypoint. This will pull them from the back of the chinook.
Use the 2nd area trigger to make the bots destructible.

Be sure the area triggers are spaced far enough apart to allow the bots to get to the ground.
Put in about a 10 second delay and then vaporize the waypoint.
Image
Image

The democracy will cease to exist when you take away from those who
are willing to work and give to those who would not.
~ Thomas Jefferson

Website: http://pgsquad.com
Facebook: https://www.facebook.com/oliver.holmes.357
Post Reply