Jump to content
Sign in to follow this  
Monsada

UPSMON - Urban Patrol Script Mon

Recommended Posts

When using UPSON on the Tora Bora map - I routinely get all my OPFOR units ending up in the same place amongst one another -

I have Zones say 800 X 800.....and yet I often stumble into large groups together - These groups are placed on the map, seperate from one another with (random) in their placement....

I have found this quite often....It seems the AI all tend to gather and patrol together. Not exactly what I'm looking for...

If nothing else, it may have to do with the crappy random numbers generator. I've had fantastic problems with that beast. In short, your idea of 'random placement' may not be exactly what you wish for.

Never found a clean solution to be honest.

Share this post


Link to post
Share on other sites

It would seem upsmon artillery is not working with the new arma 1.60 patch. All my missions where AI was shooting artillery properly now refuse to fire at all.

Just me or did the patch really screw upsmon up?

Share this post


Link to post
Share on other sites

Does UPSMON use the skill setting of the server ?

I really am trying to find a way to dumb down there shooting skills , any suggestions ?

I have changed the server nut they still seem to shoot a AK from 1K away and get a head shot :( - I also have set the skill level in the Template to near min as well

		skillEnemy=0.20000001;
	precisionEnemy=0.10000001;

Share this post


Link to post
Share on other sites
Does UPSMON use the skill setting of the server ?

I really am trying to find a way to dumb down there shooting skills , any suggestions ?

I have changed the server nut they still seem to shoot a AK from 1K away and get a head shot :( - I also have set the skill level in the Template to near min as well

		skillEnemy=0.20000001;
	precisionEnemy=0.10000001;

AFAIK precisionEnemy is no longer supported (I mean it's ignored) after 1.60.

Your best shot would be ASR-AI-Skills at the moment. It's a bug anyway and you should try the latest beta.

Share this post


Link to post
Share on other sites

Is there a line of code I can add to the radio tower when its down to stop spawning AI ?

Share this post


Link to post
Share on other sites

I'd like to know what difference the "spawned" parameter does to a group. I can't tell any major difference.

Does it only add them to the debug hint?

Share this post


Link to post
Share on other sites

It also adds them to the counter that decides when the side is to surrender (if you have the surrender feature enabled). Not sure if there's anything else that it updates, but if you spawn stuff, might as well use it to make sure all UPSMON functions are working as intended.

Share this post


Link to post
Share on other sites

Hi

My question may sound a little bit stupid but does UPSMON work with helicopters, tanks, etc. so not only infantry? I mean if for example I add the line below to the init field of a flying helicopter then everything will work normally?

nul=[this,"helizone","noslow", "nowait", "delete:", 600, "nofollow"] execVM "scripts\upsmon.sqf";

I have been using UPSMON for quite some time now (it really is excellent) but so far only with infantry.

Share this post


Link to post
Share on other sites

UPSMON every time i use im in love..Ive always mirk spawned all my vehicles with upsmon..seems to work excellent for me with all vehicles

Share this post


Link to post
Share on other sites

Hi everyone,

I have a question: how does one check if an area (e.g. by marker name) is empty so that I can tell the player to move on or check an objective. I tried triggers of course but they react to the spawning to random positions when upsmon initializes. I tried to create triggers after initialization, and it did not work. I will tamper with that some more at some other time but isn't there somthing built in?

Share this post


Link to post
Share on other sites
Hi everyone,

I have a question: how does one check if an area (e.g. by marker name) is empty so that I can tell the player to move on or check an objective. I tried triggers of course but they react to the spawning to random positions when upsmon initializes. I tried to create triggers after initialization, and it did not work. I will tamper with that some more at some other time but isn't there somthing built in?

I use a trigger with a diameter the size of the area that should have just been cleared. Set it to 'OPFOR' Activation:Once and 'Not Present'. Then to display a message to the player, in the 'On Act' field, I put

titletext[format["All too easy...\n The Force ain't strong with these bastards!\n Lets move on to the next objective."],"Plain"]

Share this post


Link to post
Share on other sites

Oh I forgot to mention, I spawn all ai units on runtime so these triggers always fired up right in the beginning. I tried to also create the triggers on runtime too but also not satisfying as I have several areas I need to cover at the same time.

I think I have found a way to fix my problem now. I will spawn a trigger that checks if the zone empty triggers of the "area cluster" have been triggered. The trigger has to be spawned, cause I can't combine triggerActivated checks for non existing triggers into one condition. Or at it did not work the way I trid it. Now I will create the code as string depending on the areas that will be vacated by patroling ais.

Share this post


Link to post
Share on other sites
fortify = makes leader order to take positions on nearly buildings at distance 200 meters, squad fortified moves less than "nomove"

I had a question, fortify seems to be limited to distance of a building within 200 meters of the unit. So if I set a group with fortify but also "random" in a large area of villages on a map, am I correct in thinking unit will patrol from its random start but when it reaches a building within 200 meters of that patrol it will then fortify? Or will random unit just look for a building?

Im wanting to fortify and populate a large area, but placing fortify units within a radius of set buildings is a little less random and I already know where they would be. Is there a way for them to be randomly placed to then go random search a building to fortify?

Sorry large thread and maybe touched on before, anyone have any ideas or help would be great.

Share this post


Link to post
Share on other sites

Is there any way to make the AI run to zones instead of walk?

Share this post


Link to post
Share on other sites

im wondering how i can delete my upsmon units after an objective is set.

i.e

I use this to dynamicly spawn my upsmon units


_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";

just wondering how i can delet them once the objective is finished.

my scripts are just in case it helps


//////////////////////////////////////////////////////////////////
// Created for Operation HOG SOCOMD Command
//////////////////////////////////////////////////////////////////

if isserver then {

sleep 10;  /// give time for UPSMON to start
_task4=task4;
_name = "MAZ_543_SCUD_TK_EP1" createVehicle getpos _task4;  // create Radar
/////Only Destroy by satch
_name setVehicleInit "_name addEventHandler [""HandleDamage"",{(_this select 4) == ""PipeBomb""}]" ;format ["%1 = this; this setVehicleVarName ""%1""",_unitname];
processInitCommands;

_mrkradar2 = createmarker ["marker_radar2",getpos _task4];
_mrkradar2 setmarkershape "ELLIPSE";
_mrkradar2 setmarkersize [90,90];
//"marker_radar2" setMarkerAlpha 0;  /// unmark to not show
sleep .5;

///Spawn OPFOR  /// 
//if ((paramsarray select 19) == 1) then { 

_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_upsgrp1 = [1,getpos _task4,1,["marker_radar2","spawned","random","fortify","delete:",120]] execVM "SCRIPTS\UPSMON\MON_SPAWN.SQF";
sleep .2;
_dis = 180;
_ang = random 360;
_dx = sin(_ang)*_dis;
_dy = cos(_ang)*_dis;
       _positionToSpawnIn = [((getmarkerpos _radar2) select 0) + _dx, ((getmarkerpos _radar2) select 1) + _dy, 0];
_armourgrp4 = [getmarkerpos "task3", east,["T34_TK_EP1", "ZSU_TK_EP1"],[[-3,-3], [3,3]]]  call BIS_fnc_spawnGroup;
[(units _armourgrp2) select 0, "marker_radar2","spawned","showmarker","nofollow","random","nowait","delete:",120] execVM "scripts\upsmon.sqf";
_dis = 180;
_ang = random 360;
_dx = sin(_ang)*_dis;
_dy = cos(_ang)*_dis;
       _positionToSpawnIn = [((getmarkerpos _radar2) select 0) + _dx, ((getmarkerpos _radar2) select 1) + _dy, 0];
_armourgrp5 = [getmarkerpos "task3", east,["BRDM2_ATGM_TK_EP1", "T34_TK_EP1"],[[-3,-3], [3,3]]]  call BIS_fnc_spawnGroup;
[(units _armourgrp5) select 0, "marker_radar2","spawned","showmarker","nofollow","random","nowait","delete:",120] execVM "scripts\upsmon.sqf";


//};
//// now wait for Radar to be killed///////

waitUntil{!alive _name }; 


/////////////////CLEAN UP/////////////////////

deletemarker "marker_radar2";

};

---------- Post added at 17:39 ---------- Previous post was at 17:23 ----------

Is there a line of code I can add to the radio tower when its down to stop spawning AI ?

Did you get this solved mate id love the solution i got the same need

Share this post


Link to post
Share on other sites

I have given my UPSMON a loadout off different color Grenades , but when they throw smoke they are white all the time ?

Is it coded into UPSMON to only throw White ?

Share this post


Link to post
Share on other sites

I tried this and it basically works well, but:

* When i create a big marker (2000x2000) wheeled units get suddenly a new patrol destination without having reached previously assigned one. That make these units almost useless. I saw this notice in original UPS changelog:

2.0.5 When using large markers it could happen that new destinations were constantly created

Is it possible to port the fix into UPSMON?

* I was able to have infantry troops transported into battle and paradropped as reinforcements, which is fine. Problem is that after the battle they fly back to original marker area but won't land.

* Looks like to me that artillery guns such as the D30 won't rotate towards their target on opening fire.

Thank you.

Share this post


Link to post
Share on other sites

Hi, nice script...I love it actually. I got some questions though:

1) How do I remove markers from briefing? For example I make a marker for an ambush but it shows up in briefing and you know kinda ruins the point of the ambush. Its good that it disappears from view in the in-game map but I need them to disappear in the pre-game map aswell.

2) Can a unit start without the script and get it later in the game. Say if a group gets to a way point could I put in the script box in the waypoint "execvm etc etc etc?"

3) I like that AI uses smoke but I never see them use handgrenades. Is there a way for them to use grenades more?

Share this post


Link to post
Share on other sites
Hi, nice script...I love it actually. I got some questions though:

1) How do I remove markers from briefing? For example I make a marker for an ambush but it shows up in briefing and you know kinda ruins the point of the ambush. Its good that it disappears from view in the in-game map but I need them to disappear in the pre-game map aswell.

2) Can a unit start without the script and get it later in the game. Say if a group gets to a way point could I put in the script box in the waypoint "execvm etc etc etc?"

3) I like that AI uses smoke but I never see them use handgrenades. Is there a way for them to use grenades more?

1) Put {_x setmarkeralpha 0} forEach ["marker1","marker2","marker3"]; in the init.sqf for multiples or just "marker1" setmarkeralpha 0; for a single marker.

2) Yes.

3) Not with this script, unfortunately.

Share this post


Link to post
Share on other sites

I'm a novice to say the least at any scripting - I love using UPSMON, but I would like to be able to use it as part of a QRF (that I call via a radio trigger) if needed.

Basically, I want an 8-12 man QRF sitting in a chopper (with the Team leader having an UPSMON command / Zone). But I don't want this to kick into effect until I call on the radio command (if neccessary). As is now, I can do this with the simplier UPS script, and the 8 man QRF will board the chopper (given via a waypoint "get in" command) and will sit there until / If I call on them via the raido trigger. But the UPS script isn't no where near as good as the UPSMON (in terms of using smoke and having more options for said group).

However, when using UPSMON, the 8 man ORF unitl will not wait for any radio trigger it will go immediately to its "zone" and starts its patrol.

Is there a way to stop the unit from automatically going and waiting until a radio trigger?

Thanks

Edited by meade95

Share this post


Link to post
Share on other sites

Perhaps just don't assign any waypoints till you need to? Just have your group on the map and when you need them, then create the marker and assign UPS init to the group.

Share this post


Link to post
Share on other sites
Hello guys, I have a problem with the artillery.

The problem is the mortar does not shoot, I have read this wiki and i followed the steps

https://dev-heaven.net/projects/upsmon/wiki/Artillery_module

Someone has the same problem?. thanks

As far as I remember, the mortars don't actually shoot, the script just spawns shells. I think the actual unit is needed so that it can be killed to stop the shell spawning. Unfortunately, if you want them to actually shoot, you'll have to use other scripts.

To make markers disappear in a way that nobody will see them even for a brief second, make a preinit.sqf script with the "markerblah" setMarkerAlpha 0; commands. In the editor place a game logic (or any unit that has 100% probability of presence) and in its init type call compile preprocessFile "preinit.sqf" and this way the markers will disappear before anyone ever gets into the briefing screen. Doing the same in init.sqf might let people see the briefing screen before the markers disappear.

If you want them to only start moving when the radio is triggered, just don't start the UPSMON script until you want them to move. Just have them sitting in the copper, and start UPSMON on them ([unitName, "markerName"] execVM "scripts\USPMON.sqf";) only once the trigger is activated.

Edited by galzohar

Share this post


Link to post
Share on other sites
Perhaps just don't assign any waypoints till you need to? Just have your group on the map and when you need them, then create the marker and assign UPS init to the group.

That makes sense? How do I go about assigning a UPSMON init to a group (once within the mission??). Thanks

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×