Lycaon Posted September 7, 2015 I'm trying to make a cutscene in which a fight between 2 groups of humans happen. I need them to shoot in a specific order and wait for certain soldiers to kill specific soldiers before they make their move. I'm doing it by deactivating and activating the soldiers and giving them thing_setgoal and thing_hate to direct them. It's all working out good, but in order to make them shoot as soon as I activate them and not have them wandering around and ruining the scene, I had to create duplicates of both decorates (scripted marines and blackopsmale from realm667) that have the "nodelay" thingy in their missile states. I have the feeling this could be avoided via a simpler, cleaner workaround. Is there any? Also, and more importantly (this is kinda my biggest problem), is it possible to make thing_setgoal so that the monsters go DIRECTLY to the patrol point? cause they kinda wander off for a couple seconds before getting on track, and that causes them not to enter certain places in time. If there is, there should be something similar for the thing_hate that solves the first question (I mean, a way to make the hater instantly shoot the hatee without any delay) Thank you very much! I'm knee-deep in learning ACS here and I'm just forcing things to happen via various gimmicks sometimes, and its getting out of control, so I want to get this thing straight. 0 Quote Share this post Link to post
scifista42 Posted September 7, 2015 I'm afraid that there is no clean workaround for your first problem, other than defining a custom DECORATE actor like you did. To solve the latter one, try using an ActorMover. Standard monster AI doesn't allow this, because monsters can only walk directly in one of 8 cardinal directions, and also, minor "wandering off" is a part of their basic movement logic. 0 Quote Share this post Link to post
Lycaon Posted September 7, 2015 Oh good. But will the actors have their walking cycle animation, or will they move with a frozen sprite? EDIT: there is the "STANDSTILL" flag, could this be of use? 0 Quote Share this post Link to post
scifista42 Posted September 7, 2015 Lycaon said:will the actors have their walking cycle animation, or will they move with a frozen sprite? I actually don't know. I was just about to try it in practice, but my Doom Builder crashed. In case they will move like a frozen sprite, you will have to define them as yet another custom DECORATE actor who plays his walking animation in vain. EDIT:Lycaon said:there is the "STANDSTILL" flag, could this be of use? No. 0 Quote Share this post Link to post
Chezza Posted September 7, 2015 Hey Lycaon I just might have a solution for your second issue, but no guarantee. So recently I have been messing with Thing SetGoal, some via ACS Scripting other methods via GZDoom Builder Linedef specials. But there were a few moments my monsters would wander off in off placed before reaching their destination or straight out no moving whatsoever. I constantly checked if my Tags were correct, linedefs were right, double checked other peoples works, examples etc. I did everything correctly but they monster were being too stubborn. ***Potential Solution*** Move either your actor or Setgoal point at a different position, preferably in angles. So instead of the patrol point being directly behind (or adjacent) the actor put the patrol point more in a corner. Test it again and see how it works. Strangely enough, it works for me. And it SHOULD work perfectly if they like the position. No wandering, no refusal, no hassle. They go exactly to the spot (unless you have them on attack enemy upon sight). 0 Quote Share this post Link to post
Lycaon Posted September 8, 2015 I found that I could force the soldiers to shoot as soon as I activate them. For that purpose, I replaced all the frames in the "see" state for those of the actor's missile. It means it shoots instead of chasing. It's restricted to very few uses, but it works for what I'm doing. This is the code in my case: See: PLAY E 7 NoDelay A_FaceTarget PLAY F 0 bright A_PlaySound("BlackOps/Attack2") PLAY F 3 bright A_CustomBulletAttack(10,10,6,1,BulletPuff) PLAY E 2 A_FaceTarget PLAY E 0 A_CPosRefire GoTo See Also, the actor has a +LOOKALLAROUND flag. Not sure if it's doing anything though. 0 Quote Share this post Link to post
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.