Jump to content

lawman_actual

Member
  • Content Count

    258
  • Joined

  • Last visited

  • Medals

Everything posted by lawman_actual

  1. I am trying to get to the bottom of why not all assets from some mods are made available for a zeus curator when initiated through an in-game script. Note that this is not related to needing to adjust the module to read "all addons including unofficial ones" in the editor. I have a script which creates a curator module and assigns it to the designated player (usually me), and is supposed to add all addons to it. This works fine with almost everything; all vanilla factions are added without fault and almost all downloaded mods. However, for a couple of faction mods, some assets are not being added even when some of them are. While it is usually quite consistent which fail to add, it is not always completely. At first I assumed it was a case of some assets in the mod having scopeCurator set such that this was intended, but even having been into the configs and successfully changed it, it still fails most the time. It also wouldn't explain why on some occasions these assets do get added. Here is the script I have been using to add the curator and configure it in singleplayer: _unit = player; // Exit if unit is already curator if (!isNull (getAssignedCuratorLogic _unit)) exitWith { systemChat format["[Zeus] Logic already assigned to %1, remove it first",name _unit]; }; private _curator = missionNamespace getVariable [format["f_zeusCurator_%1",getPlayerUID _unit],objNull]; // Check curator exists, if not create it if !(isNull _curator) then { format["[Zeus] Curator variable already assigned to %1, reassigning", name _unit] remoteExec ["systemChat",_unit]; unassignCurator _curator; deleteVehicle _curator; sleep 1; } else { //format["No Curator.", _curator] remoteExec ["systemChat",_unit]; unassignCurator _curator; f_var_sideCenter = createCenter sideLogic; format["Creating....", _curator] remoteExec ["systemChat",_unit] }; _var = missionNameSpace getVariable ["l_var_sideLogic","Fail"]; // Create a new curator logic _curator = (createGroup f_var_sideCenter) createUnit ["ModuleCurator_F",[0,0,0],[],0,""]; _curator setVariable ["owner",format["%1",getPlayerUID _unit],true]; _curator setVariable ["showNotification",false,true]; _curator setVariable ["Addons",3,true]; //Set Zeus Vision Modes [_curator, [-1, -2, 0]] call bis_fnc_setcuratorvisionmodes; // Assign the passed unit as curator //_unit assignCurator _curator; _unit assignCurator _curator; private _curator = getAssignedCuratorLogic _unit; systemChat format["Curator: %1", _curator];; if (isNull _curator) then { _curator = _unit; }; // If curator is null or not the correct logic exit with an error message. if (isNull _curator || typeOf _curator != "ModuleCurator_F") exitWith { systemChat format["Failed to resolve curator for %1", _unit]; }; // Decide which addons to add based on passed mode _mode = True; _addons = []; switch (typeName _mode) do { case "ARRAY"; case "STRING": { if (_mode isEqualType "") then { if (_mode == "basic") then { // Load predefined basic modules _mode = ["A3_Data_F","A3_Data_F_Curator","A3_Functions_F_Curator","A3_Misc_F","A3_Modules_F_EPB","A3_Ui_F_Curator","A3_Modules_F_Curator","A3_Modules_F_Curator_Misc","CuratorOnly_Modules_F_Curator_Chemlights","CuratorOnly_Modules_F_Curator_Environment","CuratorOnly_Modules_F_Curator_Flares","CuratorOnly_Modules_F_Curator_Ordnance","CuratorOnly_Modules_F_Curator_Smokeshells","A3_Modules_F_Bootcamp","A3_Modules_F_Bootcamp_Misc"]; } else { // Convert to array _mode = [_mode]; }; }; { if (isClass (configFile >> "cfgPatches" >> _x)) then { _addons pushBack (configName (configFile >> "cfgPatches" >>_x)); }; } forEach _mode; }; case "BOOL": { if (_mode) then { // If true was passed, add all available addons to curator list _cfgPatches = configFile >> "cfgPatches"; for "_i" from 0 to (count _cfgPatches - 1) do { _class = _cfgPatches select _i; if (isClass _class) then { _addons pushBack (configName _class); }; }; } else { removeAllCuratorAddons _curator; }; }; }; // Nothing to add! if (count _addons == 0) exitWith {}; // Remove existing addons removeAllCuratorAddons _curator; _curator addCuratorAddons _addons; systemChat format["[Zeus] Added %1 addons",count _addons]; // Reduce costs for all actions _curator setCuratorWaypointCost 0; { _curator setCuratorCoef [_x,0]; } forEach ["place","edit","delete","destroy","group","synchronize"]; systemChat format["[Zeus] Curator set-up complete for %1.",name _unit]; _unit assignCurator _curator; I have checked my patch file that is supposed to be fixing this to ensure that the vehicles are listed in cfgPatches, and that the assets I am looking for have scopeCurator = 2. I am not getting any error messages other than: This confuses me because I read on a biki page that addons can be added "on the fly" for a curator, and it works despite this error message for most addons. So I'm not entirely sure what to be looking for from here. Pointers appreciated. Cheers, Law
  2. This post is no longer relevant, however I cannot see how to delete it.
  3. lawman_actual

    Simple O2 tutorials

    Amazing, thanks again Eggbeast that's all I needed to know! Didn't realise the flash was a proxy of another model. Noted regarding discord...guess I'll have to download that now Cheers, Law
  4. lawman_actual

    Simple O2 tutorials

    Sorry to bother you folks again but I'm still unable to find an answer to my forum post here: Quite frustrating modelling missiles for the first time, since it seems to be a bit of a gap in the tutorials market 😕 Figured most of it out now but can't get the fire coming out the back and it looks a bit dead, while also being very hard to track. While I'm here i'll also mention...is there an animation source someone can suggest relating to the missile changing direction (in any axis)? The missile I'm modelling has a part that rotates in order to maneuver. Would be great to be able to simulate this but not really necessary, would settle for just continuous rotation. Cheers, Law
  5. lawman_actual

    Missile trail effect not showing

    nobody?
  6. Hey, The missile I have modelled isn't showing effects when in flight (i.e. burning rear, smoke trail). At the moment I'm using the effect from the Titan: effectsMissile = "missile2"; The effect works fine when the model is that of the titan, but when changed to my new model it does not appear. Hence I'm guessing the effect is generated from a memory point, which I do not have in my model. Trouble is...what's the memory point called? I can't find it in any references. Cheers, Law
  7. lawman_actual

    Smooth (reflective) metal

    Hey I'm having a lot of difficulty trying to get a material to look half decent. It's supposed to be a smooth, and therefore quite reflective, metal. I've done as much reading as I can into SMDI maps and as far as I can tell the G channel can be used to set specular level while B sets smoothness. So I appplied an SMDI map with pure white in the Blue channel as a test but the material still doesn't remotely look like a smooth metal. I'm not aware of any 'metalness' parameter for materials in Arma, nor any way to set how reflective a material is, so I'm a bit lost on how to get this looking good now. Any advice would be very welcome. Thanks, Law
  8. lawman_actual

    Smooth (reflective) metal

    Thanks Yano, very useful. Hopefully I've got it now, but we'll see...
  9. lawman_actual

    Smooth (reflective) metal

    Interesting that specularPower impacts this? I had been thinking specular power would only impact...well...specular highlights. I did wonder about the environment map but hadn't had much success playing with it so far. RVmat so far: class StageTI { //texture="#(argb,8,8,3)color(0.5,0,0,0,TI)"; texture = "a3\weapons_f_beta\launchers\titan\data\launcher_ti_ca.paa"; }; #define _ARMA_ ambient[] = {0.79600036,0.79600036,0.79600036,1}; //multiplies color values (color texture R,G,B,A) of the surface that is not lit by main directional light. diffuse[] = {0.79600036,0.79600036,0.79600036,1}; //multiplies color values of the surface that is lit by main directional light. //forcedDiffuse[]={0,0,0,0}; //Part of the diffuse lighting that is reflected on surface in shadow forcedDiffuse[]={0,0,0,1}; //Part of the diffuse lighting that is reflected on surface in shadow emmisive[]={0,0,0,0}; //Also called Luminescence. Values give amount of light that surface shines by itself. Use it for light sources. It will appeal shining but will not light anything around it. specular[] = {0.16100001,0.16100001,0.16100001,1}; //Colour and brightness of specular reflections specularPower=70; //Default 30. Also called Glossiness. Defines how sharp the hotspot will be. Some shaders use IRRADIANCE TABLE instead of this value. PixelShaderID="Super"; //Shader name VertexShaderID="Super"; //Shader name class Stage1 { texture="law_myMod\addons\law_myAddon\data\blank2k_nohq.paa"; //path to your normal map //texture="a3\weapons_f_beta\launchers\titan\data\launcher_nohq.paa"; //path to your normal map uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage2 { texture = "#(argb,8,8,3)color(0.5,0.5,0.5,1,DT)"; uvSource = "tex"; class uvTransform { aside[] = {8,0,0}; up[] = {0,8,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage3 { texture = "#(argb,8,8,3)color(0,0,0,0,MC)"; uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage4 { texture="#(argb,8,8,3)color(1,1,1,1,AS)"; uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage5 { texture="law_myMod\addons\law_myAddon\data\hvmMetal2k_smdi.paa"; //Optimised Specular Map. R=1, G=Specular, B=roughness (black=rough) //texture = "a3\weapons_f_beta\launchers\titan\data\launcher_smdi.paa"; uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage6 { //texture = "#(ai,32,128,1)fresnel(1.3,1.7)"; //Fresnel texture = "#(ai,16,2,2)fresnel(0.46,0.36)"; uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; class Stage7 { //texture = "a3\data_f\env_land_co.paa"; texture = "a3\data_f\env_land_plastic_co.paa"; //texture = "law_myMod\addons\law_myAddon\data\missileMetal2k_co.paa"; uvSource = "tex"; class uvTransform { aside[] = {1,0,0}; up[] = {0,1,0}; dir[] = {0,0,1}; pos[] = {0,0,0}; }; }; //law_myMod\addons\law_myAddon\data\launcher_lta.rvmat Don't really know how to share an image here. I can see you can do it with a URL but I don't have anywhere to upload it to 😕 Cheers Law
  10. lawman_actual

    Strange missile flight characteristics

    Hey, thanks for getting back on this one Jackal. I did have mass assigned but thanks for the suggestion. I think maneuverability and a couple of other config settings turned out to be the issue. They worked independently but when combined something was messing up. Not exactly sure since I ended up starting virtually from scratch again with the config, but guess that's how it goes sometimes 🙄 Cheers, Law
  11. I've built a new missile type projectile, with beam-riding guidance, which comes out of the launcher in the correct direction. However, the munition doesn't follow it's beam, instead veering wildly off course. At first it seemed it was a guidance issue, like trying to track another target, but after upping the ability of the missile to maneuver I think it's more likely the missile is being thrown about by some rotating animation. I'd included an axis that I was going to animate in flight once I'd actually figured out how to do that, but I'm a bit confused about why it's animating when I haven't set this up at all. No model config or anything. I'm currently trying to suss out what I need to check to see if this theory is correct. Cheers, Law
  12. lawman_actual

    Simple O2 tutorials

    Ended up resolving this somehow following an almost complete rebuild. Something to do with maneuverability and air friction which didn't seem to get on with the mass of the new model perhaps?
  13. lawman_actual

    Strange missile flight characteristics

    You can see some of the behavior here.
  14. lawman_actual

    Simple O2 tutorials

    Anyone suggest why the model I've made for a beam-riding missile isn't following the beam? It ends up veering off in odd directions. I'm fairly sure it's something I've missed in the .p3d as everything works fine until I set the model. At my wits end trying to figure this out...whatever I'm missing is apparently not obvious in all the guidance provided. Cheers, Law
  15. lawman_actual

    Strange missile flight characteristics

    I created a new ammo which inherits everything from the BIM-9X to get a clearer picture. First I change: lockType = 1; Congrats, you now have a beam-riding BIM-9X. So now I change: model = "law_mod1\addons\law_addon1\data\myModel.p3d"; The model loads fine but it now flies in random spinning motions all over the place. Clearly it's something to do with how the .p3d is set up but I have no idea what. Cheers, Law
  16. lawman_actual

    Strange missile flight characteristics

    Is there a list of memory points for things like missiles? If any are even needed? I haven't been able to find any but I wondered if a missing memory point might be the cause.
  17. Can't seem to figure out the correct way to reference the RV mat file in my P: drive and have it work in game once packed up. My file structure is: In object builder it works if I assign the following: However in game I am told the material file cannot be found. I've tried a few iterations now and can't seem to figure the correct way to work. Advice would be much appreciated! Cheers, Law
  18. Ok, well I managed to fix it I think. Not exactly sure what did it in the end...I removed a parent 'law' folder and then in the process of updating everything else the error seems to no longer be an issue. This was my new file structure: For reference, to get this working with the above structure I had to set: - Addon prefix in BIS Addon Builder: modName\addons\addonName - Material file path in Object Builder: modName\addons\addonName\data\yourFile.rvmat Thanks for trying Dedmen! Cheers, Law
  19. This was generated by the BIS addon builder (yes I know everyone says don't use it...I'm having issues getting pboProject to run at the moment). I just tried to force the addon prefix to the following: law\modName\addons\law_addon law\modName\addons\law_addon However when I do this it fails to even load the .p3d, which was working before. Seems like it's one rule set for the model and another for the rvmat? Thanks, Law
  20. Well...I have a prefix. How correct it is I'm not sure. prefix=law_addon Do I then subtract anything prior to this path when referencing in the object builder? \data\material1.rvmat If I do, I am then not able to see it's effects in preview and must pack and load the mod to see it?
  21. I suspect it's hard coded in the weapon config. Haven't tested myself, but my interpretation of the below link would be that irDistance is what you want. https://community.bistudio.com/wiki/Weapons_settings Curious if that is native to the weapon only though. Might also be worth looking for similar values in the IR laser item itself.
  22. lawman_actual

    Task Force Arrowhead Radio

    I usually find this error can be resolved by reloading the plugin in TS or restarting TS...and of course having TS running while you are testing. Afraid I'm not aware of the technical aspects, that's just my experiences as a user.
  23. lawman_actual

    Arma 3 weapons config guidelines

    I think some more detail on setting up sub-munitions would be useful, particularly when it comes to the spawn cone. For example, the different cone types are not described, nor the significance of each array value in the custom cone type. I've spent pretty much a solid day trying to create three sub-munitions which spawn and fly parallel to the parent munition in even thirds of a circle around it, and even now they are still appearing with random spreads and diverging away from the parent in a 'cone' shape. I'm also pretty convinced the sub-munitions are not following the targeting of the parent (in this case beam-riding) which is disappointing if it is an engine limitation.
  24. Hey all I've been putting together a scenario and am getting significant issues with units not belonging to a group, or having a name. Some key observations; 1) Attempting to switch to a known AI unit does nothing. No script error, no .rpt log. For example: select player engineers_1 2) Testing for nil variable for a known unit returns false. For example, the following returned "unit is not nil": if (isNil "engineers_1") then {systemChat "Unit is Nil";} else {systemChat "Unit is not Nil";}; 3) Testing for isNull unit returns false. For example, the following returned "unit is not null": if (isNull engineers_1) then {systemChat "Unit is Null";} else {systemChat "Unit is not Null";}; 4) Bugged units do register as alive. The following returns as "unit is alive"; if (alive engineers_1) then {systemChat "Unit is alive";} else {systemChat "Unit is not alive";}; 5) Bugged units do not belong to any group. For example, the following returned "<NULL-group>"; systemChat str group engineers_1; 6) Bugged units do not have a name. For example, the following returned "Error: No Unit". systemChat str name engineers_1; This is leading to various issues when checking whether certain actions can be shown, and is meaning a function which draws unit name tags for AI is not working. Sample from mission init: //Make sure player is initialised properly waitUntil {!(isNull player);}; waitUntil {alive player;}; //Specifics _pilotUnits = [ "us_inf_valliant_1", "us_inf_valliant_2" ]; _rpt = format ["[LAW] Assessing unit name to add helo service. Name: %1",str player]; [_rpt] remoteExec ["diag_log",0,false]; if ((str player) in _pilotUnits) then {execVM "scenario\addHeloService.sqf";}; if ((str player) == "us_inf_fallow1_1") then {player execVM "scenario\addEndex.sqf";}; //Name tags _0 = [] spawn { sleep 3; execVM "framework\interface\unitLabelsInit.sqf"; }; Samples of errors: 15:41:39 Cannot create object 2:2 with type[AIUnit], param[unit], NMT code[112]: 15:41:44 Cannot create object 2:1282 with type[AISubgroup], param[subgroup], NMT code[107]: 15:41:44 Cannot create object 2:1283 with type[AISubgroup], param[subgroup], NMT code[107]: 15:41:44 Cannot create object 2:1338 with type[AIUnit], param[unit], NMT code[112]: 15:41:44 Cannot create object 2:1339 with type[AIUnit], param[unit], NMT code[112]: 15:41:44 Cannot create object 2:1340 with type[AIUnit], param[unit], NMT code[112]: 15:41:45 SetFace error: class CfgFaces.Man_A3.gm_face_whiteHead_01 not found 15:41:45 Error: Error during SetFace - class CfgFaces.Man_A3.gm_face_whiteHead_01 not found 15:41:45 Setting invalid pitch -0.0000 for L Alpha 1-1:1 REMOTE 15:41:45 Setting invalid pitch 0.0000 for L Alpha 1-3:1 REMOTE 15:41:45 Setting invalid pitch 0.0000 for L Alpha 1-3:2 REMOTE 15:41:49 Client: Object 2:1337 (type Type_114) not found. 15:41:49 Client: Object 2:1282 (type Type_108) not found. 15:41:49 Client: Object 2:1338 (type Type_113) not found. 15:42:21 WARNING: Function 'name' - 211c6fd0480# 2900537: b_soldier_01.p3d REMOTE has no unit 15:42:21 - network id 2:1269 15:42:21 - person 15:42:21 WARNING: Function 'name' - 211c6fd0480# 2900537: b_soldier_01.p3d REMOTE has no unit 15:42:21 - network id 2:1269 15:42:21 - person 15:42:21 WARNING: Function 'name' - 211c6fd0480# 2900537: b_soldier_01.p3d REMOTE has no unit 15:42:21 - network id 2:1269 15:42:21 - person Important to note that these type of errors continue well after mission init, while the others seem limited to mission start. 16:35:25 Client: Object 2:4993 (type Type_113) not found. 16:35:26 Client: Object 2:4779 (type Type_108) not found. 16:35:27 Client: Object 2:4990 (type Type_114) not found. 16:35:27 WARNING: Function 'name' - engineers_1 has no unit 16:35:27 - network id 2:4727 16:35:27 - person 16:35:28 Client: Object 2:4998 (type Type_114) not found. 16:35:28 Client: Object 2:4992 (type Type_114) not found. 16:35:29 Client: Object 2:4783 (type Type_108) not found. 16:35:29 Client: Object 2:4784 (type Type_108) not found. I would like to know if anyone knows more about this kind of issue, what's causing it and how to avoid it if possible. No matter what I do right now, the groups never seems to initialise and the units never get names, even many minutes into testing. In a weird setup...the issue only seems to be occuring for AI on the WEST side at the moment...those on EAST are appearing fine on the spectator cam. Cheers, -Law
  25. oh, FYI: I discovered this seemed to result from issuing doStop commands in the init fields of groups or units. Haven't done much testing since but executing doStop's in other places seemed to resolve the issue. -Law
×