Jump to content

Recommended Posts

The lastest UPSMON A3 3.01 - Needs to have all text formated - It is hardly readable and even harder to edit / adjust as it is now. All just word wrapped in continuous lines of text. UPSMON for A2 was formatted for ease of editing / reading.

I have fixed this, the files worked fine beforehand if you used Notepad++ I also moved all of the documentation out of the actual script file, it now belongs in the readme.txt

@Bardosy

I believe the only differnce between the two versions is really the fact that the older version in this forum, would not of worked with 'random', 'randomdn', 'randomup' as it used old 'getPos' functions....so the KRON functions were replaced with those from the UPS 2.1.2 script. How many fps drop are we talking? Does the fps drop only during initialization?

Edited by pastor399
came across wrong

Share this post


Link to post
Share on other sites

Thanks for the word fix!! (Much appreciated).

Also what is the gitattributes file within the UPSMON folder? I never noticed that file in A2UPSMON??

Has anyone tried UPSMON along with running Zorilyas Garrison Script at same time??

Edited by TMP95

Share this post


Link to post
Share on other sites

@pastor: I tested the latest UPSMON for use or not the static weapons, and I found when my character is running to check the static vehicle, the picture freeze a few milisecs in every 5 second. So it's not a framerate drop! But my English is not so fluent to easily explain the effect. I experienced this kind of issue, if I made a script for example to delete the dead bodies in every 5 seconds. But of course in this test I didn't run any other script, just this newest UPSMON.

Then I tried something: I change the call to spawn (in the inti.sqf) and the freezes reduced (but not gone), but I'm not sure it's a proper way to run UPSMON script, is it?

Anyway, I'm a big supporter of you!!! My all issue report is constructive and I want to help you.

Share this post


Link to post
Share on other sites

I made some test with the function Mon_neareststatic and you need to replace all the nearestobjects command by nearentities.

Here the correction:

MON_NearestsStaticWeapons = {
	private["_vehicles","_npc","_emptypositions","_OCercanos","_driver", "_Commandercount","_Drivercount","_Gunnercount","_Cargocount","_distance"];	

_npc = _this select 0;	
_distance = _this select 1;					

	_OCercanos = [];
	_emptypositions = 0;
	_vehicles = [];
	_Cargocount = 0;
	_Gunnercount = 0;
	_Commandercount = 0;
	_Drivercount = 0;

	//Buscamos objetos cercanos
	_OCercanos = _npc nearentities ["StaticWeapon", _distance];

	// _OCercanos = nearestobjects [_npc,"StaticWeapon",_distance];
	{
		_Gunnercount = (_x) emptyPositions "Gunner"; 			
		_emptypositions = _Gunnercount;

		//ToDo check impact (locked _x != 2)
		if ((locked _x==1) && alive _x && _emptypositions > 0 && !(typeof _x in MON_bugged_vehicles) ) then { _vehicles = _vehicles + [[_x,_emptypositions]];};
	}foreach _OCercanos;

	_vehicles //return
};

Share this post


Link to post
Share on other sites

@Cool=Azroul13: I replace the original block with yours and the UPSMON driven AI units still no use static weapons... Any suggestions?

Share this post


Link to post
Share on other sites

Thanks Cool=Azroul13!

I tried your mission and I figured out, why AI in my mission didn't use static weapons: because I set static weapons to UNLOCKED and your script only works with DEFAULT locked status. So, hurrah, it works.

The bad new is: I got two errors while I test your mission.

1. The good old

if (  isNull |#|_x   Error undefined variable _x

:(

2. And a new one:

_OCercanos = |#|_pc nearentities ["Man", _distance];  Error undefined variable _pc

I take screenshots if you need. And I'm testing in final (not developer) version.

Share this post


Link to post
Share on other sites

Great, the second problem solved! Thanks!

But I got that very annoying _x error.

I know, it's a noob question, but where is the RPT file? In winXP it was under the User folders, but now in win7 I can't find it.

---------- Post added at 17:52 ---------- Previous post was at 17:40 ----------

Ok. I got it.

This was in my RPT file:

"--------------------------------"
"UPSMON started"
"KRON_NPCs: [[]]"
"UPSMON - npc [i1_2] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[i1_2,O Alpha 3-1:2,O Alpha 3-1:3,O Alpha 3-1:4]]"
"UPSMON - npc [i2] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[i2,O Alpha 1-1:2,O Alpha 1-1:3,O Alpha 1-1:4,O Alpha 1-1:5,O Alpha 1-1:6,O Alpha 1-1:7,O Alpha 1-1:8]]"
"UPSMON: 0 Man just got new TP [3268.45,6279.13], 1"
"UPSMON: 0 Man just got new TP [3389.84,6223.73], 1"
"UPSMON - npc [O Alpha 1-2:1] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[O Alpha 1-2:1,O Alpha 1-2:2,O Alpha 1-2:3,O Alpha 1-2:4,O Alpha 1-2:5,O Alpha 1-2:6,O Alpha 1-2:7]]"
"UPSMON - group 0 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - npc [i3] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[i3,O Alpha 1-3:2,O Alpha 1-3:3,O Alpha 1-3:4]]"
"UPSMON - group 0 looking for vehicles to travel 10000 m - unitsIn: [0]"
"UPSMON - npc [O Alpha 2-1:1] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[O Alpha 2-1:1,O Alpha 2-1:2,O Alpha 2-1:3,O Alpha 2-1:4,O Alpha 2-1:5]]"
"UPSMON - npc [i1] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[i1,O Alpha 2-2:2,O Alpha 2-2:3,O Alpha 2-2:4]]"
"UPSMON: 3 Man just got new TP [3045.91,6320.56], 1"
"UPSMON - group 3 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - npc [i1_1] - typename [OBJECT] - typeof [O_Soldier_SL_F] - units [[i1_1,O Alpha 2-3:2,O Alpha 2-3:3,O Alpha 2-3:4]]"
"UPSMON - group 3 looking for vehicles to travel 10000 m - unitsIn: [0]"
"3 O_HMG_01_F positions=1 cargo=0 crew=0"
"UPSMON 3: Moving 1 units into O_HMG_01_F with 1 positions"
"UPSMON: 5 Man just got new TP [3329.11,6307.98], 1"
"UPSMON: 5 Man just got new TP [3299.18,6210.59], 1"
"UPSMON - group 5 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON: 6 Man just got new TP [3355.76,6291.13], 1"
"UPSMON: 6 Man just got new TP [3393.89,6330.26], 1"
"UPSMON - group 5 looking for vehicles to travel 10000 m - unitsIn: [0]"
"UPSMON - group 6 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - group 6 looking for vehicles to travel 10000 m - unitsIn: [0]"
"KRON_NPCs: [[i1_2,<null>,<null>,i3,<null>,i1,i1_1]]"
Error in expression <%1]", KRON_NPCs]; };

{		

if ( !isnull _x && {alive _x} && {!captive _x} ) then>
 Error position: <_x && {alive _x} && {!captive _x} ) then>
 Error Undefined variable in expression: _x
File D:\Users\Lacko.MELKIZEDEK\Documents\Arma 3\missions\testUPSMON.Stratis\scripts\Init_UPSMON.sqf, line 328
Error in expression <%1]", KRON_NPCs]; };

{		

if ( !isnull _x && {alive _x} && {!captive _x} ) then>
 Error position: <_x && {alive _x} && {!captive _x} ) then>
 Error Undefined variable in expression: _x
File D:\Users\Lacko.MELKIZEDEK\Documents\Arma 3\missions\testUPSMON.Stratis\scripts\Init_UPSMON.sqf, line 328
Error in expression <%1]", KRON_NPCs]; };

{		

if ( !isnull _x && {alive _x} && {!captive _x} ) then>
 Error position: <_x && {alive _x} && {!captive _x} ) then>
 Error Undefined variable in expression: _x
File D:\Users\Lacko.MELKIZEDEK\Documents\Arma 3\missions\testUPSMON.Stratis\scripts\Init_UPSMON.sqf, line 328
"1 O_HMG_01_F positions=1 cargo=0 crew=0"
"UPSMON 1: Moving 1 units into O_HMG_01_F with 1 positions"
"1 O_HMG_01_F positions=0 cargo=1 crew=0"
"4 O_HMG_01_F positions=0 cargo=1 crew=0"
"4 O_HMG_01_F positions=0 cargo=1 crew=0"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"UPSMON: 5 Man just got new TP [3397.3,6305.02], 1"
"UPSMON - group 5 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - group 5 looking for vehicles to travel 10000 m - unitsIn: [0]"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"UPSMON: 6 Man just got new TP [3327.73,6313.08], 1"
"UPSMON - group 6 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - group 6 looking for vehicles to travel 10000 m - unitsIn: [0]"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"UPSMON: 0 Man just got new TP [3368.82,6223.46], 1"
"UPSMON: 0 Man just got new TP [3347.16,6211.66], 1"
"UPSMON: 0 Man just got new TP [3361.88,6197.54], 1"
"KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]"
"UPSMON: 0 Man just got new TP [3391.68,6317.18], 1"
"UPSMON - group 0 looking for vehicles: [10000] - [true] - [true] - [true] - [true]"
"UPSMON - group 0 looking for vehicles to travel 10000 m - unitsIn: [0]"

Share this post


Link to post
Share on other sites

It seems UPSMON script have some difficulty to initialize all the UPSMON groups in the first try.

KRON_NPCs: [[i1_2,<null>,<null>,i3,<null>,i1,i1_1]]

So bugs appears when it tries to launch the script with the group <null>.

The second time it seems to work:

KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]

But I dont know why.

Share this post


Link to post
Share on other sites

@Bardosy

I allways had fun with your missions.

So, please don't forget to send me a PM as son as they are finished!

Share this post


Link to post
Share on other sites

Have latest version up and looks to be working! (Great news). Haven't done a lot of playtesting yet with it. Some very basic.

Have noticed one bug. Say you use the Min/Max varible (for differening numbers of a certain enemy unit). I've noticed if you have any gear changes to the primary (first unit, with the Init line). These gear changes do not flow over to the other units spawed (for example if you had a Min (2) and Max (5). The first unit if it has the gear change of (this unassignItem "NVGoggles_OPFOR"; this removeItem "NVGoggles_OPFOR") ... The primary unit will not have NVG....yet the other created units (be it 2 thru 5) will all have NVGs I've noticed.

Share this post


Link to post
Share on other sites

I wouldn't call it a bug. It spawns the correct units. You run external scripts that UPSMON cannot account for (or maybe it can, but only very specific scripts and will still not take into account many other possible scripts that you might be running for those units). Either modify UPSMON to take your scripts into account or modify your scripts to work along with the existing UPSMON. While it might be possible to make UPSMON already take care of some situations such as yours, in the end it's a bottomless pit as there are endless possible scripts that people might use that will still not be taken into account.

Share this post


Link to post
Share on other sites

I'm not at my computer right now, but I think Upsmon has an init parameter where you can add the arguments that you'd normally add to an init field.

Share this post


Link to post
Share on other sites
Thanks for the word fix!! (Much appreciated).

Also what is the gitattributes file within the UPSMON folder? I never noticed that file in A2UPSMON??

.gitAttributes is their to tell it to save the files with the proper formating for windows as opposed to linux, it has no relevance to the actual script.

While it might be possible to make UPSMON already take care of some situations such as yours, in the end it's a bottomless pit as there are endless possible scripts that people might use that will still not be taken into account.

It is possible to make the function create proper clones of units, not sure on how much impact on performance it will have, not to much i would think. As mentioned it is possible to do simple things at the moment using the parameter "init:string".

nul=[this,"area0","random","min:2", "max:5", "init:this unassignItem 'NVGoggles';this removeItem 'NVGoggles';"] execVM "scripts\upsmon.sqf";

Something like the above should remove the NVGoggles, without testing im not sure if it will work, and if it will only remove the Group Leaders nightvision.

I made some test with the function Mon_neareststatic and you need to replace all the nearestobjects command by nearentities.

Updated UPSMON_A3 code to reflect this change.

Share this post


Link to post
Share on other sites

@Cool=Azroul13:

It seems UPSMON script have some difficulty to initialize all the UPSMON groups in the first try.

KRON_NPCs: [[i1_2,<null>,<null>,i3,<null>,i1,i1_1]]

So bugs appears when it tries to launch the script with the group <null>.

The second time it seems to work:

KRON_NPCs: [[i1_2,i2,O Alpha 1-2:1,i3,O Alpha 2-1:1,i1,i1_1]]

But I dont know why.

What do you think, if I start the Init_UPSMON.sqf a little bit later? I mean is it possible, in arma3 somehow not all units is "alive" in time when init.sqf is running?

In current, I use this in my init.sqf to run UPSOM:

if ((!isServer) && (player != player)) then
{
 waitUntil {player == player};
};
//Init UPSMON scritp (must be run on all clients)
call compile preprocessFileLineNumbers "scripts\Init_UPSMON.sqf";

What if I add a little sleep before I call the Init_UPSMON.sqf like this:

sleep 3;
//Init UPSMON scritp (must be run on all clients)
call compile preprocessFileLineNumbers "scripts\Init_UPSMON.sqf";

Or the problem is the opposite: this Init_UPSMON.sqf executed too late and the AI groups' leaders' init field run first, before init.sqf runs?

@barbolani: Thanks! You can check my first, old skool mission here: Steam link

Edited by bardosy

Share this post


Link to post
Share on other sites

Is it only me already who got this error with UPSMON?

if ( !isnull _x && {alive _x} && {!captive _x} ) then>
 Error position: <_x && {alive _x} && {!captive _x} ) then>
 Error Undefined variable in expression: _x
File D:\Users\Lacko.MELKIZEDEK\Documents\Arma 3\missions\testUPSMON.Stratis\scripts\Init_UPSMON.sqf, line 328
Error in expression <%1]", KRON_NPCs]; };

Everybody else can run it without error messages?

Share this post


Link to post
Share on other sites

I think Pastor's github-located scripts do not return this error.

Share this post


Link to post
Share on other sites
I think Pastor's github-located scripts do not return this error.

Unfortunately, I got the error messages with this latest github-located UPSMON too. And additionally I have the small freezes with Pastor's version, what I didn't get with Cool=Azroul13 version.

Share this post


Link to post
Share on other sites

Can anyone test the old UPSMON mission in Arma2 and see if the problem has been always here ?

@Bardosy

Maybe the disapearance of setvehicleinit command is one of the cause.

what I didn't get with Cool=Azroul13 version.

I change some of the option of the Init_UPSMON script.

@Pastor

I'm hoping that towards the future additional features will be added, the first on my list is to have AI closing doors when they enter buildings, seeing open doors just gives away the fact there are enemy inside 

In my opionion the Ambush functions need to be improved, sometimes they work great, but when there are roads and forests around and you see an ambush in the middle of a open field...... :s

+ 100

It will be nice to add bdetect script to UPSMON and a proper surrender system.

Edited by Cool=Azroul13

Share this post


Link to post
Share on other sites
Can anyone test the old UPSMON mission in Arma2 and see if the problem has been always here ?

I create a lot of missions (whole campaigns) with UPSMON in ArmA2 and this error messages never throwed.

Share this post


Link to post
Share on other sites

I have yet to get an error message using the lastest UPSMON here. Granted I've only playtested in about 10 times and only on 1 created mission.

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

×