Jump to content
Tom_48_97

VhC, Vehicle Customization (dev branch)

Recommended Posts

The VhC is the new system responsible for the customization of vehicles, either, defined or randomized. It consists of a set of config properties and classes and a set of functions. It has been introduced in order to replace the old system which consisted in a set of scripts.

2015-03-12_00002-300x187.jpg2015-03-12_00005-300x186.jpg
[vehicle player, ["blu",1], ["AddBenches", 0, "AddTread", 0, "AddHoldingFrame", 1, "AddTread_Short", 1]] call BIS_fnc_initVehicle;
 
More information available here: http://dev.arma3.com/post/oprep-vehicle-customization

Usage for designers
Mission designers will find what they need with the following examples, which cover most of the cases of use of the system. In addition, an example mission has been published in dev branch of Arma 3 Tools.
Parameters:

  • 0: vehicle to customize
  • 1: Variant (textures)
    BOOL - true to restore default texture source ; false to skip texture source change
    VOID - Nil to skip the texture source change
    ARRAY - Array of texture sources with their given probability: ["textureSource1", 0.5, "textureSource2", 0.5]
    STRING - Variant class name(from the configFile >> cfgVehicles or from the missionConfigfile >> cfgVehicleTemplate)
    SCALAR - index of the texture source (same as the old system)
  • 2: Animations
    BOOL - true to restore init phase of every animation sources
    VOID - Nil to skip change of the animation sources
    ARRAY - Array of animation sources and probability: ["AnimationSource1", 0.5, "animationSource2", 0.5]
    STRING - Variant class name(from the configFile >> cfgVehicles or from the missionConfigfile >> cfgVehicleTemplate)

Examples:

  • Do nothing because default VAR texture and VAR animation are "false"
    result = [this] call bis_fnc_initVehicle;
  • Restore default texture and animation sources (reset)
    result = [this, true, true] call bis_fnc_initVehicle;
  • Randomize everything according to the config file
    result = [this, "", []] call bis_fnc_initVehicle; //<-- Prefered
    result = [this, "", ""] call bis_fnc_initVehicle;
  • Skip everything
    result = [this, nil, nil] call bis_fnc_initVehicle; //<-- Prefered
    result = [this, false, false] call bis_fnc_initVehicle;
  • Apply the given texture and ignore the animations
    Priority is given to [missionConfigFile, "CfgVehicleTemplates"]
    result = [this, "TemplateName", nil] call bis_fnc_initVehicle;
  • random weighted on the given texture sources and their probability, then randomize the animation sources according to the config file
    result = [this, ["MyTextureSource1", 0.5, "MyTextureSource2", 0.6], []] call bis_fnc_initVehicle;
  • MyAnimationSource1 phase has a 50% chance to be set to 1 and MyAnimationSource2 has a 70% chance to be set to 1
    result = [this, nil, ["MyAnimationSource1", 0.5, "MyAnimationSource2", 0.7]] call bis_fnc_initVehicle;
  • MyAnimationSource1 phase will be 1 whereas MyAnimationSource2 will be set to 0
    result = [this, nil, ["MyAnimationSource1", 1, "MyAnimationSource2", 0]] call bis_fnc_initVehicle;
  • Change animation sources with a given template
    result = [this, nil, "MyTemplate"] call bis_fnc_initVehicle;

Usage for Modders
On the other hand, in addition to the documentation (still wip), modders will find examples of implementation in the samples (car and boat) of Arma 3 Tools (dev branch only for now)

As per usual, issues, feedback and suggestions are very much welcome :cool:

This feature is still actively developed, meaning it will be adjusted and extended during the upcoming weeks.
To be 'extended'...

Edited by Tom_48_97 ☠
Link to the OPREP
  • Like 1

Share this post


Link to post
Share on other sites
It's already on the dev branch ;)

Tell me if you want me to kiss you next time i see you on the street.

Share this post


Link to post
Share on other sites

Can we buy some friendly beers for ya, Tom? ;)

Share this post


Link to post
Share on other sites

About the Little Bird customisation, what does the FLIR do ? There is no change when I add it in the Virtual Garage.

Share this post


Link to post
Share on other sites
About the Little Bird customisation, what does the FLIR do ? There is no change when I add it in the Virtual Garage.

Try going co-pilot and rightclicking, it works for some choppers.

Share this post


Link to post
Share on other sites
Try going co-pilot and rightclicking, it works for some choppers.

Last time I tried it didn't work with the LB / AH-6. To me this looks either like a leftover from alpha or a cruel tease from BIS :-D

Share this post


Link to post
Share on other sites

Will it be possible to customize the weapons on vehicles later?

Share this post


Link to post
Share on other sites

Let us customize (or at least enable) the radaaaaars, BIS please :D

Share this post


Link to post
Share on other sites

Well, I will skip my turn for the kiss, but not for the beers :yay:! That said...

Regarding the camera for the M-900 and the MH-9 I'm going to investigate but I cannot promise anything. For now, the FLIR is gone from the garage.

Will it be possible to customize the weapons on vehicles later?
This could be nice to have, it's a possibility I'd like to explore in the future.
Do you need to call bis_fnc_initVehicle on server only?
The function can be called only from where the vehicle is local to. In case of need for other possibilities, just post it here, I'll investigate :)
Let us customize (or at least enable) the radaaaaars, BIS please :D
What do you have in mind? What radar?

Share this post


Link to post
Share on other sites

Would it also be possible to edit the vehicle's inventory there with a quick menu, similar to the Zeus virtual ammoboxes does it for weapons and ammo crates?

Share this post


Link to post
Share on other sites
Would it also be possible to edit the vehicle's inventory there with a quick menu, similar to the Zeus virtual ammoboxes does it for weapons and ammo crates?

I'd like this very much too, to be able to load presets depending on the mission you depart to. Maybe some disassembled static weapons or just a lot of ammo.

Share this post


Link to post
Share on other sites

I'm a little disappointed that the Police lights can't be turned on and off while actually using the vehicle. For the Offroad, you ca slap on the Police light bar, much like it is on the Police boat, the problem with it though, is that you can't turn on and off the lights. The only way to do that, is by spawning it active.

Share this post


Link to post
Share on other sites

Oh and one more thing which I'm sure would be appreciated:

Making the container on the "HEMTT Box" and the device on "Tempest (Device)" hideable components would effectively give us two flatbed trucks to haul the helicopter pods or any other cargo around.

Share this post


Link to post
Share on other sites

Finally got round to looking at this, massive thanks for the config standardization. Helped me ditch a really crappy system I came up with just for the Taru black scripts and replaced it with something I can apply it to all vehicles with multiple texture sets!

Couple of things though:

- Mi48 is missing textureSelections for the black textures

- MH9/AH9 have textureSelections even though they only have the one set of textures (whereas every other vehicle I've seen with one texture set doesn't)

Share this post


Link to post
Share on other sites
I'm a little disappointed that the Police lights can't be turned on and off while actually using the vehicle. For the Offroad, you ca slap on the Police light bar, much like it is on the Police boat, the problem with it though, is that you can't turn on and off the lights. The only way to do that, is by spawning it active.

I agree. Tom, any chance this can be fixed?

Share this post


Link to post
Share on other sites
Oh and one more thing which I'm sure would be appreciated:

Making the container on the "HEMTT Box" and the device on "Tempest (Device)" hideable components would effectively give us two flatbed trucks to haul the helicopter pods or any other cargo around.

This would be very much appreciated. I already see myself transporting a broken vehicle back to base for repairs with attachTo. Or ammo crates from base to a FARP. Slingloading is not always an option when enemies have effective AA.

Share this post


Link to post
Share on other sites

Idea/Request: Enable Zeus to use the Arsenal on Vehicles as he can use it on Soldiers. So we can customize singular Vehicles in Zeus Scenarios :3

(Like: Arsenal Module dragged on Units open's their Arsenal, if you drag it on Vehicles it opens the Vehicle Customization.)

Share this post


Link to post
Share on other sites
Idea/Request: Enable Zeus to use the Arsenal on Vehicles as he can use it on Soldiers. So we can customize singular Vehicles in Zeus Scenarios :3

(Like: Arsenal Module dragged on Units open's their Arsenal, if you drag it on Vehicles it opens the Vehicle Customization.)

Unfortunatly, I must say no - it's not currently possible because the garage is not written as dynamically as the Arsenal.
Would it also be possible to edit the vehicle's inventory there with a quick menu, similar to the Zeus virtual ammoboxes does it for weapons and ammo crates?
Could you precise from where you'd like such addition?
I'm a little disappointed that the Police lights can't be turned on and off while actually using the vehicle. For the Offroad, you ca slap on the Police light bar, much like it is on the Police boat, the problem with it though, is that you can't turn on and off the lights. The only way to do that, is by spawning it active.
Hum, not for long...
Oh and one more thing which I'm sure would be appreciated:

Making the container on the "HEMTT Box" and the device on "Tempest (Device)" hideable components would effectively give us two flatbed trucks to haul the helicopter pods or any other cargo around.

This is something I can investigate but this won't happen for the DLC because such feature requires the model to be edited. For now, it's not a yes nor a no, I will look into it.
Finally got round to looking at this, massive thanks for the config standardization. Helped me ditch a really crappy system I came up with just for the Taru black scripts and replaced it with something I can apply it to all vehicles with multiple texture sets!

Couple of things though:

- Mi48 is missing textureSelections for the black textures

- MH9/AH9 have textureSelections even though they only have the one set of textures (whereas every other vehicle I've seen with one texture set doesn't)

I will take care of the Mi48, as for the MH9 and its unique texture source, it will be fixed very soon on the dev branch.

Share this post


Link to post
Share on other sites
Could you precise from where you'd like such addition?

Ideally through Zeus, similar to this: https://community.bistudio.com/wikidata/images/thumb/1/10/a3_ammobox_infinite.jpg/800px-a3_ammobox_infinite.jpg (137 kB)

The point would be to set up vehicle cargo with ammo, medical supplies, static weapons, etc. dynamically at the beginning of the mission, depending on what is needed (for example through a quartermaster zone where there is limited zeus access).

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×