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

Spawning things using scripts

Recommended Posts

Can someone tell me exactly how to do it? Every time I try to do it, I always winding up spawning enemies that I didn't want spawned.

Share this post


Link to post

Use the command:

Thing_Spawn(#1, #2, #3);

#1 - The spot where you want the thing spawned
#2 - The type of thing, or TID, you want spawned
#3 - The direction it's facing when it's spawned (doesn't matter when it's an item, decoration, etc.)

Now, to get the monster you want, you need to find the right number to put into #2. I'm sure there's a list somewhere, or you could just experiment for a bit.

Share this post


Link to post

Ok, I found a list of all the things (not just enemies) you can spawn.

0 T_NONE
1 T_SHOTGUY
2 T_CHAINGUY
3 T_BARON
4 T_ZOMBIE
5 T_IMP
6 T_ARACHNOTRON
7 T_SPIDERMASTERMIND
8 T_DEMON
9 T_SPECTRE
10 T_IMPFIREBALL
11 T_CLIP
12 T_SHELLS
19 T_CACODEMON
20 T_REVENANT
21 T_BRIDGE
22 T_ARMORBONUS
23 T_STIMPACK
24 T_MEDKIT
25 T_SOULSPHERE
27 T_SHOTGUN
28 T_CHAINGUN
29 T_ROCKETLAUNCHER
30 T_PLASMAGUN
31 T_BFG
32 T_CHAINSAW
33 T_SUPERSHOTGUN
51 T_PLASMABOLT
53 T_TRACER
68 T_GREENARMOR
69 T_BLUEARMOR
75 T_CELL
85 T_BLUEKEYCARD
86 T_REDKEYCARD
87 T_YELLOWKEYCARD
88 T_YELLOWSKULLKEY
89 T_REDSKULLKEY
90 T_BLUESKULLKEY
98 T_TEMPLARGEFLAME
100 T_STEALTHBARON
101 T_STEALTHKNIGHT
102 T_STEALTHZOMBIE
103 T_STEALTHSHOTGUY
110 T_LOSTSOUL
111 T_VILE
112 T_MANCUBUS
113 T_HELLKNIGHT
114 T_CYBERDEMON
115 T_PAINELEMENTAL
116 T_WOLFSS
117 T_STEALTHARACHNOTRON
118 T_STEALTHVILE
119 T_STEALTHCACODEMON
120 T_STEALTHCHAINGUY
121 T_STEALTHSERGEANT
122 T_STEALTHIMP
123 T_STEALTHMANCUBUS
124 T_STEALTHREVENANT
125 T_BARREL
126 T_MANCUBUSSHOT
127 T_ROCKET
128 T_BFGSHOT
129 T_ARACHNOTRONPLASMA
130 T_BLOOD
131 T_PUFF
132 T_MEGASPHERE
133 T_INVULNERABILITY
134 T_BERSERK
135 T_INVISIBILITY
136 T_IRONFEET
137 T_COMPUTERMAP
138 T_LIGHTAMP
139 T_AMMOBOX
140 T_ROCKETAMMO
141 T_ROCKETBOX
142 T_BATTERY
143 T_SHELLBOX
144 T_BACKPACK
145 T_GUTS
146 T_BLOODPOOL
147 T_BLOODPOOL1
148 T_BLOODPOOL2
149 T_FLAMINGBARREL
150 T_BRAINS

Share this post


Link to post

Every spawnable thing is described in the ZDoom reference and the #include .acs files you include every time you compile a script... big case of RTFM here DooMBoy...

Share this post


Link to post

New Zdoom is coming out (I think) which also uses the SpawnSpot command, similar to Thing_Spawn, except you can also assign the spawned thing a TID (thing ID, a tag number). In addition, that command can be used to call things from Heretic and Hexen into Doom, as long as the graphics and sounds are there to support it.

spawnspot ("Mace", 157, 177, 0);

This spawns a Heretic Mace at map spot 157, assigning it the tag 177, facing angle 0 (no matter for this item, it looks the same from any direction).

Share this post


Link to post

If you don't want the teleporter fog to appear, use Thing_SpawnNoFog instead. But in all cases, make sure you have a map spot with a tag at the place you want to spawn it, and that the first argument is the tag of that map spot.

Share this post


Link to post

You're right, Tarin. It's the last argument...

Thing_SpawnNoFog (33, T_ARACHNOTRON, 64, 124);

Arachnotron at map spot 33, facing north, assigned the tag 124, spawning silently (without teleport fog).

Share this post


Link to post

i can't seem to get an enemy to spawn when a line is crossed. the monster spawn command is in the script, cause some doors open at the same time. the doors go off, but the monster never appears. help!

Share this post


Link to post

You need to put a mapspot with a thing id ine the part of the level where you want the monsters to spawn at.

Share this post


Link to post
DooMBoy said:

You need to put a mapspot with a thing id ine the part of the level where you want the monsters to spawn at.


yup, did that. the mapspot has a tag of 28, and i know it works, cause i spawned some radsuits there with a swtich. but i can't seem to spawn a monster to that spot from the script. more help!

Share this post


Link to post

Have you checked that there is enough room for your monster to appear? I have found that spawnspot is sensitive to making sure there is enough room. If the mapspot is too close to a wall, or the sector isn't tall enough, nothing spawns. Thing_spawn may be similar (don't remember, and can't check ATM).

Oh and BTW, as well as spawnspot, the next Zdoom will have a spawn command that allows you to use coordinates as arguments, rather than using a mapspot to spawn an item. spawnspot and spawn are not working in b33, but as Biffy said, the real beauty of them is that ANY actor can be spawned by them, not just the items in the spawnables list (ie the more limited list of ones that work with Thing_spawn). OK, it is pointless to spawn a few of the actors (eg projectiles stay stationary, glass shards just wiggle on the floor etc) but it means all the various pillars and scenery items, as well as monsters from Doom, Heretic or Hexen can be called into any of those 3 games using a script (again as Biffy says, provided you have put resources to support them into a WAD).

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  
×