Advice request: Forcing monsters to wake up with ACS

Ask about ACS, DECORATE, ZScript, or any other scripting questions here!
Forum rules
Before asking on how to use a ZDoom feature, read the ZDoom wiki first. If you still don't understand how to use a feature, then ask here.

Please bear in mind that the people helping you do not automatically know how much you know. You may be asked to upload your project file to look at. Don't be afraid to ask questions about what things mean, but also please be patient with the people trying to help you. (And helpers, please be patient with the person you're trying to help!)
Post Reply
User avatar
IndependentAutist2
Posts: 12
Joined: Wed May 13, 2026 3:50 pm

Advice request: Forcing monsters to wake up with ACS

Post by IndependentAutist2 »

So, I've been working on a script for my second DooM map and there's this cutscene that's supposed to wake up & aggro all imps tagged "333" towards the player, which is tagged "334", when the cutscene ends. Unfortunately, things aren't working as intended. If you got any ideas, the ACS code is below

Script 6 (void)
{
Setplayerproperty(0,ON,PROP_TOTALLYFROZEN);
Changecamera(1, 0, 0);
delay(35*2);
print(s:"\c[GREEN]???: Listen, I don't want no trouble, just let me live and i'll pay you back!");
delay(35*3);
print(s:"We don't care! you're 10,000 hellbucks in debt and i smell a kneecappin' coming.");
Delay(35*3);
Changecamera(2,0,0);
print(s:"\c[GREEN]???: Aye, yo Flynn, over here!");
setactivatortotarget (334);
Noisealert (333, 334);
thing_hate (333, 334, 3);
Setplayerproperty (0,OFF, PROP_TOTALLYFROZEN);
Changecamera(0,0,0);
}
User avatar
Enjay
 
 
Posts: 27671
Joined: Tue Jul 15, 2003 4:58 pm
Location: Scotland
Contact:

Re: Advice request: Forcing monsters to wake up with ACS

Post by Enjay »

I could be wrong here, it's been a while since I set up a noise alert, but the first parameter is the target. i.e. the actor that you want to alert monsters to the presence of - the thing that they will target. So, your current script is alerting the imps to their own presence, and doing so from the location of the player. I think!

Also, just by way of a check, how have you given the player a tid? You can't just give the player spawn spot a tid in the map editor. To give a player actor a tid, it has to be done in a script (typically using Thing_ChangeTID).

You might find that Noisealert (0, 0); does the trick. That makes the activator of the script both the target and the emitter. Provided the player activated the script, and the imps are in a position to hear the player, that might do it. You might not even need the Thing_Hate if that works.
Post Reply

Return to “Scripting”