Jump to content
Sign in to follow this  
Gunter Severloh

Make multiple units playable at once, & other editor option/features

Recommended Posts

Make multiple units playable at once, & other editor option/features

Hello everyone, long time fan since 2001.

Spending most of my time in the editor I have an idea that I had suggested last year

on the Arma3 suggestion thread about making multiple units playable at once.

I have setup a ticket on the Arma3 feedback tracker:

http://feedback.arma3.com/view.php?id=3584

The general idea of this feature is to simplify and cut down on the amount of time it takes to edit units in numbers, those being multiple single units,

group/s, this can be soldiers, armored, cars, planes, helicopters, ect,.

 

Menu apon highlight

Normally when you highlight a unit you either click on them and their color gets brighter, or you draw a box around them, this is both

applied to singular units and any group, basically you need to highlight them in order to edit them.

When you highlight them the idea i had would be either the normal "edit unit" window would pop up and be used or a new menu would come

up but be small like a list. In this list be either of the options, you would have:

  • make playable
  • add code/command
  • edit rank

All the features listed above is i can think of at the moment that would be most useful for this.

 

add code/command

For this feature of the menu, for what i had in mind the idea could be better improved apon but for now what i had in mind was you would check

this in a box, with this feature you can do 2 things (not limited just idea for now) is one you can add a code, or command that can be applied to one unit,

or multiple units, for example:

Lets say you had 5 AI squads that you wanted to add a code to, and you had to add the code to the Squad leader's init line, with this feature you

can do that by simply highlighting the units, and then the list of units would be lists and broken into separate groups.

 

So a separate group would be like a check box in a database like tree, you could have this listing where its collapsible, you can open each group in its own tree,

to edit a particular unit there would be an option to add code, to add code a text like box for the init line we currently have can be used. for the example above with the squad leader, in the tree similar

to what you would see in the mission.sqm when you open it you can have the option to edit an individual squad leader, all the units themselves, or have an option to where it would say something

like "apply to all" now apply to all would be specific to those units checked in the listed tree.

 

If the 5 trees for the 5 groups you highlighted are open and your only doing the squad leaders, then collapse the tree so that only you

have a tab that says 5 squads=leaders or something, and then you could apply a code to all squad leaders.

 

I have an idea what this would look like but if i seen an example of it then i could maybe better tell you how we could lay it out.

Although i'm no coder, or scripter, i have worked with many scripts, and files to have an idea of how to use them to a degree, so maybe those

that would could better add, or enlighten the concept with their knowledge and idea of what the idea is here.

==========

Overall what are you guys thoughts on the ideas and concepts of this?

  • Like 1

Share this post


Link to post
Share on other sites

Looks good man, its a solid idea. I hope it makes into beta or full release.

Share this post


Link to post
Share on other sites

I wouldn't hold your breath on this one. Sounds like an easy thing and possibly is but we haven't seen it in 10 years so probably won't see it anytime soon.

Share this post


Link to post
Share on other sites

Even the option to just make multiple units playable at once shouldn't be to hard, all the other features I said were options.

If BIS dont do this i will find a way to do it.

The possibility of copying already made playable units and pasting them, enabling already made playable units/groups to keep their playable status.

Share this post


Link to post
Share on other sites

The easiest way to do it is editing the mission.sqm file and doing a search and replace.

Share this post


Link to post
Share on other sites

Yes i know this, but the point of what Im asking for is to have the feature as a function already built into the editor so we dont have to

open the mission.sqm, and search for the 20 units I put down and make them all playable at once.

All i want to do is highlight the units which we can do already and then make them playable at once, and if that become possible then extend

the feature by adding to the function, like be able to copy n paste playable units where ever in an existing mission, to another mission etc,

as well as other functions like adding codes to all units.

Share this post


Link to post
Share on other sites

Thank you, hope they at least would just consider making multiple units playable at once, the other features/functions are great but could take

some more coding to get them to work that is if those parts would be considered, then too they would need to determine how to pull it off, as my

idea is great and all but it may not work like that, maybe similar but not exactly.

Well if its not considered and the full game releases, i will take it on as a project, as i find it annoying to have to edit each individual unit

just to make them playable for both sp and mp, its tedious, it wastes time.

Dont forget to vote!

Share this post


Link to post
Share on other sites

Thanks Gunter voted.. this has bugged me for some time

Share this post


Link to post
Share on other sites

Vote guys!

This is annoying that you have to still edit each individual unit vs drawing a box around all of them and making them playable at once, or having some sort of dialog that allows you to choose which units (soldiers, vehicles, ect,.) to be made playable, I've wanted this since i started editing in OFP why to this day its still not possible ingame, or any modder has not created such a feature, this would seriously cut down your editing time if you had alot of units to be made playable, or other things you needed to do for multiple units, like adding codes.

Sorry for opening an very old thread but I dont see how hard this function/feature could be to implement, if i knew how I'd have done it already, and to this day everytime

I go into the editor for Arma3 and want to create a small skirmish for myself I still have to edit multiple units for what I want to do.

Share this post


Link to post
Share on other sites

With the Number of massive updates since this was posted on the feedback tracker in 2013

we've only had 33 votes since.

 

Im astonished that no one seems to be interested in having multiple units, vehicles, planes, ect,. playable at once, so you guys are telling me

that you would prefer to edit each individual soldier, or vehicle to make them all playable, and not have the option to copy a playable unit,

vehicle, ect,. and paste it, you would think about the amount of time, and less tedious work it would take you to edit a mission.

 

So basically the point of this thread as the title says it to be able to do 2 things:

1. Highlight ( we can do this already since OFP - no shit! lol) placed units be it a group, or a squad, or multiple single units then a small menu pops up, and you get the

edit unit option, and a list of all the units you highlighted, then with my idea you can have a ticker box where when you tick it (click on it) all units listed are listed as playable,

once you hit ok, or apply whatever you want, then the menu closes, and the icons for the units, vehicles, what have you have changed color (purple) indicating they are all playable.

2. Copy n paste (again we can already do this) and have a save feature built in where the copied playable units maintain their playability and then when you paste them

you have basically a new copy of your existing playable units.

 

Heres the feedback tracker ticket:

http://feedback.arma3.com/view.php?id=3584

this feature function can lead into many other functional features that could be applied to other things for editing.

Editing is the biggest thing for this community, imo if it weren't for the editor, i dont think Id be playing this game anymore, as we would be limited to whatever BIS creates for us.

please vote, we have been having to edit individual units to make them playable since OFP, after all this time you would think BIS would have implemented this function to make all units playable at once, and be able to copy them, why they haven't i dont understand, are they even using their own editor? No pun intended but the simpler, and more versatile the editor becomes as well as adding a 3d editor (another story) could only make more members of the community want to edit.

 

i think some people could be turned off by the editor because its to much work to have to do certain things, really depends, but my request here is only to

make the editor more simpler, faster to use, this would allow more playtime with one's mission if we could cut out some of the unnecessary work involved with

playable units, even if its 1 squad of soldiers, or tanks, or planes, or whatever else that could be made playable.

Just my thoughts, I'd only get more excited to edit if there more funner, simpler, faster ways to create an awesome mission for oneself, for you

and your friends or for the community, give it some thought, and again we been editing the old way since OFP so nothing has changed in terms of

editing a unit and making them playable, the workarounds to this are more tedious and basically more work then its worth.

Share this post


Link to post
Share on other sites

Agreed. Voted up on the feedback tracker.

It's infuriating and really kills my mood when I have to go through 30 different units invididually. I'm astonished that this hasn't been added already - seems like a given to have this feature.

Share this post


Link to post
Share on other sites

This has been requested numerous times since OFP. Tho it was never implemented. Hopefully BI change their mind

Share this post


Link to post
Share on other sites
Quote
It's infuriating and really kills my mood when I have to go through 30 different units invididually.

Exactly! and thanks for the vote!

This isn't just for me, were doing this for the whole community that spends most of their time in the editor like muwa, lol

But seriously though, idk how many times I wanted to just make a simple mission where if my player gets killed i could switch to any number of units available, of course

this is one option to playing, but if i had 50 guys on the map, 5 squads or something, or individuals, thats alot of double clicking, and then switching to playable,

after a while its like forget this i dont feel like playing now.

Quote

seems like a given to have this feature

that and a 3d editor, BIS created zeus, thats a start, i dont understand why they couldn't just have made that the 3d editor and have it

where you could save your work like norm you do in the 2d, well another story of course.

Quote
This has been requested numerous times since OFP.

Hmm dont recall any threads, or whom were asking for it, i never paid attention to the forums til 2009.

Heres a question for you guys, if we were to make this as simple as possible as basically to just get it to work,

the idea comes into action after you highlighted a group of units be it a squad or just multiple individual units.

 

My question is for those coders and scripters and members that can create menus or something... is what can we do to add to the highlight aspect where we

can get a dialog or a menu to pop up, or.... if we were to add a button to the editor where once something is highlighted it would open the edit unit menu,

instead of double clicking as an option, and then... have a script or something that checks all those units or whatevers (vehicles maybe) highlighted (AI) to see if they are

set to player, and playable, and then the other options, like for a tank, theres playable as driver, playable as gunner, playable as commander, loader, then you have helicopters, ect,.

 

Menu popup idea, like the edit unit box that pops up after you double click a unit, lets have something the same thing if you highlight multiple units and then at the same time either

press a key to initiate the menu to popup, I mean the highlight is only as useful as making the units "editable" as far as i know, so im trying to determine what else from that editable

state or function can we add or allow to that function.

I'm not a scripter nor coder, so bare with me, im just going off the top of my head based on what ive worked with over the years but you guys see where im going with this.

Surely if we could create this ourselves...it would be a start until Bis actually implements the function if ever.

Share this post


Link to post
Share on other sites
have a script or something that checks all those units or whatevers (vehicles maybe) highlighted (AI) to see if they are
And here is the crux of the problem. You just can not get the info about units in the editor.

I have tried and i have seen many others as well try to resolve this problem. Unless allVariables when it comes to stable reveals something i have been missing then everything relating to any editor placed units seems to be handled engine side and is unavailable to us.

The UI and scripts for the editor are not a problem it is just getting any relevant information about whats there. Reading THIS gives us a good idea of how to accomplish what we need to do but atm without actually being able to get the actual objects this information and all the editor scripting commands on the wiki seem pretty much useless.

I have lots of ideas for editor mods but without the infamous _map there is very little todo other than change some of the layout much like Sakura did (not sure i have the name correct, forgive me if not). Since alpha ive mostly likely spent two/three weeks worth of editing time trying to squeeze this information out of the engine but all leads i follow result in dead ends.

For all that is holly if anyone has every managed to retrieve this information speak up now :D

Share this post


Link to post
Share on other sites
For all that is holly if anyone has every managed to retrieve this information speak up now :D

I went digging through the config viewer, then de-pbo's some of BIS's scripts and went for a poke. Using this code:

_displays = uinamespace getvariable ["GUI_displays",[]];
_classes = uinamespace getvariable ["GUI_classes",[]];

hint str _displays;
sleep 2;
hint str _classes;

I believe that display 26 is the "ArcadeMap" display (arcade likely meaning editor, this will probably change to "MainMap" if the mission is packed and played, probably changing the display also). Now if only there was a way to return all controls in a display, then we'd really be talking

Share this post


Link to post
Share on other sites

The resource is 26 yes and is RscDisplayArcadeMap_Layout_2 or RscDisplayArcadeMap_Layout_6 dependent on what layout you use.

Anyway you can open the debugConsole in the editor and do soemthing like

displays = [ ];
ctrls = [];
mode = [];
for "_d" from -1 to 20000 do {
if ( !isNull ( findDisplay _d ) ) then {
	displays pushBack _d;
	for "_c" from -1 to 20000 do {
		if ( !isNull ( ( findDisplay _d ) displayCtrl _c )  ) then {
			ctrls pushBack [ _d, _c ];
			_ret = ( selectedEditorObjects ( ( findDisplay _d ) displayCtrl _c ) );
			if !( ret isEqualTo [] ) then {
				mode pushBack [ ret, _d, _c ];
			}; 
		}; 
	};
};
};

Nothing

ok so you might say the map control has no idc number. So i created my own editor layout which gave the map control an idc. Again nothing.

ok lets chase down the editor UI - RscDisplayArcadeMap_Layout_#

does initDisplays which registers the display within uinamespace and fires up any scripts named as per the resources name .. so RscDisplayArcadeMap_Layout_6.sqf

sets up save button

creates ctrlEH to handle mouse movement and change grid readouts

creates 2 ctrlEH to handle toolbox selection changes

creates ctrlEH to handle toolbox collapse button

creates displayEH to handle F keys for toolbox

Hmm what about the createUnit box its there in the UI cpp RscDisplayArcadeUnit (also used for the group dependent on what calls it)

Nothing special in the cpp just blank classes ready to handle info

ok then the initDisplays call to RscDisplayArcadeUnit's own script RscDisplayArcadeUnit.sqf

I found nothing of any value, plenty of code getting the value from the controls, this leads me to believe the engine fills in the options, maybe why the ctrls all purposely named CA_# ?

Ive spent many hours chasing down the scripts and UI to no avail, maybe im missing something staring me in the face.

Anyway ive banged my head against this brickwall many times over the last couple of years and its not due to come out of its box for another month ;)

Share this post


Link to post
Share on other sites

Interesting what you guys have tried to do.

I had another idea, im sure someone has had this already idk but maybe approach this from a script point instead of actually trying to edit the editor or add to it.

 

Idea would be to basically create a script where you placed you units, group or what have you in the editor, then set them how you want them with waypoints or just placed somewhere,

idea is to just build the mission like normal with those placed units, then when ingame the script is called and basically will maybe do a check or something

that scans the units in the mission, and then maybe in the script you can define which units you want to be made playable, and then changes their status.

 

I'm thinking this may be more possible then trying to do it through the editor itself, whether it would work I have no idea, what are your guys thoughts on this idea though

could that work as a faster workaround then having to edit the mission.sqm and changing the classes in there.

I mean if we cant get it to work through the editor itself maybe just have a simpler, faster workaround through script called by a trigger or something

until BIS finally builds or implements the wanted feature/function.

Share this post


Link to post
Share on other sites
Idea would be to basically create a script where you placed you units, group or what have you in the editor, then set them how you want them with waypoints or just placed somewhere, idea is to just build the mission like normal with those placed units, then when ingame the script is called and basically will maybe do a check or something that scans the units in the mission, and then maybe in the script you can define which units you want to be made playable, and then changes their status.

Certainly, such a script is possible, but you'd have to do event more work that just double clicking the unit and then 2 clicks to change from non-playable to playable. Basically, the idea is that you would add a variable to that unit which the script will read, using setVariable. That's the only way I know how to do it, anyway.

{
if (_x getVariable ["makePlayableOnMissionStart", false]) then
{
	setPlayable _x; //wiki says this command is currently nonfunctional
};
}forEach allUnits;

Unfortunately, until the mission actually started and the loop ran, there would only be one player slot in the server. There aren't any workarounds really because no scripts run until at least the briefing screen

Share this post


Link to post
Share on other sites

Yes for the server, but im also referencing the sp aspect, as for myself when i play in the editor I like to place multiple units and set them playable so that when

my main player character gets killed then i can just teamswitch and keep playing, the other option to that is also when i lead or am part of a squad i like to teamswitch, sometimes i like to build massive battles and theres always a high chance of getting killed and again i like to keep playing and not have to start over, im sure theres others out there that play similar to this as well that could benefit from not having to spend more time to edit a ton of units to make them playable.

 

But server wise hosted or even a server you join, that would be a more challenging aspect, more me anyways I dont play on public servers as I have my own, and its just me

and a buddy so I normally only have 2-3 slots, and respawn so it depends, this function could benefit those mission makers that do have multiple slots, so the challenge

is there, if i have any more ideas Ill be sure to post them.

Share this post


Link to post
Share on other sites

There is a working addon on Steam workshop that does something similar: http://steamcommunity.com/sharedfiles/filedetails/?id=289207924&insideModal=0&requirelogin=1

  

Simple addon for map-makers. Alt+Double Click on unit makes him playable.

 

 

The code that does it:

config.cpp:

class CfgPatches
{
    class swt_playable
    {
        units[]={};
        weapons[]={};
        requiredVersion=0.1;
        requiredAddons[]=
        {
            "a3_ui_f"
        };
        author[]=
        {
            "swatSTEAM"
        };
    };
};
class RscMap;
class RscMapControl;
class RscDisplayArcadeUnit
{
    onLoad="[""onLoad"",_this,""RscDisplayArcadeUnit"",'GUI'] call compile preprocessfilelinenumbers ""A3\ui_f\scripts\initDisplay.sqf""; _this spawn compile preprocessfilelinenumbers '\swt_playable\playable_init.sqf'";
};
class RscDisplayArcadeMap: RscMap
{
    class controlsBackground
    {
        class CA_Map: RscMapControl
        {
            onMouseButtonDblClick="if (_this select 6) then {swt_playable_cl = true};";
        };
    };
};
class RscDisplayArcadeMap_Layout_2: RscMap
{
    class controlsBackground
    {
        class CA_Map: RscMapControl
        {
            onMouseButtonDblClick="if (_this select 6) then {swt_playable_cl = true};";
        };
    };
};
class RscDisplayArcadeMap_Layout_6: RscMap
{
    class controlsBackground
    {
        class CA_Map: RscMapControl
        {
            onMouseButtonDblClick="if (_this select 6) then {swt_playable_cl = true};";
        };
    };
};

 

playable_init.sqf:

disableSerialization;
diag_log "init";
_display = _this select 0;
_ok = _display displayCtrl 1;
_combobox = _display displayCtrl 105;
if (!isNil "swt_playable_cl") then {
    _combobox lbSetCurSel 2;
    swt_playable_cl = nil;
    ctrlActivate _ok;
};

Share this post


Link to post
Share on other sites

Adding to this old thread, my previous video seen above was from 2016, my mic at the time was crap, the recording

turned out meh even my recording software i used was not that great, even my computer too 😄

 

Well alot has changed since then and last weekend i had rerecorded a new video tutorial on the same subject, its an old subject i know,

and we've had this capacity to make multiple units playable at once for some time now so nothing new.

 

My video here is mainly geared towards beginners of the game that are new to the editor, and creating their own missions

hope to whom watches it may learn and find the information useful. Cheers!

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×