Jump to content
Search In
  • More options...
Find results that contain...
Find results in...
Sign in to follow this  
Nanami

ZDoom Scripting Help

Recommended Posts

Well, Tormentor usually asks here and I've seen him get good answers, so yeah. =P

I'm working on a ZDoom-Hexen support Doom level and I need some scripting help. Right now everything runs off of a voodoo doll triggering floor switches with moving floors, which is incredibly lame. =P Also, I'd like to be able to make everything work better (and even work in DM), so if you could help me with some scripts here...

1) I need a script that, every second or so, shoots a projectile (gravity on) in a random direction from either mapspot 1, 2, 3, or 4. It could cycle or be random those mapspots, it wouldn't matter. This should last for the whole level and never stop.

2) I need a script that makes a constant 2-power earthquake that never stops and focuses around mapspot 6.

3) I need to make the sectors tagged 3 and 6 cause 255 damage and have an RGB light level of 255, 160, 160.

As I said, the level already does all this, but uses several floor triggers, and number one isn't random, the projectiles only go in 8 directions. Anyway, if someone could give me scripts for this stuff, I'd appreciate it.

Share this post


Link to post
Nanami said:

1) I need a script that, every second or so, shoots a projectile (gravity on) in a random direction from either mapspot 1, 2, 3, or 4. It could cycle or be random those mapspots, it wouldn't matter. This should last for the whole level and never stop.

script 1 open
{
 while(1) {
        Thing_ProjectileGravity (random(1, 4), type, random(0, 256), speed, vspeed)
        delay(35);
 }
}
type - the thing type you want to spawn (look it up in zdefs.acs or what file it's in)
speed - speed of the projectile in the x-y plane
vspeed - vertical speed of the projectile (up is positive)
you best play around with the last two to find good values for you
[/B][/quote]

Nanami said:

2) I need a script that makes a constant 2-power earthquake that never stops and focuses around mapspot 6.

script 2 open
{
     while(1) {
          Radius_Quake (2, 350, damrad, tremrad, 6)
          wait(350);
     }
}
damrad - radius of damage in 64x64 cells
tremrad - radius of tremor in 64x64 cells
again, play around with them to get good values

Nanami said:

3) I need to make the sectors tagged 3 and 6 cause 255 damage and have an RGB light level of 255, 160, 160.

script 3 open
{
     Sector_SetColor (3, 255, 160, 160)
     Sector_SetColor (6, 255, 160, 160)
     Sector_SetDamage (3, 255, mod)
     Sector_SetDamage (6, 255, mod)
}
mod - Means Of Death. Look it up here.

Share this post


Link to post

It's worth noting that you're not limited to 255 for things like damage etc. when using scripts. (the limit applies to linedef-activated specials only)

If the intention is to kill outright in those sectors, use a value of 400. (that kills you even when on 200% health and 200% armour)

Share this post


Link to post
Nanami said:

Right now everything runs off of a voodoo doll triggering floor switches with moving floors, which is incredibly lame. =P


Damnit, I invented that trick! It's not lame I think it's quite cool, though 100% unnecessary in ZDoom of course... :D

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  
×