Jump to content
fer

F3 Mission Development Framework (F2 for ArmA 3)

Recommended Posts

Sub'd. It's amazing how inconspicuous this is when contrasted against how awesome it is.

Share this post


Link to post
Share on other sites

As far as the backpacks param goes, I created my own parameters for things like uniforms, kits, allow nvgs, allow launchers, etc. and I created them in a fashion similar to others in the F3 framework: using the param->code option to initialize a variable and set it's value to the selected parameter value, then trusting the publicVariable script to propagate those values to the clients. In my testing, it was unreliable. Some variables were initialized and some weren't. Not all of the clients were receiving the correct values via the publicVariable procedure. It was somewhat maddening but I took a look at the Safe Start timer script, which had always been reliable and I noticed they were using BIS_fnc_getParamValue and not the param->code initialization that the other params were using. I've since switched the parameter retrieval in the various F3 sub scripts as well as the scripts I've written to retrieving the parameter value directly via BIS_fnc_getParamValue. That's worked perfectly so far. Just my $0.02.

-Bus

Share this post


Link to post
Share on other sites

Prior to Arma 3 1.44 parameters were available during preInit on the server, this is no longer the case. Technical Details can be found in this ticket: http://feedback.arma3.com/view.php?id=24007 It's upto to BI whether or not they want parameters to be available at preInit on server, it would be far nicer if they were as currently there is inconsistency in Arma 3 between the MP editor and Server behaviour.

I was just in the process of finalizing an overhaul of the parameter system, I had recently written in F3, but this is broken too. The current parameter processor is also the reason backpacks don't appear in the singleplayer editor. I'll get back to it when we see what BI's response is.

@skruis

It is quite strange to hear that publicVariable was giving improper values. BIS_fnc_getParamValue does indeed provide a valid output, though digging through it's code it looks quite computationally expensive and opts for default values when the true value isn't known, which isn't nice if we depend the exact value. It's use may be fine, though I haven't tested to see if parameters are available during unit initializations yet, they are however available by init.sqf

Share this post


Link to post
Share on other sites

In the mean time, what kind of problems can we expect?

Is it just with the backpacks or is there more to it? :\

Share this post


Link to post
Share on other sites

In ShacTac gameplay I sow, that player can switch to spectator any time, and if they are needed or they want they can respawn. It was triggerd by line in briefing, is it possible to add? Sorry if my explanation isn`t good, byt I don`t know how to describe it.

Share this post


Link to post
Share on other sites

I spent 12 hours yesterday completely re-writing our community's template. It was a learning process and hopefully the way I've done things, future updates will only require minor code adjustments, instead of complete re-writes of the entire framework.

Thanks for the support James and Nick!

Share this post


Link to post
Share on other sites
In the mean time, what kind of problems can we expect?

Is it just with the backpacks or is there more to it? :\

As Snippers points out, there is an underlying issue with the timing of when params are available. For F3, the the only obvious impact is on the backpacks - but in missions with custom scripts that impacted gear selections (e.g. changing the main rifle) we have also seen the bug (?) create issues. We're chasing the ticket.

In ShacTac gameplay I sow, that player can switch to spectator any time, and if they are needed or they want they can respawn. It was triggerd by line in briefing, is it possible to add? Sorry if my explanation isn`t good, byt I don`t know how to describe it.

That might be possible in the future - good to hear the idea, thanks for posting :)

Share this post


Link to post
Share on other sites
I don't know if this happened to anybody else but i'm having problems often with the Simple Revive System.

Basically what happens is that the player gets hit and is wounded, then when another player tries to treat him, the revive just doesn't work and the wounded player remains in a state of constant wounded-ness ( :D ).

No matter how many first aid kits we throw at him there's no way to revive him.

Are we supposed to do something differently?

My (small-ish) group were doing a test with 3.3.0 and noticed this as well. Unfortunately it did not happen consistently. Most of the time, the first time someone revived someone it worked, after that you could throw as many FAKs at the downed person and nothing would happen and they'd eventually bleed out.

We did the tests by shooting ourselves in the legs and also with combat against AI.

Mods / scripts in use during the test:

LEA Loadout editor script

CBA3

TFAR (most current)

ASR AI3

// F3 - Medical Systems Support
// Credits: Please see the F3 online manual (http://www.ferstaberinde.com/f3/en/)

// SWS Config Settings
// How many extra FirstAidKits (FAKS) each player should receive when using the F3 Simple Wounding System:
f_wound_extraFAK = 2;

[] execVM "f\medical\medical_init.sqf";

// F3 - Medical Systems Support
// Credits: Please see the F3 online manual (http://www.ferstaberinde.com/f3/en/)

   class f_param_medical
   {
           title = "Medical System";
           values[] = {0,1,2};
           texts[] = {"Arma 3 Default","F3 Simple Wounding System","Authentic Gameplay Mod"};
           default = 1;
           code = "f_var_medical = %1";
   };

No other issues encountered so far.

Share this post


Link to post
Share on other sites

We have a very different modset and none of those you use (except for CBA).

Share this post


Link to post
Share on other sites

Is your GitHub up to date and do you use it? (just found it by google) also is it good place to post sugestions there or it is better stick to this thred?

Edited by Przemro

Share this post


Link to post
Share on other sites

@Przemo

Yes the github is where all the current code, work items and suggestions are logged. It is more likely that things will get noticed there rather than here.

@Chairborne

The only thing that should be effected is gear iirc. Until we get official word from BI on their exact intentions on parameter processing it is futile to attempt to fix.

Share this post


Link to post
Share on other sites
We have a very different modset and none of those you use (except for CBA).

I believe I'm on to something but not sure how it is related to F3.

So when we did a new test tonight, I went as admin into Zeus and noticed that all units were Blufor but after the first death / respawn they got changed to civilian side and from then on it did not work any more. The test mission is really basic, basically just one fireteam in Stratis airbase and some enemies set up in Agia Marina.

This also would explain the behaviour that it works "sporadically" or only once.

Afterwards we did a second test with F3 framework, but disabled simplewounding and set it to vanilla A3 system. So then when using Grimes Revive script (which works quite well) we experienced the same issue. I have no idea where to start looking what could be causing this.

---

FOUND IT:

Respawn has to be disabled in the description.ext with

respawnButton = 0;

If (undisciplined tester / players) respawned while "bleeding out", they would remain flagged as civs.

Edited by Lukio

Share this post


Link to post
Share on other sites

Hey, am trying to get a hold on this type of mission making. I am getting this error and not sure why. I havent deleted any of the cache files. ideas?

10:12:53 Error in expression <r_JIP_GearMenu = true;			

[30] spawn f_fnc_cInit;

f_var_cachingAggressive>
10:12:53   Error position: <f_fnc_cInit;

f_var_cachingAggressive>
10:12:53   Error Undefined variable in expression: f_fnc_cinit
10:12:53 File C:\Users\Andrews\Documents\Arma 3\missions\F3_test.Stratis\init.sqf, line 32

Share this post


Link to post
Share on other sites

Hi JAndrews1 - Hard to tell from just the error message. If you can post a ZIP of the mission folder (i.e. NOT the PBO), we could do a quick diff against the current F3 (assuming you are using v3-3-0) and see what you have changed. Thanks - Fer :)

Share this post


Link to post
Share on other sites

Are u guys planning any updates to include ACE? And what is wrong with backpacks?

Share this post


Link to post
Share on other sites

Have you tried it? I've used F3 with Ace3 and found no conflicts. The overlapping features (revive, group management) can simply be disabled. That sort of the beauty of F3.

Share this post


Link to post
Share on other sites

So I've been using LEA Loadout manager for quite a while to setup loadouts to give me time to prepare the F3 assign gear component as decisions have been made and experience has been gathered. In the meantime I've got (almost) everything down and loadouts about 90% finalized. The only thing I am stumbling upon is that my CO/SL/FTLs have empty LR backpacks, because somehow somewhere the defined

 

I've also noticed that the admin menu is not available although logged in as admin (on dedicated test server). C&P'd briefing.sqf and f_briefing_admin.sqf from orginal F3 files into the mission folder but that did not do anything.

 

I've moved back to LEA loadout for loadouts as the F3 assigngear seems to have issues with respawning players.

 

MFW I'm trying to make things work with F3 (complete SQf noob here).

Anyway all issues have been resolved by adding:

 

if (!f_var_JIP_GearMenu) then {
	if (typeName (_unit getVariable "f_var_assignGear") == typeName "") then {
		_loadout = (_unit getVariable "f_var_assignGear");
		[_loadout,player] call f_fnc_assignGear;
	};
};

to f_JIP_playerRespawn.sqf.

Now the only issue I have - but I do not believe this is F3 related (help is appreciated anyway) is the divers loadout, the player cannot access smoke grenades in the backpack and the SDAR weapon is undecided which ammo to use and thus needs to be reloaded with the appropriate ammo. I remember having this issue with other classes as well when grenades were only stored in the backpack, not in the vest or uniform. Due to the diver having no "vest" with storage space I figure that is the cause.

Edited by lukio

Share this post


Link to post
Share on other sites

Question: Is it possible to have the ability to allow JIP into slots, but don't have respawn (so players can play from the start of the mission, or the middle and get the JIP Menu (reinforcement) but when they die, they go into the Spectator mode? I'm not being able to get this effect, Or the JIP is not possible (spectator mode instanly when dying) or I get a respawn and can't get into spectator.

Someone has achieved this??

Share this post


Link to post
Share on other sites
@Fanatic72

 

An update to F3 is planned to add an ACE component similar to how the AGM component presently works. 

 

Backpacks work fine in the multiplayer editor, however if using the singleplayer editor the backpacks will not be added. The singleplayer editor is not fully supported by F3. This may change with a future release.

 

@Zriel

 

If you want to have join in progress (JIP) that way, leaving some slots with the AI enabled might be an option. A player can join into these slots at a later point. This does however mean that an AI will be a substitute. Note that if the AI dies the slot is no longer available.

 

 

Share this post


Link to post
Share on other sites

Hey guys, not sure if I've found a bug or if there is an issue w/ our implementation of the spectator script but we're running into a random issue and I was wondering if you could weigh in. The camera in the script appears to jump between targets on its own occasionally. Here are a couple examples:

 

https://youtu.be/vtNOmv5nlfc?t=25m40s​

Yahtzy is selected, then none is selected, then Pv2. Cormier is selected then Yahtzy dies, Alpha 11 is selected and the camera jumps.

 

https://youtu.be/DARN8NCHRrM?t=6m20s​

PFC T Worrall is selected, he engages but is not killed, the selection changes to Alpha 11 on it's own, the camera jumps to the Alpha 11 leader Msgt Anderson (though you can't see him or his indicator) but you can verify Anderson's position at 6:50.

 

We've noticed this behavior elsewhere but combing through videos for examples takes a while so ... that's what I've got as far as examples :-). It's random and infrequent but it does happen. I did some looking around in the code and I 'think' that the selection index is being changed in the unit listbox which is causing it to call the LBListSelChanged case in your fn_EventHandler.sqf. It does not appear that user's are clicking on names in the list and triggering this behavior as would be expected. I also noticed the fn_UpdateValues.sqf which appears to be constantly updating the listbox contents. I suspect that, if there's a bug, that perhaps it's in fn_UpdateValues.sqf or in how Arma handles dynamic changes to lists and the LBListSelChanged event is being triggered unintentionally. Have you had any other reports of this behavior?

 

Thanks!

 

skruis (bus)

 

*EDIT* Now that I'm playing around with it a little more. I think the list has 'focus' and it's accepting the keyboard input. If I select a unit in the list and then hit a key, it jumps to an item in the list starting w/ the letter matching my keystroke. The odd thing is, it appears to be getting focus at random times and then as I use WASD on my keyboard, if it gets focus at the right time, for whatever reason, it jumps to the first name matching either W A S or D. Either way, something is causing the list to get focus.

Share this post


Link to post
Share on other sites

Hi guys, i have made a few of my own missions in the past using various scripts but have only just come across your Framework.  I so wish i had found this earlier, outstanding work, thank you very much for your efforts.

 

I'm having a slight issue with the AI Skill Selector.  I have followed the instructions and beleive it is working correctly when using the selectable parameters on the mission load screen.

 

However, i was interested to see "Enforcing a skill level for individual units" using [this,1] call f_fnc_setAISkill; in the unit init.

 

I've given this a try but get the built in error message "F3 SetAISkill DBG: f_setAISkill.sqf needs to run before calling f_fnc_setAISkill!"

 

I did see the below post by Wolfenswan but don't think it's that (maybe i'm wrong?).  Have i missed something?

 

F3 SetAISkill Bug in 1.40 stable

Due to a BI bug in 1.40 stable (fixed in current dev branch), F3 SetAISkill won't work as expected. Simply speaking, the last skill value will override all others. So by default aimingAccuracy etc. will use the "general" value. There is nothing that can be done to fix this script-side so for the time being we'd recommend lowering precisionAI in your server.cfg and maybe use the debug console to set AI to a lower overall skill value.
 

Share this post


Link to post
Share on other sites

Hello, thank you all for this framework, it is very easy to use and a great foundation for making missions. It have also greatly accelerated my understanding of scripting.

 

I am trying to extend the time that you are downed before bleeding out and dying with the F3 simple wounding system, I believe what I need to change is in the fn_LifeTick.sqf but I am unsure exactly what and would appreciate some insight.

// ticker for life, calculates death and blood.
while {alive _unit} do
{
	_downed = _unit getVariable ["f_wound_down",false];
	_bleeding = _unit getVariable ["f_wound_bleeding",false];
	_blood = _unit getVariable ["f_wound_blood",100];
	if(_bleeding && damage _unit < 0.26) then
	{
		// stops units from not being able to first aid.
		_unit setdamage 0.26;
	};
    if(_downed || _bleeding) then
    {
    	// blood loss
    	_unit setVariable ["f_wound_blood",_blood - 0.6 max 0];
    	if(damage _unit < 0.251) then { _unit setDamage 0.251};
    	if(getBleedingRemaining _unit <= 0) then {    	_unit setBleedingRemaining 10;};
    }
	else
	{
		// blood regens.
		_unit setVariable ["f_wound_blood",_blood + 0.6 min 100];
	};
	if(_blood <= 0) then
	{
		_unit setdamage 1;
	};
	sleep 1;
};

This is where I think I need to change things.

Share this post


Link to post
Share on other sites

I am trying to extend the time that you are downed before bleeding out and dying with the F3 simple wounding system, I believe what I need to change is in the fn_LifeTick.sqf but I am unsure exactly what and would appreciate some insight.

 

The easiest way would be to modify the 'f_wound_blood' parameter ('getVariable ["f_wound_blood",100]'). Set it to 200 and the unit will have double the 'blood' to bleed out and so increase the downed time.

 

This parameter also looks to be set in the 'init.sqf' in the same folder location, so you have to change it in at least two places.

Share this post


Link to post
Share on other sites

Hello

 

Just obtained the latest version of F3, since our old version was modified by too many ppl and became a "dog's breakfast" in the end. Am modifying and testing the new version's parameters and for the most part everything is going smoothly. I have a curiosity however, where in MP testing if I kill an opfor AI, I get an option to "Hide Body" in the action menu. I have confirmed in the Automatic Body Removal section that everything is disabled which it is.

 

Could anybody tell me where this option might be generated from so I can turn it off?

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

×