#arma3_config

1 messages · Page 33 of 1

severe marlin
#

I retextured other t-shirts with this resolution there wasn't any problem

hearty sandal
#

well you got to fix those too

fiery frost
#

Hi there,
If you have a chance, could you please look up those arguments you mentioned?
No rush.
Thanks!

grand zinc
#

beep boop initiating satellite scan
dun dun, dun dun dun

#

There are no arguments for unload vehicle/unload all vehicles.
The action must be performed on the vehicle itself. So ... probably

driver _vehicle action ["UnloadAllVehicles", _vehicle];

#

action syntax is a bit not well documented.
Its either

target action ["actionName"]
or
actionUser action ["actionName", target (, arguments...)]

#

It seems this action doesn't even need a user. So probably
_vehicle action ["UnloadAllVehicles"]; would also work

fiery frost
#

Ah great! I'll give it a go, thanks!

hearty sandal
#

Does action work even if there is no unit on seat to do the action?

grand zinc
#

For some actions, it should

fiery frost
#

just to confirm, this should work in the useraction statements line right?

#

_vehicle action ["UnloadAllVehicles"]; didn't work for that

#

I had it listed like this

            class airdrop
            {
                displayName="Airdrop Cargo";
                position="pos cargo";
                onlyForPlayer=1;
                showWindow=0;
                hideOnUse=1;
                radius=15;
                condition="this animationPhase ""ramp_top"" >= 0.5 ";
                statement= _vehicle action ["UnloadAllVehicles"];
            };```
#

maybe there's something I'm doing wrong

#

I had the line in quotations at first like the rest of the UserActions, but that gave me an error when loading the game and force closed it

novel lava
#

_vehicle doesnt exist

#

use this instead

#

also put quotes around it

#

ie.

statement= "this action ['UnloadAllVehicles']";
fiery frost
#
class airdrop
            {
                displayName="Airdrop Cargo";
                position="pos cargo";
                onlyForPlayer=1;
                showWindow=0;
                hideOnUse=1;
                radius=15;
                condition="this animationPhase ""ramp_top"" >= 0.5 ";
                statement=this _vehicle action ["UnloadAllVehicles"];
            };```
I was slowly heading that direction with my last test, which complained about a missing `;`
fiery frost
fiery frost
novel lava
#

because you would have had "["UnloadAllVehicles"]"

#

you need to double quote when quotes are inside quotes or use ' '

fiery frost
#

oh so I needed it to be single quotations or double it up for it to work in that case

#

because otherwise it would've ended after [

#

makes sense

fiery frost
novel lava
#

try statement= "this action ['UnloadAllVehicles',this]";

fiery frost
#

will do!

novel lava
#

havent tested it but worth a shot

fiery frost
#

didn't work sadly

fiery frost
#

maybe _veh will work in the line Dedmen sent

hearty sandal
#

you may need to read a bit about scripting basics here

hard chasm
#

@fiery frost , what is the error you are getting now? and pls don't say 'like the other one'

fiery frost
#

I'm not getting any error at all

#

that's the thing

hard chasm
#

well that's one hell of an improvement

fiery frost
#

on one hand, yeah, it's nice not getting an error
on the other, no error means it doesn't tell me where it's going wrong

hard chasm
#

now, all it boils down to is poor useage

#

read the documentation for the sqf you're trying to use

fiery frost
#

I'm not using any sqf file as this is in the config, but if you mean the documentation for UnloadAllVehicles, there is none

hearty sandal
#

first we start form here

#

if you read the statement description it tells you how "this" is handled in script code written to the line

fiery frost
#

I'll take a look, thanks

hearty sandal
#

so "this" is the vehicle

fiery frost
#

ah gotcha

#

I thought "this" was referring to the user that ran the UserAction at first, hence why I thought adding _veh could perhaps be a fix

hearty sandal
#

but _veh does not exist unless you define what _veh is

#

which is why you cant just randomly add things

fiery frost
#

gotcha

molten musk
#

And objectParent player return player

Don't know why, it shouldn't? Or should?

wintry fox
#

It's still the vehicle, but when a vehicle is displayed as a string it shows the driver's name

#

Do typeOf if you want to check

molten musk
#

I will, thanks.

wintry fox
#

Also why not just use this setVehicleCargo objNull?

fiery frost
#

you're a fucking lifesaver

#

that did everything I wanted it to do

#

thank you!

#

I was too focused on trying to call that function

hearty sandal
brave crag
#

Is there any direct or known reason why a tank would be gaining momentum when letting go of the throttle on a flat surface?

I'm hoping it can be solved with a config adjustment

If you press W and move forward slightly and then let go, the engine RPM settles but the tank continues to gain speed and roll as if youre going down a steep hill. It does it both in F and R

hearty sandal
#

there may be issues on models side too

brave crag
#

I tried removing everything they had in relation to physics in the config and it still persisted, the only thing that changed was the maximum speed it reached

hearty sandal
#

if its not model you made, then it may not be possible to fix

brave crag
#

I'm gonna mess with the config in the meantime, they said they got help for it, but it smells like chatgpt

brave crag
# hearty sandal sounds a bit weird setup

Yeah at first, it would speed up very quick to 60 km/h, then on the recent update it was even worse and now goes 160kmh.

I was reviewing other similar tracked vehicle mods in an attempt to use as a reference to compare the configs since its slightly similar in the way it should drive, and the config is a mess. Even after cleaning it up it still behaved irregularly and left me stumped

The author is open to receiving help but I'm no good beyond the cfg

hard chasm
#

well you meant config not model.cfg. BUT, it is possible via an snimation to bingle a vehicle's movement. Look at the baked in model.cfg via eliteness to see anything strange (or not)

limpid mural
#

Hello, when I upload a modded mission file to my server, it gives an error in the Arma 3 console. error: Bad vehicle type tmt_patrolback_1.

I don't know how to fix it can you help me

nimble sequoia
limpid mural
#

No, I'm just a user and I didn't know where to post this problem.

limpid mural
hearty sandal
#

this is kinda wrong channel for it

fast ruin
#

Is it possible in the config to swap out one tanks turret for another? For example putting the Kuma turret on the Slammer chassis

wintry fox
fast ruin
#

Or are we talking about the same thing?

hearty sandal
#

turret model is not separate thing

fast ruin
#

Ahhh okay

#

Thanks

lament thicket
#

Hello all, my brain aint braining today. How would I go about manually setting a TFAR intercom to be usable inside a vehicle (including the ace interactions and all that jazz). TFAR isn't adding it to the vehicle automagically like it does with our other modded vehicles

#

I have looked at the TFAR wiki on github, but it only tells me how to add a radio, i need the intercom

nimble sequoia
# lament thicket Hello all, my brain aint braining today. How would I go about manually setting a...

I've pulled this code from an old mod I worked on - can't promise it's still correct, but might be what you need:

tf_hasLRradio = 1;
tf_isolatedAmount = 0.1;
tfar_additionalLR_cargo[] = {0, 1};
tfar_hasIntercom = 1;
class ACE_SelfActions : ACE_SelfActions {      
    class TFAR_IntercomChannel {
        displayName = "Intercom";
        condition = "true";
        statement = "";
        icon = "";
        class TFAR_IntercomChannel_disabled {
            displayName = "Disable";
            condition = "((vehicle ACE_Player) getVariable [format ['TFAR_IntercomSlot_%1',(netID ACE_Player)],0]) != -1";
            statement = "(vehicle ACE_Player) setVariable [format ['TFAR_IntercomSlot_%1',(netID ACE_Player)], -1, true];";
        };
        class TFAR_IntercomChannel_1 {
            displayName = "Crew";
            condition = "((vehicle ACE_Player) getVariable [format ['TFAR_IntercomSlot_%1',(netID ACE_Player)],0]) != 0";
            statement = "(vehicle ACE_Player) setVariable [format ['TFAR_IntercomSlot_%1',(netID ACE_Player)], 0, true];";
        };
    };
};```
hard chasm
#

@nimble sequoia to the rescue, Yet again.😎

nimble sequoia
#

lol, just returning favours for all the help I received when learning the ropes, nice to give back a little

lament thicket
hard chasm
#

@nimble sequoia let me do something about with a freebie subscription,....

steady horizon
#

i must have made something wrong because after posting it on the workshop and trying it with friends i'm the only one to have the texture

#

@molten musk

#

maybe wrong file

steady horizon
#

this

hearty sandal
steady horizon
#

alright

#

i have my mod like this

#

after completing the config i turned it into a pbo

#

and then published it

#

now when we try the mod with my friends

#

i can see the object texture but none of my friends can

#

i precise it is a mod that bring french explosives into Arma

hearty sandal
#

do your friends load the mod?

#

how do you pack the pbo?

#

do the contents of the pbo match the paths you set?

steady horizon
#

yeah i made them subscribe it

#

mmm

#

i don't think so

hearty sandal
#

the paths need to match to folders what you have in the pbo

steady horizon
#

that must be it

hearty sandal
#

do you use P drive?

#

and how do you pack the pbo?

steady horizon
#

with the standar tool from arma tool

hearty sandal
#

and do you use P drive?

steady horizon
#

i didn't put it in the P drive but the P drive is still active

hearty sandal
#

then yea most likely what you pack in does not match the paths you set

#

using P drive is simple way to make proper pbos

#

you should use it

steady horizon
#

alright

#

thx

hard chasm
#

you are in this instance far better off using pboProject, it will instantly tell you if file\paths are wrong.

#

you should only ever make addons ON the P drive. I very much doubt anyone can help you nail issues if you don't

steady horizon
#

could someone give me an example for texture path ?

hearty sandal
#

folders corresponding to the mod folder structure you pack into pbo

steady horizon
#

ok i will try with pboproject

steady horizon
#

it give me this

#

the texture is in this folder btw

wintry fox
#

File paths shouldn't start with P:

steady horizon
#

starting from the mod folder ?

wintry fox
#

It should start with your addon path, which by default (in addon builder at least), is the folder name

hearty sandal
steady horizon
#

so here it would be : A3KawaCrackers\data\masticcartonKawa.paa

#

right ?

#

ok

wintry fox
#

No, there shouldn't be a colon either

rough tangle
#

Hey, I've got an issue regarding either model?, config?, or physX?. My tracked vehicle isn't driving in a straight right - at some point during the acceleration it suddenly starts going sliiightly into either the left or ride side. Diag shows a difference between the left & right wheels avg rotation speed

nimble sequoia
# rough tangle Hey, I've got an issue regarding either model?, config?, or physX?. My tracked v...

There's a number of possible reasons. Let's start with the p3d memory LOD.
Check you have two points for each wheel axis, closely spaced and centred over the tracks.
Check you have a single boundary point for each wheel, directly under the wheel axis points.
Name them wheel_1_1_axis (wheel_1_1_bound) etc but always have the last wheels as wheel_1_9_axis (wheel_1_9_bound) even though there aren't 9 wheels.

#

When you've checked/tested that, come back for more advice.

heavy hamlet
#

Guys, hello. Does anyone know how to link your custom silencer to a specific weapon from another mod? I made a silencer, but I don’t understand how to attach it to an AK from RHS

hearty sandal
nimble sequoia
# rough tangle I did that now, issue persists

What is the total mass in your Geometry LOD, and check that the CofG is in the centre?
Try using sprungMass = -1; in your class Wheels for a tracked vehicle.
What is your springStrength and springDamperRate?

heavy hamlet
nimble sequoia
#

how many wheels?

#

12?

rough tangle
#

8 on each side, 2 without land contact (it's a bmp-2)

#

in wheels class i have got L1,2,3,4,5,6,7 and L9. And the same for right

wintry fox
nimble sequoia
hearty sandal
#

if RHS config is done in same fashion as vanilla they will have simiilar muzzleslot that my screenshot shows

#

editting that is a bit more easier than going deeper into the weapon itself

nimble sequoia
rough tangle
#

my droop & compression where just at 0.0 before. Should I revert to them or keep 0.01?

nimble sequoia
#

Best to keep them at 0.01 in my experience

rough tangle
nimble sequoia
#

What do you have for moi, dampingRate and dampingRateInAir?

hearty sandal
#

your mass center is offset

rough tangle
nimble sequoia
#

It is, but I'm not sure that's enough to warrant the problem - it's usually an uncontrolled config physx with high speed

rough tangle
hearty sandal
#

👍 at least can rule that out

rough tangle
#

furthermore - it moves both left and right, not just one sided

nimble sequoia
#

Try

dampingRate = 2370;
dampingRateInAir = 2370;```
If that's too slow, reduce the dampingRates.
#

Sometimes higher moi's help with odd physx

#

Next can you show your Geo Phys LOD (4 views) please?

rough tangle
nimble sequoia
#

wheel difference? you mean the pull off to one side or the other?

nimble sequoia
#

No wheels in Geo Phys.
Track base should be higher than max compression point.
Don't model gun barrels.
Aim for 15 components or less.

#

For your test, try removing tracks and wheels for now (re-find ComponentXX)

rough tangle
#

but I have no wheels and no barrel in geo physics, and this is only 3 components

nimble sequoia
rough tangle
#

yes

nimble sequoia
#

Ah, colours...yellow is background from LOD 1?

rough tangle
#

yup

nimble sequoia
#

right, you can see compared to my set-up why it looked like you had more modelled

#

Ok... if you want to DM me the files needed to build your project I'll take a look for you.

rough tangle
hearty sandal
#

get permission. youll want his expertise on this 😄

rough tangle
#

ok, i'll try

nimble sequoia
#

phl3121 problem with tank physx solved, hopefully OP will give details in due course

real bluff
#

I got a problem where in my custom civilian unit config I give them my custom hat and in Eden it shows the hat, but when you test the unit in game, it is one of the random ones that can be given to a civilian. How do I force just my custom hat? The hat is just a retexture of the vanilla civ cap.

hearty sandal
#

would be a init= type

real bluff
#

no but it inherits from a civ. Can I disable that?

#

I dont have init=type in my code

#

I have identityTypes[] = {"Head_NATO"}; is that the same thing or no?

hearty sandal
#

but it would be in class eventhandlers if it is

#

I recall identity types would only touch headtype, voice and glasses.

#

not headgear

#

its most likely inheriting this

real bluff
#

Ok. Im not seeing anything like this.

hearty sandal
#

would show up in the ingame config viewer

#

thats basically only thing I can think of that would do what you see

real bluff
#

I see it is loading a headgear list in the ingame config viewer. Is their a way to tell it not to do that?

hearty sandal
#

what exactly do you see?

#

this init line

#

or something else

real bluff
#

headgearList[] = {} with all the hats listed

hearty sandal
#

put in only the hats you want into that list

#

overwrite it in your config

real bluff
#

Ok, will give it a try

real bluff
hearty sandal
#

👍 👍

real bluff
#

I was wanting to put a inventory point on my building. I know you can use:

memoryPointSupply = " ";
supplyRadius = 3;

But I don't know where to put this. I have a memory point named but confused if this is for the model.cfg or the config.cpp?

hearty sandal
#

you can refer to crate configs for example I believe

real bluff
hearty sandal
#

yes

real bluff
# hearty sandal yes

Well it refuses to work. Do I put it under building class or underthe sub UserActions class?

hearty sandal
#

in the building class

#

how have you positioned it compared to the rest the model?

#

and is it small thing like crates are

#

or big building?

real bluff
#

Its inside a structure. Im trying to have an inventory if you walk up to some cabinets that are in the structure.

hearty sandal
#

is the view geometry to look at there?

#

at least I recall it might need view geometry too to recognize the object

#

and what did you use as supply radius?

real bluff
#

no. I was under the impression I could just do a memory point for like an general area zone

#

2 is the radius

hearty sandal
#

Is there any geometry there at all? in any geometry lod

real bluff
#

not anything linked to it

hearty sandal
#

it does not need linking

real bluff
#

just a memory point

hearty sandal
#

but something for the engine to see there is a thing here

real bluff
#

yeah, a cabinet is there

hearty sandal
#

try put the geometry blob for it into view geometry lod

#

and hit geometry lod too if that does not exist

frail grotto
#

timetolive

#

what is a good balance between frames and letting people snipe with the ammo?

#

bc ik some people do crazy shots at like 6.5km

#

and some just shoot at like less than 20 meters

#

so would the best choice to make a custom ammo type for “long range” that just has a long time to live and a normal ammo with an average time to live

#

another thing all I see was that this was on a 2015 dev branch, any idea if this wiki entry is just out of date

hearty sandal
frail grotto
#

rip that feature

#

would be cool to let AI gun down vehicles the same as infantry even if their weapons aren’t effective

hearty sandal
#

I think they still might not fire if they know they cant do damage

frail grotto
#

any way to trick them

hearty sandal
#

scripting to force fire is possible (and take aim)

frail grotto
#

Bc I hate seeing AI just refuse to shoot a helicopter bc it’s a helicopter

#

and only have AA specific troops engage it

real bluff
hearty sandal
#

I dont remember seeing a building type object with inventory. Crates etc are ThingX simulation I think. so there may be some simulation type related restrictions there. dont remember for sure though

#

they are all vehicles since they are cfgVehicles sub classes

#

simulation type is the next thing that differentiates all of them

real bluff
#

CUP has a gas station that has inventory in it so got the idea from that.

wintry fox
hearty sandal
#

yeah that may give some clues on what is needed

real bluff
wintry fox
#

Just use the config viewer

#

All you need is the class name

#

Also all config files themselves should be binarized for an actual release

hard chasm
#

@wintry foxwhile a straightforward sensible statement, it's not always possible. The reason being an increasing number of modders (not bis) use variables that are only known during game load time. A poor example?
var=rand();
note load time. not game time. One way or other the var must finally produce a constant before then.

fyi: pboProject will still process the cpp looking for errors. It will scream it's head off if the var cannot be known at that time. eg
var= player blah blah

loud raven
#

Gday all, having dramas with my gunner in this ASLAV-PC, while turned in his model follows the angle of the turret,
Is there an easy way to disable the turret traverse whilst turned in? i don't want to hide the model as the rear ramp opens so you can see the crew,
Cheers

novel lava
loud raven
loud raven
novel lava
loud raven
#

Cool, are there any other references for the turnin/out classes? Or is it essentially whats in the turret one

novel lava
#

what do you mean?

loud raven
#

Are there any other parameters for turn in/out that might be handy to know

novel lava
#

its real purpose is for adding 'curves' to the turret limits so you can't aim at your own vehicle or the guy infront of you for ffv etc

loud raven
#

Ahh yes, wicked, should probably put that in too haha, im guessing you can then bound that to be activated by a specific hatch opening as well, like the LAV25s turret spinning around over its rear hatches

novel lava
#

that'd be the dynamicviewlimits but it can be a bit limited in what you can do

loud raven
#

Cool, ill see what i can do,

loud raven
novel lava
#

it explains it in that link

#

theres a function for 'recording' the curve

loud raven
#

Yeah i did have a read but didnt quite get it, thanks again mate

rough tangle
# rough tangle Hey, I've got an issue regarding either model?, config?, or physX?. My tracked v...

Huge thanks to @nimble sequoia for the help, issue was solved by those steps:
in p3d:

  • cleaned non closed components;
  • fixed weighting on boundary memory points (some points had 25% weight);
    in config:
  • removed obsolete entries, added missing width and maxBrakeTorque;
  • changed suspTravelDirection[] for straight up and down;
  • changed sprungMass from 120 to -1;
  • increased springDamperRate
  • reduced latStiffX and latStiffY to 1.5 , 30;
  • increased longitudinalStiffnessPerUnitGravity to 12000;
  • changed frictionVsSlipGraph[] to {{0, 0.5}, {0.1, 1.5}, {0.5, 0.9}};
  • added non-zero suspension movement to sprocket and return wheels (0.01)
nimble sequoia
modest surge
#

Hey - I get this error message when i add a modded item to a units inventory and try to save the missionfile in the editor.

[...] CfgPatches/murshun_cigs_hotfix/ not an array

Never noticed it cause we simply hand out those items via an arsenal and havent encountered this issue before.

Im kind of clueless how to fix it, any advise?

https://github.com/OverlordZorn/Immersion-Cigs-Hotfix/issues/9
https://github.com/OverlordZorn/Immersion-Cigs-Hotfix/blob/master/addons/murshun_cigs_hotfix/config.cpp

#

Issue resolved
author[]= {"Mr Zorn [CVO]"}; was bad.

author = "Mr Zorn [CVO]";
authors[]= {"Mr Zorn [CVO]"};

did the trick

hearty sandal
#

authors[] is not vanilla things I belive

#

not quite sure what uses it

#

if anything

#

could be just something people add

modest surge
#

cba i think?

hearty sandal
#

right! 👍 that explains it 😄

marble badger
#

Is there a config setting to remove the 3 center banners on the main menu?

hearty sandal
#

main menu is defined somewhere in there yeah

#

just simple setting, no dont think so

marble badger
# hearty sandal just simple setting, no dont think so

turns out rather straightforward actually
just need to call config delete on the needed UI elements in the config file

class RscStandardDisplay;
class RscDisplayMain: RscStandardDisplay {
    enableDisplay = 0;
    delete Spotlight;
    class controls {
        delete Spotlight1;
        delete Spotlight2;
        delete Spotlight3;
        delete BackgroundSpotlightRight;
        delete BackgroundSpotlightLeft;
        delete BackgroundSpotlight;
        delete SpotlightNext;
        delete SpotlightPrev;
    };
    class ControlsBackground {
        delete MouseArea;
    };
};
real bluff
#

Which line of code is for the icon in inventory for a weapon or clothing? Also is it with quotation or without?

hard chasm
#

quotes are rarely needed. they are used when a "space between words" would be misunderstood

wintry fox
wintry fox
# hard chasm quotes are rarely needed. they are used when a "space between words" would be mi...

Technically correct, since Addon Breaker will automatically wrap any non-number / array value in quotes, but that leads to bad habits. Also causes issues if/when modders change to a far better packing tool and having to go through and quote a bunch of previously unquoted values.

It also causes confusion, here's an example.

class someClass {
    someProperty = true;
};

Without further context, you can't tell whether this value is supposed to be a string with missing quotes, or if it's using the BIS true/false macros which are 0/1 respectively.

If using a different packing software, some decide to swap the data type by replacing "true"/"false" in configs with 1/0, which causes more confusion on what the value it is actually supposed to be.

real bluff
#

How do I get a magazine to show up in the placeable objects list? Right now it only shows in loadout.

wheat sluice
#

As in for Zeus and the editor? You need to create a dedicated holder vehicle for it:

    class Weapon_Base_F;
    class Magazine_Base: Weapon_Base_F
    {
        editorSubcategory = "EdSubcat_Magazines";
        vehicleClass = "Magazines";
        model = "\A3\Weapons_F\DummyItemHorizontal.p3d";
    };
    class Magazine_MyMagazineClass: Magazine_Base
    {
        author = "colemanerik";
        scope = 2;
        scopeCurator = 2;
        displayName = "My Custom Magazine Class";
        class Transportmagazines
        {
            class _xx_MyMagazineClass
            {
                magazine = "MyMagazineClass";
                count = 1;
            };
        };
    };
#

Note that vanilla A3 doesn't have a editor subcategory for EdSubcat_Magazines and Magazines vehicle class so you'll need to define those yourself (if they don't already exist from another mod).

hoary lava
#

Can you delete a class in cfgVehicles? Seems its protected, no error in RPT, no children class warning

class CfgPatches
{
    class test_removeVehicleClass
    {
        requiredAddons[]={"A3_Soft_F_Exp_MRAP_01"};
        units[]={};
    };
};

class cfgVehicles
{
    delete B_T_MRAP_01_gmg_F;
};

I tried to delete classes inside B_T_MRAP_01_gmg_F before deleting B_T_MRAP_01_gmg_F, but I got a Member already defined error

sweet abyss
#

Is there a way to alter proxies using the config.cpp? So that I can change them on the fly using scripting instead of binarizing the proxies with the p3d?

wintry wolf
#

I have made a faction with alive orbat creator.

Apparently randomized facewear etc can be modified. How can i open these files and what files i have to modify?

Can they be used to randomize voices and pitch as well?

nimble sequoia
hoary lava
#

I deleted all subclass in TransportWeapons, then got an error when trying to delete this TransportWeapons, what could be wrong

class cfgVehicles
{
    class B_T_MRAP_01_gmg_F        //success. stops inheritance of properties
    {
        delete SimpleObject;    //success, SimpleObject deleted
        class TransportWeapons
        {
            delete _xx_arifle_MX_khk_F;        //success, _xx_arifle_MX_khk_F deleted
        };        //ERROR: /cfgVehicles/B_T_MRAP_01_gmg_F.TransportWeapons: Member already defined.
        delete TransportWeapons;
    };
};
wintry tartan
#
class B_T_MRAP_01_gmg_F        //success. stops inheritance of properties```*Success*?
hoary lava
#

yep

wintry tartan
#

Why you seriously call it a success?

#

What is your goal

hoary lava
hoary lava
wintry tartan
#

What about my second question

hoary lava
#

my goal is delete the B_T_MRAP_01_gmg_F, before that i need to empty all children class inside.

wintry tartan
#

I still don't know why but why don't you just delete B_T_MRAP_01_GMG_F?

hoary lava
wintry tartan
#

Okay I guess I don't think I understand how it works correctly but you also don't. In the first place, why you need to delete a vanilla class?

hoary lava
wintry tartan
#

I am asking what is your goal. Why you want to do this in the first place

#

Because there is near to no reason to delete a vanilla class

wintry fox
#

Just add scope = 1; if you don't want the object to be visible

hoary lava
winter rain
wintry fox
#

Their goal was just to remove it from some spawn list, which they did by just updating the array

hard chasm
#

all in all an interesting discussion

#

i last time i ever looked at this (prolly arma2) delete was only used to remove obsolete Xbox Elite rscPanels. Have scanned arma3 configs and it's used everywhere. I look forward to the next installment <grin>

wind magnet
#

Hi All,

I've created a unit in orbat with the following:

class I_ORepublicofNogova_Rifleman_01 : cwr3_i_soldier_OCimport_02 {
author = "nickl";
scope = 2;
scopeCurator = 2;
displayName = "Rifleman";
side = 2;
faction = "o_republicofnogova";

    identityTypes[] = {"Head_Euro","LanguageCZ"};

They are supposed to speak Czech but for some reason it's American now? Anyone know why? Not sure if it's a load order thing as i have the same with Malden uits that are supposed to speak French

class I_MaldenArmed_Forces_Rifleman_01 : cwr3_b_fia_soldier_OCimport_02 {
author = "nickl";
scope = 2;
scopeCurator = 2;
displayName = "Rifleman";
side = 2;
faction = "i_maldenarmedforces";

    identityTypes[] = {"Head_Enoch","CUP_D_LanguageFRE_F","Head_GUE","NoGlasses"};

I've asked in Alive discord but not got a reply so thought i'd share on here. I'm using all DLC's (apart from the new one) plus mods but nothing language related and it's changed suddenly 😦

dusky parcel
#

Is anyone interested in making custom ifaks for advanced combat medical?

hard chasm
#

@wind magnetwhat updates have occured since it last worked including any addons (mods)

#

there is no LanguageCZ anything in the base game

glacial spear
#

trying to get physx wheels to work
the suspension seems to work, but the animation only works on the rear damper
the wheels dont spin at all, and the phyxs system wont let them free roll

#

an im sure the animations are set up right and work, if i put the rear source in the animation it moves

#

please, im so knee deep in this im blind

languid aurora
#

Im trying to change the sounds of a rotary cannon but when i fire the gun the audio file is played for each round fired. Example, if i fire 5 rounds, then 5 instances of the audio is played. The aforementioned audio files is a 2 second seamless loop. I'm having trouble identifying where the problem is.

#
//External Sound Shaders
    class M61A2_Ext_SoundShader
    {
        samples[] = {{"js_jc_fa18\sounds\External\M61A2_Ext_firing", 1}};
        frequency = 1;
        volume = "14*camPos";
        range = 5000;
        rangeCurve = "M61A2_Distant_SoundCurve";
        loop = 1;
    };
    // Internal Sound Shaders
    class M61A2_Int_SoundShader
    {
        samples[] = {{"js_jc_fa18\sounds\Internal\M61A2_Int_firing", 1}};
        frequency = 1.03;
        volume = "3*(1-camPos)";
        range = 10;
        loop = 1;
    };
//Soundset
class M61A2_Ext_SoundSet
    {
        soundShaders[] = {"M61A2_Ext_SoundShader"};
        volumeFactor = 1.15;
        volumeCurve = "M61A2_Distant_SoundCurve";
        sound3DProcessingType = "WeaponMediumShot3DProcessingType";
        distanceFilter = "weaponShotDistanceFreqAttenuationFilter";
        spatial = 1;
        doppler = 1;
        speedOfSound = 1;
        occlusionFactor = 0.2;
        obstructionFactor = 0;
    };
    class M61A2_Int_SoundSet
    {
        soundShaders[] = {"M61A2_Int_SoundShader"};
        volumeFactor = 1.25;
        sound3DProcessingType = "WeaponMediumShot3DProcessingType";
        spatial = 0;
    };```
#
class m61a2: Gatling_30mm_Plane_CAS_01_F
    {
        scope = 1;
        displayName = "M61A2 20mm";
        displayNameMagazine = "M61A2 20mm";
        shortNameMagazine = "M61A2 20mm";
        magazines[] = {"js_m_fa18_m61"};
        modes[] = {"LowROF","close","short","medium","far"};
        nameSound = "cannon";
        shotFromTurret = 0;
        autoFire = 0;
        burst = 1;
        textureType = "fullAuto";
        class LowROF: Mode_FullAuto
        {
            sounds[] = {"StandardSound"};
            class StandardSound
            {
                SoundSetShot[] = {"M61A2_Int_Soundset","M61A2_Ext_Soundset"};
            };
            soundContinuous = 0;
            soundburst = 1;
            autoFire = 1;
            flash = "gunfire";
            flashSize = 0.1;
            recoil = "Empty";
            ffMagnitude = 0.5;
            ffFrequency = 11;
            ffCount = 6;
            burst = 0;
            showToPlayer = 1;
            reloadTime = 0.015;
        };
    };```
wintry fox
#

The sound plays each time you fire

#

If you want to have a sound that is separate from the firing itself, you'd have to script it

ashen chasm
#

well, vanilla does it like hpp class LowROF: Mode_FullAuto { displayName="$STR_A3_Gatling_30mm_Plane_CAS_01_F0"; sounds[]= { "StandardSound" }; class StandardSound { begin1[]= { "A3\Sounds_F\arsenal\weapons_vehicles\gatling_30mm\30mm_01_burst", 5.6234136, 1, 1500, {25704,32159} }; soundBegin[]= { "begin1", 1 }; }; soundContinuous=1; burst=20; ... where i suppose the sound contains spool-up, 20 shots, spool-down, and{25704,32159} are timestamps of shooting beginning/end blobdoggoshruggoogly

languid aurora
#

i couldnt find the definition for those

wintry fox
languid aurora
#

as long as the weapons is being fired ?

ashen chasm
#

or between 25704th and 32159th samples. Or some other meme. I don't know

languid aurora
#

ahhh, okay

#

what does this mean tho?
5.6234136,
1,
1500,

ashen chasm
#

volume, pitch, distance afaik

languid aurora
ashen chasm
#

i don't know. I only look at the config dumps blobdoggoshruggoogly

#

and vanilla config dump only contains 4 instances of soundContinuous=1, none of which seem to do anything with separate inside/outside sound sets

hard chasm
#

wss is the default sound file.ext for arma.

languid aurora
hard chasm
#

guessing

 {
    "begin1",1,
    "begin3",1
  }; 

Looking for a better answer for you

#
                begin2[] = {"A3\Sounds_F\arsenal\weapons\Rifles\Katiba\Katiba_short_02",3.1622777,1,1800};
                begin3[] = {"A3\Sounds_F\arsenal\weapons\Rifles\Katiba\Katiba_short_03",3.1622777,1,1800};
                soundBegin[] = {"begin1",0.33,"begin2",0.33,"begin2",0.34};```
From soundsets_f_exp
#

2nd begin2 is probably a typo on bi's part. easy slip of the fingerZ

#

0.33 is % of playtime , not .33 seconds

languid aurora
#

im getting the picture now

languid aurora
#

@hard chasm Also, Will it still work if i replace "A3\Sounds_F\arsenal\weapons\Rifles\Katiba\Katiba_short_01" with a soudset?

hard chasm
#

dunno

#

damn stupid qustion if soundBegin[] = is doing exactly that.

languid aurora
#

nope, cant replace it with a soundset

wintry fox
#

Sound sets use soundSetShot[] = {...}, it's separate from soundBegin

languid aurora
wintry fox
wintry fox
vagrant basin
#

After forgetting about it for a while, I'm attempting to get a retextured helmet working. Wrote a new config based off a tutorial, however it doesn't want to appear in game when I go to either the Virtual Arsenal or Edit Loadout. Any pointers on where I could've gone wrong? https://pastebin.com/4WGYTDJa

wintry fox
#

And what do you mean by "it doesn't want to appear in game"?
Do you mean the helmet doesn't appear in the arsenal? Do you mean your custom texture doesn't load?

vagrant basin
#

I also fixed it to just inherit the model

wintry fox
#

Open your class in the config viewer, your config there seems fine

vagrant basin
#

I've been looking for it, but, unless I'm looking the wrong place, the "rpg_tkcw_m1" doesn't appear in the config viewer

wintry fox
vagrant basin
wintry fox
#

Show your folder setup for your mod and how you're packing it

vagrant basin
#

and then I have it following that file path (minus the .paa at the end) when I binarize it into a pbo

wintry fox
#

I meant what folder are you packing in addon builder, or whatever build system you're using

vagrant basin
wintry fox
vagrant basin
vocal relic
#

I just tried to implement the legacy fatigue thing into my addon. It fails with overriding the CfgMovesFatigue values. I just copied

class CfgMovesFatigue
{
    staminaDuration            = 180;
    staminaCooldown            = 30;
    staminaRestoration        = 90; 
    aimPrecisionSpeedCoef    = 0;
    terrainDrainSprint        = 0;
    terrainDrainRun            = 0;
    terrainSpeedCoef        = 1; 
};

into my config.cpp. Did I missed something?

vagrant basin
#

yep, that fixed it

#

@wintry fox Thanks for the help!

wintry fox
#

👍

vocal relic
#

Log has no visible errors/messages

sharp stone
#

requiredAddons?

vocal relic
#

god, forgot about this, thanks 😄

languid aurora
glacial spear
# glacial spear

bump this, is there something im missing, cap matching or anything?

calm pilot
#

Hi folks, i'm trying to make an at hand grenade, namely the rpg43. So far so good, it explodes only on impact as intended, but i miss the part on how i can make my submunitions work, because it looks like they don't. I tried to use the same "caliber" token calculation i used for my at launchers, but here with the handgrenade is a different story, since i do not have the speed available (unlike in the at rocket ammo). I saw ifa used the shotShell simulation in their RPG6 at hand grenade, but i can't understand how that is supposed to work. There is someone here who can give me some tips on this subject? Following the cfgAmmo line of code

#

wonderful, i can't past it in the messages for some reason

#

i will use pastebin

calm pilot
calm pilot
# calm pilot https://pastebin.com/WehEiaz1

Forgot to add this line: class tno_penetrator_120mm_rpg43: gm_penetrator_base
{
caliber=500;//con 400 sarebbero 96mm con una velocità di 16 initspeed mag, ossia vcaliber15(valore di penetrazione metallo)/1000
hit=50;//400
};

glossy pulsar
#

hey, is it possible to do config entries what only runs if another addon is not loaded?
i would need to add some config entries, if the other is not loaded but i dont want to overwrite those

chilly tulip
#

Yes, but I think only if you don't binarize.

#
#if __has_include("\z\ace\addons\main\script_component.hpp")
// file exists! Do something with it
#else
// file does not exist
#endif
#

Also tricky with EBOs because you don't know what's in them.

#

It's better if you can refactor so you only add config if another addon is loaded.

glossy pulsar
#

ok, thank you.
my problem is that one optional mod add some colors and it causes issues when some players have those and some not. So i think only way is to make compatibility mod what only runs when other is not present.

wintry fox
wintry fox
chilly tulip
#

I don't think you read the question.

wintry fox
#

Ah just missed the "not"

latent monolith
#

my config keeps giving me an error message im super new to skeleton making this is my first attempt and im just trying to get it working but cant get it to pack.

Model Config below:

class CfgSkeletons
{
class Skeleton
    {
        isDiscrete=1;
        skeletonInherit="";
        skeletonBones[]={"MainTurret","MainTurretAxis","MainGun","MainGunAxis","MainGunRecoilAxis"};
    };
};
   

class CfgModels
{
    class TankModel
    {   
        htMin=60;
        htMax=1800;
        afMax=200;
        mfMax=100;
        mFact=1;
        tBody=250;
        skeletonName = "Skeleton";
        sectionsInherit = "";
        sections[] = {""};

        class Animations
        {
            class MainTurret
            {
                type = "rotation";
                source = "user";
                selection = "MainTurret";
                axis = "MainTurretAxis";
                angle0 = 0;
                angle1 = 3.14159;
                minValue = -1;
                maxValue = 1;
            };

            class MainGun
            {
                type = "rotation";
                source = "user";
                selection = "MainGun";
                axis = "MainGunAxis";
                angle0 = 0;
                angle1 = -0.785398;
                minValue = -1;
                maxValue = 1;
            };

            class MainGunRecoil
            {
                type = "translation";
                source = "reload";
                selection = "MainGun";
                axis = "MainGunRecoilAxis";
                offset0 = 0;
                offset1 = -0.1;
                minValue = 0;
                maxValue = 1;
            };
        };
    };
};
#

if its a problem on the model i cant seem to understand where its going wrong?

#

the code seems fine afaik

#

but thought id ask here first rule it out and then move to the appropriate channel

wintry fox
hearty sandal
#

One bone means 1x bone, parent definitions

wintry fox
#

Also your class in CfgModels should have a tag / prefix and should match the model name itself (minus the .p3d obviously)

hearty sandal
#

Tagging ones files and folders is good practice yeah

latent monolith
# hearty sandal One bone means 1x bone, parent definitions

ok but what does that mean? im sorry if im being like super dull here but i dont understand why its not working.

Im using Chat GPT to try and help me so far its been pretty good up until now where its completely stumped and so am i.

according to chat Gpt:

class CfgSkeletons
{
    class SimpleSkeleton
    {
        isDiscrete = 1;
        skeletonInherit = "";
        skeletonBones[] = 
        {
            // Define a simple bone with a parent.
            {"MainTurret", "MainTurretAxis"}  // MainTurret is the child, MainTurretAxis is the parent
        };
    };
};
#

but ive tried that even with just 1 bone it still gives me the error

hearty sandal
#

It don't know shit about this stuff

latent monolith
#

so the blind leading the blind then XD

hearty sandal
#

but you can learn it

#

By going to right sources

#

Instead of nonsense making machine

#

😅

#

So first stop is googling Arma3 wiki model config

#

A d check g out the explanations of model config structure there

#

You are not super far to be honest. But chatgp is not the place to ask this stuff at all

latent monolith
hearty sandal
#

Nope

#

I'm on mobile. I would have to Google it myself to copy paste you a link

#

Better you practice that

latent monolith
#

yeah im capable of google

||famous last words of an idiot||

#

damn gpt lied to me

latent monolith
# hearty sandal Nope

i think ive got a basic thing for the main turret working.

        skeletonBones[]={"mainturret", "", "maingun", "mainturret"}; 
#

this was just looking at the example file and trying to work backwards

hearty sandal
#

yes the bone definition works in pairs

#

it can be easier to see if you write them in separate lines

#
skeletonBones[]=
{
  "mainturret", "",
  "maingun", "mainturret"
}; 
glacial spear
#

messing with the physx wheels on a tripod heli, wheel 1 and 2 are the left/right
for some reason evan with identical values, is biased to tipping right

hearty sandal
#

maybe that your geometry mass center is offset

#

or axis memorypoints etc points are not even on both sides

nimble sequoia
glacial spear
glacial spear
#

just tuning it

#

you should see rhs, they turn towed weapons into helicopters to give them wheels

nimble sequoia
#

You can pack your config full of any nonsense you like, it'll just be ignored for the most part.

glacial spear
#

well im looking around for what is in helicopter

#

most of them just have

driveOnComponent[] = {"Wheels"};
#

cant find the definition

nimble sequoia
#

"wheels" should be a named selection containing the wheels mesh in your Geometry Phys LOD

glacial spear
#

im figuring out what works along the way

nimble sequoia
#

Not sure what cfgwheels is, but if it includes a class Wheels {}, you can safely delete it and see no change

glacial spear
#

that entire video is powered by class wheels, i delete it, and it stops working

nimble sequoia
#

Let's try another approach - find a vanilla helicopter with a class Wheels.

glacial spear
#

i cant

#

iv already looked

nimble sequoia
#

yet they still work

glacial spear
#

yes

nimble sequoia
#

what does that tell you

glacial spear
#

im not hear to debate if class wheels works on helicopters, it does

#

im just here to get physx help

nimble sequoia
#

I'm trying to give you that help, but you apparently know better, so I'll wish you good luck.

glacial spear
#

yes i know base game helicopter do this without class wheels, but i want more than what that provides, which is just animated wheels dampers, im wanting to get this thing to taxi in sfm

#

and you cant taxi base game helicopters in sfm

#

and i cant see anything beyond defining that the helicopters wheels on base game helicopters

glacial spear
glacial spear
brave sentinel
#

Hi guys.

#

After spending a lot of work on creating a small GUI with custom selectable loadouts for my community for our mission templates, Id like to include it as an addon for us, to recude the template size and so on. The point is that im having some issues moving it from script version to addon version. The way i did it, is that i moved all the description.ext lines which are GUI related and created a config.cpp file, while moving the gui files inside the pbo folder. And now im figuring it out, how to make it work, since i get a "Resource xxx not found" msg

#

Dont want to paste in here all the stuff, cause its probably too much to paste, so if someone could help me figure it out, just get in touch with me.

tender fiber
#

while making a mod of mine to change another's mod faction from IND-for to BLU-for i usually just inherit the original units/classes and change side, but i noticed that causes several errors in the rpt,
'/' is not a value
[]: '/' not an array
there are so many lines of this, how can i fix it and what would the problem be?

#

they are related to many things like
PilotSpec, predictTurnSimul, predictTurnPlan, enableWatch, enableRadio

#

this is how the whole code looks like

#

this is the errors that appear with my mod

#

these and many others for all units

#

and they only appear with my mod

wintry tartan
#

What is BRAF_1BAvEx_Pilot

#

Is it an existed class for sure

tender fiber
#

it's a Pilot unit

#

i just create mine with _B in the middle of my class, and inherit the original

wintry tartan
#

And are you sure the original is loaded for sure?

tender fiber
#

you mean this?

wintry tartan
#

Yes and no. Are you sure the Mod that adds these classes, is loaded into your game

tender fiber
#

Yes

#

the pbo does build and in-game all units are there the way they should be

#

but in the start of the game and in the .rpt there are these errors

wintry tartan
#

Check these class in ingame Config Viewer

tender fiber
#

unless i'm missing something on "sure the mod is loaded"

#

ok, good point, i f'd up something and idk what, i'll brb with a conclusion

hard chasm
#

@tender fiber'/' is not a value

these are typical syntax errors where you haven't used open{ } closing brackets on a class
Use eliteness or pboProject or rapify to quickly locate the line causing this syntax error

tender fiber
#

it's my code, i updated it recently to remove a unit that was no longer in the BRAF mod and i f'd up something making most of them disappear, i'm trying to resolve it here, but i found out the problem in the end

hard chasm
#

replying with the fix would help others in similar situations.

tender fiber
#

will do, the current problem is
in the original code i did

Class Uniform_Base;
Class InheritedClassname: Uniform_Base //Original Inherited class
{
       modelSides[] = {3,2,1,0};
};

Class MyClassName: InheritedClassname
{
      faction="BRAF_B_BRAF_Bluforce";
      side=1;
};

i did this to try to change their uniform so anyone could wear it, i will later try to add the modelSide[]= to MyClassName, to see if that will affect the original uniform (i think it should but idk)
i'll try that later and edit this message probably informing if it fixed it

#

oh right, and only the Units with : Uniform_Base aren't showing up, even tho in the original code(old version pbo) they do, i'll try to fix it later

balmy sable
#

pastebin it

brave sentinel
#

looked exactly the same inside the mission folder, but instead of config.cpp it was included in desc.ext

#

Am i missing CfgPatches?

sharp stone
#

That is a requirement

#

The class you give your mod in cfgPatches is how you refer to it with your resources as well

#

Unless you use $PBOPREFIX$

brave sentinel
#

Just figured it out as well. Now im getting errors from missing images and function files - thats a progress 😄

#

Thanks! Got it working 😃

hard chasm
#

put your changes first then make the other addon a requiredaddon= of this one. if it doesn;t load your changes remain in effect

balmy sable
#

Don't put the classes you've got in defines.hpp in.

#

Those classes should already exist.

#

The reason you use it in missions is due to missions not having things like RscText defined; but the game config does have them defined.

#

Instead just tell your config they exist externally with:

class RscText;
class RscButton;

#

Most defines.hpp's also don't remotely resemble what's in the game config either, so merging the classes in it would probably cause some nasty issue.

vagrant basin
#

attempting to get a uniform retexture working, but got this error message upon trying to test it in the editor. Have a few theories as to what might have gone wrong, but would appreciate a second opinion. Will also include my config

marsh hollow
#

is it in the config where you could take tires of a vehicle and give JUST the tires extra HP?

hard chasm
#

@vagrant basin

    class rpg_tkcw_bdu_full : cwr3_b_uniform_og107_noflag    

the cwr3_b_uniform_og107_noflag is faulty
it is missing the basics required, such as a side=.
this happens when it's inheritence is wrong.

#

the code you pasted has nothing to do with the error.

vagrant basin
#

Alright, I'll check in with the cwr3 discord to see what the proper inheritance is & such

wintry fox
#

Just look at the class in the config viewer

hearty sandal
#

get leopards advanced developer tools for nicer config viewer interface

wintry fox
#

You can just say "usable"

#

I could never go back to vanilla

vagrant basin
wintry fox
#

The config viewer is an in-game tool that lets you look at any given class, its parents, classes inside of it, etc. You could copy the class name of the uniform you are trying to retexture, and look at its different properties and classes it inherits from.

This picture is of the config viewer in Advanced Developer Tools mod by Leopard20, (https://steamcommunity.com/sharedfiles/filedetails/?id=2369477168). It's a must-have because the vanilla ones are ass.

vagrant basin
#

ok, I see now. Thank you

vagrant basin
#

Well, I looked, and cwr3_b_uniform_og107_noflag doesn't appear to have any parent it's inheriting from

#

at least, as far as I can tell

wintry fox
#

If you try to inherit from a non-existent class it will make an empty class with that name

#

Just go to the arsenal and grab the class name from there

vagrant basin
hard chasm
#

depends what you;re trying to 1) modify or 2) create something new.

#

why don't you ask wolle in the cwr3 team?

vagrant basin
vagrant basin
#

tried switching the og107 to cwr3_b_uniform_base, but didn't fix anything

hard chasm
#

i used the term 'modify' in a bad way. you are indeed modifying by makiing new class inheriting from the old (very very standard practice) . typically you would NOT inherit a base class for this because there's insufficient info. so yes, you're inheriting an existing class and modifying it, indirectly. all good.
now for the bad part.
the text you pasted above is NOT causing that error message.

hearty sandal
#

uniforms need 2 parts

#

the mentioned item in cfgWeapons and a unit that represents what it looks like when put on in cfgVehicles

vagrant basin
hard chasm
#

The problem you currently have is a syntax error. There's no point pushing the envelope with whether you have this, that, or the other 'right'. You first need to correc the bad syntax in a config.cpp that you have NOT shown here before you are even able to test the envelope.

#

repack your pbos (plural) again until you find the one causing above error. A certainty is, it is NOT the config.cpp you've shown. For all I know you have mutliple configs in the same pbo. And i tire of 2nd guessing very quickly.

wheat sluice
# marsh hollow is it in the config where you could take tires of a vehicle and give JUST the ti...

Yes. You can make tyres have more health or reduce it via config.

You can use the (old) default method that multiplies base armor * hitpoint armor:

        armor = 100; // <-- global vehicle armor
        class HitPoints
        {
            class HitLFWheel
            {
                [...]
                armor = 2.5; // <-- 100 * 2.5 = 250 health
                [...]
            };
        };

or the new negative health method that was introduced with the Tanks DLC's platform update to set it to a fixed value independent of the global armor value:

        armor = 100; <-- global vehicle armor
        class HitPoints
        {
            class HitLFWheel
            {
                [...]
                armor = -250; // <-- fixed health of 250
                [...]
            };
        };
#

Just make sure your inheritance chain + CfgPatches is correct or else the values won't override properly.

vagrant basin
young surge
#

Yo! I would like to make an addon, which will duplicate Nightstalker scope but it will be cofigured for ASP-KIR => distance increment will be 25m.
What do I have to do to achieve that? I am a total newbie with configs and addon making.

#

Do you have any tutorials on that?

steep pawn
#

Im currently configuring a pistol and in the cfgRecoils.hpp I have the following http://pastebin.com/ACpASQ0P but when I load my game I am getting an error saying cfgRecoils.recoil_single_BRP_Glock_17:Member already defined.

strange egret
#

then you have duplicate tokens in the same class

steep pawn
#

Thats the point though I am looking in the file and I don't see any duplicates, its even sillier I am using a modified config from the sample weapon config and all I changed in it was a class name but thats not the issue

strange egret
#

whats hiding in #include bla ?

steep pawn
#

Oh wait

#

I feel silly now

strange egret
#

see? 😛

steep pawn
#

FailFish

strange egret
#

haha... yes #includes can fool you easily ^^

#

*firsthandexperience

steep pawn
#

ty

#

For some reason now I am getting the error Unfefined base class 'BRP_Glock_17_Base' even know it is defined perfectly like 15 lines or so above (checked spelling etc)

still musk
#

anyone knows how i would go about making wheels on my vehicle indestructible?

hearty sandal
still musk
#

aight thx!

steep pawn
#

Anyone got any ideas?

brave sentinel
#

Hello again. I got the GUI working nicely as an addon. Now i'm trying to create a module which will add addAction to the synced object, to enable the GUI.

#

Could somebody go over my config.cpp for the module?

thick lotus
#

You'll want to fix your category so it goes inside the BWI: Modules category you created (Change from "Modules" to "bwi_Modules" (The class you created in CfgFactionClasses)).
I would also recommend using a base class to inherit for each module to make creating additional modules in the future a bit easier http://pastebin.com/wfQrWZY6

#

I think I messed that pastebin example though.. sec

brave sentinel
#

Aight, thanks!

#

So that's why it didnt show up in the editor during my first test run, couple of seconds ago

thick lotus
latent monolith
thick lotus
hearty sandal
latent monolith
# hearty sandal could be both config having poor ammo setup and weapon itself having the gun bar...

one moment will post my ammo config and get a screen of the memory points

class CfgMagazines
{
    class CA_Magazine;
    class XCOM_HeavyLas_Battery: CA_Magazine
    {
        author = "Papafox";
        scope = 2;
        displayName = "Heavy Las Battery";
        ammo = "XCOM_HeavyLas_Round";
        count = 400;
        initSpeed = 10000;
        tracersEvery = 1;
        lastRoundsTracer = 400;
        descriptionShort = "[Experimental] High Power Energy Battery";
        mass = 60;
        scopeArsenal = 2;
        scopeCurator = 2;
    };
};

class CfgAmmo
{
    class B_65x39_Caseless;
    class XCOM_HeavyLas_Round: B_65x39_Caseless
    {
        author = "Papafox";
        timeToLive=8;
        hit = 60;
           indirectHit = 0;
           indirectHitRange = 0;
        caliber = 2.0;
           model = "\XcomProps\Weapons\Creatures_Tracer_red.p3d";
        tracerScale = 3;
        tracerStartTime = 0;
        tracerEndTime = 8;
        airFriction = -0.001;
        impactEffects = "ImpactMetal";
        casing = ""; 
    };
wintry tartan
#

What about CfgWeapons

latent monolith
#

thats my memory points

brave sentinel
#

You mean the bwi_fn_ModuleArmory.sqf?

latent monolith
#

cfg weapons Part 1 of 2:

class CfgWeapons
{
    class Rifle_Base_F;
    class XC_Heavy_Laser: Rifle_Base_F
    {
        
        author = "Papafox";
        scope = 2;
        displayName = "Xcom Heavy Laser";
        magazines[] = {"XCOM_HeavyLas_Battery"};
        initSpeed = 10000;
        reloadTime = 0.1;
        magazineReloadTime = 5;
        autoReload = 0;
        canLock = 0;
        recoil = "recoil_mmg_01";
        reloadMagazineSound[] = { "\XcomProps\Weapons\HeavyReload.ogg", 1.7, 1, 25 };
        drySound[]=
        {
            "\XcomProps\Weapons\Robotic_voice_Empty.ogg",
            1.6,
            1,
            20
        };
        selectionFireAnim = "muzzleFlash";
        scopeArsenal = 2;
        scopeCurator = 2;
        BaseWeapon = "XC_Heavy_Laser";
        descriptionShort = "[Experimental] XCOM Laser HMG";
        model = "\XcomProps\Weapons\XC_LASHMG_2.p3d";
        handAnim[]=
        {
            "OFP2_ManSkeleton",
            "\XcomProps\Weapons\Anim\zafir.rtm"
        };
        muzzles[]=
        {
            "this"
        };
        ejectShell = 0;
        reloadAction="SCI_FI_ARVER2_Reload";
        hiddenSelections[] = {"camo"};
        hiddenSelectionsTextures[] = { "" };
        modes[] = { "Single", "FullAuto" };
        class Single: Mode_SemiAuto
        {
            sounds[] = { "StandardSound" };
            class StandardSound
            {
                begin1[] = { "\XcomProps\Weapons\Laser_Heavy_machine_.ogg", 1.0, 1, 1200 };
                soundBegin[] = { "begin1", 1 };
            };
            class SoundTails
            {
                class TailInterior
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_interior", 1.5848932, 1, 1000 };
                    frequency = 1;
                    volume = "interior";
                };
                class TailTrees
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_trees", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*trees";
                };
                class TailForest
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_forest", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*forest";
                };
                class TailMeadows
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_meadows", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*(meadows/2 max sea/2)";
                };
                class TailHouses
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_houses", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*houses";
                };
            };
            recoilProne = "recoil_single_prone_gm6";
            dispersion = 0.001;
            minRange = 50;
            minRangeProbab = 0.3;
            midRange = 200;
            midRangeProbab = 0.7;
            maxRange = 350;
            maxRangeProbab = 0.05;
            aiDispersionCoefX = 0;
            aiDispersionCoefY = 0;
            aiRateOfFire = 2;
            aiRateOfFireDistance = 500;
        };
#

class cfg weapons part 2 of 2:

class FullAuto: Mode_FullAuto
        {
            sounds[] = { "StandardSound" };
            class BaseSoundModeType
            {
                closure1[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\closure_pdw2000_01", 0.50118721, 1, 10 };
                closure2[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\closure_pdw2000_02", 0.50118721, 1.1, 10 };
                soundClosure[] = { "closure1", 0.5, "closure2", 0.5 };
            };
            class StandardSound
            {
                begin1[] = { "\XcomProps\Weapons\Laser_Heavy_machine_.ogg", 1.0, 1, 1200 };
                soundBegin[] = { "begin1", 1 };
            };
            class SoundTails
            {
                class TailInterior
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_interior", 1.5848932, 1, 1000 };
                    frequency = 1;
                    volume = "interior";
                };
                class TailTrees
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_trees", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*trees";
                };
                class TailForest
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_forest", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*forest";
                };
                class TailMeadows
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_meadows", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*(meadows/2 max sea/2)";
                };
                class TailHouses
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_houses", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*houses";
                };
            };
            recoil = "recoil_auto_primary_3outof10";
            recoilProne = "recoil_auto_primary_prone_3outof10";
            dispersion = 0.001;
            minRange = 1;
            minRangeProbab = 0.7;
            midRange = 100;
            midRangeProbab = 0.7;
            maxRange = 200;
            maxRangeProbab = 0.05;
            aiDispersionCoefX = 1.5;
            aiDispersionCoefY = 2;
            aiRateOfFire = 1e-06;
            aiRateOfFireDistance = 200;
        };
    };
};
wintry tartan
#

dispersion = 0.001; too big it seems

latent monolith
#

minus values?

thick lotus
#

Yeah

wintry tartan
#

Actually, maybe not, I've just red multiple vanilla configs - some are actually like bigger than that

#

However, MX's dispersion is
dispersion=0.00086999999;

latent monolith
#

ill give it a go see if it does anything if not ill have a look at reseting my memory points

hearty sandal
#

make it use vanilla ammo -> you can see if the weapon config needs tweaking if those also go wide

wintry tartan
#

I'd try dispersion = 0 to see if it is actually the issue

latent monolith
#

good shout and im guessing the vanilla ammo is test to see if its the ammo or the gun thats the issue?

hearty sandal
#

worth a shot

wintry tartan
#

Yeps

hearty sandal
#

🥁 📡

wintry tartan
#

Knowing where is actually the issue by isolating some parts is a part of fix

wintry tartan
#

Exactly. Knowing is half the pain, other is wasted braincells

brave sentinel
#

Aight, looks like i learned a lot in a matter of 30min. I was trying to figure it out on my own for the whole day.

#

I had issues understanding the modules framework and what should I or shouldn't include in it.

thick lotus
#

Yeah it can be complicated at first. Pretty easy once you get a working module out though 😃

brave sentinel
#

Yea, next step though will be making those more complicated scripts. Because for now i can only do the simple ones.

#

Thanks for the help. Much appreciated. Probably im gonna visit this place a lot more often now 😃

#

Test #2 incoming.

latent monolith
#

i played around with it got it to a sensible level also didnt help that i think it was using the recoil of the GM6 Lynx on an automatic weapon

brave sentinel
#

And it works perfectly. Thanks again for the help.

thick lotus
#

NP! Glad it worked

brave sentinel
#

Had some errors popping out though with missing fnc file.

#

But yea, figured it out. It wanted me to rename the fnc file from "bwi_fnc_ModuleArmory" to "fn_ModuleArmory"

#

I left both of them, just in case, lol.

thick lotus
#

Yeah, your Cfgfunctions will automatically add the bwi_fnc_ to each fn_functionname inside file = "BWI_Modules\functions";

brave sentinel
#

Cool, so it means that i can delete the "bwi_fnc_xxx"?

thick lotus
#

yep

brave sentinel
#

Aaah, one more question before i go to sleep.

thick lotus
#

Just fn_ then the function name and it should be fine

brave sentinel
#

is it zeus compatible?

thick lotus
#

Like, able to place the module via Zeus?

brave sentinel
#

Yes. I guess its more work, cause it would have been too easy that way 😄

thick lotus
#

Not a clue really! I don't use Zeus much anymore

#

It's probably not too much work

#

Can't find any information on the wiki about it, might be worth loading up zeus and checking

brave sentinel
#

Me neither, but the addon is for my community. Though I'll surprise them with it.

#

I prefer the "oldschool" way of creating missions.

thick lotus
#

I prefer starting missions, getting a good idea, scrapping the mission, then creating a new script with no mission to use it in 😃

brave sentinel
#

Heh, sounds familair. Aight, thanks again. You have really explained a lot to me today. Another step in my learning process. Regarding the zeus compatibility, I'll check out the Ares code for it and maybe ask again in here - depends if I'll figure it out.

#

Gotta go to bed. EU time sucks and yes - scripting makes you forget about how fast the time can pass.

thick lotus
#

I lost track of time 2000 hours ago 😉

brave sentinel
#

Yea i already lost 1500h in arma

#

Thanks one more time. See ya next time 😉

#

...alltough "lost" might be a wrong word.

#

cause i enjoyed it.

wind magnet
undone patio
#

maybe a silly question, but has anyone tried assigning a soldier a minDamageThreshold property, and if so, did it do anything?

snow tusk
#

Hiya, I've been at it for way to long and I can't figure it out. So here goes:

I seem to have made a mistake somewhere as I can't get my mod to load a simple function. I was wondering if you guys could help me find the mistake. I'm using hemtt to build. The error I get is Script \main\functions\fn_testScript.sqf not found

Here's an info dump, if you need anything more, let me know.

The file structure (excluded .hemttout for legibility):

CAS
│   Get Latest Log.bat
│   LICENSE
│   mod.cpp
│
├───.hemtt
│   │   project.toml
│   │
│   └───missions
│       └───Development.VR
│               mission.sqm
│
└───addons
    └───main
        │   $PBOPREFIX$
        │   cfgFunctions.hpp
        │   config.cpp
        │   script_version.hpp
        │
        └───functions
                fn_testScript.sqf

config.cpp

class CfgPatches 
{
    class cas_main 
    {
        units[] = {};
        requiredAddons[] = {};
        author = "Selier";
    };
};

class CfgFunctions 
{
    #include "cfgFunctions.hpp"
};

cfgFunctions.hpp

class cas 
{
    class functions
    {
        file = "\main\functions";
        class testScript{};
    };
};

project.toml

name = "Customizable Arsenal System"
author = "Selier"
prefix = "cas"
mainprefix = "z"

[version]
git_hash = 0

[hemtt.launch.default]
workshop = [
    "450814997", # CBA_A3's Workshop ID
    "463939057", # ACE
]
parameters = [
    "-skipIntro",           
    "-noSplash",            
    "-showScriptErrors",    
    "-debug",
    "-filePatching",
    "-noPause", 
]
executable = "arma3" # Default: "arma3_x64"
mission="Development.VR"

$PBOPREFIX$

z\cas\addons\main

edit: added pboprefix

placid jay
#
 class FunctionsViewer
        {
            file = "x\enh\addons\main\functions\GUI\functionsViewer";
            class functionsViewer_copy;
            class functionsViewer_fillCtrlTV;

This is how my cfgFunctions looks

snow tusk
#

Well that was infuriatingly simple. Thanks!

placid jay
#

Don't worry. Did the same mistake the first time

snow tusk
#

It's just hard to debug ;-;

rocky trail
#

Hi, so i was checking SOG's M79 searching for the magazines[] array, and I saw it was empty.

#

Im trying to add an additional UGL magazine to it, so I suppose I just

class vn_m79;
class vn_m79: vn_m79 {
  magazines[] += {"my_custom_magazine"};
}; ?
chilly tulip
#

It's probably using magazine wells? Should work if so.

hearty sandal
#

you just declare vn_m79

#

if you want to edit it that is.
you cant have same class twice

rocky trail
hearty sandal
hearty sandal
#

unless you define its original parent too

#

that could be needed in some cases

#

if you made a new class then you would inherit from the original

rocky trail
#

vn_m79_shot_muzzle is the actual class that holds the real magazines[] property.

#

Its parents are vn_m79_muzzle, anything I should worry about?

#

or can I just throw the new magazine to it

hearty sandal
#

try it

#

😅

rocky trail
#

Sure

rocky trail
hearty sandal
rocky trail
#

Adding another buckshot round type to SOG's M79

I think im getting around with this;

class cfgWeapons {
   class Rifle_Base_F
    class vn_rifle: Rifle_Base_F {
        class vn_m79_muzzle;
        class vn_m79_shot_muzzle: vn_m79_muzzle { 
            magazines[] += { "sogfield_40mm_576_buck_mag" };
            };
     };
};
hearty sandal
#

I would maybe recommend doing stuff with this only after the upcoming update

#

there is a bit of design flaw in there which gets fixed in it

#

cant really say when it happens though

rocky trail
#

After the code, it still doesnt update

#

there's gotta be a way, right??

hearty sandal
#

it may be you dont have config completed with cfgPatches that would tell the game to load your config after the VN config so it can actually patch it

untold wyvern
wintry fox
#

They already had that, they ended up just updating the magazine. Sog people didn't know either

#

They were also talking in the ace discord

hard chasm
#

altering someone else's class directly is a foolish noob mistake.

#

@rocky trail reccomend you learn to do it properly before it bites you.

hallow quarry
#

I have a question can you give the mass value in config float values

#

I want to make an item for a mod and want it to be under 0.1lb (45 grams, mass = 1)

ashen chasm
#

ah, misread

#

do the fractions matter that much? Do you want players to carry hundreds/thousands of them?

novel lava
#

yes you can use floats

#

although personally i've never gone below 1 but i've done like 1.### or whateveer

#

and 0 is also valid

hallow quarry
#

I want to make rp items like usb sticks, floppy disk as inventory items

hard chasm
#

the mimimum possible value for floats in Bis is 10cm.
that gives you 100 of them to play with, (0.01 -> 1.00)

hallow quarry
#

thanks

hard chasm
#

you will of course 'see' much longerrrrrrrrrrrrr values when decoding, simply because IEEE math is only accurate to 6 digits. It is impossible to store exact values in 32 bits. Everything is an approximation to the truth. When decoding it can only list the value it sees. (0.09999999999999999999) etc

hallow quarry
#

I will keep it above 0.01 mass

#

I want to add some gemstones in the mod and 0.01 is around 20 carats or 4.5 grams. Also can just do it as bags of raw gemstones for them

#

so it works for me. It's for a mercenary roleplay server

ashen chasm
#

do ingame floats differ from config ones? Because the game (say, coordinates) isn't limited to 0.01 meter for sure

#

add the gemstone bag as a magazine and count individual gems as bullets 🙃

hallow quarry
#

true. I try to do something similar to the ARPI mod

#

again thanks for the info

hard chasm
#

coordinates) isn't limited to 0.01 meter for sure
any map larger than 21km suffers 10cm gaps in it's roads. Ditto walls etc. (lower left corner)

you are mistaking the ability to store large numbers accurately

#

as stated, anything larger than 6 digits cannot be stored exactly..

ashen chasm
#

configs dumped from game are full of values like 0.15000001, but i seem to see exact 0.1/0.2. Did that "10 cm" mean 0.1 value (one tenth, not hundredth) then? Floats are fun meowsweats

#

but then there's a bunch of audibleFire=0.30000001;/midRangeProbab=0.40000001; and such meowsweats

hard chasm
#

.01 == 10cm

#

rounded, the bis engine disregards any digits after 0.xx

#

note the following
0.144 == .44 rounded
2 x 0.144 == 0.29

I leave you to figure out why.

ashen chasm
#

eh, it's either me heavily misreading or harmless typo somewhere.
Thanks for taking time explaining.

chilly tulip
#

Bear in mind that float <-> text conversion methods can disagree too.

#

Also some fractional numbers can be precisely and unambiguously represented in floating point. 0.1 is no good, but 0.125 is fine. Although if Arma is rounding to 0.01 anywhere then that may not be the case.

brave crag
#

What I am seeking: "Auto-Zeroing" function of a turret i/e on a armored vehicle where you just press "T" to have the turret calculate the range and adjust accordingly.

The only think I was able to find was ballistics computer, in which case had no effect. I attempted to reference configs of other vehicles with the same systems but no joy.

Could anyone provide some insight on how I can achieve this effect please aviator Im having a brain fart

tender fiber
#

To adjust a UGL precision all i change is the position of the CameraPoint?

hard chasm
#

@chilly tulip0.1 is no good, but 0.125 is fine
thru happenstance. 0.125 is merely one of the few values from the enormous range of floats that can be stored exactly. Values either side of it cannot.
the one thing to be aware of is you can never, not never compare equality. Eg
thingy == 1.125; // for this or any other value.
you can only ever use

0.125 or <.0125
the reason being, thingy can be the result of a math operation such as a+b which almost inevitably produces residue.

wheat sluice
# brave crag What I am seeking: `"Auto-Zeroing" function of a turret i/e on a armored vehicle...

You need a combination of two things:

  • turretInfoType in the vehicle's turret class that links to an RscUnitInfo-based classname that has zeroing as an element for its controls[]. If you don't know how to set this up or just need basic zeroing, you can use one of the existing vanilla classnames.
  • FCSMaxLeadSpeed and FCSZeroingDelay defined in the weapon class. The former determines the maximum speed limit of the target e.g. FCSMaxLeadSpeed = 126; means that you can't autolead against a target moving faster than 126 m/s (453.6 km/h). The latter determines how long you have to wait before autolead calculations are done (e.g. FCSZeroingDelay = 10; means you have to wait 10 seconds for the fire control system to autolead).
    https://community.bistudio.com/wiki/Arma_3:_Targeting_Config_Reference#FCSMaxLeadSpeed
frozen bluff
#

I'm having an issue where my Armored SUV only works on roads. I'm trying to give it some offroad capability just so it doesn't get slowed down immensely by grass and the like. How do you make it work offroad? I'm not sure if it's a config or model issue, but trying to resolve it.

frozen bluff
#

Thanks

rocky trail
#

What is the proper way to 'patch' a mod class?

#

I also didnt manage to change the damage of the buckshot despite updating the ammo

#

I also tried changing the submunitions but it didnt work either

#

I checked the class in-game and it was being updated

#

So I just gave up at that point, nothing I did seemed to work

hearty sandal
#

patching a class needs you to use the same classname and have requiredAddons in cfgPatches header set up so that your mod loads after the original one thus overwriting it

rocky trail
#

That's what I did

#

That's how I 'patch' the class atm

hearty sandal
#

if class in game does not update then it could be something else overwrites it afterwards

#

you might be able to check the rpt log for what updtaes those classes

rocky trail
#

The problem im facing currently is that the class updates - but for some reason changing the buckshot's munition and submunition hit and caliber, doesnt inflict more damage on infantry.

#

My original problem - on the other hand (XY problem) was that I was trying to create a new buckshot magazine with custom ammo using the original buckshot round as inheriting.

#

But for some reason, despite all my attempts to add the new magazine class to the class, nothing worked and it stayed the same.

#

All of the basics (involving cfgPatches etc...) have been covered.

#

Here is my last attempt at making a new magazine for the m79

hearty sandal
#

this feels so overly complex setup for small thing like this

#

with a glance cant really spot anything glaring

#

at least from what I can put together from all the separated files

rocky trail
#

no big deal

hard chasm
#

it becomes a big deal when you over complicate something.

#

hard to see why or how hemtt is involved in this. As HG has already pointed out there shouldn't be a reason for XEh.

#

as i've mentioned several times before on different occasions, directly altering existing classes is foolishness.

hearty sandal
#

sometimes its still valid to do if you want to change something that applies to other places where that thing is used

#

like he wants to change the damage, thats fine.

#

Im just curious why the changes dont apply

chilly tulip
#

The inheritance for the muzzle in CfgWeapons is wrong. Not sure how much it matters.

#

vn_m79_shot_muzzle is defined in vn_rifle, not vn_m79, and inherits from vn_m79_muzzle, not vn_ugl.

#

Surprised it doesn't result in some (probably broken) config change though.

hearty sandal
chilly tulip
#

I don't understand how this coexists with your previous statement.

#

whatever

hearty sandal
chilly tulip
#

Confirmed code is working as written if not as intended:
magazines[] = {"vn_40mm_m381_he_mag","vn_40mm_m406_he_mag","vn_40mm_m397_ab_mag","vn_40mm_m433_hedp_mag","vn_40mm_m583_flare_w_mag","vn_40mm_m661_flare_g_mag","vn_40mm_m662_flare_r_mag","vn_40mm_m695_flare_y_mag","vn_40mm_m680_smoke_w_mag","vn_40mm_m682_smoke_r_mag","vn_40mm_m715_smoke_g_mag","vn_40mm_m716_smoke_y_mag","vn_40mm_m717_smoke_p_mag","vn_40mm_m651_cs_mag","sogfield_40mm_576_buck_mag"};

pastel fog
#

What's the classname for adding CBA_A3 to required addons?

#

I think it might be "CBA_main_a3" but I'm not certain

wintry tartan
#

Check pinned

pastel fog
#

It's "cba_main_a3"
Thanks for writing that pin, very useful

wintry fox
pastel fog
#

cba_main_a3 basically just seems to call cba_main from what I can see on the github
Probably is one of those backwards compatibility things

wintry fox
#

Yes, that's exactly what I just said

#

BWC, backwards compatability

pastel fog
#

Ah,
Never seen that short form before

hard chasm
#

me neither, but certainly reduces a double word mouthfull

rocky trail
#

This is the problem im having; tldr

#

I changed the classes as you mentioned; will test again

#
class cfgWeapons {
  class vn_rifle;
  class vn_m79: vn_rifle {
    class vn_m79_muzzle;
    class vn_m79_shot_muzzle: vn_m79_muzzle {
        magazines[] += { "sogfield_40mm_576_buck_mag" };
    };
  };
};
#

^ This didnt work either

rocky trail
#

Solved the issue - cfgWeapons wasnt included in config.cpp

hearty sandal
chilly tulip
#

Ah, I tested by dumping the contents of the CfgWeapons into my test mod :P

fickle marlin
#

Good morning,
I modified the main menu screen, and I got this type of error.
Do you know how to fix this?

#

Knowing that I removed the InfoNews part of my config for example

wintry fox
#

Probably broke inheritance

molten musk
#

So addonfile or mission file

wintry fox
#

They already modified the main menu
Also how would you modify the main menu screen in a mission file, after you're past the main menu

fickle marlin
wintry fox
#

Load Arma 3 with just Advanced Developer Tools (just because it a far nicer config viewer), and look at the inhertiance for the classes you're modifying

#

Then replicate that in your mod

molten musk
wintry fox
#

Yeah, there's a button to the right of that list that will open up the tree view

#

Also showing your config would help

fickle marlin
#

So i have to put
class RscStandardDisplay;
class RscDisplayMain : RscStandardDisplay

wintry fox
#

What classes are you making changes to, including classes inside RscDisplayMain

#

The error looks like you're trying to change the InfoNew's background control

fickle marlin
#

The problem is that I removed the InfoNews class

wintry fox
#

Just show your intended config

fickle marlin
wintry fox
#

With the changes you want to make

fickle marlin
#

Here is

wintry fox
#

Oh yeah you're just deleting stuff
Don't do that
Just make the w/h 0 or something

#

Or move it off screen

#

You're also redefining so much stuff

wintry fox
#

So like for example:

class RscControlsGroupNoHScrollbars;
class RscStandardDisplay;
class RscDisplayMain: RscStandardDisplay {
    class controls {
        class InfoMods: RscControlsGroupNoHScrollbars {
            class Controls {
                class Background;
            };
        };
        class InfoNews: InfoMods {
            class Controls: Controls {
                class Background: Background {
                    x = cornerOfTheUniverse;
                    y = theOtherCorner;
                };
            };
        };
    };
};
fickle marlin
#

Ok I try

steep pawn
#

I currently have an issue in which a pistol I am configuring is spawning in fine and I can see the model on the floor but when I equip the gun it is slotting yet it will not go into the players hands as a weapon?

fickle marlin
#

Hello everyone ! I want to change the cutscenes present in the main menu. When I launch the game, the main menu has a frozen image, and the mission does not seem to be loaded (although in the logs, yes)
Do you know how to fix this?

hard chasm
#

is this on your own map or a bis one?

fickle marlin
#

In VR

hard chasm
#

what hell does that mean?

#

your map or bis?

fickle marlin
#

BIS

hard chasm
#

requiredADDONS={nameOFmap};

class CfgMissions
{
class Cutscenes
{
class whatever_mission_they_have
{
directory = "MyProject\nameofNEW\mission_folder";
};
};
};

#

put your mission.sqm in that folder (and a desc,ext)

nimble sequoia
#

VR = Virtual Reality (BI blank map)

hard chasm
#

he wants to change the cutscenes on a blank map????

wintry fox
tender fiber
#

i have issues with an error mentioning nameSound in a few different things i'm doing, from what i've searched using generalMacro should automatically create them, how do i use it? _generalMacro = "MyMacro";, _generalMacro = "ExistingMacro";? and if that doesn't solve it how do i use _generalMacro anyways? i'm interested to know

wintry tartan
#

_generalMacro does nothing to do with modding/end user's experience. There is no reason to do

tender fiber
#

There's a mod i just started helping develop they have the _generalMacro = "MyMacro"; does that really do nothing?

wintry tartan
#

No

tender fiber
#

they have a new class

class weapon1macro;
class weapon2 : weapon1macro
    {
        _generalMacro = "weapon2macro";
    };

that copies an old class

class Itemcore;
class weapon1 : itemcore
    {
        _generalMacro = "weapon1macro";
    };

and they used the _generalMacro to try and inherit the config, it is busted then?

wintry tartan
#

As I said, it does nothing

tender fiber
#

k ty

wintry fox
lethal shuttle
#

whats the difference with HitBody and HitHull?

#

and how should the hull hitpoints look like? should they be the same as karoserie?

raven snow
#

I was making an ALIVE faction mod for myself and got this error but I don't see anything wrong here

wintry fox
raven snow
#

oop

wintry fox
#

Just means you have some array that's {"1", "2" {"3"...}

raven snow
#

I did just find it lol

#

There was a missing , seven lines below

brave sentinel
#

Hi, its me again. I've looked up on Ares how its all structured and built. I've created something out of it on my own, but unfortunately it doesnt show up in the zeus. Could somebody go over my config files again? I had issues finding any documentation on how to create a mod which adds new zeus modules. Yesterday, I created a module for the editor, with your help as well, so i though that you guys will maybe help me out with this as well. Pasting the files...

toxic solar
#

does indirectHitRange have any effect on mines? I tried playing around with some values of 10, 20, 30, 40 and from wat I can see after 10 meters I dont take any damage, something else I am missing maybe?

novel lava
#

it definitely does - what type of mine? is there anything between you and the mine?

#

the indirecthit stuff can act a bit funky with like a small wood fence protecting you from a 500lb bomb going off

toxic solar
chilly tulip
#

hmm, maybe the bounding mines are subprojectile based so you're editing the wrong class.

latent monolith
#

@hearty sandal so for this gun ive created an sqf and an eventhandler but it its not actually working in game ive goofed up somewhere evidently but unsure what ive goofed.

// onWeaponFire.sqf
private _weapon = _this select 0;
private _shooter = _this select 1;

// Check if weapon is fully charged
if (_weapon animationPhase "Charging" < 1) then {
    hint "Weapon is still charging!";
     _shooter setWeaponMode ["Single"];
} else {
    _weapon animate ["Charging", 0];
};
#

Line 381

hearty sandal
#

so any sequence you want it to do youll have to drive with the engines own sources for weapons

#

so you would use sources like reload or magazinereload etc

#

you could have kept this in the animation channel too since its so closely animation related. but its fine here too

latent monolith
#

so in essence what im trying to achieve is:

make a gun that is hold to charge/fire like the T100X-Futura

when its charging it extends its barrel

this takes 5s for animation to complete

Upon animation completion a single shot is fired

Then an animation which launches the barrel backwards into the gun signfiying significant recoil is played instantly.

Repeat with a cooldown between shots.

#

now i know alot of this can be achieved just through timings like for example set the weapon reload to 6 seconds for example

#

so it takes 6 seconds in between shots

hearty sandal
#

that cant be done

latent monolith
#

the other stuff the anim stuff is whats tripping me up

#

like at all?

hearty sandal
#

no

#

theres no animation source for it

#

only thing you can do is use existing sources

#

for things happening between shots you have reloadMagazine source

#

and Revolving

latent monolith
#

is there any way i can smoke and mirrors this so it looks like its doing it even thought we know its not

hearty sandal
#

and ammo count related stuff

#

figure out if any of the engine sources play in suitable phase of firing.

latent monolith
#

their was one i discovered called "weapon"

#

apparently its related to the different state a weapon is in

hearty sandal
#

you can make the barrel pull back on firing and then move back "charging" before the gun is ready for its next shot

latent monolith
#

so that would just be timing then basically

hearty sandal
latent monolith
#

your probably right at this point it feels like im throwing paint at a wall and hoping it sticks XD

hearty sandal
#

"reload" would probably work for you

#

it plays between shot and when gun is ready to fire again

#

so basically its the mechanism cycling new shot in

latent monolith
# hearty sandal you can make the barrel pull back on firing and then move back "charging" before...

so lets walk through it:

the animation for the barrel extending could be reload and it takes 5 seconds like this code here for example:

class WBK_SCIFI_AR_Reload: Default
        {
            speed=-3.8;
            file="XcomProps\Weapons\Anim\SCI_FI_AR_Reload.rtm";
            disableWeapons=1;
            disableWeaponsLong=1;
            interpolationRestart=2;
            enableOptics=1;
            weaponIK=1;
            looped=0;
            leftHandIKBeg=1;
            leftHandIKCurve[]={0,1,0.1,0,0.916,0,0.951000001,1};
            leftHandIKEnd=1;
            rightHandIKBeg=1;
            rightHandIKCurve[]={1};
            rightHandIKEnd=1;
            canReload=0;
            mask = "handsWeapon";
            headBobStrength=-0.3;
            headBobMode=1;
        };

then once the gun has fired it will play another anim?

am i getting this right at all

hearty sandal
#

no this is magazine reload

#

thats different event and different animation source

latent monolith
#

Oh ok

#

but it would be controlled in the config under event/states?

hearty sandal
#

no you are going wrong direction

latent monolith
#

and follow a similar process or is it completely different

hearty sandal
#

the actions/states are for the man animations

latent monolith
#

ok im going to shut and try and stop jumping the gun ill let you take over

hearty sandal
#

like moving hands when you realod weapon

latent monolith
#

right ok

hearty sandal
#

what happens to the weapon is set only in the model.cfg

#

all of its parts move with the animation classes you have already started making

latent monolith
#

ah based as hell

#

so how do i make it do the recoil action when firing then in the model cfg?

hearty sandal
#

"reload" animation source

#

and time different movements to happen between 0 and 1 phase

#

for example if barrel move back between 0 and 0.1

#

and then moves back forward from 0.1 to 1.0

#

its 2 animation classes that then play one after other

latent monolith
#

gotcha

#

so its the inverse of the other animation

latent monolith
#

like playback speed

hearty sandal
#

for engine sources the time it takes to happen is usually defined elsewhere

#

like time between shots comes from weapons own config

latent monolith
#

ah ok so thats where the rate of fire code snippet comes in ok i think its starting to make sense now

#

||maybe 😅 ||

frozen bluff
#

Is there a way in the config to make the door gunner miniguns operable by the pilot? Hatchet Mod seems to have done that, and was able to do it. Is there some kind of command for that? If so what is it?

hearty sandal
#

enableManualFire

#

possibly

#

(a turret config parameter)

frozen bluff
#

Okay thanks. It looks like I have to maybe go into their config and find out too.

vast tartan
#

How would you go about using a macro in a string list? Like if I had a macro with an argument like this:

                compatibleItems[]=
                {
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE_LASER),
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE_VISLASER),
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE_FLASH),
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE3_LASER),
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE3_VISLASER),
                    #COMPONENT_CLASS(NSR_NGAL_DEVICE3_FLASH)
                };

edit: Solution was creating a quote macro:

#define QUOTE(arg) #arg
pastel fog
#

Is there a better formula for generating the value for hit in arma 3?

I found the formula that was probably used for approximate values in arma 2, but it seems a bit inconsistent
As far as I can tell, based on 6.5 and 5.56, weight is in kg and speed is in m/s

For ArmA we used as help 
FMJ bullet energy hit = sqrt(weight/2)*speed/5 
This works for small arms fire, not that well for SABOT rounds or High explosive artilery shells.
First using of this equation was in ČSLA 2.2 for OFP. In BI games is since ArmA 1.05.
``` From https://community.bistudio.com/wiki/Weapons_settings

It seems moderately close for 5.56 and 6.5
But the 5.7x28 for the p90 calculates as about half of the value used ingame

The projectile I'm trying to balance is a 3.5mm solid tungsten round (G7 bullet shaped) travelling at 800~700 m/s
hearty sandal
pastel fog
#

Yeah,
I've been trying to get it within a reasonable balanced state,
Best I could get is that the hit value should be somewhere between 4 and 8
The ammo for the p90 is 8
5.56 is 9
6.5 is 10
Probably I should try 6 and an appropriate caliber value, and just iterate until it works as desired

tender fiber
#

I'm trying to make a weapon with a UGL, the problem is that UGL has it's sight on top of the weapon and when getting to 400~500 meters the sight points to the weapons itself, i can fix that by using source="zeroing.0"; and animate each zero, but since the gl_sight is on the top when i stop using the GL and go back to the weapon the sight will still be there

i'm trying to use source="weaponMuzzle"; and type="hide"; and creating the sight 2 times one being sight_gl and the other sight_gla, in model.cfg to fix that, one when i'm using the weaponMuzzle to unhide it and other when switching back to the weapon hiding it

                        class sight_gla_flip
            {
                type="hide";
                source="weaponMuzzle";
                selection="sight_GLA";
                minPhase=0;
                maxPhase=1;
                minValue=0;
                maxValue=1;
                memory=0;
                hideValue=1;
                unHideValue=2;
            };
            class sight_gl_flip
            {
                type="hide";
                source="weaponMuzzle";
                selection="sight_GL";
                minPhase=0;
                maxPhase=1;
                minValue=0;
                maxValue=1;
                memory=0;
                hideValue=0;
                unHideValue=1;
            };                

i do have sight_GLA on skeletonBones[]= as "sight_gla", "", and on buldozer the sights alternate correctly but in-game they do not, why?

tender fiber
#

issue fixed, there was another model.cfg with the same skeleton classname somewhere else overwriting my skeletonBones[]=

hard chasm
#

class my_tag_gorrilla tends to remove this problem because only you can use this unique mytag and, skeleton names only have a meaning when binarising rtms. (the engine is agnostic). The reverse is also true you and other modders who know what they're doing would never create a skeleleton simply called 'gorrilla'. For those that don't know this, or don't understand it, let them squabble among themselves.

hard chasm
#

plastering mytags with and on everything you do is the best insurance you can have yout mod will work. Even bis use the _f mytag for things arma3. Even your p3ds need unique names if they're going to be used in maps. (due to land_xxx classes)

latent monolith
#

so im making my script for this charging laser sniper rifle right using an event handler (EH = "Fired) and a user action.

but im encountering an error would someone mind looking at the config and sqf and see whats going wrong?

#

config

{
    class Rifle_Base_F;
   class XC_LASER_SNIPER: Rifle_Base_F
    {
        
        author = "Papafox";
        scope = 2;
        displayName = "Xcom Laser Sniper Rifle";
        effectsFire="ChemlightLight_Red";
        magazines[] = {"XCOM_SNIPER_Battery"};
        initSpeed = 2554;
        reloadTime = 6;
        magazineReloadTime = 5;
        autoReload = 0;
        canLock = 0;
        recoil = "recoil_mmg_01";
        reloadMagazineSound[] = { "\XcomSniper\HeavyReload.ogg", 1.7, 1, 25 };
        drySound[] = { "\XcomSniper\Robotic_voice_Empty.ogg", 1.6, 1, 20 };
        selectionFireAnim = "muzzleFlash";
        scopeArsenal = 2;
        scopeCurator = 2;
         BaseWeapon = "XC_LASER_SNIPER";
        descriptionShort = "[Experimental] XCOM Laser Sniper";
        model = "\XcomSniper\XC_SNIPER_1.p3d";
        handAnim[]=
        {
            "OFP2_ManSkeleton",
            "\A3\Weapons_F\Rifles\MX\data\Anim\MX_afg.rtm"

        };
        muzzles[]=
        {
            "this"
        };
        ejectShell = 0;
        reloadAction="SCI_FI_ARVER2_Reload";
        hiddenSelections[] = {
            "camo1",
            "camo2",
            "camo3",
            "camo4"
            };
        hiddenSelectionsTextures[] = { 
             };
        modes[] = { "Single"};
        class Single: Mode_SemiAuto
        {
            sounds[] = { "StandardSound" };
            class StandardSound
            {
              begin1[] = { "\XcomSniper\SNIPERFIRE.ogg", 1.5, 1, 1200 };
                soundBegin[] = { "begin1", 1 };
            };
            class SoundTails
            {
                class TailInterior
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_interior", 1.5848932, 1, 1000 };
                    frequency = 1;
                    volume = "interior";
                };
                class TailTrees
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_trees", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*trees";
                };
                class TailForest
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_forest", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*forest";
                };
                class TailMeadows
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_meadows", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*(meadows/2 max sea/2)";
                };
                class TailHouses
                {
                    sound[] = { "A3\Sounds_F\arsenal\weapons\SMG\PDW2000\pdw2000_tail_houses", 1, 1, 1000 };
                    frequency = 1;
                    volume = "(1-interior/1.4)*houses";
                };
            };
             recoil = "recoil_single_gm6";
            recoilProne = "recoil_single_prone_gm6";
            reloadTime=0.079999998;
            dispersion=0.00073000003;
            minRange = 0;
            minRangeProbab = 1;
            midRange = 350;
            midRangeProbab = 1;
            maxRange=700;
            maxRangeProbab = 1;
            showToPlayer=1;
        };
         class EventHandlers {
            class Fired {
                fired = "[_this select 0] execVM 'XcomSniper\Scripts\fn_handleFireDelay.sqf';";
            };
        };

        class UserActions {
            class ChargeAndFire {
                displayName = "Charge and Fire";
                position = "gesture";
                radius = 1;
                condition = "this getVariable ['canFire', false]";
                statement = "[this, this, currentMuzzle this] execVM 'XcomSniper\Scripts\fn_animateAndFire.sqf';";
            };
        };
    };
};```
nimble sequoia
latent monolith
#

no but im gonna 😅

latent monolith
#

i think the event handler is "silent failing"

#

ive put hints in the sqfs to try and show ok it works but im getting nothing

#

the scripts work though i can get em to work if i remote execute em

hearty sandal
#

start simple

nimble sequoia
#

Oh I misread, thought it was a vehicle.

hearty sandal
#

make the fired event do something like simple "hello" hint

nimble sequoia
#

Do weapons even have Eventhandlers?

hearty sandal
#

it was added relatively recently

nimble sequoia
#

None of the vanilla rifles has it - wonder if tiberius is barking up the wrong tree

hearty sandal
#

yeah Im fairly sure it works. Even though in vanilla stuff its been used only on vehicle weapons

wintry fox
latent monolith
wintry fox
#

No, that's the file path
You should compile your functions with CfgFunctions

#

But did you try Goat's suggestion of just a hint, nothing else?

hearty sandal
#

ah you are progressing to the next dark swamp now. 😄

#

theres many in arma modding

wintry fox
#

Yes

#

Instead of execVM, you would just to [...] call XCOM_fnc_animateAndFire

latent monolith
#

ah ok

#

so i was looking at the TX100 Futuras scripting and thats how i came across this

#

these are the corresponding sqfs

#

pretty much im trying to put that functionality into a handheld rifle

nimble sequoia
#

First of all you have to find out whether a fired EH is actually a thing for a weapon, by just putting something simple like a screen hint in there. Then when you know that works worry about the function execution.

nimble sequoia
#

The error message he's getting is usually seen when a class is defined but doesn't exist

#

So if it was me I'd do a simple check to verify it one way or another

#

might take all of 2 minutes

rich panther
#

How would i change the name of a weapon, not the display name but the Name underneath it when you hover over it with ace arsenal?

latent monolith
trail lily
#

Guys, where i can find mbt_02 (t-100 varsuk) "MBT_02_Engine_RPM0_EXT_SoundSet" settings,
Like i cant find anything about RPM/0/1/2/3, soundSets and soundShaders settings for them. They only defined soundSetsInt/soundSetsExt, but i cant find settings for them.

wintry fox
trail lily
nimble sequoia
# trail lily I know this, but I found soundSets and soundShaders for all vanilla tanks except...

soundSetsExt[]={"MBT_02_Engine_RPM0_EXT_SoundSet","MBT_02_Engine_RPM1_EXT_SoundSet","MBT_02_Engine_RPM2_EXT_SoundSet","MBT_02_Engine_RPM3_EXT_SoundSet","MBT_02_Tracks_01_EXT_SoundSet","MBT_02_Tracks_02_EXT_SoundSet","MBT_02_Tracks_03_EXT_SoundSet","MBT_02_Tracks_04_EXT_SoundSet","MBT_02_Tracks_05_EXT_SoundSet","MBT_02_Tracks_06_EXT_SoundSet","MBT_02_Rain_EXT_SoundSet","MBT_02_Tracks_Brake_Hard_EXT_SoundSet","MBT_02_Tracks_Brake_Soft_EXT_SoundSet","MBT_02_Tracks_Turn_Hard_EXT_SoundSet","MBT_02_Tracks_Turn_Soft_EXT_SoundSet","MBT_02_Drive_Water_EXT_SoundSet","MBT_02_Drive_Dirt_EXT_SoundSet","","MBT_02_Turbine01_Ext_Front_Tonal_SoundSet","MBT_02_Turbine01_Ext_Rear_Tonal_SoundSet","MBT_02_Turbine01_Ext_Front_Noisy_SoundSet","MBT_02_Turbine01_Ext_Rear_Noisy_SoundSet","MBT_02_Servo01_Ext_SoundSet","MBT_02_Servo02_Ext_SoundSet","Tracks_Movement_Dirt_Ext_01_SoundSet","Tracks_Surface_Soft_Ext_SoundSet","Tracks_Surface_Squeaks_Soft_Ext_SoundSet","Tracks_Surface_Sand_Ext_SoundSet","Tracks_Surface_Squeaks_Soft_Ext_SoundSet","Tracks_Surface_Squeaks_Hard_Ext_SoundSet","Tank_General_Collision_SoundShader"}

#
"MBT_02_Engine_RPM0_INT_SoundSet","MBT_02_Engine_RPM1_INT_SoundSet","MBT_02_Engine_RPM2_INT_SoundSet","MBT_02_Engine_RPM3_INT_SoundSet","MBT_02_Tracks_01_INT_SoundSet","MBT_02_Tracks_02_INT_SoundSet","MBT_02_Tracks_03_INT_SoundSet","MBT_02_Tracks_04_INT_SoundSet","MBT_02_Tracks_05_INT_SoundSet","MBT_02_Tracks_06_INT_SoundSet","MBT_02_Interior_Tone_Engine_Off_SoundSet","MBT_02_Interior_Tone_Engine_On_SoundSet","MBT_02_Rattling_INT_SoundSet","MBT_02_Rain_INT_SoundSet","MBT_02_Tracks_Brake_Hard_INT_SoundSet","MBT_02_Tracks_Brake_Soft_INT_SoundSet","MBT_02_Tracks_Turn_Hard_INT_SoundSet","MBT_02_Tracks_Turn_Soft_INT_SoundSet","MBT_02_Drive_Water_INT_SoundSet","MBT_02_Drive_Dirt_INT_SoundSet","","MBT_02_Turbine01_Int_Tonal_SoundSet","MBT_02_Turbine01_Int_Noisy_SoundSet","MBT_02_Servo01_Int_SoundSet","Tracks_Surface_Squeaks_Soft_Int_SoundSet","Tracks_Surface_Squeaks_Hard_Int_SoundSet","Tanks_Material_Strain_Int_SoundSet","Tank_General_Collision_Int_SoundSet"```
trail lily
#

RPM soundSets

#

MBT_02_Engine_RPM0/1/2/3_EXT_SoundSet

#

i can find for mbt_01/03/04, but no for mbt_02 nf_1aj2SadBrain

crisp knot
crisp knot
frozen bluff
#

Out of wonderment, isn't the soundset imprinted on the config.bin? I mean that's how I get the sounds for the helos, unless the tanks are different?

hearty sandal
#

Easiest way is to get a all in one config dump file to search through without need to find right file

#

or use one of the better ingame config viewers like leopards advanced dev tools

frozen bluff
#

Uh, thanks

latent monolith
#

howdy peeps so im attempting to get a scope in game but its not showing up in arsenal ive done goofed somewhere im just tripping up with as to what?

config

class CfgPatches
{
    class XC_SCOPE_LR
    {
        units[] = {};
        weapons[] = {};
        requiredVersion = 0.1;
        requiredAddons[] = {"A3_Weapons_F","cba_main"};
    };
};

class cfgWeapons
{
    class ItemCore;
    class InventoryItem_Base_F;
    class InventoryOpticsItem_Base_F;
    class XC_SCOPE_LR: ItemCore
    {
        scope = 2;
        displayName = "[XCOM] Long Range Scope";
        author = "Papafox";
        model = "\XcomSniper\XC_SNIPER_SCOPE.p3d";
        descriptionShort = "Sniper Laser Scope";
        picture = "\XcomSniper\gear_acco_Arco_CA.paa";
        weaponInfoType="RscWeaponZeroing";
        class ItemInfo: InventoryOpticsItem_Base_F
        {
            mass = 8; // whatever "Weight" you want...its mass/encumberance but whatever
            opticType = 1;
            optics = 1;
            reticleTexture = "\XcomSniper\Optics_Gunner_MTB_01_N_CA.paa";
            class OpticsModes
            {
                class LowMagnification
                {
                    opticsID = 1;
                    useModelOptics = 1;
                    opticsPPEffects[] = {"OpticsRadialBlur1","OpticsBlur1"};
                    opticsFlare = 1;
                    opticsDisablePeripherialVision = 1;
                    opticsZoomMin = 0.0623;
                    opticsZoomMax = 0.0623;
                    opticsZoomInit = 0.125;
                    memoryPointCamera = "eye";
                    visionMode[] = {"Normal", "NVG", "TI"};
                    distanceZoomMin = 100;
                    distanceZoomMax = 500;
                };
                class HighMagnification
                {
                    opticsID = 2;
                    useModelOptics = 1;
                    opticsPPEffects[] = {"OpticsRadialBlur1","OpticsBlur1"};
                    opticsFlare = 1;
                    opticsDisablePeripherialVision = 1;
                    opticsZoomMin = 0.125;
                    opticsZoomMax = 0.125;
                    opticsZoomInit = 0.125;
                    memoryPointCamera = "eye";
                    visionMode[] = {"Normal", "NVG", "TI"};
                    distanceZoomMin = 500;
                    distanceZoomMax = 2000;
                };
            };
        };
        inertia = 0.2;
    };
};

#

model config

{
    class Skeleton
    {
        isDiscrete=0;
        skeletonInherit="";
        skeletonBones[]={};
    };
};
class CfgModels
{
    class XC_SNIPER_SCOPE
    {
        htMin=0;
        htMax=0;
        afMax=0;
        mfMax=0;
        mFact=0;
        tBody=0;
        skeletonName="Skeleton";
        sectionsInherit="";
        sections[]={};
        class Animations
        {
        };
    };
};```
#

if people are wondering where i got the code from got it from the A3 forums from a post in 2023

hearty sandal
#

scopearsenal = 2 and may need to list it in the weapons array of the cfgpatches class

latent monolith
#

copy copy ill give that a go

trail lily
#

cause i founded one, but old one

hearty sandal
trail lily
#

i got all in one config dump file, but still no settings for mbt_02_engine_rpm0/1/2/3, lmao

hearty sandal
#

looks like it dont exist then

trail lily
#

yeah i created FT ticket

nimble sequoia
latent monolith
hearty sandal
latent monolith
#

hmmm