Jump to content
Sign in to follow this  
BlueBlack

Trouble localising the error

Recommended Posts

Hey, I've been struggling with a problem for a while now and me being a beginner scripter doesn't help. The biggest issue for me is to locate the file that has the error in it.

 

Every time I load the mission I get this pop up. https://imgur.com/a/kLpPwuf

 

That's the part of RPT file.

Error in expression < {
        sleep 3;
        if(!isnil 'GrpNATO_A3') then
        {
            count units GrpNATO_A3 > 0
    >
   Error position: <then
        {
            count units GrpNATO_A3 > 0
    >
   Error Undefined behavior: waitUntil returned nil. True or false expected.

 

I'm using a framework for my mission and I'm worried it might be causing that to happen. I've searched through all the files for the "sleep 3;" part, but only a few of them had it and didn't seem to affect this issue.

 

Missionfile: https://drive.google.com/file/d/1ArZuahWK7aQgLw56qbRORhN9FwdhEwEI/view?usp=sharing

 

If you have an idea of how I could possibly find the issue, I'd be very, very glad.

Thank you in advance!

 

Share this post


Link to post
Share on other sites
15 minutes ago, BlueBlack said:

If you have an idea of how I could possibly find the issue, I'd be very, very glad.

 

If you want help, your best bet is to share your mission file.

Odd that the error message and .rpt are different.

Share this post


Link to post
Share on other sites
9 minutes ago, Harzach said:

If you want help, your best bet is to share your mission file.

Odd that the error message and .rpt are different.

I uploaded the mission file in the post.

 

I took the screenshot after I copied part of RPT file, I think the group names might be changing.

Share this post


Link to post
Share on other sites

Oh, how did I not see it!
 

So it's the Folk framework, which historically has been solid, AFAIK. Error is being thrown by fn_localGroupMarker.sqf, specifically this bit:

// WAIT FOR GROUP TO EXIST IN-MISSION
// We wait for the group to have members before creating the marker.

if (isNil "_grp") then
{
	call compile format ["
		waitUntil {
		sleep 3;
		if(!isnil '%1') then
		{
			count units %1 > 0
		};
		};
		_grp = %1;

	",_grpName];

};

It's dynamic, which explains the discrepancy between error and .rpt.

 

According to the Biki page for waitUntil:

Quote

Since Arma 3 v1.93.145618 returning anything other than true or false from condition will result in appropriate type error

 

Since the code block returns "nil" until the group exists, and "nil" isn't "true" or "false", you get an error. This is then an instance of code that has been broken by a game update. 
The Folk framework appears to no longer be under development, but perhaps the framework mentioned in one of the last comments in the F3 topic is: 

Good luck!

  • Like 1

Share this post


Link to post
Share on other sites

Thank you very, very kindly for your support! I have no clue how I could miss that, I'm sure I searched all files in the framework, maybe I've missed the variables.

 

I'll look into the file straight away, I'll let you know how it goes. 

Share this post


Link to post
Share on other sites

@HarzachApparently the framework I was using was outdated, I've changed the file you pointed out and it works well now. Thanks again for helping out and I'm very glad Arma has such a supportive community consisting of people like you!

  • Like 1

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  

×