Jump to content
Ghost Recon.net Forums

Tank randomly not firing at dummy target vehicle


Recommended Posts

Hey all,

I have spent the last few days putting together and testing a script for tanks targetting people with the main gun using Don Miguel's "dummytarget.veh".

The script I have put together is designed only for patrolling tanks that have actors following them.

Every time one of the actors following the tank is killed the target-vehicle is teleported to the shooter of that actor. Then of course the tank is supposed to target that vehicle and fire, which it does-about half the time though. The target vehicle always makes it to the shooter location, the sound of the vehicle is not yet removed and I can hear it after every kill of the tank followers, but for some reason the tank does not always train on the target. Hm.

I have spent alot of time trying different stuff, with the same results.

If some one could please help me here I would really appreciate it, I think just a bug need be addressed somewhere.

Ok. Here is the script:

Actors:

Allied:

Target Veh1

Enemy:

Rus. Patrol1 T80 Follow-Step Plan=Follow T80 Patrol Tank1

T80 Patrol Tank1-Step Plan=speed1.5,paths

Trigger Plans:

Rus. Patrol Tank Combat Mode=Speed0

Rus. Troop Patrol Combat Mode=Alertness-combat,Formation-scattered-

Combat Roe=Suppress,Movement Roe=hold

T80 Destroy Target.veh1=Destroy TargetVeh1

Script:

Group: Default

Trigger:Startup

Responses:

Enable the Patrol Rus.1 Mem Killed Script blocks

Group: Patrol Rus.1 Mem Killed

Trigger: A member of Rus. Patrol1 T80 Follow has been killed

Responses:

Assign Rus. Troop Patrol Combat Mode to Rus. Patrol1 T80 Follow and execute

Assign Rus. Patrol Tank Combat Mode to T80 Patrol Tank1 and execute

Call Rus. Follow1 Mem killed after this block

Enable the Combat Mode Rus.P.1.Killed script blocks

Block Preserve

Group:Combat Mode Rus.P.1.Killed

Trigger:A member of Rus. Patrol1 T80 Follow has been killed

Responses:

Call Rus. Follow1 Mem Killed after this block

Block preserve

Group:Rus.Follow1 Mem Killed

Trigger:This block has been called directly from the script

Responses:

Block Preserve

Disable the Patrol Rus.1 Mem Killed script blocks

If[[The inverse of [Actor 123 is active]] and [[The value of Rus.123 Dead] is equal to 0]], stop and queue a call to Rus. 123 Killed.

If[[The inverse of [Actor 124 is active]] and [[The value of Rus.124 Dead] is equal to 0]], stop and queue a call to Rus. 124 Killed.

If[[The inverse of [Actor 125 is active]] and [[The value of Rus.125 Dead] is equal to 0]], stop and queue a call to Rus. 125 Killed.

If[[The inverse of [Actor 126 is active]] and [[The value of Rus.126 Dead] is

equal to 0]], stop and queue a call to Rus. 126 Killed.

If[[The inverse of [Actor 127 is active]] and [[The value of Rus.127 Dead] is equal to 0]], stop and queue a call to Rus. 127 Killed.

Group:Rus. 123 Killed

Trigger: This block has been called directly from the script

Responses:

Set Rus.123 Dead to 1.

Teleport Target Veh1 to[The shooter who killed Actor 123].

Call T80 P.Tank1 Destroy Target after this block

Call Rus. Follow1 Mem Killed after this block.

Group:Rus. 124 Killed

Trigger: This block has been called directly from the script

Repsonses:

Set Rus.124 Dead to 1.

Teleport Target Veh1 to[The shooter who killed Actor 124].

Call T80 P.Tank1 Destroy Target after this block

Call Rus. Follow1 Mem Killed after this block.

Group:Rus. 125 killed

Trigger: This block has been called directly from the script

Responses:

Set Rus.125 Dead to 1.

Teleport Target Veh1 to[The shooter who killed Actor 125].

Call T80 P.Tank1 Destroy Target after this block.

Call Rus. Follow1 Mem Killed after this block.

Group:Rus. 126 Killed

Trigger: This block has been called directly from the script

Responses:

Set Rus.126 Dead to 1.

Teleport Target Veh1 to[The shooter who killed Actor 126].

Call T80 P.Tank1 Destroy Target after this block.

Call Rus. Follow1 Mem Killed after this block.

Group:Rus. 127 Killed

Trigger: This block has been called directly from the script

Responses:

Set Rus.127 Dead to 1.

Teleport Target Veh1 to[The shooter who killed Actor 127].

Call T80 P.Tank1 Destroy Target after this block.

Call Rus. Follow1 Mem Killed after this block.

Group:T80 P.Tank1 Destroy Target

Trigger:This block has been called directly from the script

Responses:

Cancel execution of any plan assigned to T80 Patrol Tank1.

Assign T80 Destroy Target.veh1 to T80 Patrol Tank1 and execute

Thats it :wacko: as if it aint enough eh. I would be happy to email the mission if someone wants to try it to see whats up, when it does work(50% of the time) its neat, the tank will target your last postion that you killed from, it will need some more tweaking and a proximity for the T80's distance from the Target Vehicle to reduce the chance of the T80 killing its own troops from close blasts, which happens alot right now.

I will spend more time trying to resolve the issue myself, hopefully someone might see the problem here.

Sincerely,

Christian :)

Edited by mr.pibb
Link to post
Share on other sites

Wow, that seems like awfully complex scripting to achieve something that should be relatively simple :huh: And why all the Call groups when not using BlockPreserve - just execute them in the same block unless you need to call them from more than one possible trigger.

What about something more like this:

Trigger:

Death AnyActor

Responses:

BlockPreserve

ContinueIf the team including AnyActor is equal to team Rus. Patrol1 T80

ContinuIf the platoon including the actor who killed AnyActor is equal to the PlayerPlatoon

Teleport DummyTarget to the actor who killed AnyActor

Assign T80 Destroy Target.veh1 to T80 Patrol Tank1 and execute

Link to post
Share on other sites

Thanks Don,

Yeah, I was trying to figure out which one it was, sounded like the diesel truck2. I have Jacks silenced .wav file from his target vehicle modification, so that should be universal for silencing any vehicle.

Thanks guys, I look forward to implementing the new script.

Christian :)

Edited by mr.pibb
Link to post
Share on other sites
Wow, that seems like awfully complex scripting to achieve something that should be relatively simple  :huh: And why all the Call groups when not using BlockPreserve - just execute them in the same block unless you need to call them from more than one possible trigger.

Your right, I had forgotten to add the blockpreserve to the call groups, for the entire script application is intended to be used more than once if the situation arises.

The script in the call groups could not be used in one block, they had to be seperate because the responses could not be placed with continueif(stopif, etc) because of the counters being set, they would have improperly set the "dead" counters as the check continued through the block, the counters were designed to declare that the particular call group script had been used and to not use it twice. Once one of the call groups is queued it would then set the counter in that seperate group to 1, causing it never to be called. Hence the tank will target the next player platoon member that kills another Rus. Patrol Member.

I did not know deathanyactor could be used like that, nor did I know that you could compare a single actor to a team or platoon like that too to get the team or platoon the actor is from, I have used it only for number comparisons. So I see that anyactor becomes a reference to whichever actor tripped the deathanyactor trigger, wow. Good to know.

I haven't yet tied the new script, will soon tho.

Thanks again Jack, you havent just helped me out with the application here but you have shown me some new stuff I may want to use later too. :thumbsup:

Christian :)

Edited by mr.pibb
Link to post
Share on other sites

Ok, I may have discovered the problem

The map I am using is Vilnius, and basically the whole dang map is composed of rooms. I would say there is a very good chance this is the problem, teleporting the target vehicle from room to room.

I need to test the teleporting within the confines of one room to make sure it does work everytime there.

I will start digging into how to avoid teleporting between rooms, probably will have to use many additional target vehicles, one for each room, that will be assigned to teleport around only within the confines of the room its in.

I like the results of the tank firing in this application so much it does seem worth all this. :wacko:

Christian

Link to post
Share on other sites

Gotta say for the last post in this topic- YESSSS!

The new zones covering the seperate rooms works, the tank will target every time IF the zones are properly placed over the rooms, just need to move some zones around to get them all in the right places. :):)

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...